@envive-ai/react-hooks 0.2.6-alpha-marlo.0 → 0.2.6-alpha-arthur-4

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 (679) hide show
  1. package/dist/AmplitudeOperations-BNFYCh-W.js +34 -0
  2. package/dist/AmplitudeOperations-CHlghWFQ.cjs +41 -0
  3. package/dist/{NewOrgConfig-BfbTlFg1.js → NewOrgConfig-BeoqDaSB.js} +2 -2
  4. package/dist/{NewOrgConfig-DJm6_abA.cjs → NewOrgConfig-DgWHQyUc.cjs} +2 -2
  5. package/dist/TrackComponentVisibleEvent-HbfzgXtF.js +53 -0
  6. package/dist/TrackComponentVisibleEvent-vsaQaHKi.cjs +60 -0
  7. package/dist/amplitudeContext-Dp-Tm43M.cjs +253 -0
  8. package/dist/amplitudeContext-DwszOulA.js +237 -0
  9. package/dist/amplitudeTrackEventAtom-nkZxYoLu.cjs +15 -0
  10. package/dist/amplitudeTrackEventAtom-pJbLG4En.js +8 -0
  11. package/dist/api-D4HaU2Gf.js +166 -0
  12. package/dist/api-D4Xoibs9.cjs +239 -0
  13. package/dist/app-BCuEBoPJ.cjs +36 -0
  14. package/dist/app-D73Rksby.js +14 -0
  15. package/dist/application/models/graphql/index.cjs +3 -3
  16. package/dist/application/models/graphql/index.d.cts +2 -2
  17. package/dist/application/models/graphql/index.d.ts +2 -2
  18. package/dist/application/models/graphql/index.js +2 -3
  19. package/dist/application/models/guards/api/index.cjs +3 -3
  20. package/dist/application/models/guards/api/index.d.cts +2 -2
  21. package/dist/application/models/guards/api/index.d.ts +2 -2
  22. package/dist/application/models/guards/api/index.js +3 -3
  23. package/dist/application/models/guards/utils.cjs +1 -1
  24. package/dist/application/models/guards/utils.d.ts +1 -1
  25. package/dist/application/models/guards/utils.js +1 -1
  26. package/dist/application/models/index.cjs +7 -23
  27. package/dist/application/models/index.d.cts +167 -11
  28. package/dist/application/models/index.d.ts +168 -12
  29. package/dist/application/models/index.js +7 -11
  30. package/dist/application/utils/index.cjs +10 -19
  31. package/dist/application/utils/index.d.cts +13 -63
  32. package/dist/application/utils/index.d.ts +13 -63
  33. package/dist/application/utils/index.js +10 -19
  34. package/dist/{atomStore-DXTVqiKc.js → atomStore-BuopbV9k.js} +1 -1
  35. package/dist/{atomStore-DNji91Im.cjs → atomStore-CZKe3itM.cjs} +1 -1
  36. package/dist/atoms/app/index.cjs +10 -24
  37. package/dist/atoms/app/index.d.cts +9 -21
  38. package/dist/atoms/app/index.d.ts +8 -20
  39. package/dist/atoms/app/index.js +7 -20
  40. package/dist/atoms/atomStore/index.cjs +1 -1
  41. package/dist/atoms/atomStore/index.js +1 -1
  42. package/dist/atoms/chat/index.cjs +23 -21
  43. package/dist/atoms/chat/index.d.cts +36 -45
  44. package/dist/atoms/chat/index.d.ts +34 -43
  45. package/dist/atoms/chat/index.js +23 -21
  46. package/dist/atoms/globalSearch/index.cjs +1 -2
  47. package/dist/atoms/globalSearch/index.d.cts +6 -6
  48. package/dist/atoms/globalSearch/index.d.ts +6 -6
  49. package/dist/atoms/globalSearch/index.js +1 -2
  50. package/dist/atoms/org/index.cjs +11 -11
  51. package/dist/atoms/org/index.d.cts +19 -31
  52. package/dist/atoms/org/index.d.ts +19 -31
  53. package/dist/atoms/org/index.js +3 -3
  54. package/dist/atoms/search/index.cjs +8 -47
  55. package/dist/atoms/search/index.d.cts +76 -14
  56. package/dist/atoms/search/index.d.ts +76 -14
  57. package/dist/atoms/search/index.js +8 -29
  58. package/dist/atoms/search/utils.cjs +1 -1
  59. package/dist/atoms/search/utils.d.cts +1 -1
  60. package/dist/atoms/search/utils.d.ts +1 -1
  61. package/dist/atoms/search/utils.js +1 -1
  62. package/dist/cdnContext-Bs73r4Xd.cjs +53 -0
  63. package/dist/cdnContext-DJ1pDg-l.js +38 -0
  64. package/dist/chat-BqUkaIbS.js +226 -0
  65. package/dist/chat-zxjIy0qQ.cjs +326 -0
  66. package/dist/chatState-CMoQ1TMs.cjs +119 -0
  67. package/dist/chatState-DRJrYuno.js +33 -0
  68. package/dist/config/index.d.cts +4 -4
  69. package/dist/config/index.d.ts +4 -4
  70. package/dist/config/locators/components/chat/index.d.cts +1 -1
  71. package/dist/config/locators/components/chat/index.d.ts +1 -1
  72. package/dist/config/locators/components/chat/variants/index.d.cts +1 -1
  73. package/dist/config/locators/components/chat/variants/index.d.ts +1 -1
  74. package/dist/config/locators/components/common/index.d.cts +1 -1
  75. package/dist/config/locators/components/common/index.d.ts +1 -1
  76. package/dist/config/locators/components/index.d.cts +1 -1
  77. package/dist/config/locators/components/index.d.ts +1 -1
  78. package/dist/config/locators/components/search/index.d.cts +1 -1
  79. package/dist/config/locators/components/search/index.d.ts +1 -1
  80. package/dist/config/locators/index.d.cts +4 -4
  81. package/dist/config/locators/index.d.ts +4 -4
  82. package/dist/contexts/amplitudeContext/index.cjs +11 -22
  83. package/dist/contexts/amplitudeContext/index.d.cts +11 -2
  84. package/dist/contexts/amplitudeContext/index.d.ts +11 -2
  85. package/dist/contexts/amplitudeContext/index.js +10 -20
  86. package/dist/contexts/atomProvider/index.cjs +18 -0
  87. package/dist/contexts/atomProvider/index.d.cts +11 -0
  88. package/dist/contexts/atomProvider/index.d.ts +11 -0
  89. package/dist/contexts/atomProvider/index.js +15 -0
  90. package/dist/contexts/cdnContext/index.cjs +4 -4
  91. package/dist/contexts/cdnContext/index.d.cts +2 -6
  92. package/dist/contexts/cdnContext/index.d.ts +2 -6
  93. package/dist/contexts/cdnContext/index.js +4 -4
  94. package/dist/contexts/enviveConfigContext/index.cjs +6 -4
  95. package/dist/contexts/enviveConfigContext/index.d.cts +5 -25
  96. package/dist/contexts/enviveConfigContext/index.d.ts +5 -25
  97. package/dist/contexts/enviveConfigContext/index.js +6 -5
  98. package/dist/contexts/enviveCssContext/index.cjs +17 -19
  99. package/dist/contexts/enviveCssContext/index.d.cts +3 -5
  100. package/dist/contexts/enviveCssContext/index.d.ts +3 -5
  101. package/dist/contexts/enviveCssContext/index.js +17 -19
  102. package/dist/contexts/featureFlagContext/index.cjs +9 -10
  103. package/dist/contexts/featureFlagContext/index.d.cts +3 -11
  104. package/dist/contexts/featureFlagContext/index.d.ts +3 -11
  105. package/dist/contexts/featureFlagContext/index.js +6 -7
  106. package/dist/contexts/featureFlagServiceContext/index.cjs +4 -3
  107. package/dist/contexts/featureFlagServiceContext/index.d.cts +1 -4
  108. package/dist/contexts/featureFlagServiceContext/index.d.ts +1 -4
  109. package/dist/contexts/featureFlagServiceContext/index.js +4 -3
  110. package/dist/contexts/graphqlContext/index.cjs +10 -13
  111. package/dist/contexts/graphqlContext/index.d.cts +11 -14
  112. package/dist/contexts/graphqlContext/index.d.ts +11 -14
  113. package/dist/contexts/graphqlContext/index.js +10 -13
  114. package/dist/contexts/localStorageContext/index.cjs +3 -3
  115. package/dist/contexts/localStorageContext/index.d.cts +3 -22
  116. package/dist/contexts/localStorageContext/index.d.ts +3 -22
  117. package/dist/contexts/localStorageContext/index.js +4 -3
  118. package/dist/contexts/newOrgConfigContext/index.cjs +15 -17
  119. package/dist/contexts/newOrgConfigContext/index.d.cts +12 -15
  120. package/dist/contexts/newOrgConfigContext/index.d.ts +12 -15
  121. package/dist/contexts/newOrgConfigContext/index.js +15 -17
  122. package/dist/contexts/searchContext/index.cjs +27 -24
  123. package/dist/contexts/searchContext/index.d.cts +2 -7
  124. package/dist/contexts/searchContext/index.d.ts +2 -7
  125. package/dist/contexts/searchContext/index.js +27 -24
  126. package/dist/contexts/sessionStorageContext/index.cjs +2 -2
  127. package/dist/contexts/sessionStorageContext/index.d.cts +2 -6
  128. package/dist/contexts/sessionStorageContext/index.d.ts +2 -6
  129. package/dist/contexts/sessionStorageContext/index.js +2 -2
  130. package/dist/contexts/shopifyUrlContext/index.cjs +2 -2
  131. package/dist/contexts/shopifyUrlContext/index.d.cts +2 -11
  132. package/dist/contexts/shopifyUrlContext/index.d.ts +2 -11
  133. package/dist/contexts/shopifyUrlContext/index.js +2 -2
  134. package/dist/contexts/systemSettingsContext/index.cjs +4 -4
  135. package/dist/contexts/systemSettingsContext/index.d.cts +4 -14
  136. package/dist/contexts/systemSettingsContext/index.d.ts +2 -12
  137. package/dist/contexts/systemSettingsContext/index.js +4 -4
  138. package/dist/contexts/userIdentityContext/index.cjs +22 -21
  139. package/dist/contexts/userIdentityContext/index.d.cts +11 -2
  140. package/dist/contexts/userIdentityContext/index.d.ts +11 -2
  141. package/dist/contexts/userIdentityContext/index.js +20 -19
  142. package/dist/dist-B7BErEyV.cjs +6019 -0
  143. package/dist/dist-CtkINi1R.js +5923 -0
  144. package/dist/domObserver-CVhsCSkS.js +285 -0
  145. package/dist/{domObserver-v9ODTyfT.js → domObserver-LCBj1xw4.cjs} +23 -4
  146. package/dist/enviveConfig-6XJa6HAF.cjs +125 -0
  147. package/dist/enviveConfig-Cw7o9TLb.js +63 -0
  148. package/dist/enviveConfigContext-D_bCeK56.js +48 -0
  149. package/dist/enviveConfigContext-DoBbJZp_.cjs +69 -0
  150. package/dist/events/index.cjs +2 -3
  151. package/dist/events/index.d.cts +2 -15
  152. package/dist/events/index.d.ts +2 -15
  153. package/dist/events/index.js +2 -2
  154. package/dist/events-CgFGtanE.cjs +69 -0
  155. package/dist/events-WOOrnUAx.js +63 -0
  156. package/dist/exceptions/index.cjs +4 -0
  157. package/dist/exceptions/index.d.cts +12 -0
  158. package/dist/exceptions/index.d.ts +12 -0
  159. package/dist/exceptions/index.js +3 -0
  160. package/dist/exceptions-BjDgLzGi.cjs +32 -0
  161. package/dist/exceptions-CUGY31Ua.js +20 -0
  162. package/dist/featureFlagServiceContext-C6nTNI_i.d.ts +24 -0
  163. package/dist/featureFlagServiceContext-ClnlCJV5.d.cts +24 -0
  164. package/dist/featureFlagServiceContext-DQYo0d6Q.cjs +66 -0
  165. package/dist/featureFlagServiceContext-GIO9xKV0.js +46 -0
  166. package/dist/{globalSearch-Ccxq8hNF.js → globalSearch-B8jHLScz.js} +1 -1
  167. package/dist/{globalSearch-FBk2epe8.cjs → globalSearch-JJI1Fijh.cjs} +1 -1
  168. package/dist/graphql-CvAHWmel.js +46 -0
  169. package/dist/graphql-JaGqsToc.cjs +70 -0
  170. package/dist/graphqlContext-CXyZamIk.cjs +108 -0
  171. package/dist/graphqlContext-cAZtpn-W.js +94 -0
  172. package/dist/hooks/AmplitudeOperations/index.cjs +11 -22
  173. package/dist/hooks/AmplitudeOperations/index.d.cts +2 -2
  174. package/dist/hooks/AmplitudeOperations/index.d.ts +2 -2
  175. package/dist/hooks/AmplitudeOperations/index.js +10 -21
  176. package/dist/hooks/AppDetails/index.cjs +25 -22
  177. package/dist/hooks/AppDetails/index.d.cts +1 -12
  178. package/dist/hooks/AppDetails/index.d.ts +1 -12
  179. package/dist/hooks/AppDetails/index.js +25 -22
  180. package/dist/hooks/CdnOperations/index.cjs +4 -4
  181. package/dist/hooks/CdnOperations/index.js +4 -4
  182. package/dist/hooks/ChatToggle/index.cjs +31 -25
  183. package/dist/hooks/ChatToggle/index.d.cts +2 -2
  184. package/dist/hooks/ChatToggle/index.d.ts +2 -2
  185. package/dist/hooks/ChatToggle/index.js +28 -22
  186. package/dist/hooks/ChatToggleAnalytics/index.cjs +13 -24
  187. package/dist/hooks/ChatToggleAnalytics/index.d.cts +2 -2
  188. package/dist/hooks/ChatToggleAnalytics/index.d.ts +2 -2
  189. package/dist/hooks/ChatToggleAnalytics/index.js +12 -23
  190. package/dist/hooks/CustomerSupportHandoff/index.cjs +2 -2
  191. package/dist/hooks/CustomerSupportHandoff/index.js +2 -2
  192. package/dist/hooks/Debounce/index.cjs +20 -2
  193. package/dist/hooks/Debounce/index.d.ts +1 -1
  194. package/dist/hooks/Debounce/index.js +18 -2
  195. package/dist/hooks/ElementObserver/index.cjs +4 -6
  196. package/dist/hooks/ElementObserver/index.d.cts +4 -25
  197. package/dist/hooks/ElementObserver/index.d.ts +4 -25
  198. package/dist/hooks/ElementObserver/index.js +4 -6
  199. package/dist/hooks/GrabAndScroll/index.cjs +1 -1
  200. package/dist/hooks/GrabAndScroll/index.d.cts +3 -3
  201. package/dist/hooks/GrabAndScroll/index.js +1 -1
  202. package/dist/hooks/GraphQLConfig/index.cjs +11 -14
  203. package/dist/hooks/GraphQLConfig/index.d.cts +2 -13
  204. package/dist/hooks/GraphQLConfig/index.d.ts +2 -13
  205. package/dist/hooks/GraphQLConfig/index.js +11 -14
  206. package/dist/hooks/IdentifyUser/index.cjs +22 -21
  207. package/dist/hooks/IdentifyUser/index.js +21 -20
  208. package/dist/hooks/ImageResolver/index.cjs +20 -29
  209. package/dist/hooks/ImageResolver/index.js +20 -29
  210. package/dist/hooks/Intersection/index.cjs +1 -1
  211. package/dist/hooks/Intersection/index.js +1 -1
  212. package/dist/hooks/LocalStorageOperations/index.cjs +8 -7
  213. package/dist/hooks/LocalStorageOperations/index.js +4 -3
  214. package/dist/hooks/MessageFilter/index.cjs +3 -12
  215. package/dist/hooks/MessageFilter/index.d.cts +2 -17
  216. package/dist/hooks/MessageFilter/index.d.ts +2 -17
  217. package/dist/hooks/MessageFilter/index.js +2 -11
  218. package/dist/hooks/NewOrgConfig/index.cjs +16 -18
  219. package/dist/hooks/NewOrgConfig/index.d.cts +3 -16
  220. package/dist/hooks/NewOrgConfig/index.d.ts +3 -16
  221. package/dist/hooks/NewOrgConfig/index.js +16 -18
  222. package/dist/hooks/Search/index.cjs +304 -173
  223. package/dist/hooks/Search/index.d.cts +3 -57
  224. package/dist/hooks/Search/index.d.ts +3 -57
  225. package/dist/hooks/Search/index.js +291 -161
  226. package/dist/hooks/SearchOperations/index.cjs +28 -25
  227. package/dist/hooks/SearchOperations/index.d.cts +2 -3
  228. package/dist/hooks/SearchOperations/index.d.ts +2 -3
  229. package/dist/hooks/SearchOperations/index.js +28 -25
  230. package/dist/hooks/SessionStorageOperations/index.cjs +2 -2
  231. package/dist/hooks/SessionStorageOperations/index.js +2 -2
  232. package/dist/hooks/ShopifyUrlOperations/index.cjs +3 -3
  233. package/dist/hooks/ShopifyUrlOperations/index.d.cts +3 -5
  234. package/dist/hooks/ShopifyUrlOperations/index.d.ts +3 -5
  235. package/dist/hooks/ShopifyUrlOperations/index.js +3 -3
  236. package/dist/hooks/SnapCalculator/index.cjs +1 -1
  237. package/dist/hooks/SnapCalculator/index.d.cts +4 -3
  238. package/dist/hooks/SnapCalculator/index.d.ts +4 -3
  239. package/dist/hooks/SnapCalculator/index.js +1 -1
  240. package/dist/hooks/SystemSettingsContext/index.cjs +17 -6
  241. package/dist/hooks/SystemSettingsContext/index.d.cts +5 -15
  242. package/dist/hooks/SystemSettingsContext/index.d.ts +4 -14
  243. package/dist/hooks/SystemSettingsContext/index.js +15 -6
  244. package/dist/hooks/TrackComponentVisibleEvent/index.cjs +11 -21
  245. package/dist/hooks/TrackComponentVisibleEvent/index.d.cts +2 -3
  246. package/dist/hooks/TrackComponentVisibleEvent/index.d.ts +2 -3
  247. package/dist/hooks/TrackComponentVisibleEvent/index.js +11 -21
  248. package/dist/hooks/UpdateAnalyticsProps/index.cjs +16 -24
  249. package/dist/hooks/UpdateAnalyticsProps/index.d.cts +1 -1
  250. package/dist/hooks/UpdateAnalyticsProps/index.js +12 -20
  251. package/dist/hooks/utils.d.cts +20 -13
  252. package/dist/hooks/utils.d.ts +20 -13
  253. package/dist/index-BVZbvpx_.d.cts +11 -0
  254. package/dist/{index-FQjyuD3D.d.cts → index-BbqT4BQv.d.cts} +1 -1
  255. package/dist/{index-Da1s8h5C.d.cts → index-CAJq_8bO.d.cts} +1 -1
  256. package/dist/index-CMZcE7pk.d.cts +224 -0
  257. package/dist/index-ChRMX2kc.d.ts +42 -0
  258. package/dist/{index-DzbkQtaK.d.cts → index-ChiZg0yw.d.cts} +1 -1
  259. package/dist/{index-DJTrxIFJ.d.ts → index-CkaLTFlB.d.ts} +1 -1
  260. package/dist/{index-BeYfyZ6k.d.ts → index-Cl35ht05.d.ts} +1 -1
  261. package/dist/{index-h809JLbL.d.ts → index-DIq5F_-r.d.ts} +1 -1
  262. package/dist/{index-xHVrsrbz.d.ts → index-DijHU7yp.d.ts} +1 -1
  263. package/dist/index-PktRD1En.d.ts +11 -0
  264. package/dist/{index-9NE86em3.d.cts → index-npqPeJ1g.d.cts} +1 -1
  265. package/dist/index-qOBU4GEh.d.cts +42 -0
  266. package/dist/index-smzckpKv.d.ts +224 -0
  267. package/dist/interceptors/index.cjs +28 -3
  268. package/dist/interceptors/index.d.cts +4 -15
  269. package/dist/interceptors/index.d.ts +4 -15
  270. package/dist/interceptors/index.js +25 -3
  271. package/dist/localStorageContext-CvwraLEo.js +90 -0
  272. package/dist/localStorageContext-DIIUUEvL.cjs +104 -0
  273. package/dist/{logger-W3lqg-4b.js → logger-BMVdhQOV.js} +1 -1
  274. package/dist/{logger-TBIl4uIH.cjs → logger-BqHq67zN.cjs} +1 -1
  275. package/dist/models-DmsMlaHT.js +1118 -0
  276. package/dist/models-wh2gh_Qz.cjs +1305 -0
  277. package/dist/{newOrgConfigAtom-DxILMn2I.cjs → newOrgConfigAtom-vEChAMrW.cjs} +1 -1
  278. package/dist/newOrgConfigAtom-wQeGYEFq.js +8 -0
  279. package/dist/newOrgConfigContext-C8uWGgkE.cjs +70 -0
  280. package/dist/newOrgConfigContext-garCXaH1.js +55 -0
  281. package/dist/nodeSelector-BYEAyrsj.d.cts +28 -0
  282. package/dist/nodeSelector-DU-o1I1d.d.ts +28 -0
  283. package/dist/org-DEzeBBk6.js +22 -0
  284. package/dist/org-Ky10pcuq.cjs +77 -0
  285. package/dist/orgAnalyticsConfig-Bxm8BZch.js +14 -0
  286. package/dist/orgAnalyticsConfig-DU1aESDh.cjs +39 -0
  287. package/dist/search-C4ZLnfzE.js +233 -0
  288. package/dist/search-DUJiAeEo.cjs +312 -0
  289. package/dist/searchContext-BrPSGjRo.js +130 -0
  290. package/dist/searchContext-Ck94DuBO.cjs +146 -0
  291. package/dist/searchServiceAdapter-C3_FRUly.js +16 -0
  292. package/dist/searchServiceAdapter-tPd0NClV.cjs +34 -0
  293. package/dist/sessionStorageContext-CBwNI1Va.js +52 -0
  294. package/dist/sessionStorageContext-CmHIsV7a.cjs +66 -0
  295. package/dist/shopifyUrlContext-C3gw4ZIN.js +61 -0
  296. package/dist/shopifyUrlContext-ZJtT_0XX.cjs +75 -0
  297. package/dist/systemSettingsContext-DzAyy0iP.js +39 -0
  298. package/dist/systemSettingsContext-ru4nA9k_.cjs +60 -0
  299. package/dist/types/index.cjs +3 -48
  300. package/dist/types/index.d.cts +2 -17
  301. package/dist/types/index.d.ts +2 -17
  302. package/dist/types/index.js +2 -44
  303. package/dist/types-1iJ_FnQQ.cjs +39 -0
  304. package/dist/types-D5du68Vp.js +27 -0
  305. package/dist/urlsParser-Dax4iVNC.cjs +78 -0
  306. package/dist/urlsParser-NAp2LwWP.js +42 -0
  307. package/dist/useAppDetails-Bg1yCUZi.cjs +41 -0
  308. package/dist/useAppDetails-Buzm9yIj.js +33 -0
  309. package/dist/useGraphQLConfig-B6CiGP57.cjs +76 -0
  310. package/dist/useGraphQLConfig-f2MK-FPn.js +63 -0
  311. package/dist/{useIntersection-Cncgxdmy.js → useIntersection-UEO0Cezc.js} +1 -1
  312. package/dist/{useIntersection-m4PEpvG7.cjs → useIntersection-rV0Q8mBH.cjs} +1 -1
  313. package/dist/userIdentityContext-B8XLgxMQ.cjs +431 -0
  314. package/dist/userIdentityContext-DgFLendI.js +414 -0
  315. package/dist/{utils-DIvMgPe8.js → utils-B1LVzQYK.js} +1 -1
  316. package/dist/{utils-DpneNSJf.d.ts → utils-BLe5oreh.d.ts} +1 -1
  317. package/dist/{utils-CqBxIpEV.js → utils-B_cnJJAH.js} +1 -1
  318. package/dist/{utils-CDw74BCO.cjs → utils-CiJLDPjY.cjs} +1 -1
  319. package/dist/utils-CxDOv-yL.js +607 -0
  320. package/dist/utils-D_kATUj6.js +1 -1
  321. package/dist/utils-DucG4gQ7.cjs +716 -0
  322. package/dist/{utils-2SWrJ12w.cjs → utils-_Q_-LvZS.cjs} +1 -1
  323. package/dist/utils-hYTjy7hJ.cjs +1 -1
  324. package/dist/variant-Ben5gKtM.js +93 -0
  325. package/dist/variant-CvYVVCqU.cjs +107 -0
  326. package/package.json +13 -36
  327. package/src/application/commerce-api.ts +44 -38
  328. package/src/application/models/graphql/index.ts +1 -0
  329. package/src/application/models/graphql/queries/getMerchantColorsQuery.ts +1 -23
  330. package/src/application/models/graphql/queries/getMerchantFrontendConfigQuery.ts +1 -89
  331. package/src/application/models/guards/api/isApiFormResponse.ts +4 -4
  332. package/src/application/models/guards/api/isApiFormSubmittedResponseAttributes.ts +2 -2
  333. package/src/application/models/guards/api/isApiOrderResponseAttributes.ts +2 -20
  334. package/src/application/models/guards/api/isApiOrgConfigResults.ts +3 -9
  335. package/src/application/models/guards/api/isApiOrganizationConfig.ts +8 -32
  336. package/src/application/models/guards/api/isApiPDPEventAttributes.ts +8 -5
  337. package/src/application/models/guards/api/isApiPLPEventAttributes.ts +14 -10
  338. package/src/application/models/guards/api/isApiPageResponseAttributes.ts +1 -1
  339. package/src/application/models/guards/api/isApiProductResponseAttributes.ts +2 -4
  340. package/src/application/models/guards/api/isApiProductSearchAttributes.ts +9 -6
  341. package/src/application/models/guards/api/isApiProductSearchFilterAttributes.ts +7 -4
  342. package/src/application/models/guards/api/isApiQueryTypedEventAttributes.ts +8 -3
  343. package/src/application/models/guards/api/isApiResponse.ts +22 -15
  344. package/src/application/models/guards/api/isApiReviewResponseAttributes.ts +1 -1
  345. package/src/application/models/guards/api/isApiReviewRichInformation.ts +1 -1
  346. package/src/application/models/guards/api/isApiTextResponseAttributes.ts +1 -1
  347. package/src/application/models/guards/graphQL/isGraphQLColorsConfig.ts +1 -1
  348. package/src/application/models/guards/isBaseEcommerceEvent.ts +1 -2
  349. package/src/application/models/guards/isGA4EcommerceEvent.ts +1 -1
  350. package/src/application/models/guards/isLegacyUAEcommerceEvent.ts +1 -1
  351. package/src/application/models/guards/isMobilePLPChatPlacementParameter.ts +1 -3
  352. package/src/application/models/guards/isSpanxTakeAQuizCtaParameter.ts +5 -3
  353. package/src/application/models/guards/isVariantInfo.ts +6 -1
  354. package/src/application/models/index.ts +30 -95
  355. package/src/application/models/utils/snakeToCamelTransformer.ts +8 -8
  356. package/src/application/models/validators/validateGraphQLColorsConfig.ts +6 -2
  357. package/src/application/models/validators/validateGraphQLFrontendConfig.ts +6 -6
  358. package/src/application/models/validators/validateMobilePLPChatPlacementParameter.ts +5 -3
  359. package/src/application/models/validators/validateOrgConfigResults.ts +6 -5
  360. package/src/application/models/validators/validateOrganizationConfig.ts +11 -8
  361. package/src/application/models/validators/validateResponse.ts +66 -44
  362. package/src/application/models/validators/validateSuggestion.ts +1 -1
  363. package/src/application/models/validators/validateUserEvent.ts +23 -12
  364. package/src/application/utils/analyticsUtils.ts +1 -8
  365. package/src/application/utils/coreContextToApiContext.ts +3 -1
  366. package/src/application/utils/coreUserEventToApiUserEvent.ts +2 -2
  367. package/src/application/utils/elementObserver.ts +1 -1
  368. package/src/application/utils/imageFilter.ts +5 -2
  369. package/src/application/utils/index.ts +20 -21
  370. package/src/application/utils/messageFromFormSubmittedEvent.ts +1 -1
  371. package/src/application/utils/messageFromQueryEvent.ts +1 -1
  372. package/src/application/utils/messageFromResponse.ts +14 -10
  373. package/src/application/utils/messageFromSuggestionEvent.ts +6 -4
  374. package/src/application/utils/mouseEventTypes.ts +1 -1
  375. package/src/application/utils/nextMessageRequestToApiRequest.ts +1 -1
  376. package/src/application/utils/overrides.ts +1 -49
  377. package/src/application/utils/supportedEventRequestToApiRequest.ts +3 -1
  378. package/src/application/utils/urlsParser.ts +1 -7
  379. package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +1 -1
  380. package/src/atoms/app/index.ts +11 -39
  381. package/src/atoms/app/variant.ts +1 -1
  382. package/src/atoms/chat/chatState.ts +4 -4
  383. package/src/atoms/chat/form.ts +1 -1
  384. package/src/atoms/chat/messageQueue.ts +27 -47
  385. package/src/atoms/chat/replies.ts +1 -2
  386. package/src/atoms/chat/suggestions.ts +34 -29
  387. package/src/atoms/envive/enviveConfig.ts +15 -20
  388. package/src/atoms/org/customerService.ts +4 -8
  389. package/src/atoms/org/graphqlConfig.ts +7 -15
  390. package/src/atoms/org/index.ts +4 -6
  391. package/src/atoms/org/newOrgConfigAtom.ts +2 -2
  392. package/src/atoms/org/orgAnalyticsConfig.ts +1 -1
  393. package/src/atoms/search/index.ts +0 -1
  394. package/src/atoms/search/productFilters.ts +72 -52
  395. package/src/atoms/search/productRetrievalAPI.ts +72 -0
  396. package/src/atoms/search/productRetrievalAdapter.ts +28 -0
  397. package/src/atoms/search/productSorter.ts +2 -2
  398. package/src/atoms/search/searchAPI.ts +42 -60
  399. package/src/atoms/search/searchServiceAdapter.ts +1 -1
  400. package/src/contexts/amplitudeContext/amplitudeContext.tsx +26 -64
  401. package/src/contexts/atomProvider/atomProvider.tsx +6 -0
  402. package/src/contexts/atomProvider/index.ts +1 -0
  403. package/src/contexts/cdnContext/cdnContext.tsx +1 -6
  404. package/src/contexts/chatContext/chatContext.tsx +5 -2
  405. package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +23 -34
  406. package/src/contexts/enviveCssContext/enviveCssContext.tsx +5 -12
  407. package/src/contexts/featureFlagContext/featureFlagContext.tsx +27 -48
  408. package/src/contexts/featureFlagServiceContext/featureFlagServiceContext.tsx +11 -3
  409. package/src/contexts/graphqlContext/graphqlContext.tsx +45 -97
  410. package/src/contexts/localStorageContext/localStorageContext.tsx +26 -60
  411. package/src/contexts/newOrgConfigContext/newOrgConfigContext.tsx +21 -25
  412. package/src/contexts/searchContext/searchContext.tsx +30 -49
  413. package/src/contexts/sessionStorageContext/sessionStorageContext.tsx +12 -33
  414. package/src/contexts/shopifyUrlContext/shopifyUrlContext.tsx +20 -37
  415. package/src/contexts/systemSettingsContext/systemSettingsContext.tsx +8 -21
  416. package/src/contexts/userIdentityContext/userIdentityContext.tsx +33 -77
  417. package/src/events/index.ts +8 -5
  418. package/src/events/registerAnalyticsListeners.ts +10 -13
  419. package/src/exceptions/index.ts +2 -0
  420. package/src/{types/exceptions → exceptions}/unsupportedProductExceptions.ts +2 -2
  421. package/src/global.d.ts +8 -0
  422. package/src/hooks/AmplitudeOperations/useAmplitudeOperations.ts +6 -11
  423. package/src/hooks/AppDetails/useAppDetails.ts +14 -15
  424. package/src/hooks/ChatToggle/useChatToggle.ts +7 -19
  425. package/src/hooks/ChatToggleAnalytics/useChatToggleAnalytics.ts +4 -4
  426. package/src/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.ts +1 -1
  427. package/src/hooks/ElementObserver/useElementObserver.ts +14 -32
  428. package/src/hooks/GrabAndScroll/useGrabAndScroll.ts +125 -124
  429. package/src/hooks/GraphQLConfig/useGraphQLConfig.ts +5 -7
  430. package/src/hooks/ImageResolver/useImageResolver.ts +24 -31
  431. package/src/hooks/LocalStorageOperations/useLocalStorageOperations.ts +12 -19
  432. package/src/hooks/MessageFilter/useMessageFilter.ts +1 -7
  433. package/src/hooks/Search/useRecommendedProducts.ts +50 -0
  434. package/src/hooks/Search/useSearch.tsx +87 -217
  435. package/src/hooks/Search/useSearchInput.ts +237 -0
  436. package/src/hooks/SearchOperations/useSearchOperations.ts +8 -12
  437. package/src/hooks/ShopifyUrlOperations/useShopifyUrlOperations.ts +8 -14
  438. package/src/hooks/SnapCalculator/useSnapCalculator.ts +1 -2
  439. package/src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.ts +8 -11
  440. package/src/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.ts +11 -25
  441. package/src/hooks/utils.ts +19 -29
  442. package/src/interceptors/index.ts +1 -2
  443. package/src/interceptors/useMessageInterceptor.ts +10 -6
  444. package/src/{application/models/api/response.ts → types/ApiResponse.ts} +35 -29
  445. package/src/types/FilterAttribute.ts +35 -0
  446. package/src/{application/models/message.ts → types/Message.ts} +38 -34
  447. package/src/types/Suggestion.ts +6 -0
  448. package/src/types/index.ts +4 -5
  449. package/src/util/colorVar.ts +4 -0
  450. package/src/util/configVersion.ts +4 -0
  451. package/src/util/domInsertion.ts +17 -0
  452. package/dist/SystemSettingsContext-6ZHzQkCE.cjs +0 -20
  453. package/dist/SystemSettingsContext-BbTKNBvJ.js +0 -13
  454. package/dist/TrackComponentVisibleEvent-BJgNOypY.js +0 -52
  455. package/dist/TrackComponentVisibleEvent-BRC2FTp-.cjs +0 -59
  456. package/dist/amplitudeContext-B73xamNe.d.cts +0 -52
  457. package/dist/amplitudeContext-CZUzMXHl.d.ts +0 -52
  458. package/dist/api-BWSsazAG.js +0 -166
  459. package/dist/api-DeW6rHj3.cjs +0 -239
  460. package/dist/application/models/utilityTypes/index.cjs +0 -1
  461. package/dist/application/models/utilityTypes/index.d.cts +0 -2
  462. package/dist/application/models/utilityTypes/index.d.ts +0 -2
  463. package/dist/application/models/utilityTypes/index.js +0 -3
  464. package/dist/application/models/variantInfo/index.cjs +0 -3
  465. package/dist/application/models/variantInfo/index.d.cts +0 -2
  466. package/dist/application/models/variantInfo/index.d.ts +0 -2
  467. package/dist/application/models/variantInfo/index.js +0 -3
  468. package/dist/atoms/search/types.cjs +0 -5
  469. package/dist/atoms/search/types.d.cts +0 -2
  470. package/dist/atoms/search/types.d.ts +0 -2
  471. package/dist/atoms/search/types.js +0 -3
  472. package/dist/cdnContext-CEGBVVBU.js +0 -38
  473. package/dist/cdnContext-DOSIofl8.cjs +0 -53
  474. package/dist/chat-CqPuT9_V.cjs +0 -393
  475. package/dist/chat-DH70QqJp.js +0 -257
  476. package/dist/chatElementDisplayLocation-CpgV2wR1.d.ts +0 -25
  477. package/dist/chatElementDisplayLocation-DWmfNX_u.d.cts +0 -25
  478. package/dist/chatSearch-C7Y-hb-6.js +0 -295
  479. package/dist/chatSearch-DLV4BUGA.cjs +0 -418
  480. package/dist/chatState-CcFtSqJT.cjs +0 -120
  481. package/dist/chatState-DKnNHmwe.js +0 -34
  482. package/dist/contexts/chatContext/index.cjs +0 -326
  483. package/dist/contexts/chatContext/index.d.cts +0 -15
  484. package/dist/contexts/chatContext/index.d.ts +0 -15
  485. package/dist/contexts/chatContext/index.js +0 -319
  486. package/dist/contexts/types.cjs +0 -7
  487. package/dist/contexts/types.d.cts +0 -4
  488. package/dist/contexts/types.d.ts +0 -4
  489. package/dist/contexts/types.js +0 -3
  490. package/dist/domObserver-Bqf3ooj8.cjs +0 -304
  491. package/dist/enviveConfig-DZBohDpc.js +0 -62
  492. package/dist/enviveConfig-Dv9-esGV.cjs +0 -130
  493. package/dist/enviveConfigContext-D2OELZDR.cjs +0 -60
  494. package/dist/enviveConfigContext-DrDjCems.js +0 -45
  495. package/dist/events-DYY4l817.cjs +0 -90
  496. package/dist/events-DyUix-Bn.js +0 -78
  497. package/dist/featureFlagServiceContext-Be_LUbFf.d.cts +0 -23
  498. package/dist/featureFlagServiceContext-CJyYItqu.cjs +0 -62
  499. package/dist/featureFlagServiceContext-FBM6DdMJ.js +0 -42
  500. package/dist/featureFlagServiceContext-V0J-69ty.d.ts +0 -23
  501. package/dist/featureGates-KEwAL8p_.js +0 -26
  502. package/dist/featureGates-qU_ulhpC.cjs +0 -32
  503. package/dist/frontendConfig-CeWhVevA.d.ts +0 -857
  504. package/dist/frontendConfig-OWWJmuPc.d.cts +0 -857
  505. package/dist/graphql-3PxNRFOc.js +0 -36
  506. package/dist/graphql-DGYfelZp.cjs +0 -53
  507. package/dist/graphqlConfig-GHZ1UgCw.cjs +0 -73
  508. package/dist/graphqlConfig-mDg6J44N.js +0 -24
  509. package/dist/graphqlContext-BQA6gnpH.d.ts +0 -28
  510. package/dist/graphqlContext-Ci5GRAdH.js +0 -96
  511. package/dist/graphqlContext-D67VEQg3.d.cts +0 -28
  512. package/dist/graphqlContext-W0cZNBf1.cjs +0 -111
  513. package/dist/hooks/FloatingButtonVisibility/index.cjs +0 -73
  514. package/dist/hooks/FloatingButtonVisibility/index.d.cts +0 -7
  515. package/dist/hooks/FloatingButtonVisibility/index.d.ts +0 -7
  516. package/dist/hooks/FloatingButtonVisibility/index.js +0 -69
  517. package/dist/hooks/LastInteraction/index.cjs +0 -34
  518. package/dist/hooks/LastInteraction/index.d.cts +0 -17
  519. package/dist/hooks/LastInteraction/index.d.ts +0 -17
  520. package/dist/hooks/LastInteraction/index.js +0 -32
  521. package/dist/index-BeGt0Aw3.d.cts +0 -186
  522. package/dist/index-Bmub8e38.d.cts +0 -98
  523. package/dist/index-CCa4tZuO.d.ts +0 -184
  524. package/dist/index-CESxqFso.d.cts +0 -228
  525. package/dist/index-CgAfoNpB.d.ts +0 -1
  526. package/dist/index-CiWEYzXl.d.cts +0 -184
  527. package/dist/index-Cyq5HiC0.d.cts +0 -44
  528. package/dist/index-D4c-port.d.ts +0 -676
  529. package/dist/index-DazMsEy_.d.ts +0 -44
  530. package/dist/index-Dfwnna1j.d.ts +0 -228
  531. package/dist/index-O33GSSRr.d.cts +0 -676
  532. package/dist/index-RcVcRKH7.d.cts +0 -1
  533. package/dist/index-bjMvkcBF.d.ts +0 -98
  534. package/dist/index-xhBQ1HBx.d.ts +0 -186
  535. package/dist/interceptors/types.cjs +0 -1
  536. package/dist/interceptors/types.d.cts +0 -13
  537. package/dist/interceptors/types.d.ts +0 -13
  538. package/dist/interceptors/types.js +0 -3
  539. package/dist/localStorageContext-BPZ82q-G.js +0 -95
  540. package/dist/localStorageContext-NRP-CdmF.cjs +0 -115
  541. package/dist/models-D-4db7XW.cjs +0 -1537
  542. package/dist/models-c86hYW-F.js +0 -1296
  543. package/dist/newOrgConfigAtom-sqve6LZU.js +0 -8
  544. package/dist/newOrgConfigContext-5Bw7RwT-.d.cts +0 -16
  545. package/dist/newOrgConfigContext-CS8IA5Eg.d.ts +0 -16
  546. package/dist/newOrgConfigContext-Cl4H9c3q.cjs +0 -68
  547. package/dist/newOrgConfigContext-DQiuf8nd.js +0 -53
  548. package/dist/nodeSelector-B3bPtEjX.d.cts +0 -31
  549. package/dist/nodeSelector-BiCDowlK.d.ts +0 -31
  550. package/dist/org-DlAesvQ_.cjs +0 -43
  551. package/dist/org-vi0njpBh.js +0 -12
  552. package/dist/search-1NQLQD9d.d.ts +0 -20
  553. package/dist/search-CXXslzAO.cjs +0 -205
  554. package/dist/search-DBSMrXWv.js +0 -126
  555. package/dist/search-filter-types-BxaNSLs_.d.cts +0 -102
  556. package/dist/search-filter-types-DPgeG8FS.d.ts +0 -102
  557. package/dist/search-y-ioX5Mz.d.cts +0 -20
  558. package/dist/searchContext-DXW6xvXv.cjs +0 -145
  559. package/dist/searchContext-mvwUJncR.js +0 -129
  560. package/dist/searchServiceAdapter-DEv1tTn0.cjs +0 -34
  561. package/dist/searchServiceAdapter-WyCU55NV.js +0 -16
  562. package/dist/sessionStorageContext-1Ks_d4Z0.cjs +0 -66
  563. package/dist/sessionStorageContext-CDcl7NVl.js +0 -52
  564. package/dist/shopifyUrlContext-CejRZfj7.js +0 -61
  565. package/dist/shopifyUrlContext-lnHoAOEf.cjs +0 -75
  566. package/dist/spiffyWidgets-B1uc84_g.d.ts +0 -20
  567. package/dist/spiffyWidgets-BuS00VaQ.d.cts +0 -20
  568. package/dist/systemSettingsContext-B0Kyq7nA.cjs +0 -60
  569. package/dist/systemSettingsContext-CVUxEcsU.js +0 -39
  570. package/dist/test-types-ThQiO_cc.d.cts +0 -40
  571. package/dist/test-types-y6kp-tiw.d.ts +0 -40
  572. package/dist/types-BCz-hOvv.d.ts +0 -51
  573. package/dist/types-CKMMb_gX.d.cts +0 -51
  574. package/dist/types-CKPddlfS.cjs +0 -0
  575. package/dist/types-CS0Hrzja.js +0 -30
  576. package/dist/types-CtUb63bt.js +0 -76
  577. package/dist/types-CxObxLKs.cjs +0 -48
  578. package/dist/types-Db5Eux6K.d.ts +0 -10
  579. package/dist/types-Dc6hx6ei.js +0 -1
  580. package/dist/types-UUvB6h05.cjs +0 -106
  581. package/dist/types-zQGBI-Yo.d.cts +0 -10
  582. package/dist/types.cjs +0 -0
  583. package/dist/types.d.cts +0 -34
  584. package/dist/types.d.ts +0 -34
  585. package/dist/types.js +0 -1
  586. package/dist/urlsParser-COzMdJaX.cjs +0 -78
  587. package/dist/urlsParser-DxjoLj98.js +0 -42
  588. package/dist/useAmplitudeOperations-DYs1h8a_.js +0 -34
  589. package/dist/useAmplitudeOperations-jqa7K9dH.cjs +0 -41
  590. package/dist/useAppDetails-BRUqZEyt.js +0 -30
  591. package/dist/useAppDetails-C71k0brz.cjs +0 -38
  592. package/dist/useDebounce-DZ8Cgiwc.cjs +0 -26
  593. package/dist/useDebounce-v9cezyjn.js +0 -19
  594. package/dist/useGraphQLConfig-5VwS9Q_Z.js +0 -63
  595. package/dist/useGraphQLConfig-Cj26_J9I.cjs +0 -76
  596. package/dist/useMessageInterceptor-BjGP_uXm.js +0 -25
  597. package/dist/useMessageInterceptor-arAqUq1Q.cjs +0 -33
  598. package/dist/userIdentityContext-BVODeTlN.d.ts +0 -20
  599. package/dist/userIdentityContext-D2oFVFzo.d.cts +0 -20
  600. package/dist/utilityTypes-B2KuRn37.js +0 -1
  601. package/dist/utilityTypes-BGbL2WTP.cjs +0 -0
  602. package/dist/utils-BxPPugeP.d.cts +0 -22
  603. package/dist/utils-CLGXsOwE.cjs +0 -1591
  604. package/dist/utils-Covisryh.d.ts +0 -22
  605. package/dist/utils-jYtD3hmA.js +0 -1385
  606. package/dist/variantInfo-BfKlkaWU.js +0 -11
  607. package/dist/variantInfo-DpLn4nHz.cjs +0 -17
  608. package/src/application/models/api/context.ts +0 -4
  609. package/src/application/models/api/generationParams.ts +0 -4
  610. package/src/application/models/api/nextMessageRequest.ts +0 -11
  611. package/src/application/models/api/orgAnalyticsConfig.ts +0 -19
  612. package/src/application/models/api/orgConfigResults.ts +0 -44
  613. package/src/application/models/api/organizationConfig.ts +0 -12
  614. package/src/application/models/api/responseGenerics.ts +0 -67
  615. package/src/application/models/api/search.ts +0 -26
  616. package/src/application/models/api/suggestion.ts +0 -4
  617. package/src/application/models/api/supportedEventRequest.ts +0 -8
  618. package/src/application/models/api/userEvent.ts +0 -101
  619. package/src/application/models/cachedValue.ts +0 -8
  620. package/src/application/models/chatElementDisplayLocation.ts +0 -22
  621. package/src/application/models/clientDetails.ts +0 -18
  622. package/src/application/models/colorsConfig.ts +0 -28
  623. package/src/application/models/conversationalSearchIds.ts +0 -5
  624. package/src/application/models/dataLayer.ts +0 -45
  625. package/src/application/models/events.ts +0 -5
  626. package/src/application/models/featureGates.ts +0 -21
  627. package/src/application/models/frontendConfig.ts +0 -14
  628. package/src/application/models/googleAnalyticsEvents.ts +0 -8
  629. package/src/application/models/localStorageEventListener.ts +0 -4
  630. package/src/application/models/mobilePLPChatPlacementParameter.ts +0 -3
  631. package/src/application/models/orgsEnum.ts +0 -36
  632. package/src/application/models/productExperiment.ts +0 -5
  633. package/src/application/models/spanxTakeAQuizCtaParameter.ts +0 -4
  634. package/src/application/models/spiffyWidgets.ts +0 -16
  635. package/src/application/models/utilityTypes/camelCase.ts +0 -87
  636. package/src/application/models/utilityTypes/camelCasedPropertiesDeep.ts +0 -80
  637. package/src/application/models/utilityTypes/delimiterCase.ts +0 -121
  638. package/src/application/models/utilityTypes/delimiterCasedPropertiesDeep.ts +0 -98
  639. package/src/application/models/utilityTypes/index.ts +0 -1
  640. package/src/application/models/utilityTypes/internal.ts +0 -93
  641. package/src/application/models/utilityTypes/primitive.ts +0 -8
  642. package/src/application/models/utilityTypes/snakeCasedPropertiesDeep.ts +0 -49
  643. package/src/application/models/utilityTypes/splitWords.ts +0 -76
  644. package/src/application/models/utilityTypes/trim.ts +0 -28
  645. package/src/application/models/utilityTypes/unknownArray.ts +0 -25
  646. package/src/application/models/variantInfo/index.ts +0 -1
  647. package/src/application/models/variantInfo/pageVisitInfo.ts +0 -6
  648. package/src/application/models/variantInfo/plpInfo.ts +0 -3
  649. package/src/application/models/variantInfo/productInfo.ts +0 -5
  650. package/src/application/models/variantInfo/variantInfo.ts +0 -29
  651. package/src/application/utils/__tests__/divideArrays.test.ts +0 -14
  652. package/src/application/utils/cdnUtils.ts +0 -11
  653. package/src/atoms/search/chatSearch.ts +0 -317
  654. package/src/atoms/search/types.ts +0 -55
  655. package/src/config/divIds.ts +0 -27
  656. package/src/config/socialProofClasses.ts +0 -17
  657. package/src/contexts/chatContext/index.ts +0 -1
  658. package/src/contexts/types.ts +0 -1067
  659. package/src/events/event-types.ts +0 -11
  660. package/src/hooks/FloatingButtonVisibility/index.ts +0 -1
  661. package/src/hooks/FloatingButtonVisibility/useFloatingButtonVisibility.ts +0 -99
  662. package/src/hooks/LastInteraction/index.ts +0 -1
  663. package/src/hooks/LastInteraction/useLastInteraction.ts +0 -42
  664. package/src/interceptors/types.ts +0 -6
  665. package/src/merchants/domInsertion.ts +0 -30
  666. package/src/merchants/gridInsertion.ts +0 -19
  667. package/src/types/config-versions.ts +0 -6
  668. package/src/types/customerService.ts +0 -31
  669. package/src/types/custservice-types.ts +0 -28
  670. package/src/types/floatingbuttonoverrides-types.ts +0 -10
  671. package/src/types/search-filter-types.ts +0 -111
  672. package/src/types/suggestionBarV2-types.ts +0 -4
  673. package/src/types/test-types.ts +0 -3
  674. package/src/types.ts +0 -27
  675. /package/dist/{AmplitudeOperations-DxQnurSG.cjs → enviveConfigContext-DJLIdWAK.cjs} +0 -0
  676. /package/dist/{AmplitudeOperations-ni7wVevx.js → enviveConfigContext-Qh6nF9qc.js} +0 -0
  677. /package/dist/{globalSearch-BpGfkuXz.js → featureFlagServiceContext-CG3rFJov.js} +0 -0
  678. /package/dist/{globalSearch-B9DRBxSM.cjs → featureFlagServiceContext-C_wrr2WY.cjs} +0 -0
  679. /package/src/{types/exceptions → exceptions}/sessionExceptions.ts +0 -0
