@usereactify/search 5.0.0-beta.0 → 5.0.0-beta.11

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 (203) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/dist/package.json +8 -3
  3. package/dist/src/components/{example → Example}/ExampleFilterList.d.ts +1 -1
  4. package/dist/src/components/Example/ExampleFilterList.js +21 -0
  5. package/dist/src/components/Example/ExampleFilterList.js.map +1 -0
  6. package/dist/src/components/{example → Example}/ExampleFilterRange.d.ts +1 -1
  7. package/dist/src/components/{example → Example}/ExampleFilterRange.js +5 -4
  8. package/dist/src/components/Example/ExampleFilterRange.js.map +1 -0
  9. package/dist/src/components/{example → Example}/ExampleFilterSlider.d.ts +1 -1
  10. package/dist/src/components/{example → Example}/ExampleFilterSlider.js +4 -3
  11. package/dist/src/components/Example/ExampleFilterSlider.js.map +1 -0
  12. package/dist/src/components/{example → Example}/ExampleFilterStack.d.ts +1 -1
  13. package/dist/src/components/{example → Example}/ExampleFilterStack.js +1 -0
  14. package/dist/src/components/Example/ExampleFilterStack.js.map +1 -0
  15. package/dist/src/components/{example → Example}/ExampleResultCardCallout.d.ts +1 -1
  16. package/dist/src/components/{example → Example}/ExampleResultCardCallout.js +5 -4
  17. package/dist/src/components/Example/ExampleResultCardCallout.js.map +1 -0
  18. package/dist/src/components/{example → Example}/ExampleResultCardProduct.d.ts +1 -1
  19. package/dist/src/components/Example/ExampleResultCardProduct.js +19 -0
  20. package/dist/src/components/Example/ExampleResultCardProduct.js.map +1 -0
  21. package/dist/src/components/{example → Example}/ExampleResultPaginationLoadMore.d.ts +1 -1
  22. package/dist/src/components/{example → Example}/ExampleResultPaginationLoadMore.js +2 -1
  23. package/dist/src/components/Example/ExampleResultPaginationLoadMore.js.map +1 -0
  24. package/dist/src/components/{example → Example}/ExampleResultPaginationNextPrev.d.ts +1 -1
  25. package/dist/src/components/{example → Example}/ExampleResultPaginationNextPrev.js +4 -3
  26. package/dist/src/components/Example/ExampleResultPaginationNextPrev.js.map +1 -0
  27. package/dist/src/components/{example → Example}/ExampleResultPaginationNumbered.d.ts +1 -1
  28. package/dist/src/components/Example/ExampleResultPaginationNumbered.js +27 -0
  29. package/dist/src/components/Example/ExampleResultPaginationNumbered.js.map +1 -0
  30. package/dist/src/components/{example → Example}/ExampleSortby.d.ts +1 -1
  31. package/dist/src/components/Example/ExampleSortby.js +13 -0
  32. package/dist/src/components/Example/ExampleSortby.js.map +1 -0
  33. package/dist/src/components/{example → Example}/index.d.ts +0 -0
  34. package/dist/src/components/{example → Example}/index.js +1 -0
  35. package/dist/src/components/Example/index.js.map +1 -0
  36. package/dist/src/components/{filter → Filter}/Filter.d.ts +0 -0
  37. package/dist/src/components/{filter → Filter}/Filter.js +8 -19
  38. package/dist/src/components/Filter/Filter.js.map +1 -0
  39. package/dist/src/components/{filter → Filter}/FilterStack.d.ts +0 -0
  40. package/dist/src/components/{filter → Filter}/FilterStack.js +1 -0
  41. package/dist/src/components/Filter/FilterStack.js.map +1 -0
  42. package/dist/src/components/{filter → Filter}/index.d.ts +0 -0
  43. package/dist/src/components/{filter → Filter}/index.js +1 -0
  44. package/dist/src/components/Filter/index.js.map +1 -0
  45. package/dist/src/components/{context → ReactifySearchBase}/ReactifySearchBase.d.ts +0 -0
  46. package/dist/src/components/{context → ReactifySearchBase}/ReactifySearchBase.js +28 -37
  47. package/dist/src/components/ReactifySearchBase/ReactifySearchBase.js.map +1 -0
  48. package/dist/src/components/{context → ReactifySearchBase}/index.d.ts +0 -0
  49. package/dist/src/components/{context → ReactifySearchBase}/index.js +1 -0
  50. package/dist/src/components/ReactifySearchBase/index.js.map +1 -0
  51. package/dist/src/components/{result → Result}/ResultCardCallout.d.ts +0 -0
  52. package/dist/src/components/{result → Result}/ResultCardCallout.js +4 -5
  53. package/dist/src/components/Result/ResultCardCallout.js.map +1 -0
  54. package/dist/src/components/{result → Result}/ResultCardProduct.d.ts +0 -0
  55. package/dist/src/components/{result → Result}/ResultCardProduct.js +5 -18
  56. package/dist/src/components/Result/ResultCardProduct.js.map +1 -0
  57. package/dist/src/components/{result → Result}/ResultPaginationLoadMore.d.ts +0 -0
  58. package/dist/src/components/{result → Result}/ResultPaginationLoadMore.js +1 -0
  59. package/dist/src/components/Result/ResultPaginationLoadMore.js.map +1 -0
  60. package/dist/src/components/{result → Result}/ResultPaginationNextPrev.d.ts +0 -0
  61. package/dist/src/components/{result → Result}/ResultPaginationNextPrev.js +1 -0
  62. package/dist/src/components/Result/ResultPaginationNextPrev.js.map +1 -0
  63. package/dist/src/components/{result → Result}/ResultPaginationNumbered.d.ts +0 -0
  64. package/dist/src/components/{result → Result}/ResultPaginationNumbered.js +1 -0
  65. package/dist/src/components/Result/ResultPaginationNumbered.js.map +1 -0
  66. package/dist/src/components/{result → Result}/ResultStack.d.ts +0 -0
  67. package/dist/src/components/{result → Result}/ResultStack.js +9 -8
  68. package/dist/src/components/Result/ResultStack.js.map +1 -0
  69. package/dist/src/components/{result → Result}/ResultStateProvider.d.ts +1 -1
  70. package/dist/src/components/{result → Result}/ResultStateProvider.js +5 -1
  71. package/dist/src/components/Result/ResultStateProvider.js.map +1 -0
  72. package/dist/src/components/{result → Result}/index.d.ts +0 -0
  73. package/dist/src/components/{result → Result}/index.js +1 -0
  74. package/dist/src/components/Result/index.js.map +1 -0
  75. package/dist/src/components/{search → Search}/SearchInput.d.ts +0 -0
  76. package/dist/src/components/{search → Search}/SearchInput.js +1 -0
  77. package/dist/src/components/Search/SearchInput.js.map +1 -0
  78. package/dist/src/components/{search → Search}/index.d.ts +0 -0
  79. package/dist/src/components/{search → Search}/index.js +1 -0
  80. package/dist/src/components/Search/index.js.map +1 -0
  81. package/dist/src/components/{sensor → Sensor}/SensorCollection.d.ts +0 -0
  82. package/dist/src/components/{sensor → Sensor}/SensorCollection.js +1 -0
  83. package/dist/src/components/Sensor/SensorCollection.js.map +1 -0
  84. package/dist/src/components/{sensor → Sensor}/SensorInventoryAvailable.d.ts +0 -0
  85. package/dist/src/components/{sensor → Sensor}/SensorInventoryAvailable.js +2 -1
  86. package/dist/src/components/Sensor/SensorInventoryAvailable.js.map +1 -0
  87. package/dist/src/components/{sensor → Sensor}/SensorPublished.d.ts +0 -0
  88. package/dist/src/components/{sensor → Sensor}/SensorPublished.js +1 -0
  89. package/dist/src/components/Sensor/SensorPublished.js.map +1 -0
  90. package/dist/src/components/{sensor → Sensor}/SensorSearch.d.ts +0 -0
  91. package/dist/src/components/{sensor → Sensor}/SensorSearch.js +1 -0
  92. package/dist/src/components/Sensor/SensorSearch.js.map +1 -0
  93. package/dist/src/components/{sensor → Sensor}/SensorSort.d.ts +0 -0
  94. package/dist/src/components/{sensor → Sensor}/SensorSort.js +2 -19
  95. package/dist/src/components/Sensor/SensorSort.js.map +1 -0
  96. package/dist/src/components/{sensor → Sensor}/SensorSortScore.d.ts +0 -0
  97. package/dist/src/components/{sensor → Sensor}/SensorSortScore.js +1 -0
  98. package/dist/src/components/Sensor/SensorSortScore.js.map +1 -0
  99. package/dist/src/components/{sensor → Sensor}/SensorStack.d.ts +0 -0
  100. package/dist/src/components/{sensor → Sensor}/SensorStack.js +1 -0
  101. package/dist/src/components/Sensor/SensorStack.js.map +1 -0
  102. package/dist/src/components/{sensor → Sensor}/index.d.ts +0 -0
  103. package/dist/src/components/{sensor → Sensor}/index.js +1 -0
  104. package/dist/src/components/Sensor/index.js.map +1 -0
  105. package/dist/src/components/{sortby → Sortby}/Sortby.d.ts +0 -0
  106. package/dist/src/components/{sortby → Sortby}/Sortby.js +1 -0
  107. package/dist/src/components/Sortby/Sortby.js.map +1 -0
  108. package/dist/src/components/{sortby → Sortby}/index.d.ts +0 -0
  109. package/dist/src/components/{sortby → Sortby}/index.js +1 -0
  110. package/dist/src/components/Sortby/index.js.map +1 -0
  111. package/dist/src/components/{utility → Utility}/UtilityAuthenticatedReactiveBase.d.ts +0 -0
  112. package/dist/src/components/{utility → Utility}/UtilityAuthenticatedReactiveBase.js +4 -3
  113. package/dist/src/components/Utility/UtilityAuthenticatedReactiveBase.js.map +1 -0
  114. package/dist/src/components/{utility → Utility}/index.d.ts +0 -0
  115. package/dist/src/components/{utility → Utility}/index.js +1 -0
  116. package/dist/src/components/Utility/index.js.map +1 -0
  117. package/dist/src/components/index.d.ts +8 -8
  118. package/dist/src/components/index.js +9 -8
  119. package/dist/src/components/index.js.map +1 -0
  120. package/dist/src/hooks/index.d.ts +1 -0
  121. package/dist/src/hooks/index.js +2 -0
  122. package/dist/src/hooks/index.js.map +1 -0
  123. package/dist/src/hooks/reactivesearch/index.d.ts +3 -3
  124. package/dist/src/hooks/reactivesearch/index.js +4 -3
  125. package/dist/src/hooks/reactivesearch/index.js.map +1 -0
  126. package/dist/src/hooks/reactivesearch/useReactiveBaseProps.js +3 -1
  127. package/dist/src/hooks/reactivesearch/useReactiveBaseProps.js.map +1 -0
  128. package/dist/src/hooks/reactivesearch/useReactiveDataSearchProps.js +3 -2
  129. package/dist/src/hooks/reactivesearch/useReactiveDataSearchProps.js.map +1 -0
  130. package/dist/src/hooks/reactivesearch/useReactiveFilterListProps.js +3 -1
  131. package/dist/src/hooks/reactivesearch/useReactiveFilterListProps.js.map +1 -0
  132. package/dist/src/hooks/reactivesearch/useReactiveFilterRangeProps.js +3 -1
  133. package/dist/src/hooks/reactivesearch/useReactiveFilterRangeProps.js.map +1 -0
  134. package/dist/src/hooks/reactivesearch/useReactiveFilterSharedProps.js +3 -1
  135. package/dist/src/hooks/reactivesearch/useReactiveFilterSharedProps.js.map +1 -0
  136. package/dist/src/hooks/reactivesearch/useReactiveFilterSliderProps.js +3 -1
  137. package/dist/src/hooks/reactivesearch/useReactiveFilterSliderProps.js.map +1 -0
  138. package/dist/src/hooks/reactivesearch/useReactiveReactProp.js +1 -0
  139. package/dist/src/hooks/reactivesearch/useReactiveReactProp.js.map +1 -0
  140. package/dist/src/hooks/reactivesearch/useReactiveReactiveListProps.d.ts +5 -0
  141. package/dist/src/hooks/reactivesearch/{useReactiveResultStackProps.js → useReactiveReactiveListProps.js} +7 -5
  142. package/dist/src/hooks/reactivesearch/useReactiveReactiveListProps.js.map +1 -0
  143. package/dist/src/hooks/useAnalytics.js +3 -0
  144. package/dist/src/hooks/useAnalytics.js.map +1 -0
  145. package/dist/src/hooks/useConfig.js +10 -8
  146. package/dist/src/hooks/useConfig.js.map +1 -0
  147. package/dist/src/hooks/useCuration.js +17 -3
  148. package/dist/src/hooks/useCuration.js.map +1 -0
  149. package/dist/src/hooks/useDebugger.d.ts +1 -0
  150. package/dist/src/hooks/useDebugger.js +15 -0
  151. package/dist/src/hooks/useDebugger.js.map +1 -0
  152. package/dist/src/hooks/useFilterCollapsedState.js +1 -0
  153. package/dist/src/hooks/useFilterCollapsedState.js.map +1 -0
  154. package/dist/src/hooks/useFilterListProps.js +37 -9
  155. package/dist/src/hooks/useFilterListProps.js.map +1 -0
  156. package/dist/src/hooks/useFilterStack.d.ts +3 -1
  157. package/dist/src/hooks/useFilterStack.js +7 -1
  158. package/dist/src/hooks/useFilterStack.js.map +1 -0
  159. package/dist/src/hooks/useFilters.js +8 -3
  160. package/dist/src/hooks/useFilters.js.map +1 -0
  161. package/dist/src/hooks/usePagination.d.ts +2 -2
  162. package/dist/src/hooks/usePagination.js +29 -17
  163. package/dist/src/hooks/usePagination.js.map +1 -0
  164. package/dist/src/hooks/usePaginationLoadMore.d.ts +3 -2
  165. package/dist/src/hooks/usePaginationLoadMore.js +15 -12
  166. package/dist/src/hooks/usePaginationLoadMore.js.map +1 -0
  167. package/dist/src/hooks/useProductPrice.js +1 -0
  168. package/dist/src/hooks/useProductPrice.js.map +1 -0
  169. package/dist/src/hooks/useReactifySearchContext.js +1 -0
  170. package/dist/src/hooks/useReactifySearchContext.js.map +1 -0
  171. package/dist/src/hooks/useSearch.d.ts +1 -1
  172. package/dist/src/hooks/useSearch.js +20 -6
  173. package/dist/src/hooks/useSearch.js.map +1 -0
  174. package/dist/src/hooks/useSortby.js +22 -5
  175. package/dist/src/hooks/useSortby.js.map +1 -0
  176. package/dist/src/index.js +46 -3
  177. package/dist/src/index.js.map +1 -0
  178. package/dist/src/types/config.js +1 -0
  179. package/dist/src/types/config.js.map +1 -0
  180. package/dist/src/types/elastic.js +1 -0
  181. package/dist/src/types/elastic.js.map +1 -0
  182. package/dist/src/types/firestore.js +1 -0
  183. package/dist/src/types/firestore.js.map +1 -0
  184. package/dist/src/types/graphql.js +1 -0
  185. package/dist/src/types/graphql.js.map +1 -0
  186. package/dist/src/types/index.js +1 -0
  187. package/dist/src/types/index.js.map +1 -0
  188. package/dist/src/types/reactivesearch.js +1 -0
  189. package/dist/src/types/reactivesearch.js.map +1 -0
  190. package/dist/src/types/shopify.js +1 -0
  191. package/dist/src/types/shopify.js.map +1 -0
  192. package/dist/src/utility/debug.d.ts +10 -0
  193. package/dist/src/utility/debug.js +39 -0
  194. package/dist/src/utility/debug.js.map +1 -0
  195. package/dist/src/utility/index.d.ts +1 -0
  196. package/dist/src/utility/index.js +14 -0
  197. package/dist/src/utility/index.js.map +1 -0
  198. package/package.json +8 -3
  199. package/dist/src/components/example/ExampleFilterList.js +0 -19
  200. package/dist/src/components/example/ExampleResultCardProduct.js +0 -18
  201. package/dist/src/components/example/ExampleResultPaginationNumbered.js +0 -26
  202. package/dist/src/components/example/ExampleSortby.js +0 -12
  203. package/dist/src/hooks/reactivesearch/useReactiveResultStackProps.d.ts +0 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SensorSort.js","sourceRoot":"","sources":["../../../../src/components/Sensor/SensorSort.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\nimport ReactiveComponent from \"@appbaseio/reactivesearch/lib/components/basic/ReactiveComponent\";\n\nimport { ConfigCuration, ConfigSort } from \"../../types\";\nimport { useReactifySearchContext, useSortby, useCuration } from \"../../hooks\";\n\nexport const SensorSort: React.FC = () => {\n const { options, config } = useReactifySearchContext();\n const curation = useCuration();\n const globalCuration = curation?.id === \"global\";\n\n const { sortOption } = useSortby();\n\n const { sort, query } = React.useMemo(() => {\n return {\n sort: buildSort({\n sortOption,\n collection: options.mode === \"collection\" ? options.collection : undefined,\n curation,\n globalCuration,\n }),\n query: buildQuery({\n sortOption,\n curation,\n globalCuration,\n }),\n };\n }, [config, sortOption, curation]);\n\n return (\n <ReactiveComponent\n componentId=\"SensorSort\"\n customQuery={() => ({\n sort,\n query,\n })}\n />\n );\n};\n\nconst buildSort = (args: {\n globalCuration?: boolean;\n sortOption?: ConfigSort;\n curation?: ConfigCuration;\n collection?: {\n id: number;\n title: string;\n handle: string;\n };\n}): any[] => {\n const { curation, sortOption, collection, globalCuration } = args;\n\n // return default sort option if unset\n if (!sortOption) {\n return collection\n ? mapCollectionPositionSortClause(collection)\n : [\"_score\"];\n }\n\n // curation positions are only applied for the default `collections.position` or `_score` sort\n // if the sort is something else, apply a normal sort which applies what the user has requested\n if (![\"_score\", \"collections.position\"].includes(sortOption.field)) {\n return [{ [sortOption.field]: sortOption.direction }];\n }\n\n // no matching curation, return default sort clause\n if (!curation) {\n return collection\n ? mapCollectionPositionSortClause(collection)\n : [\"_score\"];\n }\n\n const sorts = [];\n\n // show pins first\n if (globalCuration && collection) {\n sorts.push(...mapCollectionPositionSortClause(collection));\n } else {\n sorts.push({\n \"curations.position\": {\n unmapped_type: \"long\",\n order: \"asc\",\n nested: {\n path: \"curations\",\n filter: {\n term: {\n [`curations.${\n \"collection\" === curation.type\n ? \"collectionHandle\"\n : \"searchTerm\"\n }.keyword`]:\n \"collection\" === curation.type\n ? curation.collectionHandle\n : curation.searchTerm?.toLowerCase(),\n },\n },\n },\n },\n });\n }\n\n if (0 < curation.boosting.groupings.length) {\n const groupings = curation.boosting.groupings.sort((a, b) =>\n a.position > b.position ? 1 : -1\n );\n\n for (const grouping of groupings) {\n try {\n const query = JSON.parse(grouping.query);\n if (query) sorts.push(query);\n } catch {\n console.error(`query could not be parsed for boost grouping`, grouping);\n }\n }\n }\n\n if (0 < curation.boosting.sortings.length) {\n const sortings = curation.boosting.sortings.sort((a, b) =>\n a.position > b.position ? 1 : -1\n );\n\n for (const sorting of sortings) {\n try {\n const query = JSON.parse(sorting.query);\n if (query) sorts.push(query);\n } catch {\n console.error(`query could not be parsed for boost sorting`, sorting);\n }\n }\n }\n\n // finally, for collections, if no other sorting is defined, sort by index order to provide\n // a consistent order\n if (\"collection\" === curation.type && sorts.length === 0) {\n sorts.push(\"_doc\");\n }\n\n // finally, for search, sort by score\n if (\"search\" === curation.type) {\n sorts.push(\"_score\");\n }\n\n return sorts;\n};\n\n/**\n * Return a sort clause which sorts by position within the given collection.\n */\nfunction mapCollectionPositionSortClause(\n collection: NonNullable<{\n id: number;\n title: string;\n handle: string;\n }>\n) {\n return [\n {\n \"collections.position\": {\n order: \"asc\",\n nested: {\n path: \"collections\",\n filter: {\n term: {\n \"collections.handle.keyword\": collection.handle,\n },\n },\n },\n },\n },\n ];\n}\n\nconst buildQuery = (args: {\n sortOption?: ConfigSort;\n curation?: ConfigCuration;\n globalCuration?: boolean;\n}): Record<string, any> | undefined => {\n const { curation, sortOption, globalCuration } = args;\n\n if (!curation || globalCuration) {\n return undefined;\n }\n\n return {\n bool: {\n must_not: [\n {\n nested: {\n path: \"curations\",\n query: {\n bool: {\n must: [\n {\n term: {\n [`curations.${\n \"collection\" === curation.type\n ? \"collectionHandle\"\n : \"searchTerm\"\n }.keyword`]:\n \"collection\" === curation.type\n ? curation.collectionHandle\n : curation.searchTerm?.toLowerCase(),\n },\n },\n {\n term: {\n \"curations.hidden\": true,\n },\n },\n ],\n },\n },\n },\n },\n // hide callout when not sorting by _score or collections.position\n ...(sortOption &&\n ![\"_score\", \"collections.position\"].includes(sortOption.field)\n ? [\n {\n term: {\n type: \"callout\",\n },\n },\n ]\n : []),\n ],\n },\n };\n};\n"]}
