@envive-ai/react-hooks 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (441) hide show
  1. package/README.md +35 -0
  2. package/dist/AmplitudeOperations-CEwp7tPJ.cjs +0 -0
  3. package/dist/AmplitudeOperations-uF2zIi_1.js +1 -0
  4. package/dist/NewOrgConfig-B_1A1d9q.cjs +15 -0
  5. package/dist/NewOrgConfig-xNlcpcF_.js +10 -0
  6. package/dist/SystemSettingsContext-CCuS3kWH.js +13 -0
  7. package/dist/SystemSettingsContext-Dh_35fES.cjs +20 -0
  8. package/dist/TrackComponentVisibleEvent-B828giM-.js +52 -0
  9. package/dist/TrackComponentVisibleEvent-DsTIH7Yt.cjs +59 -0
  10. package/dist/amplitudeContext-B73xamNe.d.cts +52 -0
  11. package/dist/amplitudeContext-BfRDG5CX.d.ts +52 -0
  12. package/dist/api-Bc3_julZ.cjs +239 -0
  13. package/dist/api-D9gmGNAV.js +166 -0
  14. package/dist/application/models/graphql/index.cjs +5 -0
  15. package/dist/application/models/graphql/index.d.cts +2 -0
  16. package/dist/application/models/graphql/index.d.ts +2 -0
  17. package/dist/application/models/graphql/index.js +4 -0
  18. package/dist/application/models/guards/api/index.cjs +16 -0
  19. package/dist/application/models/guards/api/index.d.cts +3 -0
  20. package/dist/application/models/guards/api/index.d.ts +3 -0
  21. package/dist/application/models/guards/api/index.js +5 -0
  22. package/dist/application/models/guards/utils.cjs +3 -0
  23. package/dist/application/models/guards/utils.d.cts +2 -0
  24. package/dist/application/models/guards/utils.d.ts +2 -0
  25. package/dist/application/models/guards/utils.js +3 -0
  26. package/dist/application/models/index.cjs +70 -0
  27. package/dist/application/models/index.d.cts +12 -0
  28. package/dist/application/models/index.d.ts +12 -0
  29. package/dist/application/models/index.js +12 -0
  30. package/dist/application/models/utilityTypes/index.cjs +1 -0
  31. package/dist/application/models/utilityTypes/index.d.cts +2 -0
  32. package/dist/application/models/utilityTypes/index.d.ts +2 -0
  33. package/dist/application/models/utilityTypes/index.js +3 -0
  34. package/dist/application/models/variantInfo/index.cjs +3 -0
  35. package/dist/application/models/variantInfo/index.d.cts +2 -0
  36. package/dist/application/models/variantInfo/index.d.ts +2 -0
  37. package/dist/application/models/variantInfo/index.js +3 -0
  38. package/dist/application/utils/index.cjs +47 -0
  39. package/dist/application/utils/index.d.cts +263 -0
  40. package/dist/application/utils/index.d.ts +263 -0
  41. package/dist/application/utils/index.js +21 -0
  42. package/dist/atomStore-8ppNkJ_n.cjs +58 -0
  43. package/dist/atomStore-BLYJ2ZoQ.js +32 -0
  44. package/dist/atoms/app/index.cjs +25 -0
  45. package/dist/atoms/app/index.d.cts +39 -0
  46. package/dist/atoms/app/index.d.ts +39 -0
  47. package/dist/atoms/app/index.js +21 -0
  48. package/dist/atoms/atomStore/index.cjs +6 -0
  49. package/dist/atoms/atomStore/index.d.cts +24 -0
  50. package/dist/atoms/atomStore/index.d.ts +24 -0
  51. package/dist/atoms/atomStore/index.js +3 -0
  52. package/dist/atoms/chat/index.cjs +52 -0
  53. package/dist/atoms/chat/index.d.cts +163 -0
  54. package/dist/atoms/chat/index.d.ts +163 -0
  55. package/dist/atoms/chat/index.js +23 -0
  56. package/dist/atoms/globalSearch/index.cjs +6 -0
  57. package/dist/atoms/globalSearch/index.d.cts +24 -0
  58. package/dist/atoms/globalSearch/index.d.ts +24 -0
  59. package/dist/atoms/globalSearch/index.js +3 -0
  60. package/dist/atoms/org/index.cjs +18 -0
  61. package/dist/atoms/org/index.d.cts +59 -0
  62. package/dist/atoms/org/index.d.ts +59 -0
  63. package/dist/atoms/org/index.js +5 -0
  64. package/dist/atoms/search/index.cjs +60 -0
  65. package/dist/atoms/search/index.d.cts +14 -0
  66. package/dist/atoms/search/index.d.ts +14 -0
  67. package/dist/atoms/search/index.js +30 -0
  68. package/dist/atoms/search/types.cjs +5 -0
  69. package/dist/atoms/search/types.d.cts +2 -0
  70. package/dist/atoms/search/types.d.ts +2 -0
  71. package/dist/atoms/search/types.js +3 -0
  72. package/dist/atoms/search/utils.cjs +3 -0
  73. package/dist/atoms/search/utils.d.cts +5 -0
  74. package/dist/atoms/search/utils.d.ts +5 -0
  75. package/dist/atoms/search/utils.js +3 -0
  76. package/dist/cdnContext-BlRI74F-.cjs +53 -0
  77. package/dist/cdnContext-D26C8Y4H.js +38 -0
  78. package/dist/chat-2NGrmU_Z.cjs +393 -0
  79. package/dist/chat-Bg3wEfNd.js +257 -0
  80. package/dist/chat-pXCsesuS.js +25 -0
  81. package/dist/chat-sCX7aTrz.cjs +145 -0
  82. package/dist/chatElementDisplayLocation-D6oLuQS4.d.ts +25 -0
  83. package/dist/chatElementDisplayLocation-DWmfNX_u.d.cts +25 -0
  84. package/dist/chatSearch-B4dsxGth.cjs +418 -0
  85. package/dist/chatSearch-Cvc_eBFV.js +295 -0
  86. package/dist/chatState-2bMtvPgG.js +34 -0
  87. package/dist/chatState-fP1r34CN.cjs +120 -0
  88. package/dist/chunk-CUT6urMc.cjs +30 -0
  89. package/dist/common-4xhjcUbt.cjs +189 -0
  90. package/dist/common-DhKoZ6jN.js +39 -0
  91. package/dist/components-BUisjl4v.js +11 -0
  92. package/dist/components-DVaYBroL.cjs +29 -0
  93. package/dist/config/locators/components/chat/index.cjs +22 -0
  94. package/dist/config/locators/components/chat/index.d.cts +2 -0
  95. package/dist/config/locators/components/chat/index.d.ts +2 -0
  96. package/dist/config/locators/components/chat/index.js +3 -0
  97. package/dist/config/locators/components/chat/variants/index.cjs +29 -0
  98. package/dist/config/locators/components/chat/variants/index.d.cts +16 -0
  99. package/dist/config/locators/components/chat/variants/index.d.ts +16 -0
  100. package/dist/config/locators/components/chat/variants/index.js +17 -0
  101. package/dist/config/locators/components/common/index.cjs +27 -0
  102. package/dist/config/locators/components/common/index.d.cts +2 -0
  103. package/dist/config/locators/components/common/index.d.ts +2 -0
  104. package/dist/config/locators/components/common/index.js +3 -0
  105. package/dist/config/locators/components/index.cjs +5 -0
  106. package/dist/config/locators/components/index.d.cts +2 -0
  107. package/dist/config/locators/components/index.d.ts +2 -0
  108. package/dist/config/locators/components/index.js +3 -0
  109. package/dist/config/locators/components/search/index.cjs +13 -0
  110. package/dist/config/locators/components/search/index.d.cts +8 -0
  111. package/dist/config/locators/components/search/index.d.ts +8 -0
  112. package/dist/config/locators/components/search/index.js +9 -0
  113. package/dist/config/locators/index.cjs +92 -0
  114. package/dist/config/locators/index.d.cts +26 -0
  115. package/dist/config/locators/index.d.ts +26 -0
  116. package/dist/config/locators/index.js +27 -0
  117. package/dist/contexts/amplitudeContext/index.cjs +23 -0
  118. package/dist/contexts/amplitudeContext/index.d.cts +2 -0
  119. package/dist/contexts/amplitudeContext/index.d.ts +2 -0
  120. package/dist/contexts/amplitudeContext/index.js +21 -0
  121. package/dist/contexts/cdnContext/index.cjs +7 -0
  122. package/dist/contexts/cdnContext/index.d.cts +15 -0
  123. package/dist/contexts/cdnContext/index.d.ts +15 -0
  124. package/dist/contexts/cdnContext/index.js +6 -0
  125. package/dist/contexts/chatContext/index.cjs +326 -0
  126. package/dist/contexts/chatContext/index.d.cts +15 -0
  127. package/dist/contexts/chatContext/index.d.ts +15 -0
  128. package/dist/contexts/chatContext/index.js +319 -0
  129. package/dist/contexts/enviveConfigContext/index.cjs +7 -0
  130. package/dist/contexts/enviveConfigContext/index.d.cts +30 -0
  131. package/dist/contexts/enviveConfigContext/index.d.ts +30 -0
  132. package/dist/contexts/enviveConfigContext/index.js +6 -0
  133. package/dist/contexts/enviveCssContext/index.cjs +66 -0
  134. package/dist/contexts/enviveCssContext/index.d.cts +10 -0
  135. package/dist/contexts/enviveCssContext/index.d.ts +10 -0
  136. package/dist/contexts/enviveCssContext/index.js +63 -0
  137. package/dist/contexts/featureFlagContext/index.cjs +107 -0
  138. package/dist/contexts/featureFlagContext/index.d.cts +20 -0
  139. package/dist/contexts/featureFlagContext/index.d.ts +20 -0
  140. package/dist/contexts/featureFlagContext/index.js +103 -0
  141. package/dist/contexts/featureFlagServiceContext/index.cjs +7 -0
  142. package/dist/contexts/featureFlagServiceContext/index.d.cts +5 -0
  143. package/dist/contexts/featureFlagServiceContext/index.d.ts +5 -0
  144. package/dist/contexts/featureFlagServiceContext/index.js +5 -0
  145. package/dist/contexts/graphqlContext/index.cjs +16 -0
  146. package/dist/contexts/graphqlContext/index.d.cts +14 -0
  147. package/dist/contexts/graphqlContext/index.d.ts +14 -0
  148. package/dist/contexts/graphqlContext/index.js +15 -0
  149. package/dist/contexts/localStorageContext/index.cjs +6 -0
  150. package/dist/contexts/localStorageContext/index.d.cts +30 -0
  151. package/dist/contexts/localStorageContext/index.d.ts +30 -0
  152. package/dist/contexts/localStorageContext/index.js +4 -0
  153. package/dist/contexts/newOrgConfigContext/index.cjs +20 -0
  154. package/dist/contexts/newOrgConfigContext/index.d.cts +15 -0
  155. package/dist/contexts/newOrgConfigContext/index.d.ts +15 -0
  156. package/dist/contexts/newOrgConfigContext/index.js +19 -0
  157. package/dist/contexts/searchContext/index.cjs +27 -0
  158. package/dist/contexts/searchContext/index.d.cts +16 -0
  159. package/dist/contexts/searchContext/index.d.ts +16 -0
  160. package/dist/contexts/searchContext/index.js +26 -0
  161. package/dist/contexts/sessionStorageContext/index.cjs +5 -0
  162. package/dist/contexts/sessionStorageContext/index.d.cts +15 -0
  163. package/dist/contexts/sessionStorageContext/index.d.ts +15 -0
  164. package/dist/contexts/sessionStorageContext/index.js +4 -0
  165. package/dist/contexts/shopifyUrlContext/index.cjs +5 -0
  166. package/dist/contexts/shopifyUrlContext/index.d.cts +20 -0
  167. package/dist/contexts/shopifyUrlContext/index.d.ts +20 -0
  168. package/dist/contexts/shopifyUrlContext/index.js +4 -0
  169. package/dist/contexts/systemSettingsContext/index.cjs +8 -0
  170. package/dist/contexts/systemSettingsContext/index.d.cts +37 -0
  171. package/dist/contexts/systemSettingsContext/index.d.ts +37 -0
  172. package/dist/contexts/systemSettingsContext/index.js +6 -0
  173. package/dist/contexts/types.cjs +7 -0
  174. package/dist/contexts/types.d.cts +4 -0
  175. package/dist/contexts/types.d.ts +4 -0
  176. package/dist/contexts/types.js +3 -0
  177. package/dist/contexts/userIdentityContext/index.cjs +22 -0
  178. package/dist/contexts/userIdentityContext/index.d.cts +2 -0
  179. package/dist/contexts/userIdentityContext/index.d.ts +2 -0
  180. package/dist/contexts/userIdentityContext/index.js +21 -0
  181. package/dist/domObserver-DKcas6tl.js +285 -0
  182. package/dist/domObserver-Do6RAJdf.cjs +304 -0
  183. package/dist/enviveConfig-BSfyz_pm.js +62 -0
  184. package/dist/enviveConfig-D8vcVPWD.cjs +130 -0
  185. package/dist/enviveConfigContext-C8cCcdKU.cjs +60 -0
  186. package/dist/enviveConfigContext-CJqpRSKu.js +45 -0
  187. package/dist/events/index.cjs +4 -0
  188. package/dist/events/index.d.cts +46 -0
  189. package/dist/events/index.d.ts +46 -0
  190. package/dist/events/index.js +3 -0
  191. package/dist/events-BHJJjPDN.js +78 -0
  192. package/dist/events-B_fJZf9E.cjs +90 -0
  193. package/dist/featureFlagServiceContext-C2Yj-Uyh.d.ts +23 -0
  194. package/dist/featureFlagServiceContext-CiKWV306.d.cts +23 -0
  195. package/dist/featureFlagServiceContext-DFb-uLHN.cjs +62 -0
  196. package/dist/featureFlagServiceContext-Dd_Hbq6e.js +42 -0
  197. package/dist/featureGates-BdvOVv8N.cjs +32 -0
  198. package/dist/featureGates-DhoJq4io.js +26 -0
  199. package/dist/frontendConfig-CbyjUXZW.d.ts +856 -0
  200. package/dist/frontendConfig-tVg0hsWZ.d.cts +856 -0
  201. package/dist/globalSearch-B_v9qfCT.js +14 -0
  202. package/dist/globalSearch-OiF96VLG.cjs +39 -0
  203. package/dist/graphql-B9HhDXYt.cjs +53 -0
  204. package/dist/graphql-W7GMIHUu.js +36 -0
  205. package/dist/graphqlConfig-DZHeFKDY.cjs +73 -0
  206. package/dist/graphqlConfig-Xk--JbPl.js +24 -0
  207. package/dist/graphqlContext-BotK7KCg.d.ts +28 -0
  208. package/dist/graphqlContext-CMav2igl.d.cts +28 -0
  209. package/dist/graphqlContext-CSVwhCnP.js +96 -0
  210. package/dist/graphqlContext-aaOOb79d.cjs +111 -0
  211. package/dist/hooks/AmplitudeOperations/index.cjs +23 -0
  212. package/dist/hooks/AmplitudeOperations/index.d.cts +12 -0
  213. package/dist/hooks/AmplitudeOperations/index.d.ts +12 -0
  214. package/dist/hooks/AmplitudeOperations/index.js +23 -0
  215. package/dist/hooks/AppDetails/index.cjs +24 -0
  216. package/dist/hooks/AppDetails/index.d.cts +27 -0
  217. package/dist/hooks/AppDetails/index.d.ts +27 -0
  218. package/dist/hooks/AppDetails/index.js +24 -0
  219. package/dist/hooks/BlockBackButton/index.cjs +29 -0
  220. package/dist/hooks/BlockBackButton/index.d.cts +5 -0
  221. package/dist/hooks/BlockBackButton/index.d.ts +5 -0
  222. package/dist/hooks/BlockBackButton/index.js +27 -0
  223. package/dist/hooks/CdnOperations/index.cjs +24 -0
  224. package/dist/hooks/CdnOperations/index.d.cts +7 -0
  225. package/dist/hooks/CdnOperations/index.d.ts +7 -0
  226. package/dist/hooks/CdnOperations/index.js +22 -0
  227. package/dist/hooks/ChatToggle/index.cjs +64 -0
  228. package/dist/hooks/ChatToggle/index.d.cts +12 -0
  229. package/dist/hooks/ChatToggle/index.d.ts +12 -0
  230. package/dist/hooks/ChatToggle/index.js +62 -0
  231. package/dist/hooks/ChatToggleAnalytics/index.cjs +39 -0
  232. package/dist/hooks/ChatToggleAnalytics/index.d.cts +9 -0
  233. package/dist/hooks/ChatToggleAnalytics/index.d.ts +9 -0
  234. package/dist/hooks/ChatToggleAnalytics/index.js +37 -0
  235. package/dist/hooks/CustomerSupportHandoff/index.cjs +36 -0
  236. package/dist/hooks/CustomerSupportHandoff/index.d.cts +16 -0
  237. package/dist/hooks/CustomerSupportHandoff/index.d.ts +16 -0
  238. package/dist/hooks/CustomerSupportHandoff/index.js +34 -0
  239. package/dist/hooks/Debounce/index.cjs +3 -0
  240. package/dist/hooks/Debounce/index.d.cts +5 -0
  241. package/dist/hooks/Debounce/index.d.ts +5 -0
  242. package/dist/hooks/Debounce/index.js +3 -0
  243. package/dist/hooks/ElementObserver/index.cjs +179 -0
  244. package/dist/hooks/ElementObserver/index.d.cts +29 -0
  245. package/dist/hooks/ElementObserver/index.d.ts +29 -0
  246. package/dist/hooks/ElementObserver/index.js +177 -0
  247. package/dist/hooks/GrabAndScroll/index.cjs +99 -0
  248. package/dist/hooks/GrabAndScroll/index.d.cts +14 -0
  249. package/dist/hooks/GrabAndScroll/index.d.ts +14 -0
  250. package/dist/hooks/GrabAndScroll/index.js +97 -0
  251. package/dist/hooks/GraphQLConfig/index.cjs +17 -0
  252. package/dist/hooks/GraphQLConfig/index.d.cts +28 -0
  253. package/dist/hooks/GraphQLConfig/index.d.ts +28 -0
  254. package/dist/hooks/GraphQLConfig/index.js +16 -0
  255. package/dist/hooks/IdentifyUser/index.cjs +55 -0
  256. package/dist/hooks/IdentifyUser/index.d.cts +10 -0
  257. package/dist/hooks/IdentifyUser/index.d.ts +10 -0
  258. package/dist/hooks/IdentifyUser/index.js +53 -0
  259. package/dist/hooks/ImageResolver/index.cjs +55 -0
  260. package/dist/hooks/ImageResolver/index.d.cts +7 -0
  261. package/dist/hooks/ImageResolver/index.d.ts +7 -0
  262. package/dist/hooks/ImageResolver/index.js +53 -0
  263. package/dist/hooks/Intersection/index.cjs +3 -0
  264. package/dist/hooks/Intersection/index.d.cts +7 -0
  265. package/dist/hooks/Intersection/index.d.ts +7 -0
  266. package/dist/hooks/Intersection/index.js +3 -0
  267. package/dist/hooks/IsSmallScreen/index.cjs +22 -0
  268. package/dist/hooks/IsSmallScreen/index.d.cts +5 -0
  269. package/dist/hooks/IsSmallScreen/index.d.ts +5 -0
  270. package/dist/hooks/IsSmallScreen/index.js +20 -0
  271. package/dist/hooks/LocalStorageOperations/index.cjs +79 -0
  272. package/dist/hooks/LocalStorageOperations/index.d.cts +17 -0
  273. package/dist/hooks/LocalStorageOperations/index.d.ts +17 -0
  274. package/dist/hooks/LocalStorageOperations/index.js +74 -0
  275. package/dist/hooks/MessageFilter/index.cjs +54 -0
  276. package/dist/hooks/MessageFilter/index.d.cts +30 -0
  277. package/dist/hooks/MessageFilter/index.d.ts +30 -0
  278. package/dist/hooks/MessageFilter/index.js +54 -0
  279. package/dist/hooks/MessageScrollObserver/index.cjs +36 -0
  280. package/dist/hooks/MessageScrollObserver/index.d.cts +5 -0
  281. package/dist/hooks/MessageScrollObserver/index.d.ts +5 -0
  282. package/dist/hooks/MessageScrollObserver/index.js +34 -0
  283. package/dist/hooks/NewOrgConfig/index.cjs +20 -0
  284. package/dist/hooks/NewOrgConfig/index.d.cts +20 -0
  285. package/dist/hooks/NewOrgConfig/index.d.ts +20 -0
  286. package/dist/hooks/NewOrgConfig/index.js +20 -0
  287. package/dist/hooks/Search/index.cjs +325 -0
  288. package/dist/hooks/Search/index.d.cts +61 -0
  289. package/dist/hooks/Search/index.d.ts +61 -0
  290. package/dist/hooks/Search/index.js +322 -0
  291. package/dist/hooks/SearchOperations/index.cjs +105 -0
  292. package/dist/hooks/SearchOperations/index.d.cts +22 -0
  293. package/dist/hooks/SearchOperations/index.d.ts +22 -0
  294. package/dist/hooks/SearchOperations/index.js +102 -0
  295. package/dist/hooks/SessionStorageOperations/index.cjs +30 -0
  296. package/dist/hooks/SessionStorageOperations/index.d.cts +8 -0
  297. package/dist/hooks/SessionStorageOperations/index.d.ts +8 -0
  298. package/dist/hooks/SessionStorageOperations/index.js +28 -0
  299. package/dist/hooks/ShopifyUrlOperations/index.cjs +53 -0
  300. package/dist/hooks/ShopifyUrlOperations/index.d.cts +23 -0
  301. package/dist/hooks/ShopifyUrlOperations/index.d.ts +23 -0
  302. package/dist/hooks/ShopifyUrlOperations/index.js +49 -0
  303. package/dist/hooks/SnapCalculator/index.cjs +29 -0
  304. package/dist/hooks/SnapCalculator/index.d.cts +12 -0
  305. package/dist/hooks/SnapCalculator/index.d.ts +12 -0
  306. package/dist/hooks/SnapCalculator/index.js +27 -0
  307. package/dist/hooks/SystemSettingsContext/index.cjs +7 -0
  308. package/dist/hooks/SystemSettingsContext/index.d.cts +23 -0
  309. package/dist/hooks/SystemSettingsContext/index.d.ts +23 -0
  310. package/dist/hooks/SystemSettingsContext/index.js +7 -0
  311. package/dist/hooks/TrackComponentVisibleEvent/index.cjs +23 -0
  312. package/dist/hooks/TrackComponentVisibleEvent/index.d.cts +18 -0
  313. package/dist/hooks/TrackComponentVisibleEvent/index.d.ts +18 -0
  314. package/dist/hooks/TrackComponentVisibleEvent/index.js +23 -0
  315. package/dist/hooks/UpdateAnalyticsProps/index.cjs +63 -0
  316. package/dist/hooks/UpdateAnalyticsProps/index.d.cts +9 -0
  317. package/dist/hooks/UpdateAnalyticsProps/index.d.ts +9 -0
  318. package/dist/hooks/UpdateAnalyticsProps/index.js +60 -0
  319. package/dist/hooks/utils.cjs +8 -0
  320. package/dist/hooks/utils.d.cts +13 -0
  321. package/dist/hooks/utils.d.ts +13 -0
  322. package/dist/hooks/utils.js +3 -0
  323. package/dist/index-7VOYQNo5.d.ts +184 -0
  324. package/dist/index-9NE86em3.d.cts +35 -0
  325. package/dist/index-Bmub8e38.d.cts +98 -0
  326. package/dist/index-C1nwLU6Q.d.ts +35 -0
  327. package/dist/index-CESxqFso.d.cts +228 -0
  328. package/dist/index-CG3P8xE1.d.cts +676 -0
  329. package/dist/index-CalyvQj_.d.ts +1 -0
  330. package/dist/index-CiWEYzXl.d.cts +184 -0
  331. package/dist/index-Cyq5HiC0.d.cts +44 -0
  332. package/dist/index-D9SzePCE.d.cts +186 -0
  333. package/dist/index-DDZmV951.d.ts +186 -0
  334. package/dist/index-Da1s8h5C.d.cts +9 -0
  335. package/dist/index-Dy22w7kg.d.ts +24 -0
  336. package/dist/index-DzbkQtaK.d.cts +24 -0
  337. package/dist/index-DzzKdrcZ.d.ts +9 -0
  338. package/dist/index-L7SEpDLz.d.ts +228 -0
  339. package/dist/index-RcVcRKH7.d.cts +1 -0
  340. package/dist/index-YrhxAGtH.d.ts +676 -0
  341. package/dist/index-exSzn3SP.d.ts +44 -0
  342. package/dist/index-hebsV7fc.d.ts +98 -0
  343. package/dist/interceptors/index.cjs +4 -0
  344. package/dist/interceptors/index.d.cts +20 -0
  345. package/dist/interceptors/index.d.ts +20 -0
  346. package/dist/interceptors/index.js +4 -0
  347. package/dist/interceptors/types.cjs +1 -0
  348. package/dist/interceptors/types.d.cts +13 -0
  349. package/dist/interceptors/types.d.ts +13 -0
  350. package/dist/interceptors/types.js +3 -0
  351. package/dist/localStorageContext-Dwgto93_.js +95 -0
  352. package/dist/localStorageContext-cnMYDllE.cjs +115 -0
  353. package/dist/logger-Cp7J4YJT.cjs +26 -0
  354. package/dist/logger-oAgZx2-m.js +20 -0
  355. package/dist/models-B1P-dSCW.cjs +1537 -0
  356. package/dist/models-CgvSM2fW.js +1296 -0
  357. package/dist/newOrgConfigAtom-B9FW3fDc.cjs +15 -0
  358. package/dist/newOrgConfigAtom-CMeY5c6t.js +8 -0
  359. package/dist/newOrgConfigContext-1uwWWCPa.js +53 -0
  360. package/dist/newOrgConfigContext-B0v1q3dk.cjs +68 -0
  361. package/dist/newOrgConfigContext-C8wBmK3q.d.cts +16 -0
  362. package/dist/newOrgConfigContext-D180PO0t.d.ts +16 -0
  363. package/dist/nodeSelector-B3bPtEjX.d.cts +31 -0
  364. package/dist/nodeSelector-DQicm08Y.d.ts +31 -0
  365. package/dist/org-DU3Wck0R.cjs +43 -0
  366. package/dist/org-DptftvB6.js +12 -0
  367. package/dist/search-BtYKpiNB.js +126 -0
  368. package/dist/search-DYVQuYti.d.ts +20 -0
  369. package/dist/search-Du6HZpO6.cjs +205 -0
  370. package/dist/search-filter-types-B5xcaEit.d.ts +102 -0
  371. package/dist/search-filter-types-DZPTzUK9.d.cts +102 -0
  372. package/dist/search-y-ioX5Mz.d.cts +20 -0
  373. package/dist/searchContext-BK43ArCs.cjs +145 -0
  374. package/dist/searchContext-JjZZhDCe.js +129 -0
  375. package/dist/searchServiceAdapter-BSPZOg1r.js +16 -0
  376. package/dist/searchServiceAdapter-DrjFCiw8.cjs +34 -0
  377. package/dist/sessionStorageContext-BQY9r8zz.js +52 -0
  378. package/dist/sessionStorageContext-R2yUAkd9.cjs +66 -0
  379. package/dist/shopifyUrlContext-Bon8_SUJ.js +61 -0
  380. package/dist/shopifyUrlContext-DUdw1xUH.cjs +75 -0
  381. package/dist/spiffyWidgets-BuS00VaQ.d.cts +20 -0
  382. package/dist/spiffyWidgets-DZqG5plz.d.ts +20 -0
  383. package/dist/systemSettingsContext-BjbhIz6y.js +39 -0
  384. package/dist/systemSettingsContext-Dv9EmjmZ.cjs +60 -0
  385. package/dist/test-types-Dl5puRHC.d.ts +40 -0
  386. package/dist/test-types-ThQiO_cc.d.cts +40 -0
  387. package/dist/types/index.cjs +34 -0
  388. package/dist/types/index.d.cts +3 -0
  389. package/dist/types/index.d.ts +3 -0
  390. package/dist/types/index.js +31 -0
  391. package/dist/types-BwNrLPSZ.cjs +106 -0
  392. package/dist/types-CKMMb_gX.d.cts +51 -0
  393. package/dist/types-Csgpt7EV.d.ts +51 -0
  394. package/dist/types-D3uOF0Oy.js +76 -0
  395. package/dist/types-DIk0FLwd.js +30 -0
  396. package/dist/types-DNLkuGWZ.cjs +48 -0
  397. package/dist/types-DSW9XODe.d.cts +10 -0
  398. package/dist/types-DtTnp0o0.js +1 -0
  399. package/dist/types-a8gm_IaQ.cjs +0 -0
  400. package/dist/types-oSg-AkO5.d.ts +10 -0
  401. package/dist/types.cjs +0 -0
  402. package/dist/types.d.cts +15 -0
  403. package/dist/types.d.ts +15 -0
  404. package/dist/types.js +1 -0
  405. package/dist/urlsParser-BV5yF8sa.cjs +78 -0
  406. package/dist/urlsParser-DUgV_Qy9.js +42 -0
  407. package/dist/useAmplitudeOperations-C9o_wDU6.cjs +41 -0
  408. package/dist/useAmplitudeOperations-COq3L1no.js +34 -0
  409. package/dist/useAppDetails-C4GTLEIR.cjs +38 -0
  410. package/dist/useAppDetails-CEksA88Q.js +30 -0
  411. package/dist/useDebounce--rPGMuE7.js +19 -0
  412. package/dist/useDebounce-DECHWSTn.cjs +26 -0
  413. package/dist/useGraphQLConfig-DQoMmpNM.js +63 -0
  414. package/dist/useGraphQLConfig-DzH1nVBh.cjs +76 -0
  415. package/dist/useIntersection-UEO0Cezc.js +21 -0
  416. package/dist/useIntersection-rV0Q8mBH.cjs +28 -0
  417. package/dist/useMessageInterceptor-CstX10ih.cjs +33 -0
  418. package/dist/useMessageInterceptor-D5oAekXn.js +25 -0
  419. package/dist/userIdentityContext-8kfKQRFx.d.ts +20 -0
  420. package/dist/userIdentityContext-D2oFVFzo.d.cts +20 -0
  421. package/dist/utilityTypes-DynzxjK3.js +1 -0
  422. package/dist/utilityTypes-xb8SjKSV.cjs +0 -0
  423. package/dist/utils-ARmpTh1O.js +27 -0
  424. package/dist/utils-B3x_9JTY.d.cts +15 -0
  425. package/dist/utils-B8rATLoc.d.ts +22 -0
  426. package/dist/utils-BLe5oreh.d.ts +15 -0
  427. package/dist/utils-Bcz5kAgP.js +92 -0
  428. package/dist/utils-CMqFfqZx.cjs +130 -0
  429. package/dist/utils-Cavu4XiM.cjs +33 -0
  430. package/dist/utils-CqVRbvfN.cjs +29 -0
  431. package/dist/utils-DQhbbAnt.js +23 -0
  432. package/dist/utils-EDgzCG3Q.d.cts +22 -0
  433. package/dist/utils-V1YTUQng.js +1385 -0
  434. package/dist/utils-VI19AC8S.cjs +1591 -0
  435. package/dist/variantInfo-BRmDpamJ.cjs +17 -0
  436. package/dist/variantInfo-BwBBEWSA.js +11 -0
  437. package/package.json +3 -2
  438. package/src/config/locators/components/chat/index.ts +0 -1
  439. package/src/config/locators/components/chat/preview.ts +0 -1
  440. package/src/config/locators/components/common/index.ts +4 -0
  441. package/src/config/locators/index.ts +1 -0