@@ -1,13 +1,9 @@
1
- import {
2
- AttachmentRequest,
3
- CustServiceConversationMessages,
4
- } from "@spiffy-ai/commerce-api-client";
5
- import { atom } from "jotai";
6
- import { ChatState } from "src/types/custservice-types";
1
+ import { AttachmentRequest, CustServiceConversationMessages } from '@spiffy-ai/commerce-api-client';
2
+ import { atom } from 'jotai';
3
+ import { ChatState } from '@envive-ai/types';
7
4
 
8
5
  export const isBusinessHoursAtom = atom<boolean>(true);
9
6
  export const isCustomerServiceOpenAtom = atom<boolean>(false);
10
- export const customerServiceResponseAtom =
11
- atom<CustServiceConversationMessages>();
7
+ export const customerServiceResponseAtom = atom<CustServiceConversationMessages>();
12
8
  export const customerServiceChatStateAtom = atom<ChatState>();
13
9
  export const customerServiceAttachment = atom<AttachmentRequest | undefined>();
@@ -1,24 +1,16 @@
1
- import { atom } from "jotai";
2
- import { ColorMapping } from "src/application/models/colorsConfig";
3
- import { FrontendConfig } from "src/application/models/frontendConfig";
4
- import { orgShortNameAtom } from "../envive/enviveConfig";
5
- import { FeatureFlagContextType } from "src/contexts/featureFlagServiceContext/featureFlagServiceContext"; // Import FeatureFlagContextType from new context
1
+ import { atom } from 'jotai';
2
+ import { ColorMapping, FrontendConfig } from '@envive-ai/types';
3
+ import { FeatureFlagContextType } from 'src/contexts/featureFlagServiceContext/featureFlagServiceContext'; // Import FeatureFlagContextType from new context
6
4
 
