@maptiler/geocoding-control 2.1.3-rc2 → 2.1.3

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.
@@ -67,7 +67,6 @@ export let searchValue = "";
67
67
  export let pickedResultStyle = "full-geometry";
68
68
  export let showPlaceType = "if-needed";
69
69
  export let showResultsWhileTyping = true;
70
- export let autocompleteTimeout = undefined;
71
70
  export let selectFirst = true;
72
71
  export let flyToSelected = false;
73
72
  export let markerOnSelected = true;
@@ -82,7 +81,7 @@ export let zoom = ZOOM_DEFAULTS;
82
81
  export let apiUrl = "https://api.maptiler.com/geocoding";
83
82
  export let fetchParameters = {};
84
83
  export let iconsBaseUrl = "https://cdn.maptiler.com/maptiler-geocoding-control/v" +
85
- "2.1.3-rc2" +
84
+ "2.1.3" +
86
85
  "/icons/";
87
86
  /**
88
87
  * @deprecated use `adjustUrl`
@@ -151,7 +150,6 @@ let error;
151
150
  let cachedFeatures = [];
152
151
  let abortController;
153
152
  let searchTimeoutRef;
154
- let autocompleteTimeoutRef;
155
153
  let focusedDelayed;
156
154
  let prevIdToFly;
157
155
  let focused = false;
@@ -211,14 +209,6 @@ $: setTimeout(() => {
211
209
  searchValue = "";
212
210
  }
213
211
  });
214
- function isInAutocompleteTimeout() {
215
- return !!autocompleteTimeoutRef;
216
- }
217
- $: if (selectFirst && listFeatures?.length) {
218
- if (!isInAutocompleteTimeout()) {
219
- selectedItemIndex = 0;
220
- }
221
- }
222
212
  $: if (selectFirst &&
223
213
  listFeatures?.length &&
224
214
  selectedItemIndex == -1 &&
@@ -226,10 +216,6 @@ $: if (selectFirst &&
226
216
  selectedItemIndex = 0;
227
217
  }
228
218
  $: selected = listFeatures?.[selectedItemIndex];
229
- $: if (selected) {
230
- window.clearTimeout(autocompleteTimeoutRef);
231
- autocompleteTimeoutRef = undefined;
232
- }
233
219
  $: if (mapController) {
234
220
  const coords = isQueryReverse(searchValue);
235
221
  mapController.setReverseMarker(coords ? [coords.decimalLongitude, coords.decimalLatitude] : undefined);
@@ -289,15 +275,9 @@ onDestroy(() => {
289
275
  function handleSubmit(event) {
290
276
  focused = false;
291
277
  if (searchTimeoutRef) {
292
- window.clearTimeout(searchTimeoutRef);
278
+ clearTimeout(searchTimeoutRef);
293
279
  searchTimeoutRef = undefined;
294
280
  }
295
- if (autocompleteTimeoutRef) {
296
- window.clearTimeout(autocompleteTimeoutRef);
297
- autocompleteTimeoutRef = undefined;
298
- search(searchValue, { appendSpace: true });
299
- return;
300
- }
301
281
  if (selectedItemIndex > -1 && listFeatures) {
302
282
  picked = listFeatures[selectedItemIndex];
303
283
  searchValue =
@@ -329,7 +309,7 @@ function isQueryReverse(searchValue) {
329
309
  return false;
330
310
  }
331
311
  }
332
- async function search(searchValue, { byId = false, exact = false, appendSpace = false, } = {}) {
312
+ async function search(searchValue, { byId = false, exact = false, } = {}) {
333
313
  error = undefined;
334
314
  abortController?.abort();
335
315
  const ac = new AbortController();
@@ -340,7 +320,7 @@ async function search(searchValue, { byId = false, exact = false, appendSpace =
340
320
  "/" +
341
321
  encodeURIComponent(isReverse
342
322
  ? isReverse.decimalLongitude + "," + isReverse.decimalLatitude
343
- : searchValue + (appendSpace ? " " : "")) +
323
+ : searchValue) +
344
324
  ".json");
345
325
  const sp = urlObj.searchParams;
346
326
  if (language !== undefined) {
@@ -590,29 +570,21 @@ function handleInput(_, debounce = true, reverse = false) {
590
570
  error = undefined;
591
571
  picked = undefined;
592
572
  focused = true;
593
- if (searchTimeoutRef) {
594
- window.clearTimeout(searchTimeoutRef);
595
- searchTimeoutRef = undefined;
596
- }
597
- if (autocompleteTimeoutRef) {
598
- window.clearTimeout(autocompleteTimeoutRef);
599
- autocompleteTimeoutRef = undefined;
573
+ if (showResultsWhileTyping || reverse) {
574
+ if (searchTimeoutRef) {
575
+ clearTimeout(searchTimeoutRef);
576
+ }
577
+ if (searchValue.length < minLength) {
578
+ return;
579
+ }
580
+ const sv = searchValue;
581
+ searchTimeoutRef = window.setTimeout(() => {
582
+ search(sv).catch((err) => (error = err));
583
+ }, debounce ? debounceSearch : 0);
600
584
  }
601
- if ((!showResultsWhileTyping && !reverse) ||
602
- searchValue.length < minLength) {
585
+ else {
603
586
  listFeatures = undefined;
604
- return;
605
- }
606
- const sv = searchValue;
607
- searchTimeoutRef = window.setTimeout(() => {
608
- searchTimeoutRef = undefined;
609
- search(sv).catch((err) => (error = err));
610
- }, debounce ? debounceSearch : 0);
611
- if (!searchValue.endsWith(" ")) {
612
- autocompleteTimeoutRef = window.setTimeout(() => {
613
- autocompleteTimeoutRef = undefined;
614
- search(sv, { appendSpace: true }).catch((err) => (error = err));
615
- }, autocompleteTimeout);
587
+ error = undefined;
616
588
  }
617
589
  }
618
590
  function pick(feature) {
@@ -32,7 +32,6 @@ declare const __propDef: {
32
32
  pickedResultStyle?: PickedResultStyle;
33
33
  showPlaceType?: ShowPlaceType;
34
34
  showResultsWhileTyping?: boolean;
35
- autocompleteTimeout?: number | undefined;
36
35
  selectFirst?: boolean;
37
36
  flyToSelected?: boolean;
38
37
  markerOnSelected?: boolean;
package/svelte/info.json CHANGED
@@ -1 +1 @@
1
- {"name":"@maptiler/geocoding-control","version":"2.1.3-rc2"}
1
+ {"name":"@maptiler/geocoding-control","version":"2.1.3"}
package/svelte/types.d.ts CHANGED
@@ -87,7 +87,6 @@ export type ControlOptions = {
87
87
  * Default: MapTiler Geocoding API URL.
88
88
  */
89
89
  apiUrl?: string;
90
- autocompleteTimeout?: number;
91
90
  /**
92
91
  * Bounding box in the format `[minX, minY, maxX, maxY]` to limit search results.
93
92
  *
package/types.d.ts CHANGED
@@ -87,7 +87,6 @@ export type ControlOptions = {
87
87
  * Default: MapTiler Geocoding API URL.
88
88
  */
89
89
  apiUrl?: string;
90
- autocompleteTimeout?: number;
91
90
  /**
92
91
  * Bounding box in the format `[minX, minY, maxX, maxY]` to limit search results.
93
92
  *