@@ -10,3 +10,4 @@ const SensorSortScore = () => (react_1.default.createElement(ReactiveComponent_1
10
10
  sort: { _score: "desc" },
11
11
  }) }));
12
12
  exports.SensorSortScore = SensorSortScore;
13
+ //# sourceMappingURL=SensorSortScore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SensorSortScore.js","sourceRoot":"","sources":["../../../../src/components/Sensor/SensorSortScore.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,yHAAiG;AAE1F,MAAM,eAAe,GAAa,GAAG,EAAE,CAAC,CAC7C,8BAAC,2BAAiB,IAChB,WAAW,EAAC,iBAAiB,EAC7B,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAClB,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;KACzB,CAAC,GACF,CACH,CAAC;AAPW,QAAA,eAAe,mBAO1B","sourcesContent":["import React from \"react\";\nimport ReactiveComponent from \"@appbaseio/reactivesearch/lib/components/basic/ReactiveComponent\";\n\nexport const SensorSortScore: React.FC = () => (\n <ReactiveComponent\n componentId=\"SensorSortScore\"\n customQuery={() => ({\n sort: { _score: \"desc\" },\n })}\n />\n);\n"]}
@@ -29,3 +29,4 @@ const SensorStack = () => {
29
29
  react_1.default.createElement(SensorInventoryAvailable_1.SensorInventoryAvailable, null)));