7
- export const internalGraphQLColorsConfigAtom = atom<ColorMapping | undefined>(
8
- undefined
9
- );
10
- const internalGraphQLFrontendConfigAtom = atom<FrontendConfig | undefined>(
11
- undefined
12
- );
5
+ export const internalGraphQLColorsConfigAtom = atom<ColorMapping | undefined>(undefined);
6
+ const internalGraphQLFrontendConfigAtom = atom<FrontendConfig | undefined>(undefined);
13
7
 
14
8
  export const orgIdAtom = atom<string | undefined>(undefined); // New atom for orgId
15
- export const featureFlagServiceAtom = atom<FeatureFlagContextType | undefined>(
16
- undefined
17
- ); // New atom for FeatureFlagService
9
+ export const featureFlagServiceAtom = atom<FeatureFlagContextType | undefined>(undefined); // New atom for FeatureFlagService
18
10
 
19
11
  export const frontendConfigAtom = atom(
20
12
  (get) => get(internalGraphQLFrontendConfigAtom),
21
13
  (_, set, value: FrontendConfig | undefined) => {
22
14
  set(internalGraphQLFrontendConfigAtom, value);
23
- }
15
+ },
24
16
  );
@@ -1,6 +1,4 @@
1
- export * from "./customerService";
2
- export * from "./graphqlConfig";
3
- // export * from "./org";
4
- export * from "./orgAnalyticsConfig";
5
- export * from "./newOrgConfigAtom";
6
- // export * from "./orgUIConfig";
1
+ export * from './customerService';
2
+ export * from './graphqlConfig';
3
+ export * from './orgAnalyticsConfig';
4
+ export * from './newOrgConfigAtom';
@@ -1,4 +1,4 @@
1
- import { atom } from "jotai";
2
- import { GraphQlConfigValues } from "src/contexts/graphqlContext";
1
+ import { atom } from 'jotai';
2
+ import { GraphQlConfigValues } from '@envive-ai/types';
3
3
 
