instantsearch.js 4.70.0 → 4.71.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 (77) hide show
  1. package/cjs/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.js +1 -2
  2. package/cjs/connectors/geo-search/connectGeoSearch.js +4 -3
  3. package/cjs/connectors/hits/connectHits.js +10 -7
  4. package/cjs/connectors/infinite-hits/connectInfiniteHits.js +7 -8
  5. package/cjs/connectors/looking-similar/connectLookingSimilar.js +2 -3
  6. package/cjs/connectors/related-products/connectRelatedProducts.js +2 -3
  7. package/cjs/connectors/trending-items/connectTrendingItems.js +5 -3
  8. package/cjs/lib/InstantSearch.js +2 -2
  9. package/cjs/lib/version.js +1 -1
  10. package/cjs/widgets/frequently-bought-together/frequently-bought-together.js +1 -3
  11. package/cjs/widgets/geo-search/geo-search.js +4 -3
  12. package/cjs/widgets/hits/defaultTemplates.js +2 -0
  13. package/cjs/widgets/hits/hits.js +3 -4
  14. package/cjs/widgets/infinite-hits/infinite-hits.js +3 -4
  15. package/cjs/widgets/looking-similar/looking-similar.js +4 -6
  16. package/cjs/widgets/rating-menu/defaultTemplates.js +1 -0
  17. package/cjs/widgets/related-products/related-products.js +1 -3
  18. package/cjs/widgets/trending-items/trending-items.js +1 -3
  19. package/dist/instantsearch.development.d.ts +4298 -235
  20. package/dist/instantsearch.development.js +8535 -8525
  21. package/dist/instantsearch.development.js.map +1 -1
  22. package/dist/instantsearch.production.d.ts +4298 -235
  23. package/dist/instantsearch.production.min.d.ts +4298 -235
  24. package/dist/instantsearch.production.min.js +2 -2
  25. package/dist/instantsearch.production.min.js.map +1 -1
  26. package/es/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.d.ts +311 -7
  27. package/es/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.js +2 -3
  28. package/es/connectors/geo-search/connectGeoSearch.d.ts +218 -8
  29. package/es/connectors/geo-search/connectGeoSearch.js +5 -4
  30. package/es/connectors/hits/connectHits.d.ts +128 -7
  31. package/es/connectors/hits/connectHits.js +11 -8
  32. package/es/connectors/hits/connectHitsWithInsights.d.ts +190 -1
  33. package/es/connectors/infinite-hits/connectInfiniteHits.d.ts +192 -12
  34. package/es/connectors/infinite-hits/connectInfiniteHits.js +8 -9
  35. package/es/connectors/infinite-hits/connectInfiniteHitsWithInsights.d.ts +249 -1
  36. package/es/connectors/looking-similar/connectLookingSimilar.d.ts +303 -7
  37. package/es/connectors/looking-similar/connectLookingSimilar.js +3 -4
  38. package/es/connectors/related-products/connectRelatedProducts.d.ts +303 -7
  39. package/es/connectors/related-products/connectRelatedProducts.js +3 -4
  40. package/es/connectors/trending-items/connectTrendingItems.d.ts +310 -9
  41. package/es/connectors/trending-items/connectTrendingItems.js +7 -5
  42. package/es/lib/InstantSearch.d.ts +1 -2
  43. package/es/lib/InstantSearch.js +1 -1
  44. package/es/lib/utils/checkIndexUiState.d.ts +1 -2
  45. package/es/lib/utils/checkRendering.d.ts +1 -1
  46. package/es/lib/utils/getWidgetAttribute.d.ts +1 -2
  47. package/es/lib/utils/isIndexWidget.d.ts +1 -2
  48. package/es/lib/utils/render-args.d.ts +1 -2
  49. package/es/lib/utils/resolveSearchParameters.d.ts +1 -1
  50. package/es/lib/utils/setIndexHelperState.d.ts +1 -2
  51. package/es/lib/version.d.ts +1 -1
  52. package/es/lib/version.js +1 -1
  53. package/es/types/index.d.ts +0 -1
  54. package/es/types/index.js +1 -4
  55. package/es/types/results.d.ts +4 -3
  56. package/es/types/widget.d.ts +2 -2
  57. package/es/widgets/frequently-bought-together/frequently-bought-together.d.ts +306 -9
  58. package/es/widgets/frequently-bought-together/frequently-bought-together.js +2 -4
  59. package/es/widgets/geo-search/geo-search.d.ts +328 -8
  60. package/es/widgets/geo-search/geo-search.js +5 -4
  61. package/es/widgets/hits/defaultTemplates.d.ts +32 -2
  62. package/es/widgets/hits/defaultTemplates.js +3 -0
  63. package/es/widgets/hits/hits.d.ts +204 -8
  64. package/es/widgets/hits/hits.js +4 -5
  65. package/es/widgets/index.d.ts +1 -0
  66. package/es/widgets/infinite-hits/infinite-hits.d.ts +262 -9
  67. package/es/widgets/infinite-hits/infinite-hits.js +4 -5
  68. package/es/widgets/looking-similar/looking-similar.d.ts +309 -9
  69. package/es/widgets/looking-similar/looking-similar.js +5 -7
  70. package/es/widgets/rating-menu/defaultTemplates.js +1 -0
  71. package/es/widgets/related-products/related-products.d.ts +306 -9
  72. package/es/widgets/related-products/related-products.js +2 -4
  73. package/es/widgets/trending-items/trending-items.d.ts +310 -9
  74. package/es/widgets/trending-items/trending-items.js +2 -4
  75. package/package.json +5 -5
  76. package/scripts/transforms/README.md +1 -1
  77. package/scripts/transforms/addWidget-to-addWidgets.js +7 -27
@@ -1,12 +1,12 @@
1
- import type { Connector, TransformItems, Hit, BaseHit } from '../../types';
1
+ import type { Connector, TransformItems, Hit, BaseHit, Renderer, Unmounter } from '../../types';
2
2
  import type { PlainSearchParameters, RecommendResultItem } from 'algoliasearch-helper';