30
30
  };
31
31
  exports.SensorStack = SensorStack;
32
+ //# sourceMappingURL=SensorStack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SensorStack.js","sourceRoot":"","sources":["../../../../src/components/Sensor/SensorStack.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAuD;AAEvD,6CAA0C;AAC1C,iDAA8C;AAC9C,uDAAoD;AACpD,uDAAoD;AACpD,yDAAsD;AACtD,yEAAsE;AAM/D,MAAM,WAAW,GAA+B,GAAG,EAAE;IAC1D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAE/C,sBAAsB;IACtB,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE;QACrC,OAAO,CACL;YACE,8BAAC,iCAAe,OAAG;YACnB,8BAAC,iCAAe,OAAG,CAClB,CACJ,CAAC;KACH;IAED,mBAAmB;IACnB,OAAO,CACL;QACE,8BAAC,uBAAU,OAAG;QACd,8BAAC,2BAAY,OAAG;QAChB,8BAAC,iCAAe,OAAG;QACnB,8BAAC,mCAAgB,OAAG;QACpB,8BAAC,mDAAwB,OAAG,CAC3B,CACJ,CAAC;AACJ,CAAC,CAAC;AAvBW,QAAA,WAAW,eAuBtB","sourcesContent":["import React from \"react\";\n\nimport { useReactifySearchContext } from \"../../hooks\";\n\nimport { SensorSort } from \"./SensorSort\";\nimport { SensorSearch } from \"./SensorSearch\";\nimport { SensorSortScore } from \"./SensorSortScore\";\nimport { SensorPublished } from \"./SensorPublished\";\nimport { SensorCollection } from \"./SensorCollection\";\nimport { SensorInventoryAvailable } from \"./SensorInventoryAvailable\";\n\nexport type SensorStackProps = {\n /** This component does not support any props */\n};\n\nexport const SensorStack: React.FC<SensorStackProps> = () => {\n const { options } = useReactifySearchContext();\n\n // instant search mode\n if (options.mode === \"instant-search\") {\n return (\n <>\n <SensorPublished />\n <SensorSortScore />\n </>\n );\n }\n\n // result grid mode\n return (\n <>\n <SensorSort />\n <SensorSearch />\n <SensorPublished />\n <SensorCollection />\n <SensorInventoryAvailable />\n </>\n );\n};\n"]}
@@ -27,3 +27,4 @@ exports.SENSOR_IDS = [
27
27
  "SensorCollection",
28
28
  "SensorInventoryAvailable",
29
29
  ];
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Sensor/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,iDAA+B;AAC/B,oDAAkC;AAClC,oDAAkC;AAClC,qDAAmC;AACnC,6DAA2C;AAE3C,gDAA8B;AAE9B,2DAA2D;AAC9C,QAAA,UAAU,GAAG;IACxB,YAAY;IACZ,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,kBAAkB;IAClB,0BAA0B;CAC3B,CAAC","sourcesContent":["export * from \"./SensorSort\";\nexport * from \"./SensorSearch\";\nexport * from \"./SensorPublished\";\nexport * from \"./SensorSortScore\";\nexport * from \"./SensorCollection\";\nexport * from \"./SensorInventoryAvailable\";\n\nexport * from \"./SensorStack\";\n\n// this is consumed by the react prop in various components\nexport const SENSOR_IDS = [\n \"SensorSort\",\n \"SensorSearch\",\n \"SensorSortScore\",\n \"SensorPublished\",\n \"SensorCollection\",\n \"SensorInventoryAvailable\",\n];\n"]}
@@ -14,3 +14,4 @@ const Sortby = (props) => {
14
14
  return (react_1.default.createElement(RenderSortOptionsComponent, Object.assign({}, sortbyData)));
15
15
  };
16
16
  exports.Sortby = Sortby;
17
+ //# sourceMappingURL=Sortby.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sortby.js","sourceRoot":"","sources":["../../../../src/components/Sortby/Sortby.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAwC;AACxC,iDAAiD;AAO1C,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;;IACrD,MAAM,UAAU,GAAG,IAAA,iBAAS,GAAE,CAAC;IAE/B,MAAM,0BAA0B,GAAG,MAAA,KAAK,CAAC,iBAAiB,mCAAI,0BAAa,CAAC;IAE5E,OAAO,CACL,8BAAC,0BAA0B,oBACrB,UAAU,EACd,CACH,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,MAAM,UAUjB","sourcesContent":["import React from \"react\";\n\nimport { useSortby } from \"../../hooks\";\nimport { ExampleSortby } from \"../../components\";\n\nexport type SortbyProps = {\n /** Render method called once for all sort options */\n renderSortOptions?: React.FC<ReturnType<typeof useSortby>>;\n};\n\nexport const Sortby: React.FC<SortbyProps> = (props) => {\n const sortbyData = useSortby();\n\n const RenderSortOptionsComponent = props.renderSortOptions ?? ExampleSortby;\n\n return (\n <RenderSortOptionsComponent\n {...sortbyData}\n />\n );\n};\n"]}
@@ -11,3 +11,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./Sortby"), exports);
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Sortby/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAyB","sourcesContent":["export * from \"./Sortby\";"]}
@@ -7,8 +7,9 @@ exports.UtilityAuthenticatedReactiveBase = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const hooks_1 = require("../../hooks");
9
9
  const ReactiveBase_1 = __importDefault(require("@appbaseio/reactivesearch/lib/components/basic/ReactiveBase"));