4
4
  export const newOrgConfigAtom = atom<GraphQlConfigValues | null>(null);
@@ -4,7 +4,7 @@ import {
4
4
  OrgAnalyticsAmplitudeConfig,
5
5
  OrgAnalyticsCustomerServiceConfig,
6
6
  OrgAnalyticsGoogleAnalyticsConfig,
7
- } from 'src/application/models/api/orgAnalyticsConfig';
7
+ } from '@envive-ai/types';
8
8
 
9
9
  const internalOrgAnalyticsConfigAtom = atom<OrgAnalyticsConfig | undefined>(undefined);
10
10
 
@@ -1,2 +1 @@
1
- export * from './chatSearch';
2
1
  export * from './searchAPI';
@@ -1,8 +1,7 @@
1
- import { ProductResponseAttributes } from 'src/application/models';
2
- import { FilterAttribute } from 'src/contexts/types';
3
- import { SelectedFilterOption } from 'src/atoms/search/searchAPI';
4
- import { ChatSearchFilter, ChatSearchFilterItem } from './types';
5
- import { formatFilterDisplayName } from './utils';
1
+ import { ChatSearchFilter, ChatSearchFilterItem } from "@envive-ai/types";
2
+ import { FilterAttribute, ProductResponseAttributes } from "src/types";
3
+ import { SelectedFilterOption } from "src/atoms/search/searchAPI";
4
+ import { formatFilterDisplayName } from "./utils";
6
5
 
