@performant-software/geospatial 3.1.9 → 3.1.10

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 (297) hide show
  1. package/dist/index.cjs14.js +1 -1
  2. package/dist/index.cjs15.js +1 -1
  3. package/dist/index.cjs16.js +1 -1
  4. package/dist/index.cjs17.js +1 -1
  5. package/dist/index.cjs18.js +1 -1
  6. package/dist/index.cjs186.js +1 -1
  7. package/dist/index.cjs186.js.map +1 -1
  8. package/dist/index.cjs187.js +1 -1
  9. package/dist/index.cjs187.js.map +1 -1
  10. package/dist/index.cjs188.js +1 -1
  11. package/dist/index.cjs188.js.map +1 -1
  12. package/dist/index.cjs189.js +1 -1
  13. package/dist/index.cjs189.js.map +1 -1
  14. package/dist/index.cjs19.js +1 -1
  15. package/dist/index.cjs190.js +1 -1
  16. package/dist/index.cjs190.js.map +1 -1
  17. package/dist/index.cjs191.js +1 -1
  18. package/dist/index.cjs191.js.map +1 -1
  19. package/dist/index.cjs192.js +1 -1
  20. package/dist/index.cjs192.js.map +1 -1
  21. package/dist/index.cjs193.js +1 -1
  22. package/dist/index.cjs193.js.map +1 -1
  23. package/dist/index.cjs194.js +1 -1
  24. package/dist/index.cjs194.js.map +1 -1
  25. package/dist/index.cjs195.js +1 -1
  26. package/dist/index.cjs195.js.map +1 -1
  27. package/dist/index.cjs196.js +1 -1
  28. package/dist/index.cjs196.js.map +1 -1
  29. package/dist/index.cjs197.js +1 -1
  30. package/dist/index.cjs197.js.map +1 -1
  31. package/dist/index.cjs198.js +1 -1
  32. package/dist/index.cjs198.js.map +1 -1
  33. package/dist/index.cjs199.js +1 -1
  34. package/dist/index.cjs199.js.map +1 -1
  35. package/dist/index.cjs20.js +1 -1
  36. package/dist/index.cjs200.js +1 -1
  37. package/dist/index.cjs200.js.map +1 -1
  38. package/dist/index.cjs201.js +1 -1
  39. package/dist/index.cjs201.js.map +1 -1
  40. package/dist/index.cjs202.js +1 -1
  41. package/dist/index.cjs202.js.map +1 -1
  42. package/dist/index.cjs203.js +1 -1
  43. package/dist/index.cjs203.js.map +1 -1
  44. package/dist/index.cjs204.js +1 -1
  45. package/dist/index.cjs204.js.map +1 -1
  46. package/dist/index.cjs205.js +1 -1
  47. package/dist/index.cjs205.js.map +1 -1
  48. package/dist/index.cjs206.js +1 -1
  49. package/dist/index.cjs206.js.map +1 -1
  50. package/dist/index.cjs207.js +1 -1
  51. package/dist/index.cjs207.js.map +1 -1
  52. package/dist/index.cjs208.js +1 -1
  53. package/dist/index.cjs208.js.map +1 -1
  54. package/dist/index.cjs21.js +1 -1
  55. package/dist/index.cjs211.js +1 -1
  56. package/dist/index.cjs212.js +1 -1
  57. package/dist/index.cjs213.js +1 -1
  58. package/dist/index.cjs22.js +1 -1
  59. package/dist/index.cjs23.js +1 -1
  60. package/dist/index.cjs231.js +1 -1
  61. package/dist/index.cjs236.js +1 -7
  62. package/dist/index.cjs236.js.map +1 -1
  63. package/dist/index.cjs237.js +1 -1
  64. package/dist/index.cjs237.js.map +1 -1
  65. package/dist/index.cjs238.js +7 -1
  66. package/dist/index.cjs238.js.map +1 -1
  67. package/dist/index.cjs239.js +1 -1
  68. package/dist/index.cjs239.js.map +1 -1
  69. package/dist/index.cjs24.js +1 -1
  70. package/dist/index.cjs240.js +1 -1
  71. package/dist/index.cjs240.js.map +1 -1
  72. package/dist/index.cjs241.js +1 -1
  73. package/dist/index.cjs241.js.map +1 -1
  74. package/dist/index.cjs242.js +1 -1
  75. package/dist/index.cjs242.js.map +1 -1
  76. package/dist/index.cjs243.js +1 -1
  77. package/dist/index.cjs243.js.map +1 -1
  78. package/dist/index.cjs244.js +1 -1
  79. package/dist/index.cjs244.js.map +1 -1
  80. package/dist/index.cjs245.js +1 -1
  81. package/dist/index.cjs245.js.map +1 -1
  82. package/dist/index.cjs246.js +1 -1
  83. package/dist/index.cjs246.js.map +1 -1
  84. package/dist/index.cjs247.js +1 -1
  85. package/dist/index.cjs247.js.map +1 -1
  86. package/dist/index.cjs248.js +1 -1
  87. package/dist/index.cjs248.js.map +1 -1
  88. package/dist/index.cjs249.js +1 -1
  89. package/dist/index.cjs249.js.map +1 -1
  90. package/dist/index.cjs250.js +1 -1
  91. package/dist/index.cjs250.js.map +1 -1
  92. package/dist/index.cjs251.js +1 -1
  93. package/dist/index.cjs251.js.map +1 -1
  94. package/dist/index.cjs252.js +1 -1
  95. package/dist/index.cjs252.js.map +1 -1
  96. package/dist/index.cjs253.js +1 -1
  97. package/dist/index.cjs253.js.map +1 -1
  98. package/dist/index.cjs254.js +1 -1
  99. package/dist/index.cjs254.js.map +1 -1
  100. package/dist/index.cjs255.js +1 -1
  101. package/dist/index.cjs255.js.map +1 -1
  102. package/dist/index.cjs256.js +1 -1
  103. package/dist/index.cjs256.js.map +1 -1
  104. package/dist/index.cjs257.js +1 -1
  105. package/dist/index.cjs257.js.map +1 -1
  106. package/dist/index.cjs258.js +1 -1
  107. package/dist/index.cjs258.js.map +1 -1
  108. package/dist/index.cjs259.js +1 -1
  109. package/dist/index.cjs259.js.map +1 -1
  110. package/dist/index.cjs260.js +1 -1
  111. package/dist/index.cjs260.js.map +1 -1
  112. package/dist/index.cjs261.js +1 -1
  113. package/dist/index.cjs261.js.map +1 -1
  114. package/dist/index.cjs262.js +1 -1
  115. package/dist/index.cjs262.js.map +1 -1
  116. package/dist/index.cjs263.js +1 -1
  117. package/dist/index.cjs263.js.map +1 -1
  118. package/dist/index.cjs264.js +1 -1
  119. package/dist/index.cjs264.js.map +1 -1
  120. package/dist/index.cjs27.js +1 -1
  121. package/dist/index.cjs28.js +1 -1
  122. package/dist/index.cjs29.js +1 -1
  123. package/dist/index.cjs31.js +1 -1
  124. package/dist/index.cjs33.js +1 -1
  125. package/dist/index.cjs34.js +1 -1
  126. package/dist/index.cjs38.js +1 -1
  127. package/dist/index.cjs68.js +1 -1
  128. package/dist/index.cjs70.js +1 -1
  129. package/dist/index.cjs71.js +743 -1
  130. package/dist/index.cjs71.js.map +1 -1
  131. package/dist/index.cjs73.js +1 -9
  132. package/dist/index.cjs73.js.map +1 -1
  133. package/dist/index.cjs74.js +1 -17
  134. package/dist/index.cjs74.js.map +1 -1
  135. package/dist/index.cjs75.js +1 -1
  136. package/dist/index.cjs75.js.map +1 -1
  137. package/dist/index.cjs76.js +1 -1
  138. package/dist/index.cjs76.js.map +1 -1
  139. package/dist/index.cjs77.js +1 -1
  140. package/dist/index.cjs77.js.map +1 -1
  141. package/dist/index.cjs78.js +9 -1
  142. package/dist/index.cjs78.js.map +1 -1
  143. package/dist/index.cjs79.js +17 -1
  144. package/dist/index.cjs79.js.map +1 -1
  145. package/dist/index.cjs80.js +1 -743
  146. package/dist/index.cjs80.js.map +1 -1
  147. package/dist/index.cjs81.js +1 -1
  148. package/dist/index.cjs81.js.map +1 -1
  149. package/dist/index.es14.js +2 -2
  150. package/dist/index.es15.js +4 -4
  151. package/dist/index.es16.js +3 -3
  152. package/dist/index.es17.js +3 -3
  153. package/dist/index.es18.js +1 -1
  154. package/dist/index.es186.js +239 -144
  155. package/dist/index.es186.js.map +1 -1
  156. package/dist/index.es187.js +42 -6
  157. package/dist/index.es187.js.map +1 -1
  158. package/dist/index.es188.js +3 -5
  159. package/dist/index.es188.js.map +1 -1
  160. package/dist/index.es189.js +13 -3
  161. package/dist/index.es189.js.map +1 -1
  162. package/dist/index.es19.js +1 -1
  163. package/dist/index.es190.js +13 -3
  164. package/dist/index.es190.js.map +1 -1
  165. package/dist/index.es191.js +28 -33
  166. package/dist/index.es191.js.map +1 -1
  167. package/dist/index.es192.js +16 -3
  168. package/dist/index.es192.js.map +1 -1
  169. package/dist/index.es193.js +4 -22
  170. package/dist/index.es193.js.map +1 -1
  171. package/dist/index.es194.js +150 -2
  172. package/dist/index.es194.js.map +1 -1
  173. package/dist/index.es195.js +9 -3
  174. package/dist/index.es195.js.map +1 -1
  175. package/dist/index.es196.js +7 -2
  176. package/dist/index.es196.js.map +1 -1
  177. package/dist/index.es197.js +3 -33
  178. package/dist/index.es197.js.map +1 -1
  179. package/dist/index.es198.js +2 -14
  180. package/dist/index.es198.js.map +1 -1
  181. package/dist/index.es199.js +35 -13
  182. package/dist/index.es199.js.map +1 -1
  183. package/dist/index.es20.js +1 -1
  184. package/dist/index.es200.js +3 -11
  185. package/dist/index.es200.js.map +1 -1
  186. package/dist/index.es201.js +22 -242
  187. package/dist/index.es201.js.map +1 -1
  188. package/dist/index.es202.js +2 -45
  189. package/dist/index.es202.js.map +1 -1
  190. package/dist/index.es203.js +3 -5
  191. package/dist/index.es203.js.map +1 -1
  192. package/dist/index.es204.js +2 -13
  193. package/dist/index.es204.js.map +1 -1
  194. package/dist/index.es205.js +30 -10
  195. package/dist/index.es205.js.map +1 -1
  196. package/dist/index.es206.js +13 -31
  197. package/dist/index.es206.js.map +1 -1
  198. package/dist/index.es207.js +13 -13
  199. package/dist/index.es207.js.map +1 -1
  200. package/dist/index.es208.js +8 -4
  201. package/dist/index.es208.js.map +1 -1
  202. package/dist/index.es21.js +1 -1
  203. package/dist/index.es211.js +1 -1
  204. package/dist/index.es212.js +1 -1
  205. package/dist/index.es213.js +1 -1
  206. package/dist/index.es22.js +1 -1
  207. package/dist/index.es23.js +1 -1
  208. package/dist/index.es231.js +1 -1
  209. package/dist/index.es236.js +20 -7506
  210. package/dist/index.es236.js.map +1 -1
  211. package/dist/index.es237.js +23 -2
  212. package/dist/index.es237.js.map +1 -1
  213. package/dist/index.es238.js +7507 -3
  214. package/dist/index.es238.js.map +1 -1
  215. package/dist/index.es239.js +2 -8
  216. package/dist/index.es239.js.map +1 -1
  217. package/dist/index.es24.js +1 -1
  218. package/dist/index.es240.js +3 -6
  219. package/dist/index.es240.js.map +1 -1
  220. package/dist/index.es241.js +7 -24
  221. package/dist/index.es241.js.map +1 -1
  222. package/dist/index.es242.js +5 -16
  223. package/dist/index.es242.js.map +1 -1
  224. package/dist/index.es243.js +22 -28
  225. package/dist/index.es243.js.map +1 -1
  226. package/dist/index.es244.js +15 -20
  227. package/dist/index.es244.js.map +1 -1
  228. package/dist/index.es245.js +30 -74
  229. package/dist/index.es245.js.map +1 -1
  230. package/dist/index.es246.js +21 -20
  231. package/dist/index.es246.js.map +1 -1
  232. package/dist/index.es247.js +71 -37
  233. package/dist/index.es247.js.map +1 -1
  234. package/dist/index.es248.js +19 -48
  235. package/dist/index.es248.js.map +1 -1
  236. package/dist/index.es249.js +40 -7
  237. package/dist/index.es249.js.map +1 -1
  238. package/dist/index.es250.js +48 -19
  239. package/dist/index.es250.js.map +1 -1
  240. package/dist/index.es251.js +7 -65
  241. package/dist/index.es251.js.map +1 -1
  242. package/dist/index.es252.js +18 -40
  243. package/dist/index.es252.js.map +1 -1
  244. package/dist/index.es253.js +60 -58
  245. package/dist/index.es253.js.map +1 -1
  246. package/dist/index.es254.js +42 -8
  247. package/dist/index.es254.js.map +1 -1
  248. package/dist/index.es255.js +63 -3
  249. package/dist/index.es255.js.map +1 -1
  250. package/dist/index.es256.js +8 -12
  251. package/dist/index.es256.js.map +1 -1
  252. package/dist/index.es257.js +3 -59
  253. package/dist/index.es257.js.map +1 -1
  254. package/dist/index.es258.js +11 -48
  255. package/dist/index.es258.js.map +1 -1
  256. package/dist/index.es259.js +57 -18
  257. package/dist/index.es259.js.map +1 -1
  258. package/dist/index.es260.js +49 -22
  259. package/dist/index.es260.js.map +1 -1
  260. package/dist/index.es261.js +15 -69
  261. package/dist/index.es261.js.map +1 -1
  262. package/dist/index.es262.js +2 -4
  263. package/dist/index.es262.js.map +1 -1
  264. package/dist/index.es263.js +4 -15
  265. package/dist/index.es263.js.map +1 -1
  266. package/dist/index.es264.js +69 -2
  267. package/dist/index.es264.js.map +1 -1
  268. package/dist/index.es27.js +1 -1
  269. package/dist/index.es28.js +2 -2
  270. package/dist/index.es29.js +2 -2
  271. package/dist/index.es31.js +2 -2
  272. package/dist/index.es33.js +2 -2
  273. package/dist/index.es34.js +2 -2
  274. package/dist/index.es38.js +1 -1
  275. package/dist/index.es68.js +1 -1
  276. package/dist/index.es70.js +12 -12
  277. package/dist/index.es71.js +21351 -7
  278. package/dist/index.es71.js.map +1 -1
  279. package/dist/index.es73.js +1992 -25
  280. package/dist/index.es73.js.map +1 -1
  281. package/dist/index.es74.js +5 -588
  282. package/dist/index.es74.js.map +1 -1
  283. package/dist/index.es75.js +2 -106
  284. package/dist/index.es75.js.map +1 -1
  285. package/dist/index.es76.js +8 -10
  286. package/dist/index.es76.js.map +1 -1
  287. package/dist/index.es77.js +2 -1993
  288. package/dist/index.es77.js.map +1 -1
  289. package/dist/index.es78.js +25 -5
  290. package/dist/index.es78.js.map +1 -1
  291. package/dist/index.es79.js +589 -2
  292. package/dist/index.es79.js.map +1 -1
  293. package/dist/index.es80.js +104 -21350
  294. package/dist/index.es80.js.map +1 -1
  295. package/dist/index.es81.js +10 -2
  296. package/dist/index.es81.js.map +1 -1
  297. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e={exports:{}};exports.__module=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react");var t={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},n=e.createContext&&e.createContext(t);exports.DefaultContext=t;exports.IconContext=n;
