@maptiler/geocoding-control 2.1.7 → 3.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/CODE_OF_CONDUCT.md +46 -0
  2. package/CONTRIBUTING.md +72 -0
  3. package/README.md +34 -26
  4. package/SECURITY.md +16 -0
  5. package/dist/index.js +856 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/index.umd.js +263 -0
  8. package/dist/index.umd.js.map +1 -0
  9. package/dist/leaflet.public.js +1273 -0
  10. package/dist/leaflet.public.js.map +1 -0
  11. package/dist/leaflet.public.umd.js +276 -0
  12. package/dist/leaflet.public.umd.js.map +1 -0
  13. package/dist/maplibregl.js +1297 -0
  14. package/dist/maplibregl.js.map +1 -0
  15. package/dist/maplibregl.umd.js +276 -0
  16. package/dist/maplibregl.umd.js.map +1 -0
  17. package/dist/maptilersdk.js +1305 -0
  18. package/dist/maptilersdk.js.map +1 -0
  19. package/dist/maptilersdk.umd.js +276 -0
  20. package/dist/maptilersdk.umd.js.map +1 -0
  21. package/dist/src/components/clear-icon.d.ts +10 -0
  22. package/dist/src/components/fail-icon.d.ts +10 -0
  23. package/dist/src/components/loading-icon.d.ts +10 -0
  24. package/dist/src/components/marker.d.ts +10 -0
  25. package/dist/src/components/reverse-geocoding-icon.d.ts +10 -0
  26. package/dist/src/components/search-icon.d.ts +10 -0
  27. package/dist/src/controls/leaflet-control.d.ts +58 -0
  28. package/dist/src/controls/leaflet-events.d.ts +42 -0
  29. package/dist/src/controls/leaflet-options.d.ts +84 -0
  30. package/dist/src/controls/maplibregl-control.d.ts +55 -0
  31. package/dist/src/controls/maplibregl-events.d.ts +44 -0
  32. package/dist/src/controls/maplibregl-options.d.ts +104 -0
  33. package/dist/src/controls/maptilersdk-control.d.ts +6 -0
  34. package/dist/src/controls/maptilersdk-events.d.ts +2 -0
  35. package/dist/src/controls/maptilersdk-options.d.ts +10 -0
  36. package/dist/src/geocoder/geocoder-events.d.ts +46 -0
  37. package/dist/src/geocoder/geocoder-feature-item.d.ts +22 -0
  38. package/{svelte/types.d.ts → dist/src/geocoder/geocoder-options.d.ts} +11 -147
  39. package/dist/src/geocoder/geocoder.d.ts +112 -0
  40. package/dist/src/index.d.ts +9 -0
  41. package/dist/src/leaflet.public.d.ts +7 -0
  42. package/dist/src/maplibregl.d.ts +7 -0
  43. package/dist/src/maptilersdk.d.ts +7 -0
  44. package/dist/src/types.d.ts +45 -0
  45. package/dist/src/utils/geo-utils.d.ts +6 -0
  46. package/dist/src/utils/mask.d.ts +2 -0
  47. package/dist/src/utils/proximity.d.ts +2 -0
  48. package/package.json +80 -113
  49. package/MapLibreBasedGeocodingControl.d.ts +0 -3072
  50. package/geo-coordinates-parser.t.d.ts +0 -8
  51. package/geoUtils.d.ts +0 -3
  52. package/leaflet-controller.d.ts +0 -12
  53. package/leaflet-controller.js +0 -2475
  54. package/leaflet-controller.js.map +0 -1
  55. package/leaflet-controller.umd.js +0 -2
  56. package/leaflet-controller.umd.js.map +0 -1
  57. package/leaflet.d.ts +0 -131
  58. package/leaflet.js +0 -5082
  59. package/leaflet.js.map +0 -1
  60. package/leaflet.umd.js +0 -14
  61. package/leaflet.umd.js.map +0 -1
  62. package/maplibregl-controller.d.ts +0 -19
  63. package/maplibregl-controller.js +0 -2418
  64. package/maplibregl-controller.js.map +0 -1
  65. package/maplibregl-controller.umd.js +0 -2
  66. package/maplibregl-controller.umd.js.map +0 -1
  67. package/maplibregl.d.ts +0 -2509
  68. package/maplibregl.js +0 -5142
  69. package/maplibregl.js.map +0 -1
  70. package/maplibregl.umd.js +0 -14
  71. package/maplibregl.umd.js.map +0 -1
  72. package/maptilersdk.d.ts +0 -2504
  73. package/maptilersdk.js +0 -5152
  74. package/maptilersdk.js.map +0 -1
  75. package/maptilersdk.umd.js +0 -14
  76. package/maptilersdk.umd.js.map +0 -1
  77. package/mask.d.ts +0 -2
  78. package/openlayers-controller.d.ts +0 -15
  79. package/openlayers-controller.js +0 -2174
  80. package/openlayers-controller.js.map +0 -1
  81. package/openlayers-controller.umd.js +0 -2
  82. package/openlayers-controller.umd.js.map +0 -1
  83. package/openlayers.d.ts +0 -109
  84. package/openlayers.js +0 -5045
  85. package/openlayers.js.map +0 -1
  86. package/openlayers.umd.js +0 -14
  87. package/openlayers.umd.js.map +0 -1
  88. package/proximity.d.ts +0 -2
  89. package/react.d.ts +0 -45
  90. package/react.js +0 -2795
  91. package/react.js.map +0 -1
  92. package/react.umd.js +0 -14
  93. package/react.umd.js.map +0 -1
  94. package/style.css +0 -1
  95. package/svelte/ClearIcon.svelte +0 -12
  96. package/svelte/ClearIcon.svelte.d.ts +0 -25
  97. package/svelte/FailIcon.svelte +0 -12
  98. package/svelte/FailIcon.svelte.d.ts +0 -25
  99. package/svelte/FeatureItem.svelte +0 -246
  100. package/svelte/FeatureItem.svelte.d.ts +0 -26
  101. package/svelte/GeocodingControl.svelte +0 -921
  102. package/svelte/GeocodingControl.svelte.d.ts +0 -105
  103. package/svelte/LoadingIcon.svelte +0 -40
  104. package/svelte/LoadingIcon.svelte.d.ts +0 -25
  105. package/svelte/MapLibreBasedGeocodingControl.d.ts +0 -3072
  106. package/svelte/MapLibreBasedGeocodingControl.js +0 -210
  107. package/svelte/MarkerIcon.svelte +0 -71
  108. package/svelte/MarkerIcon.svelte.d.ts +0 -18
  109. package/svelte/ReverseGeocodingIcon.svelte +0 -12
  110. package/svelte/ReverseGeocodingIcon.svelte.d.ts +0 -25
  111. package/svelte/SearchIcon.svelte +0 -26
  112. package/svelte/SearchIcon.svelte.d.ts +0 -25
  113. package/svelte/geo-coordinates-parser.t.d.ts +0 -8
  114. package/svelte/geo-coordinates-parser.t.js +0 -1
  115. package/svelte/geoUtils.d.ts +0 -3
  116. package/svelte/geoUtils.js +0 -18
  117. package/svelte/info.json +0 -1
  118. package/svelte/leaflet-controller.d.ts +0 -12
  119. package/svelte/leaflet-controller.js +0 -274
  120. package/svelte/leaflet.d.ts +0 -131
  121. package/svelte/leaflet.js +0 -116
  122. package/svelte/maplibregl-controller.d.ts +0 -19
  123. package/svelte/maplibregl-controller.js +0 -279
  124. package/svelte/maplibregl.d.ts +0 -2509
  125. package/svelte/maplibregl.js +0 -17
  126. package/svelte/maptilersdk.d.ts +0 -2504
  127. package/svelte/maptilersdk.js +0 -32
  128. package/svelte/mask.d.ts +0 -2
  129. package/svelte/mask.js +0 -54
  130. package/svelte/openlayers-controller.d.ts +0 -15
  131. package/svelte/openlayers-controller.js +0 -283
  132. package/svelte/openlayers.d.ts +0 -109
  133. package/svelte/openlayers.js +0 -178
  134. package/svelte/proximity.d.ts +0 -2
  135. package/svelte/proximity.js +0 -60
  136. package/svelte/react.d.ts +0 -45
  137. package/svelte/react.js +0 -106
  138. package/svelte/types.js +0 -1
  139. package/svelte/vanilla.d.ts +0 -61
  140. package/svelte/vanilla.js +0 -101
  141. package/svelte/vite-env.d.ts +0 -2
  142. package/types.d.ts +0 -391
  143. package/vanilla.d.ts +0 -61
  144. package/vanilla.js +0 -2799
  145. package/vanilla.js.map +0 -1
  146. package/vanilla.umd.js +0 -14
  147. package/vanilla.umd.js.map +0 -1
  148. /package/{icons → dist/icons}/10pin.svg +0 -0
  149. /package/{icons → dist/icons}/9pin.svg +0 -0
  150. /package/{icons → dist/icons}/advertising_column.svg +0 -0
  151. /package/{icons → dist/icons}/aerodrome.svg +0 -0
  152. /package/{icons → dist/icons}/alcohol.svg +0 -0
  153. /package/{icons → dist/icons}/alpine_hut.svg +0 -0
  154. /package/{icons → dist/icons}/amusement_arcade.svg +0 -0
  155. /package/{icons → dist/icons}/amusement_park.svg +0 -0
  156. /package/{icons → dist/icons}/apartment.svg +0 -0
  157. /package/{icons → dist/icons}/archaeological_site.svg +0 -0
  158. /package/{icons → dist/icons}/area.svg +0 -0
  159. /package/{icons → dist/icons}/art.svg +0 -0
  160. /package/{icons → dist/icons}/arts_centre.svg +0 -0
  161. /package/{icons → dist/icons}/artwork.svg +0 -0
  162. /package/{icons → dist/icons}/audioguide.svg +0 -0
  163. /package/{icons → dist/icons}/bag.svg +0 -0
  164. /package/{icons → dist/icons}/beauty.svg +0 -0
  165. /package/{icons → dist/icons}/bed.svg +0 -0
  166. /package/{icons → dist/icons}/bell_tower.svg +0 -0
  167. /package/{icons → dist/icons}/beverages.svg +0 -0
  168. /package/{icons → dist/icons}/bicycle_repair_station.svg +0 -0
  169. /package/{icons → dist/icons}/biergarten.svg +0 -0
  170. /package/{icons → dist/icons}/bird_hide.svg +0 -0
  171. /package/{icons → dist/icons}/boat_rental.svg +0 -0
  172. /package/{icons → dist/icons}/bookmaker.svg +0 -0
  173. /package/{icons → dist/icons}/books.svg +0 -0
  174. /package/{icons → dist/icons}/bowl.svg +0 -0
  175. /package/{icons → dist/icons}/bowling_alley.svg +0 -0
  176. /package/{icons → dist/icons}/bunker.svg +0 -0
  177. /package/{icons → dist/icons}/bureau_de_change.svg +0 -0
  178. /package/{icons → dist/icons}/bus_station.svg +0 -0
  179. /package/{icons → dist/icons}/bust.svg +0 -0
  180. /package/{icons → dist/icons}/camping.svg +0 -0
  181. /package/{icons → dist/icons}/car_parts.svg +0 -0
  182. /package/{icons → dist/icons}/car_wash.svg +0 -0
  183. /package/{icons → dist/icons}/caravan_park.svg +0 -0
  184. /package/{icons → dist/icons}/carpet.svg +0 -0
  185. /package/{icons → dist/icons}/cattle_grid.svg +0 -0
  186. /package/{icons → dist/icons}/cave_entrance.svg +0 -0
  187. /package/{icons → dist/icons}/chalet.svg +0 -0
  188. /package/{icons → dist/icons}/charity.svg +0 -0
  189. /package/{icons → dist/icons}/chemist.svg +0 -0
  190. /package/{icons → dist/icons}/chimney.svg +0 -0
  191. /package/{icons → dist/icons}/church.svg +0 -0
  192. /package/{icons → dist/icons}/city_gate.svg +0 -0
  193. /package/{icons → dist/icons}/clinic.svg +0 -0
  194. /package/{icons → dist/icons}/clothes.svg +0 -0
  195. /package/{icons → dist/icons}/coffee.svg +0 -0
  196. /package/{icons → dist/icons}/community_centre.svg +0 -0
  197. /package/{icons → dist/icons}/computer.svg +0 -0
  198. /package/{icons → dist/icons}/consulate.svg +0 -0
  199. /package/{icons → dist/icons}/copyshop.svg +0 -0
  200. /package/{icons → dist/icons}/cosmetics.svg +0 -0
  201. /package/{icons → dist/icons}/courthouse.svg +0 -0
  202. /package/{icons → dist/icons}/crane.svg +0 -0
  203. /package/{icons → dist/icons}/dairy.svg +0 -0
  204. /package/{icons → dist/icons}/deli.svg +0 -0
  205. /package/{icons → dist/icons}/department_store.svg +0 -0
  206. /package/{icons → dist/icons}/diy.svg +0 -0
  207. /package/{icons → dist/icons}/electronics.svg +0 -0
  208. /package/{icons → dist/icons}/embankment.svg +0 -0
  209. /package/{icons → dist/icons}/embassy.svg +0 -0
  210. /package/{icons → dist/icons}/excrement_bags.svg +0 -0
  211. /package/{icons → dist/icons}/fabric.svg +0 -0
  212. /package/{icons → dist/icons}/farmyard.svg +0 -0
  213. /package/{icons → dist/icons}/ferry.svg +0 -0
  214. /package/{icons → dist/icons}/firepit.svg +0 -0
  215. /package/{icons → dist/icons}/firestation.svg +0 -0
  216. /package/{icons → dist/icons}/fishing.svg +0 -0
  217. /package/{icons → dist/icons}/fitness.svg +0 -0
  218. /package/{icons → dist/icons}/ford.svg +0 -0
  219. /package/{icons → dist/icons}/fort.svg +0 -0
  220. /package/{icons → dist/icons}/fortress.svg +0 -0
  221. /package/{icons → dist/icons}/full-height_turnstile.svg +0 -0
  222. /package/{icons → dist/icons}/generator_wind.svg +0 -0
  223. /package/{icons → dist/icons}/golf_pin.svg +0 -0
  224. /package/{icons → dist/icons}/greengrocer.svg +0 -0
  225. /package/{icons → dist/icons}/guest_house.svg +0 -0
  226. /package/{icons → dist/icons}/helipad.svg +0 -0
  227. /package/{icons → dist/icons}/hifi.svg +0 -0
  228. /package/{icons → dist/icons}/hostel.svg +0 -0
  229. /package/{icons → dist/icons}/hotel.svg +0 -0
  230. /package/{icons → dist/icons}/housenumber.svg +0 -0
  231. /package/{icons → dist/icons}/houseware.svg +0 -0
  232. /package/{icons → dist/icons}/hunting_stand.svg +0 -0
  233. /package/{icons → dist/icons}/interior_decoration.svg +0 -0
  234. /package/{icons → dist/icons}/internet_cafe.svg +0 -0
  235. /package/{icons → dist/icons}/kindergarten.svg +0 -0
  236. /package/{icons → dist/icons}/kissing_gate.svg +0 -0
  237. /package/{icons → dist/icons}/manor.svg +0 -0
  238. /package/{icons → dist/icons}/map.svg +0 -0
  239. /package/{icons → dist/icons}/marker_reverse.svg +0 -0
  240. /package/{icons → dist/icons}/marker_selected.svg +0 -0
  241. /package/{icons → dist/icons}/marker_unselected.svg +0 -0
  242. /package/{icons → dist/icons}/marketplace.svg +0 -0
  243. /package/{icons → dist/icons}/massage.svg +0 -0
  244. /package/{icons → dist/icons}/mast.svg +0 -0
  245. /package/{icons → dist/icons}/mast_communications.svg +0 -0
  246. /package/{icons → dist/icons}/mast_lighting.svg +0 -0
  247. /package/{icons → dist/icons}/medical_supply.svg +0 -0
  248. /package/{icons → dist/icons}/memorial.svg +0 -0
  249. /package/{icons → dist/icons}/miniature_golf.svg +0 -0
  250. /package/{icons → dist/icons}/motel.svg +0 -0
  251. /package/{icons → dist/icons}/mountain_range.svg +0 -0
  252. /package/{icons → dist/icons}/multifaith.svg +0 -0
  253. /package/{icons → dist/icons}/musical_instrument.svg +0 -0
  254. /package/{icons → dist/icons}/newsagent.svg +0 -0
  255. /package/{icons → dist/icons}/nightclub.svg +0 -0
  256. /package/{icons → dist/icons}/ocean.svg +0 -0
  257. /package/{icons → dist/icons}/office.svg +0 -0
  258. /package/{icons → dist/icons}/outdoor_seating.svg +0 -0
  259. /package/{icons → dist/icons}/palace.svg +0 -0
  260. /package/{icons → dist/icons}/parcel_locker.svg +0 -0
  261. /package/{icons → dist/icons}/parking_space.svg +0 -0
  262. /package/{icons → dist/icons}/parking_tickets.svg +0 -0
  263. /package/{icons → dist/icons}/pet.svg +0 -0
  264. /package/{icons → dist/icons}/photo.svg +0 -0
  265. /package/{icons → dist/icons}/picnic.svg +0 -0
  266. /package/{icons → dist/icons}/plaque.svg +0 -0
  267. /package/{icons → dist/icons}/poi.svg +0 -0
  268. /package/{icons → dist/icons}/post_box.svg +0 -0
  269. /package/{icons → dist/icons}/post_office.svg +0 -0
  270. /package/{icons → dist/icons}/postal_code.svg +0 -0
  271. /package/{icons → dist/icons}/pub.svg +0 -0
  272. /package/{icons → dist/icons}/public_bath.svg +0 -0
  273. /package/{icons → dist/icons}/public_bookcase.svg +0 -0
  274. /package/{icons → dist/icons}/public_building.svg +0 -0
  275. /package/{icons → dist/icons}/public_transport_tickets.svg +0 -0
  276. /package/{icons → dist/icons}/reverse.svg +0 -0
  277. /package/{icons → dist/icons}/river.svg +0 -0
  278. /package/{icons → dist/icons}/road.svg +0 -0
  279. /package/{icons → dist/icons}/saddle.svg +0 -0
  280. /package/{icons → dist/icons}/sauna.svg +0 -0
  281. /package/{icons → dist/icons}/sea.svg +0 -0
  282. /package/{icons → dist/icons}/second_hand.svg +0 -0
  283. /package/{icons → dist/icons}/shintoist.svg +0 -0
  284. /package/{icons → dist/icons}/shoe.svg +0 -0
  285. /package/{icons → dist/icons}/shower.svg +0 -0
  286. /package/{icons → dist/icons}/shrine.svg +0 -0
  287. /package/{icons → dist/icons}/sikhist.svg +0 -0
  288. /package/{icons → dist/icons}/slipway.svg +0 -0
  289. /package/{icons → dist/icons}/snowmobile.svg +0 -0
  290. /package/{icons → dist/icons}/social_facility.svg +0 -0
  291. /package/{icons → dist/icons}/sports.svg +0 -0
  292. /package/{icons → dist/icons}/sprite.json +0 -0
  293. /package/{icons → dist/icons}/sprite.png +0 -0
  294. /package/{icons → dist/icons}/sprite@2x.json +0 -0
  295. /package/{icons → dist/icons}/sprite@2x.png +0 -0
  296. /package/{icons → dist/icons}/stationery.svg +0 -0
  297. /package/{icons → dist/icons}/stile.svg +0 -0
  298. /package/{icons → dist/icons}/stone.svg +0 -0
  299. /package/{icons → dist/icons}/storage_tank.svg +0 -0
  300. /package/{icons → dist/icons}/stream.svg +0 -0
  301. /package/{icons → dist/icons}/street.svg +0 -0
  302. /package/{icons → dist/icons}/supermarket.svg +0 -0
  303. /package/{icons → dist/icons}/tea.svg +0 -0
  304. /package/{icons → dist/icons}/telescope_dish.svg +0 -0
  305. /package/{icons → dist/icons}/telescope_dome.svg +0 -0
  306. /package/{icons → dist/icons}/ticket.svg +0 -0
  307. /package/{icons → dist/icons}/tobacco.svg +0 -0
  308. /package/{icons → dist/icons}/tower_cantilever_communication.svg +0 -0
  309. /package/{icons → dist/icons}/tower_cooling.svg +0 -0
  310. /package/{icons → dist/icons}/tower_dish.svg +0 -0
  311. /package/{icons → dist/icons}/tower_dome.svg +0 -0
  312. /package/{icons → dist/icons}/tower_generic.svg +0 -0
  313. /package/{icons → dist/icons}/tower_lattice.svg +0 -0
  314. /package/{icons → dist/icons}/tower_lattice_communication.svg +0 -0
  315. /package/{icons → dist/icons}/tower_lattice_lighting.svg +0 -0
  316. /package/{icons → dist/icons}/tower_lighting.svg +0 -0
  317. /package/{icons → dist/icons}/townhall.svg +0 -0
  318. /package/{icons → dist/icons}/toys.svg +0 -0
  319. /package/{icons → dist/icons}/trade.svg +0 -0
  320. /package/{icons → dist/icons}/traffic_light.svg +0 -0
  321. /package/{icons → dist/icons}/train_station.svg +0 -0
  322. /package/{icons → dist/icons}/travel_agency.svg +0 -0
  323. /package/{icons → dist/icons}/tyres.svg +0 -0
  324. /package/{icons → dist/icons}/university.svg +0 -0
  325. /package/{icons → dist/icons}/variety_store.svg +0 -0
  326. /package/{icons → dist/icons}/vehicle_inspection.svg +0 -0
  327. /package/{icons → dist/icons}/vending_machine.svg +0 -0
  328. /package/{icons → dist/icons}/video.svg +0 -0
  329. /package/{icons → dist/icons}/video_games.svg +0 -0
  330. /package/{icons → dist/icons}/waste_disposal.svg +0 -0
  331. /package/{icons → dist/icons}/water_well.svg +0 -0
  332. /package/{icons → dist/icons}/waterfall.svg +0 -0
  333. /package/{icons → dist/icons}/wilderness_hut.svg +0 -0