7
6
  const getPriceBucket = (price: number, bucketSize: number) => {
8
7
  const bucket = Math.floor(price / bucketSize);
@@ -13,27 +12,30 @@ const isStringArray = (value: unknown): value is string[] => {
13
12
  if (!Array.isArray(value)) {
14
13
  return false;
15
14
  }
16
- return value.every((item) => typeof item === 'string');
15
+ return value.every((item) => typeof item === "string");
17
16
  };
18
17
 
19
- type FilterSortFunction = (a: ChatSearchFilterItem, b: ChatSearchFilterItem) => number;
18
+ type FilterSortFunction = (
19
+ a: ChatSearchFilterItem,
20
+ b: ChatSearchFilterItem
21
+ ) => number;
20
22
 
21
23
  const sortFilter = (filterConfig: FilterAttribute): FilterSortFunction => {
22
- if (filterConfig.type === 'price') {
24
+ if (filterConfig.type === "price") {
23
25
  return (a, b) => Number(a.filterItemId) - Number(b.filterItemId);
24
26
  }
25
- if (filterConfig.type === 'dynamic') {
26
- if (filterConfig.sorting.type === 'alphabetic') {
27
+ if (filterConfig.type === "dynamic") {
28
+ if (filterConfig.sorting.type === "alphabetic") {
27
29
  return (a, b) => a.displayName.localeCompare(b.displayName);
28
30
  }
29
31
  // Sort by the number of products, if they match, sort by alphabetical
30
- if (filterConfig.sorting.type === 'productCount') {
32
+ if (filterConfig.sorting.type === "productCount") {
31
33
  return (a, b) =>
32
34
  a.productCount === b.productCount
33
35
  ? a.displayName.localeCompare(b.displayName)
34
36
  : b.productCount - a.productCount;
35
37
  }
36
- if (filterConfig.sorting.type === 'custom') {
38
+ if (filterConfig.sorting.type === "custom") {
37
39
  const sortedKeys = filterConfig.sorting.map;
38
40
  return (a, b) => {
39
41
  if (sortedKeys[a.displayName] && sortedKeys[b.displayName]) {
@@ -53,14 +55,14 @@ const sortFilter = (filterConfig: FilterAttribute): FilterSortFunction => {
53
55
  };
54
56
  }
55
57
  }
56
- throw new Error('Invaalid search filter configuration');
58
+ throw new Error("Invaalid search filter configuration");
57
59
  };
58
60
 
59
61
  export class ProductFilters {
60
62
  static getFiltersForProducts(
61
- products: ProductResponseAttributes['attributes'][],
63
+ products: ProductResponseAttributes["attributes"][],
62
64
  filterConfigs: FilterAttribute[],
63
- selectedFilterOptions: SelectedFilterOption[],
65
+ selectedFilterOptions: SelectedFilterOption[]
64
66
  ): ChatSearchFilter[] {
65
67
  if (!products || products.length === 0) {
66
68
  return [];
@@ -70,23 +72,29 @@ export class ProductFilters {
70
72
  products.reduce(
71
73
  (acc, product) => {
72
74
  // Price has special handling for the filters
73
- if (filterConfig.type === 'price') {
75
+ if (filterConfig.type === "price") {
74
76
  const priceBucket = getPriceBucket(
75
77
  product.salePrice ?? product.originalPrice ?? 0,
76
- filterConfig.bucketSize,
78
+ filterConfig.bucketSize
77
79
  );
78
80
  const current = acc.map[priceBucket] ?? {
79
81
  filterItemId: priceBucket,
80
- displayName: `$${priceBucket}-$${priceBucket + filterConfig.bucketSize}`,
82
+ displayName: `$${priceBucket}-$${
83
+ priceBucket + filterConfig.bucketSize
84
+ }`,
81
85
  productCount: 0,
82
86
  };
83
- acc.map[priceBucket] = { ...current, productCount: current.productCount + 1 };
87
+ acc.map[priceBucket] = {
88
+ ...current,
89
+ productCount: current.productCount + 1,
90
+ };
84
91
  return acc;
85
92
  }
86
93
 
87
94
  // Assume that the "attribute" is an array of values
88
95
  const attributeValues =
89
- (product.filters && product.filters?.[filterConfig.attribute]) ?? [];
96
+ (product.filters && product.filters?.[filterConfig.attribute]) ??
97
+ [];
90
98
  if (isStringArray(attributeValues)) {
91
99
  attributeValues.forEach((val) => {
92
100
  const normalizedVal = val.toLowerCase();
@@ -95,7 +103,10 @@ export class ProductFilters {
95
103
  displayName: formatFilterDisplayName(val), // Keep original case for display
96
104
  productCount: 0,
97
105
  };
98
- acc.map[normalizedVal] = { ...current, productCount: current.productCount + 1 };
106
+ acc.map[normalizedVal] = {
107
+ ...current,
108
+ productCount: current.productCount + 1,
109
+ };
99
110
  });
100
111
  }
101
112
 
@@ -104,40 +115,44 @@ export class ProductFilters {
104
115
  {
105
116
  filterConfig,
106
117
  map: {} as Record<string, ChatSearchFilterItem>,
107
- },
108
- ),
118
+ }
119
+ )
109
120
  );
110
121
 
111
- const transformedFilters: ChatSearchFilter[] = filters.map(({ filterConfig, map }) => ({
112
- filterId: filterConfig.filterId,
113
- displayName: filterConfig.displayName,
114
- items: Object.values(map)
115
- .map((filter) => ({
116
- filterItemId: filter.filterItemId,
117
- displayName: filter.displayName,
118
- productCount: filter.productCount,
119
- isSelected:
120
- selectedFilterOptions.some(
121
- (option) => option.id === `${filterConfig.filterId}:${filter.filterItemId}`,
122
- ) ?? false,
123
- }))
124
- .sort(sortFilter(filterConfig)),
125
- }));
122
+ const transformedFilters: ChatSearchFilter[] = filters.map(
123
+ ({ filterConfig, map }) => ({
124
+ filterId: filterConfig.filterId,
125
+ displayName: filterConfig.displayName,
126
+ items: Object.values(map)
127
+ .map((filter) => ({
128
+ filterItemId: filter.filterItemId,
129
+ displayName: filter.displayName,
130
+ productCount: filter.productCount,
131
+ isSelected:
132
+ selectedFilterOptions.some(
133
+ (option) =>
134
+ option.id ===
135
+ `${filterConfig.filterId}:${filter.filterItemId}`
136
+ ) ?? false,
137
+ }))
138
+ .sort(sortFilter(filterConfig)),
139
+ })
140
+ );
126
141
 
127
142
  return [...transformedFilters];
128
143
  }
129
144
 
130
145
  static filterProducts(
131
- products: ProductResponseAttributes['attributes'][],
146
+ products: ProductResponseAttributes["attributes"][],
132
147
  filterConfigs: FilterAttribute[],
133
148
  selectedFilterOptions: SelectedFilterOption[],
134
- additiveDynamicFilters = false, // Set this to true to restore the original behavior where stacking filters has OR logic.
149
+ additiveDynamicFilters = false // Set this to true to restore the original behavior where stacking filters has OR logic.
135
150
  ) {
136
151
  const selectedFilters = filterConfigs
137
152
  .map((filterConfig) => ({
138
153
  filterConfig,
139
154
  hasSelectedOptions: selectedFilterOptions.some(
140
- (option) => option.filterId === filterConfig.filterId,
155
+ (option) => option.filterId === filterConfig.filterId
141
156
  ),
142
157
  }))
143
158
  .filter(({ hasSelectedOptions }) => hasSelectedOptions);
@@ -150,20 +165,20 @@ export class ProductFilters {
150
165
  return acc;
151
166
  }
152
167
  // Price is special
153
- if (selectedFilter.filterConfig.type === 'price') {
168
+ if (selectedFilter.filterConfig.type === "price") {
154
169
  const priceBucket = getPriceBucket(
155
170
  product.salePrice ?? product.originalPrice ?? 0,
156
- selectedFilter.filterConfig.bucketSize,
171
+ selectedFilter.filterConfig.bucketSize
157
172
  );
158
173
  const matchesPriceFilter = selectedFilterOptions.some(
159
- (option) => option.id === `price:${priceBucket}`,
174
+ (option) => option.id === `price:${priceBucket}`
160
175
  );
161
176
  if (!matchesPriceFilter) {
162
177
  return false;
163
178
  }
164
179
  }
165
180
 
166
- if (selectedFilter.filterConfig.type === 'dynamic') {
181
+ if (selectedFilter.filterConfig.type === "dynamic") {
167
182
  // dynamic is misleading here. Its not just dynamic filters, but static filters because the config counts static filters as type: dynamic.
168
183
  const { filterId, attribute } = selectedFilter.filterConfig;
169
184
  const attributeValues = product.filters?.[attribute];
@@ -172,8 +187,10 @@ export class ProductFilters {
172
187
  return false;
173
188
  }
174
189
 
175
- const isDynamicFilter = selectedFilter.filterConfig.attribute === 'dynamic'; // True dynamic filters (the ones that appear beneath the search input)
176
- const isSubtractiveLogic = isDynamicFilter && !additiveDynamicFilters;
190
+ const isDynamicFilter =
191
+ selectedFilter.filterConfig.attribute === "dynamic"; // True dynamic filters (the ones that appear beneath the search input)
192
+ const isSubtractiveLogic =
193
+ isDynamicFilter && !additiveDynamicFilters;
177
194
 
178
195
  if (isSubtractiveLogic) {
179
196
  // AND logic for subtractive dynamic filters and between static filter categories
@@ -181,8 +198,11 @@ export class ProductFilters {
181
198
  .filter((option) => option.filterId === filterId)
182
199
  .map((option) => option.filterItemId.toLowerCase());
183
200
 
184
- const hasAllSelectedValues = selectedOptionsForThisFilter.every((selectedValue) =>
185
- attributeValues.some((val) => val.toLowerCase() === selectedValue),
201
+ const hasAllSelectedValues = selectedOptionsForThisFilter.every(
202
+ (selectedValue) =>
203
+ attributeValues.some(
204
+ (val) => val.toLowerCase() === selectedValue
205
+ )
186
206
  );
187
207
 
188
208
  if (!hasAllSelectedValues) {
@@ -192,8 +212,8 @@ export class ProductFilters {
192
212
  // OR logic for static filters in the sidebar within a category.
193
213
  const matches = attributeValues.some((val) =>
194
214
  selectedFilterOptions.some(
195
- (option) => option.id === `${filterId}:${val.toLowerCase()}`,
196
- ),
215
+ (option) => option.id === `${filterId}:${val.toLowerCase()}`
216
+ )
197
217
  );
198
218
  if (!matches) {
199
219
  return false;
@@ -201,7 +221,7 @@ export class ProductFilters {
201
221
  }
202
222
  }
203
223
  return true;
204
- }, true),
224
+ }, true)
205
225
  );
206
226
  }
207
227
  }
@@ -0,0 +1,72 @@
1
+ import {
2
+ ProductRetrievalParams,
3
+ ProductRetrievalResult,
4
+ } from "@envive-ai/types";
5
+ import { atom } from "jotai";
6
+ import { getProductRetrievalFunction } from "./productRetrievalAdapter";
7
+
8
+ interface ProductRetrievalState {
9
+ data: ProductRetrievalResult | null;
10
+ loading: boolean;
11
+ error: string | null;
12
+ lastProductIds: string[] | null;
13
+ }
14
+
15
+ export const productRetrievalAtom = atom<ProductRetrievalState>({
16
+ data: null,
17
+ loading: false,
18
+ error: null,
19
+ lastProductIds: null,
20
+ });
21
+
22
+ export const performProductRetrievalAtom = atom(
23
+ null,
24
+ async (get, set, params: ProductRetrievalParams) => {
25
+ const currentState = get(productRetrievalAtom);
26
+
27
+ if (currentState.loading) {
28
+ return; // Prevent concurrent retrievals
29
+ }
30
+
31
+ set(productRetrievalAtom, {
32
+ data: null,
33
+ loading: true,
34
+ error: null,
35
+ lastProductIds: params.productIds,
36
+ });
37
+
38
+ try {
39
+ const retrieveProducts = getProductRetrievalFunction();
40
+ const result = await retrieveProducts(params);
41
+ set(productRetrievalAtom, {
42
+ data: result,
43
+ loading: false,
44
+ error: null,
45
+ lastProductIds: params.productIds,
46
+ });
47
+ } catch (error: unknown) {
48
+ const errorMessage =
49
+ error instanceof Error ? error.message : "An unknown error occurred";
50
+ set(productRetrievalAtom, {
51
+ data: null,
52
+ loading: false,
53
+ error: errorMessage,
54
+ lastProductIds: params.productIds,
55
+ });
56
+ }
57
+ }
58
+ );
59
+
60
+ // Get just the products array (already normalized by service)
61
+ export const retrievedProductsAtom = atom((get) => {
62
+ const retrievalData = get(productRetrievalAtom).data;
63
+ return retrievalData?.products || [];
64
+ });
65
+
66
+ export const productRetrievalLoadingAtom = atom((get) => {
67
+ return get(productRetrievalAtom).loading;
68
+ });
69
+
70
+ export const productRetrievalErrorAtom = atom((get) => {
71
+ return get(productRetrievalAtom).error;
72
+ });
@@ -0,0 +1,28 @@
1
+ import {
2
+ ProductRetrievalParams,
3
+ ProductRetrievalResult,
4
+ } from "@envive-ai/types";
5
+
6
+ // This will be set by the ProductRetrievalProvider when it initializes
7
+ let productRetrievalFunction:
8
+ | ((params: ProductRetrievalParams) => Promise<ProductRetrievalResult>)
9
+ | null = null;
10
+
11
+ export const setProductRetrievalFunction = (
12
+ fn: (params: ProductRetrievalParams) => Promise<ProductRetrievalResult>
13
+ ) => {
14
+ productRetrievalFunction = fn;
15
+ };
16
+
17
+ export const getProductRetrievalFunction = () => {
18
+ if (!productRetrievalFunction) {
19
+ throw new Error(
20
+ "Product retrieval function not initialized. Make sure ProductRetrievalProvider is mounted."
21
+ );
22
+ }
23
+ return productRetrievalFunction;
24
+ };
25
+
26
+ export const clearProductRetrievalFunction = () => {
27
+ productRetrievalFunction = null;
28
+ };
@@ -1,5 +1,5 @@
1
- import { ProductResponseAttributes } from 'src/application/models';
2
- import { ProductSorting } from './types';
1
+ import { ProductResponseAttributes } from '@envive-ai/types';
2
+ import { ProductSorting } from '@envive-ai/types';
3
3
 
4
4
  export class ProductSorter {
5
5
  static sort(products: ProductResponseAttributes['attributes'][], sorting: ProductSorting) {
@@ -1,10 +1,10 @@
1
- import { atom } from "jotai";
2
- import { SearchResult, SearchParams } from "src/application/models/api/search";
3
- import { ProductSorting } from "./types";
4
- import { ProductFilters } from "./productFilters";
5
- import { ProductSorter } from "./productSorter";
6
- import { newOrgConfigAtom } from "../org";
7
- import { getSearchServiceFunction } from "./searchServiceAdapter";
1
+ import { atom } from 'jotai';
2
+ import { ProductSorting } from '@envive-ai/types';
3
+ import { ProductFilters } from './productFilters';
4
+ import { ProductSorter } from './productSorter';
5
+ import { newOrgConfigAtom } from '../org';
6
+ import { getSearchServiceFunction } from './searchServiceAdapter';
7
+ import { SearchParams, SearchResult } from '@envive-ai/types';
8
8
 
9
9
  export type SelectedFilterOption = {
10
10
  id: string; // "filterId:filterItemId" - maintains backward compatibility for comparisons
@@ -27,15 +27,13 @@ export const searchAtom = atom<SearchState>({
27
27
  lastQuery: null,
28
28
  });
29
29
 
30
- export const searchProductSortingAtom = atom<ProductSorting>(
31
- ProductSorting.FEATURED
32
- );
30
+ export const searchProductSortingAtom = atom<ProductSorting>(ProductSorting.FEATURED);
33
31
  export const searchSelectedFiltersAtom = atom<SelectedFilterOption[]>([]);
34
32
 
35
33
  export const createFilterOption = (
36
34
  filterId: string,
37
35
  filterItemId: string,
38
- displayName: string
36
+ displayName: string,
39
37
  ): SelectedFilterOption => ({
40
38
  id: `${filterId}:${filterItemId}`,
41
39
  displayName,
@@ -55,7 +53,7 @@ export const searchParamsAtom = atom(
55
53
  (get) => get(internalSearchParamsAtom),
56
54
  (_, set, value: { id: string | null; query: string | null }) => {
57
55
  set(internalSearchParamsAtom, value);
58
- }
56
+ },
59
57
  );
60
58
  export const internalSearchSystemStateAtom = atom<boolean>(false);
61
59
 
@@ -67,9 +65,9 @@ export const searchSystemAtom = atom(
67
65
  }
68
66
  const stateChangeHandler = () => {
69
67
  const params = new URLSearchParams(window.location.search);
70
- if (params.get("es") === "true") {
71
- const id = params.get("esi");
72
- const query = params.get("esq");
68
+ if (params.get('es') === 'true') {
69
+ const id = params.get('esi');
70
+ const query = params.get('esq');
73
71
  set(searchParamsAtom, { id, query });
74
72
  } else {
75
73
  set(searchParamsAtom, { id: null, query: null });
@@ -77,14 +75,14 @@ export const searchSystemAtom = atom(
77
75
  };
78
76
  if (value) {
79
77
  set(internalSearchSystemStateAtom, true);
80
- window.addEventListener("popstate", stateChangeHandler);
78
+ window.addEventListener('popstate', stateChangeHandler);
81
79
  // Also trigger the hash change handler to set the initial state
82
80
  stateChangeHandler();
83
81
  } else {
84
82
  set(internalSearchSystemStateAtom, false);
85
- window.removeEventListener("popstate", stateChangeHandler);
83
+ window.removeEventListener('popstate', stateChangeHandler);
86
84
  }
87
- }
85
+ },
88
86
  );
89
87
 
90
88
  export const filteredSearchProductsAtom = atom((get) => {
@@ -93,17 +91,13 @@ export const filteredSearchProductsAtom = atom((get) => {
93
91
  const selectedFilters = get(searchSelectedFiltersAtom);
94
92
  const newOrgConfig = get(newOrgConfigAtom);
95
93
 
96
- if (
97
- !searchData?.products ||
98
- !newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig
99
- )
100
- return [];
94
+ if (!searchData?.products || !newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig) return [];
101
95
 
102
96
  const filteredProducts = ProductFilters.filterProducts(
103
97
  searchData.products,
104
98
  newOrgConfig.frontendConfig.uiConfigs.searchConfig.searchFilterConfig,
105
99
  selectedFilters,
106
- newOrgConfig.frontendConfig.uiConfigs.searchConfig.additiveDynamicFilters
100
+ newOrgConfig.frontendConfig.uiConfigs.searchConfig.additiveDynamicFilters,
107
101
  );
108
102
 
109
103
  return ProductSorter.sort(filteredProducts, sorting);
@@ -114,39 +108,29 @@ export const searchFiltersAtom = atom((get) => {
114
108
  const selectedFilters = get(searchSelectedFiltersAtom);
115
109
  const newOrgConfig = get(newOrgConfigAtom);
116
110
 
117
- if (
118
- !searchData?.products ||
119
- !newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig
120
- )
121
- return [];
111
+ if (!searchData?.products || !newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig) return [];
122
112
 
123
113
  return ProductFilters.getFiltersForProducts(
124
114
  searchData.products,
125
115
  newOrgConfig.frontendConfig.uiConfigs.searchConfig.searchFilterConfig,
126
- selectedFilters
116
+ selectedFilters,
127
117
  );
128
118
  });
129
119
 
130
- export const addSearchFilterAtom = atom(
131
- null,
132
- (get, set, filter: SelectedFilterOption) => {
133
- const current = get(searchSelectedFiltersAtom);
134
- if (!current.some((f) => f.id === filter.id)) {
135
- set(searchSelectedFiltersAtom, [...current, filter]);
136
- }
120
+ export const addSearchFilterAtom = atom(null, (get, set, filter: SelectedFilterOption) => {
121
+ const current = get(searchSelectedFiltersAtom);
122
+ if (!current.some((f) => f.id === filter.id)) {
123
+ set(searchSelectedFiltersAtom, [...current, filter]);
137
124
  }
138
- );
125
+ });
139
126
 
140
- export const removeSearchFilterAtom = atom(
141
- null,
142
- (get, set, filterId: string) => {
143
- const current = get(searchSelectedFiltersAtom);
144
- set(
145
- searchSelectedFiltersAtom,
146
- current.filter((f) => f.id !== filterId)
147
- );
148
- }
149
- );
127
+ export const removeSearchFilterAtom = atom(null, (get, set, filterId: string) => {
128
+ const current = get(searchSelectedFiltersAtom);
129
+ set(
130
+ searchSelectedFiltersAtom,
131
+ current.filter((f) => f.id !== filterId),
132
+ );
133
+ });
150
134
 
151
135
  export const clearSearchFiltersAtom = atom(null, (_, set) => {
152
136
  set(searchSelectedFiltersAtom, []);
@@ -158,29 +142,28 @@ export const performSearchAtom = atom(
158
142
  const currentState = get(searchAtom);
159
143
  const newOrgConfig = get(newOrgConfigAtom);
160
144
  const redirectSearchResultsUrl =
161
- newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig
162
- ?.redirectSearchResultsUrl;
145
+ newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig?.redirectSearchResultsUrl;
163
146
 
164
147
  if (allowRedirect && redirectSearchResultsUrl) {
165
148
  const redirectUrl = new URL(redirectSearchResultsUrl);
166
- redirectUrl.searchParams.set("es", "true");
167
- redirectUrl.searchParams.set("esq", params.query);
149
+ redirectUrl.searchParams.set('es', 'true');
150
+ redirectUrl.searchParams.set('esq', params.query);
168
151
  window.location.href = redirectUrl.toString();
169
152
  } else {
170
153
  // Update URL and manually trigger state change (since pushState doesn't trigger popstate)
171
154
  const url = new URL(window.location.href);
172
- url.searchParams.set("es", "true");
173
- url.searchParams.set("esq", params.query);
174
- window.history.pushState({}, "", url);
155
+ url.searchParams.set('es', 'true');
156
+ url.searchParams.set('esq', params.query);
157
+ window.history.pushState({}, '', url);
175
158
 
176
159
  // Manually trigger page variant re-evaluation by dispatching a popstate event
177
160
  // This ensures the page variant system detects the URL change and mounts search results
178
- window.dispatchEvent(new PopStateEvent("popstate", { state: {} }));
161
+ window.dispatchEvent(new PopStateEvent('popstate', { state: {} }));
179
162
  }
180
163
 
181
164
  // Manually trigger page variant re-evaluation by dispatching a popstate event
182
165
  // This ensures the page variant system detects the URL change and mounts search results
183
- window.dispatchEvent(new PopStateEvent("popstate", { state: {} }));
166
+ window.dispatchEvent(new PopStateEvent('popstate', { state: {} }));
184
167
  if (currentState.loading) {
185
168
  return; // Prevent concurrent searches
186
169
  }
@@ -201,8 +184,7 @@ export const performSearchAtom = atom(
201
184
  lastQuery: params.query,
202
185
  });
203
186
  } catch (error: unknown) {
204
- const errorMessage =
205
- error instanceof Error ? error.message : "An unknown error occurred";
187
+ const errorMessage = error instanceof Error ? error.message : 'An unknown error occurred';
206
188
  set(searchAtom, {
207
189
  data: null,
208
190
  loading: false,
@@ -210,5 +192,5 @@ export const performSearchAtom = atom(
210
192
  lastQuery: params.query,
211
193
  });
212
194
  }
213
- }
195
+ },
214
196
  );
@@ -1,4 +1,4 @@
1
- import { SearchResult, SearchParams } from "src/application/models/api/search";
1
+ import { SearchResult, SearchParams } from "@envive-ai/types";
2
2
 
3
3
  // This will be set by the SearchProvider when it initializes
4
4
  let searchServiceFunction: