@envive-ai/react-hooks 0.2.6-alpha-arthur-1 → 0.2.6-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (676) hide show
  1. package/dist/{NewOrgConfig-CUQGpmw9.js → NewOrgConfig-BZCP9E7v.js} +2 -2
  2. package/dist/{NewOrgConfig-DD0oloeK.cjs → NewOrgConfig-DWLMI1ga.cjs} +2 -2
  3. package/dist/SystemSettingsContext-CO5c1L62.cjs +20 -0
  4. package/dist/SystemSettingsContext-CXmUlH8i.js +13 -0
  5. package/dist/TrackComponentVisibleEvent-BJgNOypY.js +52 -0
  6. package/dist/TrackComponentVisibleEvent-BRC2FTp-.cjs +59 -0
  7. package/dist/amplitudeContext-CCVyp5RU.d.cts +52 -0
  8. package/dist/amplitudeContext-DFYBDc0h.d.ts +52 -0
  9. package/dist/api-BWSsazAG.js +166 -0
  10. package/dist/api-DeW6rHj3.cjs +239 -0
  11. package/dist/application/models/graphql/index.cjs +3 -3
  12. package/dist/application/models/graphql/index.d.cts +2 -2
  13. package/dist/application/models/graphql/index.d.ts +2 -2
  14. package/dist/application/models/graphql/index.js +3 -2
  15. package/dist/application/models/guards/api/index.cjs +3 -3
  16. package/dist/application/models/guards/api/index.d.cts +2 -2
  17. package/dist/application/models/guards/api/index.d.ts +2 -2
  18. package/dist/application/models/guards/api/index.js +3 -3
  19. package/dist/application/models/guards/utils.cjs +1 -1
  20. package/dist/application/models/guards/utils.d.ts +1 -1
  21. package/dist/application/models/guards/utils.js +1 -1
  22. package/dist/application/models/index.cjs +23 -7
  23. package/dist/application/models/index.d.cts +12 -167
  24. package/dist/application/models/index.d.ts +13 -168
  25. package/dist/application/models/index.js +11 -7
  26. package/dist/application/models/utilityTypes/index.cjs +1 -0
  27. package/dist/application/models/utilityTypes/index.d.cts +2 -0
  28. package/dist/application/models/utilityTypes/index.d.ts +2 -0
  29. package/dist/application/models/utilityTypes/index.js +3 -0
  30. package/dist/application/models/variantInfo/index.cjs +3 -0
  31. package/dist/application/models/variantInfo/index.d.cts +2 -0
  32. package/dist/application/models/variantInfo/index.d.ts +2 -0
  33. package/dist/application/models/variantInfo/index.js +3 -0
  34. package/dist/application/utils/index.cjs +19 -10
  35. package/dist/application/utils/index.d.cts +64 -13
  36. package/dist/application/utils/index.d.ts +64 -13
  37. package/dist/application/utils/index.js +19 -10
  38. package/dist/{atomStore-CZKe3itM.cjs → atomStore-DNji91Im.cjs} +1 -1
  39. package/dist/{atomStore-BuopbV9k.js → atomStore-DXTVqiKc.js} +1 -1
  40. package/dist/atoms/app/index.cjs +24 -22
  41. package/dist/atoms/app/index.d.cts +21 -9
  42. package/dist/atoms/app/index.d.ts +20 -8
  43. package/dist/atoms/app/index.js +19 -17
  44. package/dist/atoms/atomStore/index.cjs +1 -1
  45. package/dist/atoms/atomStore/index.d.ts +1 -1
  46. package/dist/atoms/atomStore/index.js +1 -1
  47. package/dist/atoms/chat/index.cjs +21 -20
  48. package/dist/atoms/chat/index.d.cts +46 -36
  49. package/dist/atoms/chat/index.d.ts +44 -34
  50. package/dist/atoms/chat/index.js +21 -20
  51. package/dist/atoms/globalSearch/index.cjs +2 -1
  52. package/dist/atoms/globalSearch/index.d.cts +6 -6
  53. package/dist/atoms/globalSearch/index.d.ts +6 -6
  54. package/dist/atoms/globalSearch/index.js +2 -1
  55. package/dist/atoms/org/index.cjs +11 -10
  56. package/dist/atoms/org/index.d.cts +32 -19
  57. package/dist/atoms/org/index.d.ts +32 -19
  58. package/dist/atoms/org/index.js +3 -2
  59. package/dist/atoms/search/index.cjs +47 -7
  60. package/dist/atoms/search/index.d.cts +15 -76
  61. package/dist/atoms/search/index.d.ts +15 -76
  62. package/dist/atoms/search/index.js +29 -7
  63. package/dist/atoms/search/types.cjs +5 -0
  64. package/dist/atoms/search/types.d.cts +2 -0
  65. package/dist/atoms/search/types.d.ts +2 -0
  66. package/dist/atoms/search/types.js +3 -0
  67. package/dist/atoms/search/utils.cjs +1 -1
  68. package/dist/atoms/search/utils.d.cts +1 -1
  69. package/dist/atoms/search/utils.d.ts +1 -1
  70. package/dist/atoms/search/utils.js +1 -1
  71. package/dist/cdnContext-BnqmnEvR.js +38 -0
  72. package/dist/cdnContext-CnYcBOr9.cjs +53 -0
  73. package/dist/chat-CqPuT9_V.cjs +393 -0
  74. package/dist/chat-DH70QqJp.js +257 -0
  75. package/dist/chatElementDisplayLocation-CpgV2wR1.d.ts +25 -0
  76. package/dist/chatElementDisplayLocation-DWmfNX_u.d.cts +25 -0
  77. package/dist/chatSearch-ChyGuHbu.js +295 -0
  78. package/dist/chatSearch-DpnpRWAW.cjs +418 -0
  79. package/dist/chatState-CcFtSqJT.cjs +120 -0
  80. package/dist/chatState-DKnNHmwe.js +34 -0
  81. package/dist/config/index.d.cts +4 -4
  82. package/dist/config/index.d.ts +4 -4
  83. package/dist/config/locators/components/chat/index.d.cts +1 -1
  84. package/dist/config/locators/components/chat/index.d.ts +1 -1
  85. package/dist/config/locators/components/chat/variants/index.d.cts +1 -1
  86. package/dist/config/locators/components/chat/variants/index.d.ts +1 -1
  87. package/dist/config/locators/components/common/index.d.cts +1 -1
  88. package/dist/config/locators/components/common/index.d.ts +1 -1
  89. package/dist/config/locators/components/index.d.cts +1 -1
  90. package/dist/config/locators/components/index.d.ts +1 -1
  91. package/dist/config/locators/components/search/index.d.cts +1 -1
  92. package/dist/config/locators/components/search/index.d.ts +1 -1
  93. package/dist/config/locators/index.d.cts +4 -4
  94. package/dist/config/locators/index.d.ts +4 -4
  95. package/dist/contexts/amplitudeContext/index.cjs +22 -23
  96. package/dist/contexts/amplitudeContext/index.d.cts +2 -11
  97. package/dist/contexts/amplitudeContext/index.d.ts +2 -11
  98. package/dist/contexts/amplitudeContext/index.js +20 -22
  99. package/dist/contexts/cdnContext/index.cjs +4 -4
  100. package/dist/contexts/cdnContext/index.d.cts +6 -2
  101. package/dist/contexts/cdnContext/index.d.ts +6 -2
  102. package/dist/contexts/cdnContext/index.js +4 -4
  103. package/dist/contexts/chatContext/index.cjs +326 -0
  104. package/dist/contexts/chatContext/index.d.cts +15 -0
  105. package/dist/contexts/chatContext/index.d.ts +15 -0
  106. package/dist/contexts/chatContext/index.js +319 -0
  107. package/dist/contexts/enviveConfigContext/index.cjs +4 -4
  108. package/dist/contexts/enviveConfigContext/index.d.cts +25 -3
  109. package/dist/contexts/enviveConfigContext/index.d.ts +25 -3
  110. package/dist/contexts/enviveConfigContext/index.js +4 -4
  111. package/dist/contexts/enviveCssContext/index.cjs +19 -15
  112. package/dist/contexts/enviveCssContext/index.d.cts +5 -3
  113. package/dist/contexts/enviveCssContext/index.d.ts +5 -3
  114. package/dist/contexts/enviveCssContext/index.js +19 -15
  115. package/dist/contexts/featureFlagContext/index.cjs +10 -9
  116. package/dist/contexts/featureFlagContext/index.d.cts +12 -3
  117. package/dist/contexts/featureFlagContext/index.d.ts +12 -3
  118. package/dist/contexts/featureFlagContext/index.js +7 -6
  119. package/dist/contexts/featureFlagServiceContext/index.cjs +3 -4
  120. package/dist/contexts/featureFlagServiceContext/index.d.cts +5 -1
  121. package/dist/contexts/featureFlagServiceContext/index.d.ts +5 -1
  122. package/dist/contexts/featureFlagServiceContext/index.js +3 -4
  123. package/dist/contexts/graphqlContext/index.cjs +13 -8
  124. package/dist/contexts/graphqlContext/index.d.cts +15 -11
  125. package/dist/contexts/graphqlContext/index.d.ts +15 -11
  126. package/dist/contexts/graphqlContext/index.js +13 -8
  127. package/dist/contexts/localStorageContext/index.cjs +3 -3
  128. package/dist/contexts/localStorageContext/index.d.cts +22 -3
  129. package/dist/contexts/localStorageContext/index.d.ts +22 -3
  130. package/dist/contexts/localStorageContext/index.js +3 -4
  131. package/dist/contexts/newOrgConfigContext/index.cjs +17 -13
  132. package/dist/contexts/newOrgConfigContext/index.d.cts +16 -12
  133. package/dist/contexts/newOrgConfigContext/index.d.ts +16 -12
  134. package/dist/contexts/newOrgConfigContext/index.js +17 -13
  135. package/dist/contexts/searchContext/index.cjs +24 -23
  136. package/dist/contexts/searchContext/index.d.cts +7 -2
  137. package/dist/contexts/searchContext/index.d.ts +7 -2
  138. package/dist/contexts/searchContext/index.js +24 -23
  139. package/dist/contexts/sessionStorageContext/index.cjs +2 -2
  140. package/dist/contexts/sessionStorageContext/index.d.cts +6 -2
  141. package/dist/contexts/sessionStorageContext/index.d.ts +6 -2
  142. package/dist/contexts/sessionStorageContext/index.js +2 -2
  143. package/dist/contexts/shopifyUrlContext/index.cjs +2 -2
  144. package/dist/contexts/shopifyUrlContext/index.d.cts +12 -2
  145. package/dist/contexts/shopifyUrlContext/index.d.ts +12 -2
  146. package/dist/contexts/shopifyUrlContext/index.js +2 -2
  147. package/dist/contexts/systemSettingsContext/index.cjs +4 -4
  148. package/dist/contexts/systemSettingsContext/index.d.cts +15 -4
  149. package/dist/contexts/systemSettingsContext/index.d.ts +17 -6
  150. package/dist/contexts/systemSettingsContext/index.js +4 -4
  151. package/dist/contexts/types.cjs +7 -0
  152. package/dist/contexts/types.d.cts +5 -0
  153. package/dist/contexts/types.d.ts +5 -0
  154. package/dist/contexts/types.js +3 -0
  155. package/dist/contexts/userIdentityContext/index.cjs +21 -19
  156. package/dist/contexts/userIdentityContext/index.d.cts +2 -11
  157. package/dist/contexts/userIdentityContext/index.d.ts +2 -11
  158. package/dist/contexts/userIdentityContext/index.js +19 -17
  159. package/dist/custservice-types-CcPnAJ5k.d.ts +29 -0
  160. package/dist/custservice-types-_Dnz4sMy.d.cts +29 -0
  161. package/dist/domObserver-Bqf3ooj8.cjs +304 -0
  162. package/dist/{domObserver-LCBj1xw4.cjs → domObserver-v9ODTyfT.js} +4 -23
  163. package/dist/enviveConfig-DZBohDpc.js +62 -0
  164. package/dist/enviveConfig-Dv9-esGV.cjs +130 -0
  165. package/dist/enviveConfigContext-D2OELZDR.cjs +60 -0
  166. package/dist/enviveConfigContext-DrDjCems.js +45 -0
  167. package/dist/events/index.cjs +3 -2
  168. package/dist/events/index.d.cts +15 -2
  169. package/dist/events/index.d.ts +15 -2
  170. package/dist/events/index.js +2 -2
  171. package/dist/events-DYY4l817.cjs +90 -0
  172. package/dist/events-DyUix-Bn.js +78 -0
  173. package/dist/featureFlagServiceContext-B01ZkIwj.d.cts +23 -0
  174. package/dist/featureFlagServiceContext-CJyYItqu.cjs +62 -0
  175. package/dist/featureFlagServiceContext-FBM6DdMJ.js +42 -0
  176. package/dist/featureFlagServiceContext-jZzoym5C.d.ts +23 -0
  177. package/dist/featureGates-KEwAL8p_.js +26 -0
  178. package/dist/featureGates-qU_ulhpC.cjs +32 -0
  179. package/dist/frontendConfig-BIq8r6nC.d.cts +858 -0
  180. package/dist/frontendConfig-CixANNjw.d.ts +858 -0
  181. package/dist/{globalSearch-Cpc8egsM.cjs → globalSearch-Ba342VVG.cjs} +1 -1
  182. package/dist/globalSearch-DQCMamhv.js +1 -0
  183. package/dist/globalSearch-DYxPE02f.cjs +0 -0
  184. package/dist/{globalSearch-nmrfGLOn.js → globalSearch-eGx-9JQz.js} +1 -1
  185. package/dist/graphql-3PxNRFOc.js +36 -0
  186. package/dist/graphql-DGYfelZp.cjs +53 -0
  187. package/dist/graphqlConfig-GHZ1UgCw.cjs +73 -0
  188. package/dist/graphqlConfig-mDg6J44N.js +24 -0
  189. package/dist/graphqlContext-B4twVCqw.d.ts +28 -0
  190. package/dist/graphqlContext-BZPEAFSR.cjs +111 -0
  191. package/dist/graphqlContext-W6iEyEkv.d.cts +28 -0
  192. package/dist/graphqlContext-eaZPxgRE.js +96 -0
  193. package/dist/hooks/AmplitudeOperations/index.cjs +22 -23
  194. package/dist/hooks/AmplitudeOperations/index.d.cts +2 -2
  195. package/dist/hooks/AmplitudeOperations/index.d.ts +2 -2
  196. package/dist/hooks/AmplitudeOperations/index.js +21 -22
  197. package/dist/hooks/AppDetails/index.cjs +22 -20
  198. package/dist/hooks/AppDetails/index.d.cts +24 -3
  199. package/dist/hooks/AppDetails/index.d.ts +24 -3
  200. package/dist/hooks/AppDetails/index.js +22 -20
  201. package/dist/hooks/CdnOperations/index.cjs +4 -4
  202. package/dist/hooks/CdnOperations/index.js +4 -4
  203. package/dist/hooks/ChatToggle/index.cjs +25 -28
  204. package/dist/hooks/ChatToggle/index.d.cts +2 -2
  205. package/dist/hooks/ChatToggle/index.d.ts +2 -2
  206. package/dist/hooks/ChatToggle/index.js +22 -25
  207. package/dist/hooks/ChatToggleAnalytics/index.cjs +24 -25
  208. package/dist/hooks/ChatToggleAnalytics/index.d.cts +2 -2
  209. package/dist/hooks/ChatToggleAnalytics/index.d.ts +2 -2
  210. package/dist/hooks/ChatToggleAnalytics/index.js +23 -24
  211. package/dist/hooks/CustomerSupportHandoff/index.cjs +2 -2
  212. package/dist/hooks/CustomerSupportHandoff/index.d.cts +1 -1
  213. package/dist/hooks/CustomerSupportHandoff/index.js +2 -2
  214. package/dist/hooks/Debounce/index.cjs +2 -20
  215. package/dist/hooks/Debounce/index.d.cts +1 -1
  216. package/dist/hooks/Debounce/index.d.ts +1 -1
  217. package/dist/hooks/Debounce/index.js +2 -18
  218. package/dist/hooks/ElementObserver/index.cjs +6 -4
  219. package/dist/hooks/ElementObserver/index.d.cts +25 -4
  220. package/dist/hooks/ElementObserver/index.d.ts +25 -4
  221. package/dist/hooks/ElementObserver/index.js +6 -4
  222. package/dist/hooks/FloatingButtonVisibility/index.cjs +73 -0
  223. package/dist/hooks/FloatingButtonVisibility/index.d.cts +7 -0
  224. package/dist/hooks/FloatingButtonVisibility/index.d.ts +7 -0
  225. package/dist/hooks/FloatingButtonVisibility/index.js +69 -0
  226. package/dist/hooks/GrabAndScroll/index.cjs +1 -1
  227. package/dist/hooks/GrabAndScroll/index.d.ts +2 -2
  228. package/dist/hooks/GrabAndScroll/index.js +1 -1
  229. package/dist/hooks/GraphQLConfig/index.cjs +14 -9
  230. package/dist/hooks/GraphQLConfig/index.d.cts +14 -2
  231. package/dist/hooks/GraphQLConfig/index.d.ts +14 -2
  232. package/dist/hooks/GraphQLConfig/index.js +14 -9
  233. package/dist/hooks/IdentifyUser/index.cjs +21 -19
  234. package/dist/hooks/IdentifyUser/index.js +20 -18
  235. package/dist/hooks/ImageResolver/index.cjs +29 -20
  236. package/dist/hooks/ImageResolver/index.d.ts +1 -1
  237. package/dist/hooks/ImageResolver/index.js +29 -20
  238. package/dist/hooks/Intersection/index.cjs +1 -1
  239. package/dist/hooks/Intersection/index.js +1 -1
  240. package/dist/hooks/LastInteraction/index.cjs +34 -0
  241. package/dist/hooks/LastInteraction/index.d.cts +7 -0
  242. package/dist/hooks/LastInteraction/index.d.ts +7 -0
  243. package/dist/hooks/LastInteraction/index.js +32 -0
  244. package/dist/hooks/LocalStorageOperations/index.cjs +7 -8
  245. package/dist/hooks/LocalStorageOperations/index.js +3 -4
  246. package/dist/hooks/MessageFilter/index.cjs +12 -3
  247. package/dist/hooks/MessageFilter/index.d.cts +18 -2
  248. package/dist/hooks/MessageFilter/index.d.ts +18 -2
  249. package/dist/hooks/MessageFilter/index.js +11 -2
  250. package/dist/hooks/NewOrgConfig/index.cjs +18 -14
  251. package/dist/hooks/NewOrgConfig/index.d.cts +17 -3
  252. package/dist/hooks/NewOrgConfig/index.d.ts +17 -3
  253. package/dist/hooks/NewOrgConfig/index.js +18 -14
  254. package/dist/hooks/Search/index.cjs +173 -314
  255. package/dist/hooks/Search/index.d.cts +58 -3
  256. package/dist/hooks/Search/index.d.ts +58 -3
  257. package/dist/hooks/Search/index.js +162 -302
  258. package/dist/hooks/SearchOperations/index.cjs +25 -24
  259. package/dist/hooks/SearchOperations/index.d.cts +3 -2
  260. package/dist/hooks/SearchOperations/index.d.ts +3 -2
  261. package/dist/hooks/SearchOperations/index.js +25 -24
  262. package/dist/hooks/SessionStorageOperations/index.cjs +2 -2
  263. package/dist/hooks/SessionStorageOperations/index.js +2 -2
  264. package/dist/hooks/ShopifyUrlOperations/index.cjs +3 -3
  265. package/dist/hooks/ShopifyUrlOperations/index.d.cts +5 -2
  266. package/dist/hooks/ShopifyUrlOperations/index.d.ts +5 -2
  267. package/dist/hooks/ShopifyUrlOperations/index.js +3 -3
  268. package/dist/hooks/SnapCalculator/index.cjs +1 -1
  269. package/dist/hooks/SnapCalculator/index.d.cts +3 -4
  270. package/dist/hooks/SnapCalculator/index.d.ts +3 -4
  271. package/dist/hooks/SnapCalculator/index.js +1 -1
  272. package/dist/hooks/SystemSettingsContext/index.cjs +6 -17
  273. package/dist/hooks/SystemSettingsContext/index.d.cts +16 -5
  274. package/dist/hooks/SystemSettingsContext/index.d.ts +15 -4
  275. package/dist/hooks/SystemSettingsContext/index.js +6 -15
  276. package/dist/hooks/TrackComponentVisibleEvent/index.cjs +21 -23
  277. package/dist/hooks/TrackComponentVisibleEvent/index.d.cts +3 -2
  278. package/dist/hooks/TrackComponentVisibleEvent/index.d.ts +3 -2
  279. package/dist/hooks/TrackComponentVisibleEvent/index.js +21 -23
  280. package/dist/hooks/UpdateAnalyticsProps/index.cjs +24 -26
  281. package/dist/hooks/UpdateAnalyticsProps/index.js +20 -22
  282. package/dist/hooks/utils.cjs +1 -1
  283. package/dist/hooks/utils.d.cts +14 -20
  284. package/dist/hooks/utils.d.ts +14 -20
  285. package/dist/hooks/utils.js +1 -1
  286. package/dist/index-9oqgeOVC.d.cts +186 -0
  287. package/dist/index-A0HvA68Y.d.cts +1 -0
  288. package/dist/index-BC93l5Th.d.ts +1 -0
  289. package/dist/index-BEzmil_W.d.ts +44 -0
  290. package/dist/{index-DtzPIcQp.d.ts → index-BdjH4aRG.d.ts} +1 -1
  291. package/dist/{index-CsmO1rDH.d.ts → index-BfM7zKRO.d.ts} +1 -1
  292. package/dist/index-Bmub8e38.d.cts +98 -0
  293. package/dist/{index-mv7KvWDq.d.ts → index-CA1Eo7DA.d.ts} +1 -1
  294. package/dist/index-CCa4tZuO.d.ts +184 -0
  295. package/dist/{index-ChiZg0yw.d.cts → index-CCboEuTO.d.cts} +1 -1
  296. package/dist/index-CESxqFso.d.cts +228 -0
  297. package/dist/{index-BbqT4BQv.d.cts → index-COXkY78t.d.cts} +1 -1
  298. package/dist/index-CboygwjO.d.ts +676 -0
  299. package/dist/index-CiWEYzXl.d.cts +184 -0
  300. package/dist/{index-jFQefHda.d.ts → index-Cw9oYJnq.d.ts} +1 -1
  301. package/dist/index-D5lw0cMx.d.ts +186 -0
  302. package/dist/{index-CAJq_8bO.d.cts → index-DZtnHhlr.d.cts} +1 -1
  303. package/dist/index-Dfwnna1j.d.ts +228 -0
  304. package/dist/index-Dt_C-I-2.d.cts +676 -0
  305. package/dist/index-OkKEOL6H.d.cts +44 -0
  306. package/dist/index-bjMvkcBF.d.ts +98 -0
  307. package/dist/{index-npqPeJ1g.d.cts → index-hAqp0oYb.d.cts} +1 -1
  308. package/dist/interceptors/index.cjs +3 -28
  309. package/dist/interceptors/index.d.cts +16 -4
  310. package/dist/interceptors/index.d.ts +16 -4
  311. package/dist/interceptors/index.js +3 -25
  312. package/dist/interceptors/types.cjs +1 -0
  313. package/dist/interceptors/types.d.cts +14 -0
  314. package/dist/interceptors/types.d.ts +14 -0
  315. package/dist/interceptors/types.js +3 -0
  316. package/dist/localStorageContext-BPZ82q-G.js +95 -0
  317. package/dist/localStorageContext-NRP-CdmF.cjs +115 -0
  318. package/dist/{logger-BqHq67zN.cjs → logger-TBIl4uIH.cjs} +1 -1
  319. package/dist/{logger-BMVdhQOV.js → logger-W3lqg-4b.js} +1 -1
  320. package/dist/models-D-4db7XW.cjs +1537 -0
  321. package/dist/models-c86hYW-F.js +1296 -0
  322. package/dist/{newOrgConfigAtom-CDttTiuu.cjs → newOrgConfigAtom-D6R-7HCk.cjs} +1 -1
  323. package/dist/newOrgConfigAtom-bn1lnljf.js +8 -0
  324. package/dist/newOrgConfigContext-BC79qoiV.d.ts +16 -0
  325. package/dist/newOrgConfigContext-BqZwD8-B.cjs +68 -0
  326. package/dist/newOrgConfigContext-DbcDClwd.js +53 -0
  327. package/dist/newOrgConfigContext-eS4ZLo58.d.cts +16 -0
  328. package/dist/nodeSelector-DybpVr-i.d.ts +31 -0
  329. package/dist/nodeSelector-vKB44CDB.d.cts +31 -0
  330. package/dist/org-CIhjzxWr.cjs +43 -0
  331. package/dist/org-CeWXnpwF.js +12 -0
  332. package/dist/search-6RrxBXD6.d.cts +20 -0
  333. package/dist/search-BBu5YeQa.js +126 -0
  334. package/dist/search-D23INSNg.cjs +205 -0
  335. package/dist/search-filter-types-BItKtezf.d.cts +102 -0
  336. package/dist/search-filter-types-fZf91Pdw.d.ts +102 -0
  337. package/dist/search-nuWWnRRV.d.ts +20 -0
  338. package/dist/searchContext-BPT44uk-.js +129 -0
  339. package/dist/searchContext-CwRRiXQ3.cjs +145 -0
  340. package/dist/searchServiceAdapter-DEv1tTn0.cjs +34 -0
  341. package/dist/searchServiceAdapter-WyCU55NV.js +16 -0
  342. package/dist/sessionStorageContext-1Ks_d4Z0.cjs +66 -0
  343. package/dist/sessionStorageContext-CDcl7NVl.js +52 -0
  344. package/dist/shopifyUrlContext-CejRZfj7.js +61 -0
  345. package/dist/shopifyUrlContext-lnHoAOEf.cjs +75 -0
  346. package/dist/spiffyWidgets-CdxRcXhW.d.ts +20 -0
  347. package/dist/spiffyWidgets-eNbU1gMc.d.cts +20 -0
  348. package/dist/systemSettingsContext-Ba-wi2NZ.cjs +60 -0
  349. package/dist/systemSettingsContext-DumUaV0m.js +39 -0
  350. package/dist/test-types-B3YQpECG.d.cts +13 -0
  351. package/dist/test-types-C8NHqaUS.d.ts +13 -0
  352. package/dist/types/index.cjs +48 -3
  353. package/dist/types/index.d.cts +18 -2
  354. package/dist/types/index.d.ts +18 -2
  355. package/dist/types/index.js +44 -2
  356. package/dist/types-BGqrvAsw.d.ts +10 -0
  357. package/dist/types-CKPddlfS.cjs +0 -0
  358. package/dist/types-CS0Hrzja.js +30 -0
  359. package/dist/types-CtUb63bt.js +76 -0
  360. package/dist/types-CxObxLKs.cjs +48 -0
  361. package/dist/types-DIiH_5gL.d.cts +10 -0
  362. package/dist/types-Dc6hx6ei.js +1 -0
  363. package/dist/types-UUvB6h05.cjs +106 -0
  364. package/dist/types-aQTzSrH1.d.cts +51 -0
  365. package/dist/types-kAjmR2du.d.ts +51 -0
  366. package/dist/types.cjs +0 -0
  367. package/dist/types.d.cts +16 -0
  368. package/dist/types.d.ts +16 -0
  369. package/dist/types.js +1 -0
  370. package/dist/urlsParser-COzMdJaX.cjs +78 -0
  371. package/dist/urlsParser-DxjoLj98.js +42 -0
  372. package/dist/useAmplitudeOperations-Cv0fi3uj.cjs +41 -0
  373. package/dist/useAmplitudeOperations-Ti6phPPq.js +34 -0
  374. package/dist/useAppDetails-CsXHPAh1.cjs +38 -0
  375. package/dist/useAppDetails-PUfYwCjK.js +30 -0
  376. package/dist/useDebounce-DZ8Cgiwc.cjs +26 -0
  377. package/dist/useDebounce-v9cezyjn.js +19 -0
  378. package/dist/useGraphQLConfig-BizpCw23.cjs +76 -0
  379. package/dist/useGraphQLConfig-DFWl9Z89.js +63 -0
  380. package/dist/{useIntersection-BkMkuJcZ.js → useIntersection-Cncgxdmy.js} +1 -1
  381. package/dist/{useIntersection-BcBCa890.cjs → useIntersection-m4PEpvG7.cjs} +1 -1
  382. package/dist/useMessageInterceptor-BjGP_uXm.js +25 -0
  383. package/dist/useMessageInterceptor-arAqUq1Q.cjs +33 -0
  384. package/dist/userIdentityContext-W1OWF3cG.d.ts +20 -0
  385. package/dist/userIdentityContext-kU1PIo8K.d.cts +20 -0
  386. package/dist/utilityTypes-B2KuRn37.js +1 -0
  387. package/dist/utilityTypes-BGbL2WTP.cjs +0 -0
  388. package/dist/{utils-Buo4KU5l.cjs → utils-2SWrJ12w.cjs} +1 -1
  389. package/dist/utils-BewguHW0.d.cts +22 -0
  390. package/dist/{utils-CiJLDPjY.cjs → utils-CDw74BCO.cjs} +1 -1
  391. package/dist/utils-CLGXsOwE.cjs +1591 -0
  392. package/dist/{utils-BRNaQkCK.js → utils-CqBxIpEV.js} +1 -1
  393. package/dist/{utils-B1LVzQYK.js → utils-DIvMgPe8.js} +1 -1
  394. package/dist/utils-D_kATUj6.js +92 -0
  395. package/dist/{utils-BitIIghf.d.ts → utils-DpneNSJf.d.ts} +1 -1
  396. package/dist/utils-hKYwSBo9.d.ts +22 -0
  397. package/dist/utils-hYTjy7hJ.cjs +130 -0
  398. package/dist/utils-jYtD3hmA.js +1385 -0
  399. package/dist/variantInfo-BfKlkaWU.js +11 -0
  400. package/dist/variantInfo-DpLn4nHz.cjs +17 -0
  401. package/package.json +36 -9
  402. package/src/application/commerce-api.ts +37 -40
  403. package/src/application/models/api/context.ts +4 -0
  404. package/src/application/models/api/generationParams.ts +4 -0
  405. package/src/application/models/api/nextMessageRequest.ts +11 -0
  406. package/src/application/models/api/orgAnalyticsConfig.ts +19 -0
  407. package/src/application/models/api/orgConfigResults.ts +44 -0
  408. package/src/application/models/api/organizationConfig.ts +12 -0
  409. package/src/{types/ApiResponse.ts → application/models/api/response.ts} +29 -35
  410. package/src/application/models/api/responseGenerics.ts +67 -0
  411. package/src/application/models/api/search.ts +26 -0
  412. package/src/application/models/api/suggestion.ts +4 -0
  413. package/src/application/models/api/supportedEventRequest.ts +8 -0
  414. package/src/application/models/api/userEvent.ts +101 -0
  415. package/src/application/models/cachedValue.ts +8 -0
  416. package/src/application/models/chatElementDisplayLocation.ts +22 -0
  417. package/src/application/models/clientDetails.ts +18 -0
  418. package/src/application/models/colorsConfig.ts +28 -0
  419. package/src/application/models/conversationalSearchIds.ts +5 -0
  420. package/src/application/models/dataLayer.ts +45 -0
  421. package/src/application/models/events.ts +5 -0
  422. package/src/application/models/featureGates.ts +21 -0
  423. package/src/application/models/frontendConfig.ts +14 -0
  424. package/src/application/models/googleAnalyticsEvents.ts +8 -0
  425. package/src/application/models/graphql/index.ts +0 -1
  426. package/src/application/models/graphql/queries/getMerchantColorsQuery.ts +23 -1
  427. package/src/application/models/graphql/queries/getMerchantFrontendConfigQuery.ts +89 -1
  428. package/src/application/models/guards/api/isApiFormResponse.ts +4 -4
  429. package/src/application/models/guards/api/isApiFormSubmittedResponseAttributes.ts +2 -2
  430. package/src/application/models/guards/api/isApiOrderResponseAttributes.ts +20 -2
  431. package/src/application/models/guards/api/isApiOrgConfigResults.ts +9 -3
  432. package/src/application/models/guards/api/isApiOrganizationConfig.ts +32 -8
  433. package/src/application/models/guards/api/isApiPDPEventAttributes.ts +5 -8
  434. package/src/application/models/guards/api/isApiPLPEventAttributes.ts +10 -14
  435. package/src/application/models/guards/api/isApiPageResponseAttributes.ts +1 -1
  436. package/src/application/models/guards/api/isApiProductResponseAttributes.ts +4 -2
  437. package/src/application/models/guards/api/isApiProductSearchAttributes.ts +6 -9
  438. package/src/application/models/guards/api/isApiProductSearchFilterAttributes.ts +4 -7
  439. package/src/application/models/guards/api/isApiQueryTypedEventAttributes.ts +3 -8
  440. package/src/application/models/guards/api/isApiResponse.ts +15 -22
  441. package/src/application/models/guards/api/isApiReviewResponseAttributes.ts +1 -1
  442. package/src/application/models/guards/api/isApiReviewRichInformation.ts +1 -1
  443. package/src/application/models/guards/api/isApiTextResponseAttributes.ts +1 -1
  444. package/src/application/models/guards/graphQL/isGraphQLColorsConfig.ts +1 -1
  445. package/src/application/models/guards/isBaseEcommerceEvent.ts +2 -1
  446. package/src/application/models/guards/isGA4EcommerceEvent.ts +1 -1
  447. package/src/application/models/guards/isLegacyUAEcommerceEvent.ts +1 -1
  448. package/src/application/models/guards/isMobilePLPChatPlacementParameter.ts +3 -1
  449. package/src/application/models/guards/isSpanxTakeAQuizCtaParameter.ts +3 -5
  450. package/src/application/models/guards/isVariantInfo.ts +1 -6
  451. package/src/application/models/index.ts +95 -30
  452. package/src/application/models/localStorageEventListener.ts +4 -0
  453. package/src/{types/Message.ts → application/models/message.ts} +34 -38
  454. package/src/application/models/mobilePLPChatPlacementParameter.ts +3 -0
  455. package/src/application/models/orgsEnum.ts +36 -0
  456. package/src/application/models/productExperiment.ts +5 -0
  457. package/src/application/models/spanxTakeAQuizCtaParameter.ts +4 -0
  458. package/src/application/models/spiffyWidgets.ts +16 -0
  459. package/src/application/models/utilityTypes/camelCase.ts +87 -0
  460. package/src/application/models/utilityTypes/camelCasedPropertiesDeep.ts +80 -0
  461. package/src/application/models/utilityTypes/delimiterCase.ts +121 -0
  462. package/src/application/models/utilityTypes/delimiterCasedPropertiesDeep.ts +98 -0
  463. package/src/application/models/utilityTypes/index.ts +1 -0
  464. package/src/application/models/utilityTypes/internal.ts +93 -0
  465. package/src/application/models/utilityTypes/primitive.ts +8 -0
  466. package/src/application/models/utilityTypes/snakeCasedPropertiesDeep.ts +49 -0
  467. package/src/application/models/utilityTypes/splitWords.ts +76 -0
  468. package/src/application/models/utilityTypes/trim.ts +28 -0
  469. package/src/application/models/utilityTypes/unknownArray.ts +25 -0
  470. package/src/application/models/utils/snakeToCamelTransformer.ts +8 -8
  471. package/src/application/models/validators/validateGraphQLColorsConfig.ts +2 -6
  472. package/src/application/models/validators/validateGraphQLFrontendConfig.ts +6 -6
  473. package/src/application/models/validators/validateMobilePLPChatPlacementParameter.ts +3 -5
  474. package/src/application/models/validators/validateOrgConfigResults.ts +5 -6
  475. package/src/application/models/validators/validateOrganizationConfig.ts +8 -11
  476. package/src/application/models/validators/validateResponse.ts +44 -66
  477. package/src/application/models/validators/validateSuggestion.ts +1 -1
  478. package/src/application/models/validators/validateUserEvent.ts +12 -23
  479. package/src/application/models/variantInfo/index.ts +1 -0
  480. package/src/application/models/variantInfo/pageVisitInfo.ts +6 -0
  481. package/src/application/models/variantInfo/plpInfo.ts +3 -0
  482. package/src/application/models/variantInfo/productInfo.ts +5 -0
  483. package/src/application/models/variantInfo/variantInfo.ts +29 -0
  484. package/src/application/utils/__tests__/divideArrays.test.ts +14 -0
  485. package/src/application/utils/analyticsUtils.ts +8 -1
  486. package/src/application/utils/cdnUtils.ts +11 -0
  487. package/src/application/utils/coreContextToApiContext.ts +1 -3
  488. package/src/application/utils/coreUserEventToApiUserEvent.ts +2 -2
  489. package/src/application/utils/elementObserver.ts +1 -1
  490. package/src/application/utils/imageFilter.ts +2 -5
  491. package/src/application/utils/index.ts +21 -20
  492. package/src/application/utils/messageFromFormSubmittedEvent.ts +1 -1
  493. package/src/application/utils/messageFromQueryEvent.ts +1 -1
  494. package/src/application/utils/messageFromResponse.ts +10 -14
  495. package/src/application/utils/messageFromSuggestionEvent.ts +4 -6
  496. package/src/application/utils/mouseEventTypes.ts +1 -1
  497. package/src/application/utils/nextMessageRequestToApiRequest.ts +1 -1
  498. package/src/application/utils/overrides.ts +49 -1
  499. package/src/application/utils/supportedEventRequestToApiRequest.ts +1 -3
  500. package/src/application/utils/urlsParser.ts +7 -1
  501. package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +1 -1
  502. package/src/atoms/app/index.ts +25 -15
  503. package/src/atoms/app/variant.ts +1 -1
  504. package/src/atoms/chat/chatState.ts +4 -4
  505. package/src/atoms/chat/form.ts +1 -1
  506. package/src/atoms/chat/messageQueue.ts +50 -25
  507. package/src/atoms/chat/replies.ts +2 -1
  508. package/src/atoms/chat/suggestions.ts +29 -34
  509. package/src/atoms/envive/enviveConfig.ts +20 -14
  510. package/src/atoms/org/customerService.ts +8 -4
  511. package/src/atoms/org/graphqlConfig.ts +15 -7
  512. package/src/atoms/org/index.ts +6 -4
  513. package/src/atoms/org/newOrgConfigAtom.ts +2 -2
  514. package/src/atoms/org/orgAnalyticsConfig.ts +1 -1
  515. package/src/atoms/search/chatSearch.ts +317 -0
  516. package/src/atoms/search/index.ts +1 -0
  517. package/src/atoms/search/productFilters.ts +52 -72
  518. package/src/atoms/search/productSorter.ts +2 -2
  519. package/src/atoms/search/searchAPI.ts +60 -42
  520. package/src/atoms/search/searchServiceAdapter.ts +1 -1
  521. package/src/atoms/search/types.ts +55 -0
  522. package/src/config/divIds.ts +27 -0
  523. package/src/config/socialProofClasses.ts +17 -0
  524. package/src/contexts/amplitudeContext/amplitudeContext.tsx +57 -16
  525. package/src/contexts/cdnContext/cdnContext.tsx +6 -1
  526. package/src/contexts/chatContext/chatContext.tsx +509 -0
  527. package/src/contexts/chatContext/index.ts +1 -0
  528. package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +26 -12
  529. package/src/contexts/enviveCssContext/enviveCssContext.tsx +12 -5
  530. package/src/contexts/featureFlagContext/featureFlagContext.tsx +48 -27
  531. package/src/contexts/featureFlagServiceContext/featureFlagServiceContext.tsx +3 -11
  532. package/src/contexts/graphqlContext/graphqlContext.tsx +95 -40
  533. package/src/contexts/localStorageContext/localStorageContext.tsx +60 -26
  534. package/src/contexts/newOrgConfigContext/newOrgConfigContext.tsx +22 -10
  535. package/src/contexts/searchContext/searchContext.tsx +49 -29
  536. package/src/contexts/sessionStorageContext/sessionStorageContext.tsx +33 -12
  537. package/src/contexts/shopifyUrlContext/shopifyUrlContext.tsx +37 -20
  538. package/src/contexts/systemSettingsContext/systemSettingsContext.tsx +21 -8
  539. package/src/contexts/types.ts +1067 -0
  540. package/src/contexts/userIdentityContext/userIdentityContext.tsx +77 -33
  541. package/src/events/event-types.ts +11 -0
  542. package/src/events/index.ts +5 -8
  543. package/src/events/registerAnalyticsListeners.ts +13 -10
  544. package/src/hooks/AmplitudeOperations/useAmplitudeOperations.ts +11 -6
  545. package/src/hooks/AppDetails/useAppDetails.ts +24 -10
  546. package/src/hooks/ChatToggle/useChatToggle.ts +19 -7
  547. package/src/hooks/ChatToggleAnalytics/useChatToggleAnalytics.ts +4 -4
  548. package/src/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.ts +1 -1
  549. package/src/hooks/ElementObserver/useElementObserver.ts +32 -14
  550. package/src/hooks/FloatingButtonVisibility/index.ts +1 -0
  551. package/src/hooks/FloatingButtonVisibility/useFloatingButtonVisibility.ts +99 -0
  552. package/src/hooks/GrabAndScroll/useGrabAndScroll.ts +124 -125
  553. package/src/hooks/GraphQLConfig/useGraphQLConfig.ts +7 -5
  554. package/src/hooks/ImageResolver/useImageResolver.ts +31 -24
  555. package/src/hooks/LastInteraction/index.ts +1 -0
  556. package/src/hooks/LastInteraction/useLastInteraction.ts +42 -0
  557. package/src/hooks/LocalStorageOperations/useLocalStorageOperations.ts +19 -12
  558. package/src/hooks/MessageFilter/useMessageFilter.ts +7 -1
  559. package/src/hooks/Search/useSearch.tsx +217 -87
  560. package/src/hooks/SearchOperations/useSearchOperations.ts +12 -8
  561. package/src/hooks/ShopifyUrlOperations/useShopifyUrlOperations.ts +14 -8
  562. package/src/hooks/SnapCalculator/useSnapCalculator.ts +2 -1
  563. package/src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.ts +11 -8
  564. package/src/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.ts +25 -11
  565. package/src/hooks/utils.ts +29 -19
  566. package/src/interceptors/index.ts +2 -1
  567. package/src/interceptors/types.ts +6 -0
  568. package/src/interceptors/useMessageInterceptor.ts +6 -10
  569. package/src/merchants/domInsertion.ts +30 -0
  570. package/src/merchants/gridInsertion.ts +19 -0
  571. package/src/types/config-versions.ts +6 -0
  572. package/src/types/customerService.ts +31 -0
  573. package/src/types/custservice-types.ts +28 -0
  574. package/src/{exceptions → types/exceptions}/unsupportedProductExceptions.ts +2 -2
  575. package/src/types/floatingbuttonoverrides-types.ts +10 -0
  576. package/src/types/index.ts +5 -4
  577. package/src/types/search-filter-types.ts +111 -0
  578. package/src/types/suggestionBarV2-types.ts +4 -0
  579. package/src/types/test-types.ts +3 -0
  580. package/src/types.ts +11 -0
  581. package/dist/AmplitudeOperations-CXU93q_4.js +0 -34
  582. package/dist/AmplitudeOperations-_uIb5QED.cjs +0 -41
  583. package/dist/TrackComponentVisibleEvent-D-hN3owz.cjs +0 -60
  584. package/dist/TrackComponentVisibleEvent-D-pvNVOP.js +0 -53
  585. package/dist/amplitudeContext-DFXeRauX.js +0 -233
  586. package/dist/amplitudeContext-DrFGH7Q7.cjs +0 -249
  587. package/dist/amplitudeTrackEventAtom-D66l5oFp.js +0 -8
  588. package/dist/amplitudeTrackEventAtom-f22P2U0u.cjs +0 -15
  589. package/dist/api-D4HaU2Gf.js +0 -166
  590. package/dist/api-D4Xoibs9.cjs +0 -239
  591. package/dist/app-BT3g-mDp.js +0 -515
  592. package/dist/app-DxwdFQlv.cjs +0 -570
  593. package/dist/cdnContext-D-qi0lub.js +0 -38
  594. package/dist/cdnContext-DIVgBnsl.cjs +0 -53
  595. package/dist/chat-ZaY3KY-R.js +0 -226
  596. package/dist/chat-rhEjVfrd.cjs +0 -326
  597. package/dist/chatState-BbI93m6r.js +0 -33
  598. package/dist/chatState-DlJpHAsW.cjs +0 -119
  599. package/dist/dist-C38adNK1.js +0 -5923
  600. package/dist/dist-VxRI6eQv.cjs +0 -6019
  601. package/dist/domObserver-CVhsCSkS.js +0 -285
  602. package/dist/enviveConfig-CQ_8mT-g.cjs +0 -130
  603. package/dist/enviveConfig-Cwlp7-Qz.js +0 -62
  604. package/dist/enviveConfigContext-CIavPzcm.js +0 -47
  605. package/dist/enviveConfigContext-DHEs077z.cjs +0 -62
  606. package/dist/events-CgFGtanE.cjs +0 -69
  607. package/dist/events-WOOrnUAx.js +0 -63
  608. package/dist/exceptions/index.cjs +0 -4
  609. package/dist/exceptions/index.d.cts +0 -12
  610. package/dist/exceptions/index.d.ts +0 -12
  611. package/dist/exceptions/index.js +0 -3
  612. package/dist/exceptions-BjDgLzGi.cjs +0 -32
  613. package/dist/exceptions-CUGY31Ua.js +0 -20
  614. package/dist/featureFlagServiceContext-ClnlCJV5.d.cts +0 -24
  615. package/dist/featureFlagServiceContext-CyPGEe2d.d.ts +0 -24
  616. package/dist/featureFlagServiceContext-Dr8Cw23n.js +0 -46
  617. package/dist/featureFlagServiceContext-rxZhpdEj.cjs +0 -66
  618. package/dist/graphql-CvAHWmel.js +0 -46
  619. package/dist/graphql-JaGqsToc.cjs +0 -70
  620. package/dist/graphqlContext-B8wuRZcp.cjs +0 -111
  621. package/dist/graphqlContext-CpHMbKoX.js +0 -96
  622. package/dist/index-5li6ZMDu.d.ts +0 -11
  623. package/dist/index-BVZbvpx_.d.cts +0 -11
  624. package/dist/index-CMZcE7pk.d.cts +0 -224
  625. package/dist/index-CuihhoIF.d.ts +0 -42
  626. package/dist/index-bEjLKG_Q.d.ts +0 -224
  627. package/dist/index-qOBU4GEh.d.cts +0 -42
  628. package/dist/localStorageContext-BFwvuEcf.js +0 -90
  629. package/dist/localStorageContext-CWc5xJ6U.cjs +0 -104
  630. package/dist/models-Cw0QcbQv.js +0 -1118
  631. package/dist/models-Dl0_Ujgj.cjs +0 -1305
  632. package/dist/newOrgConfigAtom-C8h3w_Ji.js +0 -8
  633. package/dist/newOrgConfigContext-BdzDnzUM.js +0 -53
  634. package/dist/newOrgConfigContext-cWeJAT6E.cjs +0 -68
  635. package/dist/nodeSelector-BAKg1h_y.d.ts +0 -28
  636. package/dist/nodeSelector-BYEAyrsj.d.cts +0 -28
  637. package/dist/org-BNs_maoW.cjs +0 -111
  638. package/dist/org-CScQqL4k.js +0 -32
  639. package/dist/search-CsXXamht.js +0 -233
  640. package/dist/search-DHhDpeQU.cjs +0 -312
  641. package/dist/searchContext-B5ZNLtvd.js +0 -129
  642. package/dist/searchContext-SFvF_Y8J.cjs +0 -145
  643. package/dist/searchServiceAdapter-BkvDIhV8.js +0 -16
  644. package/dist/searchServiceAdapter-C4zzBUl0.cjs +0 -34
  645. package/dist/sessionStorageContext-BuWrJQwc.cjs +0 -66
  646. package/dist/sessionStorageContext-DvFHbk81.js +0 -52
  647. package/dist/shopifyUrlContext-COc1eDR_.cjs +0 -75
  648. package/dist/shopifyUrlContext-CToAt_98.js +0 -61
  649. package/dist/systemSettingsContext-D9iNGz5v.js +0 -39
  650. package/dist/systemSettingsContext-DdV7Yte8.cjs +0 -60
  651. package/dist/types-1iJ_FnQQ.cjs +0 -39
  652. package/dist/types-D5du68Vp.js +0 -27
  653. package/dist/urlsParser-Dax4iVNC.cjs +0 -78
  654. package/dist/urlsParser-NAp2LwWP.js +0 -42
  655. package/dist/useAppDetails-D3T6kJY_.cjs +0 -38
  656. package/dist/useAppDetails-xPVs6fW7.js +0 -30
  657. package/dist/useGraphQLConfig-B1DaVvFx.cjs +0 -76
  658. package/dist/useGraphQLConfig-BtPxjtxw.js +0 -63
  659. package/dist/utils-BZT_oZ3n.js +0 -92
  660. package/dist/utils-D3MjNkd3.cjs +0 -716
  661. package/dist/utils-DMwh3QbT.js +0 -607
  662. package/dist/utils-qtHPLFby.cjs +0 -130
  663. package/src/atoms/search/productRetrievalAPI.ts +0 -72
  664. package/src/atoms/search/productRetrievalAdapter.ts +0 -28
  665. package/src/exceptions/index.ts +0 -2
  666. package/src/global.d.ts +0 -8
  667. package/src/hooks/Search/useRecommendedProducts.ts +0 -50
  668. package/src/hooks/Search/useSearchInput.ts +0 -237
  669. package/src/types/FilterAttribute.ts +0 -35
  670. package/src/types/Suggestion.ts +0 -6
  671. package/src/util/colorVar.ts +0 -4
  672. package/src/util/configVersion.ts +0 -4
  673. package/src/util/domInsertion.ts +0 -17
  674. /package/dist/{featureFlagServiceContext-Csgo-MUv.cjs → AmplitudeOperations-DxQnurSG.cjs} +0 -0
  675. /package/dist/{featureFlagServiceContext-CISyb90N.js → AmplitudeOperations-ni7wVevx.js} +0 -0
  676. /package/src/{exceptions → types/exceptions}/sessionExceptions.ts +0 -0