@@ -1,74 +1,5 @@
1
- import type { Feature as FeatureType, Geometry } from "geojson";
2
- export type BBox = [minx: number, miny: number, maxx: number, maxy: number];
3
- export type Position = [x: number, y: number];
4
- export type Feature<T extends Geometry = Geometry> = FeatureType<T> & {
5
- id: string;
6
- text: string;
7
- place_name: string;
8
- place_type: string[];
9
- center: Position;
10
- bbox: BBox;
11
- address?: string;
12
- matching_text?: string;
13
- };
14
- export type FeatureCollection<T extends Geometry = Geometry> = {
15
- type: "FeatureCollection";
16
- features: Feature<T>[];
17
- };
18
- export type MapEvent = {
19
- type: "mapClick";
20
- coordinates: Position;
21
- } | {
22
- type: "markerClick";
23
- id: string;
24
- } | {
25
- type: "markerMouseEnter";
26
- id: string;
27
- } | {
28
- type: "markerMouseLeave";
29
- id: string;
30
- };
31
- export type MapController = {
32
- setEventHandler(handler: undefined | ((e: MapEvent) => void)): void;
33
- flyTo(center: Position, zoom?: number): void;
34
- fitBounds(bbox: BBox, padding: number, maxZoom?: number): void;
35
- indicateReverse(reverse: boolean): void;
36
- setFeatures(features: Feature[] | undefined, picked: Feature | undefined, showPolygonMarker: boolean): void;
37
- setReverseMarker(coordinates?: Position): void;
38
- setSelectedMarker(index: number): void;
39
- getCenterAndZoom(): [zoom: number, lon: number, lat: number] | undefined;
40
- };
41
- export type ProximityRule = {
42
- /** minimal map zoom for the rule to be used */
43
- minZoom?: number;
44
- /** maximal map zoom for the rule to be used */
45
- maxZoom?: number;
46
- } & ({
47
- /** fixed proximity */
48
- type: "fixed";
49
- /** coordinates of the fixed proximity */
50
- coordinates: Position;
51
- } | {
52
- /** use map center coordinates for the proximity */
53
- type: "map-center";
54
- } | {
55
- /** resolve proximity by geolocating IP of the geocoding API call */
56
- type: "server-geolocation";
57
- } | ({
58
- /** use browser's geolocation API for proximity. If it fails, following proximity rules are iterated. */
59
- type: "client-geolocation";
60
- /** how long should the geolocation result be cached, in milliseconds */
61
- cachedLocationExpiry?: number;
62
- } & PositionOptions));
63
- export type ControlOptions = {
64
- /**
65
- * Callback function to adjust URL search parameters.
66
- *
67
- * Default: Empty function.
68
- *
69
- * @deprecated Use `adjustUrl` instead.
70
- */
71
- adjustUrlQuery?: (sp: URLSearchParams) => void;
1
+ import { BBox, EnableReverse, Feature, ProximityRule, ShowPlaceType, TypeRule } from '../types';
2
+ export type MaptilerGeocoderOptions = {
72
3
  /**
73
4
  * Callback function to adjust the geocoding URL before fetching.
74
5
  *
@@ -93,12 +24,6 @@ export type ControlOptions = {
93
24
  * Default: `undefined`.
94
25
  */
95
26
  bbox?: BBox;
96
- /**
97
- * CSS class for the root element.
98
- *
99
- * Default: `undefined`.
100
- */
101
- class?: string;
102
27
  /**
103
28
  * Title of the clear button.
104
29
  *
@@ -166,6 +91,12 @@ export type ControlOptions = {
166
91
  * Default: `false`.
167
92
  */
168
93
  exhaustiveReverseGeocoding?: boolean;
94
+ /**
95
+ * Enables fetching the full geometry (polygon etc.) instead of just a point on a picked feature.
96
+ *
97
+ * Default: `false`.
98
+ */
99
+ fetchFullGeometryOnPick?: boolean;
169
100
  /**
170
101
  * Additional parameters for fetch requests.
171
102
  *
@@ -179,12 +110,6 @@ export type ControlOptions = {
179
110
  * Default: A function that always returns `true`.
180
111
  */
181
112
  filter?: (feature: Feature) => boolean;
182
- /**
183
- * Animates the map to the selected feature from the result list.
184
- *
185
- * Default: `false`.
186
- */
187
- flyToSelected?: boolean;
188
113
  /**
189
114
  * Enables fuzzy search.
190
115
  *
@@ -221,12 +146,6 @@ export type ControlOptions = {
221
146
  * Default: `5`.
222
147
  */
223
148
  limit?: number;
224
- /**
225
- * Displays a marker on the selected feature from the result list.
226
- *
227
- * Default: `true`.
228
- */
229
- markerOnSelected?: boolean;
230
149
  /**
231
150
  * Minimum number of characters required to start a search.
232
151
  *
@@ -245,14 +164,11 @@ export type ControlOptions = {
245
164
  */
246
165
  noResultsMessage?: string;
247
166
  /**
248
- * Style of the picked result on the map:
249
- * - `"marker-only"`: Show only a marker at the center of the feature.
250
- * - `"full-geometry"`: Display the full feature geometry.
251
- * - `"full-geometry-including-polygon-center-marker"`: Display full geometry with a marker at the polygon center.
167
+ * Opens the result list above the query input instead of below. Used when mounted at the bottom of a map.
252
168
  *
253
- * Default: `"full-geometry"`.
169
+ * Default: `false`.
254
170
  */
255
- pickedResultStyle?: PickedResultStyle;
171
+ openListOnTop?: boolean;
256
172
  /**
257
173
  * Custom placeholder for the input box.
258
174
  *
@@ -336,56 +252,4 @@ export type ControlOptions = {
336
252
  * Default: `undefined` (uses server default feature types).
337
253
  */
338
254
  types?: TypeRule[];
339
- /**
340
- * Specifies the zoom level to animate the map to for a geocoded result when no bounding box is present or when the result is a point.
341
- * If a bounding box is present and not a point, the map will fit to the bounding box.
342
- *
343
- * Values are key-value pairs where the key is a `<type>` or `<type>.<category>` and the value is the zoom level.
344
- *
345
- * Default: `GeocodingControl.ZOOM_DEFAULTS`.
346
- */
347
- zoom?: Record<string, number>;
348
- };
349
- export type PickedResultStyle = "marker-only" | "full-geometry" | "full-geometry-including-polygon-center-marker";
350
- export type EnableReverse = "never" | "always" | "button";
351
- export type ShowPlaceType = "never" | "always" | "if-needed";
352
- export type DispatcherTypeCC = {
353
- featuresListed: {
354
- features: Feature[] | undefined;
355
- };
356
- featuresMarked: {
357
- features: Feature[] | undefined;
358
- };
359
- optionsVisibilityChange: {
360
- optionsVisible: boolean;
361
- };
362
- pick: {
363
- feature: Feature | undefined;
364
- };
365
- queryChange: {
366
- query: string;
367
- };
368
- response: {
369
- url: string;
370
- featureCollection: FeatureCollection;
371
- };
372
- reverseToggle: {
373
- reverse: boolean;
374
- };
375
- select: {
376
- feature: Feature | undefined;
377
- };
378
- };
379
- export type DispatcherType = {
380
- [T in keyof DispatcherTypeCC as Lowercase<T>]: DispatcherTypeCC[T];
381
255
  };
382
- export type RedefineType<OriginalType, UpdatedType extends {
383
- [K in keyof OriginalType]: OriginalType[K];
384
- } & {
385
- [K in Exclude<keyof UpdatedType, keyof OriginalType>]: never;
386
- }> = UpdatedType;
387
- export type TypeRule = string | [
388
- minZoom: number | null | undefined,
389
- maxZoom: number | null | undefined,
390
- type: string
391
- ];
@@ -0,0 +1,112 @@
1
+ import { LitElement } from 'lit';
2
+ import { BBox, EnableReverse, Feature, ProximityRule, ShowPlaceType, TypeRule } from '../types';
3
+ import { MaptilerGeocoderEventName, MaptilerGeocoderEventNameMap } from './geocoder-events';
4
+ import { MaptilerGeocoderOptions } from './geocoder-options';
5
+ export declare class MaptilerGeocoderElement extends LitElement implements MaptilerGeocoderOptions {
6
+ #private;
7
+ static styles: import('lit').CSSResult;
8
+ adjustUrl?: (url: URL) => void;
9
+ apiKey?: string;
10
+ apiUrl?: string;
11
+ bbox?: BBox;
12
+ clearButtonTitle?: string;
13
+ clearListOnPick: boolean;
14
+ clearOnBlur: boolean;
15
+ collapsed: boolean;
16
+ country?: string | string[];
17
+ debounceSearch?: number;
18
+ enableReverse?: EnableReverse;
19
+ errorMessage?: string;
20
+ excludeTypes: boolean;
21
+ exhaustiveReverseGeocoding: boolean;
22
+ fetchFullGeometryOnPick: boolean;
23
+ fetchParameters?: RequestInit;
24
+ filter?: (feature: Feature) => boolean;
25
+ fuzzyMatch?: boolean | undefined;
26
+ iconsBaseUrl?: string;
27
+ keepListOpen: boolean;
28
+ language?: string | string[] | null;
29
+ limit?: number;
30
+ minLength?: number;
31
+ noResultsMessage?: string;
32
+ openListOnTop: boolean;
33
+ placeholder?: string;
34
+ proximity?: ProximityRule[] | null;
35
+ reverseActive: boolean;
36
+ reverseButtonTitle?: string;
37
+ reverseGeocodingExcludeTypes?: boolean | undefined;
38
+ reverseGeocodingLimit?: number;
39
+ reverseGeocodingTypes?: TypeRule[];
40
+ selectFirst?: boolean | undefined;
41
+ showPlaceType?: ShowPlaceType;
42
+ showResultsWhileTyping?: boolean | undefined;
43
+ types?: TypeRule[];
44
+ /** Reference to the input element the user can type a query into */
45
+ private input;
46
+ /** Value to search via geocoding */
47
+ private searchValue;
48
+ /** Features found via geocoding */
49
+ private listFeatures?;
50
+ /** Index of item currently selected from the list of found features */
51
+ private selectedItemIndex;
52
+ /** Feature that has been picked by the user */
53
+ private picked?;
54
+ /** Cached found features to be used to restore the features when loading more data for picked feature */
55
+ private cachedFeatures;
56
+ /** Effectively a cache key for cached features */
57
+ private lastSearchUrl;
58
+ /** Last error that happened in geocoding, to be shown to user */
59
+ private error;
60
+ /** AbortController instance used to potentially cancel the current geocoding request*/
61
+ private abortController?;
62
+ /** Focus state of input element */
63
+ private focused;
64
+ /** Focus state of input element, delayed for a moment to not close feature list immediately after losing focus */
65
+ private focusedDelayed;
66
+ protected firstUpdated(): void;
67
+ /**
68
+ * Set the options of this instance.
69
+ *
70
+ * @param options options to set
71
+ */
72
+ setOptions(options: Partial<MaptilerGeocoderOptions>): void;
73
+ /**
74
+ * Set the content of search input box.
75
+ *
76
+ * @param value text to set
77
+ */
78
+ setQuery(value: string): void;
79
+ /**
80
+ * Set the content of search input box and immediately submit it.
81
+ *
82
+ * @param value text to set and submit
83
+ */
84
+ submitQuery(value: string): void;
85
+ /**
86
+ * Clear search result list.
87
+ */
88
+ clearList(): void;
89
+ /**
90
+ * Focus the search input box.
91
+ *
92
+ * @param options [FocusOptions](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
93
+ */
94
+ focus(options?: FocusOptions): void;
95
+ /**
96
+ * Blur the search input box.
97
+ */
98
+ blur(): void;
99
+ addEventListener<E extends MaptilerGeocoderEventName>(type: E, listener: (this: HTMLElement, e: MaptilerGeocoderEventNameMap[E]) => unknown, options?: boolean | AddEventListenerOptions): void;
100
+ removeEventListener<E extends MaptilerGeocoderEventName>(type: E, listener: (this: HTMLElement, e: MaptilerGeocoderEventNameMap[E]) => unknown, options?: boolean | EventListenerOptions): void;
101
+ /** @internal */
102
+ handleMapChange(centerAndZoom: [zoom: number, lon: number, lat: number] | undefined): void;
103
+ /** @internal */
104
+ handleMapClick(coordinates: [lng: number, lat: number]): void;
105
+ willUpdate(changedProperties: Map<string, unknown>): void;
106
+ render(): import('lit-html').TemplateResult<1>;
107
+ }
108
+ declare global {
109
+ interface HTMLElementTagNameMap {
110
+ "maptiler-geocoder": MaptilerGeocoderElement;
111
+ }
112
+ }
@@ -0,0 +1,9 @@
1
+ export * from './components/clear-icon';
2
+ export * from './components/fail-icon';
3
+ export * from './components/loading-icon';
4
+ export * from './components/reverse-geocoding-icon';
5
+ export * from './components/search-icon';
6
+ export * from './geocoder/geocoder';
7
+ export * from './geocoder/geocoder-events';
8
+ export * from './geocoder/geocoder-options';
9
+ export * from './types';
@@ -0,0 +1,7 @@
1
+ export * from '.';
2
+ export * from './components/marker';
3
+ export * from './controls/leaflet-control';
4
+ export { LeafletGeocodingControl as GeocodingControl } from './controls/leaflet-control';
5
+ export type * as GeocodingControlEvent from './controls/leaflet-events';
6
+ export * from './controls/leaflet-options';
7
+ export type { LeafletGeocodingControlOptions as GeocodingControlOptions } from './controls/leaflet-options';
@@ -0,0 +1,7 @@
1
+ export * from '.';
2
+ export * from './components/marker';
3
+ export * from './controls/maplibregl-control';
4
+ export { MaplibreglGeocodingControl as GeocodingControl } from './controls/maplibregl-control';
5
+ export type * as GeocodingControlEvent from './controls/maplibregl-events';
6
+ export * from './controls/maplibregl-options';
7
+ export type { MaplibreglGeocodingControlOptions as GeocodingControlOptions } from './controls/maplibregl-options';
@@ -0,0 +1,7 @@
1
+ export * from '.';
2
+ export * from './components/marker';
3
+ export * from './controls/maptilersdk-control';
4
+ export { MaptilerGeocodingControl as GeocodingControl } from './controls/maptilersdk-control';
5
+ export type * as GeocodingControlEvent from './controls/maptilersdk-events';
6
+ export * from './controls/maptilersdk-options';
7
+ export type { MaptilerGeocodingControlOptions as GeocodingControlOptions } from './controls/maptilersdk-options';
@@ -0,0 +1,45 @@
1
+ import { Feature as FeatureType, Geometry } from 'geojson';
2
+ export type BBox = [minx: number, miny: number, maxx: number, maxy: number];
3
+ export type Position = [x: number, y: number];
4
+ export type Feature<T extends Geometry = Geometry> = FeatureType<T> & {
5
+ id: string;
6
+ text: string;
7
+ place_name: string;
8
+ place_type: string[];
9
+ place_type_name: string[];
10
+ center: Position;
11
+ bbox: BBox;
12
+ address?: string;
13
+ matching_text?: string;
14
+ };
15
+ export type FeatureCollection<T extends Geometry = Geometry> = {
16
+ type: "FeatureCollection";
17
+ features: Feature<T>[];
18
+ };
19
+ export type ProximityRule = {
20
+ /** minimal map zoom for the rule to be used */
21
+ minZoom?: number;
22
+ /** maximal map zoom for the rule to be used */
23
+ maxZoom?: number;
24
+ } & ({
25
+ /** fixed proximity */
26
+ type: "fixed";
27
+ /** coordinates of the fixed proximity */
28
+ coordinates: Position;
29
+ } | {
30
+ /** use map center coordinates for the proximity */
31
+ type: "map-center";
32
+ } | {
33
+ /** resolve proximity by geolocating IP of the geocoding API call */
34
+ type: "server-geolocation";
35
+ } | ({
36
+ /** use browser's geolocation API for proximity. If it fails, following proximity rules are iterated. */
37
+ type: "client-geolocation";
38
+ /** how long should the geolocation result be cached, in milliseconds */
39
+ cachedLocationExpiry?: number;
40
+ } & PositionOptions));
41
+ export type PickedResultStyle = "marker-only" | "full-geometry" | "full-geometry-including-polygon-center-marker";
42
+ export type EnableReverse = "never" | "always" | "button";
43
+ export type ShowPlaceType = "never" | "always" | "if-needed";
44
+ export type TypeRule = PlaceType | [minZoom: number | null | undefined, maxZoom: number | null | undefined, type: PlaceType];
45
+ export type PlaceType = "continental_marine" | "country" | "major_landform" | "region" | "subregion" | "county" | "joint_municipality" | "joint_submunicipality" | "municipality" | "municipal_district" | "locality" | "neighbourhood" | "place" | "postal_code" | "address" | "road" | "poi";
@@ -0,0 +1,6 @@
1
+ import { FeatureCollection, MultiPolygon, Polygon, Position } from 'geojson';
2
+ import { BBox } from '../types';
3
+ export declare function wrapNum(x: number, range: [number, number], includeMax: boolean): number;
4
+ export declare function unwrapBbox(bbox0: BBox): BBox;
5
+ export declare function shiftPolyCollection(featureCollection: FeatureCollection<Polygon | MultiPolygon>, distance: number): FeatureCollection<Polygon | MultiPolygon>;
6
+ export declare function shiftPolyCoords(coordinates: Position[][], distance: number): void;
@@ -0,0 +1,2 @@
1
+ import { Feature, FeatureCollection, MultiPolygon, Polygon } from 'geojson';
2
+ export declare function getMask(picked: Feature<Polygon | MultiPolygon>): FeatureCollection<Polygon | MultiPolygon> | undefined;
@@ -0,0 +1,2 @@
1
+ import { ProximityRule } from '../types';
2
+ export declare function getProximity(centerAndZoom: [zoom: number, lon: number, lat: number] | undefined, proximity: ProximityRule[] | null | undefined, ac: AbortController): Promise<string | undefined>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maptiler/geocoding-control",
3
- "version": "2.1.7",
3
+ "version": "3.0.0-rc.1",
4
4
  "description": "The Javascript & TypeScript Map Control component for MapTiler Geocoding service. Easy to be integrated into any JavaScript mapping application.",
5
5
  "type": "module",
6
6
  "author": {
@@ -26,125 +26,106 @@
26
26
  "search",
27
27
  "leaflet-control",
28
28
  "maplibre-control",
29
- "control",
30
- "react",
31
- "svelte"
29
+ "control"
32
30
  ],
33
31
  "scripts": {
34
- "dev": "vite --host",
35
- "build": "node sync-info.js run && npm run check && concurrently --names \"SVELTE ,MAPLIBRE,MAPTILER,MAPLIB-C,LEAFLET ,LEAFLE-C,OL ,OL-C ,REACT ,TYPES ,VANILLA \" \"npm run build-svelte\" \"npm run build-maplibre\" \"npm run build-maptilersdk\" \"npm run build-maplibre-controller\" \"npm run build-leaflet\" \"npm run build-leaflet-controller\" \"npm run build-openlayers\" \"npm run build-openlayers-controller\" \"npm run build-react\" \"npm run build-vanilla\" \"npm run build-types\" && cp LICENSE README.md package.json dist && cp -r dist.svelte dist/svelte",
36
- "build-svelte": "svelte-package -i src -o dist.svelte && VITE_LIB_VERSION=$npm_package_version node replace-env-vars.js",
37
- "build-maptilersdk": "FLAVOUR=maptilersdk vite build",
38
- "build-maplibre": "FLAVOUR=maplibre vite build",
39
- "build-maplibre-controller": "FLAVOUR=maplibregl-controller vite build",
40
- "build-leaflet": "FLAVOUR=leaflet vite build",
41
- "build-leaflet-controller": "FLAVOUR=leaflet-controller vite build",
42
- "build-openlayers": "FLAVOUR=openlayers vite build",
43
- "build-openlayers-controller": "FLAVOUR=openlayers-controller vite build",
44
- "build-react": "FLAVOUR=react vite build",
45
- "build-vanilla": "FLAVOUR=vanilla vite build",
46
- "build-types": "tsc --outDir dist --declaration --emitDeclarationOnly -p tsconfig.dist.json",
32
+ "dev": "vite -c vite.config-dev.ts",
33
+ "make": "npm run clean && npm run build && npm run check-version",
34
+ "build": "npm run build:index && npm run build:index:umd && npm run build:maptilersdk && npm run build:maptilersdk:umd && npm run build:maplibregl && npm run build:maplibregl:umd && npm run build:leaflet && npm run build:leaflet:umd",
35
+ "build:index": "FLAVOUR=index vite build",
36
+ "build:index:umd": "FLAVOUR=index MODE=umd vite build",
37
+ "build:maptilersdk": "FLAVOUR=maptilersdk vite build",
38
+ "build:maptilersdk:umd": "FLAVOUR=maptilersdk MODE=umd vite build",
39
+ "build:maplibregl": "FLAVOUR=maplibregl vite build",
40
+ "build:maplibregl:umd": "FLAVOUR=maplibregl MODE=umd vite build",
41
+ "build:leaflet": "FLAVOUR=leaflet vite build",
42
+ "build:leaflet:umd": "FLAVOUR=leaflet MODE=umd vite build",
43
+ "check-version": "npm run check-version:leaflet-v1.5 && npm run check-version:leaflet-v1.7 && npm run check-version:leaflet-v1.9 && npm run check-version:leaflet-v2",
44
+ "check-version:leaflet-v1.5": "tsc -p tsconfig.leaflet-v1.5.json",
45
+ "check-version:leaflet-v1.7": "tsc -p tsconfig.leaflet-v1.7.json",
46
+ "check-version:leaflet-v1.9": "tsc -p tsconfig.leaflet-v1.9.json",
47
+ "check-version:leaflet-v2": "tsc -p tsconfig.leaflet-v2.json",
47
48
  "lint": "eslint -c eslint.config.js . && prettier --check . && tsc --noEmit",
48
49
  "lint:fix": "eslint -c eslint.config.js --fix && prettier --write . && tsc --noEmit",
49
- "clean": "rm -rf dist dist.svelte",
50
- "pack": "npm run clean && npm run build && cd dist && npm pack",
51
- "pub": "npm run clean && npm run build && cd dist && npm publish",
52
- "pub-next": "npm run clean && npm run build && cd dist && npm publish --tag next",
53
- "cdn-pr": "npm run clean && npm run build && ./create-cdn-pr.sh",
50
+ "test": "vitest run -c vite.config-test.ts --dom",
51
+ "test:watch": "vitest watch -c vite.config-test.ts --dom",
52
+ "clean": "rm -rf dist",
54
53
  "preview": "vite preview",
55
- "check": "svelte-check --tsconfig ./tsconfig.json",
56
54
  "prepare": "husky"
57
55
  },
56
+ "module": "dist/index.js",
57
+ "types": "dist/index.d.ts",
58
+ "main": "dist/index.js",
58
59
  "exports": {
59
- "./leaflet": {
60
- "import": "./leaflet.js",
61
- "require": "./leaflet.umd.js"
62
- },
63
- "./leaflet-controller": {
64
- "import": "./leaflet-controller.js",
65
- "require": "./leaflet-controller.umd.js"
66
- },
67
- "./openlayers": {
68
- "import": "./openlayers.js",
69
- "require": "./openlayers.umd.js"
70
- },
71
- "./openlayers-controller": {
72
- "import": "./openlayers-controller.js",
73
- "require": "./openlayers-controller.umd.js"
60
+ ".": {
61
+ "types": "./dist/src/index.d.ts",
62
+ "import": "./dist/index.js",
63
+ "require": "./dist/index.umd.js"
74
64
  },
75
65
  "./maplibregl": {
76
- "import": "./maplibregl.js",
77
- "require": "./maplibregl.umd.js"
66
+ "types": "./dist/src/maplibregl.d.ts",
67
+ "import": "./dist/maplibregl.js",
68
+ "require": "./dist/maplibregl.umd.js"
78
69
  },
79
70
  "./maptilersdk": {
80
- "import": "./maptilersdk.js",
81
- "require": "./maptilersdk.umd.js"
82
- },
83
- "./maplibregl-controller": {
84
- "import": "./maplibregl-controller.js",
85
- "require": "./maplibregl-controller.umd.js"
86
- },
87
- "./react": {
88
- "import": "./react.js",
89
- "require": "./react.umd.js"
90
- },
91
- "./vanilla": {
92
- "import": "./vanilla.js",
93
- "require": "./vanilla.umd.js"
94
- },
95
- "./style.css": {
96
- "import": "./style.css",
97
- "require": "./style.css"
71
+ "types": "./dist/src/maptilersdk.d.ts",
72
+ "import": "./dist/maptilersdk.js",
73
+ "require": "./dist/maptilersdk.umd.js"
98
74
  },
99
- "./svelte/GeocodingControl.svelte": {
100
- "types": "./svelte/GeocodingControl.svelte.d.ts",
101
- "svelte": "./svelte/GeocodingControl.svelte"
102
- },
103
- "./svelte/*": "./svelte/*",
104
- "./types": "./types.d.ts"
75
+ "./leaflet": {
76
+ "types": "./dist/src/leaflet.public.d.ts",
77
+ "import": "./dist/leaflet.public.js",
78
+ "require": "./dist/leaflet.public.umd.js"
79
+ }
105
80
  },
106
- "devDependencies": {
107
- "@maptiler/sdk": "^3.0.1",
108
- "@sveltejs/package": "^2.3.9",
109
- "@sveltejs/vite-plugin-svelte": "^3.1.2",
110
- "@tsconfig/svelte": "^5.0.4",
81
+ "dependencies": {
82
+ "@turf/bbox": "^7.2.0",
83
+ "@turf/clone": "^7.2.0",
84
+ "@turf/difference": "^7.2.0",
85
+ "@turf/flatten": "^7.2.0",
86
+ "@turf/helpers": "^7.2.0",
87
+ "@turf/union": "^7.2.0",
111
88
  "@types/geojson": "^7946.0.16",
112
- "@types/leaflet": "^1.9.16",
113
- "@types/node": "^22.12.0",
114
- "@types/react": "^19.0.8",
115
- "@types/react-dom": "^19.0.3",
116
- "concurrently": "^9.1.2",
89
+ "geo-coordinates-parser": "^1.7.4",
90
+ "lit": "^3.3.1"
91
+ },
92
+ "devDependencies": {
93
+ "@canvas/image-data": "^1.1.0",
94
+ "@maptiler/sdk": "^3.8.0",
95
+ "@types/leaflet": "^1.9.21",
96
+ "@types/leaflet--v1.5": "npm:@types/leaflet@1.5",
97
+ "@types/leaflet--v1.7": "npm:@types/leaflet@1.7",
98
+ "@types/leaflet--v1.9": "npm:@types/leaflet@1.9",
99
+ "@types/node": "ts5.8",
100
+ "@types/react": "^19.2.6",
101
+ "@types/react-dom": "^19.2.3",
102
+ "@vitest/web-worker": "^4.0.9",
117
103
  "dotenv": "^16.4.7",
118
- "eslint": "^9.19.0",
119
- "eslint-plugin-svelte": "^2.46.1",
120
- "esm-env": "^1.2.2",
121
- "globals": "^15.14.0",
104
+ "eslint": "^9.38.0",
105
+ "eslint-config-prettier": "^10.1.8",
106
+ "eslint-plugin-prettier": "^5.5.4",
107
+ "happy-dom": "^20.0.10",
122
108
  "husky": "^9.1.7",
123
109
  "leaflet": "^1.9.4",
124
- "maplibre-gl": "^5.1.0",
125
- "ol": "10.4",
126
- "prettier": "^3.4.2",
127
- "prettier-plugin-organize-imports": "^4.1.0",
128
- "prettier-plugin-svelte": "^3.3.3",
129
- "react": "^19.0.0",
130
- "react-dom": "^19.0.0",
131
- "replace-in-file": "^8.3.0",
132
- "sass": "^1.83.4",
133
- "svelte": "^4.2.19",
134
- "svelte-check": "^4.1.4",
135
- "svelte-preprocess": "^6.0.3",
110
+ "ol": "^10.6.1",
111
+ "prettier": "^3.6.2",
112
+ "prettier-plugin-organize-imports": "^4.3.0",
113
+ "react": "^19.2.0",
114
+ "react-dom": "^19.2.0",
136
115
  "tslib": "^2.8.1",
137
- "typescript": "^5.7.3",
138
- "typescript-eslint": "^8.22.0",
139
- "vite": "^5.4.14"
116
+ "typescript": "~5.8.3",
117
+ "typescript-eslint": "^8.46.2",
118
+ "vite": "^7.1.12",
119
+ "vite-plugin-dts": "^4.5.4",
120
+ "vite-plugin-externalize-deps": "^0.10.0",
121
+ "vite-plugin-static-copy": "^3.1.4",
122
+ "vitest": "^4.0.8"
140
123
  },
141
124
  "peerDependencies": {
142
- "@maptiler/sdk": "^1 || ^2 || ^3",
143
- "leaflet": "^1.7 || ^1.8 || ^1.9",
144
- "maplibre-gl": "^2 || ^3 || ^4 || ^5",
145
- "ol": "^6 || ^7 || ^8 || ^9 || ^10",
146
- "react": "^17 || ^18 || ^19",
147
- "svelte": "^4.2"
125
+ "@maptiler/sdk": "1 - 4",
126
+ "leaflet": "1.5 - 2",
127
+ "maplibre-gl": "2 - 5",
128
+ "ol": "6 - 10"
148
129
  },
149
130
  "peerDependenciesMeta": {
150
131
  "@maptiler/sdk": {
@@ -158,20 +139,6 @@
158
139
  },
159
140
  "ol": {
160
141
  "optional": true
161
- },
162
- "react": {
163
- "optional": true
164
- },
165
- "svelte": {
166
- "optional": true
167
142
  }
168
- },
169
- "dependencies": {
170
- "@turf/bbox": "^7.2.0",
171
- "@turf/clone": "^7.2.0",
172
- "@turf/difference": "^7.2.0",
173
- "@turf/flatten": "^7.2.0",
174
- "@turf/union": "^7.2.0",
175
- "geo-coordinates-parser": "^1.7.4"
176
143
  }
177
144
  }