@envive-ai/react-toolkit 0.2.10 → 0.2.12

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 (256) hide show
  1. package/dist/{Accordion-RpyCFs2a.cjs → Accordion-B0TzPN3m.cjs} +2 -5
  2. package/dist/{Accordion-DxtXK__u.js → Accordion-D8Vm8J1y.js} +3 -3
  3. package/dist/{AnimatedChevron-Q96FneFy.cjs → AnimatedChevron-9xf90bpP.cjs} +0 -2
  4. package/dist/{AnimatedChevron-Bik7GMSe.js → AnimatedChevron-DghLnmlM.js} +1 -1
  5. package/dist/{ButtonBase-AU23oGQr.cjs → ButtonBase-BMEAmPnS.cjs} +1 -3
  6. package/dist/{ButtonBase-6wjsZ1tU.js → ButtonBase-CT397aT3.js} +2 -2
  7. package/dist/{DynamicFiltersScrollbar-CJG4K0PH.js → DynamicFiltersScrollbar-CibstqNd.js} +4 -6
  8. package/dist/{DynamicFiltersScrollbar-DgS9gpdg.cjs → DynamicFiltersScrollbar-DqIydLJu.cjs} +3 -6
  9. package/dist/{ImageWithFallback-Bx17VPmQ.cjs → ImageWithFallback-CuPe6XF6.cjs} +0 -1
  10. package/dist/{ImageWithFallback-c-DTsBH-.js → ImageWithFallback-_QZT0EKI.js} +1 -1
  11. package/dist/{ModalSheet-CcthFeMD.cjs → ModalSheet-Be7-bkXK.cjs} +10 -15
  12. package/dist/{ModalSheet-BSj_g9JF.js → ModalSheet-DVrY7Mw0.js} +11 -12
  13. package/dist/{ProductCard-C-8ie9Lf.cjs → ProductCard-BeY85PBf.cjs} +8 -25
  14. package/dist/{ProductCard-n-PAth5m.js → ProductCard-BoyYu6mI.js} +7 -20
  15. package/dist/{ProductGrid-Ba2tUgmC.cjs → ProductGrid-CxKK7w_X.cjs} +1 -2
  16. package/dist/{ProductGrid-xXkWzvR2.js → ProductGrid-DmtSXfyE.js} +2 -2
  17. package/dist/{RadioButton-gnFz0TWN.js → RadioButton-Bm0qK3bX.js} +2 -2
  18. package/dist/{RadioButton-BBc1b5vX.cjs → RadioButton-Dcdj8pNp.cjs} +1 -3
  19. package/dist/{RadioButtonGroup-DxOtcIdO.cjs → RadioButtonGroup-BnnMx8sE.cjs} +1 -2
  20. package/dist/{RadioButtonGroup-DLLleeDX.js → RadioButtonGroup-hme7gSiQ.js} +2 -2
  21. package/dist/RecommendedProducts-C2eNVrLo.cjs +56 -0
  22. package/dist/RecommendedProducts-LalI8aVC.js +49 -0
  23. package/dist/{SearchAutocomplete-DAEDHeqr.cjs → SearchAutocomplete-A3HXkHwK.cjs} +3 -6
  24. package/dist/{SearchAutocomplete-B690CIZB.js → SearchAutocomplete-Rza3A-gs.js} +4 -5
  25. package/dist/{SearchFilter-Bi0zqO3-.js → SearchFilter-CYY5sNXV.js} +39 -43
  26. package/dist/{SearchFilter-ylBowO7T.cjs → SearchFilter-DxrQOLx0.cjs} +38 -44
  27. package/dist/{SearchInput-Yy6NIiSk.cjs → SearchInput-3ppsm2Ke.cjs} +2 -3
  28. package/dist/{SearchInput-Q3knp7tj.js → SearchInput-DE9Iz7A8.js} +3 -3
  29. package/dist/{SearchInputForm/index.cjs → SearchInputForm-CZz62rOX.cjs} +9 -9
  30. package/dist/{SearchInputForm/index.js → SearchInputForm-DrI4WHDt.js} +3 -6
  31. package/dist/SearchResultsFilterButton-BedTofz5.cjs +29 -0
  32. package/dist/SearchResultsFilterButton-CV11UTGi.js +22 -0
  33. package/dist/{SearchResultsFilterSidebar/index.js → SearchResultsFilterSidebar-Bvpk7Uoo.js} +4 -13
  34. package/dist/{SearchResultsFilterSidebar/index.cjs → SearchResultsFilterSidebar-Dgz98oyD.cjs} +10 -17
  35. package/dist/{SearchResultsStates-BjFB9Qo9.cjs → SearchResultsStates-D37wFr9h.cjs} +42 -16
  36. package/dist/{SearchResultsStates-D8Uz39yp.js → SearchResultsStates-DrGtw0pM.js} +43 -15
  37. package/dist/{SparkleAnimation-CvGlWUqv.cjs → SparkleAnimation-B5A_NCuy.cjs} +1 -4
  38. package/dist/{SparkleAnimation-paLhSu5E.js → SparkleAnimation-BSI_34HX.js} +2 -2
  39. package/dist/{Spinner-BqTt55uu.js → Spinner-CDDFWySo.js} +1 -1
  40. package/dist/{Spinner-DjK8ts9E.cjs → Spinner-FQpy5bGu.cjs} +0 -1
  41. package/dist/{TextInput-B70n36-J.cjs → TextInput-Do5-j1V_.cjs} +3 -5
  42. package/dist/{TextInput-y6nNxaTI.js → TextInput-PtrUXoZo.js} +4 -5
  43. package/dist/{ToggleButton-Br6MgjiG.js → ToggleButton-BTz_zIdc.js} +2 -2
  44. package/dist/{ToggleButton-CJ74eu-N.cjs → ToggleButton-CmxTz-ou.cjs} +1 -2
  45. package/dist/{Typography-D3vDkBMS.js → Typography-xehJH05l.js} +1 -1
  46. package/dist/{colorsConfig-DZ-GSPWy.js → colorsConfig-BjdoRtRK.js} +1 -1
  47. package/dist/{Accordion/index.d.ts → components/Accordion/index-BPofgdcd.d.cts} +2 -2
  48. package/dist/{Accordion/index.d.cts → components/Accordion/index-DBEaF9x5.d.ts} +2 -2
  49. package/dist/components/Accordion/index.cjs +4 -0
  50. package/dist/components/Accordion/index.js +4 -0
  51. package/dist/{AnimatedChevron/index.d.cts → components/AnimatedChevron/index-Bvff3AGS.d.ts} +2 -2
  52. package/dist/{AnimatedChevron/index.d.ts → components/AnimatedChevron/index-BwQ6tJL8.d.cts} +2 -2
  53. package/dist/components/AnimatedChevron/index.cjs +3 -0
  54. package/dist/components/AnimatedChevron/index.js +3 -0
  55. package/dist/{AppliedFiltersScrollbar/index.d.ts → components/AppliedFiltersScrollbar/index-BKNoroAl.d.ts} +2 -2
  56. package/dist/{AppliedFiltersScrollbar/index.d.cts → components/AppliedFiltersScrollbar/index-DADY550R.d.cts} +2 -2
  57. package/dist/{AppliedFiltersScrollbar → components/AppliedFiltersScrollbar}/index.cjs +3 -5
  58. package/dist/{AppliedFiltersScrollbar → components/AppliedFiltersScrollbar}/index.js +2 -3
  59. package/dist/{ButtonBase/index.d.ts → components/ButtonBase/index-BCw2WQ-2.d.ts} +2 -2
  60. package/dist/{ButtonBase/index.d.cts → components/ButtonBase/index-pBSmWoqg.d.cts} +2 -2
  61. package/dist/components/ButtonBase/index.cjs +6 -0
  62. package/dist/components/ButtonBase/index.js +5 -0
  63. package/dist/{DynamicFiltersScrollbar/index.d.ts → components/DynamicFiltersScrollbar/index-BvAT64cX.d.ts} +2 -2
  64. package/dist/{DynamicFiltersScrollbar/index.d.cts → components/DynamicFiltersScrollbar/index-X--ALCSa.d.cts} +2 -2
  65. package/dist/{DynamicFiltersScrollbar → components/DynamicFiltersScrollbar}/index.cjs +3 -5
  66. package/dist/{DynamicFiltersScrollbar → components/DynamicFiltersScrollbar}/index.js +2 -3
  67. package/dist/{FilterScrollbar/index.d.ts → components/FilterScrollbar/index-DgxXE1ff.d.cts} +3 -3
  68. package/dist/{FilterScrollbar/index.d.cts → components/FilterScrollbar/index-xlg1Q06Q.d.ts} +3 -3
  69. package/dist/components/FilterScrollbar/index.cjs +5 -0
  70. package/dist/components/FilterScrollbar/index.js +4 -0
  71. package/dist/{ImageWithFallback/index.d.cts → components/ImageWithFallback/index-C8Fqb7AQ.d.cts} +2 -2
  72. package/dist/{ImageWithFallback/index.d.ts → components/ImageWithFallback/index-yxDWrUCQ.d.ts} +2 -2
  73. package/dist/components/ImageWithFallback/index.cjs +3 -0
  74. package/dist/components/ImageWithFallback/index.js +3 -0
  75. package/dist/{ModalSheet/index.d.cts → components/ModalSheet/index-Cp_h5dbe.d.ts} +2 -2
  76. package/dist/{ModalSheet/index.d.ts → components/ModalSheet/index-Dnt-aUte.d.cts} +2 -2
  77. package/dist/components/ModalSheet/index.cjs +4 -0
  78. package/dist/components/ModalSheet/index.js +4 -0
  79. package/dist/components/ProductCard/index-BF8pv46P.d.ts +2 -0
  80. package/dist/components/ProductCard/index-C6TLdXjC.d.cts +2 -0
  81. package/dist/{ProductCard → components/ProductCard}/index.cjs +5 -4
  82. package/dist/components/ProductCard/index.js +7 -0
  83. package/dist/{ProductGrid/index.d.cts → components/ProductGrid/index-B1eVXjB4.d.cts} +3 -3
  84. package/dist/{ProductGrid/index.d.ts → components/ProductGrid/index-CyDy1V6o.d.ts} +3 -3
  85. package/dist/components/ProductGrid/index.cjs +9 -0
  86. package/dist/components/ProductGrid/index.js +8 -0
  87. package/dist/{RadioButton/index.d.cts → components/RadioButton/index-BHl3dM6k.d.cts} +2 -2
  88. package/dist/{RadioButton/index.d.ts → components/RadioButton/index-BZrcz8-J.d.ts} +2 -2
  89. package/dist/components/RadioButton/index.cjs +4 -0
  90. package/dist/components/RadioButton/index.js +4 -0
  91. package/dist/{RadioButtonGroup/index.d.cts → components/RadioButtonGroup/index-DdyMuFCX.d.ts} +2 -2
  92. package/dist/{RadioButtonGroup/index.d.ts → components/RadioButtonGroup/index-DtdjcXo-.d.cts} +2 -2
  93. package/dist/components/RadioButtonGroup/index.cjs +6 -0
  94. package/dist/components/RadioButtonGroup/index.js +5 -0
  95. package/dist/components/RecommendedProducts/index-BFM83Qu3.d.cts +15 -0
  96. package/dist/components/RecommendedProducts/index-DlbCfGof.d.ts +15 -0
  97. package/dist/components/RecommendedProducts/index.cjs +12 -0
  98. package/dist/components/RecommendedProducts/index.js +12 -0
  99. package/dist/{SearchAutocomplete/index.d.ts → components/SearchAutocomplete/index-Br_POGOz.d.ts} +2 -2
  100. package/dist/{SearchAutocomplete/index.d.cts → components/SearchAutocomplete/index-Ce9gkkbU.d.cts} +2 -2
  101. package/dist/components/SearchAutocomplete/index.cjs +4 -0
  102. package/dist/components/SearchAutocomplete/index.js +4 -0
  103. package/dist/{SearchFilter/index.d.cts → components/SearchFilter/index-DAR4UKSA.d.cts} +5 -5
  104. package/dist/{SearchFilter/index.d.ts → components/SearchFilter/index-VygXUBM9.d.ts} +5 -5
  105. package/dist/components/SearchFilter/index.cjs +17 -0
  106. package/dist/components/SearchFilter/index.js +12 -0
  107. package/dist/{SearchInput/index.d.ts → components/SearchInput/index-UY0W77Y0.d.ts} +2 -2
  108. package/dist/{SearchInput/index.d.cts → components/SearchInput/index-rFDdhvqg.d.cts} +2 -2
  109. package/dist/components/SearchInput/index.cjs +7 -0
  110. package/dist/components/SearchInput/index.js +6 -0
  111. package/dist/{SearchInputForm/index.d.cts → components/SearchInputForm/index-_sR_KugL.d.ts} +3 -3
  112. package/dist/{SearchInputForm/index.d.ts → components/SearchInputForm/index-dlLBivQA.d.cts} +1 -1
  113. package/dist/components/SearchInputForm/index.cjs +8 -0
  114. package/dist/components/SearchInputForm/index.js +8 -0
  115. package/dist/{SearchResultsContent/index.d.cts → components/SearchResultsContent/index-B_6-7-t-.d.ts} +18 -9
  116. package/dist/{SearchResultsContent/index.d.ts → components/SearchResultsContent/index-CayvNVCK.d.cts} +18 -9
  117. package/dist/components/SearchResultsContent/index.cjs +60 -0
  118. package/dist/components/SearchResultsContent/index.js +58 -0
  119. package/dist/components/SearchResultsFilterButton/index-D_u8PzTc.d.cts +13 -0
  120. package/dist/components/SearchResultsFilterButton/index-DuTGqa7-.d.ts +13 -0
  121. package/dist/components/SearchResultsFilterButton/index.cjs +9 -0
  122. package/dist/components/SearchResultsFilterButton/index.js +9 -0
  123. package/dist/components/SearchResultsFilterModal/index-BNZEJiXR.d.cts +27 -0
  124. package/dist/components/SearchResultsFilterModal/index-CXBAA2-F.d.ts +27 -0
  125. package/dist/components/SearchResultsFilterModal/index.cjs +47 -0
  126. package/dist/components/SearchResultsFilterModal/index.js +46 -0
  127. package/dist/components/SearchResultsFilterSidebar/index-BDcl27l4.d.ts +2 -0
  128. package/dist/components/SearchResultsFilterSidebar/index-DgPB1knO.d.cts +2 -0
  129. package/dist/components/SearchResultsFilterSidebar/index.cjs +16 -0
  130. package/dist/components/SearchResultsFilterSidebar/index.js +15 -0
  131. package/dist/{SearchResultsStates/index.d.ts → components/SearchResultsStates/index-CjYl1v-v.d.cts} +19 -10
  132. package/dist/{SearchResultsStates/index.d.cts → components/SearchResultsStates/index-DJaUfKjE.d.ts} +19 -10
  133. package/dist/components/SearchResultsStates/index.cjs +16 -0
  134. package/dist/components/SearchResultsStates/index.js +14 -0
  135. package/dist/components/SearchResultsToolbar/index-CVstdvRQ.d.cts +49 -0
  136. package/dist/components/SearchResultsToolbar/index-tAB6lEUm.d.ts +49 -0
  137. package/dist/components/SearchResultsToolbar/index.cjs +66 -0
  138. package/dist/components/SearchResultsToolbar/index.js +63 -0
  139. package/dist/{SparkleAnimation/index.d.ts → components/SparkleAnimation/index-BQOC3G_6.d.cts} +2 -2
  140. package/dist/{SparkleAnimation/index.d.cts → components/SparkleAnimation/index-DjRK3Dys.d.ts} +2 -2
  141. package/dist/{SparkleAnimation → components/SparkleAnimation}/index.cjs +1 -1
  142. package/dist/components/SparkleAnimation/index.js +3 -0
  143. package/dist/{Spinner/index.d.cts → components/Spinner/index-C0pGovHC.d.cts} +2 -2
  144. package/dist/{Spinner/index.d.ts → components/Spinner/index-CIr1izou.d.ts} +2 -2
  145. package/dist/components/Spinner/index.cjs +3 -0
  146. package/dist/components/Spinner/index.js +3 -0
  147. package/dist/{SuggestionButton/index.d.cts → components/SuggestionButton/index-B4J70IPS.d.cts} +2 -2
  148. package/dist/{SuggestionButton/index.d.ts → components/SuggestionButton/index-D6_y1hTj.d.ts} +2 -2
  149. package/dist/{SuggestionButton → components/SuggestionButton}/index.cjs +5 -7
  150. package/dist/{SuggestionButton → components/SuggestionButton}/index.js +4 -5
  151. package/dist/{TextInput/index.d.cts → components/TextInput/index-CRJMRe-b.d.cts} +2 -2
  152. package/dist/{TextInput/index.d.ts → components/TextInput/index-CkQtHiR9.d.ts} +2 -2
  153. package/dist/components/TextInput/index.cjs +4 -0
  154. package/dist/components/TextInput/index.js +4 -0
  155. package/dist/{ToggleButton/index.d.cts → components/ToggleButton/index-Dc-cs_tK.d.ts} +2 -2
  156. package/dist/components/ToggleButton/index.cjs +4 -0
  157. package/dist/components/ToggleButton/index.js +4 -0
  158. package/dist/components/Typography/index-DE1Nhjra.d.ts +3 -0
  159. package/dist/components/Typography/index-DzSBreyM.d.cts +3 -0
  160. package/dist/{Typography → components/Typography}/index.cjs +1 -1
  161. package/dist/components/Typography/index.js +3 -0
  162. package/dist/formatPrice-CyfkjZ3R.cjs +19 -0
  163. package/dist/formatPrice-DexQu2aZ.js +13 -0
  164. package/dist/{index-DmvaMYbj.d.ts → index-8cIrhPDk.d.ts} +3 -3
  165. package/dist/{index-Dfe_lkL2.d.cts → index-BKYA7uMB.d.cts} +1 -1
  166. package/dist/{index-Qtr26aUO.d.ts → index-Bw6lDfEp.d.cts} +2 -2
  167. package/dist/{index-BqARXvZ6.d.cts → index-CqfgJHj8.d.cts} +5 -5
  168. package/dist/{index-BMHF0IWd.d.cts → index-Cr8VXccr.d.ts} +2 -2
  169. package/dist/{index-BB4Qbpmg.d.ts → index-Cz6qxTZG.d.ts} +5 -5
  170. package/dist/{searchFilterSidebarVariants-DzCf_sfh.cjs → searchFilterSidebarVariants-C61Byr1S.cjs} +1 -1
  171. package/dist/{searchFilterSidebarVariants-f9PS9fl6.js → searchFilterSidebarVariants-DcwlBfvY.js} +2 -2
  172. package/dist/{types-BhGjnuWx.d.cts → types--eyQnaEA.d.cts} +1 -1
  173. package/dist/{types-DlqhqT_S.d.ts → types-CQpdBL3M.d.ts} +1 -1
  174. package/dist/{typographyVariantClasses-B6wiawat.d.ts → typographyVariantClasses-CoRhazCU.d.cts} +1 -1
  175. package/dist/{typographyVariantClasses-DTSltxPN.d.cts → typographyVariantClasses-CrT5OfVw.d.ts} +1 -1
  176. package/dist/util/index-C2ueYGXh.d.ts +21 -0
  177. package/dist/util/index-DUzbpjPa.d.cts +21 -0
  178. package/dist/util/index.cjs +80 -0
  179. package/dist/util/index.js +76 -0
  180. package/package.json +79 -52
  181. package/src/components/RecommendedProducts/RecommendedProducts.tsx +97 -0
  182. package/src/components/RecommendedProducts/index.ts +3 -0
  183. package/src/components/SearchResultsContent/SearchResultsContent.tsx +68 -35
  184. package/src/components/SearchResultsFilterButton/SearchResultsFilterButton.tsx +30 -0
  185. package/src/components/SearchResultsFilterButton/index.ts +3 -0
  186. package/src/components/SearchResultsFilterModal/SearchResultsFilterModal.tsx +61 -0
  187. package/src/components/SearchResultsFilterModal/index.ts +3 -0
  188. package/src/components/SearchResultsStates/NoSearchResultsFound.tsx +43 -11
  189. package/src/components/SearchResultsStates/SearchResultsGrid.tsx +5 -1
  190. package/src/components/SearchResultsToolbar/SearchResultsToolbar.tsx +111 -0
  191. package/src/components/SearchResultsToolbar/index.ts +3 -0
  192. package/src/stories/AppliedFiltersScrollbar.stories.tsx +42 -0
  193. package/src/stories/ButtonBase.stories.tsx +54 -0
  194. package/src/stories/DynamicFiltersScrollbar.stories.tsx +42 -0
  195. package/src/stories/NoSearchResultsFound.stories.tsx +30 -0
  196. package/src/stories/ProductCard.stories.tsx +78 -0
  197. package/src/stories/ProductCardSkeleton.stories.tsx +48 -0
  198. package/src/stories/ProductGrid.stories.tsx +82 -0
  199. package/src/stories/SearchInputForm.stories.tsx +39 -0
  200. package/src/stories/SearchResultsFilter.stories.tsx +56 -0
  201. package/src/stories/SearchResultsGrid.stories.tsx +98 -0
  202. package/src/stories/SearchResultsLoadingGrid.stories.tsx +30 -0
  203. package/src/stories/SparkleAnimation.stories.tsx +47 -0
  204. package/src/stories/Typography.stories.tsx +140 -0
  205. package/src/util/colorVar.ts +3 -0
  206. package/src/util/index.ts +4 -0
  207. package/src/util/useScrollDirection.ts +60 -0
  208. package/src/util/useStickyVisibility.ts +37 -0
  209. package/dist/Accordion/index.cjs +0 -4
  210. package/dist/Accordion/index.js +0 -4
  211. package/dist/AnimatedChevron/index.cjs +0 -3
  212. package/dist/AnimatedChevron/index.js +0 -3
  213. package/dist/ButtonBase/index.cjs +0 -6
  214. package/dist/ButtonBase/index.js +0 -5
  215. package/dist/FilterScrollbar/index.cjs +0 -5
  216. package/dist/FilterScrollbar/index.js +0 -4
  217. package/dist/ImageWithFallback/index.cjs +0 -3
  218. package/dist/ImageWithFallback/index.js +0 -3
  219. package/dist/ModalSheet/index.cjs +0 -4
  220. package/dist/ModalSheet/index.js +0 -4
  221. package/dist/ProductCard/index.d.cts +0 -2
  222. package/dist/ProductCard/index.d.ts +0 -2
  223. package/dist/ProductCard/index.js +0 -6
  224. package/dist/ProductGrid/index.cjs +0 -8
  225. package/dist/ProductGrid/index.js +0 -7
  226. package/dist/RadioButton/index.cjs +0 -4
  227. package/dist/RadioButton/index.js +0 -4
  228. package/dist/RadioButtonGroup/index.cjs +0 -6
  229. package/dist/RadioButtonGroup/index.js +0 -5
  230. package/dist/SearchAutocomplete/index.cjs +0 -4
  231. package/dist/SearchAutocomplete/index.js +0 -4
  232. package/dist/SearchFilter/index.cjs +0 -17
  233. package/dist/SearchFilter/index.js +0 -12
  234. package/dist/SearchInput/index.cjs +0 -7
  235. package/dist/SearchInput/index.js +0 -6
  236. package/dist/SearchResultsContent/index.cjs +0 -44
  237. package/dist/SearchResultsContent/index.js +0 -41
  238. package/dist/SearchResultsFilterSidebar/index.d.cts +0 -2
  239. package/dist/SearchResultsFilterSidebar/index.d.ts +0 -2
  240. package/dist/SearchResultsStates/index.cjs +0 -14
  241. package/dist/SearchResultsStates/index.js +0 -12
  242. package/dist/SparkleAnimation/index.js +0 -3
  243. package/dist/Spinner/index.cjs +0 -3
  244. package/dist/Spinner/index.js +0 -3
  245. package/dist/TextInput/index.cjs +0 -4
  246. package/dist/TextInput/index.js +0 -4
  247. package/dist/ToggleButton/index.cjs +0 -4
  248. package/dist/ToggleButton/index.js +0 -4
  249. package/dist/Typography/index.d.cts +0 -3
  250. package/dist/Typography/index.d.ts +0 -3
  251. package/dist/Typography/index.js +0 -3
  252. /package/dist/{ButtonBase-DbWQ25n-.cjs → ButtonBase-BIXx56hq.cjs} +0 -0
  253. /package/dist/{ButtonBase-C_uKnl48.js → ButtonBase-C9fn-c5h.js} +0 -0
  254. /package/dist/{Typography-CFNWgbM5.cjs → Typography-Ds4gfOJz.cjs} +0 -0
  255. /package/dist/{colorsConfig-B3-SMUSx.cjs → colorsConfig-D-MZuBvt.cjs} +0 -0
  256. /package/dist/{ToggleButton/index.d.ts → components/ToggleButton/index-B2rBwaVX.d.cts} +0 -0