3
- export type FrequentlyBoughtTogetherRenderState<THit extends BaseHit = BaseHit> = {
3
+ export type FrequentlyBoughtTogetherRenderState<THit extends NonNullable<object> = BaseHit> = {
4
4
  /**
5
5
  * The matched recommendations from Algolia API.
6
6
  */
7
7
  items: Array<Hit<THit>>;
8
8
  };
9
- export type FrequentlyBoughtTogetherConnectorParams<THit extends BaseHit = BaseHit> = {
9
+ export type FrequentlyBoughtTogetherConnectorParams<THit extends NonNullable<object> = BaseHit> = {
10
10
  /**
11
11
  * The objectIDs of the items to get the frequently bought together items for.
12
12
  */
@@ -36,10 +36,314 @@ export type FrequentlyBoughtTogetherConnectorParams<THit extends BaseHit = BaseH
36
36
  results: RecommendResultItem;
37
37
  }>;
38
38
  };
39
- export type FrequentlyBoughtTogetherWidgetDescription<THit extends BaseHit = BaseHit> = {
39
+ export type FrequentlyBoughtTogetherWidgetDescription<THit extends NonNullable<object> = BaseHit> = {
40
40
  $$type: 'ais.frequentlyBoughtTogether';
41
41
  renderState: FrequentlyBoughtTogetherRenderState<THit>;
42
42
  };
43
- export type FrequentlyBoughtTogetherConnector<THit extends BaseHit = BaseHit> = Connector<FrequentlyBoughtTogetherWidgetDescription<THit>, FrequentlyBoughtTogetherConnectorParams<THit>>;
44
- declare const connectFrequentlyBoughtTogether: FrequentlyBoughtTogetherConnector;
45
- export default connectFrequentlyBoughtTogether;
43
+ export type FrequentlyBoughtTogetherConnector<THit extends NonNullable<object> = BaseHit> = Connector<FrequentlyBoughtTogetherWidgetDescription<THit>, FrequentlyBoughtTogetherConnectorParams<THit>>;
44
+ declare const _default: <TWidgetParams extends object>(renderFn: Renderer<FrequentlyBoughtTogetherRenderState<BaseHit>, TWidgetParams & FrequentlyBoughtTogetherConnectorParams<BaseHit>>, unmountFn?: Unmounter) => <THit extends object = BaseHit>(widgetParams: TWidgetParams & FrequentlyBoughtTogetherConnectorParams<THit>) => {
45
+ dependsOn: "recommend";
46
+ $$type: "ais.frequentlyBoughtTogether";
47
+ init(initOptions: import("../../types").InitOptions): void;
48
+ render(renderOptions: import("../../types").RenderOptions): void;
49
+ getRenderState(renderState: {
50
+ answers?: import("../../types").WidgetRenderState<import("../answers/connectAnswers").AnswersRenderState, import("../answers/connectAnswers").AnswersConnectorParams> | undefined;
51
+ autocomplete?: import("../../types").WidgetRenderState<import("../autocomplete/connectAutocomplete").AutocompleteRenderState, import("../autocomplete/connectAutocomplete").AutocompleteConnectorParams> | undefined;
52
+ breadcrumb?: {
53
+ [rootAttribute: string]: import("../../types").WidgetRenderState<import("../breadcrumb/connectBreadcrumb").BreadcrumbRenderState, import("../breadcrumb/connectBreadcrumb").BreadcrumbConnectorParams>;
54
+ } | undefined;
55
+ clearRefinements?: import("../../types").WidgetRenderState<import("../clear-refinements/connectClearRefinements").ClearRefinementsRenderState, import("../clear-refinements/connectClearRefinements").ClearRefinementsConnectorParams> | undefined;
56
+ configure?: import("../../types").WidgetRenderState<import("../configure/connectConfigure").ConfigureRenderState, import("../configure/connectConfigure").ConfigureConnectorParams> | undefined;
57
+ currentRefinements?: import("../../types").WidgetRenderState<import("../current-refinements/connectCurrentRefinements").CurrentRefinementsRenderState, import("../current-refinements/connectCurrentRefinements").CurrentRefinementsConnectorParams> | undefined;
58
+ geoSearch?: import("../../types").WidgetRenderState<import("../geo-search/connectGeoSearch").GeoSearchRenderState<import("../../types").GeoHit>, import("../geo-search/connectGeoSearch").GeoSearchConnectorParams<import("../../types").GeoHit>> | undefined;
59
+ hierarchicalMenu?: {
60
+ [rootAttribute: string]: import("../../types").WidgetRenderState<import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuRenderState, import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuConnectorParams>;
61
+ } | undefined;
62
+ hits?: import("../../types").WidgetRenderState<import("../hits/connectHits").HitsRenderState<BaseHit>, import("../hits/connectHits").HitsConnectorParams<BaseHit>> | undefined;
63
+ hitsPerPage?: import("../../types").WidgetRenderState<import("../hits-per-page/connectHitsPerPage").HitsPerPageRenderState, import("../hits-per-page/connectHitsPerPage").HitsPerPageConnectorParams> | undefined;
64
+ infiniteHits?: import("../../types").WidgetRenderState<import("../infinite-hits/connectInfiniteHits").InfiniteHitsRenderState<BaseHit>, import("../infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams<BaseHit>> | undefined;
65
+ menu?: {
66
+ [attribute: string]: import("../../types").WidgetRenderState<import("../menu/connectMenu").MenuRenderState, import("../menu/connectMenu").MenuConnectorParams>;
67
+ } | undefined;
68
+ numericMenu?: {
69
+ [attribute: string]: import("../../types").WidgetRenderState<import("../numeric-menu/connectNumericMenu").NumericMenuRenderState, import("../numeric-menu/connectNumericMenu").NumericMenuConnectorParams>;
70
+ } | undefined;
71
+ pagination?: import("../../types").WidgetRenderState<import("../pagination/connectPagination").PaginationRenderState, import("../pagination/connectPagination").PaginationConnectorParams> | undefined;
72
+ poweredBy?: import("../../types").WidgetRenderState<import("../powered-by/connectPoweredBy").PoweredByRenderState, import("../powered-by/connectPoweredBy").PoweredByConnectorParams> | undefined;
73
+ queryRules?: import("../../types").WidgetRenderState<import("../query-rules/connectQueryRules").QueryRulesRenderState, import("../query-rules/connectQueryRules").QueryRulesConnectorParams> | undefined;
74
+ range?: {
75
+ [attribute: string]: import("../../types").WidgetRenderState<import("../range/connectRange").RangeRenderState, import("../range/connectRange").RangeConnectorParams>;
76
+ } | undefined;
77
+ ratingMenu?: {
78
+ [attribute: string]: import("../../types").WidgetRenderState<import("../rating-menu/connectRatingMenu").RatingMenuRenderState, import("../rating-menu/connectRatingMenu").RatingMenuConnectorParams>;
79
+ } | undefined;
80
+ refinementList?: {
81
+ [attribute: string]: import("../../types").WidgetRenderState<import("../refinement-list/connectRefinementList").RefinementListRenderState, import("../refinement-list/connectRefinementList").RefinementListConnectorParams>;
82
+ } | undefined;
83
+ relevantSort?: import("../../types").WidgetRenderState<import("../relevant-sort/connectRelevantSort").RelevantSortRenderState, import("../relevant-sort/connectRelevantSort").RelevantSortConnectorParams> | undefined;
84
+ searchBox?: import("../../types").WidgetRenderState<import("../search-box/connectSearchBox").SearchBoxRenderState, import("../search-box/connectSearchBox").SearchBoxConnectorParams> | undefined;
85
+ sortBy?: import("../../types").WidgetRenderState<import("../sort-by/connectSortBy").SortByRenderState, import("../sort-by/connectSortBy").SortByConnectorParams> | undefined;
86
+ stats?: import("../../types").WidgetRenderState<import("../stats/connectStats").StatsRenderState, import("../stats/connectStats").StatsConnectorParams> | undefined;
87
+ toggleRefinement?: {
88
+ [attribute: string]: import("../../types").WidgetRenderState<import("../toggle-refinement/connectToggleRefinement").ToggleRefinementRenderState, import("../toggle-refinement/connectToggleRefinement").ToggleRefinementConnectorParams>;
89
+ } | undefined;
90
+ voiceSearch?: import("../../types").WidgetRenderState<import("../voice-search/connectVoiceSearch").VoiceSearchRenderState, import("../voice-search/connectVoiceSearch").VoiceSearchConnectorParams> | undefined;
91
+ analytics?: import("../../types").WidgetRenderState<Record<string, unknown>, import("../../widgets/analytics/analytics").AnalyticsWidgetParams> | undefined;
92
+ places?: import("../../types").WidgetRenderState<Record<string, unknown>, import("../../widgets/places/places").PlacesWidgetParams> | undefined;
93
+ }): {
94
+ answers?: import("../../types").WidgetRenderState<import("../answers/connectAnswers").AnswersRenderState, import("../answers/connectAnswers").AnswersConnectorParams> | undefined;
95
+ autocomplete?: import("../../types").WidgetRenderState<import("../autocomplete/connectAutocomplete").AutocompleteRenderState, import("../autocomplete/connectAutocomplete").AutocompleteConnectorParams> | undefined;
96
+ breadcrumb?: {
97
+ [rootAttribute: string]: import("../../types").WidgetRenderState<import("../breadcrumb/connectBreadcrumb").BreadcrumbRenderState, import("../breadcrumb/connectBreadcrumb").BreadcrumbConnectorParams>;
98
+ } | undefined;
99
+ clearRefinements?: import("../../types").WidgetRenderState<import("../clear-refinements/connectClearRefinements").ClearRefinementsRenderState, import("../clear-refinements/connectClearRefinements").ClearRefinementsConnectorParams> | undefined;
100
+ configure?: import("../../types").WidgetRenderState<import("../configure/connectConfigure").ConfigureRenderState, import("../configure/connectConfigure").ConfigureConnectorParams> | undefined;
101
+ currentRefinements?: import("../../types").WidgetRenderState<import("../current-refinements/connectCurrentRefinements").CurrentRefinementsRenderState, import("../current-refinements/connectCurrentRefinements").CurrentRefinementsConnectorParams> | undefined;
102
+ geoSearch?: import("../../types").WidgetRenderState<import("../geo-search/connectGeoSearch").GeoSearchRenderState<import("../../types").GeoHit>, import("../geo-search/connectGeoSearch").GeoSearchConnectorParams<import("../../types").GeoHit>> | undefined;
103
+ hierarchicalMenu?: {
104
+ [rootAttribute: string]: import("../../types").WidgetRenderState<import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuRenderState, import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuConnectorParams>;
105
+ } | undefined;
106
+ hits?: import("../../types").WidgetRenderState<import("../hits/connectHits").HitsRenderState<BaseHit>, import("../hits/connectHits").HitsConnectorParams<BaseHit>> | undefined;
107
+ hitsPerPage?: import("../../types").WidgetRenderState<import("../hits-per-page/connectHitsPerPage").HitsPerPageRenderState, import("../hits-per-page/connectHitsPerPage").HitsPerPageConnectorParams> | undefined;
108
+ infiniteHits?: import("../../types").WidgetRenderState<import("../infinite-hits/connectInfiniteHits").InfiniteHitsRenderState<BaseHit>, import("../infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams<BaseHit>> | undefined;
109
+ menu?: {
110
+ [attribute: string]: import("../../types").WidgetRenderState<import("../menu/connectMenu").MenuRenderState, import("../menu/connectMenu").MenuConnectorParams>;
111
+ } | undefined;
112
+ numericMenu?: {
113
+ [attribute: string]: import("../../types").WidgetRenderState<import("../numeric-menu/connectNumericMenu").NumericMenuRenderState, import("../numeric-menu/connectNumericMenu").NumericMenuConnectorParams>;
114
+ } | undefined;
115
+ pagination?: import("../../types").WidgetRenderState<import("../pagination/connectPagination").PaginationRenderState, import("../pagination/connectPagination").PaginationConnectorParams> | undefined;
116
+ poweredBy?: import("../../types").WidgetRenderState<import("../powered-by/connectPoweredBy").PoweredByRenderState, import("../powered-by/connectPoweredBy").PoweredByConnectorParams> | undefined;
117
+ queryRules?: import("../../types").WidgetRenderState<import("../query-rules/connectQueryRules").QueryRulesRenderState, import("../query-rules/connectQueryRules").QueryRulesConnectorParams> | undefined;
118
+ range?: {
119
+ [attribute: string]: import("../../types").WidgetRenderState<import("../range/connectRange").RangeRenderState, import("../range/connectRange").RangeConnectorParams>;
120
+ } | undefined;
121
+ ratingMenu?: {
122
+ [attribute: string]: import("../../types").WidgetRenderState<import("../rating-menu/connectRatingMenu").RatingMenuRenderState, import("../rating-menu/connectRatingMenu").RatingMenuConnectorParams>;
123
+ } | undefined;
124
+ refinementList?: {
125
+ [attribute: string]: import("../../types").WidgetRenderState<import("../refinement-list/connectRefinementList").RefinementListRenderState, import("../refinement-list/connectRefinementList").RefinementListConnectorParams>;
126
+ } | undefined;
127
+ relevantSort?: import("../../types").WidgetRenderState<import("../relevant-sort/connectRelevantSort").RelevantSortRenderState, import("../relevant-sort/connectRelevantSort").RelevantSortConnectorParams> | undefined;
128
+ searchBox?: import("../../types").WidgetRenderState<import("../search-box/connectSearchBox").SearchBoxRenderState, import("../search-box/connectSearchBox").SearchBoxConnectorParams> | undefined;
129
+ sortBy?: import("../../types").WidgetRenderState<import("../sort-by/connectSortBy").SortByRenderState, import("../sort-by/connectSortBy").SortByConnectorParams> | undefined;
130
+ stats?: import("../../types").WidgetRenderState<import("../stats/connectStats").StatsRenderState, import("../stats/connectStats").StatsConnectorParams> | undefined;
131
+ toggleRefinement?: {
132
+ [attribute: string]: import("../../types").WidgetRenderState<import("../toggle-refinement/connectToggleRefinement").ToggleRefinementRenderState, import("../toggle-refinement/connectToggleRefinement").ToggleRefinementConnectorParams>;
133
+ } | undefined;
134
+ voiceSearch?: import("../../types").WidgetRenderState<import("../voice-search/connectVoiceSearch").VoiceSearchRenderState, import("../voice-search/connectVoiceSearch").VoiceSearchConnectorParams> | undefined;
135
+ analytics?: import("../../types").WidgetRenderState<Record<string, unknown>, import("../../widgets/analytics/analytics").AnalyticsWidgetParams> | undefined;
136
+ places?: import("../../types").WidgetRenderState<Record<string, unknown>, import("../../widgets/places/places").PlacesWidgetParams> | undefined;
137
+ };
138
+ getWidgetRenderState({ results }: import("../../types").InitOptions | import("../../types").RenderOptions | ({
139
+ instantSearchInstance: import("../../lib/InstantSearch").default<import("../../types").UiState, import("../../types").UiState>;
140
+ parent: import("../../types").IndexWidget;
141
+ templatesConfig: Record<string, unknown>;
142
+ scopedResults: import("../../types").ScopedResult[];
143
+ state: import("algoliasearch-helper").SearchParameters;
144
+ renderState: Partial<{
145
+ answers: import("../../types").WidgetRenderState<import("../answers/connectAnswers").AnswersRenderState, import("../answers/connectAnswers").AnswersConnectorParams>;
146
+ } & {
147
+ autocomplete: import("../../types").WidgetRenderState<import("../autocomplete/connectAutocomplete").AutocompleteRenderState, import("../autocomplete/connectAutocomplete").AutocompleteConnectorParams>;
148
+ } & {
149
+ breadcrumb: {
150
+ [rootAttribute: string]: import("../../types").WidgetRenderState<import("../breadcrumb/connectBreadcrumb").BreadcrumbRenderState, import("../breadcrumb/connectBreadcrumb").BreadcrumbConnectorParams>;
151
+ };
152
+ } & {
153
+ clearRefinements: import("../../types").WidgetRenderState<import("../clear-refinements/connectClearRefinements").ClearRefinementsRenderState, import("../clear-refinements/connectClearRefinements").ClearRefinementsConnectorParams>;
154
+ } & {
155
+ configure: import("../../types").WidgetRenderState<import("../configure/connectConfigure").ConfigureRenderState, import("../configure/connectConfigure").ConfigureConnectorParams>;
156
+ } & {
157
+ currentRefinements: import("../../types").WidgetRenderState<import("../current-refinements/connectCurrentRefinements").CurrentRefinementsRenderState, import("../current-refinements/connectCurrentRefinements").CurrentRefinementsConnectorParams>;
158
+ } & {
159
+ geoSearch: import("../../types").WidgetRenderState<import("../geo-search/connectGeoSearch").GeoSearchRenderState<import("../../types").GeoHit>, import("../geo-search/connectGeoSearch").GeoSearchConnectorParams<import("../../types").GeoHit>>;
160
+ } & {
161
+ hierarchicalMenu: {
162
+ [rootAttribute: string]: import("../../types").WidgetRenderState<import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuRenderState, import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuConnectorParams>;
163
+ };
164
+ } & {
165
+ hits: import("../../types").WidgetRenderState<import("../hits/connectHits").HitsRenderState<BaseHit>, import("../hits/connectHits").HitsConnectorParams<BaseHit>>;
166
+ } & {
167
+ hitsPerPage: import("../../types").WidgetRenderState<import("../hits-per-page/connectHitsPerPage").HitsPerPageRenderState, import("../hits-per-page/connectHitsPerPage").HitsPerPageConnectorParams>;
168
+ } & {
169
+ infiniteHits: import("../../types").WidgetRenderState<import("../infinite-hits/connectInfiniteHits").InfiniteHitsRenderState<BaseHit>, import("../infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams<BaseHit>>;
170
+ } & {
171
+ menu: {
172
+ [attribute: string]: import("../../types").WidgetRenderState<import("../menu/connectMenu").MenuRenderState, import("../menu/connectMenu").MenuConnectorParams>;
173
+ };
174
+ } & {
175
+ numericMenu: {
176
+ [attribute: string]: import("../../types").WidgetRenderState<import("../numeric-menu/connectNumericMenu").NumericMenuRenderState, import("../numeric-menu/connectNumericMenu").NumericMenuConnectorParams>;
177
+ };
178
+ } & {
179
+ pagination: import("../../types").WidgetRenderState<import("../pagination/connectPagination").PaginationRenderState, import("../pagination/connectPagination").PaginationConnectorParams>;
180
+ } & {
181
+ poweredBy: import("../../types").WidgetRenderState<import("../powered-by/connectPoweredBy").PoweredByRenderState, import("../powered-by/connectPoweredBy").PoweredByConnectorParams>;
182
+ } & {
183
+ queryRules: import("../../types").WidgetRenderState<import("../query-rules/connectQueryRules").QueryRulesRenderState, import("../query-rules/connectQueryRules").QueryRulesConnectorParams>;
184
+ } & {
185
+ range: {
186
+ [attribute: string]: import("../../types").WidgetRenderState<import("../range/connectRange").RangeRenderState, import("../range/connectRange").RangeConnectorParams>;
187
+ };
188
+ } & {
189
+ ratingMenu: {
190
+ [attribute: string]: import("../../types").WidgetRenderState<import("../rating-menu/connectRatingMenu").RatingMenuRenderState, import("../rating-menu/connectRatingMenu").RatingMenuConnectorParams>;
191
+ };
192
+ } & {
193
+ refinementList: {
194
+ [attribute: string]: import("../../types").WidgetRenderState<import("../refinement-list/connectRefinementList").RefinementListRenderState, import("../refinement-list/connectRefinementList").RefinementListConnectorParams>;
195
+ };
196
+ } & {
197
+ relevantSort: import("../../types").WidgetRenderState<import("../relevant-sort/connectRelevantSort").RelevantSortRenderState, import("../relevant-sort/connectRelevantSort").RelevantSortConnectorParams>;
198
+ } & {
199
+ searchBox: import("../../types").WidgetRenderState<import("../search-box/connectSearchBox").SearchBoxRenderState, import("../search-box/connectSearchBox").SearchBoxConnectorParams>;
200
+ } & {
201
+ sortBy: import("../../types").WidgetRenderState<import("../sort-by/connectSortBy").SortByRenderState, import("../sort-by/connectSortBy").SortByConnectorParams>;
202
+ } & {
203
+ stats: import("../../types").WidgetRenderState<import("../stats/connectStats").StatsRenderState, import("../stats/connectStats").StatsConnectorParams>;
204
+ } & {
205
+ toggleRefinement: {
206
+ [attribute: string]: import("../../types").WidgetRenderState<import("../toggle-refinement/connectToggleRefinement").ToggleRefinementRenderState, import("../toggle-refinement/connectToggleRefinement").ToggleRefinementConnectorParams>;
207
+ };
208
+ } & {
209
+ voiceSearch: import("../../types").WidgetRenderState<import("../voice-search/connectVoiceSearch").VoiceSearchRenderState, import("../voice-search/connectVoiceSearch").VoiceSearchConnectorParams>;
210
+ } & {
211
+ analytics: import("../../types").WidgetRenderState<Record<string, unknown>, import("../../widgets/analytics/analytics").AnalyticsWidgetParams>;
212
+ } & {
213
+ places: import("../../types").WidgetRenderState<Record<string, unknown>, import("../../widgets/places/places").PlacesWidgetParams>;
214
+ }>;
215
+ helper: import("algoliasearch-helper").AlgoliaSearchHelper;
216
+ searchMetadata: {
217
+ isSearchStalled: boolean;
218
+ };
219
+ status: import("../../types").InstantSearchStatus;
220
+ error: Error | undefined;
221
+ createURL: (nextState: import("algoliasearch-helper").SearchParameters | ((state: Partial<{
222
+ query: string;
223
+ } & {
224
+ configure: PlainSearchParameters;
225
+ } & {
226
+ geoSearch: {
227
+ boundingBox: string;
228
+ };
229
+ } & {
230
+ hierarchicalMenu: {
231
+ [rootAttribute: string]: string[];
232
+ };
233
+ } & {
234
+ hitsPerPage: number;
235
+ } & {
236
+ page: number;
237
+ } & {
238
+ menu: {
239
+ [attribute: string]: string;
240
+ };
241
+ } & {
242
+ numericMenu: {
243
+ [attribute: string]: string;
244
+ };
245
+ } & {
246
+ page: number;
247
+ } & {
248
+ range: {
249
+ [attribute: string]: string;
250
+ };
251
+ } & {
252
+ ratingMenu: {
253
+ [attribute: string]: number | undefined;
254
+ };
255
+ } & {
256
+ refinementList: {
257
+ [attribute: string]: string[];
258
+ };
259
+ } & {
260
+ relevantSort: number;
261
+ } & {
262
+ query: string;
263
+ } & {
264
+ sortBy: string;
265
+ } & {
266
+ toggle: {
267
+ [attribute: string]: boolean;
268
+ };
269
+ } & {
270
+ query: string;
271
+ } & {
272
+ places: {
273
+ query: string;
274
+ position: string;
275
+ }; /**
276
+ * Whether to escape HTML tags from items string values.
277
+ *
278
+ * @default true
279
+ */
280
+ }>) => Partial<{
281
+ query: string;
282
+ } & {
283
+ configure: PlainSearchParameters;
284
+ } & {
285
+ geoSearch: {
286
+ boundingBox: string;
287
+ };
288
+ } & {
289
+ hierarchicalMenu: {
290
+ [rootAttribute: string]: string[];
291
+ };
292
+ } & {
293
+ hitsPerPage: number;
294
+ } & {
295
+ page: number;
296
+ } & {
297
+ menu: {
298
+ [attribute: string]: string;
299
+ };
300
+ } & {
301
+ numericMenu: {
302
+ [attribute: string]: string;
303
+ };
304
+ } & {
305
+ page: number;
306
+ } & {
307
+ range: {
308
+ [attribute: string]: string;
309
+ };
310
+ } & {
311
+ ratingMenu: {
312
+ [attribute: string]: number | undefined;
313
+ };
314
+ } & {
315
+ refinementList: {
316
+ [attribute: string]: string[];
317
+ };
318
+ } & {
319
+ relevantSort: number;
320
+ } & {
321
+ query: string;
322
+ } & {
323
+ sortBy: string;
324
+ } & {
325
+ toggle: {
326
+ [attribute: string]: boolean;
327
+ };
328
+ } & {
329
+ query: string;
330
+ } & {
331
+ places: {
332
+ query: string;
333
+ position: string;
334
+ }; /**
335
+ * Whether to escape HTML tags from items string values.
336
+ *
337
+ * @default true
338
+ */
339
+ }>)) => string;
340
+ } & {
341
+ results: RecommendResultItem;
342
+ })): {
343
+ items: Hit<THit>[];
344
+ widgetParams: TWidgetParams & FrequentlyBoughtTogetherConnectorParams<THit>;
345
+ };
346
+ dispose({ recommendState }: import("../../types").DisposeOptions): import("algoliasearch-helper").RecommendParameters;
347
+ getWidgetParameters(state: import("algoliasearch-helper").RecommendParameters): import("algoliasearch-helper").RecommendParameters;
348
+ };
349
+ export default _default;
@@ -9,7 +9,7 @@ var withUsage = createDocumentationMessageGenerator({
9
9
  name: 'frequently-bought-together',
10
10
  connector: true
11
11
  });
12
- var connectFrequentlyBoughtTogether = function connectFrequentlyBoughtTogether(renderFn) {
12
+ export default (function connectFrequentlyBoughtTogether(renderFn) {
13
13
  var unmountFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;
14
14
  checkRendering(renderFn, withUsage());
15
15
  return function (widgetParams) {
@@ -82,5 +82,4 @@ var connectFrequentlyBoughtTogether = function connectFrequentlyBoughtTogether(r
82
82
  }
83
83
  };
84
84
  };
85
- };
86
- export default connectFrequentlyBoughtTogether;
85
+ });
@@ -1,6 +1,7 @@
1
1
  import type { SendEventForHits } from '../../lib/utils';
2
- import type { BaseHit, Connector, GeoLoc, Hit, TransformItems, WidgetRenderState } from '../../types';
3
- export type GeoHit<THit extends BaseHit = Record<string, any>> = Hit<THit> & Required<Pick<Hit, '_geoloc'>>;
2
+ import type { BaseHit, Connector, GeoHit, GeoLoc, IndexRenderState, InitOptions, Renderer, RenderOptions, TransformItems, Unmounter, WidgetRenderState } from '../../types';
3
+ import type { AlgoliaSearchHelper, SearchParameters } from 'algoliasearch-helper';
4
+ export type { GeoHit } from '../../types';
4
5
  type Bounds = {
5
6
  /**
6
7
  * The top right corner of the map view.
@@ -11,7 +12,7 @@ type Bounds = {
11
12
  */
12
13
  southWest: GeoLoc;
13
14
  };
14
- export type GeoSearchRenderState<THit extends BaseHit = Record<string, any>> = {
15
+ export type GeoSearchRenderState<THit extends NonNullable<object> = BaseHit> = {
15
16
  /**
16
17
  * Reset the current bounding box refinement.
17
18
  */
@@ -59,7 +60,7 @@ export type GeoSearchRenderState<THit extends BaseHit = Record<string, any>> = {
59
60
  */
60
61
  toggleRefineOnMapMove: () => void;
61
62
  };
62
- export type GeoSearchConnectorParams<THit extends BaseHit = Record<string, any>> = {
63
+ export type GeoSearchConnectorParams<THit extends GeoHit = GeoHit> = {
63
64
  /**
64
65
  * If true, refine will be triggered as you move the map.
65
66
  * @default true
@@ -71,7 +72,7 @@ export type GeoSearchConnectorParams<THit extends BaseHit = Record<string, any>>
71
72
  */
72
73
  transformItems?: TransformItems<GeoHit<THit>>;
73
74
  };
74
- export type GeoSearchWidgetDescription<THit extends BaseHit = Record<string, any>> = {
75
+ export type GeoSearchWidgetDescription<THit extends GeoHit = GeoHit> = {
75
76
  $$type: 'ais.geoSearch';
76
77
  renderState: GeoSearchRenderState<THit>;
77
78
  indexRenderState: {
@@ -90,7 +91,7 @@ export type GeoSearchWidgetDescription<THit extends BaseHit = Record<string, any
90
91
  };
91
92
  };
92
93
  };
93
- export type GeoSearchConnector<THit extends BaseHit = Record<string, any>> = Connector<GeoSearchWidgetDescription<THit>, GeoSearchConnectorParams<THit>>;
94
+ export type GeoSearchConnector<THit extends GeoHit = GeoHit> = Connector<GeoSearchWidgetDescription<THit>, GeoSearchConnectorParams<THit>>;
94
95
  /**
95
96
  * The **GeoSearch** connector provides the logic to build a widget that will display the results on a map. It also provides a way to search for results based on their position. The connector provides functions to manage the search experience (search on map interaction or control the interaction for example).
96
97
  *
@@ -100,5 +101,214 @@ export type GeoSearchConnector<THit extends BaseHit = Record<string, any>> = Con
100
101
  *
101
102
  * Currently, the feature is not compatible with multiple values in the _geoloc attribute.
102
103
  */
103
- declare const connectGeoSearch: GeoSearchConnector;
104
- export default connectGeoSearch;
104
+ declare const _default: <TWidgetParams extends object>(renderFn: Renderer<GeoSearchRenderState<BaseHit>, TWidgetParams & GeoSearchConnectorParams<GeoHit>>, unmountFn?: Unmounter) => <THit extends GeoHit = GeoHit>(widgetParams: TWidgetParams & GeoSearchConnectorParams<THit>) => {
105
+ $$type: "ais.geoSearch";
106
+ init(initArgs: InitOptions): void;
107
+ render(renderArgs: RenderOptions): void;
108
+ getWidgetRenderState(renderOptions: InitOptions | RenderOptions): {
109
+ items: GeoHit<THit>[];
110
+ position: {
111
+ lat: number;
112
+ lng: number;
113
+ } | undefined;
114
+ currentRefinement: {
115
+ northEast: {
116
+ lat: number;
117
+ lng: number;
118
+ };
119
+ southWest: {
120
+ lat: number;
121
+ lng: number;
122
+ };
123
+ } | undefined;
124
+ refine: ({ northEast: ne, southWest: sw }: Bounds) => void;
125
+ sendEvent: SendEventForHits;
126
+ clearMapRefinement: () => void;
127
+ isRefinedWithMap: () => boolean;
128
+ toggleRefineOnMapMove: () => void;
129
+ isRefineOnMapMove: () => boolean;
130
+ setMapMoveSinceLastRefine: () => void;
131
+ hasMapMoveSinceLastRefine: () => boolean;
132
+ widgetParams: TWidgetParams & GeoSearchConnectorParams<THit>;
133
+ };
134
+ getRenderState(renderState: {
135
+ answers?: WidgetRenderState<import("../answers/connectAnswers").AnswersRenderState, import("../answers/connectAnswers").AnswersConnectorParams> | undefined;
136
+ autocomplete?: WidgetRenderState<import("../autocomplete/connectAutocomplete").AutocompleteRenderState, import("../autocomplete/connectAutocomplete").AutocompleteConnectorParams> | undefined;
137
+ breadcrumb?: {
138
+ [rootAttribute: string]: WidgetRenderState<import("../breadcrumb/connectBreadcrumb").BreadcrumbRenderState, import("../breadcrumb/connectBreadcrumb").BreadcrumbConnectorParams>;
139
+ } | undefined;
140
+ clearRefinements?: WidgetRenderState<import("../clear-refinements/connectClearRefinements").ClearRefinementsRenderState, import("../clear-refinements/connectClearRefinements").ClearRefinementsConnectorParams> | undefined;
141
+ configure?: WidgetRenderState<import("../configure/connectConfigure").ConfigureRenderState, import("../configure/connectConfigure").ConfigureConnectorParams> | undefined;
142
+ currentRefinements?: WidgetRenderState<import("../current-refinements/connectCurrentRefinements").CurrentRefinementsRenderState, import("../current-refinements/connectCurrentRefinements").CurrentRefinementsConnectorParams> | undefined;
143
+ geoSearch?: WidgetRenderState<GeoSearchRenderState<GeoHit>, GeoSearchConnectorParams<GeoHit>> | undefined;
144
+ hierarchicalMenu?: {
145
+ [rootAttribute: string]: WidgetRenderState<import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuRenderState, import("../hierarchical-menu/connectHierarchicalMenu").HierarchicalMenuConnectorParams>;
146
+ } | undefined;
147
+ hits?: WidgetRenderState<import("../hits/connectHits").HitsRenderState<BaseHit>, import("../hits/connectHits").HitsConnectorParams<BaseHit>> | undefined;
148
+ hitsPerPage?: WidgetRenderState<import("../hits-per-page/connectHitsPerPage").HitsPerPageRenderState, import("../hits-per-page/connectHitsPerPage").HitsPerPageConnectorParams> | undefined;
149
+ infiniteHits?: WidgetRenderState<import("../infinite-hits/connectInfiniteHits").InfiniteHitsRenderState<BaseHit>, import("../infinite-hits/connectInfiniteHits").InfiniteHitsConnectorParams<BaseHit>> | undefined;
150
+ menu?: {
151
+ [attribute: string]: WidgetRenderState<import("../menu/connectMenu").MenuRenderState, import("../menu/connectMenu").MenuConnectorParams>;
152
+ } | undefined;
153
+ numericMenu?: {
154
+ [attribute: string]: WidgetRenderState<import("../numeric-menu/connectNumericMenu").NumericMenuRenderState, import("../numeric-menu/connectNumericMenu").NumericMenuConnectorParams>;
155
+ } | undefined;
156
+ pagination?: WidgetRenderState<import("../pagination/connectPagination").PaginationRenderState, import("../pagination/connectPagination").PaginationConnectorParams> | undefined;
157
+ poweredBy?: WidgetRenderState<import("../powered-by/connectPoweredBy").PoweredByRenderState, import("../powered-by/connectPoweredBy").PoweredByConnectorParams> | undefined;
158
+ queryRules?: WidgetRenderState<import("../query-rules/connectQueryRules").QueryRulesRenderState, import("../query-rules/connectQueryRules").QueryRulesConnectorParams> | undefined;
159
+ range?: {
160
+ [attribute: string]: WidgetRenderState<import("../range/connectRange").RangeRenderState, import("../range/connectRange").RangeConnectorParams>;
161
+ } | undefined;
162
+ ratingMenu?: {
163
+ [attribute: string]: WidgetRenderState<import("../rating-menu/connectRatingMenu").RatingMenuRenderState, import("../rating-menu/connectRatingMenu").RatingMenuConnectorParams>;
164
+ } | undefined;
165
+ refinementList?: {
166
+ [attribute: string]: WidgetRenderState<import("../refinement-list/connectRefinementList").RefinementListRenderState, import("../refinement-list/connectRefinementList").RefinementListConnectorParams>;
167
+ } | undefined;
168
+ relevantSort?: WidgetRenderState<import("../relevant-sort/connectRelevantSort").RelevantSortRenderState, import("../relevant-sort/connectRelevantSort").RelevantSortConnectorParams> | undefined;
169
+ searchBox?: WidgetRenderState<import("../search-box/connectSearchBox").SearchBoxRenderState, import("../search-box/connectSearchBox").SearchBoxConnectorParams> | undefined;
170
+ sortBy?: WidgetRenderState<import("../sort-by/connectSortBy").SortByRenderState, import("../sort-by/connectSortBy").SortByConnectorParams> | undefined;
171
+ stats?: WidgetRenderState<import("../stats/connectStats").StatsRenderState, import("../stats/connectStats").StatsConnectorParams> | undefined;
172
+ toggleRefinement?: {
173
+ [attribute: string]: WidgetRenderState<import("../toggle-refinement/connectToggleRefinement").ToggleRefinementRenderState, import("../toggle-refinement/connectToggleRefinement").ToggleRefinementConnectorParams>;
174
+ } | undefined;
175
+ voiceSearch?: WidgetRenderState<import("../voice-search/connectVoiceSearch").VoiceSearchRenderState, import("../voice-search/connectVoiceSearch").VoiceSearchConnectorParams> | undefined;
176
+ analytics?: WidgetRenderState<Record<string, unknown>, import("../../widgets/analytics/analytics").AnalyticsWidgetParams> | undefined;
177
+ places?: WidgetRenderState<Record<string, unknown>, import("../../widgets/places/places").PlacesWidgetParams> | undefined;
178
+ }, renderOptions: InitOptions | RenderOptions): IndexRenderState & GeoSearchWidgetDescription['indexRenderState'];
179
+ dispose({ state }: import("../../types").DisposeOptions): SearchParameters;
180
+ getWidgetUiState(uiState: {
181
+ geoSearch?: {
182
+ /**
183
+ * The rectangular area in geo coordinates.
184
+ * The rectangle is defined by two diagonally opposite points,
185
+ * hence by 4 floats separated by commas.
186
+ *
187
+ * @example '47.3165,4.9665,47.3424,5.0201'
188
+ */
189
+ boundingBox: string;
190
+ } | undefined;
191
+ query?: string | undefined;
192
+ configure?: import("algoliasearch-helper").PlainSearchParameters | undefined;
193
+ hierarchicalMenu?: {
194
+ [rootAttribute: string]: string[];
195
+ } | undefined;
196
+ hitsPerPage?: number | undefined;
197
+ page?: number | undefined;
198
+ menu?: {
199
+ [attribute: string]: string;
200
+ } | undefined;
201
+ numericMenu?: {
202
+ [attribute: string]: string;
203
+ } | undefined;
204
+ range?: {
205
+ [attribute: string]: string;
206
+ } | undefined;
207
+ ratingMenu?: {
208
+ [attribute: string]: number | undefined;
209
+ } | undefined;
210
+ refinementList?: {
211
+ [attribute: string]: string[];
212
+ } | undefined;
213
+ relevantSort?: number | undefined;
214
+ sortBy?: string | undefined;
215
+ toggle?: {
216
+ [attribute: string]: boolean;
217
+ } | undefined;
218
+ places?: {
219
+ query: string;
220
+ position: string;
221
+ } | undefined;
222
+ }, { searchParameters }: {
223
+ searchParameters: SearchParameters;
224
+ helper: AlgoliaSearchHelper;
225
+ }): {
226
+ geoSearch?: {
227
+ /**
228
+ * The rectangular area in geo coordinates.
229
+ * The rectangle is defined by two diagonally opposite points,
230
+ * hence by 4 floats separated by commas.
231
+ *
232
+ * @example '47.3165,4.9665,47.3424,5.0201'
233
+ */
234
+ boundingBox: string;
235
+ } | undefined;
236
+ query?: string | undefined;
237
+ configure?: import("algoliasearch-helper").PlainSearchParameters | undefined;
238
+ hierarchicalMenu?: {
239
+ [rootAttribute: string]: string[];
240
+ } | undefined;
241
+ hitsPerPage?: number | undefined;
242
+ page?: number | undefined;
243
+ menu?: {
244
+ [attribute: string]: string;
245
+ } | undefined;
246
+ numericMenu?: {
247
+ [attribute: string]: string;
248
+ } | undefined;
249
+ range?: {
250
+ [attribute: string]: string;
251
+ } | undefined;
252
+ ratingMenu?: {
253
+ [attribute: string]: number | undefined;
254
+ } | undefined;
255
+ refinementList?: {
256
+ [attribute: string]: string[];
257
+ } | undefined;
258
+ relevantSort?: number | undefined;
259
+ sortBy?: string | undefined;
260
+ toggle?: {
261
+ [attribute: string]: boolean;
262
+ } | undefined;
263
+ places?: {
264
+ query: string;
265
+ position: string;
266
+ } | undefined;
267
+ };
268
+ getWidgetSearchParameters(searchParameters: SearchParameters, { uiState }: {
269
+ uiState: {
270
+ geoSearch?: {
271
+ /**
272
+ * The rectangular area in geo coordinates.
273
+ * The rectangle is defined by two diagonally opposite points,
274
+ * hence by 4 floats separated by commas.
275
+ *
276
+ * @example '47.3165,4.9665,47.3424,5.0201'
277
+ */
278
+ boundingBox: string;
279
+ } | undefined;
280
+ query?: string | undefined;
281
+ configure?: import("algoliasearch-helper").PlainSearchParameters | undefined;
282
+ hierarchicalMenu?: {
283
+ [rootAttribute: string]: string[];
284
+ } | undefined;
285
+ hitsPerPage?: number | undefined;
286
+ page?: number | undefined;
287
+ menu?: {
288
+ [attribute: string]: string;
289
+ } | undefined;
290
+ numericMenu?: {
291
+ [attribute: string]: string;
292
+ } | undefined;
293
+ range?: {
294
+ [attribute: string]: string;
295
+ } | undefined;
296
+ ratingMenu?: {
297
+ [attribute: string]: number | undefined;
298
+ } | undefined;
299
+ refinementList?: {
300
+ [attribute: string]: string[];
301
+ } | undefined;
302
+ relevantSort?: number | undefined;
303
+ sortBy?: string | undefined;
304
+ toggle?: {
305
+ [attribute: string]: boolean;
306
+ } | undefined;
307
+ places?: {
308
+ query: string;
309
+ position: string;
310
+ } | undefined;
311
+ };
312
+ }): SearchParameters;
313
+ };
314
+ export default _default;