@algolia/autocomplete-js 1.8.3 → 1.9.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 (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
@@ -12,7 +12,7 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
12
12
  onMouseDown(event: MouseEvent): void;
13
13
  };
14
14
  } & {
15
- state: import("./types").AutocompleteState<TItem>;
15
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
16
16
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
17
17
  onTouchStart(event: TouchEvent): void;
18
18
  onTouchMove(event: TouchEvent): void;
@@ -27,7 +27,7 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
27
27
  onReset(event: Event): void;
28
28
  };
29
29
  } & {
30
- state: import("./types").AutocompleteState<TItem>;
30
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
31
31
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
32
32
  action: "";
33
33
  noValidate: true;
@@ -41,9 +41,9 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
41
41
  value: string;
42
42
  autoFocus: boolean;
43
43
  placeholder: string;
44
- autoComplete: "off" | "on";
45
- autoCorrect: "off" | "on";
46
- autoCapitalize: "off" | "on";
44
+ autoComplete: "on" | "off";
45
+ autoCorrect: "on" | "off";
46
+ autoCapitalize: "on" | "off";
47
47
  enterKeyHint: "search" | "go";
48
48
  spellCheck: "false";
49
49
  maxLength: number;
@@ -60,15 +60,15 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
60
60
  };
61
61
  inputElement: HTMLInputElement;
62
62
  } & {
63
- state: import("./types").AutocompleteState<TItem>;
63
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
64
64
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
65
65
  id: string;
66
66
  value: string;
67
67
  autoFocus: boolean;
68
68
  placeholder: string;
69
- autoComplete: "off" | "on";
70
- autoCorrect: "off" | "on";
71
- autoCapitalize: "off" | "on";
69
+ autoComplete: "on" | "off";
70
+ autoCorrect: "on" | "off";
71
+ autoCapitalize: "on" | "off";
72
72
  enterKeyHint: "search" | "go";
73
73
  spellCheck: "false";
74
74
  maxLength: number;
@@ -86,17 +86,17 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
86
86
  getItemProps: (params: {
87
87
  props: {
88
88
  id: string;
89
- role: string;
89
+ role: "option";
90
90
  'aria-selected': boolean;
91
91
  onMouseMove(event: MouseEvent): void;
92
92
  onMouseDown(event: MouseEvent): void;
93
93
  onClick(event: MouseEvent): void;
94
94
  };
95
95
  } & {
96
- state: import("./types").AutocompleteState<TItem>;
96
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
97
97
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
98
98
  id: string;
99
- role: string;
99
+ role: "option";
100
100
  'aria-selected': boolean;
101
101
  onMouseMove(event: MouseEvent): void;
102
102
  onMouseDown(event: MouseEvent): void;
@@ -108,21 +108,21 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
108
108
  id: string;
109
109
  };
110
110
  } & {
111
- state: import("./types").AutocompleteState<TItem>;
111
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
112
112
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
113
113
  htmlFor: string;
114
114
  id: string;
115
115
  };
116
116
  getListProps: (params: {
117
117
  props: {
118
- role: string;
118
+ role: "listbox";
119
119
  'aria-labelledby': string;
120
120
  id: string;
121
121
  };
122
122
  } & {
123
- state: import("./types").AutocompleteState<TItem>;
123
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
124
124
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
125
- role: string;
125
+ role: "listbox";
126
126
  'aria-labelledby': string;
127
127
  id: string;
128
128
  };
@@ -132,23 +132,23 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
132
132
  onMouseLeave(): void;
133
133
  };
134
134
  } & {
135
- state: import("./types").AutocompleteState<TItem>;
135
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
136
136
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
137
137
  onMouseDown(event: MouseEvent): void;
138
138
  onMouseLeave(): void;
139
139
  };