@@ -1,4 +1,5 @@
1
1
  import { motion } from 'framer-motion';
2
+
2
3
  import classNames from 'classnames';
3
4
  import { SearchResponseProduct } from '@spiffy-ai/commerce-api-client';
4
5
  import { SelectedFilterOption } from '@envive-ai/react-hooks/atoms/search';
@@ -20,6 +21,7 @@ interface SearchResultsGridProps {
20
21
  selectedFilterOptions: SelectedFilterOption[];
21
22
  containerXPaddingClasses: string;
22
23
  productGridClasses: string;
24
+ onProductClick?: () => void;
23
25
  onRemoveFilter: (filter: SelectedFilterOption) => void;
24
26
  onToggleDynamicFilter: ({
25
27
  filter,
@@ -42,6 +44,7 @@ export const SearchResultsGrid = ({
42
44
  productGridClasses,
43
45
  onRemoveFilter,
44
46
  onToggleDynamicFilter,
47
+ onProductClick,
45
48
  }: SearchResultsGridProps) => {
46
49
  const sharedFilterBarClasses = classNames(
47
50
  'spiffy-suggestion-bar',
@@ -98,7 +101,8 @@ export const SearchResultsGrid = ({
98
101
  productGridClasses={productGridClasses}
99
102
  productCardConfig={productCardConfig}
100
103
  merchantShortName={merchantShortName}
104
+ onProductClick={onProductClick}
101
105
  />
102
106
  </motion.div>
103
107
  );
104
- };
108
+ };
@@ -0,0 +1,111 @@
1
+ import React from 'react';
2
+ import classNames from 'classnames';
3
+ import { SearchInputVariant } from '@envive-ai/react-hooks/contexts/types';
4
+ import { SearchResultsFilterButton } from '../SearchResultsFilterButton';
5
+ import { SearchInputForm } from '../SearchInputForm';
6
+
7
+
8
+ interface SearchResultsToolbarProps {
9
+ // From widgetConfig
10
+ searchInputVariant: SearchInputVariant;
11
+ searchBoxPlaceholder: string;
12
+ // From search hook
13
+ searchText: string;
14
+ focusedIndex: number;
15
+ focusedOptionId: string | undefined;
16
+ autocompleteResults: string[];
17
+ filterButtonText: string;
18
+
19
+ // From search input hook
20
+ shouldShowAutocomplete: boolean;
21
+
22
+ // Event handlers
23
+ onKeyDown: (event: React.KeyboardEvent<HTMLInputElement>) => void;
24
+ onSearchInputChange: (value: string) => void;
25
+ onSubmitSearch: () => void;
26
+ onAutocompleteSelect: (suggestion: string, rankPosition?: number) => void;
27
+ onSearchInputFocus: () => void;
28
+ onSearchInputBlur: () => void;
29
+ setIsFilterOpen: (isOpen: boolean) => void;
30
+
31
+ // Styling
32
+ containerXPaddingClasses: string;
33
+
34
+ // Ref for sticky logic
35
+ toolbarRef: React.RefObject<HTMLDivElement> | null;
36
+ isVisible: boolean;
37
+ className?: string;
38
+ }
39
+
40
+ export const SearchResultsToolbar = ({
41
+ searchInputVariant,
42
+ searchBoxPlaceholder,
43
+ searchText,
44
+ focusedIndex,
45
+ focusedOptionId,
46
+ autocompleteResults,
47
+ filterButtonText,
48
+ onKeyDown,
49
+ onSearchInputChange,
50
+ onSubmitSearch,
51
+ onAutocompleteSelect,
52
+ onSearchInputFocus,
53
+ onSearchInputBlur,
54
+ shouldShowAutocomplete,
55
+ setIsFilterOpen,
56
+ containerXPaddingClasses,
57
+ toolbarRef,
58
+ isVisible,
59
+ className,
60
+ }: SearchResultsToolbarProps) => {
61
+ const [hasZIndex, setHasZIndex] = React.useState(false);
62
+
63
+ // The following is to ensure the z-index is applied after the animation is complete
64
+ // because otherwise the z-index would be applied instantly when the component is mounted
65
+ // which would cause the search toolbar to appear over the top of the merchant header
66
+ // in some cases
67
+ React.useEffect(() => {
68
+ let timer;
69
+ if (isVisible) {
70
+ timer = setTimeout(() => {
71
+ setHasZIndex(true);
72
+ }, 300); // Match the animation duration from parent
73
+ return () => clearTimeout(timer);
74
+ }
75
+ setHasZIndex(false);
76
+ return () => clearTimeout(timer);
77
+ }, [isVisible]);
78
+ const toolbarClasses = classNames('spiffy-tw-bg-white', 'spiffy-tw-w-full', className, {
79
+ 'spiffy-tw-z-10': hasZIndex,
80
+ 'spiffy-tw-translate-y-0': isVisible,
81
+ '-spiffy-tw-translate-y-full': !isVisible,
82
+ });
83
+
84
+ const contentWrapperClasses = classNames('spiffy-tw-flex', containerXPaddingClasses);
85
+
86
+ return (
87
+ <div className={toolbarClasses} ref={toolbarRef}>
88
+ <div className={contentWrapperClasses}>
89
+ <SearchInputForm
90
+ searchInputVariant={searchInputVariant}
91
+ searchText={searchText}
92
+ focusedIndex={focusedIndex}
93
+ autocompleteResults={autocompleteResults}
94
+ searchBoxPlaceholder={searchBoxPlaceholder}
95
+ focusedOptionId={focusedOptionId}
96
+ onKeyDown={onKeyDown}
97
+ onSearchInputChange={onSearchInputChange}
98
+ onSearchInputFocus={onSearchInputFocus}
99
+ onSearchInputBlur={onSearchInputBlur}
100
+ shouldShowAutocomplete={shouldShowAutocomplete}
101
+ onSearchSubmit={onSubmitSearch}
102
+ onAutocompleteSelect={onAutocompleteSelect}
103
+ />
104
+ <SearchResultsFilterButton
105
+ setIsOpen={setIsFilterOpen}
106
+ filterButtonText={filterButtonText}
107
+ />
108
+ </div>
109
+ </div>
110
+ );
111
+ };
@@ -0,0 +1,3 @@
1
+ 'use client';
2
+
3
+ export * from './SearchResultsToolbar';
@@ -0,0 +1,42 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { SelectedFilterOption } from '@envive-ai/react-hooks/atoms/search';
3
+ import { AppliedFiltersScrollbar } from '@envive-ai/react-toolkit/AppliedFiltersScrollbar';
4
+
5
+ const mockSelectedFilterOptions: SelectedFilterOption[] = [
6
+ { id: 'cat2', displayName: 'Category 2', filterId: 'category', filterItemId: 'cat2' },
7
+ { id: 'brandA', displayName: 'Brand A', filterId: 'brand', filterItemId: 'brandA' },
8
+ { id: 'colorRed', displayName: 'Color: Red', filterId: 'color', filterItemId: 'red' },
9
+ { id: 'sizeM', displayName: 'Size: M', filterId: 'size', filterItemId: 'M' },
10
+ ];
11
+
12
+ const meta: Meta<typeof AppliedFiltersScrollbar> = {
13
+ title: 'Search/AppliedFiltersScrollbar',
14
+ component: AppliedFiltersScrollbar,
15
+ parameters: {
16
+ layout: 'centered',
17
+ },
18
+ tags: ['autodocs'],
19
+ };
20
+
21
+ export default meta;
22
+ type Story = StoryObj<typeof AppliedFiltersScrollbar>;
23
+
24
+ export const Default: Story = {
25
+ args: {
26
+ selectedFilterOptions: mockSelectedFilterOptions,
27
+ filterBarClassNames:
28
+ 'spiffy-suggestion-bar spiffy-tw-no-scrollbar spiffy-tw-flex spiffy-tw-flex-row spiffy-tw-gap-2 spiffy-tw-mb-[16px] spiffy-tw-overflow-x-scroll spiffy-tw-px-[16px] sm:spiffy-tw-px-[46px]',
29
+ filterDefaultClasses:
30
+ 'spiffy-tw-bg-[--spiffy-colors-background-light] spiffy-tw-border-[--spiffy-colors-border-light] spiffy-tw-text-[--spiffy-colors-text-primary]',
31
+ filterHoverClasses: 'hover:spiffy-tw-border-[--spiffy-colors-accent-primary]',
32
+ appliedFilterBackgroundClasses: 'spiffy-tw-bg-[--spiffy-colors-accent-primary]',
33
+ onRemoveFilter: () => {},
34
+ },
35
+ };
36
+
37
+ export const NoFilters: Story = {
38
+ args: {
39
+ ...Default.args,
40
+ selectedFilterOptions: [],
41
+ },
42
+ };
@@ -0,0 +1,54 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { ButtonBase } from '@envive-ai/react-toolkit/ButtonBase';
3
+ import SettingsVariant from '@envive-ai/react-icons/SettingsVariant';
4
+
5
+ const meta = {
6
+ title: 'Common/ButtonBase',
7
+ component: ButtonBase,
8
+ parameters: {
9
+ layout: 'centered',
10
+ },
11
+ tags: ['autodocs'],
12
+ args: {
13
+ dataAttributes: undefined,
14
+ buttonClass: undefined,
15
+ textClass: undefined,
16
+ icon: undefined,
17
+ dataTestId: undefined,
18
+ onClick: undefined,
19
+ },
20
+ argTypes: {
21
+ onClick: { action: 'clicked' },
22
+ dataAttributes: { control: 'object' },
23
+ buttonClass: { control: 'text' },
24
+ textClass: { control: 'text' },
25
+ dataTestId: { control: 'text' },
26
+ type: { control: 'select', options: ['button', 'submit', 'reset'] },
27
+ isDisabled: { control: 'boolean' },
28
+ iconClass: { control: 'text' },
29
+ disablePadding: { control: 'boolean' },
30
+ },
31
+ } satisfies Meta<typeof ButtonBase>;
32
+
33
+ export default meta;
34
+ type Story = StoryObj<typeof meta>;
35
+
36
+ export const Primary: Story = {
37
+ args: {
38
+ text: 'Button',
39
+ },
40
+ };
41
+
42
+ export const WithIcon: Story = {
43
+ args: {
44
+ text: 'Settings',
45
+ icon: SettingsVariant,
46
+ },
47
+ };
48
+
49
+ export const Disabled: Story = {
50
+ args: {
51
+ text: 'Disabled Button',
52
+ isDisabled: true,
53
+ },
54
+ };
@@ -0,0 +1,42 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { DynamicFiltersScrollbar } from '@envive-ai/react-toolkit/DynamicFiltersScrollbar';
3
+
4
+ const mockAvailableDynamicFilters = [
5
+ { name: 'color', displayName: 'Color' },
6
+ { name: 'size', displayName: 'Size' },
7
+ { name: 'material', displayName: 'Material' },
8
+ { name: 'brand', displayName: 'Brand' },
9
+ { name: 'price', displayName: 'Price Range' },
10
+ { name: 'rating', displayName: 'Customer Rating' },
11
+ ];
12
+
13
+ const meta: Meta<typeof DynamicFiltersScrollbar> = {
14
+ title: 'Search/DynamicFiltersScrollbar',
15
+ component: DynamicFiltersScrollbar,
16
+ parameters: {
17
+ layout: 'centered',
18
+ },
19
+ tags: ['autodocs'],
20
+ };
21
+
22
+ export default meta;
23
+ type Story = StoryObj<typeof DynamicFiltersScrollbar>;
24
+
25
+ export const Default: Story = {
26
+ args: {
27
+ availableDynamicFilters: mockAvailableDynamicFilters,
28
+ filterBarClassNames:
29
+ 'spiffy-suggestion-bar spiffy-tw-no-scrollbar spiffy-tw-flex spiffy-tw-flex-row spiffy-tw-gap-2 spiffy-tw-mb-[16px] spiffy-tw-overflow-x-scroll spiffy-tw-px-[16px] sm:spiffy-tw-px-[46px]',
30
+ filterDefaultClasses:
31
+ 'spiffy-tw-bg-[--spiffy-colors-background-light] spiffy-tw-border-[--spiffy-colors-border-light] spiffy-tw-text-[--spiffy-colors-text-primary]',
32
+ filterHoverClasses: 'hover:spiffy-tw-border-[--spiffy-colors-accent-primary]',
33
+ onToggleDynamicFilter: () => {},
34
+ },
35
+ };
36
+
37
+ export const NoFilters: Story = {
38
+ args: {
39
+ ...Default.args,
40
+ availableDynamicFilters: [],
41
+ },
42
+ };
@@ -0,0 +1,30 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { NoSearchResultsFound } from '@envive-ai/react-toolkit/SearchResultsStates';
3
+
4
+ const meta: Meta<typeof NoSearchResultsFound> = {
5
+ title: 'Search/NoSearchResultsFound',
6
+ component: NoSearchResultsFound,
7
+ parameters: {
8
+ layout: 'centered',
9
+ },
10
+ tags: ['autodocs'],
11
+ };
12
+
13
+ export default meta;
14
+ type Story = StoryObj<typeof NoSearchResultsFound>;
15
+
16
+ export const Default: Story = {
17
+ args: {
18
+ containerPaddingClasses: 'spiffy-tw-px-[16px]',
19
+ noResultsFoundText:
20
+ 'I’m sorry, I wasn’t able to find an exact match. Try changing your filters or adjusting your search query.',
21
+ sparkleIconColor: 'var(--spiffy-colors-accent-primary)',
22
+ },
23
+ };
24
+
25
+ export const CustomText: Story = {
26
+ args: {
27
+ ...Default.args,
28
+ noResultsFoundText: 'No items found matching your criteria. Please try again.',
29
+ },
30
+ };
@@ -0,0 +1,78 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { ProductCard } from '@envive-ai/react-toolkit/ProductCard';
3
+ import { productGridVariantClasses } from '@envive-ai/react-toolkit/ProductGrid';
4
+
5
+ const meta: Meta<typeof ProductCard> = {
6
+ title: 'Common/ProductCard',
7
+ component: ProductCard,
8
+ parameters: {
9
+ layout: 'centered',
10
+ },
11
+ tags: ['autodocs'],
12
+ argTypes: {
13
+ layoutVariant: {
14
+ control: 'select',
15
+ options: Object.values(productGridVariantClasses),
16
+ },
17
+ variant: {
18
+ control: 'select',
19
+ options: Object.values(productGridVariantClasses),
20
+ },
21
+ hoverVariant: {
22
+ control: 'select',
23
+ options: Object.values(productGridVariantClasses),
24
+ },
25
+ aspectRatio: {
26
+ control: 'select',
27
+ options: Object.values(productGridVariantClasses),
28
+ },
29
+ },
30
+ };
31
+
32
+ export default meta;
33
+ type Story = StoryObj<typeof ProductCard>;
34
+
35
+ export const Default: Story = {
36
+ args: {
37
+ productCardConfig: {
38
+ variant: 'minimal',
39
+ hoverVariant: 'backgroundDark',
40
+ layoutVariant: 'tall',
41
+ },
42
+ imageUrl: 'https://dummyimage.com/250x250/cccccc/aeaeae.jpg',
43
+ title: 'Example Product Title',
44
+ url: '#',
45
+ originalPrice: 25.0,
46
+ salePrice: 20.0,
47
+ averageRating: 4.5,
48
+ numberReviews: 120,
49
+ layoutVariant: 'tall',
50
+ variant: 'minimal',
51
+ hoverVariant: 'backgroundDark',
52
+ zoomOnHover: true,
53
+ aspectRatio: 'none',
54
+ growWithContainer: true,
55
+ },
56
+ };
57
+
58
+ export const TallLayout: Story = {
59
+ args: {
60
+ ...Default.args,
61
+ layoutVariant: 'tall',
62
+ },
63
+ };
64
+
65
+ export const NoSalePrice: Story = {
66
+ args: {
67
+ ...Default.args,
68
+ salePrice: undefined,
69
+ },
70
+ };
71
+
72
+ export const NoRating: Story = {
73
+ args: {
74
+ ...Default.args,
75
+ averageRating: undefined,
76
+ numberReviews: undefined,
77
+ },
78
+ };
@@ -0,0 +1,48 @@
1
+ import { ProductCardSkeleton } from '@envive-ai/react-toolkit/ProductCard';
2
+ import { productGridVariantClasses } from '@envive-ai/react-toolkit/ProductGrid';
3
+
4
+ import type { Meta, StoryObj } from '@storybook/react-vite';
5
+
6
+ const meta: Meta<typeof ProductCardSkeleton> = {
7
+ title: 'Common/ProductCardSkeleton',
8
+ component: ProductCardSkeleton,
9
+ parameters: {
10
+ layout: 'centered',
11
+ },
12
+ tags: ['autodocs'],
13
+ argTypes: {
14
+ layoutVariant: {
15
+ control: 'select',
16
+ options: Object.values(productGridVariantClasses),
17
+ },
18
+ aspectRatio: {
19
+ control: 'select',
20
+ options: Object.values(productGridVariantClasses),
21
+ },
22
+ },
23
+ };
24
+
25
+ export default meta;
26
+ type Story = StoryObj<typeof ProductCardSkeleton>;
27
+
28
+ export const Default: Story = {
29
+ args: {
30
+ layoutVariant: 'normal',
31
+ aspectRatio: 'none',
32
+ growWithContainer: true,
33
+ },
34
+ };
35
+
36
+ export const MinimalLayout: Story = {
37
+ args: {
38
+ ...Default.args,
39
+ layoutVariant: 'normal',
40
+ },
41
+ };
42
+
43
+ export const AspectRatio3x4: Story = {
44
+ args: {
45
+ ...Default.args,
46
+ aspectRatio: '3:4',
47
+ },
48
+ };
@@ -0,0 +1,82 @@
1
+ import { ProductGrid, productGridVariantClasses } from '@envive-ai/react-toolkit/ProductGrid';
2
+ import type { Meta, StoryObj } from '@storybook/react-vite';
3
+
4
+ const mockProductList = [
5
+ {
6
+ id: '1',
7
+ responseId: 'prod1',
8
+ imageUrl: 'https://dummyimage.com/250x250/cccccc/aeaeae.jpg',
9
+ title: 'Product 1',
10
+ url: '#',
11
+ originalPrice: 25.0,
12
+ salePrice: 20.0,
13
+ averageRating: 4.5,
14
+ numberReviews: 120,
15
+ },
16
+ {
17
+ id: '2',
18
+ responseId: 'prod2',
19
+ imageUrl: 'https://dummyimage.com/250x250/cccccc/aeaeae.jpg',
20
+ title: 'Product 2',
21
+ url: '#',
22
+ originalPrice: 30.0,
23
+ salePrice: 28.0,
24
+ averageRating: 3.9,
25
+ numberReviews: 85,
26
+ },
27
+ {
28
+ id: '3',
29
+ responseId: 'prod3',
30
+ imageUrl: 'https://dummyimage.com/250x250/cccccc/aeaeae.jpg',
31
+ title: 'Product 3',
32
+ url: '#',
33
+ originalPrice: 15.0,
34
+ salePrice: 12.5,
35
+ averageRating: 4.8,
36
+ numberReviews: 200,
37
+ },
38
+ {
39
+ id: '4',
40
+ responseId: 'prod4',
41
+ imageUrl: 'https://dummyimage.com/250x250/cccccc/aeaeae.jpg',
42
+ title: 'Product 4',
43
+ url: '#',
44
+ originalPrice: 50.0,
45
+ salePrice: 45.0,
46
+ averageRating: 4.2,
47
+ numberReviews: 50,
48
+ },
49
+ ];
50
+
51
+ const meta: Meta<typeof ProductGrid> = {
52
+ title: 'Common/ProductGrid',
53
+ component: ProductGrid,
54
+ parameters: {
55
+ layout: 'fullscreen',
56
+ },
57
+ tags: ['autodocs'],
58
+ argTypes: {
59
+ productGridVariant: {
60
+ control: 'select',
61
+ options: Object.values(productGridVariantClasses),
62
+ },
63
+ },
64
+ };
65
+
66
+ export default meta;
67
+ type Story = StoryObj<typeof ProductGrid>;
68
+
69
+ export const Default: Story = {
70
+ args: {
71
+ productList: mockProductList,
72
+ productGridVariant: 'standard',
73
+ productGridClasses:
74
+ 'spiffy-tw-grid spiffy-tw-justify-items-stretch spiffy-tw-grid-cols-2 md:spiffy-tw-grid-cols-3 lg:spiffy-tw-grid-cols-4 spiffy-tw-gap-x-[4px] spiffy-tw-gap-y-[24px] spiffy-tw-h-full spiffy-tw-w-full spiffy-tw-items-stretch',
75
+ cardsGrowWithContainer: true,
76
+ productCardConfig: {
77
+ variant: 'minimal',
78
+ hoverVariant: 'backgroundDark',
79
+ layoutVariant: 'tall',
80
+ },
81
+ },
82
+ };
@@ -0,0 +1,39 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { SearchInputForm } from '@envive-ai/react-toolkit/SearchInputForm';
3
+
4
+ export type SearchInputVariant = 'standard';
5
+
6
+ const mockAutocompleteResults = ['apple', 'banana', 'orange', 'grape', 'strawberry'];
7
+
8
+ const meta: Meta<typeof SearchInputForm> = {
9
+ title: 'Search/SearchInputForm',
10
+ component: SearchInputForm,
11
+ parameters: {
12
+ layout: 'centered',
13
+ },
14
+ tags: ['autodocs'],
15
+ argTypes: {
16
+ searchInputVariant: {
17
+ control: 'select',
18
+ options: ['standard'],
19
+ },
20
+ },
21
+ };
22
+
23
+ export default meta;
24
+ type Story = StoryObj<typeof SearchInputForm>;
25
+
26
+ export const Default: Story = {
27
+ args: {
28
+ searchInputVariant: 'standard' as SearchInputVariant,
29
+ searchText: '',
30
+ autocompleteResults: mockAutocompleteResults,
31
+ searchBoxPlaceholder: 'Search for products...',
32
+ focusedOptionId: undefined,
33
+ focusedIndex: -1,
34
+ onKeyDown: () => {},
35
+ onAutocompleteSelect: () => {},
36
+ onSearchInputChange: () => {},
37
+ onSearchSubmit: () => {},
38
+ },
39
+ };
@@ -0,0 +1,56 @@
1
+ import { SearchFilterDatum } from '@envive-ai/react-hooks/types';
2
+ import {
3
+ searchFilterSidebarVariantClasses,
4
+ SearchResultsFilter,
5
+ } from '@envive-ai/react-toolkit/SearchResultsFilterSidebar';
6
+ import type { Meta, StoryObj } from '@storybook/react-vite';
7
+
8
+ const mockSearchFilters: SearchFilterDatum[] = [
9
+ {
10
+ filterId: 'category',
11
+ displayName: 'Category',
12
+ items: [
13
+ { filterItemId: 'cat1', displayName: 'Category 1', productCount: 10, isSelected: false },
14
+ { filterItemId: 'cat2', displayName: 'Category 2', productCount: 10, isSelected: true },
15
+ ],
16
+ },
17
+ {
18
+ filterId: 'brand',
19
+ displayName: 'Brand',
20
+ items: [
21
+ { filterItemId: 'brandA', displayName: 'Brand A', productCount: 10, isSelected: false },
22
+ { filterItemId: 'brandB', displayName: 'Brand B', productCount: 10, isSelected: false },
23
+ ],
24
+ },
25
+ ];
26
+
27
+ const meta: Meta<typeof SearchResultsFilter> = {
28
+ title: 'Search/SearchResultsFilter',
29
+ component: SearchResultsFilter,
30
+ parameters: {
31
+ layout: 'fullscreen',
32
+ },
33
+ tags: ['autodocs'],
34
+ argTypes: {
35
+ searchFilterSidebarVariant: {
36
+ control: 'select',
37
+ options: Object.keys(searchFilterSidebarVariantClasses),
38
+ },
39
+ },
40
+ };
41
+
42
+ export default meta;
43
+ type Story = StoryObj<typeof SearchResultsFilter>;
44
+
45
+ export const Default: Story = {
46
+ args: {
47
+ productCount: 100,
48
+ isOpen: true,
49
+ setIsOpen: () => {},
50
+ searchFilters: mockSearchFilters,
51
+ searchFilterSidebarVariant: 'darkButton',
52
+ onSelectFilterItem: () => {},
53
+ onClearAllFilters: () => {},
54
+ filterButtonText: 'Filter',
55
+ },
56
+ };