@algolia/autocomplete-js 1.8.3 → 1.9.0

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 (54) hide show
  1. package/dist/esm/autocomplete.js +26 -52
  2. package/dist/esm/components/Highlight.js +4 -6
  3. package/dist/esm/components/ReverseHighlight.js +4 -6
  4. package/dist/esm/components/ReverseSnippet.js +4 -6
  5. package/dist/esm/components/Snippet.js +4 -6
  6. package/dist/esm/createAutocompleteDom.js +14 -17
  7. package/dist/esm/createEffectWrapper.js +0 -2
  8. package/dist/esm/createReactiveWrapper.js +0 -3
  9. package/dist/esm/elements/Input.js +11 -16
  10. package/dist/esm/getCreateDomElement.js +3 -13
  11. package/dist/esm/getDefaultOptions.d.ts +32 -31
  12. package/dist/esm/getDefaultOptions.js +24 -34
  13. package/dist/esm/getPanelPlacementStyle.js +5 -10
  14. package/dist/esm/render.js +24 -28
  15. package/dist/esm/requesters/createAlgoliaRequester.js +4 -4
  16. package/dist/esm/requesters/getAlgoliaFacets.js +5 -5
  17. package/dist/esm/requesters/getAlgoliaResults.js +1 -1
  18. package/dist/esm/types/AutocompleteApi.d.ts +1 -1
  19. package/dist/esm/types/index.d.ts +7 -12
  20. package/dist/esm/types/index.js +2 -12
  21. package/dist/esm/utils/getHTMLElement.js +0 -1
  22. package/dist/esm/utils/mergeClassNames.js +0 -2
  23. package/dist/esm/utils/mergeDeep.js +1 -11
  24. package/dist/esm/utils/pickBy.js +8 -16
  25. package/dist/esm/utils/setProperties.js +9 -12
  26. package/dist/umd/index.development.js +1518 -860
  27. package/dist/umd/index.development.js.map +1 -1
  28. package/dist/umd/index.production.js +2 -2
  29. package/dist/umd/index.production.js.map +1 -1
  30. package/package.json +6 -6
  31. package/dist/esm/types/AutocompleteClassNames.d.ts +0 -28
  32. package/dist/esm/types/AutocompleteClassNames.js +0 -1
  33. package/dist/esm/types/AutocompleteCollection.d.ts +0 -6
  34. package/dist/esm/types/AutocompleteCollection.js +0 -1
  35. package/dist/esm/types/AutocompleteComponents.d.ts +0 -23
  36. package/dist/esm/types/AutocompleteComponents.js +0 -1
  37. package/dist/esm/types/AutocompleteOptions.d.ts +0 -106
  38. package/dist/esm/types/AutocompleteOptions.js +0 -1
  39. package/dist/esm/types/AutocompletePlugin.d.ts +0 -12
  40. package/dist/esm/types/AutocompletePlugin.js +0 -1
  41. package/dist/esm/types/AutocompletePropGetters.d.ts +0 -33
  42. package/dist/esm/types/AutocompletePropGetters.js +0 -1
  43. package/dist/esm/types/AutocompleteRender.d.ts +0 -15
  44. package/dist/esm/types/AutocompleteRender.js +0 -1
  45. package/dist/esm/types/AutocompleteRenderer.d.ts +0 -33
  46. package/dist/esm/types/AutocompleteRenderer.js +0 -1
  47. package/dist/esm/types/AutocompleteSource.d.ts +0 -74
  48. package/dist/esm/types/AutocompleteSource.js +0 -1
  49. package/dist/esm/types/AutocompleteState.d.ts +0 -10
  50. package/dist/esm/types/AutocompleteState.js +0 -1
  51. package/dist/esm/types/AutocompleteTranslations.d.ts +0 -5
  52. package/dist/esm/types/AutocompleteTranslations.js +0 -1
  53. package/dist/esm/types/HighlightHitParams.d.ts +0 -18
  54. package/dist/esm/types/HighlightHitParams.js +0 -1
@@ -6,6 +6,7 @@
6
6
  * See https://w3c.github.io/touch-events/#extensions-to-the-globaleventhandlers-mixin
7
7
  */
8
8
  var TOUCH_EVENTS_ALIASES = ['ontouchstart', 'ontouchend', 'ontouchmove', 'ontouchcancel'];
9
+
9
10
  /*
10
11
  * Taken from Preact
11
12
  *
@@ -21,24 +22,21 @@ function setStyle(style, key, value) {
21
22
  style[key] = value + 'px';
22
23
  }
23
24
  }
25
+
24
26
  /**
25
27
  * Proxy an event to hooked event handlers
26
28
  */
27
-
28
-
29
29
  function eventProxy(event) {
30
30
  this._listeners[event.type](event);
31
31
  }
32
+
32
33
  /**
33
34
  * Set a property value on a DOM node
34
35
  */
35
-
36
-
37
36
  export function setProperty(dom, name, value) {
38
37
  var useCapture;
39
38
  var nameLower;
40
39
  var oldValue = dom[name];
41
-
42
40
  if (name === 'style') {
43
41
  if (typeof value == 'string') {
44
42
  dom.style = value;
@@ -53,7 +51,8 @@ export function setProperty(dom, name, value) {
53
51
  }
54
52
  }
55
53
  }
56
- } // Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6
54
+ }
55
+ // Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6
57
56
  else if (name[0] === 'o' && name[1] === 'n') {
58
57
  useCapture = name !== (name = name.replace(/Capture$/, ''));
59
58
  nameLower = name.toLowerCase();
@@ -61,18 +60,19 @@ export function setProperty(dom, name, value) {
61
60
  name = name.slice(2);
62
61
  if (!dom._listeners) dom._listeners = {};
63
62
  dom._listeners[name] = value;
64
-
65
63
  if (value) {
66
64
  if (!oldValue) dom.addEventListener(name, eventProxy, useCapture);
67
65
  } else {
68
66
  dom.removeEventListener(name, eventProxy, useCapture);
69
67
  }
70
- } else if (name !== 'list' && name !== 'tagName' && // HTMLButtonElement.form and HTMLInputElement.form are read-only but can be set using
68
+ } else if (name !== 'list' && name !== 'tagName' &&
69
+ // HTMLButtonElement.form and HTMLInputElement.form are read-only but can be set using
71
70
  // setAttribute
72
71
  name !== 'form' && name !== 'type' && name !== 'size' && name !== 'download' && name !== 'href' && name in dom) {
73
72
  dom[name] = value == null ? '' : value;
74
73
  } else if (typeof value != 'function' && name !== 'dangerouslySetInnerHTML') {
75
- if (value == null || value === false && // ARIA-attributes have a different notion of boolean values.
74
+ if (value == null || value === false &&
75
+ // ARIA-attributes have a different notion of boolean values.
76
76
  // The value `false` is different from the attribute not
77
77
  // existing on the DOM, so we can't remove it. For non-boolean
78
78
  // ARIA-attributes we could treat false as a removal, but the
@@ -85,17 +85,14 @@ export function setProperty(dom, name, value) {
85
85
  }
86
86
  }
87
87
  }
88
-
89
88
  function getNormalizedName(name) {
90
89
  switch (name) {
91
90
  case 'onChange':
92
91
  return 'onInput';
93
-
94
92
  default:
95
93
  return name;
96
94
  }
97
95
  }
98
-
99
96
  export function setProperties(dom, props) {
100
97
  for (var name in props) {
101
98
  setProperty(dom, getNormalizedName(name), props[name]);