2
2
  //# sourceMappingURL=index.cjs81.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs81.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.cjs81.js","sources":["../../../node_modules/react-icons/lib/iconContext.mjs"],"sourcesContent":["import React from \"react\";\nexport var DefaultContext = {\n color: undefined,\n size: undefined,\n className: undefined,\n style: undefined,\n attr: undefined\n};\nexport var IconContext = React.createContext && /*#__PURE__*/React.createContext(DefaultContext);"],"names":["DefaultContext","IconContext","React"],"mappings":"yGACU,IAACA,EAAiB,CAC1B,MAAO,OACP,KAAM,OACN,UAAW,OACX,MAAO,OACP,KAAM,MACR,EACWC,EAAcC,EAAM,eAA8BA,EAAM,cAAcF,CAAc","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- import { getDefaultExportFromCjs as r } from "./index.es78.js";
2
- import { __require as o } from "./index.es77.js";
1
+ import { getDefaultExportFromCjs as r } from "./index.es74.js";
2
+ import { __require as o } from "./index.es73.js";
3
3
  var a = o();
4
4
  const p = /* @__PURE__ */ r(a);
5
5
  export {
@@ -1,10 +1,10 @@
1
1
  import * as i from "react";
2
2
  import { useContext as b, useState as E, useRef as s, useEffect as v, useImperativeHandle as L, useMemo as x } from "react";
3
3
  import { MountedMapsContext as y } from "./index.es26.js";
4
- import u from "./index.es201.js";
5
- import I from "./index.es202.js";
6
- import w from "./index.es203.js";
7
- import C from "./index.es204.js";
4
+ import u from "./index.es186.js";
5
+ import I from "./index.es187.js";
6
+ import w from "./index.es188.js";
7
+ import C from "./index.es189.js";
8
8
  const g = i.createContext(null);
9
9
  function R(e, f) {
10
10
  const c = b(y), [o, M] = E(null), l = s(), { current: a } = s({ mapLib: null, map: null });
@@ -1,10 +1,10 @@
1
1
  import * as k from "react";
2
2
  import { memo as A, forwardRef as D, useContext as N, useRef as b, useMemo as y, useEffect as h, useImperativeHandle as M } from "react";
3
3
  import { createPortal as w } from "react-dom";
4
- import { applyReactStyle as x } from "./index.es205.js";
4
+ import { applyReactStyle as x } from "./index.es190.js";
5
5
  import { MapContext as O } from "./index.es15.js";
6
- import { arePointsEqual as S } from "./index.es206.js";
7
- import { compareClassNames as q } from "./index.es207.js";
6
+ import { arePointsEqual as S } from "./index.es191.js";
7
+ import { compareClassNames as q } from "./index.es192.js";
8
8
  A(D((e, E) => {
9
9
  const { map: v, mapLib: R } = N(O), r = b({ props: e }), t = y(() => {
10
10
  let i = !1;
@@ -1,9 +1,9 @@
1
1
  import { createPortal as u } from "react-dom";
2
2
  import { memo as d, forwardRef as g, useContext as h, useMemo as i, useRef as L, useEffect as s, useImperativeHandle as C } from "react";
3
- import { applyReactStyle as x } from "./index.es205.js";
3
+ import { applyReactStyle as x } from "./index.es190.js";
4
4
  import { MapContext as M } from "./index.es15.js";
5
- import { deepEqual as N } from "./index.es206.js";
6
- import { compareClassNames as O } from "./index.es207.js";
5
+ import { deepEqual as N } from "./index.es191.js";
6
+ import { compareClassNames as O } from "./index.es192.js";
7
7
  d(g((e, m) => {
8
8
  const { map: l, mapLib: r } = h(M), c = i(() => document.createElement("div"), []), a = L({ props: e }), t = i(() => {
9
9
  const n = { ...e }, o = new r.Popup(n);
@@ -1,5 +1,5 @@
1
1
  import { memo as i, useEffect as r } from "react";
2
- import { applyReactStyle as e } from "./index.es205.js";
2
+ import { applyReactStyle as e } from "./index.es190.js";
3
3
  import { useControl as l } from "./index.es25.js";
4
4
  function m(t) {
5
5
  const o = l(({ mapLib: n }) => new n.AttributionControl(t), {
@@ -1,151 +1,246 @@
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
- }
1
+ import { transformToViewState as d, applyViewStateToTransform as p } from "./index.es236.js";
2
+ import { normalizeStyle as l } from "./index.es237.js";
3
+ import { deepEqual as i } from "./index.es191.js";
4
+ const u = { version: 8, sources: {}, layers: [] }, h = {
5
+ mousedown: "onMouseDown",
6
+ mouseup: "onMouseUp",
7
+ mouseover: "onMouseOver",
8
+ mousemove: "onMouseMove",
9
+ click: "onClick",
10
+ dblclick: "onDblClick",
11
+ mouseenter: "onMouseEnter",
12
+ mouseleave: "onMouseLeave",
13
+ mouseout: "onMouseOut",
14
+ contextmenu: "onContextMenu",
15
+ touchstart: "onTouchStart",
16
+ touchend: "onTouchEnd",
17
+ touchmove: "onTouchMove",
18
+ touchcancel: "onTouchCancel"
19
+ }, m = {
20
+ movestart: "onMoveStart",
21
+ move: "onMove",
22
+ moveend: "onMoveEnd",
23
+ dragstart: "onDragStart",
24
+ drag: "onDrag",
25
+ dragend: "onDragEnd",
26
+ zoomstart: "onZoomStart",
27
+ zoom: "onZoom",
28
+ zoomend: "onZoomEnd",
29
+ rotatestart: "onRotateStart",
30
+ rotate: "onRotate",
31
+ rotateend: "onRotateEnd",
32
+ pitchstart: "onPitchStart",
33
+ pitch: "onPitch",
34
+ pitchend: "onPitchEnd"
35
+ }, f = {
36
+ wheel: "onWheel",
37
+ boxzoomstart: "onBoxZoomStart",
38
+ boxzoomend: "onBoxZoomEnd",
39
+ boxzoomcancel: "onBoxZoomCancel",
40
+ resize: "onResize",
41
+ load: "onLoad",
42
+ render: "onRender",
43
+ idle: "onIdle",
44
+ remove: "onRemove",
45
+ data: "onData",
46
+ styledata: "onStyleData",
47
+ sourcedata: "onSourceData",
48
+ error: "onError"
49
+ }, v = [
50
+ "minZoom",
51
+ "maxZoom",
52
+ "minPitch",
53
+ "maxPitch",
54
+ "maxBounds",
55
+ "projection",
56
+ "renderWorldCopies"
57
+ ], _ = [
58
+ "scrollZoom",
59
+ "boxZoom",
60
+ "dragRotate",
61
+ "dragPan",
62
+ "keyboard",
63
+ "doubleClickZoom",
64
+ "touchZoomRotate",
65
+ "touchPitch"
66
+ ];
67
+ class c {
68
+ constructor(t, o, a) {
69
+ this._map = null, this._internalUpdate = !1, this._hoveredFeatures = null, this._propsedCameraUpdate = null, this._styleComponents = {}, this._onEvent = (e) => {
70
+ const s = this.props[f[e.type]];
71
+ s ? s(e) : e.type === "error" && console.error(e.error);
72
+ }, this._onCameraEvent = (e) => {
73
+ if (this._internalUpdate)
74
+ return;
75
+ e.viewState = this._propsedCameraUpdate || d(this._map.transform);
76
+ const s = this.props[m[e.type]];
77
+ s && s(e);
78
+ }, this._onCameraUpdate = (e) => this._internalUpdate ? e : (this._propsedCameraUpdate = d(e), p(e, this.props)), this._onPointerEvent = (e) => {
79
+ (e.type === "mousemove" || e.type === "mouseout") && this._updateHover(e);
80
+ const s = this.props[h[e.type]];
81
+ s && (this.props.interactiveLayerIds && e.type !== "mouseover" && e.type !== "mouseout" && (e.features = this._hoveredFeatures || this._queryRenderedFeatures(e.point)), s(e), delete e.features);
82
+ }, this._MapClass = t, this.props = o, this._initialize(a);
83
+ }
84
+ get map() {
85
+ return this._map;
86
+ }
87
+ setProps(t) {
88
+ const o = this.props;
89
+ this.props = t;
90
+ const a = this._updateSettings(t, o), e = this._updateSize(t), s = this._updateViewState(t);
91
+ this._updateStyle(t, o), this._updateStyleComponents(t), this._updateHandlers(t, o), (a || e || s && !this._map.isMoving()) && this.redraw();
92
+ }
93
+ static reuse(t, o) {
94
+ const a = c.savedMaps.pop();
95
+ if (!a)
96
+ return null;
97
+ const e = a.map, s = e.getContainer();
98
+ for (o.className = s.className; s.childNodes.length > 0; )
99
+ o.appendChild(s.childNodes[0]);
100
+ e._container = o;
101
+ const n = e._resizeObserver;
102
+ n && (n.disconnect(), n.observe(o)), a.setProps({ ...t, styleDiffing: !1 }), e.resize();
103
+ const { initialViewState: r } = t;
104
+ return r && (r.bounds ? e.fitBounds(r.bounds, { ...r.fitBoundsOptions, duration: 0 }) : a._updateViewState(r)), e.isStyleLoaded() ? e.fire("load") : e.once("style.load", () => e.fire("load")), e._update(), a;
105
+ }
106
+ /* eslint-disable complexity,max-statements */
107
+ _initialize(t) {
108
+ const { props: o } = this, { mapStyle: a = u } = o, e = {
109
+ ...o,
110
+ ...o.initialViewState,
111
+ container: t,
112
+ style: l(a)
113
+ }, s = e.initialViewState || e.viewState || e;
114
+ if (Object.assign(e, {
115
+ center: [s.longitude || 0, s.latitude || 0],
116
+ zoom: s.zoom || 0,
117
+ pitch: s.pitch || 0,
118
+ bearing: s.bearing || 0
119
+ }), o.gl) {
120
+ const r = HTMLCanvasElement.prototype.getContext;
121
+ HTMLCanvasElement.prototype.getContext = () => (HTMLCanvasElement.prototype.getContext = r, o.gl);
86
122
  }
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
- }
123
+ const n = new this._MapClass(e);
124
+ s.padding && n.setPadding(s.padding), o.cursor && (n.getCanvas().style.cursor = o.cursor), n.transformCameraUpdate = this._onCameraUpdate, n.on("style.load", () => {
125
+ this._styleComponents = {
126
+ light: n.getLight(),
127
+ sky: n.getSky(),
128
+ // @ts-ignore getProjection() does not exist in v4
129
+ projection: n.getProjection?.(),
130
+ terrain: n.getTerrain()
131
+ }, this._updateStyleComponents(this.props);
132
+ }), n.on("sourcedata", () => {
133
+ this._updateStyleComponents(this.props);
134
+ });
135
+ for (const r in h)
136
+ n.on(r, this._onPointerEvent);
137
+ for (const r in m)
138
+ n.on(r, this._onCameraEvent);
139
+ for (const r in f)
140
+ n.on(r, this._onEvent);
141
+ this._map = n;
142
+ }
143
+ /* eslint-enable complexity,max-statements */
144
+ recycle() {
145
+ this.map.getContainer().querySelector("[mapboxgl-children]")?.remove(), c.savedMaps.push(this);
146
+ }
147
+ destroy() {
148
+ this._map.remove();
149
+ }
150
+ // Force redraw the map now. Typically resize() and jumpTo() is reflected in the next
151
+ // render cycle, which is managed by Mapbox's animation loop.
152
+ // This removes the synchronization issue caused by requestAnimationFrame.
153
+ redraw() {
154
+ const t = this._map;
155
+ t.style && (t._frame && (t._frame.cancel(), t._frame = null), t._render());
156
+ }
157
+ /* Trigger map resize if size is controlled
158
+ @param {object} nextProps
159
+ @returns {bool} true if size has changed
160
+ */
161
+ _updateSize(t) {
162
+ const { viewState: o } = t;
163
+ if (o) {
164
+ const a = this._map;
165
+ if (o.width !== a.transform.width || o.height !== a.transform.height)
166
+ return a.resize(), !0;
142
167
  }
143
- h++;
168
+ return !1;
169
+ }
170
+ // Adapted from map.jumpTo
171
+ /* Update camera to match props
172
+ @param {object} nextProps
173
+ @param {bool} triggerEvents - should fire camera events
174
+ @returns {bool} true if anything is changed
175
+ */
176
+ _updateViewState(t) {
177
+ const o = this._map, a = o.transform;
178
+ if (!o.isMoving()) {
179
+ const s = p(a, t);
180
+ if (Object.keys(s).length > 0)
181
+ return this._internalUpdate = !0, o.jumpTo(s), this._internalUpdate = !1, !0;
182
+ }
183
+ return !1;
184
+ }
185
+ /* Update camera constraints and projection settings to match props
186
+ @param {object} nextProps
187
+ @param {object} currProps
188
+ @returns {bool} true if anything is changed
189
+ */
190
+ _updateSettings(t, o) {
191
+ const a = this._map;
192
+ let e = !1;
193
+ for (const s of v)
194
+ s in t && !i(t[s], o[s]) && (e = !0, a[`set${s[0].toUpperCase()}${s.slice(1)}`]?.call(a, t[s]));
195
+ return e;
196
+ }
197
+ /* Update map style to match props */
198
+ _updateStyle(t, o) {
199
+ if (t.cursor !== o.cursor && (this._map.getCanvas().style.cursor = t.cursor || ""), t.mapStyle !== o.mapStyle) {
200
+ const { mapStyle: a = u, styleDiffing: e = !0 } = t, s = {
201
+ diff: e
202
+ };
203
+ "localIdeographFontFamily" in t && (s.localIdeographFontFamily = t.localIdeographFontFamily), this._map.setStyle(l(a), s);
204
+ }
205
+ }
206
+ /* Update fog, light, projection and terrain to match props
207
+ * These props are special because
208
+ * 1. They can not be applied right away. Certain conditions (style loaded, source loaded, etc.) must be met
209
+ * 2. They can be overwritten by mapStyle
210
+ */
211
+ _updateStyleComponents({ light: t, projection: o, sky: a, terrain: e }) {
212
+ const s = this._map, n = this._styleComponents;
213
+ s.style._loaded && (t && !i(t, n.light) && (n.light = t, s.setLight(t)), o && !i(o, n.projection) && o !== n.projection?.type && (n.projection = typeof o == "string" ? { type: o } : o, s.setProjection?.(n.projection)), a && !i(a, n.sky) && (n.sky = a, s.setSky(a)), e !== void 0 && !i(e, n.terrain) && (!e || s.getSource(e.source)) && (n.terrain = e, s.setTerrain(e)));
214
+ }
215
+ /* Update interaction handlers to match props */
216
+ _updateHandlers(t, o) {
217
+ const a = this._map;
218
+ for (const e of _) {
219
+ const s = t[e] ?? !0, n = o[e] ?? !0;
220
+ i(s, n) || (s ? a[e].enable(s) : a[e].disable());
221
+ }
222
+ }
223
+ _queryRenderedFeatures(t) {
224
+ const o = this._map, { interactiveLayerIds: a = [] } = this.props;
225
+ try {
226
+ return o.queryRenderedFeatures(t, {
227
+ layers: a.filter(o.getLayer.bind(o))
228
+ });
229
+ } catch {
230
+ return [];
231
+ }
232
+ }
233
+ _updateHover(t) {
234
+ const { props: o } = this;
235
+ if (o.interactiveLayerIds && (o.onMouseMove || o.onMouseEnter || o.onMouseLeave)) {
236
+ const e = t.type, s = this._hoveredFeatures?.length > 0, n = this._queryRenderedFeatures(t.point), r = n.length > 0;
237
+ !r && s && (t.type = "mouseleave", this._onPointerEvent(t)), this._hoveredFeatures = n, r && !s && (t.type = "mouseenter", this._onPointerEvent(t)), t.type = e;
238
+ } else
239
+ this._hoveredFeatures = null;
144
240
  }
145
241
  }
242
+ c.savedMaps = [];
146
243
  export {
147
- b as coordEach,
148
- S as featureEach,
149
- k as geomEach
244
+ c as default
150
245
  };
151
246
  //# sourceMappingURL=index.es186.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es186.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.es186.js","sources":["../../../node_modules/@vis.gl/react-maplibre/dist/maplibre/maplibre.js"],"sourcesContent":["import { transformToViewState, applyViewStateToTransform } from \"../utils/transform.js\";\nimport { normalizeStyle } from \"../utils/style-utils.js\";\nimport { deepEqual } from \"../utils/deep-equal.js\";\nconst DEFAULT_STYLE = { version: 8, sources: {}, layers: [] };\nconst pointerEvents = {\n mousedown: 'onMouseDown',\n mouseup: 'onMouseUp',\n mouseover: 'onMouseOver',\n mousemove: 'onMouseMove',\n click: 'onClick',\n dblclick: 'onDblClick',\n mouseenter: 'onMouseEnter',\n mouseleave: 'onMouseLeave',\n mouseout: 'onMouseOut',\n contextmenu: 'onContextMenu',\n touchstart: 'onTouchStart',\n touchend: 'onTouchEnd',\n touchmove: 'onTouchMove',\n touchcancel: 'onTouchCancel'\n};\nconst cameraEvents = {\n movestart: 'onMoveStart',\n move: 'onMove',\n moveend: 'onMoveEnd',\n dragstart: 'onDragStart',\n drag: 'onDrag',\n dragend: 'onDragEnd',\n zoomstart: 'onZoomStart',\n zoom: 'onZoom',\n zoomend: 'onZoomEnd',\n rotatestart: 'onRotateStart',\n rotate: 'onRotate',\n rotateend: 'onRotateEnd',\n pitchstart: 'onPitchStart',\n pitch: 'onPitch',\n pitchend: 'onPitchEnd'\n};\nconst otherEvents = {\n wheel: 'onWheel',\n boxzoomstart: 'onBoxZoomStart',\n boxzoomend: 'onBoxZoomEnd',\n boxzoomcancel: 'onBoxZoomCancel',\n resize: 'onResize',\n load: 'onLoad',\n render: 'onRender',\n idle: 'onIdle',\n remove: 'onRemove',\n data: 'onData',\n styledata: 'onStyleData',\n sourcedata: 'onSourceData',\n error: 'onError'\n};\nconst settingNames = [\n 'minZoom',\n 'maxZoom',\n 'minPitch',\n 'maxPitch',\n 'maxBounds',\n 'projection',\n 'renderWorldCopies'\n];\nconst handlerNames = [\n 'scrollZoom',\n 'boxZoom',\n 'dragRotate',\n 'dragPan',\n 'keyboard',\n 'doubleClickZoom',\n 'touchZoomRotate',\n 'touchPitch'\n];\n/**\n * A wrapper for mapbox-gl's Map class\n */\nclass Maplibre {\n constructor(MapClass, props, container) {\n // mapboxgl.Map instance\n this._map = null;\n // Internal states\n this._internalUpdate = false;\n this._hoveredFeatures = null;\n this._propsedCameraUpdate = null;\n this._styleComponents = {};\n this._onEvent = (e) => {\n // @ts-ignore\n const cb = this.props[otherEvents[e.type]];\n if (cb) {\n cb(e);\n }\n else if (e.type === 'error') {\n console.error(e.error); // eslint-disable-line\n }\n };\n this._onCameraEvent = (e) => {\n if (this._internalUpdate) {\n return;\n }\n e.viewState = this._propsedCameraUpdate || transformToViewState(this._map.transform);\n // @ts-ignore\n const cb = this.props[cameraEvents[e.type]];\n if (cb) {\n cb(e);\n }\n };\n this._onCameraUpdate = (tr) => {\n if (this._internalUpdate) {\n return tr;\n }\n this._propsedCameraUpdate = transformToViewState(tr);\n return applyViewStateToTransform(tr, this.props);\n };\n this._onPointerEvent = (e) => {\n if (e.type === 'mousemove' || e.type === 'mouseout') {\n this._updateHover(e);\n }\n // @ts-ignore\n const cb = this.props[pointerEvents[e.type]];\n if (cb) {\n if (this.props.interactiveLayerIds && e.type !== 'mouseover' && e.type !== 'mouseout') {\n e.features = this._hoveredFeatures || this._queryRenderedFeatures(e.point);\n }\n cb(e);\n delete e.features;\n }\n };\n this._MapClass = MapClass;\n this.props = props;\n this._initialize(container);\n }\n get map() {\n return this._map;\n }\n setProps(props) {\n const oldProps = this.props;\n this.props = props;\n const settingsChanged = this._updateSettings(props, oldProps);\n const sizeChanged = this._updateSize(props);\n const viewStateChanged = this._updateViewState(props);\n this._updateStyle(props, oldProps);\n this._updateStyleComponents(props);\n this._updateHandlers(props, oldProps);\n // If 1) view state has changed to match props and\n // 2) the props change is not triggered by map events,\n // it's driven by an external state change. Redraw immediately\n if (settingsChanged || sizeChanged || (viewStateChanged && !this._map.isMoving())) {\n this.redraw();\n }\n }\n static reuse(props, container) {\n const that = Maplibre.savedMaps.pop();\n if (!that) {\n return null;\n }\n const map = that.map;\n // When reusing the saved map, we need to reparent the map(canvas) and other child nodes\n // intoto the new container from the props.\n // Step 1: reparenting child nodes from old container to new container\n const oldContainer = map.getContainer();\n container.className = oldContainer.className;\n while (oldContainer.childNodes.length > 0) {\n container.appendChild(oldContainer.childNodes[0]);\n }\n // Step 2: replace the internal container with new container from the react component\n // @ts-ignore\n map._container = container;\n // With maplibre-gl as mapLib, map uses ResizeObserver to observe when its container resizes.\n // When reusing the saved map, we need to disconnect the observer and observe the new container.\n // Step 3: telling the ResizeObserver to disconnect and observe the new container\n // @ts-ignore\n const resizeObserver = map._resizeObserver;\n if (resizeObserver) {\n resizeObserver.disconnect();\n resizeObserver.observe(container);\n }\n // Step 4: apply new props\n that.setProps({ ...props, styleDiffing: false });\n map.resize();\n const { initialViewState } = props;\n if (initialViewState) {\n if (initialViewState.bounds) {\n map.fitBounds(initialViewState.bounds, { ...initialViewState.fitBoundsOptions, duration: 0 });\n }\n else {\n that._updateViewState(initialViewState);\n }\n }\n // Simulate load event\n if (map.isStyleLoaded()) {\n map.fire('load');\n }\n else {\n map.once('style.load', () => map.fire('load'));\n }\n // Force reload\n // @ts-ignore\n map._update();\n return that;\n }\n /* eslint-disable complexity,max-statements */\n _initialize(container) {\n const { props } = this;\n const { mapStyle = DEFAULT_STYLE } = props;\n const mapOptions = {\n ...props,\n ...props.initialViewState,\n container,\n style: normalizeStyle(mapStyle)\n };\n const viewState = mapOptions.initialViewState || mapOptions.viewState || mapOptions;\n Object.assign(mapOptions, {\n center: [viewState.longitude || 0, viewState.latitude || 0],\n zoom: viewState.zoom || 0,\n pitch: viewState.pitch || 0,\n bearing: viewState.bearing || 0\n });\n if (props.gl) {\n // eslint-disable-next-line\n const getContext = HTMLCanvasElement.prototype.getContext;\n // Hijack canvas.getContext to return our own WebGLContext\n // This will be called inside the mapboxgl.Map constructor\n // @ts-expect-error\n HTMLCanvasElement.prototype.getContext = () => {\n // Unhijack immediately\n HTMLCanvasElement.prototype.getContext = getContext;\n return props.gl;\n };\n }\n const map = new this._MapClass(mapOptions);\n // Props that are not part of constructor options\n if (viewState.padding) {\n map.setPadding(viewState.padding);\n }\n if (props.cursor) {\n map.getCanvas().style.cursor = props.cursor;\n }\n // add listeners\n map.transformCameraUpdate = this._onCameraUpdate;\n map.on('style.load', () => {\n // Map style has changed, this would have wiped out all settings from props\n this._styleComponents = {\n light: map.getLight(),\n sky: map.getSky(),\n // @ts-ignore getProjection() does not exist in v4\n projection: map.getProjection?.(),\n terrain: map.getTerrain()\n };\n this._updateStyleComponents(this.props);\n });\n map.on('sourcedata', () => {\n // Some sources have loaded, we may need them to attach terrain\n this._updateStyleComponents(this.props);\n });\n for (const eventName in pointerEvents) {\n map.on(eventName, this._onPointerEvent);\n }\n for (const eventName in cameraEvents) {\n map.on(eventName, this._onCameraEvent);\n }\n for (const eventName in otherEvents) {\n map.on(eventName, this._onEvent);\n }\n this._map = map;\n }\n /* eslint-enable complexity,max-statements */\n recycle() {\n // Clean up unnecessary elements before storing for reuse.\n const container = this.map.getContainer();\n const children = container.querySelector('[mapboxgl-children]');\n children?.remove();\n Maplibre.savedMaps.push(this);\n }\n destroy() {\n this._map.remove();\n }\n // Force redraw the map now. Typically resize() and jumpTo() is reflected in the next\n // render cycle, which is managed by Mapbox's animation loop.\n // This removes the synchronization issue caused by requestAnimationFrame.\n redraw() {\n const map = this._map;\n // map._render will throw error if style does not exist\n // https://github.com/mapbox/mapbox-gl-js/blob/fb9fc316da14e99ff4368f3e4faa3888fb43c513\n // /src/ui/map.js#L1834\n if (map.style) {\n // cancel the scheduled update\n if (map._frame) {\n map._frame.cancel();\n map._frame = null;\n }\n // the order is important - render() may schedule another update\n map._render();\n }\n }\n /* Trigger map resize if size is controlled\n @param {object} nextProps\n @returns {bool} true if size has changed\n */\n _updateSize(nextProps) {\n // Check if size is controlled\n const { viewState } = nextProps;\n if (viewState) {\n const map = this._map;\n if (viewState.width !== map.transform.width || viewState.height !== map.transform.height) {\n map.resize();\n return true;\n }\n }\n return false;\n }\n // Adapted from map.jumpTo\n /* Update camera to match props\n @param {object} nextProps\n @param {bool} triggerEvents - should fire camera events\n @returns {bool} true if anything is changed\n */\n _updateViewState(nextProps) {\n const map = this._map;\n const tr = map.transform;\n const isMoving = map.isMoving();\n // Avoid manipulating the real transform when interaction/animation is ongoing\n // as it would interfere with Mapbox's handlers\n if (!isMoving) {\n const changes = applyViewStateToTransform(tr, nextProps);\n if (Object.keys(changes).length > 0) {\n this._internalUpdate = true;\n map.jumpTo(changes);\n this._internalUpdate = false;\n return true;\n }\n }\n return false;\n }\n /* Update camera constraints and projection settings to match props\n @param {object} nextProps\n @param {object} currProps\n @returns {bool} true if anything is changed\n */\n _updateSettings(nextProps, currProps) {\n const map = this._map;\n let changed = false;\n for (const propName of settingNames) {\n if (propName in nextProps && !deepEqual(nextProps[propName], currProps[propName])) {\n changed = true;\n const setter = map[`set${propName[0].toUpperCase()}${propName.slice(1)}`];\n setter?.call(map, nextProps[propName]);\n }\n }\n return changed;\n }\n /* Update map style to match props */\n _updateStyle(nextProps, currProps) {\n if (nextProps.cursor !== currProps.cursor) {\n this._map.getCanvas().style.cursor = nextProps.cursor || '';\n }\n if (nextProps.mapStyle !== currProps.mapStyle) {\n const { mapStyle = DEFAULT_STYLE, styleDiffing = true } = nextProps;\n const options = {\n diff: styleDiffing\n };\n if ('localIdeographFontFamily' in nextProps) {\n // @ts-ignore Mapbox specific prop\n options.localIdeographFontFamily = nextProps.localIdeographFontFamily;\n }\n this._map.setStyle(normalizeStyle(mapStyle), options);\n }\n }\n /* Update fog, light, projection and terrain to match props\n * These props are special because\n * 1. They can not be applied right away. Certain conditions (style loaded, source loaded, etc.) must be met\n * 2. They can be overwritten by mapStyle\n */\n _updateStyleComponents({ light, projection, sky, terrain }) {\n const map = this._map;\n const currProps = this._styleComponents;\n // We can safely manipulate map style once it's loaded\n if (map.style._loaded) {\n if (light && !deepEqual(light, currProps.light)) {\n currProps.light = light;\n map.setLight(light);\n }\n if (projection &&\n !deepEqual(projection, currProps.projection) &&\n projection !== currProps.projection?.type) {\n currProps.projection = typeof projection === 'string' ? { type: projection } : projection;\n // @ts-ignore setProjection does not exist in v4\n map.setProjection?.(currProps.projection);\n }\n if (sky && !deepEqual(sky, currProps.sky)) {\n currProps.sky = sky;\n map.setSky(sky);\n }\n if (terrain !== undefined && !deepEqual(terrain, currProps.terrain)) {\n if (!terrain || map.getSource(terrain.source)) {\n currProps.terrain = terrain;\n map.setTerrain(terrain);\n }\n }\n }\n }\n /* Update interaction handlers to match props */\n _updateHandlers(nextProps, currProps) {\n const map = this._map;\n for (const propName of handlerNames) {\n const newValue = nextProps[propName] ?? true;\n const oldValue = currProps[propName] ?? true;\n if (!deepEqual(newValue, oldValue)) {\n if (newValue) {\n map[propName].enable(newValue);\n }\n else {\n map[propName].disable();\n }\n }\n }\n }\n _queryRenderedFeatures(point) {\n const map = this._map;\n const { interactiveLayerIds = [] } = this.props;\n try {\n return map.queryRenderedFeatures(point, {\n layers: interactiveLayerIds.filter(map.getLayer.bind(map))\n });\n }\n catch {\n // May fail if style is not loaded\n return [];\n }\n }\n _updateHover(e) {\n const { props } = this;\n const shouldTrackHoveredFeatures = props.interactiveLayerIds && (props.onMouseMove || props.onMouseEnter || props.onMouseLeave);\n if (shouldTrackHoveredFeatures) {\n const eventType = e.type;\n const wasHovering = this._hoveredFeatures?.length > 0;\n const features = this._queryRenderedFeatures(e.point);\n const isHovering = features.length > 0;\n if (!isHovering && wasHovering) {\n e.type = 'mouseleave';\n this._onPointerEvent(e);\n }\n this._hoveredFeatures = features;\n if (isHovering && !wasHovering) {\n e.type = 'mouseenter';\n this._onPointerEvent(e);\n }\n e.type = eventType;\n }\n else {\n this._hoveredFeatures = null;\n }\n }\n}\nMaplibre.savedMaps = [];\nexport default Maplibre;\n//# sourceMappingURL=maplibre.js.map"],"names":["DEFAULT_STYLE","pointerEvents","cameraEvents","otherEvents","settingNames","handlerNames","Maplibre","MapClass","props","container","cb","transformToViewState","tr","applyViewStateToTransform","oldProps","settingsChanged","sizeChanged","viewStateChanged","that","map","oldContainer","resizeObserver","initialViewState","mapStyle","mapOptions","normalizeStyle","viewState","getContext","eventName","nextProps","changes","currProps","changed","propName","deepEqual","styleDiffing","options","light","projection","sky","terrain","newValue","oldValue","point","interactiveLayerIds","e","eventType","wasHovering","features","isHovering"],"mappings":"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","x_google_ignoreList":[0]}