@@ -0,0 +1,19 @@
1
+ import { useEffect, useState } from "react";
2
+
3
+ //#region src/hooks/Debounce/useDebounce.ts
4
+ function useDebounce(value, delay) {
5
+ const [debouncedValue, setDebouncedValue] = useState(value);
6
+ useEffect(() => {
7
+ const handler = setTimeout(() => {
8
+ setDebouncedValue(value);
9
+ }, delay);
10
+ return () => {
11
+ clearTimeout(handler);
12
+ };
13
+ }, [value, delay]);
14
+ return debouncedValue;
15
+ }
16
+
17
+ //#endregion
18
+ export { useDebounce };
19
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlRGVib3VuY2UtLXJQR011RTcuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzL0RlYm91bmNlL3VzZURlYm91bmNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVN0YXRlLCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VEZWJvdW5jZTxUPih2YWx1ZTogVCwgZGVsYXk6IG51bWJlcik6IFQge1xuICBjb25zdCBbZGVib3VuY2VkVmFsdWUsIHNldERlYm91bmNlZFZhbHVlXSA9IHVzZVN0YXRlPFQ+KHZhbHVlKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldERlYm91bmNlZFZhbHVlKHZhbHVlKTtcbiAgICB9LCBkZWxheSk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KGhhbmRsZXIpO1xuICAgIH07XG4gIH0sIFt2YWx1ZSwgZGVsYXldKTtcblxuICByZXR1cm4gZGVib3VuY2VkVmFsdWU7XG59XG4iXSwibWFwcGluZ3MiOiI7OztBQUVBLFNBQWdCLFlBQWUsT0FBVSxPQUFrQjtDQUN6RCxNQUFNLENBQUMsZ0JBQWdCLHFCQUFxQixTQUFZLE1BQU07QUFFOUQsaUJBQWdCO0VBQ2QsTUFBTSxVQUFVLGlCQUFpQjtBQUMvQixxQkFBa0IsTUFBTTtLQUN2QixNQUFNO0FBRVQsZUFBYTtBQUNYLGdCQUFhLFFBQVE7O0lBRXRCLENBQUMsT0FBTyxNQUFNLENBQUM7QUFFbEIsUUFBTyJ9
@@ -0,0 +1,26 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ let react = require("react");
3
+ react = require_chunk.__toESM(react);
4
+
5
+ //#region src/hooks/Debounce/useDebounce.ts
6
+ function useDebounce(value, delay) {
7
+ const [debouncedValue, setDebouncedValue] = (0, react.useState)(value);
8
+ (0, react.useEffect)(() => {
9
+ const handler = setTimeout(() => {
10
+ setDebouncedValue(value);
11
+ }, delay);
12
+ return () => {
13
+ clearTimeout(handler);
14
+ };
15
+ }, [value, delay]);
16
+ return debouncedValue;
17
+ }
18
+
19
+ //#endregion
20
+ Object.defineProperty(exports, 'useDebounce', {
21
+ enumerable: true,
22
+ get: function () {
23
+ return useDebounce;
24
+ }
25
+ });
26
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlRGVib3VuY2UtREVDSFdTVG4uY2pzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy9ob29rcy9EZWJvdW5jZS91c2VEZWJvdW5jZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlRGVib3VuY2U8VD4odmFsdWU6IFQsIGRlbGF5OiBudW1iZXIpOiBUIHtcbiAgY29uc3QgW2RlYm91bmNlZFZhbHVlLCBzZXREZWJvdW5jZWRWYWx1ZV0gPSB1c2VTdGF0ZTxUPih2YWx1ZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBoYW5kbGVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZXREZWJvdW5jZWRWYWx1ZSh2YWx1ZSk7XG4gICAgfSwgZGVsYXkpO1xuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNsZWFyVGltZW91dChoYW5kbGVyKTtcbiAgICB9O1xuICB9LCBbdmFsdWUsIGRlbGF5XSk7XG5cbiAgcmV0dXJuIGRlYm91bmNlZFZhbHVlO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLFNBQWdCLFlBQWUsT0FBVSxPQUFrQjtDQUN6RCxNQUFNLENBQUMsZ0JBQWdCLHlDQUFpQyxNQUFNO0FBRTlELDRCQUFnQjtFQUNkLE1BQU0sVUFBVSxpQkFBaUI7QUFDL0IscUJBQWtCLE1BQU07S0FDdkIsTUFBTTtBQUVULGVBQWE7QUFDWCxnQkFBYSxRQUFROztJQUV0QixDQUFDLE9BQU8sTUFBTSxDQUFDO0FBRWxCLFFBQU8ifQ==
@@ -0,0 +1,63 @@
1
+ import { useGraphQLClient } from "./graphqlContext-CSVwhCnP.js";
2
+ import { useCallback, useEffect, useState } from "react";
3
+
4
+ //#region src/hooks/GraphQLConfig/useGraphQLConfig.ts
5
+ const useColorsAndFrontendConfig = () => {
6
+ const { getColorsAndFrontendConfig, isReady } = useGraphQLClient();
7
+ const [data, setData] = useState({});
8
+ const [loading, setLoading] = useState(false);
9
+ const [error, setError] = useState(null);
10
+ const fetchConfig = useCallback(async () => {
11
+ if (!isReady) return;
12
+ setLoading(true);
13
+ setError(null);
14
+ try {
15
+ const result = await getColorsAndFrontendConfig();
16
+ setData(result);
17
+ } catch (err) {
18
+ setError(err instanceof Error ? err : /* @__PURE__ */ new Error("Unknown error"));
19
+ } finally {
20
+ setLoading(false);
21
+ }
22
+ }, [getColorsAndFrontendConfig, isReady]);
23
+ useEffect(() => {
24
+ fetchConfig();
25
+ }, [fetchConfig]);
26
+ return {
27
+ data,
28
+ loading,
29
+ error,
30
+ refetch: fetchConfig
31
+ };
32
+ };
33
+ const useOrgId = () => {
34
+ const { getOrgId, isReady } = useGraphQLClient();
35
+ const [orgId, setOrgId] = useState();
36
+ const [loading, setLoading] = useState(false);
37
+ const [error, setError] = useState(null);
38
+ useEffect(() => {
39
+ if (!isReady) return;
40
+ const fetchOrgId = async () => {
41
+ setLoading(true);
42
+ setError(null);
43
+ try {
44
+ const id = await getOrgId();
45
+ setOrgId(id);
46
+ } catch (err) {
47
+ setError(err instanceof Error ? err : /* @__PURE__ */ new Error("Unknown error"));
48
+ } finally {
49
+ setLoading(false);
50
+ }
51
+ };
52
+ fetchOrgId();
53
+ }, [getOrgId, isReady]);
54
+ return {
55
+ orgId,
56
+ loading,
57
+ error
58
+ };
59
+ };
60
+
61
+ //#endregion
62
+ export { useColorsAndFrontendConfig, useOrgId };
63
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlR3JhcGhRTENvbmZpZy1EUW9NbXBOTS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvR3JhcGhRTENvbmZpZy91c2VHcmFwaFFMQ29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge1xuICBHcmFwaFFsQ29uZmlnVmFsdWVzLFxuICB1c2VHcmFwaFFMQ2xpZW50LFxufSBmcm9tIFwic3JjL2NvbnRleHRzL2dyYXBocWxDb250ZXh0L2dyYXBocWxDb250ZXh0XCI7XG5cbmV4cG9ydCBjb25zdCB1c2VDb2xvcnNBbmRGcm9udGVuZENvbmZpZyA9ICgpID0+IHtcbiAgY29uc3QgeyBnZXRDb2xvcnNBbmRGcm9udGVuZENvbmZpZywgaXNSZWFkeSB9ID0gdXNlR3JhcGhRTENsaWVudCgpO1xuICBjb25zdCBbZGF0YSwgc2V0RGF0YV0gPSB1c2VTdGF0ZTxHcmFwaFFsQ29uZmlnVmFsdWVzPih7fSk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxFcnJvciB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0IGZldGNoQ29uZmlnID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIGlmICghaXNSZWFkeSkgcmV0dXJuO1xuXG4gICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICBzZXRFcnJvcihudWxsKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBnZXRDb2xvcnNBbmRGcm9udGVuZENvbmZpZygpO1xuICAgICAgc2V0RGF0YShyZXN1bHQpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgc2V0RXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIgOiBuZXcgRXJyb3IoXCJVbmtub3duIGVycm9yXCIpKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgfVxuICB9LCBbZ2V0Q29sb3JzQW5kRnJvbnRlbmRDb25maWcsIGlzUmVhZHldKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZldGNoQ29uZmlnKCk7XG4gIH0sIFtmZXRjaENvbmZpZ10pO1xuXG4gIHJldHVybiB7IGRhdGEsIGxvYWRpbmcsIGVycm9yLCByZWZldGNoOiBmZXRjaENvbmZpZyB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZU9yZ0lkID0gKCkgPT4ge1xuICBjb25zdCB7IGdldE9yZ0lkLCBpc1JlYWR5IH0gPSB1c2VHcmFwaFFMQ2xpZW50KCk7XG4gIGNvbnN0IFtvcmdJZCwgc2V0T3JnSWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8RXJyb3IgfCBudWxsPihudWxsKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNSZWFkeSkgcmV0dXJuO1xuXG4gICAgY29uc3QgZmV0Y2hPcmdJZCA9IGFzeW5jICgpID0+IHtcbiAgICAgIHNldExvYWRpbmcodHJ1ZSk7XG4gICAgICBzZXRFcnJvcihudWxsKTtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgaWQgPSBhd2FpdCBnZXRPcmdJZCgpO1xuICAgICAgICBzZXRPcmdJZChpZCk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgc2V0RXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIgOiBuZXcgRXJyb3IoXCJVbmtub3duIGVycm9yXCIpKTtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBmZXRjaE9yZ0lkKCk7XG4gIH0sIFtnZXRPcmdJZCwgaXNSZWFkeV0pO1xuXG4gIHJldHVybiB7IG9yZ0lkLCBsb2FkaW5nLCBlcnJvciB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQU1BLE1BQWEsbUNBQW1DO0NBQzlDLE1BQU0sRUFBRSw0QkFBNEIsWUFBWSxrQkFBa0I7Q0FDbEUsTUFBTSxDQUFDLE1BQU0sV0FBVyxTQUE4QixFQUFFLENBQUM7Q0FDekQsTUFBTSxDQUFDLFNBQVMsY0FBYyxTQUFTLE1BQU07Q0FDN0MsTUFBTSxDQUFDLE9BQU8sWUFBWSxTQUF1QixLQUFLO0NBRXRELE1BQU0sY0FBYyxZQUFZLFlBQVk7QUFDMUMsTUFBSSxDQUFDLFFBQVM7QUFFZCxhQUFXLEtBQUs7QUFDaEIsV0FBUyxLQUFLO0FBRWQsTUFBSTtHQUNGLE1BQU0sU0FBUyxNQUFNLDRCQUE0QjtBQUNqRCxXQUFRLE9BQU87V0FDUixLQUFLO0FBQ1osWUFBUyxlQUFlLFFBQVEsc0JBQU0sSUFBSSxNQUFNLGdCQUFnQixDQUFDO1lBQ3pEO0FBQ1IsY0FBVyxNQUFNOztJQUVsQixDQUFDLDRCQUE0QixRQUFRLENBQUM7QUFFekMsaUJBQWdCO0FBQ2QsZUFBYTtJQUNaLENBQUMsWUFBWSxDQUFDO0FBRWpCLFFBQU87RUFBRTtFQUFNO0VBQVM7RUFBTyxTQUFTO0VBQWE7O0FBR3ZELE1BQWEsaUJBQWlCO0NBQzVCLE1BQU0sRUFBRSxVQUFVLFlBQVksa0JBQWtCO0NBQ2hELE1BQU0sQ0FBQyxPQUFPLFlBQVksVUFBOEI7Q0FDeEQsTUFBTSxDQUFDLFNBQVMsY0FBYyxTQUFTLE1BQU07Q0FDN0MsTUFBTSxDQUFDLE9BQU8sWUFBWSxTQUF1QixLQUFLO0FBRXRELGlCQUFnQjtBQUNkLE1BQUksQ0FBQyxRQUFTO0VBRWQsTUFBTSxhQUFhLFlBQVk7QUFDN0IsY0FBVyxLQUFLO0FBQ2hCLFlBQVMsS0FBSztBQUVkLE9BQUk7SUFDRixNQUFNLEtBQUssTUFBTSxVQUFVO0FBQzNCLGFBQVMsR0FBRztZQUNMLEtBQUs7QUFDWixhQUFTLGVBQWUsUUFBUSxzQkFBTSxJQUFJLE1BQU0sZ0JBQWdCLENBQUM7YUFDekQ7QUFDUixlQUFXLE1BQU07OztBQUlyQixjQUFZO0lBQ1gsQ0FBQyxVQUFVLFFBQVEsQ0FBQztBQUV2QixRQUFPO0VBQUU7RUFBTztFQUFTO0VBQU8ifQ==
@@ -0,0 +1,76 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ const require_graphqlContext = require('./graphqlContext-aaOOb79d.cjs');
3
+ let react = require("react");
4
+ react = require_chunk.__toESM(react);
5
+
6
+ //#region src/hooks/GraphQLConfig/useGraphQLConfig.ts
7
+ const useColorsAndFrontendConfig = () => {
8
+ const { getColorsAndFrontendConfig, isReady } = require_graphqlContext.useGraphQLClient();
9
+ const [data, setData] = (0, react.useState)({});
10
+ const [loading, setLoading] = (0, react.useState)(false);
11
+ const [error, setError] = (0, react.useState)(null);
12
+ const fetchConfig = (0, react.useCallback)(async () => {
13
+ if (!isReady) return;
14
+ setLoading(true);
15
+ setError(null);
16
+ try {
17
+ const result = await getColorsAndFrontendConfig();
18
+ setData(result);
19
+ } catch (err) {
20
+ setError(err instanceof Error ? err : /* @__PURE__ */ new Error("Unknown error"));
21
+ } finally {
22
+ setLoading(false);
23
+ }
24
+ }, [getColorsAndFrontendConfig, isReady]);
25
+ (0, react.useEffect)(() => {
26
+ fetchConfig();
27
+ }, [fetchConfig]);
28
+ return {
29
+ data,
30
+ loading,
31
+ error,
32
+ refetch: fetchConfig
33
+ };
34
+ };
35
+ const useOrgId = () => {
36
+ const { getOrgId, isReady } = require_graphqlContext.useGraphQLClient();
37
+ const [orgId, setOrgId] = (0, react.useState)();
38
+ const [loading, setLoading] = (0, react.useState)(false);
39
+ const [error, setError] = (0, react.useState)(null);
40
+ (0, react.useEffect)(() => {
41
+ if (!isReady) return;
42
+ const fetchOrgId = async () => {
43
+ setLoading(true);
44
+ setError(null);
45
+ try {
46
+ const id = await getOrgId();
47
+ setOrgId(id);
48
+ } catch (err) {
49
+ setError(err instanceof Error ? err : /* @__PURE__ */ new Error("Unknown error"));
50
+ } finally {
51
+ setLoading(false);
52
+ }
53
+ };
54
+ fetchOrgId();
55
+ }, [getOrgId, isReady]);
56
+ return {
57
+ orgId,
58
+ loading,
59
+ error
60
+ };
61
+ };
62
+
63
+ //#endregion
64
+ Object.defineProperty(exports, 'useColorsAndFrontendConfig', {
65
+ enumerable: true,
66
+ get: function () {
67
+ return useColorsAndFrontendConfig;
68
+ }
69
+ });
70
+ Object.defineProperty(exports, 'useOrgId', {
71
+ enumerable: true,
72
+ get: function () {
73
+ return useOrgId;
74
+ }
75
+ });
76
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlR3JhcGhRTENvbmZpZy1EekgxblZCaC5janMiLCJuYW1lcyI6WyJ1c2VHcmFwaFFMQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzL0dyYXBoUUxDb25maWcvdXNlR3JhcGhRTENvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtcbiAgR3JhcGhRbENvbmZpZ1ZhbHVlcyxcbiAgdXNlR3JhcGhRTENsaWVudCxcbn0gZnJvbSBcInNyYy9jb250ZXh0cy9ncmFwaHFsQ29udGV4dC9ncmFwaHFsQ29udGV4dFwiO1xuXG5leHBvcnQgY29uc3QgdXNlQ29sb3JzQW5kRnJvbnRlbmRDb25maWcgPSAoKSA9PiB7XG4gIGNvbnN0IHsgZ2V0Q29sb3JzQW5kRnJvbnRlbmRDb25maWcsIGlzUmVhZHkgfSA9IHVzZUdyYXBoUUxDbGllbnQoKTtcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8R3JhcGhRbENvbmZpZ1ZhbHVlcz4oe30pO1xuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8RXJyb3IgfCBudWxsPihudWxsKTtcblxuICBjb25zdCBmZXRjaENvbmZpZyA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBpZiAoIWlzUmVhZHkpIHJldHVybjtcblxuICAgIHNldExvYWRpbmcodHJ1ZSk7XG4gICAgc2V0RXJyb3IobnVsbCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZ2V0Q29sb3JzQW5kRnJvbnRlbmRDb25maWcoKTtcbiAgICAgIHNldERhdGEocmVzdWx0KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyIDogbmV3IEVycm9yKFwiVW5rbm93biBlcnJvclwiKSk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgIH1cbiAgfSwgW2dldENvbG9yc0FuZEZyb250ZW5kQ29uZmlnLCBpc1JlYWR5XSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaENvbmZpZygpO1xuICB9LCBbZmV0Y2hDb25maWddKTtcblxuICByZXR1cm4geyBkYXRhLCBsb2FkaW5nLCBlcnJvciwgcmVmZXRjaDogZmV0Y2hDb25maWcgfTtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VPcmdJZCA9ICgpID0+IHtcbiAgY29uc3QgeyBnZXRPcmdJZCwgaXNSZWFkeSB9ID0gdXNlR3JhcGhRTENsaWVudCgpO1xuICBjb25zdCBbb3JnSWQsIHNldE9yZ0lkXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcbiAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPEVycm9yIHwgbnVsbD4obnVsbCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWlzUmVhZHkpIHJldHVybjtcblxuICAgIGNvbnN0IGZldGNoT3JnSWQgPSBhc3luYyAoKSA9PiB7XG4gICAgICBzZXRMb2FkaW5nKHRydWUpO1xuICAgICAgc2V0RXJyb3IobnVsbCk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGlkID0gYXdhaXQgZ2V0T3JnSWQoKTtcbiAgICAgICAgc2V0T3JnSWQoaWQpO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyIDogbmV3IEVycm9yKFwiVW5rbm93biBlcnJvclwiKSk7XG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZmV0Y2hPcmdJZCgpO1xuICB9LCBbZ2V0T3JnSWQsIGlzUmVhZHldKTtcblxuICByZXR1cm4geyBvcmdJZCwgbG9hZGluZywgZXJyb3IgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQU1BLE1BQWEsbUNBQW1DO0NBQzlDLE1BQU0sRUFBRSw0QkFBNEIsWUFBWUEseUNBQWtCO0NBQ2xFLE1BQU0sQ0FBQyxNQUFNLCtCQUF5QyxFQUFFLENBQUM7Q0FDekQsTUFBTSxDQUFDLFNBQVMsa0NBQXVCLE1BQU07Q0FDN0MsTUFBTSxDQUFDLE9BQU8sZ0NBQW1DLEtBQUs7Q0FFdEQsTUFBTSxxQ0FBMEIsWUFBWTtBQUMxQyxNQUFJLENBQUMsUUFBUztBQUVkLGFBQVcsS0FBSztBQUNoQixXQUFTLEtBQUs7QUFFZCxNQUFJO0dBQ0YsTUFBTSxTQUFTLE1BQU0sNEJBQTRCO0FBQ2pELFdBQVEsT0FBTztXQUNSLEtBQUs7QUFDWixZQUFTLGVBQWUsUUFBUSxzQkFBTSxJQUFJLE1BQU0sZ0JBQWdCLENBQUM7WUFDekQ7QUFDUixjQUFXLE1BQU07O0lBRWxCLENBQUMsNEJBQTRCLFFBQVEsQ0FBQztBQUV6Qyw0QkFBZ0I7QUFDZCxlQUFhO0lBQ1osQ0FBQyxZQUFZLENBQUM7QUFFakIsUUFBTztFQUFFO0VBQU07RUFBUztFQUFPLFNBQVM7RUFBYTs7QUFHdkQsTUFBYSxpQkFBaUI7Q0FDNUIsTUFBTSxFQUFFLFVBQVUsWUFBWUEseUNBQWtCO0NBQ2hELE1BQU0sQ0FBQyxPQUFPLGlDQUEwQztDQUN4RCxNQUFNLENBQUMsU0FBUyxrQ0FBdUIsTUFBTTtDQUM3QyxNQUFNLENBQUMsT0FBTyxnQ0FBbUMsS0FBSztBQUV0RCw0QkFBZ0I7QUFDZCxNQUFJLENBQUMsUUFBUztFQUVkLE1BQU0sYUFBYSxZQUFZO0FBQzdCLGNBQVcsS0FBSztBQUNoQixZQUFTLEtBQUs7QUFFZCxPQUFJO0lBQ0YsTUFBTSxLQUFLLE1BQU0sVUFBVTtBQUMzQixhQUFTLEdBQUc7WUFDTCxLQUFLO0FBQ1osYUFBUyxlQUFlLFFBQVEsc0JBQU0sSUFBSSxNQUFNLGdCQUFnQixDQUFDO2FBQ3pEO0FBQ1IsZUFBVyxNQUFNOzs7QUFJckIsY0FBWTtJQUNYLENBQUMsVUFBVSxRQUFRLENBQUM7QUFFdkIsUUFBTztFQUFFO0VBQU87RUFBUztFQUFPIn0=
@@ -0,0 +1,21 @@
1
+ import { useEffect, useState } from "react";
2
+
3
+ //#region src/hooks/Intersection/useIntersection.ts
4
+ const useIntersection = (element, rootMargin) => {
5
+ const [isVisible, setIsVisible] = useState(false);
6
+ useEffect(() => {
7
+ const current = element?.current;
8
+ const observer = new IntersectionObserver(([entry]) => {
9
+ setIsVisible(entry.isIntersecting);
10
+ }, { rootMargin });
11
+ if (current) observer?.observe(current);
12
+ return () => {
13
+ if (current) observer.unobserve(current);
14
+ };
15
+ }, []);
16
+ return isVisible;
17
+ };
18
+
19
+ //#endregion
20
+ export { useIntersection };
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlSW50ZXJzZWN0aW9uLVVFTzBDZXpjLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy9ob29rcy9JbnRlcnNlY3Rpb24vdXNlSW50ZXJzZWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuLy8gaHR0cHM6Ly9yYXNpbGJhaWRhci5tZWRpdW0uY29tL3RyaWdnZXItZXZlbnQtd2hlbi1lbGVtZW50LWVudGVycy12aWV3cG9ydC10aGUtcmVhY3Qtd2F5LTE2ODUwOWRhMmUyM1xuZXhwb3J0IGNvbnN0IHVzZUludGVyc2VjdGlvbiA9IChlbGVtZW50OiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+LCByb290TWFyZ2luOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgW2lzVmlzaWJsZSwgc2V0SXNWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGN1cnJlbnQgPSBlbGVtZW50Py5jdXJyZW50O1xuICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKFxuICAgICAgKFtlbnRyeV0pID0+IHtcbiAgICAgICAgc2V0SXNWaXNpYmxlKGVudHJ5LmlzSW50ZXJzZWN0aW5nKTtcbiAgICAgIH0sXG4gICAgICB7IHJvb3RNYXJnaW4gfSxcbiAgICApO1xuXG4gICAgaWYgKGN1cnJlbnQpIHtcbiAgICAgIG9ic2VydmVyPy5vYnNlcnZlKGN1cnJlbnQpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICBvYnNlcnZlci51bm9ic2VydmUoY3VycmVudCk7XG4gICAgICB9XG4gICAgfTtcbiAgfSwgW10pO1xuXG4gIHJldHVybiBpc1Zpc2libGU7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFHQSxNQUFhLG1CQUFtQixTQUFpQyxlQUF1QjtDQUN0RixNQUFNLENBQUMsV0FBVyxnQkFBZ0IsU0FBUyxNQUFNO0FBRWpELGlCQUFnQjtFQUNkLE1BQU0sVUFBVSxTQUFTO0VBQ3pCLE1BQU0sV0FBVyxJQUFJLHNCQUNsQixDQUFDLFdBQVc7QUFDWCxnQkFBYSxNQUFNLGVBQWU7S0FFcEMsRUFBRSxZQUFZLENBQ2Y7QUFFRCxNQUFJLFFBQ0YsV0FBVSxRQUFRLFFBQVE7QUFHNUIsZUFBYTtBQUNYLE9BQUksUUFDRixVQUFTLFVBQVUsUUFBUTs7SUFHOUIsRUFBRSxDQUFDO0FBRU4sUUFBTyJ9
@@ -0,0 +1,28 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ let react = require("react");
3
+ react = require_chunk.__toESM(react);
4
+
5
+ //#region src/hooks/Intersection/useIntersection.ts
6
+ const useIntersection = (element, rootMargin) => {
7
+ const [isVisible, setIsVisible] = (0, react.useState)(false);
8
+ (0, react.useEffect)(() => {
9
+ const current = element?.current;
10
+ const observer = new IntersectionObserver(([entry]) => {
11
+ setIsVisible(entry.isIntersecting);
12
+ }, { rootMargin });
13
+ if (current) observer?.observe(current);
14
+ return () => {
15
+ if (current) observer.unobserve(current);
16
+ };
17
+ }, []);
18
+ return isVisible;
19
+ };
20
+
21
+ //#endregion
22
+ Object.defineProperty(exports, 'useIntersection', {
23
+ enumerable: true,
24
+ get: function () {
25
+ return useIntersection;
26
+ }
27
+ });
28
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlSW50ZXJzZWN0aW9uLXJWMFE4bUJILmNqcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvSW50ZXJzZWN0aW9uL3VzZUludGVyc2VjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbi8vIGh0dHBzOi8vcmFzaWxiYWlkYXIubWVkaXVtLmNvbS90cmlnZ2VyLWV2ZW50LXdoZW4tZWxlbWVudC1lbnRlcnMtdmlld3BvcnQtdGhlLXJlYWN0LXdheS0xNjg1MDlkYTJlMjNcbmV4cG9ydCBjb25zdCB1c2VJbnRlcnNlY3Rpb24gPSAoZWxlbWVudDogUmVmT2JqZWN0PEhUTUxFbGVtZW50Piwgcm9vdE1hcmdpbjogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IFtpc1Zpc2libGUsIHNldElzVmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBjdXJyZW50ID0gZWxlbWVudD8uY3VycmVudDtcbiAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihcbiAgICAgIChbZW50cnldKSA9PiB7XG4gICAgICAgIHNldElzVmlzaWJsZShlbnRyeS5pc0ludGVyc2VjdGluZyk7XG4gICAgICB9LFxuICAgICAgeyByb290TWFyZ2luIH0sXG4gICAgKTtcblxuICAgIGlmIChjdXJyZW50KSB7XG4gICAgICBvYnNlcnZlcj8ub2JzZXJ2ZShjdXJyZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGN1cnJlbnQpIHtcbiAgICAgICAgb2JzZXJ2ZXIudW5vYnNlcnZlKGN1cnJlbnQpO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtdKTtcblxuICByZXR1cm4gaXNWaXNpYmxlO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFHQSxNQUFhLG1CQUFtQixTQUFpQyxlQUF1QjtDQUN0RixNQUFNLENBQUMsV0FBVyxvQ0FBeUIsTUFBTTtBQUVqRCw0QkFBZ0I7RUFDZCxNQUFNLFVBQVUsU0FBUztFQUN6QixNQUFNLFdBQVcsSUFBSSxzQkFDbEIsQ0FBQyxXQUFXO0FBQ1gsZ0JBQWEsTUFBTSxlQUFlO0tBRXBDLEVBQUUsWUFBWSxDQUNmO0FBRUQsTUFBSSxRQUNGLFdBQVUsUUFBUSxRQUFRO0FBRzVCLGVBQWE7QUFDWCxPQUFJLFFBQ0YsVUFBUyxVQUFVLFFBQVE7O0lBRzlCLEVBQUUsQ0FBQztBQUVOLFFBQU8ifQ==
@@ -0,0 +1,33 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ let __spiffy_ai_commerce_api_client = require("@spiffy-ai/commerce-api-client");
3
+ __spiffy_ai_commerce_api_client = require_chunk.__toESM(__spiffy_ai_commerce_api_client);
4
+ let react = require("react");
5
+ react = require_chunk.__toESM(react);
6
+
7
+ //#region src/interceptors/useMessageInterceptor.ts
8
+ const useMessageInterceptor = () => {
9
+ const interceptorMap = (0, react.useMemo)(() => {
10
+ return /* @__PURE__ */ new Map();
11
+ }, []);
12
+ const intercept = (response) => {
13
+ if (response?.category === __spiffy_ai_commerce_api_client.ResponseCategory.Form) {
14
+ const formType = response.attributes.formCategory?.formType;
15
+ if (formType) {
16
+ const interceptor = interceptorMap.get(formType);
17
+ interceptor?.execute(response);
18
+ return interceptor?.blockExecution();
19
+ }
20
+ }
21
+ return false;
22
+ };
23
+ return { intercept };
24
+ };
25
+
26
+ //#endregion
27
+ Object.defineProperty(exports, 'useMessageInterceptor', {
28
+ enumerable: true,
29
+ get: function () {
30
+ return useMessageInterceptor;
31
+ }
32
+ });
33
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlTWVzc2FnZUludGVyY2VwdG9yLUNzdFgxMGloLmNqcyIsIm5hbWVzIjpbIlJlc3BvbnNlQ2F0ZWdvcnkiXSwic291cmNlcyI6WyIuLi9zcmMvaW50ZXJjZXB0b3JzL3VzZU1lc3NhZ2VJbnRlcmNlcHRvci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtVHlwZSwgUmVzcG9uc2VDYXRlZ29yeSB9IGZyb20gXCJAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnRcIjtcbmltcG9ydCB7IHVzZU1lbW8gfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IFJlc3BvbnNlIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHNcIjtcbmltcG9ydCB7IE1lc3NhZ2VJbnRlcmNlcHRvciB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBjb25zdCB1c2VNZXNzYWdlSW50ZXJjZXB0b3IgPSAoKSA9PiB7XG4gIGNvbnN0IGludGVyY2VwdG9yTWFwID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgaW50ZXJjZXB0b3JzID0gbmV3IE1hcDxGb3JtVHlwZSwgTWVzc2FnZUludGVyY2VwdG9yPigpO1xuICAgIC8vIEZvcm0gZXNjYWxhdGlvbiBpbnRlcmNlcHRvciByZW1vdmVkIGFzIHBlciB1c2VyIGluc3RydWN0aW9uXG4gICAgcmV0dXJuIGludGVyY2VwdG9ycztcbiAgfSwgW10pO1xuXG4gIGNvbnN0IGludGVyY2VwdCA9IChyZXNwb25zZT86IFJlc3BvbnNlKSA9PiB7XG4gICAgaWYgKHJlc3BvbnNlPy5jYXRlZ29yeSA9PT0gUmVzcG9uc2VDYXRlZ29yeS5Gb3JtKSB7XG4gICAgICBjb25zdCBmb3JtVHlwZSA9IHJlc3BvbnNlLmF0dHJpYnV0ZXMuZm9ybUNhdGVnb3J5Py5mb3JtVHlwZTtcbiAgICAgIGlmIChmb3JtVHlwZSkge1xuICAgICAgICBjb25zdCBpbnRlcmNlcHRvciA9IGludGVyY2VwdG9yTWFwLmdldChmb3JtVHlwZSk7XG4gICAgICAgIGludGVyY2VwdG9yPy5leGVjdXRlKHJlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIGludGVyY2VwdG9yPy5ibG9ja0V4ZWN1dGlvbigpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICByZXR1cm4ge1xuICAgIGludGVyY2VwdCxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFLQSxNQUFhLDhCQUE4QjtDQUN6QyxNQUFNLDBDQUErQjtBQUduQyx5QkFGcUIsSUFBSSxLQUFtQztJQUczRCxFQUFFLENBQUM7Q0FFTixNQUFNLGFBQWEsYUFBd0I7QUFDekMsTUFBSSxVQUFVLGFBQWFBLGlEQUFpQixNQUFNO0dBQ2hELE1BQU0sV0FBVyxTQUFTLFdBQVcsY0FBYztBQUNuRCxPQUFJLFVBQVU7SUFDWixNQUFNLGNBQWMsZUFBZSxJQUFJLFNBQVM7QUFDaEQsaUJBQWEsUUFBUSxTQUFTO0FBQzlCLFdBQU8sYUFBYSxnQkFBZ0I7OztBQUl4QyxTQUFPOztBQUdULFFBQU8sRUFDTCxXQUNEIn0=
@@ -0,0 +1,25 @@
1
+ import { ResponseCategory } from "@spiffy-ai/commerce-api-client";
2
+ import { useMemo } from "react";
3
+
4
+ //#region src/interceptors/useMessageInterceptor.ts
5
+ const useMessageInterceptor = () => {
6
+ const interceptorMap = useMemo(() => {
7
+ return /* @__PURE__ */ new Map();
8
+ }, []);
9
+ const intercept = (response) => {
10
+ if (response?.category === ResponseCategory.Form) {
11
+ const formType = response.attributes.formCategory?.formType;
12
+ if (formType) {
13
+ const interceptor = interceptorMap.get(formType);
14
+ interceptor?.execute(response);
15
+ return interceptor?.blockExecution();
16
+ }
17
+ }
18
+ return false;
19
+ };
20
+ return { intercept };
21
+ };
22
+
23
+ //#endregion
24
+ export { useMessageInterceptor };
25
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlTWVzc2FnZUludGVyY2VwdG9yLUQ1b0Fla1huLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmNlcHRvcnMvdXNlTWVzc2FnZUludGVyY2VwdG9yLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1UeXBlLCBSZXNwb25zZUNhdGVnb3J5IH0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudFwiO1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgUmVzcG9uc2UgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL21vZGVsc1wiO1xuaW1wb3J0IHsgTWVzc2FnZUludGVyY2VwdG9yIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZXhwb3J0IGNvbnN0IHVzZU1lc3NhZ2VJbnRlcmNlcHRvciA9ICgpID0+IHtcbiAgY29uc3QgaW50ZXJjZXB0b3JNYXAgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBpbnRlcmNlcHRvcnMgPSBuZXcgTWFwPEZvcm1UeXBlLCBNZXNzYWdlSW50ZXJjZXB0b3I+KCk7XG4gICAgLy8gRm9ybSBlc2NhbGF0aW9uIGludGVyY2VwdG9yIHJlbW92ZWQgYXMgcGVyIHVzZXIgaW5zdHJ1Y3Rpb25cbiAgICByZXR1cm4gaW50ZXJjZXB0b3JzO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgaW50ZXJjZXB0ID0gKHJlc3BvbnNlPzogUmVzcG9uc2UpID0+IHtcbiAgICBpZiAocmVzcG9uc2U/LmNhdGVnb3J5ID09PSBSZXNwb25zZUNhdGVnb3J5LkZvcm0pIHtcbiAgICAgIGNvbnN0IGZvcm1UeXBlID0gcmVzcG9uc2UuYXR0cmlidXRlcy5mb3JtQ2F0ZWdvcnk/LmZvcm1UeXBlO1xuICAgICAgaWYgKGZvcm1UeXBlKSB7XG4gICAgICAgIGNvbnN0IGludGVyY2VwdG9yID0gaW50ZXJjZXB0b3JNYXAuZ2V0KGZvcm1UeXBlKTtcbiAgICAgICAgaW50ZXJjZXB0b3I/LmV4ZWN1dGUocmVzcG9uc2UpO1xuICAgICAgICByZXR1cm4gaW50ZXJjZXB0b3I/LmJsb2NrRXhlY3V0aW9uKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9O1xuXG4gIHJldHVybiB7XG4gICAgaW50ZXJjZXB0LFxuICB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUtBLE1BQWEsOEJBQThCO0NBQ3pDLE1BQU0saUJBQWlCLGNBQWM7QUFHbkMseUJBRnFCLElBQUksS0FBbUM7SUFHM0QsRUFBRSxDQUFDO0NBRU4sTUFBTSxhQUFhLGFBQXdCO0FBQ3pDLE1BQUksVUFBVSxhQUFhLGlCQUFpQixNQUFNO0dBQ2hELE1BQU0sV0FBVyxTQUFTLFdBQVcsY0FBYztBQUNuRCxPQUFJLFVBQVU7SUFDWixNQUFNLGNBQWMsZUFBZSxJQUFJLFNBQVM7QUFDaEQsaUJBQWEsUUFBUSxTQUFTO0FBQzlCLFdBQU8sYUFBYSxnQkFBZ0I7OztBQUl4QyxTQUFPOztBQUdULFFBQU8sRUFDTCxXQUNEIn0=
@@ -0,0 +1,20 @@
1
+ import React from "react";
2
+
3
+ //#region src/contexts/userIdentityContext/userIdentityContext.d.ts
4
+ interface UserIdentityContextType {
5
+ identifyUser: () => Promise<void>;
6
+ getUserIdOrDefault: () => string;
7
+ getUserIdOverrideFromLocalStorage: () => string | undefined;
8
+ getUserIdDefaultFromLocalStorage: () => string | undefined;
9
+ setUserIdDefaultInLocalStorage: (userId: string) => string;
10
+ setUserIdOverrideInLocalStorage: (userId: string) => string;
11
+ clearUserIdOverrideInLocalStorage: () => void;
12
+ isReady: boolean;
13
+ }
14
+ declare const UserIdentityProvider: React.FC<{
15
+ children: React.ReactNode;
16
+ }>;
17
+ declare const useUserIdentity: () => UserIdentityContextType;
18
+ //#endregion
19
+ export { UserIdentityContextType, UserIdentityProvider, useUserIdentity };
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcklkZW50aXR5Q29udGV4dC04a2ZLUVJGeC5kLnRzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250ZXh0cy91c2VySWRlbnRpdHlDb250ZXh0L3VzZXJJZGVudGl0eUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5leHBvcnQgaW50ZXJmYWNlIFVzZXJJZGVudGl0eUNvbnRleHRUeXBlIHtcbiAgICBpZGVudGlmeVVzZXI6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgZ2V0VXNlcklkT3JEZWZhdWx0OiAoKSA9PiBzdHJpbmc7XG4gICAgZ2V0VXNlcklkT3ZlcnJpZGVGcm9tTG9jYWxTdG9yYWdlOiAoKSA9PiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgZ2V0VXNlcklkRGVmYXVsdEZyb21Mb2NhbFN0b3JhZ2U6ICgpID0+IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBzZXRVc2VySWREZWZhdWx0SW5Mb2NhbFN0b3JhZ2U6ICh1c2VySWQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICAgIHNldFVzZXJJZE92ZXJyaWRlSW5Mb2NhbFN0b3JhZ2U6ICh1c2VySWQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICAgIGNsZWFyVXNlcklkT3ZlcnJpZGVJbkxvY2FsU3RvcmFnZTogKCkgPT4gdm9pZDtcbiAgICBpc1JlYWR5OiBib29sZWFuO1xufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgVXNlcklkZW50aXR5UHJvdmlkZXI6IFJlYWN0LkZDPHtcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufT47XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VVc2VySWRlbnRpdHk6ICgpID0+IFVzZXJJZGVudGl0eUNvbnRleHRUeXBlO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFDQSxJQUFXLDBCQUEwQixDQUFDLFdBQUcsUUFBQTtBQUN6QyxJQUFXLHVCQUF1QjtDQUFDO09BQUUsTUFBQTtPQUFBLE1BQUE7Q0FBQTtBQUNyQyxJQUFXLGtCQUFrQixDQUFDLFdBQU0sd0JBQUEifQ==
@@ -0,0 +1,20 @@
1
+ import React from "react";
2
+
3
+ //#region src/contexts/userIdentityContext/userIdentityContext.d.ts
4
+ interface UserIdentityContextType {
5
+ identifyUser: () => Promise<void>;
6
+ getUserIdOrDefault: () => string;
7
+ getUserIdOverrideFromLocalStorage: () => string | undefined;
8
+ getUserIdDefaultFromLocalStorage: () => string | undefined;
9
+ setUserIdDefaultInLocalStorage: (userId: string) => string;
10
+ setUserIdOverrideInLocalStorage: (userId: string) => string;
11
+ clearUserIdOverrideInLocalStorage: () => void;
12
+ isReady: boolean;
13
+ }
14
+ declare const UserIdentityProvider: React.FC<{
15
+ children: React.ReactNode;
16
+ }>;
17
+ declare const useUserIdentity: () => UserIdentityContextType;
18
+ //#endregion
19
+ export { UserIdentityContextType, UserIdentityProvider, useUserIdentity };
20
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcklkZW50aXR5Q29udGV4dC1EMm9GVkZ6by5kLmN0cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvY29udGV4dHMvdXNlcklkZW50aXR5Q29udGV4dC91c2VySWRlbnRpdHlDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuZXhwb3J0IGludGVyZmFjZSBVc2VySWRlbnRpdHlDb250ZXh0VHlwZSB7XG4gICAgaWRlbnRpZnlVc2VyOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgIGdldFVzZXJJZE9yRGVmYXVsdDogKCkgPT4gc3RyaW5nO1xuICAgIGdldFVzZXJJZE92ZXJyaWRlRnJvbUxvY2FsU3RvcmFnZTogKCkgPT4gc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIGdldFVzZXJJZERlZmF1bHRGcm9tTG9jYWxTdG9yYWdlOiAoKSA9PiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgc2V0VXNlcklkRGVmYXVsdEluTG9jYWxTdG9yYWdlOiAodXNlcklkOiBzdHJpbmcpID0+IHN0cmluZztcbiAgICBzZXRVc2VySWRPdmVycmlkZUluTG9jYWxTdG9yYWdlOiAodXNlcklkOiBzdHJpbmcpID0+IHN0cmluZztcbiAgICBjbGVhclVzZXJJZE92ZXJyaWRlSW5Mb2NhbFN0b3JhZ2U6ICgpID0+IHZvaWQ7XG4gICAgaXNSZWFkeTogYm9vbGVhbjtcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IFVzZXJJZGVudGl0eVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gICAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbn0+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlVXNlcklkZW50aXR5OiAoKSA9PiBVc2VySWRlbnRpdHlDb250ZXh0VHlwZTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsSUFBVywwQkFBMEIsQ0FBQyxXQUFHLFFBQUE7QUFDekMsSUFBVyx1QkFBdUI7Q0FBQztPQUFFLE1BQUE7T0FBQSxNQUFBO0NBQUE7QUFDckMsSUFBVyxrQkFBa0IsQ0FBQyxXQUFNLHdCQUFBIn0=
@@ -0,0 +1 @@
1
+ export { };
File without changes
@@ -0,0 +1,27 @@
1
+ //#region src/application/models/guards/utils.ts
2
+ /**
3
+ * Checks if an object has a property of a specific type
4
+ *
5
+ * @param obj - The object to check
6
+ * @param prop - The property name to check
7
+ * @param type - The expected type of the property
8
+ * @param isOptional - Whether the property is optional (defaults to false)
9
+ *
10
+ * @returns boolean indicating if the object has the property of the specified type
11
+ */
12
+ const hasPropertyOfType = (obj, prop, type, isOptional = false) => {
13
+ try {
14
+ if (obj == null || typeof obj !== "object") return false;
15
+ if (!(prop in obj)) return isOptional;
16
+ const value = obj[prop];
17
+ if (isOptional && value == null) return true;
18
+ if (type === "array") return Array.isArray(value);
19
+ return typeof value === type;
20
+ } catch (err) {
21
+ return false;
22
+ }
23
+ };
24
+
25
+ //#endregion
26
+ export { hasPropertyOfType };
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMtQVJtcFRoMU8uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy9ndWFyZHMvdXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDaGVja3MgaWYgYW4gb2JqZWN0IGhhcyBhIHByb3BlcnR5IG9mIGEgc3BlY2lmaWMgdHlwZVxuICpcbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIGNoZWNrXG4gKiBAcGFyYW0gcHJvcCAtIFRoZSBwcm9wZXJ0eSBuYW1lIHRvIGNoZWNrXG4gKiBAcGFyYW0gdHlwZSAtIFRoZSBleHBlY3RlZCB0eXBlIG9mIHRoZSBwcm9wZXJ0eVxuICogQHBhcmFtIGlzT3B0aW9uYWwgLSBXaGV0aGVyIHRoZSBwcm9wZXJ0eSBpcyBvcHRpb25hbCAoZGVmYXVsdHMgdG8gZmFsc2UpXG4gKlxuICogQHJldHVybnMgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBvYmplY3QgaGFzIHRoZSBwcm9wZXJ0eSBvZiB0aGUgc3BlY2lmaWVkIHR5cGVcbiAqL1xuZXhwb3J0IGNvbnN0IGhhc1Byb3BlcnR5T2ZUeXBlID0gPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICBvYmo6IHVua25vd24sXG4gIHByb3A6IGtleW9mIFQsXG4gIHR5cGU6ICdzdHJpbmcnIHwgJ251bWJlcicgfCAnYm9vbGVhbicgfCAnb2JqZWN0JyB8ICdhcnJheScsXG4gIGlzT3B0aW9uYWw6IGJvb2xlYW4gPSBmYWxzZSxcbik6IG9iaiBpcyBUID0+IHtcbiAgdHJ5IHtcbiAgICBpZiAob2JqID09IG51bGwgfHwgdHlwZW9mIG9iaiAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBJZiBwcm9wZXJ0eSBpcyBub3QgcHJlc2VudCwgaXQncyB2YWxpZCBmb3IgYW4gb3B0aW9uYWwgcHJvcGVydHlcbiAgICBpZiAoIShwcm9wIGluIG9iaikpIHtcbiAgICAgIHJldHVybiBpc09wdGlvbmFsO1xuICAgIH1cblxuICAgIGNvbnN0IHZhbHVlID0gKG9iaiBhcyBUKVtwcm9wXTtcblxuICAgIC8vIEZvciBvcHRpb25hbCBwcm9wZXJ0aWVzLCBudWxsIG9yIHVuZGVmaW5lZCB2YWx1ZXMgYXJlIHZhbGlkXG4gICAgaWYgKGlzT3B0aW9uYWwgJiYgdmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT09ICdhcnJheScpIHtcbiAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSB0eXBlO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBzd2FsbG93IHRoZSBlcnJvciBhcyBpdCBzaG91bGQgYmUgcmVwb3J0ZWQgaW4gbW9yZSBkZXRhaWwgYnkgdGhlIGNhbGxlclxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFVQSxNQUFhLHFCQUNYLEtBQ0EsTUFDQSxNQUNBLGFBQXNCLFVBQ1Q7QUFDYixLQUFJO0FBQ0YsTUFBSSxPQUFPLFFBQVEsT0FBTyxRQUFRLFNBQ2hDLFFBQU87QUFJVCxNQUFJLEVBQUUsUUFBUSxLQUNaLFFBQU87RUFHVCxNQUFNLFFBQVMsSUFBVTtBQUd6QixNQUFJLGNBQWMsU0FBUyxLQUN6QixRQUFPO0FBR1QsTUFBSSxTQUFTLFFBQ1gsUUFBTyxNQUFNLFFBQVEsTUFBTTtBQUc3QixTQUFPLE9BQU8sVUFBVTtVQUNqQixLQUFLO0FBRVosU0FBTyJ9
@@ -0,0 +1,15 @@
1
+ //#region src/application/models/guards/utils.d.ts
2
+ /**
3
+ * Checks if an object has a property of a specific type
4
+ *
5
+ * @param obj - The object to check
6
+ * @param prop - The property name to check
7
+ * @param type - The expected type of the property
8
+ * @param isOptional - Whether the property is optional (defaults to false)
9
+ *
10
+ * @returns boolean indicating if the object has the property of the specified type
11
+ */
12
+ declare const hasPropertyOfType: <T extends object>(obj: unknown, prop: keyof T, type: "string" | "number" | "boolean" | "object" | "array", isOptional?: boolean) => obj is T;
13
+ //#endregion
14
+ export { hasPropertyOfType };
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMtQjN4XzlKVFkuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy9ndWFyZHMvdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENoZWNrcyBpZiBhbiBvYmplY3QgaGFzIGEgcHJvcGVydHkgb2YgYSBzcGVjaWZpYyB0eXBlXG4gKlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gY2hlY2tcbiAqIEBwYXJhbSBwcm9wIC0gVGhlIHByb3BlcnR5IG5hbWUgdG8gY2hlY2tcbiAqIEBwYXJhbSB0eXBlIC0gVGhlIGV4cGVjdGVkIHR5cGUgb2YgdGhlIHByb3BlcnR5XG4gKiBAcGFyYW0gaXNPcHRpb25hbCAtIFdoZXRoZXIgdGhlIHByb3BlcnR5IGlzIG9wdGlvbmFsIChkZWZhdWx0cyB0byBmYWxzZSlcbiAqXG4gKiBAcmV0dXJucyBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIG9iamVjdCBoYXMgdGhlIHByb3BlcnR5IG9mIHRoZSBzcGVjaWZpZWQgdHlwZVxuICovXG5leHBvcnQgZGVjbGFyZSBjb25zdCBoYXNQcm9wZXJ0eU9mVHlwZTogPFQgZXh0ZW5kcyBvYmplY3Q+KG9iajogdW5rbm93biwgcHJvcDoga2V5b2YgVCwgdHlwZTogXCJzdHJpbmdcIiB8IFwibnVtYmVyXCIgfCBcImJvb2xlYW5cIiB8IFwib2JqZWN0XCIgfCBcImFycmF5XCIsIGlzT3B0aW9uYWw/OiBib29sZWFuKSA9PiBvYmogaXMgVDtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBLElBQUUsb0JBQUE7Q0FBQTtPQUFBO09BQUE7Q0FBQSJ9
@@ -0,0 +1,22 @@
1
+ import { UserEvent } from "./index-YrhxAGtH.js";
2
+ import { SearchResult } from "./search-DYVQuYti.js";
3
+ import { VariantInfo } from "./index-exSzn3SP.js";
4
+
5
+ //#region src/hooks/utils.d.ts
6
+ declare const isElementPartiallyVisible: (el?: HTMLDivElement | null) => boolean;
7
+ declare const createAppLoadedEvent: () => UserEvent;
8
+ declare const createVisitUserEvent: ({
9
+ variantInfo
10
+ }: {
11
+ variantInfo: VariantInfo;
12
+ }) => UserEvent | undefined;
13
+ declare const isWithinBusinessHours: (startTime: string, endTime: string, timeZone: string) => boolean;
14
+ declare enum SearchResultsState {
15
+ Loading = 0,
16
+ Results = 1,
17
+ NoResults = 2,
18
+ }
19
+ declare const getSearchResultsState: (isLoadingSearch: boolean, searchData: SearchResult | null) => SearchResultsState;
20
+ //#endregion
21
+ export { SearchResultsState, createAppLoadedEvent, createVisitUserEvent, getSearchResultsState, isElementPartiallyVisible, isWithinBusinessHours };
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMtQjhyQVRMb2MuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWFyY2hSZXN1bHQgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoXCI7XG5pbXBvcnQgeyBVc2VyRXZlbnQsIFZhcmlhbnRJbmZvIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHNcIjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsV0FBVyxlQUFlO0FBQ2xFLElBQVcsdUJBQXVCLENBQUMsV0FBVyxVQUFVO0FBQ3hELElBQVcsdUJBQXVCO0NBQUM7T0FBVztPQUFnQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxJQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsSUFBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVc7T0FBb0I7Q0FBbUIifQ==
@@ -0,0 +1,15 @@
1
+ //#region src/application/models/guards/utils.d.ts
2
+ /**
3
+ * Checks if an object has a property of a specific type
4
+ *
5
+ * @param obj - The object to check
6
+ * @param prop - The property name to check
7
+ * @param type - The expected type of the property
8
+ * @param isOptional - Whether the property is optional (defaults to false)
9
+ *
10
+ * @returns boolean indicating if the object has the property of the specified type
11
+ */
12
+ declare const hasPropertyOfType: <T extends object>(obj: unknown, prop: keyof T, type: "string" | "number" | "boolean" | "object" | "array", isOptional?: boolean) => obj is T;
13
+ //#endregion
14
+ export { hasPropertyOfType };
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMtQkxlNW9yZWguZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvYXBwbGljYXRpb24vbW9kZWxzL2d1YXJkcy91dGlscy5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2hlY2tzIGlmIGFuIG9iamVjdCBoYXMgYSBwcm9wZXJ0eSBvZiBhIHNwZWNpZmljIHR5cGVcbiAqXG4gKiBAcGFyYW0gb2JqIC0gVGhlIG9iamVjdCB0byBjaGVja1xuICogQHBhcmFtIHByb3AgLSBUaGUgcHJvcGVydHkgbmFtZSB0byBjaGVja1xuICogQHBhcmFtIHR5cGUgLSBUaGUgZXhwZWN0ZWQgdHlwZSBvZiB0aGUgcHJvcGVydHlcbiAqIEBwYXJhbSBpc09wdGlvbmFsIC0gV2hldGhlciB0aGUgcHJvcGVydHkgaXMgb3B0aW9uYWwgKGRlZmF1bHRzIHRvIGZhbHNlKVxuICpcbiAqIEByZXR1cm5zIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgb2JqZWN0IGhhcyB0aGUgcHJvcGVydHkgb2YgdGhlIHNwZWNpZmllZCB0eXBlXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGhhc1Byb3BlcnR5T2ZUeXBlOiA8VCBleHRlbmRzIG9iamVjdD4ob2JqOiB1bmtub3duLCBwcm9wOiBrZXlvZiBULCB0eXBlOiBcInN0cmluZ1wiIHwgXCJudW1iZXJcIiB8IFwiYm9vbGVhblwiIHwgXCJvYmplY3RcIiB8IFwiYXJyYXlcIiwgaXNPcHRpb25hbD86IGJvb2xlYW4pID0+IG9iaiBpcyBUO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUEsSUFBRSxvQkFBQTtDQUFBO09BQUE7T0FBQTtDQUFBIn0=
@@ -0,0 +1,92 @@
1
+ import { PLPAttributeCategory, UserEventCategory } from "@spiffy-ai/commerce-api-client";
2
+ import { v4 } from "uuid";
3
+
4
+ //#region src/hooks/utils.ts
5
+ const isElementPartiallyVisible = (el) => {
6
+ if (!el) return false;
7
+ const rect = el.getBoundingClientRect();
8
+ const windowHeight = window.innerHeight || document.documentElement.clientHeight;
9
+ const windowWidth = window.innerWidth || document.documentElement.clientWidth;
10
+ const verticallyVisible = Math.round(rect.top) < windowHeight && Math.round(rect.bottom) > 0;
11
+ const horizontallyVisible = Math.round(rect.left) < windowWidth && Math.round(rect.right) > 0;
12
+ return verticallyVisible && horizontallyVisible;
13
+ };
14
+ const createAppLoadedEvent = () => ({
15
+ eventId: v4(),
16
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
17
+ category: UserEventCategory.AppLoaded
18
+ });
19
+ const createVisitUserEvent = ({ variantInfo }) => {
20
+ if (variantInfo.variant === "pdp" && variantInfo.productId != null) return {
21
+ eventId: v4(),
22
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
23
+ category: UserEventCategory.PdpVisit,
24
+ attributes: {
25
+ productId: variantInfo.productId,
26
+ parentProductId: variantInfo.parentProductId ?? "",
27
+ url: variantInfo.url ?? ""
28
+ }
29
+ };
30
+ if (variantInfo.variant === "plp" && variantInfo.plpId != null) return {
31
+ eventId: v4(),
32
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
33
+ category: UserEventCategory.PlpVisit,
34
+ attributes: {
35
+ category: PLPAttributeCategory.Id,
36
+ attributes: { id: variantInfo.plpId }
37
+ }
38
+ };
39
+ if (variantInfo.variant === "page_visit") return {
40
+ eventId: v4(),
41
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
42
+ category: UserEventCategory.PageVisit,
43
+ attributes: {
44
+ url: variantInfo.url,
45
+ pageVisitCategory: variantInfo.pageVisitCategory
46
+ }
47
+ };
48
+ };
49
+ const parseTime = (time, timeZone) => {
50
+ const times = time.match(/^([0-1]?\d):([0-5]\d)(AM|PM)$/i);
51
+ const hours = times?.[1];
52
+ const minutes = times?.[2];
53
+ const period = times?.[3];
54
+ if (hours && minutes && period) {
55
+ const date = /* @__PURE__ */ new Date();
56
+ let adjustedHours = 0;
57
+ if (period.toUpperCase() === "PM" && hours !== "12") adjustedHours = parseInt(hours) + 12;
58
+ if (period.toUpperCase() === "AM" && hours !== "12") adjustedHours = parseInt(hours);
59
+ const formattedDate = `${date.toISOString().split("T")[0]}T${String(adjustedHours).padStart(2, "0")}:${minutes}:00`;
60
+ return /* @__PURE__ */ new Date(`${formattedDate}${timeZone}`);
61
+ }
62
+ };
63
+ const isWithinBusinessHours = (startTime, endTime, timeZone) => {
64
+ const start = parseTime(startTime, timeZone);
65
+ let end = parseTime(endTime, timeZone);
66
+ if (!start || !end) return false;
67
+ let now = /* @__PURE__ */ new Date();
68
+ if (end < start) {
69
+ end = new Date(end.getTime() + 1440 * 60 * 1e3);
70
+ now = new Date(now.getTime() + 1440 * 60 * 1e3);
71
+ }
72
+ if (end.getUTCDate() > start.getUTCDate()) {
73
+ const crossingMidnight = new Date(now.getTime() + 1440 * 60 * 1e3);
74
+ return start <= now || crossingMidnight <= end;
75
+ }
76
+ return now >= start && now <= end;
77
+ };
78
+ let SearchResultsState = /* @__PURE__ */ function(SearchResultsState$1) {
79
+ SearchResultsState$1[SearchResultsState$1["Loading"] = 0] = "Loading";
80
+ SearchResultsState$1[SearchResultsState$1["Results"] = 1] = "Results";
81
+ SearchResultsState$1[SearchResultsState$1["NoResults"] = 2] = "NoResults";
82
+ return SearchResultsState$1;
83
+ }({});
84
+ const getSearchResultsState = (isLoadingSearch, searchData) => {
85
+ if (isLoadingSearch) return SearchResultsState.Loading;
86
+ if (searchData) return SearchResultsState.Results;
87
+ return SearchResultsState.NoResults;
88
+ };
89
+
90
+ //#endregion
91
+ export { SearchResultsState, createAppLoadedEvent, createVisitUserEvent, getSearchResultsState, isElementPartiallyVisible, isWithinBusinessHours };
92
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMtQmN6NWtBZ1AuanMiLCJuYW1lcyI6WyJ1dWlkIl0sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFBMUEF0dHJpYnV0ZUNhdGVnb3J5LFxuICBVc2VyRXZlbnRDYXRlZ29yeSxcbn0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudFwiO1xuaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHMvYXBpL3NlYXJjaFwiO1xuaW1wb3J0IHsgVXNlckV2ZW50LCBWYXJpYW50SW5mbyB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzXCI7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSBcInV1aWRcIjtcblxuZXhwb3J0IGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGUgPSAoZWw/OiBIVE1MRGl2RWxlbWVudCB8IG51bGwpID0+IHtcbiAgaWYgKCFlbCkgcmV0dXJuIGZhbHNlO1xuXG4gIGNvbnN0IHJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgY29uc3Qgd2luZG93SGVpZ2h0ID1cbiAgICB3aW5kb3cuaW5uZXJIZWlnaHQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDtcbiAgY29uc3Qgd2luZG93V2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gIGNvbnN0IHZlcnRpY2FsbHlWaXNpYmxlID1cbiAgICBNYXRoLnJvdW5kKHJlY3QudG9wKSA8IHdpbmRvd0hlaWdodCAmJiBNYXRoLnJvdW5kKHJlY3QuYm90dG9tKSA+IDA7XG4gIGNvbnN0IGhvcml6b250YWxseVZpc2libGUgPVxuICAgIE1hdGgucm91bmQocmVjdC5sZWZ0KSA8IHdpbmRvd1dpZHRoICYmIE1hdGgucm91bmQocmVjdC5yaWdodCkgPiAwO1xuICByZXR1cm4gdmVydGljYWxseVZpc2libGUgJiYgaG9yaXpvbnRhbGx5VmlzaWJsZTtcbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVBcHBMb2FkZWRFdmVudCA9ICgpOiBVc2VyRXZlbnQgPT4gKHtcbiAgZXZlbnRJZDogdXVpZCgpLFxuICBjcmVhdGVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LkFwcExvYWRlZCxcbn0pO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlVmlzaXRVc2VyRXZlbnQgPSAoe1xuICB2YXJpYW50SW5mbyxcbn06IHtcbiAgdmFyaWFudEluZm86IFZhcmlhbnRJbmZvO1xufSk6IFVzZXJFdmVudCB8IHVuZGVmaW5lZCA9PiB7XG4gIC8vIHRoaXMgaXMgYSBwZHAgdmlzaXQgZXZlbnRcbiAgaWYgKHZhcmlhbnRJbmZvLnZhcmlhbnQgPT09IFwicGRwXCIgJiYgdmFyaWFudEluZm8ucHJvZHVjdElkICE9IG51bGwpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXZlbnRJZDogdXVpZCgpLFxuICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUGRwVmlzaXQsXG4gICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgIHByb2R1Y3RJZDogdmFyaWFudEluZm8ucHJvZHVjdElkLFxuICAgICAgICBwYXJlbnRQcm9kdWN0SWQ6IHZhcmlhbnRJbmZvLnBhcmVudFByb2R1Y3RJZCA/PyBcIlwiLFxuICAgICAgICB1cmw6IHZhcmlhbnRJbmZvLnVybCA/PyBcIlwiLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLy8gdGhpcyBpcyBhIHBscCB2aXNpdCBldmVudFxuICBpZiAodmFyaWFudEluZm8udmFyaWFudCA9PT0gXCJwbHBcIiAmJiB2YXJpYW50SW5mby5wbHBJZCAhPSBudWxsKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGV2ZW50SWQ6IHV1aWQoKSxcbiAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlBscFZpc2l0LFxuICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICBjYXRlZ29yeTogUExQQXR0cmlidXRlQ2F0ZWdvcnkuSWQsXG4gICAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgICBpZDogdmFyaWFudEluZm8ucGxwSWQsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBpZiAodmFyaWFudEluZm8udmFyaWFudCA9PT0gXCJwYWdlX3Zpc2l0XCIpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXZlbnRJZDogdXVpZCgpLFxuICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUGFnZVZpc2l0LFxuICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICB1cmw6IHZhcmlhbnRJbmZvLnVybCxcbiAgICAgICAgcGFnZVZpc2l0Q2F0ZWdvcnk6IHZhcmlhbnRJbmZvLnBhZ2VWaXNpdENhdGVnb3J5LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG4gIHJldHVybiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBwYXJzZVRpbWUgPSAodGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHRpbWVzID0gdGltZS5tYXRjaCgvXihbMC0xXT9cXGQpOihbMC01XVxcZCkoQU18UE0pJC9pKTtcbiAgY29uc3QgaG91cnMgPSB0aW1lcz8uWzFdO1xuICBjb25zdCBtaW51dGVzID0gdGltZXM/LlsyXTtcbiAgY29uc3QgcGVyaW9kID0gdGltZXM/LlszXTtcblxuICBpZiAoaG91cnMgJiYgbWludXRlcyAmJiBwZXJpb2QpIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcblxuICAgIC8vIEFkanVzdCBob3VycyBmb3IgQU0vUE1cbiAgICBsZXQgYWRqdXN0ZWRIb3VycyA9IDA7XG4gICAgaWYgKHBlcmlvZC50b1VwcGVyQ2FzZSgpID09PSBcIlBNXCIgJiYgaG91cnMgIT09IFwiMTJcIikge1xuICAgICAgYWRqdXN0ZWRIb3VycyA9IHBhcnNlSW50KGhvdXJzKSArIDEyO1xuICAgIH1cblxuICAgIGlmIChwZXJpb2QudG9VcHBlckNhc2UoKSA9PT0gXCJBTVwiICYmIGhvdXJzICE9PSBcIjEyXCIpIHtcbiAgICAgIGFkanVzdGVkSG91cnMgPSBwYXJzZUludChob3Vycyk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIHRoZSBkYXRlIHN0cmluZyB3aXRoIHRpbWUgem9uZVxuICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBgJHtkYXRlLnRvSVNPU3RyaW5nKCkuc3BsaXQoXCJUXCIpWzBdfVQke1N0cmluZyhcbiAgICAgIGFkanVzdGVkSG91cnNcbiAgICApLnBhZFN0YXJ0KDIsIFwiMFwiKX06JHttaW51dGVzfTowMGA7XG4gICAgcmV0dXJuIG5ldyBEYXRlKGAke2Zvcm1hdHRlZERhdGV9JHt0aW1lWm9uZX1gKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGlzV2l0aGluQnVzaW5lc3NIb3VycyA9IChcbiAgc3RhcnRUaW1lOiBzdHJpbmcsXG4gIGVuZFRpbWU6IHN0cmluZyxcbiAgdGltZVpvbmU6IHN0cmluZ1xuKSA9PiB7XG4gIC8vIFBhcnNlIHN0YXJ0IGFuZCBlbmQgdGltZXNcbiAgY29uc3Qgc3RhcnQgPSBwYXJzZVRpbWUoc3RhcnRUaW1lLCB0aW1lWm9uZSk7XG4gIGxldCBlbmQgPSBwYXJzZVRpbWUoZW5kVGltZSwgdGltZVpvbmUpO1xuXG4gIGlmICghc3RhcnQgfHwgIWVuZCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGxldCBub3cgPSBuZXcgRGF0ZSgpO1xuXG4gIC8vIElmIHRoZSBlbmQgZGF0ZSBpcyBncmVhdGVyIHRoYW4gdGhlIHN0YXJ0IGRhdGUsIGFkZCBhIGRheSB0byBib3RoIG9mIHRoZW1cbiAgLy8gVGhpcyBoYW5kbGVzIGNvbmZpZ3VyYXRpb25zIHN1Y2ggYXMgc3RhcnRUaW1lID0gMTA6MDBQTSBhbmQgZW5kVGltZSA9IDc6MDBBTVxuICBpZiAoZW5kIDwgc3RhcnQpIHtcbiAgICBlbmQgPSBuZXcgRGF0ZShlbmQuZ2V0VGltZSgpICsgMjQgKiA2MCAqIDYwICogMTAwMCk7XG4gICAgbm93ID0gbmV3IERhdGUobm93LmdldFRpbWUoKSArIDI0ICogNjAgKiA2MCAqIDEwMDApO1xuICB9XG5cbiAgLy8gSWYgdGhlIGRhdGUgY29udmVyc2lvbiBzaGlmdHMgdGhlIGVuZCBkYXRlIHRvIHRoZSBuZXh0IGRheSwgY29uc2lkZXIgY29tcGFyaW5nIGl0IGFjcm9zcyBtaWRuaWdodFxuICBpZiAoZW5kLmdldFVUQ0RhdGUoKSA+IHN0YXJ0LmdldFVUQ0RhdGUoKSkge1xuICAgIGNvbnN0IGNyb3NzaW5nTWlkbmlnaHQgPSBuZXcgRGF0ZShub3cuZ2V0VGltZSgpICsgMjQgKiA2MCAqIDYwICogMTAwMCk7XG4gICAgcmV0dXJuIHN0YXJ0IDw9IG5vdyB8fCBjcm9zc2luZ01pZG5pZ2h0IDw9IGVuZDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBjdXJyZW50IHRpbWUgZmFsbHMgYmV0d2VlbiBzdGFydCBhbmQgZW5kXG4gIHJldHVybiBub3cgPj0gc3RhcnQgJiYgbm93IDw9IGVuZDtcbn07XG5cbmV4cG9ydCBlbnVtIFNlYXJjaFJlc3VsdHNTdGF0ZSB7XG4gIExvYWRpbmcsXG4gIFJlc3VsdHMsXG4gIE5vUmVzdWx0cyxcbn1cblxuZXhwb3J0IGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZSA9IChcbiAgaXNMb2FkaW5nU2VhcmNoOiBib29sZWFuLFxuICBzZWFyY2hEYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsXG4pOiBTZWFyY2hSZXN1bHRzU3RhdGUgPT4ge1xuICBpZiAoaXNMb2FkaW5nU2VhcmNoKSB7XG4gICAgcmV0dXJuIFNlYXJjaFJlc3VsdHNTdGF0ZS5Mb2FkaW5nO1xuICB9XG4gIGlmIChzZWFyY2hEYXRhKSB7XG4gICAgcmV0dXJuIFNlYXJjaFJlc3VsdHNTdGF0ZS5SZXN1bHRzO1xuICB9XG4gIHJldHVybiBTZWFyY2hSZXN1bHRzU3RhdGUuTm9SZXN1bHRzO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQVFBLE1BQWEsNkJBQTZCLE9BQStCO0FBQ3ZFLEtBQUksQ0FBQyxHQUFJLFFBQU87Q0FFaEIsTUFBTSxPQUFPLEdBQUcsdUJBQXVCO0NBQ3ZDLE1BQU0sZUFDSixPQUFPLGVBQWUsU0FBUyxnQkFBZ0I7Q0FDakQsTUFBTSxjQUFjLE9BQU8sY0FBYyxTQUFTLGdCQUFnQjtDQUNsRSxNQUFNLG9CQUNKLEtBQUssTUFBTSxLQUFLLElBQUksR0FBRyxnQkFBZ0IsS0FBSyxNQUFNLEtBQUssT0FBTyxHQUFHO0NBQ25FLE1BQU0sc0JBQ0osS0FBSyxNQUFNLEtBQUssS0FBSyxHQUFHLGVBQWUsS0FBSyxNQUFNLEtBQUssTUFBTSxHQUFHO0FBQ2xFLFFBQU8scUJBQXFCOztBQUc5QixNQUFhLDhCQUF5QztDQUNwRCxTQUFTQSxJQUFNO0NBQ2YsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtDQUNuQyxVQUFVLGtCQUFrQjtDQUM3QjtBQUVELE1BQWEsd0JBQXdCLEVBQ25DLGtCQUcyQjtBQUUzQixLQUFJLFlBQVksWUFBWSxTQUFTLFlBQVksYUFBYSxLQUM1RCxRQUFPO0VBQ0wsU0FBU0EsSUFBTTtFQUNmLDRCQUFXLElBQUksTUFBTSxFQUFDLGFBQWE7RUFDbkMsVUFBVSxrQkFBa0I7RUFDNUIsWUFBWTtHQUNWLFdBQVcsWUFBWTtHQUN2QixpQkFBaUIsWUFBWSxtQkFBbUI7R0FDaEQsS0FBSyxZQUFZLE9BQU87R0FDekI7RUFDRjtBQUlILEtBQUksWUFBWSxZQUFZLFNBQVMsWUFBWSxTQUFTLEtBQ3hELFFBQU87RUFDTCxTQUFTQSxJQUFNO0VBQ2YsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtFQUNuQyxVQUFVLGtCQUFrQjtFQUM1QixZQUFZO0dBQ1YsVUFBVSxxQkFBcUI7R0FDL0IsWUFBWSxFQUNWLElBQUksWUFBWSxPQUNqQjtHQUNGO0VBQ0Y7QUFHSCxLQUFJLFlBQVksWUFBWSxhQUMxQixRQUFPO0VBQ0wsU0FBU0EsSUFBTTtFQUNmLDRCQUFXLElBQUksTUFBTSxFQUFDLGFBQWE7RUFDbkMsVUFBVSxrQkFBa0I7RUFDNUIsWUFBWTtHQUNWLEtBQUssWUFBWTtHQUNqQixtQkFBbUIsWUFBWTtHQUNoQztFQUNGOztBQUtMLE1BQU0sYUFBYSxNQUFjLGFBQXFCO0NBQ3BELE1BQU0sUUFBUSxLQUFLLE1BQU0saUNBQWlDO0NBQzFELE1BQU0sUUFBUSxRQUFRO0NBQ3RCLE1BQU0sVUFBVSxRQUFRO0NBQ3hCLE1BQU0sU0FBUyxRQUFRO0FBRXZCLEtBQUksU0FBUyxXQUFXLFFBQVE7RUFDOUIsTUFBTSx1QkFBTyxJQUFJLE1BQU07RUFHdkIsSUFBSSxnQkFBZ0I7QUFDcEIsTUFBSSxPQUFPLGFBQWEsS0FBSyxRQUFRLFVBQVUsS0FDN0MsaUJBQWdCLFNBQVMsTUFBTSxHQUFHO0FBR3BDLE1BQUksT0FBTyxhQUFhLEtBQUssUUFBUSxVQUFVLEtBQzdDLGlCQUFnQixTQUFTLE1BQU07RUFJakMsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLGFBQWEsQ0FBQyxNQUFNLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FDM0QsY0FDRCxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxRQUFRO0FBQzlCLHlCQUFPLElBQUksS0FBSyxHQUFHLGdCQUFnQixXQUFXOzs7QUFJbEQsTUFBYSx5QkFDWCxXQUNBLFNBQ0EsYUFDRztDQUVILE1BQU0sUUFBUSxVQUFVLFdBQVcsU0FBUztDQUM1QyxJQUFJLE1BQU0sVUFBVSxTQUFTLFNBQVM7QUFFdEMsS0FBSSxDQUFDLFNBQVMsQ0FBQyxJQUNiLFFBQU87Q0FHVCxJQUFJLHNCQUFNLElBQUksTUFBTTtBQUlwQixLQUFJLE1BQU0sT0FBTztBQUNmLFFBQU0sSUFBSSxLQUFLLElBQUksU0FBUyxHQUFHLE9BQVUsS0FBSyxJQUFLO0FBQ25ELFFBQU0sSUFBSSxLQUFLLElBQUksU0FBUyxHQUFHLE9BQVUsS0FBSyxJQUFLOztBQUlyRCxLQUFJLElBQUksWUFBWSxHQUFHLE1BQU0sWUFBWSxFQUFFO0VBQ3pDLE1BQU0sbUJBQW1CLElBQUksS0FBSyxJQUFJLFNBQVMsR0FBRyxPQUFVLEtBQUssSUFBSztBQUN0RSxTQUFPLFNBQVMsT0FBTyxvQkFBb0I7O0FBSTdDLFFBQU8sT0FBTyxTQUFTLE9BQU87O0FBR2hDLElBQVksb0VBQUw7QUFDTDtBQUNBO0FBQ0E7OztBQUdGLE1BQWEseUJBQ1gsaUJBQ0EsZUFDdUI7QUFDdkIsS0FBSSxnQkFDRixRQUFPLG1CQUFtQjtBQUU1QixLQUFJLFdBQ0YsUUFBTyxtQkFBbUI7QUFFNUIsUUFBTyxtQkFBbUIifQ==