@@ -0,0 +1,205 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ const require_newOrgConfigAtom = require('./newOrgConfigAtom-D6R-7HCk.cjs');
3
+ const require_chatSearch = require('./chatSearch-DpnpRWAW.cjs');
4
+ const require_types = require('./types-CxObxLKs.cjs');
5
+ const require_searchServiceAdapter = require('./searchServiceAdapter-DEv1tTn0.cjs');
6
+ let jotai = require("jotai");
7
+ jotai = require_chunk.__toESM(jotai);
8
+
9
+ //#region src/atoms/search/searchAPI.ts
10
+ const searchAtom = (0, jotai.atom)({
11
+ data: null,
12
+ loading: false,
13
+ error: null,
14
+ lastQuery: null
15
+ });
16
+ const searchProductSortingAtom = (0, jotai.atom)(require_types.ProductSorting.FEATURED);
17
+ const searchSelectedFiltersAtom = (0, jotai.atom)([]);
18
+ const createFilterOption = (filterId, filterItemId, displayName) => ({
19
+ id: `${filterId}:${filterItemId}`,
20
+ displayName,
21
+ filterId,
22
+ filterItemId
23
+ });
24
+ const internalSearchParamsAtom = (0, jotai.atom)({
25
+ id: null,
26
+ query: null
27
+ });
28
+ const searchParamsAtom = (0, jotai.atom)((get) => get(internalSearchParamsAtom), (_, set, value) => {
29
+ set(internalSearchParamsAtom, value);
30
+ });
31
+ const internalSearchSystemStateAtom = (0, jotai.atom)(false);
32
+ const searchSystemAtom = (0, jotai.atom)((get) => get(internalSearchSystemStateAtom), (get, set, value) => {
33
+ if (value === get(internalSearchSystemStateAtom)) return;
34
+ const stateChangeHandler = () => {
35
+ const params = new URLSearchParams(window.location.search);
36
+ if (params.get("es") === "true") {
37
+ const id = params.get("esi");
38
+ const query = params.get("esq");
39
+ set(searchParamsAtom, {
40
+ id,
41
+ query
42
+ });
43
+ } else set(searchParamsAtom, {
44
+ id: null,
45
+ query: null
46
+ });
47
+ };
48
+ if (value) {
49
+ set(internalSearchSystemStateAtom, true);
50
+ window.addEventListener("popstate", stateChangeHandler);
51
+ stateChangeHandler();
52
+ } else {
53
+ set(internalSearchSystemStateAtom, false);
54
+ window.removeEventListener("popstate", stateChangeHandler);
55
+ }
56
+ });
57
+ const filteredSearchProductsAtom = (0, jotai.atom)((get) => {
58
+ const searchData = get(searchAtom).data;
59
+ const sorting = get(searchProductSortingAtom);
60
+ const selectedFilters = get(searchSelectedFiltersAtom);
61
+ const newOrgConfig = get(require_newOrgConfigAtom.newOrgConfigAtom);
62
+ if (!searchData?.products || !newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig) return [];
63
+ const filteredProducts = require_chatSearch.ProductFilters.filterProducts(searchData.products, newOrgConfig.frontendConfig.uiConfigs.searchConfig.searchFilterConfig, selectedFilters, newOrgConfig.frontendConfig.uiConfigs.searchConfig.additiveDynamicFilters);
64
+ return require_chatSearch.ProductSorter.sort(filteredProducts, sorting);
65
+ });
66
+ const searchFiltersAtom = (0, jotai.atom)((get) => {
67
+ const searchData = get(searchAtom).data;
68
+ const selectedFilters = get(searchSelectedFiltersAtom);
69
+ const newOrgConfig = get(require_newOrgConfigAtom.newOrgConfigAtom);
70
+ if (!searchData?.products || !newOrgConfig?.frontendConfig?.uiConfigs?.searchConfig) return [];
71
+ return require_chatSearch.ProductFilters.getFiltersForProducts(searchData.products, newOrgConfig.frontendConfig.uiConfigs.searchConfig.searchFilterConfig, selectedFilters);
72
+ });
73
+ const addSearchFilterAtom = (0, jotai.atom)(null, (get, set, filter) => {
74
+ const current = get(searchSelectedFiltersAtom);
75
+ if (!current.some((f) => f.id === filter.id)) set(searchSelectedFiltersAtom, [...current, filter]);
76
+ });
77
+ const removeSearchFilterAtom = (0, jotai.atom)(null, (get, set, filterId) => {
78
+ const current = get(searchSelectedFiltersAtom);
79
+ set(searchSelectedFiltersAtom, current.filter((f) => f.id !== filterId));
80
+ });
81
+ const clearSearchFiltersAtom = (0, jotai.atom)(null, (_, set) => {
82
+ set(searchSelectedFiltersAtom, []);
83
+ });
84
+ const performSearchAtom = (0, jotai.atom)(null, async (get, set, params, allowRedirect = false) => {
85
+ const currentState = get(searchAtom);
86
+ const redirectSearchResultsUrl = get(require_newOrgConfigAtom.newOrgConfigAtom)?.frontendConfig?.uiConfigs?.searchConfig?.redirectSearchResultsUrl;
87
+ if (allowRedirect && redirectSearchResultsUrl) {
88
+ const redirectUrl = new URL(redirectSearchResultsUrl);
89
+ redirectUrl.searchParams.set("es", "true");
90
+ redirectUrl.searchParams.set("esq", params.query);
91
+ window.location.href = redirectUrl.toString();
92
+ } else {
93
+ const url = new URL(window.location.href);
94
+ url.searchParams.set("es", "true");
95
+ url.searchParams.set("esq", params.query);
96
+ window.history.pushState({}, "", url);
97
+ window.dispatchEvent(new PopStateEvent("popstate", { state: {} }));
98
+ }
99
+ window.dispatchEvent(new PopStateEvent("popstate", { state: {} }));
100
+ if (currentState.loading) return;
101
+ set(searchAtom, {
102
+ data: null,
103
+ loading: true,
104
+ error: null,
105
+ lastQuery: params.query
106
+ });
107
+ try {
108
+ const result = await require_searchServiceAdapter.getSearchServiceFunction()(params);
109
+ set(searchAtom, {
110
+ data: result,
111
+ loading: false,
112
+ error: null,
113
+ lastQuery: params.query
114
+ });
115
+ } catch (error) {
116
+ const errorMessage = error instanceof Error ? error.message : "An unknown error occurred";
117
+ set(searchAtom, {
118
+ data: null,
119
+ loading: false,
120
+ error: errorMessage,
121
+ lastQuery: params.query
122
+ });
123
+ }
124
+ });
125
+
126
+ //#endregion
127
+ Object.defineProperty(exports, 'addSearchFilterAtom', {
128
+ enumerable: true,
129
+ get: function () {
130
+ return addSearchFilterAtom;
131
+ }
132
+ });
133
+ Object.defineProperty(exports, 'clearSearchFiltersAtom', {
134
+ enumerable: true,
135
+ get: function () {
136
+ return clearSearchFiltersAtom;
137
+ }
138
+ });
139
+ Object.defineProperty(exports, 'createFilterOption', {
140
+ enumerable: true,
141
+ get: function () {
142
+ return createFilterOption;
143
+ }
144
+ });
145
+ Object.defineProperty(exports, 'filteredSearchProductsAtom', {
146
+ enumerable: true,
147
+ get: function () {
148
+ return filteredSearchProductsAtom;
149
+ }
150
+ });
151
+ Object.defineProperty(exports, 'internalSearchSystemStateAtom', {
152
+ enumerable: true,
153
+ get: function () {
154
+ return internalSearchSystemStateAtom;
155
+ }
156
+ });
157
+ Object.defineProperty(exports, 'performSearchAtom', {
158
+ enumerable: true,
159
+ get: function () {
160
+ return performSearchAtom;
161
+ }
162
+ });
163
+ Object.defineProperty(exports, 'removeSearchFilterAtom', {
164
+ enumerable: true,
165
+ get: function () {
166
+ return removeSearchFilterAtom;
167
+ }
168
+ });
169
+ Object.defineProperty(exports, 'searchAtom', {
170
+ enumerable: true,
171
+ get: function () {
172
+ return searchAtom;
173
+ }
174
+ });
175
+ Object.defineProperty(exports, 'searchFiltersAtom', {
176
+ enumerable: true,
177
+ get: function () {
178
+ return searchFiltersAtom;
179
+ }
180
+ });
181
+ Object.defineProperty(exports, 'searchParamsAtom', {
182
+ enumerable: true,
183
+ get: function () {
184
+ return searchParamsAtom;
185
+ }
186
+ });
187
+ Object.defineProperty(exports, 'searchProductSortingAtom', {
188
+ enumerable: true,
189
+ get: function () {
190
+ return searchProductSortingAtom;
191
+ }
192
+ });
193
+ Object.defineProperty(exports, 'searchSelectedFiltersAtom', {
194
+ enumerable: true,
195
+ get: function () {
196
+ return searchSelectedFiltersAtom;
197
+ }
198
+ });
199
+ Object.defineProperty(exports, 'searchSystemAtom', {
200
+ enumerable: true,
201
+ get: function () {
202
+ return searchSystemAtom;
203
+ }
204
+ });
205
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLUQyM0lOU05nLmNqcyIsIm5hbWVzIjpbIlByb2R1Y3RTb3J0aW5nIiwibmV3T3JnQ29uZmlnQXRvbSIsIlByb2R1Y3RGaWx0ZXJzIiwiUHJvZHVjdFNvcnRlciIsImdldFNlYXJjaFNlcnZpY2VGdW5jdGlvbiIsImVycm9yOiB1bmtub3duIl0sInNvdXJjZXMiOlsiLi4vc3JjL2F0b21zL3NlYXJjaC9zZWFyY2hBUEkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXRvbSB9IGZyb20gXCJqb3RhaVwiO1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0LCBTZWFyY2hQYXJhbXMgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoXCI7XG5pbXBvcnQgeyBQcm9kdWN0U29ydGluZyB9IGZyb20gXCIuL3R5cGVzXCI7XG5pbXBvcnQgeyBQcm9kdWN0RmlsdGVycyB9IGZyb20gXCIuL3Byb2R1Y3RGaWx0ZXJzXCI7XG5pbXBvcnQgeyBQcm9kdWN0U29ydGVyIH0gZnJvbSBcIi4vcHJvZHVjdFNvcnRlclwiO1xuaW1wb3J0IHsgbmV3T3JnQ29uZmlnQXRvbSB9IGZyb20gXCIuLi9vcmdcIjtcbmltcG9ydCB7IGdldFNlYXJjaFNlcnZpY2VGdW5jdGlvbiB9IGZyb20gXCIuL3NlYXJjaFNlcnZpY2VBZGFwdGVyXCI7XG5cbmV4cG9ydCB0eXBlIFNlbGVjdGVkRmlsdGVyT3B0aW9uID0ge1xuICBpZDogc3RyaW5nOyAvLyBcImZpbHRlcklkOmZpbHRlckl0ZW1JZFwiIC0gbWFpbnRhaW5zIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIGNvbXBhcmlzb25zXG4gIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gIGZpbHRlcklkOiBzdHJpbmc7IC8vIEZpbHRlciBjYXRlZ29yeVxuICBmaWx0ZXJJdGVtSWQ6IHN0cmluZzsgLy8gRmlsdGVyIHZhbHVlXG59O1xuXG5pbnRlcmZhY2UgU2VhcmNoU3RhdGUge1xuICBkYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsO1xuICBsb2FkaW5nOiBib29sZWFuO1xuICBlcnJvcjogc3RyaW5nIHwgbnVsbDtcbiAgbGFzdFF1ZXJ5OiBzdHJpbmcgfCBudWxsO1xufVxuXG5leHBvcnQgY29uc3Qgc2VhcmNoQXRvbSA9IGF0b208U2VhcmNoU3RhdGU+KHtcbiAgZGF0YTogbnVsbCxcbiAgbG9hZGluZzogZmFsc2UsXG4gIGVycm9yOiBudWxsLFxuICBsYXN0UXVlcnk6IG51bGwsXG59KTtcblxuZXhwb3J0IGNvbnN0IHNlYXJjaFByb2R1Y3RTb3J0aW5nQXRvbSA9IGF0b208UHJvZHVjdFNvcnRpbmc+KFxuICBQcm9kdWN0U29ydGluZy5GRUFUVVJFRFxuKTtcbmV4cG9ydCBjb25zdCBzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tID0gYXRvbTxTZWxlY3RlZEZpbHRlck9wdGlvbltdPihbXSk7XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVGaWx0ZXJPcHRpb24gPSAoXG4gIGZpbHRlcklkOiBzdHJpbmcsXG4gIGZpbHRlckl0ZW1JZDogc3RyaW5nLFxuICBkaXNwbGF5TmFtZTogc3RyaW5nXG4pOiBTZWxlY3RlZEZpbHRlck9wdGlvbiA9PiAoe1xuICBpZDogYCR7ZmlsdGVySWR9OiR7ZmlsdGVySXRlbUlkfWAsXG4gIGRpc3BsYXlOYW1lLFxuICBmaWx0ZXJJZCxcbiAgZmlsdGVySXRlbUlkLFxufSk7XG5cbmNvbnN0IGludGVybmFsU2VhcmNoUGFyYW1zQXRvbSA9IGF0b208e1xuICBpZDogc3RyaW5nIHwgbnVsbDtcbiAgcXVlcnk6IHN0cmluZyB8IG51bGw7XG59Pih7XG4gIGlkOiBudWxsLFxuICBxdWVyeTogbnVsbCxcbn0pO1xuXG5leHBvcnQgY29uc3Qgc2VhcmNoUGFyYW1zQXRvbSA9IGF0b20oXG4gIChnZXQpID0+IGdldChpbnRlcm5hbFNlYXJjaFBhcmFtc0F0b20pLFxuICAoXywgc2V0LCB2YWx1ZTogeyBpZDogc3RyaW5nIHwgbnVsbDsgcXVlcnk6IHN0cmluZyB8IG51bGwgfSkgPT4ge1xuICAgIHNldChpbnRlcm5hbFNlYXJjaFBhcmFtc0F0b20sIHZhbHVlKTtcbiAgfVxuKTtcbmV4cG9ydCBjb25zdCBpbnRlcm5hbFNlYXJjaFN5c3RlbVN0YXRlQXRvbSA9IGF0b208Ym9vbGVhbj4oZmFsc2UpO1xuXG5leHBvcnQgY29uc3Qgc2VhcmNoU3lzdGVtQXRvbSA9IGF0b20oXG4gIChnZXQpID0+IGdldChpbnRlcm5hbFNlYXJjaFN5c3RlbVN0YXRlQXRvbSksXG4gIChnZXQsIHNldCwgdmFsdWU6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAodmFsdWUgPT09IGdldChpbnRlcm5hbFNlYXJjaFN5c3RlbVN0YXRlQXRvbSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc3RhdGVDaGFuZ2VIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcbiAgICAgIGlmIChwYXJhbXMuZ2V0KFwiZXNcIikgPT09IFwidHJ1ZVwiKSB7XG4gICAgICAgIGNvbnN0IGlkID0gcGFyYW1zLmdldChcImVzaVwiKTtcbiAgICAgICAgY29uc3QgcXVlcnkgPSBwYXJhbXMuZ2V0KFwiZXNxXCIpO1xuICAgICAgICBzZXQoc2VhcmNoUGFyYW1zQXRvbSwgeyBpZCwgcXVlcnkgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXQoc2VhcmNoUGFyYW1zQXRvbSwgeyBpZDogbnVsbCwgcXVlcnk6IG51bGwgfSk7XG4gICAgICB9XG4gICAgfTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHNldChpbnRlcm5hbFNlYXJjaFN5c3RlbVN0YXRlQXRvbSwgdHJ1ZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInBvcHN0YXRlXCIsIHN0YXRlQ2hhbmdlSGFuZGxlcik7XG4gICAgICAvLyBBbHNvIHRyaWdnZXIgdGhlIGhhc2ggY2hhbmdlIGhhbmRsZXIgdG8gc2V0IHRoZSBpbml0aWFsIHN0YXRlXG4gICAgICBzdGF0ZUNoYW5nZUhhbmRsZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0KGludGVybmFsU2VhcmNoU3lzdGVtU3RhdGVBdG9tLCBmYWxzZSk7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInBvcHN0YXRlXCIsIHN0YXRlQ2hhbmdlSGFuZGxlcik7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgZmlsdGVyZWRTZWFyY2hQcm9kdWN0c0F0b20gPSBhdG9tKChnZXQpID0+IHtcbiAgY29uc3Qgc2VhcmNoRGF0YSA9IGdldChzZWFyY2hBdG9tKS5kYXRhO1xuICBjb25zdCBzb3J0aW5nID0gZ2V0KHNlYXJjaFByb2R1Y3RTb3J0aW5nQXRvbSk7XG4gIGNvbnN0IHNlbGVjdGVkRmlsdGVycyA9IGdldChzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tKTtcbiAgY29uc3QgbmV3T3JnQ29uZmlnID0gZ2V0KG5ld09yZ0NvbmZpZ0F0b20pO1xuXG4gIGlmIChcbiAgICAhc2VhcmNoRGF0YT8ucHJvZHVjdHMgfHxcbiAgICAhbmV3T3JnQ29uZmlnPy5mcm9udGVuZENvbmZpZz8udWlDb25maWdzPy5zZWFyY2hDb25maWdcbiAgKVxuICAgIHJldHVybiBbXTtcblxuICBjb25zdCBmaWx0ZXJlZFByb2R1Y3RzID0gUHJvZHVjdEZpbHRlcnMuZmlsdGVyUHJvZHVjdHMoXG4gICAgc2VhcmNoRGF0YS5wcm9kdWN0cyxcbiAgICBuZXdPcmdDb25maWcuZnJvbnRlbmRDb25maWcudWlDb25maWdzLnNlYXJjaENvbmZpZy5zZWFyY2hGaWx0ZXJDb25maWcsXG4gICAgc2VsZWN0ZWRGaWx0ZXJzLFxuICAgIG5ld09yZ0NvbmZpZy5mcm9udGVuZENvbmZpZy51aUNvbmZpZ3Muc2VhcmNoQ29uZmlnLmFkZGl0aXZlRHluYW1pY0ZpbHRlcnNcbiAgKTtcblxuICByZXR1cm4gUHJvZHVjdFNvcnRlci5zb3J0KGZpbHRlcmVkUHJvZHVjdHMsIHNvcnRpbmcpO1xufSk7XG5cbmV4cG9ydCBjb25zdCBzZWFyY2hGaWx0ZXJzQXRvbSA9IGF0b20oKGdldCkgPT4ge1xuICBjb25zdCBzZWFyY2hEYXRhID0gZ2V0KHNlYXJjaEF0b20pLmRhdGE7XG4gIGNvbnN0IHNlbGVjdGVkRmlsdGVycyA9IGdldChzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tKTtcbiAgY29uc3QgbmV3T3JnQ29uZmlnID0gZ2V0KG5ld09yZ0NvbmZpZ0F0b20pO1xuXG4gIGlmIChcbiAgICAhc2VhcmNoRGF0YT8ucHJvZHVjdHMgfHxcbiAgICAhbmV3T3JnQ29uZmlnPy5mcm9udGVuZENvbmZpZz8udWlDb25maWdzPy5zZWFyY2hDb25maWdcbiAgKVxuICAgIHJldHVybiBbXTtcblxuICByZXR1cm4gUHJvZHVjdEZpbHRlcnMuZ2V0RmlsdGVyc0ZvclByb2R1Y3RzKFxuICAgIHNlYXJjaERhdGEucHJvZHVjdHMsXG4gICAgbmV3T3JnQ29uZmlnLmZyb250ZW5kQ29uZmlnLnVpQ29uZmlncy5zZWFyY2hDb25maWcuc2VhcmNoRmlsdGVyQ29uZmlnLFxuICAgIHNlbGVjdGVkRmlsdGVyc1xuICApO1xufSk7XG5cbmV4cG9ydCBjb25zdCBhZGRTZWFyY2hGaWx0ZXJBdG9tID0gYXRvbShcbiAgbnVsbCxcbiAgKGdldCwgc2V0LCBmaWx0ZXI6IFNlbGVjdGVkRmlsdGVyT3B0aW9uKSA9PiB7XG4gICAgY29uc3QgY3VycmVudCA9IGdldChzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tKTtcbiAgICBpZiAoIWN1cnJlbnQuc29tZSgoZikgPT4gZi5pZCA9PT0gZmlsdGVyLmlkKSkge1xuICAgICAgc2V0KHNlYXJjaFNlbGVjdGVkRmlsdGVyc0F0b20sIFsuLi5jdXJyZW50LCBmaWx0ZXJdKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCByZW1vdmVTZWFyY2hGaWx0ZXJBdG9tID0gYXRvbShcbiAgbnVsbCxcbiAgKGdldCwgc2V0LCBmaWx0ZXJJZDogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgY3VycmVudCA9IGdldChzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tKTtcbiAgICBzZXQoXG4gICAgICBzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tLFxuICAgICAgY3VycmVudC5maWx0ZXIoKGYpID0+IGYuaWQgIT09IGZpbHRlcklkKVxuICAgICk7XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBjbGVhclNlYXJjaEZpbHRlcnNBdG9tID0gYXRvbShudWxsLCAoXywgc2V0KSA9PiB7XG4gIHNldChzZWFyY2hTZWxlY3RlZEZpbHRlcnNBdG9tLCBbXSk7XG59KTtcblxuZXhwb3J0IGNvbnN0IHBlcmZvcm1TZWFyY2hBdG9tID0gYXRvbShcbiAgbnVsbCxcbiAgYXN5bmMgKGdldCwgc2V0LCBwYXJhbXM6IFNlYXJjaFBhcmFtcywgYWxsb3dSZWRpcmVjdCA9IGZhbHNlKSA9PiB7XG4gICAgY29uc3QgY3VycmVudFN0YXRlID0gZ2V0KHNlYXJjaEF0b20pO1xuICAgIGNvbnN0IG5ld09yZ0NvbmZpZyA9IGdldChuZXdPcmdDb25maWdBdG9tKTtcbiAgICBjb25zdCByZWRpcmVjdFNlYXJjaFJlc3VsdHNVcmwgPVxuICAgICAgbmV3T3JnQ29uZmlnPy5mcm9udGVuZENvbmZpZz8udWlDb25maWdzPy5zZWFyY2hDb25maWdcbiAgICAgICAgPy5yZWRpcmVjdFNlYXJjaFJlc3VsdHNVcmw7XG5cbiAgICBpZiAoYWxsb3dSZWRpcmVjdCAmJiByZWRpcmVjdFNlYXJjaFJlc3VsdHNVcmwpIHtcbiAgICAgIGNvbnN0IHJlZGlyZWN0VXJsID0gbmV3IFVSTChyZWRpcmVjdFNlYXJjaFJlc3VsdHNVcmwpO1xuICAgICAgcmVkaXJlY3RVcmwuc2VhcmNoUGFyYW1zLnNldChcImVzXCIsIFwidHJ1ZVwiKTtcbiAgICAgIHJlZGlyZWN0VXJsLnNlYXJjaFBhcmFtcy5zZXQoXCJlc3FcIiwgcGFyYW1zLnF1ZXJ5KTtcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gcmVkaXJlY3RVcmwudG9TdHJpbmcoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVXBkYXRlIFVSTCBhbmQgbWFudWFsbHkgdHJpZ2dlciBzdGF0ZSBjaGFuZ2UgKHNpbmNlIHB1c2hTdGF0ZSBkb2Vzbid0IHRyaWdnZXIgcG9wc3RhdGUpXG4gICAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcbiAgICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KFwiZXNcIiwgXCJ0cnVlXCIpO1xuICAgICAgdXJsLnNlYXJjaFBhcmFtcy5zZXQoXCJlc3FcIiwgcGFyYW1zLnF1ZXJ5KTtcbiAgICAgIHdpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZSh7fSwgXCJcIiwgdXJsKTtcblxuICAgICAgLy8gTWFudWFsbHkgdHJpZ2dlciBwYWdlIHZhcmlhbnQgcmUtZXZhbHVhdGlvbiBieSBkaXNwYXRjaGluZyBhIHBvcHN0YXRlIGV2ZW50XG4gICAgICAvLyBUaGlzIGVuc3VyZXMgdGhlIHBhZ2UgdmFyaWFudCBzeXN0ZW0gZGV0ZWN0cyB0aGUgVVJMIGNoYW5nZSBhbmQgbW91bnRzIHNlYXJjaCByZXN1bHRzXG4gICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgUG9wU3RhdGVFdmVudChcInBvcHN0YXRlXCIsIHsgc3RhdGU6IHt9IH0pKTtcbiAgICB9XG5cbiAgICAvLyBNYW51YWxseSB0cmlnZ2VyIHBhZ2UgdmFyaWFudCByZS1ldmFsdWF0aW9uIGJ5IGRpc3BhdGNoaW5nIGEgcG9wc3RhdGUgZXZlbnRcbiAgICAvLyBUaGlzIGVuc3VyZXMgdGhlIHBhZ2UgdmFyaWFudCBzeXN0ZW0gZGV0ZWN0cyB0aGUgVVJMIGNoYW5nZSBhbmQgbW91bnRzIHNlYXJjaCByZXN1bHRzXG4gICAgd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IFBvcFN0YXRlRXZlbnQoXCJwb3BzdGF0ZVwiLCB7IHN0YXRlOiB7fSB9KSk7XG4gICAgaWYgKGN1cnJlbnRTdGF0ZS5sb2FkaW5nKSB7XG4gICAgICByZXR1cm47IC8vIFByZXZlbnQgY29uY3VycmVudCBzZWFyY2hlc1xuICAgIH1cblxuICAgIHNldChzZWFyY2hBdG9tLCB7XG4gICAgICBkYXRhOiBudWxsLFxuICAgICAgbG9hZGluZzogdHJ1ZSxcbiAgICAgIGVycm9yOiBudWxsLFxuICAgICAgbGFzdFF1ZXJ5OiBwYXJhbXMucXVlcnksXG4gICAgfSk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHNlYXJjaFNlcnZpY2VGdW5jdGlvbiA9IGdldFNlYXJjaFNlcnZpY2VGdW5jdGlvbigpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgc2VhcmNoU2VydmljZUZ1bmN0aW9uKHBhcmFtcyk7XG4gICAgICBzZXQoc2VhcmNoQXRvbSwge1xuICAgICAgICBkYXRhOiByZXN1bHQsXG4gICAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgICBlcnJvcjogbnVsbCxcbiAgICAgICAgbGFzdFF1ZXJ5OiBwYXJhbXMucXVlcnksXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID1cbiAgICAgICAgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiBcIkFuIHVua25vd24gZXJyb3Igb2NjdXJyZWRcIjtcbiAgICAgIHNldChzZWFyY2hBdG9tLCB7XG4gICAgICAgIGRhdGE6IG51bGwsXG4gICAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgICBlcnJvcjogZXJyb3JNZXNzYWdlLFxuICAgICAgICBsYXN0UXVlcnk6IHBhcmFtcy5xdWVyeSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuKTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBc0JBLE1BQWEsNkJBQStCO0NBQzFDLE1BQU07Q0FDTixTQUFTO0NBQ1QsT0FBTztDQUNQLFdBQVc7Q0FDWixDQUFDO0FBRUYsTUFBYSwyQ0FDWEEsNkJBQWUsU0FDaEI7QUFDRCxNQUFhLDRDQUF5RCxFQUFFLENBQUM7QUFFekUsTUFBYSxzQkFDWCxVQUNBLGNBQ0EsaUJBQzBCO0NBQzFCLElBQUksR0FBRyxTQUFTLEdBQUc7Q0FDbkI7Q0FDQTtDQUNBO0NBQ0Q7QUFFRCxNQUFNLDJDQUdIO0NBQ0QsSUFBSTtDQUNKLE9BQU87Q0FDUixDQUFDO0FBRUYsTUFBYSxvQ0FDVixRQUFRLElBQUkseUJBQXlCLEdBQ3JDLEdBQUcsS0FBSyxVQUF1RDtBQUM5RCxLQUFJLDBCQUEwQixNQUFNO0VBRXZDO0FBQ0QsTUFBYSxnREFBOEMsTUFBTTtBQUVqRSxNQUFhLG9DQUNWLFFBQVEsSUFBSSw4QkFBOEIsR0FDMUMsS0FBSyxLQUFLLFVBQW1CO0FBQzVCLEtBQUksVUFBVSxJQUFJLDhCQUE4QixDQUM5QztDQUVGLE1BQU0sMkJBQTJCO0VBQy9CLE1BQU0sU0FBUyxJQUFJLGdCQUFnQixPQUFPLFNBQVMsT0FBTztBQUMxRCxNQUFJLE9BQU8sSUFBSSxLQUFLLEtBQUssUUFBUTtHQUMvQixNQUFNLEtBQUssT0FBTyxJQUFJLE1BQU07R0FDNUIsTUFBTSxRQUFRLE9BQU8sSUFBSSxNQUFNO0FBQy9CLE9BQUksa0JBQWtCO0lBQUU7SUFBSTtJQUFPLENBQUM7UUFFcEMsS0FBSSxrQkFBa0I7R0FBRSxJQUFJO0dBQU0sT0FBTztHQUFNLENBQUM7O0FBR3BELEtBQUksT0FBTztBQUNULE1BQUksK0JBQStCLEtBQUs7QUFDeEMsU0FBTyxpQkFBaUIsWUFBWSxtQkFBbUI7QUFFdkQsc0JBQW9CO1FBQ2Y7QUFDTCxNQUFJLCtCQUErQixNQUFNO0FBQ3pDLFNBQU8sb0JBQW9CLFlBQVksbUJBQW1COztFQUcvRDtBQUVELE1BQWEsOENBQW1DLFFBQVE7Q0FDdEQsTUFBTSxhQUFhLElBQUksV0FBVyxDQUFDO0NBQ25DLE1BQU0sVUFBVSxJQUFJLHlCQUF5QjtDQUM3QyxNQUFNLGtCQUFrQixJQUFJLDBCQUEwQjtDQUN0RCxNQUFNLGVBQWUsSUFBSUMsMENBQWlCO0FBRTFDLEtBQ0UsQ0FBQyxZQUFZLFlBQ2IsQ0FBQyxjQUFjLGdCQUFnQixXQUFXLGFBRTFDLFFBQU8sRUFBRTtDQUVYLE1BQU0sbUJBQW1CQyxrQ0FBZSxlQUN0QyxXQUFXLFVBQ1gsYUFBYSxlQUFlLFVBQVUsYUFBYSxvQkFDbkQsaUJBQ0EsYUFBYSxlQUFlLFVBQVUsYUFBYSx1QkFDcEQ7QUFFRCxRQUFPQyxpQ0FBYyxLQUFLLGtCQUFrQixRQUFRO0VBQ3BEO0FBRUYsTUFBYSxxQ0FBMEIsUUFBUTtDQUM3QyxNQUFNLGFBQWEsSUFBSSxXQUFXLENBQUM7Q0FDbkMsTUFBTSxrQkFBa0IsSUFBSSwwQkFBMEI7Q0FDdEQsTUFBTSxlQUFlLElBQUlGLDBDQUFpQjtBQUUxQyxLQUNFLENBQUMsWUFBWSxZQUNiLENBQUMsY0FBYyxnQkFBZ0IsV0FBVyxhQUUxQyxRQUFPLEVBQUU7QUFFWCxRQUFPQyxrQ0FBZSxzQkFDcEIsV0FBVyxVQUNYLGFBQWEsZUFBZSxVQUFVLGFBQWEsb0JBQ25ELGdCQUNEO0VBQ0Q7QUFFRixNQUFhLHNDQUNYLE9BQ0MsS0FBSyxLQUFLLFdBQWlDO0NBQzFDLE1BQU0sVUFBVSxJQUFJLDBCQUEwQjtBQUM5QyxLQUFJLENBQUMsUUFBUSxNQUFNLE1BQU0sRUFBRSxPQUFPLE9BQU8sR0FBRyxDQUMxQyxLQUFJLDJCQUEyQixDQUFDLEdBQUcsU0FBUyxPQUFPLENBQUM7RUFHekQ7QUFFRCxNQUFhLHlDQUNYLE9BQ0MsS0FBSyxLQUFLLGFBQXFCO0NBQzlCLE1BQU0sVUFBVSxJQUFJLDBCQUEwQjtBQUM5QyxLQUNFLDJCQUNBLFFBQVEsUUFBUSxNQUFNLEVBQUUsT0FBTyxTQUFTLENBQ3pDO0VBRUo7QUFFRCxNQUFhLHlDQUE4QixPQUFPLEdBQUcsUUFBUTtBQUMzRCxLQUFJLDJCQUEyQixFQUFFLENBQUM7RUFDbEM7QUFFRixNQUFhLG9DQUNYLE1BQ0EsT0FBTyxLQUFLLEtBQUssUUFBc0IsZ0JBQWdCLFVBQVU7Q0FDL0QsTUFBTSxlQUFlLElBQUksV0FBVztDQUVwQyxNQUFNLDJCQURlLElBQUlELDBDQUFpQixFQUUxQixnQkFBZ0IsV0FBVyxjQUNyQztBQUVOLEtBQUksaUJBQWlCLDBCQUEwQjtFQUM3QyxNQUFNLGNBQWMsSUFBSSxJQUFJLHlCQUF5QjtBQUNyRCxjQUFZLGFBQWEsSUFBSSxNQUFNLE9BQU87QUFDMUMsY0FBWSxhQUFhLElBQUksT0FBTyxPQUFPLE1BQU07QUFDakQsU0FBTyxTQUFTLE9BQU8sWUFBWSxVQUFVO1FBQ3hDO0VBRUwsTUFBTSxNQUFNLElBQUksSUFBSSxPQUFPLFNBQVMsS0FBSztBQUN6QyxNQUFJLGFBQWEsSUFBSSxNQUFNLE9BQU87QUFDbEMsTUFBSSxhQUFhLElBQUksT0FBTyxPQUFPLE1BQU07QUFDekMsU0FBTyxRQUFRLFVBQVUsRUFBRSxFQUFFLElBQUksSUFBSTtBQUlyQyxTQUFPLGNBQWMsSUFBSSxjQUFjLFlBQVksRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7O0FBS3BFLFFBQU8sY0FBYyxJQUFJLGNBQWMsWUFBWSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNsRSxLQUFJLGFBQWEsUUFDZjtBQUdGLEtBQUksWUFBWTtFQUNkLE1BQU07RUFDTixTQUFTO0VBQ1QsT0FBTztFQUNQLFdBQVcsT0FBTztFQUNuQixDQUFDO0FBQ0YsS0FBSTtFQUVGLE1BQU0sU0FBUyxNQURlRyx1REFBMEIsQ0FDYixPQUFPO0FBQ2xELE1BQUksWUFBWTtHQUNkLE1BQU07R0FDTixTQUFTO0dBQ1QsT0FBTztHQUNQLFdBQVcsT0FBTztHQUNuQixDQUFDO1VBQ0tDLE9BQWdCO0VBQ3ZCLE1BQU0sZUFDSixpQkFBaUIsUUFBUSxNQUFNLFVBQVU7QUFDM0MsTUFBSSxZQUFZO0dBQ2QsTUFBTTtHQUNOLFNBQVM7R0FDVCxPQUFPO0dBQ1AsV0FBVyxPQUFPO0dBQ25CLENBQUM7O0VBR1AifQ==
@@ -0,0 +1,102 @@
1
+ //#region src/types/search-filter-types.d.ts
2
+ type ModalSheetProps = {
3
+ children: React.ReactNode;
4
+ isOpen: boolean;
5
+ closeModal: () => void;
6
+ desktopWidth?: number;
7
+ mobileFullHeight?: number;
8
+ animationDuration?: number;
9
+ headerProps: ModalSheetHeaderProps;
10
+ footerProps?: ModalSheetFooterProps;
11
+ showOverlay?: boolean;
12
+ };
13
+ type ModalSheetHeaderProps = {
14
+ headerVariant?: ModalSheetHeaderVariant;
15
+ headerContent: React.ReactNode;
16
+ handleHeaderClick?: () => void;
17
+ };
18
+ type ModalSheetFooterProps = {
19
+ footerContent: React.ReactNode;
20
+ footerClassName?: string;
21
+ };
22
+ type ModalSheetHeaderVariant = "primary";
23
+ type CloseIconVariant = "light" | "tertiary" | "dark";
24
+ type ModalSheetCloseIconProps = {
25
+ closeIconVariant: CloseIconVariant;
26
+ closeIcon?: React.ReactNode;
27
+ closeModal?: () => void;
28
+ iconSize?: string;
29
+ };
30
+ type SearchFilterProps = {
31
+ filters: SearchFilterDatum[];
32
+ selectFilterItem: SelectFilterItem;
33
+ clearAllFilters: () => void;
34
+ productCount: number;
35
+ isOpen: boolean;
36
+ setIsOpen: (isOpen: boolean) => void;
37
+ applyFiltersUnchangedClasses: string;
38
+ applyFiltersChangedClasses: string;
39
+ headerContent?: React.ReactNode;
40
+ footerContent?: React.ReactNode;
41
+ filterButtonText?: string;
42
+ headerClassName?: string;
43
+ radioButtonFillColor: string;
44
+ radioButtonHoverColor?: string;
45
+ radioButtonUncheckedBorderColor?: string;
46
+ filterCloseIconVariant: CloseIconVariant;
47
+ };
48
+ type SelectFilterItem = ({
49
+ filterId,
50
+ filterItemId,
51
+ isSelected,
52
+ displayName
53
+ }: {
54
+ filterId: string;
55
+ filterItemId: string;
56
+ isSelected: boolean;
57
+ displayName: string;
58
+ }) => void;
59
+ type SelectedFilterItemDatum = {
60
+ filterId: string;
61
+ filterItemId: string;
62
+ };
63
+ type SearchFilterDatum = {
64
+ filterId: string;
65
+ displayName: string;
66
+ items: SearchFilterItemDatum[];
67
+ };
68
+ type SearchFilterItemDatum = {
69
+ filterItemId: string;
70
+ displayName: string;
71
+ productCount: number;
72
+ isSelected: boolean;
73
+ };
74
+ type SearchFilterHeaderProps = {
75
+ closeModal: () => void;
76
+ productCount: number;
77
+ headerClassName: string;
78
+ filterCloseIconVariant: CloseIconVariant;
79
+ };
80
+ type FilterProps = {
81
+ filter: SearchFilterDatum;
82
+ selectFilterItem: SelectFilterItem;
83
+ radioButtonFillColor?: string;
84
+ radioButtonHoverColor?: string;
85
+ radioButtonUncheckedBorderColor?: string;
86
+ };
87
+ type FilterItemProps = {
88
+ filterId: string;
89
+ filterItem: SearchFilterItemDatum;
90
+ selectFilterItem: SelectFilterItem;
91
+ };
92
+ type FilterFooterProps = {
93
+ closeModal: () => void;
94
+ clearAllFilters: () => void;
95
+ filterCount: number;
96
+ hasFiltersChanged: boolean;
97
+ applyFiltersUnchangedClasses: string;
98
+ applyFiltersChangedClasses: string;
99
+ };
100
+ //#endregion
101
+ export { CloseIconVariant, FilterFooterProps, FilterItemProps, FilterProps, ModalSheetCloseIconProps, ModalSheetFooterProps, ModalSheetHeaderProps, ModalSheetHeaderVariant, ModalSheetProps, SearchFilterDatum, SearchFilterHeaderProps, SearchFilterItemDatum, SearchFilterProps, SelectFilterItem, SelectedFilterItemDatum };
102
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci10eXBlcy1CSXRLdGV6Zi5kLmN0cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMvc2VhcmNoLWZpbHRlci10eXBlcy5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIE1vZGFsU2hlZXRQcm9wcyA9IHtcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAgIGlzT3BlbjogYm9vbGVhbjtcbiAgICBjbG9zZU1vZGFsOiAoKSA9PiB2b2lkO1xuICAgIGRlc2t0b3BXaWR0aD86IG51bWJlcjtcbiAgICBtb2JpbGVGdWxsSGVpZ2h0PzogbnVtYmVyO1xuICAgIGFuaW1hdGlvbkR1cmF0aW9uPzogbnVtYmVyO1xuICAgIGhlYWRlclByb3BzOiBNb2RhbFNoZWV0SGVhZGVyUHJvcHM7XG4gICAgZm9vdGVyUHJvcHM/OiBNb2RhbFNoZWV0Rm9vdGVyUHJvcHM7XG4gICAgc2hvd092ZXJsYXk/OiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIE1vZGFsU2hlZXRIZWFkZXJQcm9wcyA9IHtcbiAgICBoZWFkZXJWYXJpYW50PzogTW9kYWxTaGVldEhlYWRlclZhcmlhbnQ7XG4gICAgaGVhZGVyQ29udGVudDogUmVhY3QuUmVhY3ROb2RlO1xuICAgIGhhbmRsZUhlYWRlckNsaWNrPzogKCkgPT4gdm9pZDtcbn07XG5leHBvcnQgdHlwZSBNb2RhbFNoZWV0Rm9vdGVyUHJvcHMgPSB7XG4gICAgZm9vdGVyQ29udGVudDogUmVhY3QuUmVhY3ROb2RlO1xuICAgIGZvb3RlckNsYXNzTmFtZT86IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBNb2RhbFNoZWV0SGVhZGVyVmFyaWFudCA9IFwicHJpbWFyeVwiO1xuZXhwb3J0IHR5cGUgQ2xvc2VJY29uVmFyaWFudCA9IFwibGlnaHRcIiB8IFwidGVydGlhcnlcIiB8IFwiZGFya1wiO1xuZXhwb3J0IHR5cGUgTW9kYWxTaGVldENsb3NlSWNvblByb3BzID0ge1xuICAgIGNsb3NlSWNvblZhcmlhbnQ6IENsb3NlSWNvblZhcmlhbnQ7XG4gICAgY2xvc2VJY29uPzogUmVhY3QuUmVhY3ROb2RlO1xuICAgIGNsb3NlTW9kYWw/OiAoKSA9PiB2b2lkO1xuICAgIGljb25TaXplPzogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFNlYXJjaEZpbHRlclByb3BzID0ge1xuICAgIGZpbHRlcnM6IFNlYXJjaEZpbHRlckRhdHVtW107XG4gICAgc2VsZWN0RmlsdGVySXRlbTogU2VsZWN0RmlsdGVySXRlbTtcbiAgICBjbGVhckFsbEZpbHRlcnM6ICgpID0+IHZvaWQ7XG4gICAgcHJvZHVjdENvdW50OiBudW1iZXI7XG4gICAgaXNPcGVuOiBib29sZWFuO1xuICAgIHNldElzT3BlbjogKGlzT3BlbjogYm9vbGVhbikgPT4gdm9pZDtcbiAgICBhcHBseUZpbHRlcnNVbmNoYW5nZWRDbGFzc2VzOiBzdHJpbmc7XG4gICAgYXBwbHlGaWx0ZXJzQ2hhbmdlZENsYXNzZXM6IHN0cmluZztcbiAgICBoZWFkZXJDb250ZW50PzogUmVhY3QuUmVhY3ROb2RlO1xuICAgIGZvb3RlckNvbnRlbnQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgZmlsdGVyQnV0dG9uVGV4dD86IHN0cmluZztcbiAgICBoZWFkZXJDbGFzc05hbWU/OiBzdHJpbmc7XG4gICAgcmFkaW9CdXR0b25GaWxsQ29sb3I6IHN0cmluZztcbiAgICByYWRpb0J1dHRvbkhvdmVyQ29sb3I/OiBzdHJpbmc7XG4gICAgcmFkaW9CdXR0b25VbmNoZWNrZWRCb3JkZXJDb2xvcj86IHN0cmluZztcbiAgICBmaWx0ZXJDbG9zZUljb25WYXJpYW50OiBDbG9zZUljb25WYXJpYW50O1xufTtcbmV4cG9ydCB0eXBlIFNlbGVjdEZpbHRlckl0ZW0gPSAoeyBmaWx0ZXJJZCwgZmlsdGVySXRlbUlkLCBpc1NlbGVjdGVkLCBkaXNwbGF5TmFtZSwgfToge1xuICAgIGZpbHRlcklkOiBzdHJpbmc7XG4gICAgZmlsdGVySXRlbUlkOiBzdHJpbmc7XG4gICAgaXNTZWxlY3RlZDogYm9vbGVhbjtcbiAgICBkaXNwbGF5TmFtZTogc3RyaW5nO1xufSkgPT4gdm9pZDtcbmV4cG9ydCB0eXBlIFNlbGVjdGVkRmlsdGVySXRlbURhdHVtID0ge1xuICAgIGZpbHRlcklkOiBzdHJpbmc7XG4gICAgZmlsdGVySXRlbUlkOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgU2VhcmNoRmlsdGVyRGF0dW0gPSB7XG4gICAgZmlsdGVySWQ6IHN0cmluZztcbiAgICBkaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIGl0ZW1zOiBTZWFyY2hGaWx0ZXJJdGVtRGF0dW1bXTtcbn07XG5leHBvcnQgdHlwZSBTZWFyY2hGaWx0ZXJJdGVtRGF0dW0gPSB7XG4gICAgZmlsdGVySXRlbUlkOiBzdHJpbmc7XG4gICAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgICBwcm9kdWN0Q291bnQ6IG51bWJlcjtcbiAgICBpc1NlbGVjdGVkOiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIFNlYXJjaEZpbHRlckhlYWRlclByb3BzID0ge1xuICAgIGNsb3NlTW9kYWw6ICgpID0+IHZvaWQ7XG4gICAgcHJvZHVjdENvdW50OiBudW1iZXI7XG4gICAgaGVhZGVyQ2xhc3NOYW1lOiBzdHJpbmc7XG4gICAgZmlsdGVyQ2xvc2VJY29uVmFyaWFudDogQ2xvc2VJY29uVmFyaWFudDtcbn07XG5leHBvcnQgdHlwZSBGaWx0ZXJQcm9wcyA9IHtcbiAgICBmaWx0ZXI6IFNlYXJjaEZpbHRlckRhdHVtO1xuICAgIHNlbGVjdEZpbHRlckl0ZW06IFNlbGVjdEZpbHRlckl0ZW07XG4gICAgcmFkaW9CdXR0b25GaWxsQ29sb3I/OiBzdHJpbmc7XG4gICAgcmFkaW9CdXR0b25Ib3ZlckNvbG9yPzogc3RyaW5nO1xuICAgIHJhZGlvQnV0dG9uVW5jaGVja2VkQm9yZGVyQ29sb3I/OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgRmlsdGVySXRlbVByb3BzID0ge1xuICAgIGZpbHRlcklkOiBzdHJpbmc7XG4gICAgZmlsdGVySXRlbTogU2VhcmNoRmlsdGVySXRlbURhdHVtO1xuICAgIHNlbGVjdEZpbHRlckl0ZW06IFNlbGVjdEZpbHRlckl0ZW07XG59O1xuZXhwb3J0IHR5cGUgRmlsdGVyRm9vdGVyUHJvcHMgPSB7XG4gICAgY2xvc2VNb2RhbDogKCkgPT4gdm9pZDtcbiAgICBjbGVhckFsbEZpbHRlcnM6ICgpID0+IHZvaWQ7XG4gICAgZmlsdGVyQ291bnQ6IG51bWJlcjtcbiAgICBoYXNGaWx0ZXJzQ2hhbmdlZDogYm9vbGVhbjtcbiAgICBhcHBseUZpbHRlcnNVbmNoYW5nZWRDbGFzc2VzOiBzdHJpbmc7XG4gICAgYXBwbHlGaWx0ZXJzQ2hhbmdlZENsYXNzZXM6IHN0cmluZztcbn07XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFXLGtCQUFrQjtDQUFDO09BQUEsTUFBQTtPQUFBO09BQUE7Q0FBQTtBQUM5QixJQUFXLHdCQUFrQjtDQUFBO09BQUE7T0FBQSxNQUFBO0NBQUE7QUFDN0IsSUFBVyx3QkFBUSxDQUFBLFdBQUEsTUFBQSxVQUFBO0FBQ25CLElBQVcsMEJBQWUsQ0FBQSxJQUFBO0FBQzFCLElBQVcsbUJBQWMsQ0FBQSxJQUFBO0FBQ3pCLElBQVcsMkJBQWtCO0NBQUE7T0FBQTtPQUFBLE1BQUE7Q0FBQTtBQUM3QixJQUFXLG9CQUFtQjtDQUFBO09BQUE7T0FBQTtPQUFBLE1BQUE7T0FBQSxNQUFBO09BQUE7Q0FBQTtBQUM5QixJQUFXLG1CQUFtQjtDQUFDO09BQU87T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUN0QyxJQUFXLDBCQUEwQixDQUFDLElBQUM7QUFDdkMsSUFBVyxvQkFBYyxDQUFBLFdBQUEsc0JBQUE7QUFDekIsSUFBQyx3QkFBQSxDQUFBLElBQUE7QUFDRCxJQUFXLDBCQUF5QixDQUFBLFdBQUEsaUJBQUE7QUFDcEMsSUFBVyxjQUFjO0NBQUM7T0FBVztPQUFNO0NBQUE7QUFDM0MsSUFBVyxrQkFBa0I7Q0FBQztPQUFJO09BQUE7Q0FBQTtBQUNsQyxJQUFXLG9CQUFvQixDQUFDLElBQUUifQ==
@@ -0,0 +1,102 @@
1
+ //#region src/types/search-filter-types.d.ts
2
+ type ModalSheetProps = {
3
+ children: React.ReactNode;
4
+ isOpen: boolean;
5
+ closeModal: () => void;
6
+ desktopWidth?: number;
7
+ mobileFullHeight?: number;
8
+ animationDuration?: number;
9
+ headerProps: ModalSheetHeaderProps;
10
+ footerProps?: ModalSheetFooterProps;
11
+ showOverlay?: boolean;
12
+ };
13
+ type ModalSheetHeaderProps = {
14
+ headerVariant?: ModalSheetHeaderVariant;
15
+ headerContent: React.ReactNode;
16
+ handleHeaderClick?: () => void;
17
+ };
18
+ type ModalSheetFooterProps = {
19
+ footerContent: React.ReactNode;
20
+ footerClassName?: string;
21
+ };
22
+ type ModalSheetHeaderVariant = "primary";
23
+ type CloseIconVariant = "light" | "tertiary" | "dark";
24
+ type ModalSheetCloseIconProps = {
25
+ closeIconVariant: CloseIconVariant;
26
+ closeIcon?: React.ReactNode;
27
+ closeModal?: () => void;
28
+ iconSize?: string;
29
+ };
30
+ type SearchFilterProps = {
31
+ filters: SearchFilterDatum[];
32
+ selectFilterItem: SelectFilterItem;
33
+ clearAllFilters: () => void;
34
+ productCount: number;
35
+ isOpen: boolean;
36
+ setIsOpen: (isOpen: boolean) => void;
37
+ applyFiltersUnchangedClasses: string;
38
+ applyFiltersChangedClasses: string;
39
+ headerContent?: React.ReactNode;
40
+ footerContent?: React.ReactNode;
41
+ filterButtonText?: string;
42
+ headerClassName?: string;
43
+ radioButtonFillColor: string;
44
+ radioButtonHoverColor?: string;
45
+ radioButtonUncheckedBorderColor?: string;
46
+ filterCloseIconVariant: CloseIconVariant;
47
+ };
48
+ type SelectFilterItem = ({
49
+ filterId,
50
+ filterItemId,
51
+ isSelected,
52
+ displayName
53
+ }: {
54
+ filterId: string;
55
+ filterItemId: string;
56
+ isSelected: boolean;
57
+ displayName: string;
58
+ }) => void;
59
+ type SelectedFilterItemDatum = {
60
+ filterId: string;
61
+ filterItemId: string;
62
+ };
63
+ type SearchFilterDatum = {
64
+ filterId: string;
65
+ displayName: string;
66
+ items: SearchFilterItemDatum[];
67
+ };
68
+ type SearchFilterItemDatum = {
69
+ filterItemId: string;
70
+ displayName: string;
71
+ productCount: number;
72
+ isSelected: boolean;
73
+ };
74
+ type SearchFilterHeaderProps = {
75
+ closeModal: () => void;
76
+ productCount: number;
77
+ headerClassName: string;
78
+ filterCloseIconVariant: CloseIconVariant;
79
+ };
80
+ type FilterProps = {
81
+ filter: SearchFilterDatum;
82
+ selectFilterItem: SelectFilterItem;
83
+ radioButtonFillColor?: string;
84
+ radioButtonHoverColor?: string;
85
+ radioButtonUncheckedBorderColor?: string;
86
+ };
87
+ type FilterItemProps = {
88
+ filterId: string;
89
+ filterItem: SearchFilterItemDatum;
90
+ selectFilterItem: SelectFilterItem;
91
+ };
92
+ type FilterFooterProps = {
93
+ closeModal: () => void;
94
+ clearAllFilters: () => void;
95
+ filterCount: number;
96
+ hasFiltersChanged: boolean;
97
+ applyFiltersUnchangedClasses: string;
98
+ applyFiltersChangedClasses: string;
99
+ };
100
+ //#endregion
101
+ export { CloseIconVariant, FilterFooterProps, FilterItemProps, FilterProps, ModalSheetCloseIconProps, ModalSheetFooterProps, ModalSheetHeaderProps, ModalSheetHeaderVariant, ModalSheetProps, SearchFilterDatum, SearchFilterHeaderProps, SearchFilterItemDatum, SearchFilterProps, SelectFilterItem, SelectedFilterItemDatum };
102
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci10eXBlcy1mWmY5MVBkdy5kLnRzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy90eXBlcy9zZWFyY2gtZmlsdGVyLXR5cGVzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgTW9kYWxTaGVldFByb3BzID0ge1xuICAgIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgaXNPcGVuOiBib29sZWFuO1xuICAgIGNsb3NlTW9kYWw6ICgpID0+IHZvaWQ7XG4gICAgZGVza3RvcFdpZHRoPzogbnVtYmVyO1xuICAgIG1vYmlsZUZ1bGxIZWlnaHQ/OiBudW1iZXI7XG4gICAgYW5pbWF0aW9uRHVyYXRpb24/OiBudW1iZXI7XG4gICAgaGVhZGVyUHJvcHM6IE1vZGFsU2hlZXRIZWFkZXJQcm9wcztcbiAgICBmb290ZXJQcm9wcz86IE1vZGFsU2hlZXRGb290ZXJQcm9wcztcbiAgICBzaG93T3ZlcmxheT86IGJvb2xlYW47XG59O1xuZXhwb3J0IHR5cGUgTW9kYWxTaGVldEhlYWRlclByb3BzID0ge1xuICAgIGhlYWRlclZhcmlhbnQ/OiBNb2RhbFNoZWV0SGVhZGVyVmFyaWFudDtcbiAgICBoZWFkZXJDb250ZW50OiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgaGFuZGxlSGVhZGVyQ2xpY2s/OiAoKSA9PiB2b2lkO1xufTtcbmV4cG9ydCB0eXBlIE1vZGFsU2hlZXRGb290ZXJQcm9wcyA9IHtcbiAgICBmb290ZXJDb250ZW50OiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgZm9vdGVyQ2xhc3NOYW1lPzogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIE1vZGFsU2hlZXRIZWFkZXJWYXJpYW50ID0gXCJwcmltYXJ5XCI7XG5leHBvcnQgdHlwZSBDbG9zZUljb25WYXJpYW50ID0gXCJsaWdodFwiIHwgXCJ0ZXJ0aWFyeVwiIHwgXCJkYXJrXCI7XG5leHBvcnQgdHlwZSBNb2RhbFNoZWV0Q2xvc2VJY29uUHJvcHMgPSB7XG4gICAgY2xvc2VJY29uVmFyaWFudDogQ2xvc2VJY29uVmFyaWFudDtcbiAgICBjbG9zZUljb24/OiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgY2xvc2VNb2RhbD86ICgpID0+IHZvaWQ7XG4gICAgaWNvblNpemU/OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgU2VhcmNoRmlsdGVyUHJvcHMgPSB7XG4gICAgZmlsdGVyczogU2VhcmNoRmlsdGVyRGF0dW1bXTtcbiAgICBzZWxlY3RGaWx0ZXJJdGVtOiBTZWxlY3RGaWx0ZXJJdGVtO1xuICAgIGNsZWFyQWxsRmlsdGVyczogKCkgPT4gdm9pZDtcbiAgICBwcm9kdWN0Q291bnQ6IG51bWJlcjtcbiAgICBpc09wZW46IGJvb2xlYW47XG4gICAgc2V0SXNPcGVuOiAoaXNPcGVuOiBib29sZWFuKSA9PiB2b2lkO1xuICAgIGFwcGx5RmlsdGVyc1VuY2hhbmdlZENsYXNzZXM6IHN0cmluZztcbiAgICBhcHBseUZpbHRlcnNDaGFuZ2VkQ2xhc3Nlczogc3RyaW5nO1xuICAgIGhlYWRlckNvbnRlbnQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gICAgZm9vdGVyQ29udGVudD86IFJlYWN0LlJlYWN0Tm9kZTtcbiAgICBmaWx0ZXJCdXR0b25UZXh0Pzogc3RyaW5nO1xuICAgIGhlYWRlckNsYXNzTmFtZT86IHN0cmluZztcbiAgICByYWRpb0J1dHRvbkZpbGxDb2xvcjogc3RyaW5nO1xuICAgIHJhZGlvQnV0dG9uSG92ZXJDb2xvcj86IHN0cmluZztcbiAgICByYWRpb0J1dHRvblVuY2hlY2tlZEJvcmRlckNvbG9yPzogc3RyaW5nO1xuICAgIGZpbHRlckNsb3NlSWNvblZhcmlhbnQ6IENsb3NlSWNvblZhcmlhbnQ7XG59O1xuZXhwb3J0IHR5cGUgU2VsZWN0RmlsdGVySXRlbSA9ICh7IGZpbHRlcklkLCBmaWx0ZXJJdGVtSWQsIGlzU2VsZWN0ZWQsIGRpc3BsYXlOYW1lLCB9OiB7XG4gICAgZmlsdGVySWQ6IHN0cmluZztcbiAgICBmaWx0ZXJJdGVtSWQ6IHN0cmluZztcbiAgICBpc1NlbGVjdGVkOiBib29sZWFuO1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG59KSA9PiB2b2lkO1xuZXhwb3J0IHR5cGUgU2VsZWN0ZWRGaWx0ZXJJdGVtRGF0dW0gPSB7XG4gICAgZmlsdGVySWQ6IHN0cmluZztcbiAgICBmaWx0ZXJJdGVtSWQ6IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBTZWFyY2hGaWx0ZXJEYXR1bSA9IHtcbiAgICBmaWx0ZXJJZDogc3RyaW5nO1xuICAgIGRpc3BsYXlOYW1lOiBzdHJpbmc7XG4gICAgaXRlbXM6IFNlYXJjaEZpbHRlckl0ZW1EYXR1bVtdO1xufTtcbmV4cG9ydCB0eXBlIFNlYXJjaEZpbHRlckl0ZW1EYXR1bSA9IHtcbiAgICBmaWx0ZXJJdGVtSWQ6IHN0cmluZztcbiAgICBkaXNwbGF5TmFtZTogc3RyaW5nO1xuICAgIHByb2R1Y3RDb3VudDogbnVtYmVyO1xuICAgIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG59O1xuZXhwb3J0IHR5cGUgU2VhcmNoRmlsdGVySGVhZGVyUHJvcHMgPSB7XG4gICAgY2xvc2VNb2RhbDogKCkgPT4gdm9pZDtcbiAgICBwcm9kdWN0Q291bnQ6IG51bWJlcjtcbiAgICBoZWFkZXJDbGFzc05hbWU6IHN0cmluZztcbiAgICBmaWx0ZXJDbG9zZUljb25WYXJpYW50OiBDbG9zZUljb25WYXJpYW50O1xufTtcbmV4cG9ydCB0eXBlIEZpbHRlclByb3BzID0ge1xuICAgIGZpbHRlcjogU2VhcmNoRmlsdGVyRGF0dW07XG4gICAgc2VsZWN0RmlsdGVySXRlbTogU2VsZWN0RmlsdGVySXRlbTtcbiAgICByYWRpb0J1dHRvbkZpbGxDb2xvcj86IHN0cmluZztcbiAgICByYWRpb0J1dHRvbkhvdmVyQ29sb3I/OiBzdHJpbmc7XG4gICAgcmFkaW9CdXR0b25VbmNoZWNrZWRCb3JkZXJDb2xvcj86IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBGaWx0ZXJJdGVtUHJvcHMgPSB7XG4gICAgZmlsdGVySWQ6IHN0cmluZztcbiAgICBmaWx0ZXJJdGVtOiBTZWFyY2hGaWx0ZXJJdGVtRGF0dW07XG4gICAgc2VsZWN0RmlsdGVySXRlbTogU2VsZWN0RmlsdGVySXRlbTtcbn07XG5leHBvcnQgdHlwZSBGaWx0ZXJGb290ZXJQcm9wcyA9IHtcbiAgICBjbG9zZU1vZGFsOiAoKSA9PiB2b2lkO1xuICAgIGNsZWFyQWxsRmlsdGVyczogKCkgPT4gdm9pZDtcbiAgICBmaWx0ZXJDb3VudDogbnVtYmVyO1xuICAgIGhhc0ZpbHRlcnNDaGFuZ2VkOiBib29sZWFuO1xuICAgIGFwcGx5RmlsdGVyc1VuY2hhbmdlZENsYXNzZXM6IHN0cmluZztcbiAgICBhcHBseUZpbHRlcnNDaGFuZ2VkQ2xhc3Nlczogc3RyaW5nO1xufTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBLElBQVcsa0JBQWtCO0NBQUM7T0FBQSxNQUFBO09BQUE7T0FBQTtDQUFBO0FBQzlCLElBQVcsd0JBQWtCO0NBQUE7T0FBQTtPQUFBLE1BQUE7Q0FBQTtBQUM3QixJQUFXLHdCQUFRLENBQUEsV0FBQSxNQUFBLFVBQUE7QUFDbkIsSUFBVywwQkFBZSxDQUFBLElBQUE7QUFDMUIsSUFBVyxtQkFBYyxDQUFBLElBQUE7QUFDekIsSUFBVywyQkFBa0I7Q0FBQTtPQUFBO09BQUEsTUFBQTtDQUFBO0FBQzdCLElBQVcsb0JBQW1CO0NBQUE7T0FBQTtPQUFBO09BQUEsTUFBQTtPQUFBLE1BQUE7T0FBQTtDQUFBO0FBQzlCLElBQVcsbUJBQW1CO0NBQUM7T0FBTztPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ3RDLElBQVcsMEJBQTBCLENBQUMsSUFBQztBQUN2QyxJQUFXLG9CQUFjLENBQUEsV0FBQSxzQkFBQTtBQUN6QixJQUFDLHdCQUFBLENBQUEsSUFBQTtBQUNELElBQVcsMEJBQXlCLENBQUEsV0FBQSxpQkFBQTtBQUNwQyxJQUFXLGNBQWM7Q0FBQztPQUFXO09BQU07Q0FBQTtBQUMzQyxJQUFXLGtCQUFrQjtDQUFDO09BQUk7T0FBQTtDQUFBO0FBQ2xDLElBQVcsb0JBQW9CLENBQUMsSUFBRSJ9
@@ -0,0 +1,20 @@
1
+ import { CamelCasedPropertiesDeep } from "./index-Dfwnna1j.js";
2
+ import { ProductSearchResponse, ProductSearchResponseAttributes, SearchResponseProduct } from "@spiffy-ai/commerce-api-client";
3
+
4
+ //#region src/application/models/api/search.d.ts
5
+ interface ProductSearchResponse$1 extends CamelCasedPropertiesDeep<ProductSearchResponse> {}
6
+ interface ProductSearchResponseAttributes$1 extends CamelCasedPropertiesDeep<ProductSearchResponseAttributes> {}
7
+ interface SearchResult {
8
+ products: SearchResponseProduct[];
9
+ filters: string[];
10
+ generatedQuery?: string;
11
+ totalProductCount: number;
12
+ searchResponseId: string;
13
+ }
14
+ interface SearchParams {
15
+ query: string;
16
+ limit?: number;
17
+ }
18
+ //#endregion
19
+ export { ProductSearchResponse$1 as ProductSearchResponse, ProductSearchResponseAttributes$1 as ProductSearchResponseAttributes, SearchParams, SearchResult };
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLW51V1duUlJWLmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZHVjdFNlYXJjaFJlc3BvbnNlIGFzIEFwaVByb2R1Y3RTZWFyY2hSZXNwb25zZSwgUHJvZHVjdFNlYXJjaFJlc3BvbnNlQXR0cmlidXRlcyBhcyBBcGlQcm9kdWN0U2VhcmNoUmVzcG9uc2VBdHRyaWJ1dGVzLCBTZWFyY2hSZXNwb25zZVByb2R1Y3QgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy91dGlsaXR5VHlwZXMnO1xuZXhwb3J0IGludGVyZmFjZSBQcm9kdWN0U2VhcmNoUmVzcG9uc2UgZXh0ZW5kcyBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8QXBpUHJvZHVjdFNlYXJjaFJlc3BvbnNlPiB7XG59XG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RTZWFyY2hSZXNwb25zZUF0dHJpYnV0ZXMgZXh0ZW5kcyBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8QXBpUHJvZHVjdFNlYXJjaFJlc3BvbnNlQXR0cmlidXRlcz4ge1xufVxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hSZXN1bHQge1xuICAgIHByb2R1Y3RzOiBTZWFyY2hSZXNwb25zZVByb2R1Y3RbXTtcbiAgICBmaWx0ZXJzOiBzdHJpbmdbXTtcbiAgICBnZW5lcmF0ZWRRdWVyeT86IHN0cmluZztcbiAgICB0b3RhbFByb2R1Y3RDb3VudDogbnVtYmVyO1xuICAgIHNlYXJjaFJlc3BvbnNlSWQ6IHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoUGFyYW1zIHtcbiAgICBxdWVyeTogc3RyaW5nO1xuICAgIGxpbWl0PzogbnVtYmVyO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7O0FBRUEsSUFBVywwQkFBd0I7Q0FBQztPQUFXO09BQWdDO0NBQW1CO0FBQ2xHLElBQUEsb0NBQUE7Q0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNBLElBQVcsZUFBZSxDQUFDLFdBQVcsc0JBQXNCO0FBQzVELElBQUEsZUFBQSxDQUFBLElBQUEifQ==
@@ -0,0 +1,129 @@
1
+ import { logger_default } from "./logger-W3lqg-4b.js";
2
+ import { baseUrlAtom } from "./enviveConfig-DZBohDpc.js";
3
+ import { SessionRestartRequired, UnsupportedProductException } from "./utils-jYtD3hmA.js";
4
+ import { useEnviveConfig } from "./enviveConfigContext-DrDjCems.js";
5
+ import { clearSearchServiceFunction, setSearchServiceFunction } from "./searchServiceAdapter-WyCU55NV.js";
6
+ import { useAppDetails } from "./useAppDetails-PUfYwCjK.js";
7
+ import { Configuration, ResponseCategory, ResponseError, SearchApi } from "@spiffy-ai/commerce-api-client";
8
+ import React, { createContext, useCallback, useContext, useEffect, useMemo } from "react";
9
+ import { useAtomValue } from "jotai";
10
+ import { jsx } from "react/jsx-runtime";
11
+
12
+ //#region src/contexts/searchContext/searchContext.tsx
13
+ const transformProductResponses = (products) => products.map((data) => ({
14
+ id: data.id,
15
+ responseId: data.response_id,
16
+ category: ResponseCategory.Product,
17
+ description: data.description,
18
+ imageUrl: data.image_url,
19
+ imageUrls: data.image_urls,
20
+ title: data.title,
21
+ url: data.url,
22
+ originalPrice: data.original_price,
23
+ salePrice: data.sale_price,
24
+ averageRating: data.average_rating,
25
+ numberReviews: data.number_reviews,
26
+ metadata: data.metadata,
27
+ isForGrid: data.is_for_grid,
28
+ colors: data.colors,
29
+ sizes: data.sizes,
30
+ filters: data.filters
31
+ }));
32
+ async function errorResponseBody(error) {
33
+ try {
34
+ return await error.response.json();
35
+ } catch {
36
+ return {};
37
+ }
38
+ }
39
+ async function throwSessionRestartRequiredIf(errorMsg, error) {
40
+ if (!(error instanceof ResponseError)) {
41
+ logger_default.logInfo(errorMsg, error);
42
+ throw error;
43
+ }
44
+ const errorResponse = await errorResponseBody(error);
45
+ if (errorResponse?.message?.toLowerCase() === "unsupported product" || errorResponse?.app_code?.toUpperCase() === "PRODUCT_NOT_FOUND") throw new UnsupportedProductException();
46
+ else if (errorResponse?.app_code?.toUpperCase() === "RESTART_SESSION" || errorResponse?.sub_code?.toUpperCase() === "NOT_FOUND") {
47
+ logger_default.logInfo("Session does not exist. Re-start session", error, error.response, errorResponse);
48
+ throw new SessionRestartRequired();
49
+ }
50
+ logger_default.logInfo(errorMsg, error);
51
+ throw error;
52
+ }
53
+ const SearchContext = createContext(void 0);
54
+ const SearchProvider = ({ children }) => {
55
+ const { orgLevelApiKey, publicKey } = useEnviveConfig();
56
+ const apiKey = orgLevelApiKey || publicKey;
57
+ const appDetails = useAppDetails();
58
+ const baseUrl = useAtomValue(baseUrlAtom);
59
+ const isReady = Boolean(apiKey && appDetails && baseUrl);
60
+ const searchApi = useMemo(() => {
61
+ if (!isReady) return null;
62
+ const config = new Configuration({
63
+ accessToken: apiKey,
64
+ basePath: baseUrl,
65
+ headers: {
66
+ "Content-Type": "application/json",
67
+ Accept: "application/json"
68
+ }
69
+ });
70
+ return new SearchApi(config);
71
+ }, [
72
+ apiKey,
73
+ baseUrl,
74
+ isReady
75
+ ]);
76
+ const searchProducts = useCallback(async (params) => {
77
+ if (!isReady || !searchApi) throw new Error("SearchService not ready - missing dependencies");
78
+ try {
79
+ const { products, filters, search_response_id: searchResponseId } = await searchApi.v1SearchQueryGet({
80
+ query: params.query,
81
+ limit: params.limit,
82
+ org_id: appDetails.orgId,
83
+ user_id: appDetails.userId
84
+ });
85
+ return {
86
+ products: transformProductResponses(products) || [],
87
+ filters: filters || [],
88
+ totalProductCount: products?.length || 0,
89
+ searchResponseId: searchResponseId || ""
90
+ };
91
+ } catch (error) {
92
+ await throwSessionRestartRequiredIf("Failed to search products", error);
93
+ return {
94
+ products: [],
95
+ filters: [],
96
+ totalProductCount: 0,
97
+ searchResponseId: ""
98
+ };
99
+ }
100
+ }, [
101
+ searchApi,
102
+ isReady,
103
+ appDetails
104
+ ]);
105
+ useEffect(() => {
106
+ if (isReady) setSearchServiceFunction(searchProducts);
107
+ else clearSearchServiceFunction();
108
+ return () => {
109
+ clearSearchServiceFunction();
110
+ };
111
+ }, [searchProducts, isReady]);
112
+ const value = useMemo(() => ({
113
+ searchProducts,
114
+ isReady
115
+ }), [searchProducts, isReady]);
116
+ return /* @__PURE__ */ jsx(SearchContext.Provider, {
117
+ value,
118
+ children
119
+ });
120
+ };
121
+ const useSearchService = () => {
122
+ const context = useContext(SearchContext);
123
+ if (!context) throw new Error("useSearchService must be used within a SearchProvider");
124
+ return context;
125
+ };
126
+
127
+ //#endregion
128
+ export { SearchProvider, useSearchService };
129
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoQ29udGV4dC1CUFQ0NHVrLS5qcyIsIm5hbWVzIjpbIlNlYXJjaFByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfT4iLCJjb25maWc6IENvbmZpZ3VyYXRpb24iXSwic291cmNlcyI6WyIuLi9zcmMvY29udGV4dHMvc2VhcmNoQ29udGV4dC9zZWFyY2hDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtcbiAgY3JlYXRlQ29udGV4dCxcbiAgdXNlQ29udGV4dCxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZU1lbW8sXG4gIHVzZUVmZmVjdCxcbn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyB1c2VBdG9tVmFsdWUgfSBmcm9tIFwiam90YWlcIjtcbmltcG9ydCB7XG4gIENvbmZpZ3VyYXRpb24sXG4gIFJlc3BvbnNlQ2F0ZWdvcnksXG4gIFJlc3BvbnNlRXJyb3IsXG4gIFNlYXJjaEFwaSxcbn0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudFwiO1xuaW1wb3J0IHsgYmFzZVVybEF0b20gfSBmcm9tIFwic3JjL2F0b21zL2Vudml2ZS9lbnZpdmVDb25maWdcIjtcbmltcG9ydCBMb2dnZXIgZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlclwiO1xuaW1wb3J0IHsgdXNlQXBwRGV0YWlscyB9IGZyb20gXCJzcmMvaG9va3MvQXBwRGV0YWlscy91c2VBcHBEZXRhaWxzXCI7XG5pbXBvcnQgeyB1c2VFbnZpdmVDb25maWcgfSBmcm9tIFwic3JjL2NvbnRleHRzL2Vudml2ZUNvbmZpZ0NvbnRleHQvZW52aXZlQ29uZmlnQ29udGV4dFwiO1xuaW1wb3J0IHsgU2Vzc2lvblJlc3RhcnRSZXF1aXJlZCB9IGZyb20gXCJzcmMvdHlwZXMvZXhjZXB0aW9ucy9zZXNzaW9uRXhjZXB0aW9uc1wiO1xuaW1wb3J0IHsgVW5zdXBwb3J0ZWRQcm9kdWN0RXhjZXB0aW9uIH0gZnJvbSBcInNyYy90eXBlcy9leGNlcHRpb25zL3Vuc3VwcG9ydGVkUHJvZHVjdEV4Y2VwdGlvbnNcIjtcbmltcG9ydCB7IFNlYXJjaFBhcmFtcywgU2VhcmNoUmVzdWx0IH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHMvYXBpL3NlYXJjaFwiO1xuaW1wb3J0IHtcbiAgY2xlYXJTZWFyY2hTZXJ2aWNlRnVuY3Rpb24sXG4gIHNldFNlYXJjaFNlcnZpY2VGdW5jdGlvbixcbn0gZnJvbSBcInNyYy9hdG9tcy9zZWFyY2gvc2VhcmNoU2VydmljZUFkYXB0ZXJcIjtcblxuY29uc3QgdHJhbnNmb3JtUHJvZHVjdFJlc3BvbnNlcyA9IChwcm9kdWN0czogU2VhcmNoUmVzdWx0W1wicHJvZHVjdHNcIl0pID0+XG4gIHByb2R1Y3RzLm1hcCgoZGF0YSkgPT4gKHtcbiAgICBpZDogZGF0YS5pZCxcbiAgICByZXNwb25zZUlkOiBkYXRhLnJlc3BvbnNlX2lkLFxuICAgIGNhdGVnb3J5OiBSZXNwb25zZUNhdGVnb3J5LlByb2R1Y3QsXG4gICAgZGVzY3JpcHRpb246IGRhdGEuZGVzY3JpcHRpb24sXG4gICAgaW1hZ2VVcmw6IGRhdGEuaW1hZ2VfdXJsLFxuICAgIGltYWdlVXJsczogZGF0YS5pbWFnZV91cmxzLFxuICAgIHRpdGxlOiBkYXRhLnRpdGxlLFxuICAgIHVybDogZGF0YS51cmwsXG4gICAgb3JpZ2luYWxQcmljZTogZGF0YS5vcmlnaW5hbF9wcmljZSxcbiAgICBzYWxlUHJpY2U6IGRhdGEuc2FsZV9wcmljZSxcbiAgICBhdmVyYWdlUmF0aW5nOiBkYXRhLmF2ZXJhZ2VfcmF0aW5nLFxuICAgIG51bWJlclJldmlld3M6IGRhdGEubnVtYmVyX3Jldmlld3MsXG4gICAgbWV0YWRhdGE6IGRhdGEubWV0YWRhdGEsXG4gICAgaXNGb3JHcmlkOiBkYXRhLmlzX2Zvcl9ncmlkLFxuICAgIGNvbG9yczogZGF0YS5jb2xvcnMsXG4gICAgc2l6ZXM6IGRhdGEuc2l6ZXMsXG4gICAgZmlsdGVyczogZGF0YS5maWx0ZXJzLFxuICB9KSk7XG5cbmFzeW5jIGZ1bmN0aW9uIGVycm9yUmVzcG9uc2VCb2R5KGVycm9yOiBSZXNwb25zZUVycm9yKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGVycm9yLnJlc3BvbnNlLmpzb24oKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHt9O1xuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHRocm93U2Vzc2lvblJlc3RhcnRSZXF1aXJlZElmKGVycm9yTXNnOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKSB7XG4gIGlmICghKGVycm9yIGluc3RhbmNlb2YgUmVzcG9uc2VFcnJvcikpIHtcbiAgICBMb2dnZXIubG9nSW5mbyhlcnJvck1zZywgZXJyb3IpO1xuICAgIHRocm93IGVycm9yO1xuICB9XG5cbiAgY29uc3QgZXJyb3JSZXNwb25zZSA9IGF3YWl0IGVycm9yUmVzcG9uc2VCb2R5KGVycm9yKTtcbiAgaWYgKFxuICAgIGVycm9yUmVzcG9uc2U/Lm1lc3NhZ2U/LnRvTG93ZXJDYXNlKCkgPT09IFwidW5zdXBwb3J0ZWQgcHJvZHVjdFwiIHx8XG4gICAgZXJyb3JSZXNwb25zZT8uYXBwX2NvZGU/LnRvVXBwZXJDYXNlKCkgPT09IFwiUFJPRFVDVF9OT1RfRk9VTkRcIlxuICApIHtcbiAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRQcm9kdWN0RXhjZXB0aW9uKCk7XG4gIH0gZWxzZSBpZiAoXG4gICAgZXJyb3JSZXNwb25zZT8uYXBwX2NvZGU/LnRvVXBwZXJDYXNlKCkgPT09IFwiUkVTVEFSVF9TRVNTSU9OXCIgfHxcbiAgICBlcnJvclJlc3BvbnNlPy5zdWJfY29kZT8udG9VcHBlckNhc2UoKSA9PT0gXCJOT1RfRk9VTkRcIlxuICApIHtcbiAgICBMb2dnZXIubG9nSW5mbyhcbiAgICAgIFwiU2Vzc2lvbiBkb2VzIG5vdCBleGlzdC4gUmUtc3RhcnQgc2Vzc2lvblwiLFxuICAgICAgZXJyb3IsXG4gICAgICBlcnJvci5yZXNwb25zZSxcbiAgICAgIGVycm9yUmVzcG9uc2VcbiAgICApO1xuICAgIHRocm93IG5ldyBTZXNzaW9uUmVzdGFydFJlcXVpcmVkKCk7XG4gIH1cblxuICBMb2dnZXIubG9nSW5mbyhlcnJvck1zZywgZXJyb3IpO1xuICB0aHJvdyBlcnJvcjtcbn1cblxuaW50ZXJmYWNlIFNlYXJjaENvbnRleHRWYWx1ZSB7XG4gIHNlYXJjaFByb2R1Y3RzOiAocGFyYW1zOiBTZWFyY2hQYXJhbXMpID0+IFByb21pc2U8U2VhcmNoUmVzdWx0PjtcbiAgaXNSZWFkeTogYm9vbGVhbjtcbn1cblxuY29uc3QgU2VhcmNoQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8U2VhcmNoQ29udGV4dFZhbHVlIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgU2VhcmNoUHJvdmlkZXI6IFJlYWN0LkZDPHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9PiA9ICh7XG4gIGNoaWxkcmVuLFxufSkgPT4ge1xuICBjb25zdCB7IG9yZ0xldmVsQXBpS2V5LCBwdWJsaWNLZXkgfSA9IHVzZUVudml2ZUNvbmZpZygpO1xuICBjb25zdCBhcGlLZXkgPSBvcmdMZXZlbEFwaUtleSB8fCBwdWJsaWNLZXk7IC8vIFJlcGxpY2F0ZSBhcGlLZXlBdG9tIGxvZ2ljXG4gIGNvbnN0IGFwcERldGFpbHMgPSB1c2VBcHBEZXRhaWxzKCk7XG4gIGNvbnN0IGJhc2VVcmwgPSB1c2VBdG9tVmFsdWUoYmFzZVVybEF0b20pO1xuXG4gIGNvbnN0IGlzUmVhZHkgPSBCb29sZWFuKGFwaUtleSAmJiBhcHBEZXRhaWxzICYmIGJhc2VVcmwpO1xuXG4gIGNvbnN0IHNlYXJjaEFwaSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghaXNSZWFkeSkgcmV0dXJuIG51bGw7XG5cbiAgICBjb25zdCBjb25maWc6IENvbmZpZ3VyYXRpb24gPSBuZXcgQ29uZmlndXJhdGlvbih7XG4gICAgICBhY2Nlc3NUb2tlbjogYXBpS2V5LFxuICAgICAgYmFzZVBhdGg6IGJhc2VVcmwsXG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICBBY2NlcHQ6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICByZXR1cm4gbmV3IFNlYXJjaEFwaShjb25maWcpO1xuICB9LCBbYXBpS2V5LCBiYXNlVXJsLCBpc1JlYWR5XSk7XG5cbiAgY29uc3Qgc2VhcmNoUHJvZHVjdHMgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocGFyYW1zOiBTZWFyY2hQYXJhbXMpOiBQcm9taXNlPFNlYXJjaFJlc3VsdD4gPT4ge1xuICAgICAgaWYgKCFpc1JlYWR5IHx8ICFzZWFyY2hBcGkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiU2VhcmNoU2VydmljZSBub3QgcmVhZHkgLSBtaXNzaW5nIGRlcGVuZGVuY2llc1wiKTtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBzZWFyY2hBcGkudjFTZWFyY2hRdWVyeUdldCh7XG4gICAgICAgICAgcXVlcnk6IHBhcmFtcy5xdWVyeSxcbiAgICAgICAgICBsaW1pdDogcGFyYW1zLmxpbWl0LFxuICAgICAgICAgIG9yZ19pZDogYXBwRGV0YWlscy5vcmdJZCxcbiAgICAgICAgICB1c2VyX2lkOiBhcHBEZXRhaWxzLnVzZXJJZCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBwcm9kdWN0cyxcbiAgICAgICAgICBmaWx0ZXJzLFxuICAgICAgICAgIHNlYXJjaF9yZXNwb25zZV9pZDogc2VhcmNoUmVzcG9uc2VJZCxcbiAgICAgICAgfSA9IHJlc3BvbnNlO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcHJvZHVjdHM6IHRyYW5zZm9ybVByb2R1Y3RSZXNwb25zZXMocHJvZHVjdHMpIHx8IFtdLFxuICAgICAgICAgIGZpbHRlcnM6IGZpbHRlcnMgfHwgW10sXG4gICAgICAgICAgdG90YWxQcm9kdWN0Q291bnQ6IHByb2R1Y3RzPy5sZW5ndGggfHwgMCxcbiAgICAgICAgICBzZWFyY2hSZXNwb25zZUlkOiBzZWFyY2hSZXNwb25zZUlkIHx8IFwiXCIsXG4gICAgICAgIH07XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBhd2FpdCB0aHJvd1Nlc3Npb25SZXN0YXJ0UmVxdWlyZWRJZihcIkZhaWxlZCB0byBzZWFyY2ggcHJvZHVjdHNcIiwgZXJyb3IpO1xuICAgICAgICAvLyBUaGlzIHBhcnQgd2lsbCBub3QgYmUgcmVhY2hlZCBpZiBhbiBleGNlcHRpb24gaXMgdGhyb3duLCBidXQgaXQncyByZXF1aXJlZCBmb3IgdHlwZSBzYWZldHlcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBwcm9kdWN0czogW10sXG4gICAgICAgICAgZmlsdGVyczogW10sXG4gICAgICAgICAgdG90YWxQcm9kdWN0Q291bnQ6IDAsXG4gICAgICAgICAgc2VhcmNoUmVzcG9uc2VJZDogXCJcIixcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtzZWFyY2hBcGksIGlzUmVhZHksIGFwcERldGFpbHNdXG4gICk7XG5cbiAgLy8gUmVnaXN0ZXIgdGhlIHNlYXJjaCBmdW5jdGlvbiB3aXRoIHRoZSBhZGFwdGVyIGZvciB1c2UgaW4gYXRvbXNcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNSZWFkeSkge1xuICAgICAgc2V0U2VhcmNoU2VydmljZUZ1bmN0aW9uKHNlYXJjaFByb2R1Y3RzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2xlYXJTZWFyY2hTZXJ2aWNlRnVuY3Rpb24oKTtcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2xlYXJTZWFyY2hTZXJ2aWNlRnVuY3Rpb24oKTtcbiAgICB9O1xuICB9LCBbc2VhcmNoUHJvZHVjdHMsIGlzUmVhZHldKTtcblxuICBjb25zdCB2YWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHtcbiAgICAgIHNlYXJjaFByb2R1Y3RzLFxuICAgICAgaXNSZWFkeSxcbiAgICB9KSxcbiAgICBbc2VhcmNoUHJvZHVjdHMsIGlzUmVhZHldXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8U2VhcmNoQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17dmFsdWV9PntjaGlsZHJlbn08L1NlYXJjaENvbnRleHQuUHJvdmlkZXI+XG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgdXNlU2VhcmNoU2VydmljZSA9ICgpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoU2VhcmNoQ29udGV4dCk7XG4gIGlmICghY29udGV4dCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcInVzZVNlYXJjaFNlcnZpY2UgbXVzdCBiZSB1c2VkIHdpdGhpbiBhIFNlYXJjaFByb3ZpZGVyXCIpO1xuICB9XG4gIHJldHVybiBjb250ZXh0O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBMEJBLE1BQU0sNkJBQTZCLGFBQ2pDLFNBQVMsS0FBSyxVQUFVO0NBQ3RCLElBQUksS0FBSztDQUNULFlBQVksS0FBSztDQUNqQixVQUFVLGlCQUFpQjtDQUMzQixhQUFhLEtBQUs7Q0FDbEIsVUFBVSxLQUFLO0NBQ2YsV0FBVyxLQUFLO0NBQ2hCLE9BQU8sS0FBSztDQUNaLEtBQUssS0FBSztDQUNWLGVBQWUsS0FBSztDQUNwQixXQUFXLEtBQUs7Q0FDaEIsZUFBZSxLQUFLO0NBQ3BCLGVBQWUsS0FBSztDQUNwQixVQUFVLEtBQUs7Q0FDZixXQUFXLEtBQUs7Q0FDaEIsUUFBUSxLQUFLO0NBQ2IsT0FBTyxLQUFLO0NBQ1osU0FBUyxLQUFLO0NBQ2YsRUFBRTtBQUVMLGVBQWUsa0JBQWtCLE9BQXNCO0FBQ3JELEtBQUk7QUFDRixTQUFPLE1BQU0sTUFBTSxTQUFTLE1BQU07U0FDNUI7QUFDTixTQUFPLEVBQUU7OztBQUliLGVBQWUsOEJBQThCLFVBQWtCLE9BQWdCO0FBQzdFLEtBQUksRUFBRSxpQkFBaUIsZ0JBQWdCO0FBQ3JDLGlCQUFPLFFBQVEsVUFBVSxNQUFNO0FBQy9CLFFBQU07O0NBR1IsTUFBTSxnQkFBZ0IsTUFBTSxrQkFBa0IsTUFBTTtBQUNwRCxLQUNFLGVBQWUsU0FBUyxhQUFhLEtBQUsseUJBQzFDLGVBQWUsVUFBVSxhQUFhLEtBQUssb0JBRTNDLE9BQU0sSUFBSSw2QkFBNkI7VUFFdkMsZUFBZSxVQUFVLGFBQWEsS0FBSyxxQkFDM0MsZUFBZSxVQUFVLGFBQWEsS0FBSyxhQUMzQztBQUNBLGlCQUFPLFFBQ0wsNENBQ0EsT0FDQSxNQUFNLFVBQ04sY0FDRDtBQUNELFFBQU0sSUFBSSx3QkFBd0I7O0FBR3BDLGdCQUFPLFFBQVEsVUFBVSxNQUFNO0FBQy9CLE9BQU07O0FBUVIsTUFBTSxnQkFBZ0IsY0FBOEMsT0FBVTtBQUU5RSxNQUFhQSxrQkFBMkQsRUFDdEUsZUFDSTtDQUNKLE1BQU0sRUFBRSxnQkFBZ0IsY0FBYyxpQkFBaUI7Q0FDdkQsTUFBTSxTQUFTLGtCQUFrQjtDQUNqQyxNQUFNLGFBQWEsZUFBZTtDQUNsQyxNQUFNLFVBQVUsYUFBYSxZQUFZO0NBRXpDLE1BQU0sVUFBVSxRQUFRLFVBQVUsY0FBYyxRQUFRO0NBRXhELE1BQU0sWUFBWSxjQUFjO0FBQzlCLE1BQUksQ0FBQyxRQUFTLFFBQU87RUFFckIsTUFBTUMsU0FBd0IsSUFBSSxjQUFjO0dBQzlDLGFBQWE7R0FDYixVQUFVO0dBQ1YsU0FBUztJQUNQLGdCQUFnQjtJQUNoQixRQUFRO0lBQ1Q7R0FDRixDQUFDO0FBQ0YsU0FBTyxJQUFJLFVBQVUsT0FBTztJQUMzQjtFQUFDO0VBQVE7RUFBUztFQUFRLENBQUM7Q0FFOUIsTUFBTSxpQkFBaUIsWUFDckIsT0FBTyxXQUFnRDtBQUNyRCxNQUFJLENBQUMsV0FBVyxDQUFDLFVBQ2YsT0FBTSxJQUFJLE1BQU0saURBQWlEO0FBR25FLE1BQUk7R0FPRixNQUFNLEVBQ0osVUFDQSxTQUNBLG9CQUFvQixxQkFUTCxNQUFNLFVBQVUsaUJBQWlCO0lBQ2hELE9BQU8sT0FBTztJQUNkLE9BQU8sT0FBTztJQUNkLFFBQVEsV0FBVztJQUNuQixTQUFTLFdBQVc7SUFDckIsQ0FBQztBQU9GLFVBQU87SUFDTCxVQUFVLDBCQUEwQixTQUFTLElBQUksRUFBRTtJQUNuRCxTQUFTLFdBQVcsRUFBRTtJQUN0QixtQkFBbUIsVUFBVSxVQUFVO0lBQ3ZDLGtCQUFrQixvQkFBb0I7SUFDdkM7V0FDTSxPQUFPO0FBQ2QsU0FBTSw4QkFBOEIsNkJBQTZCLE1BQU07QUFFdkUsVUFBTztJQUNMLFVBQVUsRUFBRTtJQUNaLFNBQVMsRUFBRTtJQUNYLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbkI7O0lBR0w7RUFBQztFQUFXO0VBQVM7RUFBVyxDQUNqQztBQUdELGlCQUFnQjtBQUNkLE1BQUksUUFDRiwwQkFBeUIsZUFBZTtNQUV4Qyw2QkFBNEI7QUFHOUIsZUFBYTtBQUNYLCtCQUE0Qjs7SUFFN0IsQ0FBQyxnQkFBZ0IsUUFBUSxDQUFDO0NBRTdCLE1BQU0sUUFBUSxlQUNMO0VBQ0w7RUFDQTtFQUNELEdBQ0QsQ0FBQyxnQkFBZ0IsUUFBUSxDQUMxQjtBQUVELFFBQ0Usb0JBQUMsY0FBYztFQUFnQjtFQUFRO0dBQWtDOztBQUk3RSxNQUFhLHlCQUF5QjtDQUNwQyxNQUFNLFVBQVUsV0FBVyxjQUFjO0FBQ3pDLEtBQUksQ0FBQyxRQUNILE9BQU0sSUFBSSxNQUFNLHdEQUF3RDtBQUUxRSxRQUFPIn0=