10
- const UtilityAuthenticatedReactiveBase = ({ children }) => {
11
- const props = (0, hooks_1.useReactiveBaseProps)();
12
- return react_1.default.createElement(ReactiveBase_1.default, Object.assign({}, props), children);
10
+ const UtilityAuthenticatedReactiveBase = (props) => {
11
+ const reactiveBaseProps = (0, hooks_1.useReactiveBaseProps)();
12
+ return (react_1.default.createElement(ReactiveBase_1.default, Object.assign({}, reactiveBaseProps), props.children));
13
13
  };
14
14
  exports.UtilityAuthenticatedReactiveBase = UtilityAuthenticatedReactiveBase;
15
+ //# sourceMappingURL=UtilityAuthenticatedReactiveBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UtilityAuthenticatedReactiveBase.js","sourceRoot":"","sources":["../../../../src/components/Utility/UtilityAuthenticatedReactiveBase.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,uCAAmD;AACnD,+GAAuF;AAEhF,MAAM,gCAAgC,GAAa,CAAC,KAAK,EAAE,EAAE;IAClE,MAAM,iBAAiB,GAAG,IAAA,4BAAoB,GAAE,CAAC;IAEjD,OAAO,CACL,8BAAC,sBAAY,oBACP,iBAAiB,GAEpB,KAAK,CAAC,QAAQ,CACF,CAChB,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,gCAAgC,oCAU3C","sourcesContent":["import React from \"react\";\nimport { useReactiveBaseProps } from \"../../hooks\";\nimport ReactiveBase from \"@appbaseio/reactivesearch/lib/components/basic/ReactiveBase\";\n\nexport const UtilityAuthenticatedReactiveBase: React.FC = (props) => {\n const reactiveBaseProps = useReactiveBaseProps();\n\n return (\n <ReactiveBase\n {...reactiveBaseProps}\n >\n {props.children}\n </ReactiveBase>\n );\n};\n"]}
@@ -11,3 +11,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./UtilityAuthenticatedReactiveBase"), exports);
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Utility/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qEAAmD","sourcesContent":["export * from \"./UtilityAuthenticatedReactiveBase\";"]}
@@ -1,8 +1,8 @@
1
- export * from "./context";
2
- export * from "./example";
3
- export * from "./filter";
4
- export * from "./result";
5
- export * from "./search";
6
- export * from "./sensor";
7
- export * from "./sortby";
8
- export * from "./utility";
1
+ export * from "./Example";
2
+ export * from "./Filter";
3
+ export * from "./ReactifySearchBase";
4
+ export * from "./Result";
5
+ export * from "./Search";
6
+ export * from "./Sensor";
7
+ export * from "./Sortby";
8
+ export * from "./Utility";
@@ -10,11 +10,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./context"), exports);
14
- __exportStar(require("./example"), exports);
15
- __exportStar(require("./filter"), exports);
16
- __exportStar(require("./result"), exports);
17
- __exportStar(require("./search"), exports);
18
- __exportStar(require("./sensor"), exports);
19
- __exportStar(require("./sortby"), exports);
20
- __exportStar(require("./utility"), exports);
13
+ __exportStar(require("./Example"), exports);
14
+ __exportStar(require("./Filter"), exports);
15
+ __exportStar(require("./ReactifySearchBase"), exports);
16
+ __exportStar(require("./Result"), exports);
17
+ __exportStar(require("./Search"), exports);
18
+ __exportStar(require("./Sensor"), exports);
19
+ __exportStar(require("./Sortby"), exports);
20
+ __exportStar(require("./Utility"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0B;AAC1B,2CAAyB;AACzB,uDAAqC;AACrC,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,4CAAyB","sourcesContent":["export * from \"./Example\";\nexport * from \"./Filter\";\nexport * from \"./ReactifySearchBase\";\nexport * from \"./Result\";\nexport * from \"./Search\";\nexport * from \"./Sensor\";\nexport * from \"./Sortby\";\nexport * from \"./Utility\""]}
@@ -1,4 +1,5 @@
1
1
  export * from "./reactivesearch";
2
+ export * from "./useDebugger";
2
3
  export * from "./useSortby";
3
4
  export * from "./usePagination";
4
5
  export * from "./usePaginationLoadMore";
@@ -11,6 +11,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./reactivesearch"), exports);
14
+ __exportStar(require("./useDebugger"), exports);
14
15
  __exportStar(require("./useSortby"), exports);
15
16
  __exportStar(require("./usePagination"), exports);
16
17
  __exportStar(require("./usePaginationLoadMore"), exports);
@@ -24,3 +25,4 @@ __exportStar(require("./useFilterListProps"), exports);
24
25
  __exportStar(require("./useFilterCollapsedState"), exports);
25
26
  __exportStar(require("./useConfig"), exports);
26
27
  __exportStar(require("./useReactifySearchContext"), exports);
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAAiC;AAEjC,gDAA8B;AAC9B,8CAA4B;AAC5B,kDAAgC;AAChC,0DAAwC;AACxC,8CAA4B;AAC5B,+CAA6B;AAC7B,gDAA8B;AAC9B,iDAA+B;AAC/B,mDAAiC;AACjC,oDAAkC;AAClC,uDAAqC;AACrC,4DAA0C;AAC1C,8CAA4B;AAC5B,6DAA2C","sourcesContent":["export * from \"./reactivesearch\";\n\nexport * from \"./useDebugger\";\nexport * from \"./useSortby\";\nexport * from \"./usePagination\";\nexport * from \"./usePaginationLoadMore\";\nexport * from \"./useSearch\";\nexport * from \"./useFilters\";\nexport * from \"./useCuration\";\nexport * from \"./useAnalytics\";\nexport * from \"./useFilterStack\";\nexport * from \"./useProductPrice\";\nexport * from \"./useFilterListProps\";\nexport * from \"./useFilterCollapsedState\";\nexport * from \"./useConfig\";\nexport * from \"./useReactifySearchContext\";\n"]}
@@ -1,8 +1,8 @@
1
1
  export * from "./useReactiveBaseProps";
2
- export * from "./useReactiveReactProp";
2
+ export * from "./useReactiveDataSearchProps";
3
3
  export * from "./useReactiveFilterListProps";
4
4
  export * from "./useReactiveFilterRangeProps";
5
5
  export * from "./useReactiveFilterSliderProps";
6
6
  export * from "./useReactiveFilterSharedProps";
7
- export * from "./useReactiveResultStackProps";
8
- export * from "./useReactiveDataSearchProps";
7
+ export * from "./useReactiveReactProp";
8
+ export * from "./useReactiveReactiveListProps";
@@ -11,10 +11,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./useReactiveBaseProps"), exports);
14
- __exportStar(require("./useReactiveReactProp"), exports);
14
+ __exportStar(require("./useReactiveDataSearchProps"), exports);
15
15
  __exportStar(require("./useReactiveFilterListProps"), exports);
16
16
  __exportStar(require("./useReactiveFilterRangeProps"), exports);
17
17
  __exportStar(require("./useReactiveFilterSliderProps"), exports);
18
18
  __exportStar(require("./useReactiveFilterSharedProps"), exports);
19
- __exportStar(require("./useReactiveResultStackProps"), exports);
20
- __exportStar(require("./useReactiveDataSearchProps"), exports);
19
+ __exportStar(require("./useReactiveReactProp"), exports);
20
+ __exportStar(require("./useReactiveReactiveListProps"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC;AACvC,+DAA6C;AAC7C,+DAA6C;AAC7C,gEAA8C;AAC9C,iEAA+C;AAC/C,iEAA+C;AAC/C,yDAAuC;AACvC,iEAA+C","sourcesContent":["export * from \"./useReactiveBaseProps\";\nexport * from \"./useReactiveDataSearchProps\";\nexport * from \"./useReactiveFilterListProps\";\nexport * from \"./useReactiveFilterRangeProps\";\nexport * from \"./useReactiveFilterSliderProps\";\nexport * from \"./useReactiveFilterSharedProps\";\nexport * from \"./useReactiveReactProp\";\nexport * from \"./useReactiveReactiveListProps\";\n"]}
@@ -17,7 +17,7 @@ const react_1 = __importDefault(require("react"));
17
17
  const hooks_1 = require("../../hooks");