140
140
  getRootProps: (params: {
141
141
  props: {
142
- role: string;
142
+ role: "combobox";
143
143
  'aria-expanded': boolean;
144
144
  'aria-haspopup': boolean | "dialog" | "menu" | "true" | "false" | "grid" | "listbox" | "tree" | undefined;
145
145
  'aria-owns': string | undefined;
146
146
  'aria-labelledby': string;
147
147
  };
148
148
  } & {
149
- state: import("./types").AutocompleteState<TItem>;
149
+ state: import("@algolia/autocomplete-shared").AutocompleteState<TItem>;
150
150
  } & import("@algolia/autocomplete-core").AutocompleteScopeApi<TItem>) => {
151
- role: string;
151
+ role: "combobox";
152
152
  'aria-expanded': boolean;
153
153
  'aria-haspopup': boolean | "dialog" | "menu" | "true" | "false" | "grid" | "listbox" | "tree" | undefined;
154
154
  'aria-owns': string | undefined;
@@ -159,17 +159,17 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
159
159
  render: AutocompleteRender<any> | AutocompleteRender<TItem>;
160
160
  renderNoResults: AutocompleteRender<TItem> | undefined;
161
161
  renderer: {
162
- createElement: import("./types").Pragma;
162
+ createElement: import("@algolia/autocomplete-shared").Pragma;
163
163
  Fragment: any;
164
- render: import("./types").Render;
164
+ render: import("@algolia/autocomplete-shared").Render;
165
165
  };
166
166
  detachedMediaQuery: string;
167
167
  components: {
168
168
  [x: string]: (props: any) => JSX.Element;
169
- Highlight: <THit>({ hit, attribute, tagName, }: import("./types").HighlightHitParams<THit>) => JSX.Element;
170
- ReverseHighlight: <THit>({ hit, attribute, tagName, }: import("./types").HighlightHitParams<THit>) => JSX.Element;
171
- ReverseSnippet: <THit>({ hit, attribute, tagName, }: import("./types").HighlightHitParams<THit>) => JSX.Element;
172
- Snippet: <THit>({ hit, attribute, tagName, }: import("./types").HighlightHitParams<THit>) => JSX.Element;
169
+ Highlight: <THit>({ hit, attribute, tagName, }: import("@algolia/autocomplete-shared").HighlightHitParams<THit>) => JSX.Element;
170
+ ReverseHighlight: <THit>({ hit, attribute, tagName, }: import("@algolia/autocomplete-shared").HighlightHitParams<THit>) => JSX.Element;
171
+ ReverseSnippet: <THit>({ hit, attribute, tagName, }: import("@algolia/autocomplete-shared").HighlightHitParams<THit>) => JSX.Element;
172
+ Snippet: <THit>({ hit, attribute, tagName, }: import("@algolia/autocomplete-shared").HighlightHitParams<THit>) => JSX.Element;
173
173
  };
174
174
  translations: {
175
175
  detachedCancelButtonText: string;
@@ -180,17 +180,18 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
180
180
  core: {
181
181
  id: string;
182
182
  environment: Window;
183
- getSources?: import("./types").GetSources<TItem> | undefined;
184
- initialState?: Partial<import("./types").AutocompleteState<TItem>> | undefined;
185
- onStateChange?(props: import("./types").OnStateChangeProps<TItem>): void;
186
- plugins?: import("./types").AutocompletePlugin<any, any>[] | undefined;
183
+ insights?: boolean | import("@algolia/autocomplete-plugin-algolia-insights").CreateAlgoliaInsightsPluginParams | undefined;
184
+ getSources?: import("@algolia/autocomplete-shared").GetSources<TItem> | undefined;
185
+ initialState?: Partial<import("@algolia/autocomplete-shared").AutocompleteState<TItem>> | undefined;
186
+ onStateChange?(props: import("@algolia/autocomplete-shared").OnStateChangeProps<TItem>): void;
187
+ plugins?: import("@algolia/autocomplete-shared").AutocompletePlugin<any, any>[] | undefined;
187
188
  debug?: boolean | undefined;
188
189
  placeholder?: string | undefined;
189
190
  autoFocus?: boolean | undefined;
190
191
  defaultActiveItemId?: number | null | undefined;
191
192
  openOnFocus?: boolean | undefined;
192
193
  stallThreshold?: number | undefined;
193
- navigator?: Partial<import("@algolia/autocomplete-core/dist/esm/types/AutocompleteNavigator").AutocompleteNavigator<TItem>> | undefined;
194
+ navigator?: Partial<import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator").AutocompleteNavigator<TItem>> | undefined;
194
195
  shouldPanelOpen?(params: {
195
196
  state: import("@algolia/autocomplete-core").AutocompleteState<TItem>;
196
197
  }): boolean;
@@ -1,15 +1,12 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  var _excluded = ["classNames", "container", "getEnvironmentProps", "getFormProps", "getInputProps", "getItemProps", "getLabelProps", "getListProps", "getPanelProps", "getRootProps", "panelContainer", "panelPlacement", "render", "renderNoResults", "renderer", "detachedMediaQuery", "components", "translations"];
2
-
3
3
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
-
5
4
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
-
7
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
-
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
7
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
9
8
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
-
11
9
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
12
-
13
10
  import { generateAutocompleteId, invariant, warn } from '@algolia/autocomplete-shared';
14
11
  import { createElement as preactCreateElement, Fragment as PreactFragment, render } from 'preact';
15
12
  import { createHighlightComponent, createReverseHighlightComponent, createReverseSnippetComponent, createSnippetComponent } from './components';
@@ -42,13 +39,11 @@ var defaultClassNames = {
42
39
  sourceNoResults: 'aa-SourceNoResults',
43
40
  submitButton: 'aa-SubmitButton'
44
41
  };
45
-
46
42
  var defaultRender = function defaultRender(_ref, root) {
47
43
  var children = _ref.children,
48
- render = _ref.render;
44
+ render = _ref.render;
49
45
  render(children, root);
50
46
  };
51
-
52
47
  var defaultRenderer = {
53
48
  createElement: preactCreateElement,
54
49
  Fragment: PreactFragment,
@@ -56,39 +51,34 @@ var defaultRenderer = {
56
51
  };
57
52
  export function getDefaultOptions(options) {
58
53
  var _core$id;
59
-
60
54
  var classNames = options.classNames,
61
- container = options.container,
62
- getEnvironmentProps = options.getEnvironmentProps,
63
- getFormProps = options.getFormProps,
64
- getInputProps = options.getInputProps,
65
- getItemProps = options.getItemProps,
66
- getLabelProps = options.getLabelProps,
67
- getListProps = options.getListProps,
68
- getPanelProps = options.getPanelProps,
69
- getRootProps = options.getRootProps,
70
- panelContainer = options.panelContainer,
71
- panelPlacement = options.panelPlacement,
72
- render = options.render,
73
- renderNoResults = options.renderNoResults,
74
- renderer = options.renderer,
75
- detachedMediaQuery = options.detachedMediaQuery,
76
- components = options.components,
77
- translations = options.translations,
78
- core = _objectWithoutProperties(options, _excluded);
79
- /* eslint-disable no-restricted-globals */
80
-
55
+ container = options.container,
56
+ getEnvironmentProps = options.getEnvironmentProps,
57
+ getFormProps = options.getFormProps,
58
+ getInputProps = options.getInputProps,
59
+ getItemProps = options.getItemProps,
60
+ getLabelProps = options.getLabelProps,
61
+ getListProps = options.getListProps,
62
+ getPanelProps = options.getPanelProps,
63
+ getRootProps = options.getRootProps,
64
+ panelContainer = options.panelContainer,
65
+ panelPlacement = options.panelPlacement,
66
+ render = options.render,
67
+ renderNoResults = options.renderNoResults,
68
+ renderer = options.renderer,
69
+ detachedMediaQuery = options.detachedMediaQuery,
70
+ components = options.components,
71
+ translations = options.translations,
72
+ core = _objectWithoutProperties(options, _excluded);
81
73
 
74
+ /* eslint-disable no-restricted-globals */
82
75
  var environment = typeof window !== 'undefined' ? window : {};
83
76
  /* eslint-enable no-restricted-globals */
84
-
85
77
  var containerElement = getHTMLElement(environment, container);
86
78
  invariant(containerElement.tagName !== 'INPUT', 'The `container` option does not support `input` elements. You need to change the container to a `div`.');
87
79
  process.env.NODE_ENV !== 'production' ? warn(!(render && renderer && !(renderer !== null && renderer !== void 0 && renderer.render)), "You provided the `render` option but did not provide a `renderer.render`. Since v1.6.0, you can provide a `render` function directly in `renderer`." + "\nTo get rid of this warning, do any of the following depending on your use case." + "\n- If you are using the `render` option only to override Autocomplete's default `render` function, pass the `render` function into `renderer` and remove the `render` option." + '\n- If you are using the `render` option to customize the layout, pass your `render` function into `renderer` and use it from the provided parameters of the `render` option.' + '\n- If you are using the `render` option to work with React 18, pass an empty `render` function into `renderer`.' + '\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-render') : void 0;
88
80
  process.env.NODE_ENV !== 'production' ? warn(!renderer || render || renderer.Fragment && renderer.createElement && renderer.render, "You provided an incomplete `renderer` (missing: ".concat([!(renderer !== null && renderer !== void 0 && renderer.createElement) && '`renderer.createElement`', !(renderer !== null && renderer !== void 0 && renderer.Fragment) && '`renderer.Fragment`', !(renderer !== null && renderer !== void 0 && renderer.render) && '`renderer.render`'].filter(Boolean).join(', '), "). This can cause rendering issues.") + '\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-renderer') : void 0;
89
-
90
81
  var defaultedRenderer = _objectSpread(_objectSpread({}, defaultRenderer), renderer);
91
-
92
82
  var defaultComponents = {
93
83
  Highlight: createHighlightComponent(defaultedRenderer),
94
84
  ReverseHighlight: createReverseHighlightComponent(defaultedRenderer),
@@ -1,14 +1,13 @@
1
1
  export function getPanelPlacementStyle(_ref) {
2
2
  var panelPlacement = _ref.panelPlacement,
3
- container = _ref.container,
4
- form = _ref.form,
5
- environment = _ref.environment;
6
- var containerRect = container.getBoundingClientRect(); // Some browsers have specificities to retrieve the document scroll position.
3
+ container = _ref.container,
4
+ form = _ref.form,
5
+ environment = _ref.environment;
6
+ var containerRect = container.getBoundingClientRect();
7
+ // Some browsers have specificities to retrieve the document scroll position.
7
8
  // See https://stackoverflow.com/a/28633515/9940315
8
-
9
9
  var scrollTop = environment.pageYOffset || environment.document.documentElement.scrollTop || environment.document.body.scrollTop || 0;
10
10
  var top = scrollTop + containerRect.top + containerRect.height;
11
-
12
11
  switch (panelPlacement) {
13
12
  case 'start':
14
13
  {
@@ -17,7 +16,6 @@ export function getPanelPlacementStyle(_ref) {
17
16
  left: containerRect.left
18
17
  };
19
18
  }
20
-
21
19
  case 'end':
22
20
  {
23
21
  return {
@@ -25,7 +23,6 @@ export function getPanelPlacementStyle(_ref) {
25
23
  right: environment.document.documentElement.clientWidth - (containerRect.left + containerRect.width)
26
24
  };
27
25
  }
28
-
29
26
  case 'full-width':
30
27
  {
31
28
  return {
@@ -36,7 +33,6 @@ export function getPanelPlacementStyle(_ref) {
36
33
  maxWidth: 'unset'
37
34
  };
38
35
  }
39
-
40
36
  case 'input-wrapper-width':
41
37
  {
42
38
  var formRect = form.getBoundingClientRect();
@@ -48,7 +44,6 @@ export function getPanelPlacementStyle(_ref) {
48
44
  maxWidth: 'unset'
49
45
  };
50
46
  }
51
-
52
47
  default:
53
48
  {
54
49
  throw new Error("[Autocomplete] The `panelPlacement` value ".concat(JSON.stringify(panelPlacement), " is not valid."));
@@ -1,21 +1,20 @@
1
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
-
5
4
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
-
7
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
-
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
7
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
9
8
  /** @jsxRuntime classic */
10
-
11
9
  /** @jsx renderer.createElement */
10
+
12
11
  import { setProperties, setPropertiesWithoutEvents } from './utils';
13
12
  export function renderSearchBox(_ref) {
14
13
  var autocomplete = _ref.autocomplete,
15
- autocompleteScopeApi = _ref.autocompleteScopeApi,
16
- dom = _ref.dom,
17
- propGetters = _ref.propGetters,
18
- state = _ref.state;
14
+ autocompleteScopeApi = _ref.autocompleteScopeApi,
15
+ dom = _ref.dom,
16
+ propGetters = _ref.propGetters,
17
+ state = _ref.state;
19
18
  setPropertiesWithoutEvents(dom.root, propGetters.getRootProps(_objectSpread({
20
19
  state: state,
21
20
  props: autocomplete.getRootProps({})
@@ -45,38 +44,35 @@ export function renderSearchBox(_ref) {
45
44
  }
46
45
  export function renderPanel(render, _ref2) {
47
46
  var autocomplete = _ref2.autocomplete,
48
- autocompleteScopeApi = _ref2.autocompleteScopeApi,
49
- classNames = _ref2.classNames,
50
- html = _ref2.html,
51
- dom = _ref2.dom,
52
- panelContainer = _ref2.panelContainer,
53
- propGetters = _ref2.propGetters,
54
- state = _ref2.state,
55
- components = _ref2.components,
56
- renderer = _ref2.renderer;
57
-
47
+ autocompleteScopeApi = _ref2.autocompleteScopeApi,
48
+ classNames = _ref2.classNames,
49
+ html = _ref2.html,
50
+ dom = _ref2.dom,
51
+ panelContainer = _ref2.panelContainer,
52
+ propGetters = _ref2.propGetters,
53
+ state = _ref2.state,
54
+ components = _ref2.components,
55
+ renderer = _ref2.renderer;
58
56
  if (!state.isOpen) {
59
57
  if (panelContainer.contains(dom.panel)) {
60
58
  panelContainer.removeChild(dom.panel);
61
59
  }
62
-
63
60
  return;
64
- } // We add the panel element to the DOM when it's not yet appended and that the
65
- // items are fetched.
66
-
61
+ }
67
62
 
63
+ // We add the panel element to the DOM when it's not yet appended and that the
64
+ // items are fetched.
68
65
  if (!panelContainer.contains(dom.panel) && state.status !== 'loading') {
69
66
  panelContainer.appendChild(dom.panel);
70
67
  }
71
-
72
68
  dom.panel.classList.toggle('aa-Panel--stalled', state.status === 'stalled');
73
69
  var sections = state.collections.filter(function (_ref3) {
74
70
  var source = _ref3.source,
75
- items = _ref3.items;
71
+ items = _ref3.items;
76
72
  return source.templates.noResults || items.length > 0;
77
73
  }).map(function (_ref4, sourceIndex) {
78
74
  var source = _ref4.source,
79
- items = _ref4.items;
75
+ items = _ref4.items;
80
76
  return renderer.createElement("section", {
81
77
  key: sourceIndex,
82
78
  className: classNames.source,
@@ -1,9 +1,9 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
3
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
5
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  import { createRequester, fetchAlgoliaResults } from '@algolia/autocomplete-preset-algolia';
8
8
  import { userAgents } from '../userAgents';
9
9
  export var createAlgoliaRequester = createRequester(function (params) {
@@ -1,14 +1,14 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
3
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
5
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  import { createAlgoliaRequester } from './createAlgoliaRequester';
8
+
8
9
  /**
9
10
  * Retrieves Algolia facet hits from multiple indices.
10
11
  */
11
-
12
12
  export function getAlgoliaFacets(requestParams) {
13
13
  var requester = createAlgoliaRequester({
14
14
  transformResponse: function transformResponse(response) {
@@ -1,8 +1,8 @@
1
1
  import { createAlgoliaRequester } from './createAlgoliaRequester';
2
+
2
3
  /**
3
4
  * Retrieves Algolia results from multiple indices.
4
5
  */
5
-
6
6
  export var getAlgoliaResults = createAlgoliaRequester({
7
7
  transformResponse: function transformResponse(response) {
8
8
  return response.hits;
@@ -1,5 +1,5 @@
1
1
  import { AutocompleteScopeApi as AutocompleteCoreScopeApi, BaseItem } from '@algolia/autocomplete-core';
2
- import { AutocompleteOptions } from './AutocompleteOptions';
2
+ import { AutocompleteOptions } from './';
3
3
  export interface AutocompleteApi<TItem extends BaseItem> extends AutocompleteCoreScopeApi<TItem> {
4
4
  /**
5
5
  * Updates the Autocomplete experience.
@@ -1,14 +1,9 @@
1
+ export * from '@algolia/autocomplete-shared/dist/esm/js';
1
2
  export * from './AutocompleteApi';
2
- export * from './AutocompleteClassNames';
3
- export * from './AutocompleteCollection';
4
- export * from './AutocompleteComponents';
5
3
  export * from './AutocompleteDom';
6
- export * from './AutocompleteOptions';
7
- export * from './AutocompletePlugin';
8
- export * from './AutocompletePropGetters';
9
- export * from './AutocompleteRender';
10
- export * from './AutocompleteRenderer';
11
- export * from './AutocompleteSource';
12
- export * from './AutocompleteState';
13
- export * from './AutocompleteTranslations';
14
- export * from './HighlightHitParams';
4
+ import { AutocompleteOptions as AutocompleteCoreOptions, BaseItem } from '@algolia/autocomplete-core';
5
+ import { AutocompleteOptions as AutocompleteJsOptions } from '@algolia/autocomplete-shared/dist/esm/js';
6
+ export type { AutocompleteInsightsApi, AlgoliaInsightsHit, } from '@algolia/autocomplete-core';
7
+ export interface AutocompleteOptions<TItem extends BaseItem> extends AutocompleteJsOptions<TItem> {
8
+ insights?: AutocompleteCoreOptions<TItem>['insights'];
9
+ }
@@ -1,14 +1,4 @@
1
+ export * from '@algolia/autocomplete-shared/dist/esm/js';
1
2
  export * from './AutocompleteApi';
2
- export * from './AutocompleteClassNames';
3
- export * from './AutocompleteCollection';
4
- export * from './AutocompleteComponents';
5
3
  export * from './AutocompleteDom';
6
- export * from './AutocompleteOptions';
7
- export * from './AutocompletePlugin';
8
- export * from './AutocompletePropGetters';
9
- export * from './AutocompleteRender';
10
- export * from './AutocompleteRenderer';
11
- export * from './AutocompleteSource';
12
- export * from './AutocompleteState';
13
- export * from './AutocompleteTranslations';
14
- export * from './HighlightHitParams';
4
+ export {};
@@ -5,6 +5,5 @@ export function getHTMLElement(environment, value) {
5
5
  invariant(element !== null, "The element ".concat(JSON.stringify(value), " is not in the document."));
6
6
  return element;
7
7
  }
8
-
9
8
  return value;
10
9
  }
@@ -2,12 +2,10 @@ export function mergeClassNames() {
2
2
  for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {
3
3
  values[_key] = arguments[_key];
4
4
  }
5
-
6
5
  return values.reduce(function (acc, current) {
7
6
  Object.keys(current).forEach(function (key) {
8
7
  var accValue = acc[key];
9
8
  var currentValue = current[key];
10
-
11
9
  if (accValue !== currentValue) {
12
10
  acc[key] = [accValue, currentValue].filter(Boolean).join(' ');
13
11
  }
@@ -1,31 +1,21 @@
1
1
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
2
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
-
5
3
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
6
-
7
4
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
8
-
9
5
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
-
11
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
12
-
6
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
7
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
14
-
15
8
  var isPlainObject = function isPlainObject(value) {
16
9
  return value && _typeof(value) === 'object' && Object.prototype.toString.call(value) === '[object Object]';
17
10
  };
18
-
19
11
  export function mergeDeep() {
20
12
  for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {
21
13
  values[_key] = arguments[_key];
22
14
  }
23
-
24
15
  return values.reduce(function (acc, current) {
25
16
  Object.keys(current).forEach(function (key) {
26
17
  var accValue = acc[key];
27
18
  var currentValue = current[key];
28
-
29
19
  if (Array.isArray(accValue) && Array.isArray(currentValue)) {
30
20
  acc[key] = accValue.concat.apply(accValue, _toConsumableArray(currentValue));
31
21
  } else if (isPlainObject(accValue) && isPlainObject(currentValue)) {
@@ -1,34 +1,26 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
3
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
5
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
-
9
8
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
10
-
11
9
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
-
13
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
14
-
15
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
16
-
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
17
12
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
18
-
19
13
  export function pickBy(obj, predicate) {
20
14
  return Object.entries(obj).reduce(function (acc, _ref) {
21
15
  var _ref2 = _slicedToArray(_ref, 2),
22
- key = _ref2[0],
23
- value = _ref2[1];
24
-
16
+ key = _ref2[0],
17
+ value = _ref2[1];
25
18
  if (predicate({
26
19
  key: key,
27
20
  value: value
28
21
  })) {
29
22
  return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, key, value));
30
23
  }
31
-
32
24
  return acc;
33
25
  }, {});
34
26
  }