@algolia/autocomplete-js 1.15.0 → 1.15.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.
@@ -53,6 +53,7 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
53
53
  'aria-controls': string | undefined;
54
54
  'aria-labelledby': string;
55
55
  onChange(event: Event): void;
56
+ onCompositionEnd(event: Event): void;
56
57
  onKeyDown(event: KeyboardEvent): void;
57
58
  onFocus(event: Event): void;
58
59
  onBlur(): void;
@@ -78,6 +79,7 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
78
79
  'aria-controls': string | undefined;
79
80
  'aria-labelledby': string;
80
81
  onChange(event: Event): void;
82
+ onCompositionEnd(event: Event): void;
81
83
  onKeyDown(event: KeyboardEvent): void;
82
84
  onFocus(event: Event): void;
83
85
  onBlur(): void;
@@ -187,6 +189,7 @@ export declare function getDefaultOptions<TItem extends BaseItem>(options: Autoc
187
189
  plugins?: import("@algolia/autocomplete-shared").AutocompletePlugin<any, any>[] | undefined;
188
190
  debug?: boolean | undefined;
189
191
  enterKeyHint?: import("@algolia/autocomplete-core").AutocompleteEnterKeyHint | undefined;
192
+ ignoreCompositionEvents?: boolean | undefined;
190
193
  placeholder?: string | undefined;
191
194
  autoFocus?: boolean | undefined;
192
195
  defaultActiveItemId?: number | null | undefined;
@@ -89,6 +89,9 @@ function getNormalizedName(name) {
89
89
  switch (name) {
90
90
  case 'onChange':
91
91
  return 'onInput';
92
+ // see: https://github.com/preactjs/preact/issues/1978
93
+ case 'onCompositionEnd':
94
+ return 'oncompositionend';
92
95
  default:
93
96
  return name;
94
97
  }
@@ -1,4 +1,4 @@
1
- /*! @algolia/autocomplete-js 1.15.0 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
1
+ /*! @algolia/autocomplete-js 1.15.1 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
4
4
  typeof define === 'function' && define.amd ? define(['exports'], factory) :
@@ -347,7 +347,7 @@
347
347
  return undefined;
348
348
  }
349
349
 
350
- var version = '1.15.0';
350
+ var version = '1.15.1';
351
351
 
352
352
  var userAgents$1 = [{
353
353
  segment: 'autocomplete-core',
@@ -962,6 +962,7 @@
962
962
  var setContext = _ref4.setContext,
963
963
  onSelect = _ref4.onSelect,
964
964
  onActive = _ref4.onActive;
965
+ var isAuthenticatedToken = false;
965
966
  function setInsightsContext(userToken) {
966
967
  setContext({
967
968
  algoliaInsightsPlugin: {
@@ -978,16 +979,24 @@
978
979
  setInsightsContext();
979
980
 
980
981
  // Handles user token changes
981
- insightsClient('onUserTokenChange', setInsightsContext);
982
+ insightsClient('onUserTokenChange', function (userToken) {
983
+ if (!isAuthenticatedToken) {
984
+ setInsightsContext(userToken);
985
+ }
986
+ });
982
987
  insightsClient('getUserToken', null, function (_error, userToken) {
983
- setInsightsContext(userToken);
988
+ if (!isAuthenticatedToken) {
989
+ setInsightsContext(userToken);
990
+ }
984
991
  });
985
992
 
986
993
  // Handles authenticated user token changes
987
994
  insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) {
988
995
  if (authenticatedUserToken) {
996
+ isAuthenticatedToken = true;
989
997
  setInsightsContext(authenticatedUserToken);
990
998
  } else {
999
+ isAuthenticatedToken = false;
991
1000
  insightsClient('getUserToken', null, function (_error, userToken) {
992
1001
  return setInsightsContext(userToken);
993
1002
  });
@@ -995,6 +1004,7 @@
995
1004
  });
996
1005
  insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) {
997
1006
  if (authenticatedUserToken) {
1007
+ isAuthenticatedToken = true;
998
1008
  setInsightsContext(authenticatedUserToken);
999
1009
  }
1000
1010
  });
@@ -1471,6 +1481,10 @@
1471
1481
  };
1472
1482
  }
1473
1483
 
1484
+ function getNativeEvent(event) {
1485
+ return event.nativeEvent || event;
1486
+ }
1487
+
1474
1488
  function _typeof$d(obj) {
1475
1489
  "@babel/helpers - typeof";
1476
1490
 
@@ -1744,6 +1758,7 @@
1744
1758
  debug: false,
1745
1759
  openOnFocus: false,
1746
1760
  enterKeyHint: undefined,
1761
+ ignoreCompositionEvents: false,
1747
1762
  placeholder: '',
1748
1763
  autoFocus: false,
1749
1764
  defaultActiveItemId: null,
@@ -2861,6 +2876,20 @@
2861
2876
  maxLength: maxLength,
2862
2877
  type: 'search',
2863
2878
  onChange: function onChange(event) {
2879
+ var value = event.currentTarget.value;
2880
+ if (props.ignoreCompositionEvents && getNativeEvent(event).isComposing) {
2881
+ setters.setQuery(value);
2882
+ return;
2883
+ }
2884
+ onInput(_objectSpread$6({
2885
+ event: event,
2886
+ props: props,
2887
+ query: value.slice(0, maxLength),
2888
+ refresh: refresh,
2889
+ store: store
2890
+ }, setters));
2891
+ },
2892
+ onCompositionEnd: function onCompositionEnd(event) {
2864
2893
  onInput(_objectSpread$6({
2865
2894
  event: event,
2866
2895
  props: props,
@@ -2870,6 +2899,9 @@
2870
2899
  }, setters));
2871
2900
  },
2872
2901
  onKeyDown: function onKeyDown$1(event) {
2902
+ if (getNativeEvent(event).isComposing) {
2903
+ return;
2904
+ }
2873
2905
  onKeyDown(_objectSpread$6({
2874
2906
  event: event,
2875
2907
  props: props,
@@ -3628,6 +3660,9 @@
3628
3660
  switch (name) {
3629
3661
  case 'onChange':
3630
3662
  return 'onInput';
3663
+ // see: https://github.com/preactjs/preact/issues/1978
3664
+ case 'onCompositionEnd':
3665
+ return 'oncompositionend';
3631
3666
  default:
3632
3667
  return name;
3633
3668
  }