18
18
  const useReactiveBaseProps = () => {
19
19
  const { options } = (0, hooks_1.useReactifySearchContext)();
20
- return react_1.default.useMemo(() => ({
20
+ const reactiveBaseProps = react_1.default.useMemo(() => ({
21
21
  app: options.index,
22
22
  url: options.credentials.endpoint,
23
23
  credentials: `${options.credentials.username}:${options.credentials.password}`,
@@ -39,5 +39,7 @@ const useReactiveBaseProps = () => {
39
39
  return response;
40
40
  }),
41
41
  }), [options.credentials, options.theme]);
42
+ return reactiveBaseProps;
42
43
  };
43
44
  exports.useReactiveBaseProps = useReactiveBaseProps;
45
+ //# sourceMappingURL=useReactiveBaseProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveBaseProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveBaseProps.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,uCAAuD;AAEhD,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAE/C,MAAM,iBAAiB,GAAG,eAAK,CAAC,OAAO,CACrC,GAAG,EAAE,CAAC,CAAC;QACL,GAAG,EAAE,OAAO,CAAC,KAAK;QAClB,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ;QACjC,WAAW,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE;QAC9E,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,iBAAiB,EAAE,CAAO,QAAa,EAAE,EAAE;;YACzC,+EAA+E;YAC/E,uDAAuD;YACvD,EAAE;YACF,qFAAqF;YACrF,qFAAqF;YACrF,kEAAkE;YAClE,EAAE;YACF,0DAA0D;YAC1D,IACE,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,0CAAE,qBAAqB,0CAAE,qBAAqB,EACpE;gBACA,QAAQ,CAAC,YAAY,CAAC,qBAAqB;oBACzC,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,0CAAE,qBAAqB,0CAAE,qBAAqB,CAAC;aACxE;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAA;KACF,CAAC,EACF,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CACrC,CAAC;IAEF,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AAhCW,QAAA,oBAAoB,wBAgC/B","sourcesContent":["import React from \"react\";\nimport { useReactifySearchContext } from \"../../hooks\";\n\nexport const useReactiveBaseProps = () => {\n const { options } = useReactifySearchContext();\n\n const reactiveBaseProps = React.useMemo(\n () => ({\n app: options.index,\n url: options.credentials.endpoint,\n credentials: `${options.credentials.username}:${options.credentials.password}`,\n theme: options.theme,\n transformResponse: async (response: any) => {\n // support filtering inside nested aggregations by moving the inner aggregation\n // up one level such that reactivesearch understands it\n //\n // see useReactiveFilterListProps > defaultQuery to see how a filter is being applied\n // to variant aggregations to ensure that only in stock sizes are displayed as filter\n // options, this involves a nested filter, which requires this fix\n //\n // https://github.com/appbaseio/reactivesearch/issues/1530\n if (\n response?.aggregations?.reactivesearch_nested?.reactify_nested_outer\n ) {\n response.aggregations.reactivesearch_nested =\n response?.aggregations?.reactivesearch_nested?.reactify_nested_outer;\n }\n\n return response;\n },\n }),\n [options.credentials, options.theme]\n );\n\n return reactiveBaseProps;\n};\n"]}
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.useReactiveDataSearchProps = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const ahooks_1 = require("ahooks");
9
- const debug = require("debug")("reactify-search:useReactiveDataSearchProps");
10
9
  const hooks_1 = require("../../hooks");
11
10
  // default field for when zero search fields have been configured in Reactify
12
11
  const defaultSearchField = {
@@ -39,7 +38,7 @@ const useReactiveDataSearchProps = (options) => {
39
38
  }, {
40
39
  wait: (_a = options.debounce) !== null && _a !== void 0 ? _a : 300,
41
40
  });
42
- return react_1.default.useMemo(() => {
41
+ const reactiveDataSearchProps = react_1.default.useMemo(() => {
43
42
  var _a;
44
43
  return (Object.assign({ type: "search", showIcon: false, fuzziness: 1, queryFormat: "and", autosuggest: false, value: searchQuery !== null && searchQuery !== void 0 ? searchQuery : "", onKeyUp: handleKeyPress, componentId: "SearchInput", placeholder: (_a = options.placeholder) !== null && _a !== void 0 ? _a : "Search for a product...", dataField: searchFields.map((field) => field.field), fieldWeights: searchFields.map((field) => field.importance), onChange: (value, triggerQuery) => {
45
44
  setSearchQuery(value);
@@ -66,5 +65,7 @@ const useReactiveDataSearchProps = (options) => {
66
65
  runDebouncedTriggerQuery,
67
66
  cancelDebouncedTriggerQuery,
68
67
  ]);
68
+ return reactiveDataSearchProps;
69
69
  };
70
70
  exports.useReactiveDataSearchProps = useReactiveDataSearchProps;
71
+ //# sourceMappingURL=useReactiveDataSearchProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveDataSearchProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveDataSearchProps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,mCAAuC;AAIvC,uCAAgF;AAEhF,6EAA6E;AAC7E,MAAM,kBAAkB,GAAgB;IACtC,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,gBAAgB;CAC7B,CAAC;AAEK,MAAM,0BAA0B,GAAG,CAAC,OAK1C,EAAE,EAAE;;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAC9C,MAAM,EACJ,WAAW,EACX,YAAY,EACZ,cAAc,EACd,2BAA2B,GAC5B,GAAG,IAAA,iBAAS,GAAE,CAAC;IAEhB,MAAM,YAAY,GAAG,eAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CACH,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM;QACtB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7B,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAC/D;QACH,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAC1B,EAAE,CACH,CAAC;IAEF,MAAM,cAAc,GAAG,eAAK,CAAC,WAAW,CACtC,CAAC,CAAC,EAAE,EAAE;QACJ,IAAI,OAAO,KAAK,CAAC,CAAC,GAAG;YAAE,OAAO;QAC9B,YAAY,EAAE,CAAC;IACjB,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,oBAAY,GAAE,CAAC;IAEjC,MAAM,UAAU,GAAG,eAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACxC,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YAAE,OAAO;QACpE,KAAK,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IAEzB,MAAM,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,2BAA2B,EAAE,GAC1E,IAAA,sBAAa,EACX,CAAC,YAAwB,EAAE,EAAE;QAC3B,YAAY,EAAE,CAAC;QACf,UAAU,EAAE,CAAC;IACf,CAAC,EACD;QACE,IAAI,EAAE,MAAA,OAAO,CAAC,QAAQ,mCAAI,GAAG;KAC9B,CACF,CAAC;IAEJ,MAAM,uBAAuB,GAAG,eAAK,CAAC,OAAO,CAC3C,GAAG,EAAE;;QAAC,OAAA,iBACJ,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,KAAK,EACf,SAAS,EAAE,CAAuB,EAClC,WAAW,EAAE,KAAqB,EAClC,WAAW,EAAE,KAAK,EAClB,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,EACxB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,aAAa,EAC1B,WAAW,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,yBAAyB,EAC7D,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EACnD,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAC3D,QAAQ,EAAE,CAAC,KAAa,EAAE,YAAsB,EAAE,EAAE;gBAClD,cAAc,CAAC,KAAK,CAAC,CAAC;gBACtB,IAAI,CAAC,CAAC,KAAK,EAAE;oBACX,wBAAwB,CAAC,YAAY,CAAC,CAAC;iBACxC;qBAAM;oBACL,2BAA2B,EAAE,CAAC;iBAC/B;YACH,CAAC,EACD,MAAM,EAAE,GAAG,EAAE;gBACX,mEAAmE;gBACnE,UAAU,CAAC,GAAG,EAAE,CAAC,2BAA2B,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC,EACD,OAAO,EAAE,GAAG,EAAE;gBACZ,2BAA2B,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC,EACD,UAAU,EAAE;gBACV,KAAK,EAAE,OAAO,CAAC,cAAc;aAC9B,IACE,OAAO,EACV,CAAA;KAAA,EACF;QACE,WAAW;QACX,cAAc;QACd,OAAO,CAAC,WAAW;QACnB,YAAY;QACZ,cAAc;QACd,wBAAwB;QACxB,2BAA2B;KAC5B,CACF,CAAC;IAEF,OAAO,uBAAuB,CAAC;AACjC,CAAC,CAAC;AA/FW,QAAA,0BAA0B,8BA+FrC","sourcesContent":["import React from \"react\";\nimport { useDebounceFn } from \"ahooks\";\n\nimport type { ConfigField } from \"../../types/config\";\n\nimport { useReactifySearchContext, useSearch, useAnalytics } from \"../../hooks\";\n\n// default field for when zero search fields have been configured in Reactify\nconst defaultSearchField: ConfigField = {\n id: \"title\",\n field: \"title\",\n importance: 0,\n searchType: \"instant_search\",\n};\n\nexport const useReactiveDataSearchProps = (options: {\n [key: string]: any;\n debounce?: number;\n placeholder?: string;\n inputClassName?: string;\n}) => {\n const { config } = useReactifySearchContext();\n const {\n searchQuery,\n submitSearch,\n setSearchQuery,\n setShowInstantSearchResults,\n } = useSearch();\n\n const searchFields = React.useMemo(\n () =>\n 0 < config.fields.length\n ? config.fields.filter((field) =>\n [\"always_search\", \"instant_search\"].includes(field.searchType)\n )\n : [defaultSearchField],\n []\n );\n\n const handleKeyPress = React.useCallback(\n (e) => {\n if (\"Enter\" !== e.key) return;\n submitSearch();\n },\n [submitSearch]\n );\n\n const { track } = useAnalytics();\n\n const trackQuery = React.useCallback(() => {\n if (!searchQuery || (searchQuery && searchQuery.length < 3)) return;\n track({ eventName: \"search\", payload: { searchTerm: searchQuery } });\n }, [searchQuery, track]);\n\n const { run: runDebouncedTriggerQuery, cancel: cancelDebouncedTriggerQuery } =\n useDebounceFn(\n (triggerQuery: () => void) => {\n triggerQuery();\n trackQuery();\n },\n {\n wait: options.debounce ?? 300,\n }\n );\n\n const reactiveDataSearchProps = React.useMemo(\n () => ({\n type: \"search\",\n showIcon: false,\n fuzziness: 1 as 0 | 1 | 2 | \"AUTO\",\n queryFormat: \"and\" as \"and\" | \"or\",\n autosuggest: false,\n value: searchQuery ?? \"\",\n onKeyUp: handleKeyPress,\n componentId: \"SearchInput\",\n placeholder: options.placeholder ?? \"Search for a product...\",\n dataField: searchFields.map((field) => field.field),\n fieldWeights: searchFields.map((field) => field.importance),\n onChange: (value: string, triggerQuery: () => {}) => {\n setSearchQuery(value);\n if (!!value) {\n runDebouncedTriggerQuery(triggerQuery);\n } else {\n cancelDebouncedTriggerQuery();\n }\n },\n onBlur: () => {\n // setTimeout ensures that results are still clickable before close\n setTimeout(() => setShowInstantSearchResults(false), 300);\n },\n onFocus: () => {\n setShowInstantSearchResults(true);\n },\n innerClass: {\n input: options.inputClassName,\n },\n ...options,\n }),\n [\n searchQuery,\n handleKeyPress,\n options.placeholder,\n searchFields,\n setSearchQuery,\n runDebouncedTriggerQuery,\n cancelDebouncedTriggerQuery,\n ]\n );\n\n return reactiveDataSearchProps;\n};\n"]}
@@ -13,9 +13,11 @@ const useReactiveReactProp_1 = require("./useReactiveReactProp");
13
13
  const useReactiveFilterListProps = (filter) => {
14
14
  const reactiveReactProp = (0, useReactiveReactProp_1.useReactiveReactProp)(filter.handle);
15
15
  const reactiveFilterSharedProps = (0, useReactiveFilterSharedProps_1.useReactiveFilterSharedProps)(filter);
16
- return react_1.default.useMemo(() => {
16
+ const reactiveFilterListProps = react_1.default.useMemo(() => {
17
17
  var _a, _b, _c;
18
18
  return (Object.assign(Object.assign({}, reactiveFilterSharedProps), { size: parseInt(filter.displaySize) || undefined, showFilter: (_a = filter.settingsShowFilter) !== null && _a !== void 0 ? _a : true, showLoadMore: (_b = filter.settingsShowMore) !== null && _b !== void 0 ? _b : false, showSearch: (_c = filter.settingsShowSearch) !== null && _c !== void 0 ? _c : false, showRadio: false, showCheckbox: false }));
19
19
  }, [filter, reactiveReactProp]);
20
+ return reactiveFilterListProps;
20
21
  };
21
22
  exports.useReactiveFilterListProps = useReactiveFilterListProps;
23
+ //# sourceMappingURL=useReactiveFilterListProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveFilterListProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveFilterListProps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,iFAA8E;AAE9E,iEAA8D;AAE9D;;GAEG;AACI,MAAM,0BAA0B,GAAG,CAAC,MAA0B,EAAE,EAAE;IACvE,MAAM,iBAAiB,GAAG,IAAA,2CAAoB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,yBAAyB,GAAG,IAAA,2DAA4B,EAAC,MAAM,CAAC,CAAC;IAEvE,MAAM,uBAAuB,GAAG,eAAK,CAAC,OAAO,CAC3C,GAAG,EAAE;;QAAC,OAAA,iCACD,yBAAyB,KAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,SAAS,EAC/C,UAAU,EAAE,MAAA,MAAM,CAAC,kBAAkB,mCAAI,IAAI,EAC7C,YAAY,EAAE,MAAA,MAAM,CAAC,gBAAgB,mCAAI,KAAK,EAC9C,UAAU,EAAE,MAAA,MAAM,CAAC,kBAAkB,mCAAI,KAAK,EAC9C,SAAS,EAAE,KAAK,EAChB,YAAY,EAAE,KAAK,IACnB,CAAA;KAAA,EACF,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAC5B,CAAC;IAEF,OAAO,uBAAuB,CAAC;AACjC,CAAC,CAAC;AAlBW,QAAA,0BAA0B,8BAkBrC","sourcesContent":["import React from \"react\";\n\nimport type { ConfigFilterOption } from \"../../types/config\";\nimport { useReactiveFilterSharedProps } from \"./useReactiveFilterSharedProps\";\n\nimport { useReactiveReactProp } from \"./useReactiveReactProp\";\n\n/**\n * For use with @appbaseio/reactivesearch SingleList and MultiList components\n */\nexport const useReactiveFilterListProps = (filter: ConfigFilterOption) => {\n const reactiveReactProp = useReactiveReactProp(filter.handle);\n const reactiveFilterSharedProps = useReactiveFilterSharedProps(filter);\n\n const reactiveFilterListProps = React.useMemo(\n () => ({\n ...reactiveFilterSharedProps,\n size: parseInt(filter.displaySize) || undefined,\n showFilter: filter.settingsShowFilter ?? true,\n showLoadMore: filter.settingsShowMore ?? false,\n showSearch: filter.settingsShowSearch ?? false,\n showRadio: false,\n showCheckbox: false,\n }),\n [filter, reactiveReactProp]\n );\n\n return reactiveFilterListProps;\n};\n"]}
@@ -13,9 +13,11 @@ const useReactiveReactProp_1 = require("./useReactiveReactProp");
13
13
  const useReactiveFilterRangeProps = (filter) => {
14
14
  const reactiveReactProp = (0, useReactiveReactProp_1.useReactiveReactProp)(filter.handle);
15
15
  const reactiveFilterSharedProps = (0, useReactiveFilterSharedProps_1.useReactiveFilterSharedProps)(filter);
16
- return react_1.default.useMemo(() => {
16
+ const reactiveFilterRangeProps = react_1.default.useMemo(() => {
17
17
  var _a;
18
18
  return (Object.assign(Object.assign({}, reactiveFilterSharedProps), { showFilter: (_a = filter.settingsShowFilter) !== null && _a !== void 0 ? _a : true, showRadio: false, showCheckbox: false }));
19
19
  }, [filter, reactiveReactProp]);
20
+ return reactiveFilterRangeProps;
20
21
  };
21
22
  exports.useReactiveFilterRangeProps = useReactiveFilterRangeProps;
23
+ //# sourceMappingURL=useReactiveFilterRangeProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveFilterRangeProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveFilterRangeProps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,iFAA8E;AAE9E,iEAA8D;AAE9D;;GAEG;AACI,MAAM,2BAA2B,GAAG,CAAC,MAA0B,EAAE,EAAE;IACxE,MAAM,iBAAiB,GAAG,IAAA,2CAAoB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,yBAAyB,GAAG,IAAA,2DAA4B,EAAC,MAAM,CAAC,CAAC;IAEvE,MAAM,wBAAwB,GAAG,eAAK,CAAC,OAAO,CAC5C,GAAG,EAAE;;QAAC,OAAA,iCACD,yBAAyB,KAC5B,UAAU,EAAE,MAAA,MAAM,CAAC,kBAAkB,mCAAI,IAAI,EAC7C,SAAS,EAAE,KAAK,EAChB,YAAY,EAAE,KAAK,IACnB,CAAA;KAAA,EACF,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAC5B,CAAC;IAEF,OAAO,wBAAwB,CAAC;AAClC,CAAC,CAAC;AAfW,QAAA,2BAA2B,+BAetC","sourcesContent":["import React from \"react\";\n\nimport type { ConfigFilterOption } from \"../../types/config\";\nimport { useReactiveFilterSharedProps } from \"./useReactiveFilterSharedProps\";\n\nimport { useReactiveReactProp } from \"./useReactiveReactProp\";\n\n/**\n * For use with @appbaseio/reactivesearch SingleRange and MultiRange components\n */\nexport const useReactiveFilterRangeProps = (filter: ConfigFilterOption) => {\n const reactiveReactProp = useReactiveReactProp(filter.handle);\n const reactiveFilterSharedProps = useReactiveFilterSharedProps(filter);\n\n const reactiveFilterRangeProps = React.useMemo(\n () => ({\n ...reactiveFilterSharedProps,\n showFilter: filter.settingsShowFilter ?? true,\n showRadio: false,\n showCheckbox: false,\n }),\n [filter, reactiveReactProp]\n );\n\n return reactiveFilterRangeProps;\n};\n"]}
@@ -91,7 +91,7 @@ const useReactiveFilterSharedProps = (filter) => {
91
91
  };
92
92
  };
93
93
  }, [filter]);
94
- return react_1.default.useMemo(() => ({
94
+ const reactiveFilterSharedProps = react_1.default.useMemo(() => ({
95
95
  nestedField,
96
96
  customQuery,
97
97
  defaultQuery,
@@ -101,5 +101,7 @@ const useReactiveFilterSharedProps = (filter) => {
101
101
  filterLabel: filter.name,
102
102
  react: reactiveReactProp,
103
103
  }), [filter, reactiveReactProp]);
104
+ return reactiveFilterSharedProps;
104
105
  };
105
106
  exports.useReactiveFilterSharedProps = useReactiveFilterSharedProps;
107
+ //# sourceMappingURL=useReactiveFilterSharedProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveFilterSharedProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveFilterSharedProps.ts"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\n\nimport type { ConfigFilterOption } from \"../../types/config\";\n\nimport { useReactiveReactProp } from \"./useReactiveReactProp\";\n\n/**\n * For use with all @appbaseio/reactivesearch filter components\n */\nexport const useReactiveFilterSharedProps = (filter: ConfigFilterOption) => {\n const reactiveReactProp = useReactiveReactProp(filter.handle);\n\n const nestedField = React.useMemo(() => {\n const nestedFields = [\"variants\"];\n const topField = filter.field.split(\".\")[0];\n if (nestedFields.includes(topField)) return topField;\n return undefined;\n }, [filter]);\n\n // define a custom query for when settingsHideUnavailable is enabled and the target field is inside variants\n // customQuery defines how this filter affects *other* components like the results component\n const customQuery = React.useMemo(() => {\n if (\n !filter.settingsHideUnavailable ||\n !filter.field.startsWith(\"variants.\")\n )\n return undefined;\n\n return (value?: string | string[]) => {\n if (!value) return {};\n\n // reactivesearch sometimes returns string, sometimes string[]\n const valueArray = \"string\" === typeof value ? [value] : value;\n\n if (0 === valueArray.length) return {};\n\n return {\n query: {\n nested: {\n path: \"variants\",\n query: {\n bool: {\n must: [\n {\n match: {\n \"variants.available\": \"true\",\n },\n },\n {\n terms: {\n [filter.field]: valueArray,\n },\n },\n ],\n },\n },\n },\n },\n };\n };\n }, [filter]);\n\n // define a default query for when settingsHideUnavailable is enabled and the target field is inside variants\n // defaultQuery defines how this filter affects itself i.e. the options displayed\n const defaultQuery = React.useMemo(() => {\n if (\n !filter.settingsHideUnavailable ||\n !filter.field.startsWith(\"variants.\")\n )\n return undefined;\n\n // override the aggregation query to filter the results by the variants.available attribute\n return () => {\n return {\n aggs: {\n reactivesearch_nested: {\n nested: { path: \"variants\" },\n aggs: {\n reactify_nested_outer: {\n filter: {\n match: {\n \"variants.available\": \"true\",\n },\n },\n aggs: {\n [filter.field]: {\n terms: {\n field: filter.field,\n size: 100,\n order: { _count: \"desc\" },\n },\n },\n },\n },\n },\n },\n },\n };\n };\n }, [filter]);\n\n const reactiveFilterSharedProps = React.useMemo(\n () => ({\n nestedField,\n customQuery,\n defaultQuery,\n URLParams: true,\n componentId: filter.handle,\n dataField: filter.field,\n filterLabel: filter.name,\n react: reactiveReactProp,\n }),\n [filter, reactiveReactProp]\n );\n\n return reactiveFilterSharedProps;\n};\n"]}
@@ -13,9 +13,11 @@ const useReactiveReactProp_1 = require("./useReactiveReactProp");
13
13
  const useReactiveFilterSliderProps = (filter) => {
14
14
  const reactiveReactProp = (0, useReactiveReactProp_1.useReactiveReactProp)(filter.handle);
15
15
  const reactiveFilterSharedProps = (0, useReactiveFilterSharedProps_1.useReactiveFilterSharedProps)(filter);
16
- return react_1.default.useMemo(() => {
16
+ const reactiveFilterSliderProps = react_1.default.useMemo(() => {
17
17
  var _a;
18
18
  return (Object.assign(Object.assign({}, reactiveFilterSharedProps), { showFilter: (_a = filter.settingsShowFilter) !== null && _a !== void 0 ? _a : true }));
19
19
  }, [filter, reactiveReactProp]);
20
+ return reactiveFilterSliderProps;
20
21
  };
21
22
  exports.useReactiveFilterSliderProps = useReactiveFilterSliderProps;
23
+ //# sourceMappingURL=useReactiveFilterSliderProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveFilterSliderProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveFilterSliderProps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,iFAA8E;AAE9E,iEAA8D;AAE9D;;GAEG;AACI,MAAM,4BAA4B,GAAG,CAAC,MAA0B,EAAE,EAAE;IACzE,MAAM,iBAAiB,GAAG,IAAA,2CAAoB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,yBAAyB,GAAG,IAAA,2DAA4B,EAAC,MAAM,CAAC,CAAC;IAEvE,MAAM,yBAAyB,GAAG,eAAK,CAAC,OAAO,CAC7C,GAAG,EAAE;;QAAC,OAAA,iCACD,yBAAyB,KAC5B,UAAU,EAAE,MAAA,MAAM,CAAC,kBAAkB,mCAAI,IAAI,IAC7C,CAAA;KAAA,EACF,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAC5B,CAAC;IAEF,OAAO,yBAAyB,CAAC;AACnC,CAAC,CAAC;AAbW,QAAA,4BAA4B,gCAavC","sourcesContent":["import React from \"react\";\n\nimport type { ConfigFilterOption } from \"../../types/config\";\nimport { useReactiveFilterSharedProps } from \"./useReactiveFilterSharedProps\";\n\nimport { useReactiveReactProp } from \"./useReactiveReactProp\";\n\n/**\n * For use with @appbaseio/reactivesearch RangeSlider component\n */\nexport const useReactiveFilterSliderProps = (filter: ConfigFilterOption) => {\n const reactiveReactProp = useReactiveReactProp(filter.handle);\n const reactiveFilterSharedProps = useReactiveFilterSharedProps(filter);\n\n const reactiveFilterSliderProps = React.useMemo(\n () => ({\n ...reactiveFilterSharedProps,\n showFilter: filter.settingsShowFilter ?? true,\n }),\n [filter, reactiveReactProp]\n );\n\n return reactiveFilterSliderProps;\n};\n"]}
@@ -23,3 +23,4 @@ const useReactiveReactProp = (currentHandle) => {
23
23
  }, [filters, currentHandle, options.additionalComponentHandles]);
24
24
  };
25
25
  exports.useReactiveReactProp = useReactiveReactProp;
26
+ //# sourceMappingURL=useReactiveReactProp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveReactProp.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveReactProp.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,uCAAmE;AACnE,iDAA8C;AAEvC,MAAM,oBAAoB,GAAG,CAAC,aAAsB,EAAE,EAAE;IAC7D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kBAAU,GAAE,CAAC;IAEjC,OAAO,eAAK,CAAC,OAAO,CAAC,GAAG,EAAE;;QACxB,OAAO;YACL,GAAG,EAAE;gBACH,aAAa;gBACb,GAAG,uBAAU;gBACb,GAAG,CAAC,MAAA,OAAO,CAAC,0BAA0B,mCAAI,EAAE,CAAC;gBAC7C,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;aAC1C,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,aAAa,CAAC;SAC/C,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B","sourcesContent":["import React from \"react\";\n\nimport { useReactifySearchContext, useFilters } from \"../../hooks\";\nimport { SENSOR_IDS } from \"../../components\";\n\nexport const useReactiveReactProp = (currentHandle?: string) => {\n const { options } = useReactifySearchContext();\n const { filters } = useFilters();\n\n return React.useMemo(() => {\n return {\n and: [\n \"SearchInput\",\n ...SENSOR_IDS,\n ...(options.additionalComponentHandles ?? []),\n ...filters.map((filter) => filter.handle),\n ].filter((handle) => handle !== currentHandle),\n };\n }, [filters, currentHandle, options.additionalComponentHandles]);\n};\n"]}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import ReactiveList from "@appbaseio/reactivesearch/lib/components/result/ReactiveList";
3
+ export declare const useReactiveReactiveListProps: (options: {
4
+ pageSize?: number;
5
+ }) => React.ComponentProps<typeof ReactiveList>;
@@ -3,18 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.useReactiveResultStackProps = void 0;
6
+ exports.useReactiveReactiveListProps = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const hooks_1 = require("../../hooks");
9
9
  const useReactiveReactProp_1 = require("./useReactiveReactProp");
10
- const useReactiveResultStackProps = (options) => {
11
- const filterStack = (0, hooks_1.useFilterStack)();
10
+ const useReactiveReactiveListProps = (options) => {
11
+ const { filterStack } = (0, hooks_1.useFilterStack)();
12
12
  const reactiveReactProp = (0, useReactiveReactProp_1.useReactiveReactProp)();
13
13
  const size = react_1.default.useMemo(() => {
14
14
  var _a, _b;
15
15
  return (_b = (_a = options.pageSize) !== null && _a !== void 0 ? _a : filterStack === null || filterStack === void 0 ? void 0 : filterStack.pageSize) !== null && _b !== void 0 ? _b : 20;
16
16
  }, [options.pageSize, filterStack]);
17
- return react_1.default.useMemo(() => ({
17
+ const reactiveReactiveListProps = react_1.default.useMemo(() => ({
18
18
  size,
19
19
  URLParams: true,
20
20
  showLoader: false,
@@ -27,5 +27,7 @@ const useReactiveResultStackProps = (options) => {
27
27
  infiniteScroll: (filterStack === null || filterStack === void 0 ? void 0 : filterStack.paginationType) === "infinite_scroll",
28
28
  renderNoResults: () => null, // always use only render, otherwise both are shown
29
29
  }), [filterStack, reactiveReactProp, options.pageSize]);
30
+ return reactiveReactiveListProps;
30
31
  };
31
- exports.useReactiveResultStackProps = useReactiveResultStackProps;
32
+ exports.useReactiveReactiveListProps = useReactiveReactiveListProps;
33
+ //# sourceMappingURL=useReactiveReactiveListProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReactiveReactiveListProps.js","sourceRoot":"","sources":["../../../../src/hooks/reactivesearch/useReactiveReactiveListProps.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,uCAA6C;AAC7C,iEAA8D;AAEvD,MAAM,4BAA4B,GAAG,CAAC,OAE5C,EAA6C,EAAE;IAC9C,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,sBAAc,GAAE,CAAC;IACzC,MAAM,iBAAiB,GAAG,IAAA,2CAAoB,GAAE,CAAC;IAEjD,MAAM,IAAI,GAAG,eAAK,CAAC,OAAO,CAAC,GAAG,EAAE;;QAC9B,OAAO,MAAA,MAAA,OAAO,CAAC,QAAQ,mCAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,mCAAI,EAAE,CAAC;IACzD,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;IAEpC,MAAM,yBAAyB,GAAG,eAAK,CAAC,OAAO,CAC7C,GAAG,EAAE,CAAC,CAAC;QACL,IAAI;QACJ,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,OAAO;QAClB,eAAe,EAAE,KAAK;QACtB,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,KAAK;QACrB,UAAU,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,MAAK,iBAAiB;QAC7D,cAAc,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,MAAK,iBAAiB;QACjE,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,mDAAmD;KACjF,CAAC,EACF,CAAC,WAAW,EAAE,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,CACnD,CAAC;IAEF,OAAO,yBAAyB,CAAC;AACnC,CAAC,CAAC;AA5BW,QAAA,4BAA4B,gCA4BvC","sourcesContent":["import React from \"react\";\nimport ReactiveList from \"@appbaseio/reactivesearch/lib/components/result/ReactiveList\";\n\nimport { useFilterStack } from \"../../hooks\";\nimport { useReactiveReactProp } from \"./useReactiveReactProp\";\n\nexport const useReactiveReactiveListProps = (options: {\n pageSize?: number;\n}): React.ComponentProps<typeof ReactiveList> => {\n const { filterStack } = useFilterStack();\n const reactiveReactProp = useReactiveReactProp();\n\n const size = React.useMemo(() => {\n return options.pageSize ?? filterStack?.pageSize ?? 20;\n }, [options.pageSize, filterStack]);\n\n const reactiveReactiveListProps = React.useMemo(\n () => ({\n size,\n URLParams: true,\n showLoader: false,\n dataField: \"title\",\n showResultStats: false,\n react: reactiveReactProp,\n componentId: \"page\", // this sets ?page= in the URL\n scrollOnChange: false, // @todo make this better, it's really janky when enabled\n pagination: filterStack?.paginationType !== \"infinite_scroll\",\n infiniteScroll: filterStack?.paginationType === \"infinite_scroll\",\n renderNoResults: () => null, // always use only render, otherwise both are shown\n }),\n [filterStack, reactiveReactProp, options.pageSize]\n );\n\n return reactiveReactiveListProps;\n};\n"]}
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.useAnalytics = void 0;
16
16
  const axios_1 = __importDefault(require("axios"));
17
17
  const hooks_1 = require("../hooks");
18
+ const utility_1 = require("../utility");
18
19
  const useAnalytics = () => {
19
20
  const { options } = (0, hooks_1.useReactifySearchContext)();
20
21
  const url = "https://analytics.search.reactify.app/record/";
@@ -23,6 +24,7 @@ const useAnalytics = () => {
23
24
  console.warn(new Error('Unable to send tracking event, missing value for "shopifyPermanentDomain".'));
24
25
  return;
25
26
  }
27
+ utility_1.debug.log("useAnalytics", "track", event);
26
28
  const events = getTrackEvents(event);
27
29
  return axios_1.default.post(url, { events }, { headers: { "X-Reactify-Tenant": options.shopifyPermanentDomain } });
28
30
  });
@@ -108,3 +110,4 @@ function getTrackEvents(event) {
108
110
  }
109
111
  return events;
110
112
  }
113
+ //# sourceMappingURL=useAnalytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAnalytics.js","sourceRoot":"","sources":["../../../src/hooks/useAnalytics.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAE1B,oCAAoD;AACpD,wCAAmC;AAE5B,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,gCAAwB,GAAE,CAAC;IAC/C,MAAM,GAAG,GAAG,+CAA+C,CAAC;IAC5D,MAAM,KAAK,GAAG,CAAO,KAAiB,EAAE,EAAE;QACxC,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE;YACnC,OAAO,CAAC,IAAI,CACV,IAAI,KAAK,CACP,4EAA4E,CAC7E,CACF,CAAC;YAEF,OAAO;SACR;QAED,eAAK,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAE1C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,eAAK,CAAC,IAAI,CACf,GAAG,EACH,EAAE,MAAM,EAAE,EACV,EAAE,OAAO,EAAE,EAAE,mBAAmB,EAAE,OAAO,CAAC,sBAAsB,EAAE,EAAE,CACrE,CAAC;IACJ,CAAC,CAAA,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC,CAAC;AAzBW,QAAA,YAAY,gBAyBvB;AAEF,SAAS,cAAc,CAAC,KAAiB;IACvC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,IAAI,MAAM,GAAiB,EAAE,CAAC;IAE9B,QAAQ,SAAS,EAAE;QACjB,KAAK,QAAQ;YACX,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,aAAa;YAChB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,aAAa;YAChB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,cAAc;YACjB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,eAAe;YAClB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,gBAAgB;YACnB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,kBAAkB;YACrB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,YAAY;YACf,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;QAER,KAAK,cAAc;YACjB,MAAM,GAAG;gBACP;oBACE,SAAS;oBACT,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YAEF,MAAM;KACT;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import axios from \"axios\";\n\nimport { useReactifySearchContext } from \"../hooks\";\nimport { debug } from \"../utility\";\n\nexport const useAnalytics = () => {\n const { options } = useReactifySearchContext();\n const url = \"https://analytics.search.reactify.app/record/\";\n const track = async (event: TrackEvent) => {\n if (!options.shopifyPermanentDomain) {\n console.warn(\n new Error(\n 'Unable to send tracking event, missing value for \"shopifyPermanentDomain\".'\n )\n );\n\n return;\n }\n\n debug.log(\"useAnalytics\", \"track\", event);\n\n const events = getTrackEvents(event);\n return axios.post(\n url,\n { events },\n { headers: { \"X-Reactify-Tenant\": options.shopifyPermanentDomain } }\n );\n };\n\n return { track };\n};\n\nfunction getTrackEvents(event: TrackEvent): TrackEvent[] {\n const { eventName } = event;\n let events: TrackEvent[] = [];\n\n switch (eventName) {\n case \"search\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"zeroResults\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"viewProduct\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"clickProduct\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"viewPromotion\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"clickPromotion\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"paginationChange\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"sortChange\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n\n case \"filterChange\":\n events = [\n {\n eventName,\n payload: event.payload,\n },\n ];\n\n break;\n }\n\n return events;\n}\n\nexport type TrackEvent =\n | TrackEvent.SearchEvent\n | TrackEvent.ZeroResultsEvent\n | TrackEvent.ViewProductEvent\n | TrackEvent.ClickProductEvent\n | TrackEvent.ViewPromotionEvent\n | TrackEvent.ClickPromotionEvent\n | TrackEvent.PaginationChangeEvent\n | TrackEvent.SortChangeEvent\n | TrackEvent.FilterChangeEvent;\n\nexport namespace TrackEvent {\n export interface SearchEvent {\n eventName: \"search\";\n payload: SearchEvent.Payload;\n }\n\n export namespace SearchEvent {\n export interface Payload {\n searchTerm: string;\n }\n }\n\n export interface ZeroResultsEvent {\n eventName: \"zeroResults\";\n payload: ZeroResultsEvent.Payload;\n }\n\n export namespace ZeroResultsEvent {\n export interface Payload {\n searchTerm: string;\n }\n }\n\n export interface ViewProductEvent {\n eventName: \"viewProduct\";\n payload: ViewProductEvent.Payload;\n }\n\n export namespace ViewProductEvent {\n export interface Payload {\n elasticProduct: ElasticProduct;\n }\n }\n\n export interface ClickProductEvent {\n eventName: \"clickProduct\";\n payload: ClickProductEvent.Payload;\n }\n\n export namespace ClickProductEvent {\n export interface Payload {\n elasticProduct: ElasticProduct;\n }\n }\n\n export interface ViewPromotionEvent {\n eventName: \"viewPromotion\";\n payload: ViewPromotionEvent.Payload;\n }\n\n export namespace ViewPromotionEvent {\n export interface Payload {\n link: string;\n title: string;\n }\n }\n\n export interface ClickPromotionEvent {\n eventName: \"clickPromotion\";\n payload: ClickPromotionEvent.Payload;\n }\n\n export namespace ClickPromotionEvent {\n export interface Payload {\n link: string;\n title: string;\n }\n }\n\n export interface PaginationChangeEvent {\n eventName: \"paginationChange\";\n payload: PaginationChangeEvent.Payload;\n }\n\n export namespace PaginationChangeEvent {\n export interface Payload {\n page: number;\n source: \"search\" | \"collection\";\n }\n }\n\n export interface SortChangeEvent {\n eventName: \"sortChange\";\n payload: SortChangeEvent.Payload;\n }\n\n export namespace SortChangeEvent {\n export interface Payload {\n type: string;\n }\n }\n\n export interface FilterChangeEvent {\n eventName: \"filterChange\";\n payload: FilterChangeEvent.Payload;\n }\n\n export namespace FilterChangeEvent {\n export interface Payload {\n name: string;\n value: string;\n }\n }\n\n export interface ElasticProduct {\n id: number;\n title: string;\n }\n}\n"]}
@@ -14,7 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.useConfig = void 0;
16
16
  const react_1 = __importDefault(require("react"));
17
- const debug = require("debug")("reactify-search:useConfig");
17
+ const utility_1 = require("../utility");
18
18
  // 5 minute cache expiry
19
19
  const CACHE_EXPIRY = 5 * 60 * 1000;
20
20
  const useConfig = (shopifyPermanentDomain, configId) => {
@@ -24,23 +24,24 @@ const useConfig = (shopifyPermanentDomain, configId) => {
24
24
  if (typeof window === "undefined") {
25
25
  return;
26
26
  }
27
- debug("checking config cache");
27
+ utility_1.debug.log("useConfig", "checking config cache");
28
28
  // skip checking cache if url search param "nocache" is set
29
29
  const skipCache = new URLSearchParams(window.location.href.split("?")[1]).get("nocache") !==
30
30
  null;
31
31
  if (skipCache) {
32
- debug("config cache is disabled");
32
+ utility_1.debug.log("config cache is disabled");
33
33
  return;
34
34
  }
35
35
  const sessionConfig = JSON.parse((_a = window.sessionStorage.getItem("reactify-search:config")) !== null && _a !== void 0 ? _a : "null");
36
36
  if (sessionConfig) {
37
37
  const sessionConfigTtl = sessionConfig.expiresAt - Date.now();
38
38
  if (sessionConfigTtl > 0) {
39
- debug(`config cache valid, expires in ${(sessionConfigTtl / 1000).toFixed()} seconds`);
39
+ utility_1.debug.log("useConfig", `config cache valid, expires in ${(sessionConfigTtl / 1000).toFixed()} seconds`);
40
40
  return sessionConfig.config;
41
41
  }
42
42
  else {
43
- debug(`config cache invalid, expired ${((sessionConfigTtl * -1) / 1000).toFixed()} seconds ago`);
43
+ utility_1.debug.log("useConfig", `config cache invalid, expired ${((sessionConfigTtl * -1) /
44
+ 1000).toFixed()} seconds ago`);
44
45
  }
45
46
  }
46
47
  return;
@@ -51,7 +52,7 @@ const useConfig = (shopifyPermanentDomain, configId) => {
51
52
  return;
52
53
  }
53
54
  (() => __awaiter(void 0, void 0, void 0, function* () {
54
- debug("loading fresh config");
55
+ utility_1.debug.log("useConfig", "loading fresh config");
55
56
  const searchParams = new URLSearchParams();
56
57
  searchParams.set("shop", shopifyPermanentDomain);
57
58
  if (configId) {
@@ -63,7 +64,7 @@ const useConfig = (shopifyPermanentDomain, configId) => {
63
64
  }
64
65
  const json = yield fetch(`https://config.search.reactify.app/?${searchParams.toString()}`).then((response) => response.json());
65
66
  setConfig(json.body);
66
- debug("loaded fresh config");
67
+ utility_1.debug.log("useConfig", "loaded fresh config");
67
68
  window.sessionStorage.setItem("reactify-search:config", JSON.stringify({
68
69
  expiresAt: new Date().getTime() + CACHE_EXPIRY,
69
70
  noCache: skipCache,
@@ -72,10 +73,11 @@ const useConfig = (shopifyPermanentDomain, configId) => {
72
73
  }))();
73
74
  }, [shopifyPermanentDomain, configId]);
74
75
  react_1.default.useEffect(() => {
75
- debug("variable[config]", config);
76
+ utility_1.debug.log("useConfig", "config", config);
76
77
  }, [config]);
77
78
  return {
78
79
  config,
79
80
  };
80
81
  };
81
82
  exports.useConfig = useConfig;
83
+ //# sourceMappingURL=useConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useConfig.js","sourceRoot":"","sources":["../../../src/hooks/useConfig.ts"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\n\nimport { Config } from \"../types/config\";\nimport { debug } from \"../utility\";\n\n// 5 minute cache expiry\nconst CACHE_EXPIRY = 5 * 60 * 1000;\n\nexport const useConfig = (\n shopifyPermanentDomain: string,\n configId?: string\n): {\n config: Config | undefined;\n} => {\n // synchronously returns cached and non-expired config from session storage\n const cachedConfig = React.useMemo(() => {\n if (typeof window === \"undefined\") {\n return;\n }\n debug.log(\"useConfig\", \"checking config cache\");\n\n // skip checking cache if url search param \"nocache\" is set\n const skipCache =\n new URLSearchParams(window.location.href.split(\"?\")[1]).get(\"nocache\") !==\n null;\n if (skipCache) {\n debug.log(\"config cache is disabled\");\n\n return;\n }\n\n const sessionConfig: {\n expiresAt: number;\n config: Config;\n } | null = JSON.parse(\n window.sessionStorage.getItem(\"reactify-search:config\") ?? \"null\"\n );\n\n if (sessionConfig) {\n const sessionConfigTtl = sessionConfig.expiresAt - Date.now();\n if (sessionConfigTtl > 0) {\n debug.log(\n \"useConfig\",\n `config cache valid, expires in ${(\n sessionConfigTtl / 1000\n ).toFixed()} seconds`\n );\n\n return sessionConfig.config;\n } else {\n debug.log(\n \"useConfig\",\n `config cache invalid, expired ${(\n (sessionConfigTtl * -1) /\n 1000\n ).toFixed()} seconds ago`\n );\n }\n }\n\n return;\n }, []);\n\n const [config, setConfig] = React.useState<Config | undefined>(cachedConfig);\n\n React.useEffect(() => {\n if (config) {\n return;\n }\n\n (async () => {\n debug.log(\"useConfig\", \"loading fresh config\");\n const searchParams = new URLSearchParams();\n searchParams.set(\"shop\", shopifyPermanentDomain);\n\n if (configId) {\n searchParams.set(\"id\", configId);\n }\n\n const skipCache =\n new URLSearchParams(window.location.href.split(\"?\")[1]).get(\n \"nocache\"\n ) !== null;\n\n if (skipCache) {\n searchParams.set(\"nocache\", \"true\");\n }\n\n const json = await fetch(\n `https://config.search.reactify.app/?${searchParams.toString()}`\n ).then((response) => response.json());\n\n setConfig(json.body);\n\n debug.log(\"useConfig\", \"loaded fresh config\");\n\n window.sessionStorage.setItem(\n \"reactify-search:config\",\n JSON.stringify({\n expiresAt: new Date().getTime() + CACHE_EXPIRY,\n noCache: skipCache,\n config: json.body,\n })\n );\n })();\n }, [shopifyPermanentDomain, configId]);\n\n React.useEffect(() => {\n debug.log(\"useConfig\", \"config\", config);\n }, [config]);\n\n return {\n config,\n };\n};\n"]}