@envive-ai/react-hooks 0.3.3 → 0.3.5

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 (610) hide show
  1. package/dist/_virtual/rolldown_runtime.cjs +2 -0
  2. package/dist/_virtual/rolldown_runtime.js +29 -0
  3. package/dist/application/commerce-api.cjs +12 -4
  4. package/dist/application/commerce-api.js +12 -4
  5. package/dist/application/models/api/userEvent.d.cts +4 -2
  6. package/dist/application/models/api/userEvent.d.ts +4 -2
  7. package/dist/application/models/chatElementDisplayLocationV3.cjs +24 -0
  8. package/dist/application/models/chatElementDisplayLocationV3.d.cts +21 -0
  9. package/dist/application/models/chatElementDisplayLocationV3.d.ts +21 -0
  10. package/dist/application/models/chatElementDisplayLocationV3.js +23 -0
  11. package/dist/application/models/colorsConfigV3.cjs +26 -0
  12. package/dist/application/models/colorsConfigV3.d.cts +22 -0
  13. package/dist/application/models/colorsConfigV3.d.ts +22 -0
  14. package/dist/application/models/colorsConfigV3.js +24 -0
  15. package/dist/application/models/featureGates.cjs +6 -1
  16. package/dist/application/models/featureGates.d.cts +6 -1
  17. package/dist/application/models/featureGates.d.ts +6 -1
  18. package/dist/application/models/featureGates.js +6 -1
  19. package/dist/application/models/frontendConfig.d.cts +4 -2
  20. package/dist/application/models/frontendConfig.d.ts +4 -2
  21. package/dist/application/models/frontendConfigV3.d.cts +14 -0
  22. package/dist/application/models/frontendConfigV3.d.ts +14 -0
  23. package/dist/application/models/guards/api/isApiFormResponse.cjs +1 -1
  24. package/dist/application/models/guards/api/isApiFormResponse.js +1 -1
  25. package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.cjs +1 -1
  26. package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.js +1 -1
  27. package/dist/application/models/guards/api/isApiOrderResponseAttributes.cjs +1 -1
  28. package/dist/application/models/guards/api/isApiOrderResponseAttributes.js +1 -1
  29. package/dist/application/models/guards/api/isApiPDPEventAttributes.cjs +2 -2
  30. package/dist/application/models/guards/api/isApiPDPEventAttributes.js +2 -2
  31. package/dist/application/models/guards/api/isApiProductResponseAttributes.cjs +1 -1
  32. package/dist/application/models/guards/api/isApiProductResponseAttributes.js +1 -1
  33. package/dist/application/models/guards/api/isApiResponse.cjs +1 -1
  34. package/dist/application/models/guards/api/isApiResponse.js +1 -1
  35. package/dist/application/models/index.cjs +3 -0
  36. package/dist/application/models/index.d.cts +4 -3
  37. package/dist/application/models/index.d.ts +4 -3
  38. package/dist/application/models/index.js +3 -2
  39. package/dist/application/models/utils/snakeToCamelTransformer.cjs +2 -1
  40. package/dist/application/models/utils/snakeToCamelTransformer.d.cts +7 -2
  41. package/dist/application/models/utils/snakeToCamelTransformer.d.ts +7 -2
  42. package/dist/application/models/utils/snakeToCamelTransformer.js +2 -2
  43. package/dist/application/utils/analyticsUtils.cjs +6 -5
  44. package/dist/application/utils/analyticsUtils.d.cts +1 -1
  45. package/dist/application/utils/analyticsUtils.d.ts +1 -1
  46. package/dist/application/utils/analyticsUtils.js +4 -3
  47. package/dist/application/utils/elementObserver.cjs +1 -1
  48. package/dist/application/utils/elementObserver.js +1 -1
  49. package/dist/application/utils/index.d.cts +1 -1
  50. package/dist/application/utils/index.d.ts +1 -1
  51. package/dist/application/utils/widgetTextFromApiWidgetTextResponse.cjs +14 -0
  52. package/dist/application/utils/widgetTextFromApiWidgetTextResponse.js +13 -0
  53. package/dist/application/utils/widgetTextRequestToApiRequest.cjs +30 -0
  54. package/dist/application/utils/widgetTextRequestToApiRequest.js +29 -0
  55. package/dist/atoms/amplitude/amplitudeTrackEventAtom.cjs +1 -1
  56. package/dist/atoms/amplitude/amplitudeTrackEventAtom.js +1 -1
  57. package/dist/atoms/app/index.cjs +6 -3
  58. package/dist/atoms/app/index.d.cts +3 -3
  59. package/dist/atoms/app/index.d.ts +3 -3
  60. package/dist/atoms/app/index.js +4 -5
  61. package/dist/atoms/app/variant.cjs +6 -1
  62. package/dist/atoms/app/variant.d.cts +21 -6
  63. package/dist/atoms/app/variant.d.ts +21 -6
  64. package/dist/atoms/app/variant.js +4 -2
  65. package/dist/atoms/chat/chatState.cjs +9 -4
  66. package/dist/atoms/chat/chatState.d.cts +25 -18
  67. package/dist/atoms/chat/chatState.d.ts +25 -18
  68. package/dist/atoms/chat/chatState.js +6 -3
  69. package/dist/atoms/chat/form.cjs +4 -4
  70. package/dist/atoms/chat/form.d.cts +2 -2
  71. package/dist/atoms/chat/form.d.ts +2 -2
  72. package/dist/atoms/chat/index.cjs +32 -30
  73. package/dist/atoms/chat/index.d.cts +5 -5
  74. package/dist/atoms/chat/index.d.ts +4 -4
  75. package/dist/atoms/chat/index.js +2 -2
  76. package/dist/atoms/chat/lastMessage.cjs +4 -4
  77. package/dist/atoms/chat/lastMessage.d.cts +2 -2
  78. package/dist/atoms/chat/lastMessage.d.ts +2 -2
  79. package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
  80. package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
  81. package/dist/atoms/chat/renderedWidgetRefs.d.cts +2 -2
  82. package/dist/atoms/chat/renderedWidgetRefs.d.ts +2 -2
  83. package/dist/atoms/chat/replies.cjs +9 -8
  84. package/dist/atoms/chat/replies.d.cts +3 -3
  85. package/dist/atoms/chat/replies.d.ts +3 -3
  86. package/dist/atoms/chat/replies.js +3 -2
  87. package/dist/atoms/chat/suggestions.cjs +6 -6
  88. package/dist/atoms/chat/suggestions.d.cts +2 -2
  89. package/dist/atoms/chat/suggestions.d.ts +2 -2
  90. package/dist/atoms/envive/enviveConfig.cjs +5 -12
  91. package/dist/atoms/envive/enviveConfig.js +5 -12
  92. package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
  93. package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
  94. package/dist/atoms/org/customerService.d.cts +6 -6
  95. package/dist/atoms/org/customerService.d.ts +6 -6
  96. package/dist/atoms/org/graphqlConfig.cjs +1 -3
  97. package/dist/atoms/org/graphqlConfig.d.cts +6 -9
  98. package/dist/atoms/org/graphqlConfig.d.ts +6 -9
  99. package/dist/atoms/org/graphqlConfig.js +2 -3
  100. package/dist/atoms/org/index.cjs +2 -3
  101. package/dist/atoms/org/index.d.cts +2 -2
  102. package/dist/atoms/org/index.d.ts +2 -2
  103. package/dist/atoms/org/index.js +2 -2
  104. package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
  105. package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
  106. package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
  107. package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
  108. package/dist/atoms/search/chatSearch.cjs +7 -7
  109. package/dist/atoms/search/chatSearch.d.cts +20 -18
  110. package/dist/atoms/search/chatSearch.d.ts +20 -18
  111. package/dist/atoms/search/productRetrievalAPI.cjs +1 -7
  112. package/dist/atoms/search/productRetrievalAPI.js +1 -7
  113. package/dist/atoms/search/productRetrievalAdapter.cjs +4 -4
  114. package/dist/atoms/search/productRetrievalAdapter.js +4 -4
  115. package/dist/atoms/search/searchAPI.cjs +1 -1
  116. package/dist/atoms/search/searchAPI.d.cts +15 -14
  117. package/dist/atoms/search/searchAPI.d.ts +15 -14
  118. package/dist/atoms/search/searchAPI.js +1 -1
  119. package/dist/atoms/search/types.d.cts +1 -1
  120. package/dist/atoms/search/types.d.ts +1 -1
  121. package/dist/atoms/search/utils.d.ts +1 -1
  122. package/dist/atoms/widget/chatPreviewLoading.cjs +23 -0
  123. package/dist/atoms/widget/chatPreviewLoading.d.cts +26 -0
  124. package/dist/atoms/widget/chatPreviewLoading.d.ts +26 -0
  125. package/dist/atoms/widget/chatPreviewLoading.js +22 -0
  126. package/dist/atoms/widget/index.cjs +3 -0
  127. package/dist/atoms/widget/index.d.cts +2 -0
  128. package/dist/atoms/widget/index.d.ts +2 -0
  129. package/dist/atoms/widget/index.js +3 -0
  130. package/dist/contexts/amplitudeContext/amplitudeContext.cjs +40 -227
  131. package/dist/contexts/amplitudeContext/amplitudeContext.d.cts +4 -39
  132. package/dist/contexts/amplitudeContext/amplitudeContext.d.ts +4 -39
  133. package/dist/contexts/amplitudeContext/amplitudeContext.js +44 -230
  134. package/dist/contexts/amplitudeContext/index.cjs +2 -1
  135. package/dist/contexts/amplitudeContext/index.d.cts +2 -1
  136. package/dist/contexts/amplitudeContext/index.d.ts +2 -1
  137. package/dist/contexts/amplitudeContext/index.js +2 -1
  138. package/dist/contexts/enviveConfigContext/enviveConfigContext.cjs +3 -2
  139. package/dist/contexts/enviveConfigContext/enviveConfigContext.d.cts +2 -1
  140. package/dist/contexts/enviveConfigContext/enviveConfigContext.d.ts +2 -1
  141. package/dist/contexts/enviveConfigContext/enviveConfigContext.js +3 -2
  142. package/dist/contexts/enviveContext/enviveContext.cjs +70 -16
  143. package/dist/contexts/enviveContext/enviveContext.d.cts +10 -1
  144. package/dist/contexts/enviveContext/enviveContext.d.ts +10 -1
  145. package/dist/contexts/enviveContext/enviveContext.js +72 -18
  146. package/dist/contexts/enviveContext/types.d.ts +1 -1
  147. package/dist/contexts/enviveCssContext/enviveCssContext.cjs +96 -24
  148. package/dist/contexts/enviveCssContext/enviveCssContext.js +96 -24
  149. package/dist/contexts/featureFlagContext/featureFlagContext.cjs +1 -1
  150. package/dist/contexts/featureFlagContext/featureFlagContext.js +1 -1
  151. package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.cjs +6 -8
  152. package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.d.cts +2 -2
  153. package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.d.ts +2 -2
  154. package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.js +6 -8
  155. package/dist/contexts/graphqlContext/graphqlContext.cjs +151 -8
  156. package/dist/contexts/graphqlContext/graphqlContext.d.cts +17 -5
  157. package/dist/contexts/graphqlContext/graphqlContext.d.ts +17 -5
  158. package/dist/contexts/graphqlContext/graphqlContext.js +151 -8
  159. package/dist/contexts/graphqlContext/index.d.cts +2 -2
  160. package/dist/contexts/graphqlContext/index.d.ts +2 -2
  161. package/dist/contexts/graphqlContext/mockV3Config.cjs +250 -0
  162. package/dist/contexts/graphqlContext/mockV3Config.js +249 -0
  163. package/dist/contexts/hardcopyContext/hardcopyContext.cjs +144 -24
  164. package/dist/contexts/hardcopyContext/hardcopyContext.d.cts +4 -3
  165. package/dist/contexts/hardcopyContext/hardcopyContext.d.ts +4 -3
  166. package/dist/contexts/hardcopyContext/hardcopyContext.js +145 -25
  167. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +7 -8
  168. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +8 -9
  169. package/dist/contexts/pageContext/index.cjs +1 -0
  170. package/dist/contexts/pageContext/index.d.cts +2 -2
  171. package/dist/contexts/pageContext/index.d.ts +2 -2
  172. package/dist/contexts/pageContext/index.js +2 -2
  173. package/dist/contexts/pageContext/mapping.cjs +95 -1
  174. package/dist/contexts/pageContext/mapping.d.cts +6 -3
  175. package/dist/contexts/pageContext/mapping.d.ts +6 -3
  176. package/dist/contexts/pageContext/mapping.js +94 -2
  177. package/dist/contexts/pageContext/pageContext.cjs +59 -11
  178. package/dist/contexts/pageContext/pageContext.d.cts +6 -2
  179. package/dist/contexts/pageContext/pageContext.d.ts +6 -2
  180. package/dist/contexts/pageContext/pageContext.js +61 -13
  181. package/dist/contexts/pageContext/types.d.cts +6 -2
  182. package/dist/contexts/pageContext/types.d.ts +6 -2
  183. package/dist/contexts/salesAgentContext/chatAPI.cjs +9 -3
  184. package/dist/contexts/salesAgentContext/chatAPI.d.cts +4 -1
  185. package/dist/contexts/salesAgentContext/chatAPI.d.ts +4 -1
  186. package/dist/contexts/salesAgentContext/chatAPI.js +9 -3
  187. package/dist/contexts/salesAgentContext/index.d.cts +2 -2
  188. package/dist/contexts/salesAgentContext/index.d.ts +2 -2
  189. package/dist/contexts/salesAgentContext/salesAgentContext.cjs +68 -26
  190. package/dist/contexts/salesAgentContext/salesAgentContext.d.cts +2 -2
  191. package/dist/contexts/salesAgentContext/salesAgentContext.d.ts +2 -2
  192. package/dist/contexts/salesAgentContext/salesAgentContext.js +67 -25
  193. package/dist/contexts/salesAgentContext/salesAgentService.cjs +49 -10
  194. package/dist/contexts/salesAgentContext/salesAgentService.js +47 -8
  195. package/dist/contexts/salesAgentContext/statusCodeError.cjs +14 -0
  196. package/dist/contexts/salesAgentContext/statusCodeError.js +13 -0
  197. package/dist/contexts/searchContext/searchContext.cjs +1 -1
  198. package/dist/contexts/searchContext/searchContext.js +1 -1
  199. package/dist/contexts/systemSettingsContext/systemSettingsContext.d.cts +2 -2
  200. package/dist/contexts/types.cjs +2 -13
  201. package/dist/contexts/types.d.cts +12 -16
  202. package/dist/contexts/types.d.ts +12 -16
  203. package/dist/contexts/types.js +3 -13
  204. package/dist/contexts/typesV3.cjs +128 -0
  205. package/dist/contexts/typesV3.d.cts +273 -0
  206. package/dist/contexts/typesV3.d.ts +273 -0
  207. package/dist/contexts/typesV3.js +116 -0
  208. package/dist/contexts/uiConfigContext/index.cjs +4 -0
  209. package/dist/contexts/uiConfigContext/index.d.cts +2 -0
  210. package/dist/contexts/uiConfigContext/index.d.ts +2 -0
  211. package/dist/contexts/uiConfigContext/index.js +3 -0
  212. package/dist/contexts/uiConfigContext/uiConfigContext.cjs +44 -0
  213. package/dist/contexts/uiConfigContext/uiConfigContext.d.cts +15 -0
  214. package/dist/contexts/uiConfigContext/uiConfigContext.d.ts +15 -0
  215. package/dist/contexts/uiConfigContext/uiConfigContext.js +42 -0
  216. package/dist/contexts/userIdentityContext/userIdentityContext.cjs +1 -1
  217. package/dist/contexts/userIdentityContext/userIdentityContext.js +1 -1
  218. package/dist/contexts/widgetConfigContext/index.cjs +4 -0
  219. package/dist/contexts/widgetConfigContext/index.d.cts +2 -0
  220. package/dist/contexts/widgetConfigContext/index.d.ts +2 -0
  221. package/dist/contexts/widgetConfigContext/index.js +3 -0
  222. package/dist/contexts/widgetConfigContext/widgetConfigContext.cjs +67 -0
  223. package/dist/contexts/widgetConfigContext/widgetConfigContext.d.cts +19 -0
  224. package/dist/contexts/widgetConfigContext/widgetConfigContext.d.ts +19 -0
  225. package/dist/contexts/widgetConfigContext/widgetConfigContext.js +65 -0
  226. package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.cts +1 -1
  227. package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.ts +1 -1
  228. package/dist/hooks/AppDetails/useAppDetails.cjs +2 -4
  229. package/dist/hooks/AppDetails/useAppDetails.js +3 -5
  230. package/dist/hooks/ChatToggle/useChatToggle.cjs +6 -5
  231. package/dist/hooks/ChatToggle/useChatToggle.d.cts +5 -5
  232. package/dist/hooks/ChatToggle/useChatToggle.d.ts +5 -5
  233. package/dist/hooks/ChatToggle/useChatToggle.js +3 -2
  234. package/dist/hooks/ElementObserver/useElementObserver.cjs +10 -10
  235. package/dist/hooks/ElementObserver/useElementObserver.js +10 -10
  236. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.cts +3 -3
  237. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +2 -2
  238. package/dist/hooks/GraphQLConfig/index.cjs +1 -1
  239. package/dist/hooks/GraphQLConfig/index.d.cts +2 -2
  240. package/dist/hooks/GraphQLConfig/index.d.ts +2 -2
  241. package/dist/hooks/GraphQLConfig/index.js +2 -2
  242. package/dist/hooks/GraphQLConfig/useGraphQLConfig.cjs +27 -24
  243. package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.cts +5 -4
  244. package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.ts +5 -4
  245. package/dist/hooks/GraphQLConfig/useGraphQLConfig.js +27 -24
  246. package/dist/hooks/Search/useSearch.cjs +11 -10
  247. package/dist/hooks/Search/useSearch.js +7 -6
  248. package/dist/hooks/Search/useSearchInput.cjs +4 -4
  249. package/dist/hooks/Search/useSearchInput.js +1 -1
  250. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.cjs +5 -4
  251. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.cts +1 -1
  252. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.ts +1 -1
  253. package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.js +3 -2
  254. package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.cjs +3 -2
  255. package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.js +3 -2
  256. package/dist/hooks/utils.d.cts +1 -1
  257. package/dist/merchants/domInsertion.cjs +1 -1
  258. package/dist/merchants/domInsertion.d.cts +1 -1
  259. package/dist/merchants/domInsertion.d.ts +1 -1
  260. package/dist/merchants/domInsertion.js +1 -1
  261. package/dist/node_modules/classnames/index.cjs +52 -0
  262. package/dist/node_modules/classnames/index.js +49 -0
  263. package/dist/packages/components-v3/dist/ChatHeader/ChatHeader.cjs +2 -0
  264. package/dist/packages/components-v3/dist/ChatHeader/ChatHeader.js +4 -0
  265. package/dist/packages/components-v3/dist/ChatHeader/components/CloseButton.cjs +16 -0
  266. package/dist/packages/components-v3/dist/ChatHeader/components/CloseButton.js +17 -0
  267. package/dist/packages/components-v3/dist/ChatHeader/components/Handle.cjs +6 -0
  268. package/dist/packages/components-v3/dist/ChatHeader/components/Handle.js +8 -0
  269. package/dist/packages/components-v3/dist/ChatHeader/components/Layout.cjs +4 -0
  270. package/dist/packages/components-v3/dist/ChatHeader/components/Layout.js +6 -0
  271. package/dist/packages/components-v3/dist/ChatHeader/components/Logo.cjs +3 -0
  272. package/dist/packages/components-v3/dist/ChatHeader/components/Logo.js +5 -0
  273. package/dist/packages/components-v3/dist/ChatHeader/components/Toggle.cjs +7 -0
  274. package/dist/packages/components-v3/dist/ChatHeader/components/Toggle.js +9 -0
  275. package/dist/packages/components-v3/dist/ChatHeader/components/ToggleItem.cjs +6 -0
  276. package/dist/packages/components-v3/dist/ChatHeader/components/ToggleItem.js +8 -0
  277. package/dist/packages/components-v3/dist/ChatHeader/components/index.cjs +6 -0
  278. package/dist/packages/components-v3/dist/ChatHeader/components/index.js +8 -0
  279. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetCloseButtonProperties.cjs +22 -0
  280. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetCloseButtonProperties.js +23 -0
  281. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetHandleProperties.cjs +58 -0
  282. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetHandleProperties.js +59 -0
  283. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetLayoutProperties.cjs +8 -0
  284. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetLayoutProperties.js +9 -0
  285. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleOptionProperties.cjs +1 -0
  286. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleOptionProperties.js +3 -0
  287. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleProperties.cjs +12 -0
  288. package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleProperties.js +13 -0
  289. package/dist/packages/components-v3/dist/ChatHeader/index.cjs +2 -0
  290. package/dist/packages/components-v3/dist/ChatHeader/index.js +4 -0
  291. package/dist/packages/components-v3/dist/ChatHeader/types/index.cjs +11 -0
  292. package/dist/packages/components-v3/dist/ChatHeader/types/index.js +10 -0
  293. package/dist/packages/components-v3/dist/Container/Container.cjs +11 -0
  294. package/dist/packages/components-v3/dist/Container/Container.js +12 -0
  295. package/dist/packages/components-v3/dist/Container/hooks/useGetCenterContentProperties.cjs +1 -0
  296. package/dist/packages/components-v3/dist/Container/hooks/useGetCenterContentProperties.js +3 -0
  297. package/dist/packages/components-v3/dist/Container/hooks/useGetFluidProperties.cjs +1 -0
  298. package/dist/packages/components-v3/dist/Container/hooks/useGetFluidProperties.js +3 -0
  299. package/dist/packages/components-v3/dist/Container/index.cjs +1 -0
  300. package/dist/packages/components-v3/dist/Container/index.js +3 -0
  301. package/dist/packages/components-v3/dist/Image/Image.cjs +16 -0
  302. package/dist/packages/components-v3/dist/Image/Image.js +17 -0
  303. package/dist/packages/components-v3/dist/Image/hooks/useGetAccessibilityProperties.cjs +1 -0
  304. package/dist/packages/components-v3/dist/Image/hooks/useGetAccessibilityProperties.js +3 -0
  305. package/dist/packages/components-v3/dist/Image/hooks/useGetAspectRatioProperties.cjs +1 -0
  306. package/dist/packages/components-v3/dist/Image/hooks/useGetAspectRatioProperties.js +3 -0
  307. package/dist/packages/components-v3/dist/Image/hooks/useGetObjectFitProperties.cjs +1 -0
  308. package/dist/packages/components-v3/dist/Image/hooks/useGetObjectFitProperties.js +3 -0
  309. package/dist/packages/components-v3/dist/Image/hooks/useGetRoundedProperties.cjs +1 -0
  310. package/dist/packages/components-v3/dist/Image/hooks/useGetRoundedProperties.js +3 -0
  311. package/dist/packages/components-v3/dist/Image/hooks/useGetSkeletonProperties.cjs +1 -0
  312. package/dist/packages/components-v3/dist/Image/hooks/useGetSkeletonProperties.js +3 -0
  313. package/dist/packages/components-v3/dist/Image/hooks/useGetWidthProperties.cjs +1 -0
  314. package/dist/packages/components-v3/dist/Image/hooks/useGetWidthProperties.js +3 -0
  315. package/dist/packages/components-v3/dist/Image/hooks/useHandleImageLoading.cjs +1 -0
  316. package/dist/packages/components-v3/dist/Image/hooks/useHandleImageLoading.js +3 -0
  317. package/dist/packages/components-v3/dist/ImageGallery/ImageGallery.cjs +2 -0
  318. package/dist/packages/components-v3/dist/ImageGallery/ImageGallery.js +4 -0
  319. package/dist/packages/components-v3/dist/ImageGallery/components/ImageItem.cjs +2 -0
  320. package/dist/packages/components-v3/dist/ImageGallery/components/ImageItem.js +4 -0
  321. package/dist/packages/components-v3/dist/ImageGallery/components/Layout.cjs +15 -0
  322. package/dist/packages/components-v3/dist/ImageGallery/components/Layout.js +16 -0
  323. package/dist/packages/components-v3/dist/ImageGallery/components/NormalLayout.cjs +4 -0
  324. package/dist/packages/components-v3/dist/ImageGallery/components/NormalLayout.js +4 -0
  325. package/dist/packages/components-v3/dist/ImageGallery/components/OverlappedLayout.cjs +1 -0
  326. package/dist/packages/components-v3/dist/ImageGallery/components/OverlappedLayout.js +3 -0
  327. package/dist/packages/components-v3/dist/ImageGallery/components/index.cjs +4 -0
  328. package/dist/packages/components-v3/dist/ImageGallery/components/index.js +6 -0
  329. package/dist/packages/components-v3/dist/ImageGallery/hooks/useGetContainerProperties.cjs +1 -0
  330. package/dist/packages/components-v3/dist/ImageGallery/hooks/useGetContainerProperties.js +3 -0
  331. package/dist/packages/components-v3/dist/ImageGallery/index.cjs +2 -0
  332. package/dist/packages/components-v3/dist/ImageGallery/index.js +4 -0
  333. package/dist/packages/components-v3/dist/ImageGallery/types/types.cjs +13 -0
  334. package/dist/packages/components-v3/dist/ImageGallery/types/types.js +12 -0
  335. package/dist/packages/components-v3/dist/PromptButton/PromptButton.cjs +12 -0
  336. package/dist/packages/components-v3/dist/PromptButton/PromptButton.js +13 -0
  337. package/dist/packages/components-v3/dist/PromptButton/components/Icon.cjs +1 -0
  338. package/dist/packages/components-v3/dist/PromptButton/components/Icon.js +3 -0
  339. package/dist/packages/components-v3/dist/PromptButton/components/Label.cjs +3 -0
  340. package/dist/packages/components-v3/dist/PromptButton/components/Label.js +5 -0
  341. package/dist/packages/components-v3/dist/PromptButton/components/Layout.cjs +12 -0
  342. package/dist/packages/components-v3/dist/PromptButton/components/Layout.js +13 -0
  343. package/dist/packages/components-v3/dist/PromptButton/components/Loading.cjs +9 -0
  344. package/dist/packages/components-v3/dist/PromptButton/components/Loading.js +10 -0
  345. package/dist/packages/components-v3/dist/PromptButton/components/index.cjs +4 -0
  346. package/dist/packages/components-v3/dist/PromptButton/components/index.js +6 -0
  347. package/dist/packages/components-v3/dist/PromptButton/hooks/useGetBoldTextProperties.cjs +1 -0
  348. package/dist/packages/components-v3/dist/PromptButton/hooks/useGetBoldTextProperties.js +3 -0
  349. package/dist/packages/components-v3/dist/PromptButton/hooks/useGetLayoutBaseProperties.cjs +8 -0
  350. package/dist/packages/components-v3/dist/PromptButton/hooks/useGetLayoutBaseProperties.js +9 -0
  351. package/dist/packages/components-v3/dist/PromptButton/index.cjs +2 -0
  352. package/dist/packages/components-v3/dist/PromptButton/index.js +4 -0
  353. package/dist/packages/components-v3/dist/PromptButton/types/index.cjs +13 -0
  354. package/dist/packages/components-v3/dist/PromptButton/types/index.js +12 -0
  355. package/dist/packages/components-v3/dist/PromptCarousel/PromptCarousel.cjs +12 -0
  356. package/dist/packages/components-v3/dist/PromptCarousel/PromptCarousel.js +14 -0
  357. package/dist/packages/components-v3/dist/PromptCarousel/components/BlockScrollContainer.cjs +9 -0
  358. package/dist/packages/components-v3/dist/PromptCarousel/components/BlockScrollContainer.js +10 -0
  359. package/dist/packages/components-v3/dist/PromptCarousel/components/ButtonContainerRow.cjs +11 -0
  360. package/dist/packages/components-v3/dist/PromptCarousel/components/ButtonContainerRow.js +12 -0
  361. package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithBlockScroll.cjs +4 -0
  362. package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithBlockScroll.js +6 -0
  363. package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithRowScroll.cjs +4 -0
  364. package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithRowScroll.js +6 -0
  365. package/dist/packages/components-v3/dist/PromptCarousel/components/index.cjs +3 -0
  366. package/dist/packages/components-v3/dist/PromptCarousel/components/index.js +5 -0
  367. package/dist/packages/components-v3/dist/PromptCarousel/hooks/index.cjs +5 -0
  368. package/dist/packages/components-v3/dist/PromptCarousel/hooks/index.js +7 -0
  369. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useButtonScrollPosition.cjs +1 -0
  370. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useButtonScrollPosition.js +3 -0
  371. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselAnimation.cjs +3 -0
  372. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselAnimation.js +5 -0
  373. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselButtons.cjs +1 -0
  374. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselButtons.js +3 -0
  375. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselRefs.cjs +1 -0
  376. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselRefs.js +3 -0
  377. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useHorizontalScrollAnimation.cjs +1 -0
  378. package/dist/packages/components-v3/dist/PromptCarousel/hooks/useHorizontalScrollAnimation.js +3 -0
  379. package/dist/packages/components-v3/dist/PromptCarousel/index.cjs +2 -0
  380. package/dist/packages/components-v3/dist/PromptCarousel/index.js +4 -0
  381. package/dist/packages/components-v3/dist/PromptCarousel/types/types.cjs +19 -0
  382. package/dist/packages/components-v3/dist/PromptCarousel/types/types.js +17 -0
  383. package/dist/packages/components-v3/dist/Stack/Stack.cjs +36 -0
  384. package/dist/packages/components-v3/dist/Stack/Stack.js +36 -0
  385. package/dist/packages/components-v3/dist/Stack/hooks/useFormatStackChildren.cjs +27 -0
  386. package/dist/packages/components-v3/dist/Stack/hooks/useFormatStackChildren.js +26 -0
  387. package/dist/packages/components-v3/dist/Stack/hooks/useGetAlignProperties.cjs +20 -0
  388. package/dist/packages/components-v3/dist/Stack/hooks/useGetAlignProperties.js +19 -0
  389. package/dist/packages/components-v3/dist/Stack/hooks/useGetDirectionProperties.cjs +19 -0
  390. package/dist/packages/components-v3/dist/Stack/hooks/useGetDirectionProperties.js +18 -0
  391. package/dist/packages/components-v3/dist/Stack/hooks/useGetGapProperties.cjs +16 -0
  392. package/dist/packages/components-v3/dist/Stack/hooks/useGetGapProperties.js +15 -0
  393. package/dist/packages/components-v3/dist/Stack/hooks/useGetJustifyProperties.cjs +21 -0
  394. package/dist/packages/components-v3/dist/Stack/hooks/useGetJustifyProperties.js +20 -0
  395. package/dist/packages/components-v3/dist/Stack/hooks/useGetStyleProperties.cjs +38 -0
  396. package/dist/packages/components-v3/dist/Stack/hooks/useGetStyleProperties.js +38 -0
  397. package/dist/packages/components-v3/dist/Stack/hooks/useGetWrapProperties.cjs +13 -0
  398. package/dist/packages/components-v3/dist/Stack/hooks/useGetWrapProperties.js +12 -0
  399. package/dist/packages/components-v3/dist/Stack/index.cjs +1 -0
  400. package/dist/packages/components-v3/dist/Stack/index.js +3 -0
  401. package/dist/packages/components-v3/dist/Stack/utils/constants.cjs +42 -0
  402. package/dist/packages/components-v3/dist/Stack/utils/constants.js +41 -0
  403. package/dist/packages/components-v3/dist/Tokens/index.cjs +11 -0
  404. package/dist/packages/components-v3/dist/Tokens/index.js +13 -0
  405. package/dist/packages/components-v3/dist/Typography/Typography.cjs +15 -0
  406. package/dist/packages/components-v3/dist/Typography/Typography.js +16 -0
  407. package/dist/packages/components-v3/dist/Typography/hooks/useGetAccessibilityAttributes.cjs +1 -0
  408. package/dist/packages/components-v3/dist/Typography/hooks/useGetAccessibilityAttributes.js +3 -0
  409. package/dist/packages/components-v3/dist/Typography/hooks/useGetAlignProperties.cjs +1 -0
  410. package/dist/packages/components-v3/dist/Typography/hooks/useGetAlignProperties.js +3 -0
  411. package/dist/packages/components-v3/dist/Typography/hooks/useGetColorProperties.cjs +1 -0
  412. package/dist/packages/components-v3/dist/Typography/hooks/useGetColorProperties.js +3 -0
  413. package/dist/packages/components-v3/dist/Typography/hooks/useGetNoWrapProperties.cjs +1 -0
  414. package/dist/packages/components-v3/dist/Typography/hooks/useGetNoWrapProperties.js +3 -0
  415. package/dist/packages/components-v3/dist/Typography/hooks/useGetNumberOfLinesProperties.cjs +1 -0
  416. package/dist/packages/components-v3/dist/Typography/hooks/useGetNumberOfLinesProperties.js +3 -0
  417. package/dist/packages/components-v3/dist/Typography/hooks/useGetVariantProperties.cjs +1 -0
  418. package/dist/packages/components-v3/dist/Typography/hooks/useGetVariantProperties.js +3 -0
  419. package/dist/packages/components-v3/dist/Typography/index.cjs +1 -0
  420. package/dist/packages/components-v3/dist/Typography/index.js +3 -0
  421. package/dist/packages/components-v3/dist/WelcomeMessage/WelcomeMessage.cjs +2 -0
  422. package/dist/packages/components-v3/dist/WelcomeMessage/WelcomeMessage.js +4 -0
  423. package/dist/packages/components-v3/dist/WelcomeMessage/components/Container.cjs +14 -0
  424. package/dist/packages/components-v3/dist/WelcomeMessage/components/Container.js +15 -0
  425. package/dist/packages/components-v3/dist/WelcomeMessage/components/SparkleIcon.cjs +3 -0
  426. package/dist/packages/components-v3/dist/WelcomeMessage/components/SparkleIcon.js +5 -0
  427. package/dist/packages/components-v3/dist/WelcomeMessage/components/Text.cjs +3 -0
  428. package/dist/packages/components-v3/dist/WelcomeMessage/components/Text.js +5 -0
  429. package/dist/packages/components-v3/dist/WelcomeMessage/components/Title.cjs +3 -0
  430. package/dist/packages/components-v3/dist/WelcomeMessage/components/Title.js +5 -0
  431. package/dist/packages/components-v3/dist/WelcomeMessage/components/index.cjs +4 -0
  432. package/dist/packages/components-v3/dist/WelcomeMessage/components/index.js +6 -0
  433. package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetContainerProperties.cjs +1 -0
  434. package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetContainerProperties.js +3 -0
  435. package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetSparkleIconProperties.cjs +1 -0
  436. package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetSparkleIconProperties.js +3 -0
  437. package/dist/packages/components-v3/dist/WelcomeMessage/index.cjs +2 -0
  438. package/dist/packages/components-v3/dist/WelcomeMessage/index.js +4 -0
  439. package/dist/packages/components-v3/dist/WelcomeMessage/types/types.cjs +14 -0
  440. package/dist/packages/components-v3/dist/WelcomeMessage/types/types.js +14 -0
  441. package/dist/packages/components-v3/dist/WidgetWrapper/WidgetWrapper.cjs +12 -0
  442. package/dist/packages/components-v3/dist/WidgetWrapper/WidgetWrapper.js +13 -0
  443. package/dist/packages/components-v3/dist/WidgetWrapper/hooks/useGetWrapperProperties.cjs +1 -0
  444. package/dist/packages/components-v3/dist/WidgetWrapper/hooks/useGetWrapperProperties.js +3 -0
  445. package/dist/packages/components-v3/dist/WidgetWrapper/index.cjs +2 -0
  446. package/dist/packages/components-v3/dist/WidgetWrapper/index.js +4 -0
  447. package/dist/packages/components-v3/dist/WidgetWrapper/types/types.cjs +13 -0
  448. package/dist/packages/components-v3/dist/WidgetWrapper/types/types.js +12 -0
  449. package/dist/packages/components-v3/dist/src/models/colorsConfig.cjs +26 -0
  450. package/dist/packages/components-v3/dist/src/models/colorsConfig.js +25 -0
  451. package/dist/packages/components-v3/dist/tokens/aspectRatio/aspectRatio.cjs +16 -0
  452. package/dist/packages/components-v3/dist/tokens/aspectRatio/aspectRatio.js +17 -0
  453. package/dist/packages/components-v3/dist/tokens/breakpoints/breakpoints.cjs +25 -0
  454. package/dist/packages/components-v3/dist/tokens/breakpoints/breakpoints.js +23 -0
  455. package/dist/packages/components-v3/dist/tokens/colors/colors.cjs +51 -0
  456. package/dist/packages/components-v3/dist/tokens/colors/colors.js +51 -0
  457. package/dist/packages/components-v3/dist/tokens/radius/radius.cjs +64 -0
  458. package/dist/packages/components-v3/dist/tokens/radius/radius.js +65 -0
  459. package/dist/packages/components-v3/dist/tokens/theme/theme.cjs +13 -0
  460. package/dist/packages/components-v3/dist/tokens/theme/theme.js +12 -0
  461. package/dist/packages/components-v3/dist/tokens/typography/fontFamily.cjs +25 -0
  462. package/dist/packages/components-v3/dist/tokens/typography/fontFamily.js +25 -0
  463. package/dist/packages/components-v3/dist/tokens/typography/fontSize.cjs +37 -0
  464. package/dist/packages/components-v3/dist/tokens/typography/fontSize.js +38 -0
  465. package/dist/packages/components-v3/dist/tokens/typography/fontWeight.cjs +17 -0
  466. package/dist/packages/components-v3/dist/tokens/typography/fontWeight.js +18 -0
  467. package/dist/packages/components-v3/dist/tokens/typography/letterSpacing.cjs +15 -0
  468. package/dist/packages/components-v3/dist/tokens/typography/letterSpacing.js +16 -0
  469. package/dist/packages/components-v3/dist/tokens/typography/lineHeight.cjs +31 -0
  470. package/dist/packages/components-v3/dist/tokens/typography/lineHeight.js +32 -0
  471. package/dist/packages/components-v3/dist/tokens/typography/typography.cjs +5 -0
  472. package/dist/packages/components-v3/dist/tokens/typography/typography.js +7 -0
  473. package/dist/packages/components-v3/dist/tokens/utils.cjs +7 -0
  474. package/dist/packages/components-v3/dist/tokens/utils.js +6 -0
  475. package/dist/packages/components-v3/dist/utils/useCheckIsMobile.cjs +1 -0
  476. package/dist/packages/components-v3/dist/utils/useCheckIsMobile.js +3 -0
  477. package/dist/packages/components-v3/dist/utils/useResponsiveValue.cjs +57 -0
  478. package/dist/packages/components-v3/dist/utils/useResponsiveValue.js +56 -0
  479. package/dist/packages/icons/dist/FourPointStar.cjs +8 -0
  480. package/dist/packages/icons/dist/FourPointStar.js +9 -0
  481. package/dist/packages/icons/dist/IconCloseRounded.cjs +22 -0
  482. package/dist/packages/icons/dist/IconCloseRounded.js +22 -0
  483. package/dist/packages/icons/dist/IconCloseSharp.cjs +31 -0
  484. package/dist/packages/icons/dist/IconCloseSharp.js +31 -0
  485. package/dist/packages/icons/dist/IconCloseTransparent.cjs +24 -0
  486. package/dist/packages/icons/dist/IconCloseTransparent.js +24 -0
  487. package/dist/packages/icons/dist/Sparkles.cjs +8 -0
  488. package/dist/packages/icons/dist/Sparkles.js +9 -0
  489. package/dist/packages/icons/dist/_virtual/rolldown_runtime.cjs +28 -0
  490. package/dist/packages/icons/dist/_virtual/rolldown_runtime.js +26 -0
  491. package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.development.cjs +697 -0
  492. package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.development.js +697 -0
  493. package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.production.min.cjs +44 -0
  494. package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.production.min.js +44 -0
  495. package/dist/packages/icons/dist/node_modules/react/cjs/react.development.cjs +1529 -0
  496. package/dist/packages/icons/dist/node_modules/react/cjs/react.development.js +1529 -0
  497. package/dist/packages/icons/dist/node_modules/react/cjs/react.production.min.cjs +330 -0
  498. package/dist/packages/icons/dist/node_modules/react/cjs/react.production.min.js +330 -0
  499. package/dist/packages/icons/dist/node_modules/react/index.cjs +14 -0
  500. package/dist/packages/icons/dist/node_modules/react/index.js +14 -0
  501. package/dist/packages/icons/dist/node_modules/react/jsx-runtime.cjs +14 -0
  502. package/dist/packages/icons/dist/node_modules/react/jsx-runtime.js +14 -0
  503. package/dist/services/amplitudeService/amplitudeService.cjs +204 -0
  504. package/dist/services/amplitudeService/amplitudeService.d.cts +75 -0
  505. package/dist/services/amplitudeService/amplitudeService.d.ts +75 -0
  506. package/dist/services/amplitudeService/amplitudeService.js +202 -0
  507. package/dist/services/amplitudeService/index.cjs +4 -0
  508. package/dist/services/amplitudeService/index.d.cts +2 -0
  509. package/dist/services/amplitudeService/index.d.ts +2 -0
  510. package/dist/services/amplitudeService/index.js +3 -0
  511. package/dist/services/enviveConfigService/enviveConfigService.cjs +36 -0
  512. package/dist/services/enviveConfigService/enviveConfigService.d.cts +43 -0
  513. package/dist/services/enviveConfigService/enviveConfigService.d.ts +43 -0
  514. package/dist/services/enviveConfigService/enviveConfigService.js +36 -0
  515. package/dist/services/enviveConfigService/index.cjs +3 -0
  516. package/dist/services/enviveConfigService/index.d.cts +2 -0
  517. package/dist/services/enviveConfigService/index.d.ts +2 -0
  518. package/dist/services/enviveConfigService/index.js +3 -0
  519. package/dist/types/customerService.cjs +20 -0
  520. package/dist/types/customerService.js +19 -0
  521. package/dist/types/enviveConfig.d.cts +29 -0
  522. package/dist/types/enviveConfig.d.ts +29 -0
  523. package/dist/types/index.d.cts +2 -1
  524. package/dist/types/index.d.ts +2 -1
  525. package/package.json +36 -8
  526. package/src/application/commerce-api.ts +14 -1
  527. package/src/application/models/api/userEvent.ts +3 -1
  528. package/src/application/models/api/widgetText.ts +9 -0
  529. package/src/application/models/api/widgetTextRequest.ts +10 -0
  530. package/src/application/models/chatElementDisplayLocationV3.ts +18 -0
  531. package/src/application/models/colorsConfigV3.ts +26 -0
  532. package/src/application/models/featureGates.ts +6 -0
  533. package/src/application/models/frontendConfig.ts +5 -0
  534. package/src/application/models/frontendConfigV3.ts +10 -0
  535. package/src/application/models/guards/api/isApiPDPEventAttributes.ts +5 -1
  536. package/src/application/models/index.ts +1 -0
  537. package/src/application/models/utils/snakeToCamelTransformer.ts +1 -1
  538. package/src/application/utils/elementObserver.ts +2 -2
  539. package/src/application/utils/widgetTextFromApiWidgetTextResponse.ts +30 -0
  540. package/src/application/utils/widgetTextRequestToApiRequest.ts +45 -0
  541. package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +1 -8
  542. package/src/atoms/app/index.ts +9 -3
  543. package/src/atoms/app/variant.ts +8 -2
  544. package/src/atoms/chat/chatState.ts +10 -2
  545. package/src/atoms/envive/enviveConfig.ts +5 -11
  546. package/src/atoms/org/graphqlConfig.ts +0 -1
  547. package/src/atoms/search/productRetrievalAPI.ts +0 -8
  548. package/src/atoms/search/productRetrievalAdapter.ts +6 -10
  549. package/src/atoms/widget/chatPreviewLoading.ts +36 -0
  550. package/src/atoms/widget/index.ts +1 -0
  551. package/src/contexts/amplitudeContext/__tests__/amplitudeContext.test.tsx +196 -187
  552. package/src/contexts/amplitudeContext/amplitudeContext.tsx +56 -334
  553. package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +3 -0
  554. package/src/contexts/enviveContext/enviveContext.tsx +103 -27
  555. package/src/contexts/enviveCssContext/enviveCssContext.tsx +121 -22
  556. package/src/contexts/featureFlagServiceContext/featureFlagServiceContext.tsx +12 -11
  557. package/src/contexts/graphqlContext/graphqlContext.tsx +250 -13
  558. package/src/contexts/graphqlContext/mockV3Config.ts +250 -0
  559. package/src/contexts/hardcopyContext/hardcopyContext.tsx +159 -21
  560. package/src/contexts/newOrgConfigContext/__tests__/newOrgConfigContext.test.tsx +6 -6
  561. package/src/contexts/newOrgConfigContext/newOrgConfigContext.tsx +5 -13
  562. package/src/contexts/pageContext/__tests__/pageContext.test.tsx +141 -75
  563. package/src/contexts/pageContext/mapping.ts +188 -2
  564. package/src/contexts/pageContext/pageContext.tsx +68 -14
  565. package/src/contexts/pageContext/types.ts +5 -2
  566. package/src/contexts/salesAgentContext/chatAPI.ts +10 -0
  567. package/src/contexts/salesAgentContext/salesAgentContext.tsx +104 -45
  568. package/src/contexts/salesAgentContext/salesAgentService.ts +91 -4
  569. package/src/contexts/salesAgentContext/statusCodeError.ts +10 -0
  570. package/src/contexts/searchContext/__tests__/searchContext.test.tsx +8 -2
  571. package/src/contexts/types.ts +15 -19
  572. package/src/contexts/typesV3.ts +348 -0
  573. package/src/contexts/uiConfigContext/__tests__/uiConfigContext.test.tsx +329 -0
  574. package/src/contexts/uiConfigContext/index.ts +1 -0
  575. package/src/contexts/uiConfigContext/uiConfigContext.tsx +44 -0
  576. package/src/contexts/widgetConfigContext/__tests__/widgetConfigContext.test.tsx +512 -0
  577. package/src/contexts/widgetConfigContext/index.ts +1 -0
  578. package/src/contexts/widgetConfigContext/widgetConfigContext.tsx +84 -0
  579. package/src/hooks/AppDetails/useAppDetails.ts +2 -2
  580. package/src/hooks/ChatToggle/useChatToggle.ts +4 -4
  581. package/src/hooks/ElementObserver/useElementObserver.ts +9 -9
  582. package/src/hooks/GraphQLConfig/useGraphQLConfig.ts +22 -21
  583. package/src/hooks/Search/__tests__/useSearch.test.tsx +15 -6
  584. package/src/hooks/Search/useSearch.tsx +6 -5
  585. package/src/merchants/domInsertion.ts +0 -16
  586. package/src/services/amplitudeService/__tests__/amplitudeService.test.ts +558 -0
  587. package/src/services/amplitudeService/amplitudeService.ts +324 -0
  588. package/src/services/amplitudeService/index.ts +1 -0
  589. package/src/services/enviveConfigService/enviveConfigService.ts +72 -0
  590. package/src/services/enviveConfigService/index.ts +1 -0
  591. package/src/types/enviveConfig.ts +27 -0
  592. package/src/types/index.ts +1 -0
  593. package/dist/hooks/ChatToggleAnalytics/index.cjs +0 -3
  594. package/dist/hooks/ChatToggleAnalytics/index.d.cts +0 -2
  595. package/dist/hooks/ChatToggleAnalytics/index.d.ts +0 -2
  596. package/dist/hooks/ChatToggleAnalytics/index.js +0 -3
  597. package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.cjs +0 -19
  598. package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.d.cts +0 -9
  599. package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.d.ts +0 -9
  600. package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.js +0 -18
  601. package/src/application/utils/cdnUtils.ts +0 -8
  602. package/src/config/divIds.ts +0 -31
  603. package/src/config/locators/components/chat/entrypoints.ts +0 -13
  604. package/src/config/locators/components/chat/preview.ts +0 -12
  605. package/src/config/locators/components/report-issue.ts +0 -21
  606. package/src/config/socialProofClasses.ts +0 -12
  607. package/src/events/registerAnalyticsListeners.ts +0 -44
  608. package/src/hooks/ChatToggleAnalytics/index.ts +0 -1
  609. package/src/hooks/ChatToggleAnalytics/useChatToggleAnalytics.ts +0 -15
  610. package/src/types/FilterAttribute.ts +0 -32
@@ -1,16 +1,27 @@
1
+ import { isApiPDPAttributes } from "../../application/models/guards/api/isApiPDPEventAttributes.js";
2
+ import { isApiQueryTypedAttributes } from "../../application/models/guards/api/isApiQueryTypedEventAttributes.js";
3
+ import { isApiSearchAttributes } from "../../application/models/guards/api/isApiSearchEventAttributes.js";
4
+ import { isApiSuggestionClickedAttributes } from "../../application/models/guards/api/isApiSuggestionClickedEventAttributes.js";
5
+ import { isApiFormSubmittedResponseAttributes } from "../../application/models/guards/api/isApiFormSubmittedResponseAttributes.js";
6
+ import { isApiPLPEventAttributes, isApiPLPIdAttribute } from "../../application/models/guards/api/isApiPLPEventAttributes.js";
1
7
  import { VariantTypeEnum } from "../../application/models/variantInfo/variantInfo.js";
2
8
  import "../../application/models/index.js";
9
+ import { PageVisitCategory, UserEventCategory } from "@spiffy-ai/commerce-api-client";
3
10
 
4
11
  //#region src/contexts/pageContext/mapping.ts
5
12
  const mapUrlResolverResponseToVariantInfo = (url, response) => {
6
13
  if (response.variant_type === VariantTypeEnum.Pdp && "pdp_attributes" in response.specific_details) return {
7
14
  variantType: VariantTypeEnum.Pdp,
8
15
  productId: response.specific_details.pdp_attributes.product_id ?? "",
16
+ collections: response.specific_details.collections ?? [],
17
+ numberOfReviews: response.specific_details.number_of_reviews ?? 0,
18
+ merchantTags: response.specific_details.merchant_tags ?? [],
9
19
  url
10
20
  };
11
21
  if (response.variant_type === VariantTypeEnum.Plp && "plp_attributes" in response.specific_details) return {
12
22
  variantType: VariantTypeEnum.Plp,
13
23
  plpId: response.specific_details.plp_attributes?.attributes?.id ?? "",
24
+ topCategory: response.specific_details.top_category ?? "",
14
25
  url
15
26
  };
16
27
  if (response.variant_type === VariantTypeEnum.PageVisit) return {
@@ -19,7 +30,88 @@ const mapUrlResolverResponseToVariantInfo = (url, response) => {
19
30
  };
20
31
  throw new Error("Invalid variant type");
21
32
  };
33
+ const isApiPageVisitAttributes = (data) => {
34
+ if (data == null || typeof data !== "object") return false;
35
+ if (!("url" in data) || typeof data.url !== "string") return false;
36
+ if (!("page_visit_category" in data) || typeof data.page_visit_category !== "string" || !Object.values(PageVisitCategory).includes(data.page_visit_category)) return false;
37
+ return true;
38
+ };
39
+ const mapApiUserEventToUserEvent = (userEvent) => {
40
+ if (!userEvent) return;
41
+ if ((userEvent.category === UserEventCategory.PdpVisit || userEvent.category === UserEventCategory.AddToCart) && isApiPDPAttributes(userEvent.attributes)) return {
42
+ eventId: userEvent.event_id,
43
+ createdAt: userEvent.created_at,
44
+ category: userEvent.category,
45
+ attributes: {
46
+ productId: userEvent.attributes.product_id,
47
+ parentProductId: userEvent.attributes.parent_product_id !== null ? userEvent.attributes.parent_product_id : "",
48
+ url: userEvent.attributes.url
49
+ }
50
+ };
51
+ if (userEvent.category === UserEventCategory.PlpVisit && isApiPLPEventAttributes(userEvent.attributes)) {
52
+ if (isApiPLPIdAttribute(userEvent.attributes.attributes)) return {
53
+ eventId: userEvent.event_id,
54
+ createdAt: userEvent.created_at,
55
+ category: UserEventCategory.PlpVisit,
56
+ attributes: {
57
+ category: userEvent.attributes.category,
58
+ attributes: { id: userEvent.attributes.attributes.id }
59
+ }
60
+ };
61
+ }
62
+ if (userEvent.category === UserEventCategory.QueryTyped && isApiQueryTypedAttributes(userEvent.attributes)) return {
63
+ eventId: userEvent.event_id,
64
+ createdAt: userEvent.created_at,
65
+ category: UserEventCategory.QueryTyped,
66
+ attributes: { query: userEvent.attributes.query }
67
+ };
68
+ if (userEvent.category === UserEventCategory.Search && isApiSearchAttributes(userEvent.attributes)) return {
69
+ eventId: userEvent.event_id,
70
+ createdAt: userEvent.created_at,
71
+ category: UserEventCategory.Search,
72
+ attributes: {
73
+ searchTerm: userEvent.attributes.search_term,
74
+ selectedFilters: userEvent.attributes.selected_filters
75
+ }
76
+ };
77
+ if (userEvent.category === UserEventCategory.SuggestionClicked && isApiSuggestionClickedAttributes(userEvent.attributes)) return {
78
+ eventId: userEvent.event_id,
79
+ createdAt: userEvent.created_at,
80
+ category: UserEventCategory.SuggestionClicked,
81
+ attributes: { suggestionId: userEvent.attributes.suggestion_id }
82
+ };
83
+ if (userEvent.category === UserEventCategory.PageVisit && isApiPageVisitAttributes(userEvent.attributes)) return {
84
+ eventId: userEvent.event_id,
85
+ createdAt: userEvent.created_at,
86
+ category: UserEventCategory.PageVisit,
87
+ attributes: {
88
+ url: userEvent.attributes.url,
89
+ pageVisitCategory: userEvent.attributes.page_visit_category
90
+ }
91
+ };
92
+ if (userEvent.category === UserEventCategory.FormSubmitted && isApiFormSubmittedResponseAttributes(userEvent.attributes)) return {
93
+ eventId: userEvent.event_id,
94
+ createdAt: userEvent.created_at,
95
+ category: UserEventCategory.FormSubmitted,
96
+ attributes: {
97
+ filledSchema: { ...userEvent.attributes.filled_schema },
98
+ formResponseId: userEvent.attributes.form_response_id,
99
+ formType: userEvent.attributes.form_type
100
+ }
101
+ };
102
+ if (userEvent.category === UserEventCategory.AppLoaded) return {
103
+ eventId: userEvent.event_id,
104
+ createdAt: userEvent.created_at,
105
+ category: UserEventCategory.AppLoaded
106
+ };
107
+ if (userEvent.category === UserEventCategory.AppUnloaded) return {
108
+ eventId: userEvent.event_id,
109
+ createdAt: userEvent.created_at,
110
+ category: UserEventCategory.AppUnloaded
111
+ };
112
+ throw new Error(`Invalid user event category: ${userEvent.category}`);
113
+ };
22
114
 
23
115
  //#endregion
24
- export { mapUrlResolverResponseToVariantInfo };
25
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGluZy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvcGFnZUNvbnRleHQvbWFwcGluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVcmxSZXNvbHZlclJlc3BvbnNlIH0gZnJvbSAnc3JjL2F0b21zL2FwcC92YXJpYW50JztcblxuaW1wb3J0IHsgVmFyaWFudFR5cGVFbnVtIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5cbmltcG9ydCB7IFBhZ2VWYXJpYW50SW5mbywgVmlzaXRQYWdlVmFyaWFudEluZm8gfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvID0gKFxuICB1cmw6IHN0cmluZyxcbiAgcmVzcG9uc2U6IFVybFJlc29sdmVyUmVzcG9uc2UsXG4pOiBQYWdlVmFyaWFudEluZm8gPT4ge1xuICBpZiAoXG4gICAgcmVzcG9uc2UudmFyaWFudF90eXBlID09PSBWYXJpYW50VHlwZUVudW0uUGRwICYmXG4gICAgJ3BkcF9hdHRyaWJ1dGVzJyBpbiByZXNwb25zZS5zcGVjaWZpY19kZXRhaWxzXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICB2YXJpYW50VHlwZTogVmFyaWFudFR5cGVFbnVtLlBkcCxcbiAgICAgIHByb2R1Y3RJZDogcmVzcG9uc2Uuc3BlY2lmaWNfZGV0YWlscy5wZHBfYXR0cmlidXRlcy5wcm9kdWN0X2lkID8/ICcnLFxuICAgICAgdXJsLFxuICAgIH07XG4gIH1cbiAgaWYgKFxuICAgIHJlc3BvbnNlLnZhcmlhbnRfdHlwZSA9PT0gVmFyaWFudFR5cGVFbnVtLlBscCAmJlxuICAgICdwbHBfYXR0cmlidXRlcycgaW4gcmVzcG9uc2Uuc3BlY2lmaWNfZGV0YWlsc1xuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlRW51bS5QbHAsXG4gICAgICBwbHBJZDogcmVzcG9uc2Uuc3BlY2lmaWNfZGV0YWlscy5wbHBfYXR0cmlidXRlcz8uYXR0cmlidXRlcz8uaWQgPz8gJycsXG4gICAgICB1cmwsXG4gICAgfTtcbiAgfVxuICBpZiAocmVzcG9uc2UudmFyaWFudF90eXBlID09PSBWYXJpYW50VHlwZUVudW0uUGFnZVZpc2l0KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGFnZVZpc2l0LFxuICAgICAgdXJsLFxuICAgIH0gYXMgVmlzaXRQYWdlVmFyaWFudEluZm87XG4gIH1cbiAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHZhcmlhbnQgdHlwZScpO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQU1BLE1BQWEsdUNBQ1gsS0FDQSxhQUNvQjtBQUNwQixLQUNFLFNBQVMsaUJBQWlCLGdCQUFnQixPQUMxQyxvQkFBb0IsU0FBUyxpQkFFN0IsUUFBTztFQUNMLGFBQWEsZ0JBQWdCO0VBQzdCLFdBQVcsU0FBUyxpQkFBaUIsZUFBZSxjQUFjO0VBQ2xFO0VBQ0Q7QUFFSCxLQUNFLFNBQVMsaUJBQWlCLGdCQUFnQixPQUMxQyxvQkFBb0IsU0FBUyxpQkFFN0IsUUFBTztFQUNMLGFBQWEsZ0JBQWdCO0VBQzdCLE9BQU8sU0FBUyxpQkFBaUIsZ0JBQWdCLFlBQVksTUFBTTtFQUNuRTtFQUNEO0FBRUgsS0FBSSxTQUFTLGlCQUFpQixnQkFBZ0IsVUFDNUMsUUFBTztFQUNMLGFBQWEsZ0JBQWdCO0VBQzdCO0VBQ0Q7QUFFSCxPQUFNLElBQUksTUFBTSx1QkFBdUIifQ==
116
+ export { mapApiUserEventToUserEvent, mapUrlResolverResponseToVariantInfo };
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwcGluZy5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvcGFnZUNvbnRleHQvbWFwcGluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVcmxSZXNvbHZlclJlc3BvbnNlIH0gZnJvbSAnc3JjL2F0b21zL2FwcC92YXJpYW50JztcbmltcG9ydCB7XG4gIFVzZXJFdmVudCBhcyBBcGlVc2VyRXZlbnQsXG4gIFBhZ2VWaXNpdENhdGVnb3J5LFxuICBVc2VyRXZlbnRDYXRlZ29yeSxcbn0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudFR5cGVFbnVtIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgeyBpc0FwaVBEUEF0dHJpYnV0ZXMgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2d1YXJkcy9hcGkvaXNBcGlQRFBFdmVudEF0dHJpYnV0ZXMnO1xuaW1wb3J0IHtcbiAgaXNBcGlQTFBFdmVudEF0dHJpYnV0ZXMsXG4gIGlzQXBpUExQSWRBdHRyaWJ1dGUsXG59IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvZ3VhcmRzL2FwaS9pc0FwaVBMUEV2ZW50QXR0cmlidXRlcyc7XG5pbXBvcnQgeyBpc0FwaVF1ZXJ5VHlwZWRBdHRyaWJ1dGVzIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9ndWFyZHMvYXBpL2lzQXBpUXVlcnlUeXBlZEV2ZW50QXR0cmlidXRlcyc7XG5pbXBvcnQgeyBpc0FwaVNlYXJjaEF0dHJpYnV0ZXMgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2d1YXJkcy9hcGkvaXNBcGlTZWFyY2hFdmVudEF0dHJpYnV0ZXMnO1xuaW1wb3J0IHsgaXNBcGlTdWdnZXN0aW9uQ2xpY2tlZEF0dHJpYnV0ZXMgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2d1YXJkcy9hcGkvaXNBcGlTdWdnZXN0aW9uQ2xpY2tlZEV2ZW50QXR0cmlidXRlcyc7XG5pbXBvcnQgeyBpc0FwaUZvcm1TdWJtaXR0ZWRSZXNwb25zZUF0dHJpYnV0ZXMgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2d1YXJkcy9hcGkvaXNBcGlGb3JtU3VibWl0dGVkUmVzcG9uc2VBdHRyaWJ1dGVzJztcblxuaW1wb3J0IHsgUGFnZVZhcmlhbnRJbmZvLCBWaXNpdFBhZ2VWYXJpYW50SW5mbyB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgbWFwVXJsUmVzb2x2ZXJSZXNwb25zZVRvVmFyaWFudEluZm8gPSAoXG4gIHVybDogc3RyaW5nLFxuICByZXNwb25zZTogVXJsUmVzb2x2ZXJSZXNwb25zZSxcbik6IFBhZ2VWYXJpYW50SW5mbyA9PiB7XG4gIGlmIChcbiAgICByZXNwb25zZS52YXJpYW50X3R5cGUgPT09IFZhcmlhbnRUeXBlRW51bS5QZHAgJiZcbiAgICAncGRwX2F0dHJpYnV0ZXMnIGluIHJlc3BvbnNlLnNwZWNpZmljX2RldGFpbHNcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGRwLFxuICAgICAgcHJvZHVjdElkOiByZXNwb25zZS5zcGVjaWZpY19kZXRhaWxzLnBkcF9hdHRyaWJ1dGVzLnByb2R1Y3RfaWQgPz8gJycsXG4gICAgICBjb2xsZWN0aW9uczogcmVzcG9uc2Uuc3BlY2lmaWNfZGV0YWlscy5jb2xsZWN0aW9ucyA/PyBbXSxcbiAgICAgIG51bWJlck9mUmV2aWV3czogcmVzcG9uc2Uuc3BlY2lmaWNfZGV0YWlscy5udW1iZXJfb2ZfcmV2aWV3cyA/PyAwLFxuICAgICAgbWVyY2hhbnRUYWdzOiByZXNwb25zZS5zcGVjaWZpY19kZXRhaWxzLm1lcmNoYW50X3RhZ3MgPz8gW10sXG4gICAgICB1cmwsXG4gICAgfTtcbiAgfVxuICBpZiAoXG4gICAgcmVzcG9uc2UudmFyaWFudF90eXBlID09PSBWYXJpYW50VHlwZUVudW0uUGxwICYmXG4gICAgJ3BscF9hdHRyaWJ1dGVzJyBpbiByZXNwb25zZS5zcGVjaWZpY19kZXRhaWxzXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICB2YXJpYW50VHlwZTogVmFyaWFudFR5cGVFbnVtLlBscCxcbiAgICAgIHBscElkOiByZXNwb25zZS5zcGVjaWZpY19kZXRhaWxzLnBscF9hdHRyaWJ1dGVzPy5hdHRyaWJ1dGVzPy5pZCA/PyAnJyxcbiAgICAgIHRvcENhdGVnb3J5OiByZXNwb25zZS5zcGVjaWZpY19kZXRhaWxzLnRvcF9jYXRlZ29yeSA/PyAnJyxcbiAgICAgIHVybCxcbiAgICB9O1xuICB9XG4gIGlmIChyZXNwb25zZS52YXJpYW50X3R5cGUgPT09IFZhcmlhbnRUeXBlRW51bS5QYWdlVmlzaXQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlRW51bS5QYWdlVmlzaXQsXG4gICAgICB1cmwsXG4gICAgfSBhcyBWaXNpdFBhZ2VWYXJpYW50SW5mbztcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFyaWFudCB0eXBlJyk7XG59O1xuXG5jb25zdCBpc0FwaVBhZ2VWaXNpdEF0dHJpYnV0ZXMgPSAoXG4gIGRhdGE6IHVua25vd24sXG4pOiBkYXRhIGlzIHsgdXJsOiBzdHJpbmc7IHBhZ2VfdmlzaXRfY2F0ZWdvcnk6IFBhZ2VWaXNpdENhdGVnb3J5IH0gPT4ge1xuICBpZiAoZGF0YSA9PSBudWxsIHx8IHR5cGVvZiBkYXRhICE9PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmICghKCd1cmwnIGluIGRhdGEpIHx8IHR5cGVvZiBkYXRhLnVybCAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpZiAoXG4gICAgISgncGFnZV92aXNpdF9jYXRlZ29yeScgaW4gZGF0YSkgfHxcbiAgICB0eXBlb2YgZGF0YS5wYWdlX3Zpc2l0X2NhdGVnb3J5ICE9PSAnc3RyaW5nJyB8fFxuICAgICFPYmplY3QudmFsdWVzKFBhZ2VWaXNpdENhdGVnb3J5KS5pbmNsdWRlcyhkYXRhLnBhZ2VfdmlzaXRfY2F0ZWdvcnkgYXMgUGFnZVZpc2l0Q2F0ZWdvcnkpXG4gICkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufTtcblxuZXhwb3J0IGNvbnN0IG1hcEFwaVVzZXJFdmVudFRvVXNlckV2ZW50ID0gKFxuICB1c2VyRXZlbnQ6IEFwaVVzZXJFdmVudCB8IHVuZGVmaW5lZCxcbik6IFVzZXJFdmVudCB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmICghdXNlckV2ZW50KSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICAvLyBIYW5kbGUgUGRwVmlzaXQgYW5kIEFkZFRvQ2FydCAodGhleSBzaGFyZSB0aGUgc2FtZSBhdHRyaWJ1dGVzIHN0cnVjdHVyZSlcbiAgaWYgKFxuICAgICh1c2VyRXZlbnQuY2F0ZWdvcnkgPT09IFVzZXJFdmVudENhdGVnb3J5LlBkcFZpc2l0IHx8XG4gICAgICB1c2VyRXZlbnQuY2F0ZWdvcnkgPT09IFVzZXJFdmVudENhdGVnb3J5LkFkZFRvQ2FydCkgJiZcbiAgICBpc0FwaVBEUEF0dHJpYnV0ZXModXNlckV2ZW50LmF0dHJpYnV0ZXMpXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICBldmVudElkOiB1c2VyRXZlbnQuZXZlbnRfaWQsXG4gICAgICBjcmVhdGVkQXQ6IHVzZXJFdmVudC5jcmVhdGVkX2F0LFxuICAgICAgY2F0ZWdvcnk6IHVzZXJFdmVudC5jYXRlZ29yeSxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgcHJvZHVjdElkOiB1c2VyRXZlbnQuYXR0cmlidXRlcy5wcm9kdWN0X2lkLFxuICAgICAgICBwYXJlbnRQcm9kdWN0SWQ6XG4gICAgICAgICAgdXNlckV2ZW50LmF0dHJpYnV0ZXMucGFyZW50X3Byb2R1Y3RfaWQgIT09IG51bGxcbiAgICAgICAgICAgID8gdXNlckV2ZW50LmF0dHJpYnV0ZXMucGFyZW50X3Byb2R1Y3RfaWRcbiAgICAgICAgICAgIDogJycsXG4gICAgICAgIHVybDogdXNlckV2ZW50LmF0dHJpYnV0ZXMudXJsLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLy8gSGFuZGxlIFBscFZpc2l0XG4gIGlmIChcbiAgICB1c2VyRXZlbnQuY2F0ZWdvcnkgPT09IFVzZXJFdmVudENhdGVnb3J5LlBscFZpc2l0ICYmXG4gICAgaXNBcGlQTFBFdmVudEF0dHJpYnV0ZXModXNlckV2ZW50LmF0dHJpYnV0ZXMpXG4gICkge1xuICAgIGlmIChpc0FwaVBMUElkQXR0cmlidXRlKHVzZXJFdmVudC5hdHRyaWJ1dGVzLmF0dHJpYnV0ZXMpKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBldmVudElkOiB1c2VyRXZlbnQuZXZlbnRfaWQsXG4gICAgICAgIGNyZWF0ZWRBdDogdXNlckV2ZW50LmNyZWF0ZWRfYXQsXG4gICAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5QbHBWaXNpdCxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGNhdGVnb3J5OiB1c2VyRXZlbnQuYXR0cmlidXRlcy5jYXRlZ29yeSxcbiAgICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgICBpZDogdXNlckV2ZW50LmF0dHJpYnV0ZXMuYXR0cmlidXRlcy5pZCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICAvLyBIYW5kbGUgUXVlcnlUeXBlZFxuICBpZiAoXG4gICAgdXNlckV2ZW50LmNhdGVnb3J5ID09PSBVc2VyRXZlbnRDYXRlZ29yeS5RdWVyeVR5cGVkICYmXG4gICAgaXNBcGlRdWVyeVR5cGVkQXR0cmlidXRlcyh1c2VyRXZlbnQuYXR0cmlidXRlcylcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGV2ZW50SWQ6IHVzZXJFdmVudC5ldmVudF9pZCxcbiAgICAgIGNyZWF0ZWRBdDogdXNlckV2ZW50LmNyZWF0ZWRfYXQsXG4gICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUXVlcnlUeXBlZCxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgcXVlcnk6IHVzZXJFdmVudC5hdHRyaWJ1dGVzLnF1ZXJ5LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLy8gSGFuZGxlIFNlYXJjaFxuICBpZiAoXG4gICAgdXNlckV2ZW50LmNhdGVnb3J5ID09PSBVc2VyRXZlbnRDYXRlZ29yeS5TZWFyY2ggJiZcbiAgICBpc0FwaVNlYXJjaEF0dHJpYnV0ZXModXNlckV2ZW50LmF0dHJpYnV0ZXMpXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICBldmVudElkOiB1c2VyRXZlbnQuZXZlbnRfaWQsXG4gICAgICBjcmVhdGVkQXQ6IHVzZXJFdmVudC5jcmVhdGVkX2F0LFxuICAgICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlNlYXJjaCxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgc2VhcmNoVGVybTogdXNlckV2ZW50LmF0dHJpYnV0ZXMuc2VhcmNoX3Rlcm0sXG4gICAgICAgIHNlbGVjdGVkRmlsdGVyczogdXNlckV2ZW50LmF0dHJpYnV0ZXMuc2VsZWN0ZWRfZmlsdGVycyxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8vIEhhbmRsZSBTdWdnZXN0aW9uQ2xpY2tlZFxuICBpZiAoXG4gICAgdXNlckV2ZW50LmNhdGVnb3J5ID09PSBVc2VyRXZlbnRDYXRlZ29yeS5TdWdnZXN0aW9uQ2xpY2tlZCAmJlxuICAgIGlzQXBpU3VnZ2VzdGlvbkNsaWNrZWRBdHRyaWJ1dGVzKHVzZXJFdmVudC5hdHRyaWJ1dGVzKVxuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXZlbnRJZDogdXNlckV2ZW50LmV2ZW50X2lkLFxuICAgICAgY3JlYXRlZEF0OiB1c2VyRXZlbnQuY3JlYXRlZF9hdCxcbiAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5TdWdnZXN0aW9uQ2xpY2tlZCxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgc3VnZ2VzdGlvbklkOiB1c2VyRXZlbnQuYXR0cmlidXRlcy5zdWdnZXN0aW9uX2lkLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLy8gSGFuZGxlIFBhZ2VWaXNpdFxuICBpZiAoXG4gICAgdXNlckV2ZW50LmNhdGVnb3J5ID09PSBVc2VyRXZlbnRDYXRlZ29yeS5QYWdlVmlzaXQgJiZcbiAgICBpc0FwaVBhZ2VWaXNpdEF0dHJpYnV0ZXModXNlckV2ZW50LmF0dHJpYnV0ZXMpXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICBldmVudElkOiB1c2VyRXZlbnQuZXZlbnRfaWQsXG4gICAgICBjcmVhdGVkQXQ6IHVzZXJFdmVudC5jcmVhdGVkX2F0LFxuICAgICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlBhZ2VWaXNpdCxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgdXJsOiB1c2VyRXZlbnQuYXR0cmlidXRlcy51cmwsXG4gICAgICAgIHBhZ2VWaXNpdENhdGVnb3J5OiB1c2VyRXZlbnQuYXR0cmlidXRlcy5wYWdlX3Zpc2l0X2NhdGVnb3J5LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLy8gSGFuZGxlIEZvcm1TdWJtaXR0ZWRcbiAgaWYgKFxuICAgIHVzZXJFdmVudC5jYXRlZ29yeSA9PT0gVXNlckV2ZW50Q2F0ZWdvcnkuRm9ybVN1Ym1pdHRlZCAmJlxuICAgIGlzQXBpRm9ybVN1Ym1pdHRlZFJlc3BvbnNlQXR0cmlidXRlcyh1c2VyRXZlbnQuYXR0cmlidXRlcylcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGV2ZW50SWQ6IHVzZXJFdmVudC5ldmVudF9pZCxcbiAgICAgIGNyZWF0ZWRBdDogdXNlckV2ZW50LmNyZWF0ZWRfYXQsXG4gICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuRm9ybVN1Ym1pdHRlZCxcbiAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgZmlsbGVkU2NoZW1hOiB7IC4uLnVzZXJFdmVudC5hdHRyaWJ1dGVzLmZpbGxlZF9zY2hlbWEgfSxcbiAgICAgICAgZm9ybVJlc3BvbnNlSWQ6IHVzZXJFdmVudC5hdHRyaWJ1dGVzLmZvcm1fcmVzcG9uc2VfaWQsXG4gICAgICAgIGZvcm1UeXBlOiB1c2VyRXZlbnQuYXR0cmlidXRlcy5mb3JtX3R5cGUsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAvLyBIYW5kbGUgQXBwTG9hZGVkIChubyBhdHRyaWJ1dGVzKVxuICBpZiAodXNlckV2ZW50LmNhdGVnb3J5ID09PSBVc2VyRXZlbnRDYXRlZ29yeS5BcHBMb2FkZWQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXZlbnRJZDogdXNlckV2ZW50LmV2ZW50X2lkLFxuICAgICAgY3JlYXRlZEF0OiB1c2VyRXZlbnQuY3JlYXRlZF9hdCxcbiAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5BcHBMb2FkZWQsXG4gICAgfTtcbiAgfVxuXG4gIC8vIEhhbmRsZSBBcHBVbmxvYWRlZCAobm8gYXR0cmlidXRlcylcbiAgaWYgKHVzZXJFdmVudC5jYXRlZ29yeSA9PT0gVXNlckV2ZW50Q2F0ZWdvcnkuQXBwVW5sb2FkZWQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXZlbnRJZDogdXNlckV2ZW50LmV2ZW50X2lkLFxuICAgICAgY3JlYXRlZEF0OiB1c2VyRXZlbnQuY3JlYXRlZF9hdCxcbiAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5BcHBVbmxvYWRlZCxcbiAgICB9O1xuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHVzZXIgZXZlbnQgY2F0ZWdvcnk6ICR7dXNlckV2ZW50LmNhdGVnb3J5fWApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFtQkEsTUFBYSx1Q0FDWCxLQUNBLGFBQ29CO0FBQ3BCLEtBQ0UsU0FBUyxpQkFBaUIsZ0JBQWdCLE9BQzFDLG9CQUFvQixTQUFTLGlCQUU3QixRQUFPO0VBQ0wsYUFBYSxnQkFBZ0I7RUFDN0IsV0FBVyxTQUFTLGlCQUFpQixlQUFlLGNBQWM7RUFDbEUsYUFBYSxTQUFTLGlCQUFpQixlQUFlLEVBQUU7RUFDeEQsaUJBQWlCLFNBQVMsaUJBQWlCLHFCQUFxQjtFQUNoRSxjQUFjLFNBQVMsaUJBQWlCLGlCQUFpQixFQUFFO0VBQzNEO0VBQ0Q7QUFFSCxLQUNFLFNBQVMsaUJBQWlCLGdCQUFnQixPQUMxQyxvQkFBb0IsU0FBUyxpQkFFN0IsUUFBTztFQUNMLGFBQWEsZ0JBQWdCO0VBQzdCLE9BQU8sU0FBUyxpQkFBaUIsZ0JBQWdCLFlBQVksTUFBTTtFQUNuRSxhQUFhLFNBQVMsaUJBQWlCLGdCQUFnQjtFQUN2RDtFQUNEO0FBRUgsS0FBSSxTQUFTLGlCQUFpQixnQkFBZ0IsVUFDNUMsUUFBTztFQUNMLGFBQWEsZ0JBQWdCO0VBQzdCO0VBQ0Q7QUFFSCxPQUFNLElBQUksTUFBTSx1QkFBdUI7O0FBR3pDLE1BQU0sNEJBQ0osU0FDb0U7QUFDcEUsS0FBSSxRQUFRLFFBQVEsT0FBTyxTQUFTLFNBQ2xDLFFBQU87QUFHVCxLQUFJLEVBQUUsU0FBUyxTQUFTLE9BQU8sS0FBSyxRQUFRLFNBQzFDLFFBQU87QUFHVCxLQUNFLEVBQUUseUJBQXlCLFNBQzNCLE9BQU8sS0FBSyx3QkFBd0IsWUFDcEMsQ0FBQyxPQUFPLE9BQU8sa0JBQWtCLENBQUMsU0FBUyxLQUFLLG9CQUF5QyxDQUV6RixRQUFPO0FBR1QsUUFBTzs7QUFHVCxNQUFhLDhCQUNYLGNBQzBCO0FBQzFCLEtBQUksQ0FBQyxVQUNIO0FBR0YsTUFDRyxVQUFVLGFBQWEsa0JBQWtCLFlBQ3hDLFVBQVUsYUFBYSxrQkFBa0IsY0FDM0MsbUJBQW1CLFVBQVUsV0FBVyxDQUV4QyxRQUFPO0VBQ0wsU0FBUyxVQUFVO0VBQ25CLFdBQVcsVUFBVTtFQUNyQixVQUFVLFVBQVU7RUFDcEIsWUFBWTtHQUNWLFdBQVcsVUFBVSxXQUFXO0dBQ2hDLGlCQUNFLFVBQVUsV0FBVyxzQkFBc0IsT0FDdkMsVUFBVSxXQUFXLG9CQUNyQjtHQUNOLEtBQUssVUFBVSxXQUFXO0dBQzNCO0VBQ0Y7QUFJSCxLQUNFLFVBQVUsYUFBYSxrQkFBa0IsWUFDekMsd0JBQXdCLFVBQVUsV0FBVyxFQUU3QztNQUFJLG9CQUFvQixVQUFVLFdBQVcsV0FBVyxDQUN0RCxRQUFPO0dBQ0wsU0FBUyxVQUFVO0dBQ25CLFdBQVcsVUFBVTtHQUNyQixVQUFVLGtCQUFrQjtHQUM1QixZQUFZO0lBQ1YsVUFBVSxVQUFVLFdBQVc7SUFDL0IsWUFBWSxFQUNWLElBQUksVUFBVSxXQUFXLFdBQVcsSUFDckM7SUFDRjtHQUNGOztBQUtMLEtBQ0UsVUFBVSxhQUFhLGtCQUFrQixjQUN6QywwQkFBMEIsVUFBVSxXQUFXLENBRS9DLFFBQU87RUFDTCxTQUFTLFVBQVU7RUFDbkIsV0FBVyxVQUFVO0VBQ3JCLFVBQVUsa0JBQWtCO0VBQzVCLFlBQVksRUFDVixPQUFPLFVBQVUsV0FBVyxPQUM3QjtFQUNGO0FBSUgsS0FDRSxVQUFVLGFBQWEsa0JBQWtCLFVBQ3pDLHNCQUFzQixVQUFVLFdBQVcsQ0FFM0MsUUFBTztFQUNMLFNBQVMsVUFBVTtFQUNuQixXQUFXLFVBQVU7RUFDckIsVUFBVSxrQkFBa0I7RUFDNUIsWUFBWTtHQUNWLFlBQVksVUFBVSxXQUFXO0dBQ2pDLGlCQUFpQixVQUFVLFdBQVc7R0FDdkM7RUFDRjtBQUlILEtBQ0UsVUFBVSxhQUFhLGtCQUFrQixxQkFDekMsaUNBQWlDLFVBQVUsV0FBVyxDQUV0RCxRQUFPO0VBQ0wsU0FBUyxVQUFVO0VBQ25CLFdBQVcsVUFBVTtFQUNyQixVQUFVLGtCQUFrQjtFQUM1QixZQUFZLEVBQ1YsY0FBYyxVQUFVLFdBQVcsZUFDcEM7RUFDRjtBQUlILEtBQ0UsVUFBVSxhQUFhLGtCQUFrQixhQUN6Qyx5QkFBeUIsVUFBVSxXQUFXLENBRTlDLFFBQU87RUFDTCxTQUFTLFVBQVU7RUFDbkIsV0FBVyxVQUFVO0VBQ3JCLFVBQVUsa0JBQWtCO0VBQzVCLFlBQVk7R0FDVixLQUFLLFVBQVUsV0FBVztHQUMxQixtQkFBbUIsVUFBVSxXQUFXO0dBQ3pDO0VBQ0Y7QUFJSCxLQUNFLFVBQVUsYUFBYSxrQkFBa0IsaUJBQ3pDLHFDQUFxQyxVQUFVLFdBQVcsQ0FFMUQsUUFBTztFQUNMLFNBQVMsVUFBVTtFQUNuQixXQUFXLFVBQVU7RUFDckIsVUFBVSxrQkFBa0I7RUFDNUIsWUFBWTtHQUNWLGNBQWMsRUFBRSxHQUFHLFVBQVUsV0FBVyxlQUFlO0dBQ3ZELGdCQUFnQixVQUFVLFdBQVc7R0FDckMsVUFBVSxVQUFVLFdBQVc7R0FDaEM7RUFDRjtBQUlILEtBQUksVUFBVSxhQUFhLGtCQUFrQixVQUMzQyxRQUFPO0VBQ0wsU0FBUyxVQUFVO0VBQ25CLFdBQVcsVUFBVTtFQUNyQixVQUFVLGtCQUFrQjtFQUM3QjtBQUlILEtBQUksVUFBVSxhQUFhLGtCQUFrQixZQUMzQyxRQUFPO0VBQ0wsU0FBUyxVQUFVO0VBQ25CLFdBQVcsVUFBVTtFQUNyQixVQUFVLGtCQUFrQjtFQUM3QjtBQUdILE9BQU0sSUFBSSxNQUFNLGdDQUFnQyxVQUFVLFdBQVcifQ==
@@ -1,35 +1,76 @@
1
1
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
2
  const require_logger = require('../../application/logging/logger.cjs');
3
+ const require_variantInfo = require('../../application/models/variantInfo/variantInfo.cjs');
4
+ require('../../application/models/index.cjs');
3
5
  const require_variant = require('../../atoms/app/variant.cjs');
4
6
  const require_commerce_api = require('../../application/commerce-api.cjs');
5
7
  const require_mapping = require('./mapping.cjs');
8
+ let __spiffy_ai_commerce_api_client = require("@spiffy-ai/commerce-api-client");
6
9
  let react = require("react");
7
10
  let jotai = require("jotai");
8
11
  let react_jsx_runtime = require("react/jsx-runtime");
9
12
 
10
13
  //#region src/contexts/pageContext/pageContext.tsx
11
14
  const PageContext = (0, react.createContext)(void 0);
12
- const PageProvider = ({ children }) => {
15
+ const PageProvider = ({ children, previewMode = false }) => {
13
16
  const [pageUrl, setPageUrl] = (0, react.useState)(void 0);
14
- const [variantInfo, setVariantInfo] = (0, react.useState)(void 0);
15
17
  const [urlResolverResponse, setUrlResolverResponse] = (0, jotai.useAtom)(require_variant.urlResolverAtom);
16
- const [userEvent, setUserEvent] = (0, react.useState)(void 0);
18
+ const [isLoading, setIsLoading] = (0, react.useState)(false);
19
+ const [variantInfo, setVariantInfo] = (0, jotai.useAtom)(require_variant.pageVariantInfoAtom);
20
+ const [userEvent, setUserEvent] = (0, jotai.useAtom)(require_variant.pageUserEventAtom);
21
+ const [isSupported, setIsSupported] = (0, react.useState)(false);
17
22
  (0, react.useEffect)(() => {
18
23
  setPageUrl(window.location.href);
19
24
  }, []);
25
+ (0, react.useEffect)(() => {
26
+ if (previewMode && !userEvent && !variantInfo) {
27
+ const url = typeof window !== "undefined" ? window.location.href : "";
28
+ setUserEvent({
29
+ event_id: "preview-user-event",
30
+ created_at: (/* @__PURE__ */ new Date()).toISOString(),
31
+ category: __spiffy_ai_commerce_api_client.UserEventCategory.PageVisit,
32
+ attributes: {
33
+ page_visit_category: __spiffy_ai_commerce_api_client.PageVisitCategory.Other,
34
+ url
35
+ }
36
+ });
37
+ setVariantInfo({
38
+ variantType: require_variantInfo.VariantTypeEnum.PageVisit,
39
+ url
40
+ });
41
+ }
42
+ }, [
43
+ previewMode,
44
+ userEvent,
45
+ variantInfo,
46
+ setUserEvent,
47
+ setVariantInfo
48
+ ]);
20
49
  const setVariantFromUrlResolver = (0, react.useCallback)((url, response) => {
21
50
  const newVariantInfo = require_mapping.mapUrlResolverResponseToVariantInfo(url, response);
22
- const newUserEvent = response.user_event ?? void 0;
51
+ const newUserEvent = require_mapping.mapApiUserEventToUserEvent(response.user_event ?? void 0);
23
52
  setVariantInfo(newVariantInfo);
24
53
  setUserEvent(newUserEvent);
25
- }, [setVariantInfo]);
54
+ }, [setVariantInfo, setUserEvent]);
26
55
  (0, react.useEffect)(() => {
27
56
  const resolvePageUrl = async () => {
57
+ setIsLoading(true);
28
58
  try {
29
- if (!pageUrl) return;
59
+ if (!pageUrl) {
60
+ setIsLoading(false);
61
+ return;
62
+ }
63
+ if (previewMode || userEvent || variantInfo) {
64
+ setIsLoading(false);
65
+ return;
66
+ }
30
67
  const cleansedUrl = pageUrl.toLowerCase().trim();
31
- setVariantFromUrlResolver(cleansedUrl, urlResolverResponse[cleansedUrl] ?? await require_commerce_api.default.resolveUrl(cleansedUrl));
68
+ const response = urlResolverResponse[cleansedUrl] ?? await require_commerce_api.default.resolveUrl(cleansedUrl);
69
+ setVariantFromUrlResolver(cleansedUrl, response);
70
+ setIsLoading(false);
71
+ setIsSupported(response.ready);
32
72
  } catch (e) {
73
+ setIsLoading(false);
33
74
  require_logger.default.logError("Failed to resolve page URL", e, { pageUrl });
34
75
  }
35
76
  };
@@ -38,16 +79,23 @@ const PageProvider = ({ children }) => {
38
79
  pageUrl,
39
80
  urlResolverResponse,
40
81
  setUrlResolverResponse,
41
- setVariantFromUrlResolver
82
+ setVariantFromUrlResolver,
83
+ userEvent,
84
+ variantInfo,
85
+ previewMode
42
86
  ]);
43
87
  const value = (0, react.useMemo)(() => ({
44
88
  pageUrl,
45
89
  variantInfo,
46
- userEvent
90
+ userEvent,
91
+ isLoading,
92
+ isSupported
47
93
  }), [
48
94
  pageUrl,
49
95
  userEvent,
50
- variantInfo
96
+ variantInfo,
97
+ isLoading,
98
+ isSupported
51
99
  ]);
52
100
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PageContext.Provider, {
53
101
  value,
@@ -63,4 +111,4 @@ const usePage = () => {
63
111
  //#endregion
64
112
  exports.PageProvider = PageProvider;
65
113
  exports.usePage = usePage;
66
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuY2pzIiwibmFtZXMiOlsiUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdE5vZGUgfT4iLCJ1cmxSZXNvbHZlckF0b20iLCJtYXBVcmxSZXNvbHZlclJlc3BvbnNlVG9WYXJpYW50SW5mbyIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3BhZ2VDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZWFjdE5vZGUsXG4gIGNyZWF0ZUNvbnRleHQsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VDb250ZXh0LFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgVXJsUmVzb2x2ZXJSZXNwb25zZSwgdXJsUmVzb2x2ZXJBdG9tIH0gZnJvbSAnc3JjL2F0b21zL2FwcC92YXJpYW50JztcbmltcG9ydCB7IHVzZUF0b20gfSBmcm9tICdqb3RhaSc7XG5cbmltcG9ydCBDb21tZXJjZUFwaUNsaWVudCBmcm9tICdzcmMvYXBwbGljYXRpb24vY29tbWVyY2UtYXBpJztcbmltcG9ydCBMb2dnZXIgZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyJztcbmltcG9ydCB7IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvIH0gZnJvbSAnLi9tYXBwaW5nJztcbmltcG9ydCB7IFBhZ2VEZXRhaWxzLCBQYWdlVmFyaWFudEluZm8gfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgUGFnZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0PFBhZ2VEZXRhaWxzIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdE5vZGUgfT4gPSAoeyBjaGlsZHJlbiB9KSA9PiB7XG4gIGNvbnN0IFtwYWdlVXJsLCBzZXRQYWdlVXJsXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgY29uc3QgW3ZhcmlhbnRJbmZvLCBzZXRWYXJpYW50SW5mb10gPSB1c2VTdGF0ZTxQYWdlVmFyaWFudEluZm8gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IFt1cmxSZXNvbHZlclJlc3BvbnNlLCBzZXRVcmxSZXNvbHZlclJlc3BvbnNlXSA9IHVzZUF0b20odXJsUmVzb2x2ZXJBdG9tKTtcbiAgY29uc3QgW3VzZXJFdmVudCwgc2V0VXNlckV2ZW50XSA9IHVzZVN0YXRlPFVzZXJFdmVudCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFRPRE86IEFkZCBzdXBwb3J0IGZvciBTUEEncyBhbmQgb3RoZXIgY2hhbmdlcyB0byB0aGUgVVJMIHRvIGVuc3VyZSB0aGF0IHRoZSBwYWdlVXJsIGlzIHNldCBjb3JyZWN0bHlcbiAgICBzZXRQYWdlVXJsKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IHNldFZhcmlhbnRGcm9tVXJsUmVzb2x2ZXIgPSB1c2VDYWxsYmFjayhcbiAgICAodXJsOiBzdHJpbmcsIHJlc3BvbnNlOiBVcmxSZXNvbHZlclJlc3BvbnNlKSA9PiB7XG4gICAgICBjb25zdCBuZXdWYXJpYW50SW5mbyA9IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvKHVybCwgcmVzcG9uc2UpO1xuICAgICAgY29uc3QgbmV3VXNlckV2ZW50ID0gcmVzcG9uc2UudXNlcl9ldmVudCA/PyB1bmRlZmluZWQ7XG4gICAgICBzZXRWYXJpYW50SW5mbyhuZXdWYXJpYW50SW5mbyk7XG4gICAgICBzZXRVc2VyRXZlbnQobmV3VXNlckV2ZW50KTtcbiAgICB9LFxuICAgIFtzZXRWYXJpYW50SW5mb10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCByZXNvbHZlUGFnZVVybCA9IGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmICghcGFnZVVybCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjbGVhbnNlZFVybCA9IHBhZ2VVcmwudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID1cbiAgICAgICAgICB1cmxSZXNvbHZlclJlc3BvbnNlW2NsZWFuc2VkVXJsXSA/P1xuICAgICAgICAgICgoYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQucmVzb2x2ZVVybChjbGVhbnNlZFVybCkpIGFzIFVybFJlc29sdmVyUmVzcG9uc2UpO1xuICAgICAgICBzZXRWYXJpYW50RnJvbVVybFJlc29sdmVyKGNsZWFuc2VkVXJsLCByZXNwb25zZSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIExvZ2dlci5sb2dFcnJvcignRmFpbGVkIHRvIHJlc29sdmUgcGFnZSBVUkwnLCBlLCB7IHBhZ2VVcmwgfSk7XG4gICAgICB9XG4gICAgfTtcbiAgICByZXNvbHZlUGFnZVVybCgpO1xuICB9LCBbcGFnZVVybCwgdXJsUmVzb2x2ZXJSZXNwb25zZSwgc2V0VXJsUmVzb2x2ZXJSZXNwb25zZSwgc2V0VmFyaWFudEZyb21VcmxSZXNvbHZlcl0pO1xuXG4gIGNvbnN0IHZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgcGFnZVVybCxcbiAgICAgIHZhcmlhbnRJbmZvLFxuICAgICAgdXNlckV2ZW50LFxuICAgIH0pLFxuICAgIFtwYWdlVXJsLCB1c2VyRXZlbnQsIHZhcmlhbnRJbmZvXSxcbiAgKTtcblxuICByZXR1cm4gPFBhZ2VDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt2YWx1ZX0+e2NoaWxkcmVufTwvUGFnZUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZVBhZ2UgPSAoKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KFBhZ2VDb250ZXh0KTtcbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCd1c2VQYWdlIG11c3QgYmUgdXNlZCB3aXRoaW4gYSBQYWdlUHJvdmlkZXInKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFrQkEsTUFBTSx1Q0FBcUQsT0FBVTtBQUVyRSxNQUFhQSxnQkFBbUQsRUFBRSxlQUFlO0NBQy9FLE1BQU0sQ0FBQyxTQUFTLGtDQUEyQyxPQUFVO0NBQ3JFLE1BQU0sQ0FBQyxhQUFhLHNDQUF3RCxPQUFVO0NBQ3RGLE1BQU0sQ0FBQyxxQkFBcUIsNkNBQWtDQyxnQ0FBZ0I7Q0FDOUUsTUFBTSxDQUFDLFdBQVcsb0NBQWdELE9BQVU7QUFFNUUsNEJBQWdCO0FBRWQsYUFBVyxPQUFPLFNBQVMsS0FBSztJQUMvQixFQUFFLENBQUM7Q0FFTixNQUFNLG9EQUNILEtBQWEsYUFBa0M7RUFDOUMsTUFBTSxpQkFBaUJDLG9EQUFvQyxLQUFLLFNBQVM7RUFDekUsTUFBTSxlQUFlLFNBQVMsY0FBYztBQUM1QyxpQkFBZSxlQUFlO0FBQzlCLGVBQWEsYUFBYTtJQUU1QixDQUFDLGVBQWUsQ0FDakI7QUFFRCw0QkFBZ0I7RUFDZCxNQUFNLGlCQUFpQixZQUFZO0FBQ2pDLE9BQUk7QUFDRixRQUFJLENBQUMsUUFDSDtJQUVGLE1BQU0sY0FBYyxRQUFRLGFBQWEsQ0FBQyxNQUFNO0FBSWhELDhCQUEwQixhQUZ4QixvQkFBb0IsZ0JBQ2xCLE1BQU1DLDZCQUFrQixXQUFXLFlBQVksQ0FDSDtZQUN6QyxHQUFHO0FBQ1YsMkJBQU8sU0FBUyw4QkFBOEIsR0FBRyxFQUFFLFNBQVMsQ0FBQzs7O0FBR2pFLGtCQUFnQjtJQUNmO0VBQUM7RUFBUztFQUFxQjtFQUF3QjtFQUEwQixDQUFDO0NBRXJGLE1BQU0sa0NBQ0c7RUFDTDtFQUNBO0VBQ0E7RUFDRCxHQUNEO0VBQUM7RUFBUztFQUFXO0VBQVksQ0FDbEM7QUFFRCxRQUFPLDJDQUFDLFlBQVk7RUFBZ0I7RUFBUTtHQUFnQzs7QUFHOUUsTUFBYSxnQkFBZ0I7Q0FDM0IsTUFBTSxnQ0FBcUIsWUFBWTtBQUN2QyxLQUFJLENBQUMsUUFDSCxPQUFNLElBQUksTUFBTSw2Q0FBNkM7QUFFL0QsUUFBTyJ9
114
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuY2pzIiwibmFtZXMiOlsiUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gIHByZXZpZXdNb2RlOiBib29sZWFuO1xufT4iLCJ1cmxSZXNvbHZlckF0b20iLCJwYWdlVmFyaWFudEluZm9BdG9tIiwicGFnZVVzZXJFdmVudEF0b20iLCJVc2VyRXZlbnRDYXRlZ29yeSIsIlBhZ2VWaXNpdENhdGVnb3J5IiwiVmFyaWFudFR5cGVFbnVtIiwibWFwVXJsUmVzb2x2ZXJSZXNwb25zZVRvVmFyaWFudEluZm8iLCJtYXBBcGlVc2VyRXZlbnRUb1VzZXJFdmVudCIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3BhZ2VDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZWFjdE5vZGUsXG4gIGNyZWF0ZUNvbnRleHQsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VDb250ZXh0LFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge1xuICBVcmxSZXNvbHZlclJlc3BvbnNlLFxuICBwYWdlVXNlckV2ZW50QXRvbSxcbiAgcGFnZVZhcmlhbnRJbmZvQXRvbSxcbiAgdXJsUmVzb2x2ZXJBdG9tLFxufSBmcm9tICdzcmMvYXRvbXMvYXBwL3ZhcmlhbnQnO1xuaW1wb3J0IHsgdXNlQXRvbSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCBDb21tZXJjZUFwaUNsaWVudCBmcm9tICdzcmMvYXBwbGljYXRpb24vY29tbWVyY2UtYXBpJztcbmltcG9ydCBMb2dnZXIgZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyJztcbmltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5LCBVc2VyRXZlbnRDYXRlZ29yeSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBWYXJpYW50VHlwZUVudW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IG1hcEFwaVVzZXJFdmVudFRvVXNlckV2ZW50LCBtYXBVcmxSZXNvbHZlclJlc3BvbnNlVG9WYXJpYW50SW5mbyB9IGZyb20gJy4vbWFwcGluZyc7XG5pbXBvcnQgeyBQYWdlRGV0YWlscyB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBQYWdlQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8XG4gIChQYWdlRGV0YWlscyAmIHsgaXNMb2FkaW5nOiBib29sZWFuOyBpc1N1cHBvcnRlZDogYm9vbGVhbiB9KSB8IHVuZGVmaW5lZFxuPih1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gIHByZXZpZXdNb2RlOiBib29sZWFuO1xufT4gPSAoeyBjaGlsZHJlbiwgcHJldmlld01vZGUgPSBmYWxzZSB9KSA9PiB7XG4gIGNvbnN0IFtwYWdlVXJsLCBzZXRQYWdlVXJsXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgY29uc3QgW3VybFJlc29sdmVyUmVzcG9uc2UsIHNldFVybFJlc29sdmVyUmVzcG9uc2VdID0gdXNlQXRvbSh1cmxSZXNvbHZlckF0b20pO1xuICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbdmFyaWFudEluZm8sIHNldFZhcmlhbnRJbmZvXSA9IHVzZUF0b20ocGFnZVZhcmlhbnRJbmZvQXRvbSk7XG4gIGNvbnN0IFt1c2VyRXZlbnQsIHNldFVzZXJFdmVudF0gPSB1c2VBdG9tKHBhZ2VVc2VyRXZlbnRBdG9tKTtcbiAgY29uc3QgW2lzU3VwcG9ydGVkLCBzZXRJc1N1cHBvcnRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gVE9ETzogQWRkIHN1cHBvcnQgZm9yIFNQQSdzIGFuZCBvdGhlciBjaGFuZ2VzIHRvIHRoZSBVUkwgdG8gZW5zdXJlIHRoYXQgdGhlIHBhZ2VVcmwgaXMgc2V0IGNvcnJlY3RseVxuICAgIHNldFBhZ2VVcmwod2luZG93LmxvY2F0aW9uLmhyZWYpO1xuICB9LCBbXSk7XG5cbiAgLy8gQXV0by1pbml0aWFsaXplIGF0b21zIGZvciBwcmV2aWV3IG1vZGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAocHJldmlld01vZGUgJiYgIXVzZXJFdmVudCAmJiAhdmFyaWFudEluZm8pIHtcbiAgICAgIGNvbnN0IHVybCA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93LmxvY2F0aW9uLmhyZWYgOiAnJztcbiAgICAgIHNldFVzZXJFdmVudCh7XG4gICAgICAgIGV2ZW50X2lkOiAncHJldmlldy11c2VyLWV2ZW50JyxcbiAgICAgICAgY3JlYXRlZF9hdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUGFnZVZpc2l0LFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgcGFnZV92aXNpdF9jYXRlZ29yeTogUGFnZVZpc2l0Q2F0ZWdvcnkuT3RoZXIsXG4gICAgICAgICAgdXJsLFxuICAgICAgICB9LFxuICAgICAgfSBhcyBhbnkpO1xuXG4gICAgICBzZXRWYXJpYW50SW5mbyh7XG4gICAgICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGFnZVZpc2l0LFxuICAgICAgICB1cmwsXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtwcmV2aWV3TW9kZSwgdXNlckV2ZW50LCB2YXJpYW50SW5mbywgc2V0VXNlckV2ZW50LCBzZXRWYXJpYW50SW5mb10pO1xuXG4gIGNvbnN0IHNldFZhcmlhbnRGcm9tVXJsUmVzb2x2ZXIgPSB1c2VDYWxsYmFjayhcbiAgICAodXJsOiBzdHJpbmcsIHJlc3BvbnNlOiBVcmxSZXNvbHZlclJlc3BvbnNlKSA9PiB7XG4gICAgICBjb25zdCBuZXdWYXJpYW50SW5mbyA9IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvKHVybCwgcmVzcG9uc2UpO1xuICAgICAgY29uc3QgbmV3VXNlckV2ZW50ID0gbWFwQXBpVXNlckV2ZW50VG9Vc2VyRXZlbnQocmVzcG9uc2UudXNlcl9ldmVudCA/PyB1bmRlZmluZWQpO1xuICAgICAgc2V0VmFyaWFudEluZm8obmV3VmFyaWFudEluZm8pO1xuICAgICAgc2V0VXNlckV2ZW50KG5ld1VzZXJFdmVudCk7XG4gICAgfSxcbiAgICBbc2V0VmFyaWFudEluZm8sIHNldFVzZXJFdmVudF0sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCByZXNvbHZlUGFnZVVybCA9IGFzeW5jICgpID0+IHtcbiAgICAgIHNldElzTG9hZGluZyh0cnVlKTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmICghcGFnZVVybCkge1xuICAgICAgICAgIHNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgaW4gcHJldmlldyBtb2RlIG9yIGF0b21zIGFyZSBhbHJlYWR5IHNldCAoZS5nLiwgYnkgc3Rvcnlib29rKSwgc2tpcCBBUEkgY2FsbFxuICAgICAgICBpZiAocHJldmlld01vZGUgfHwgdXNlckV2ZW50IHx8IHZhcmlhbnRJbmZvKSB7XG4gICAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjbGVhbnNlZFVybCA9IHBhZ2VVcmwudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID1cbiAgICAgICAgICB1cmxSZXNvbHZlclJlc3BvbnNlW2NsZWFuc2VkVXJsXSA/P1xuICAgICAgICAgICgoYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQucmVzb2x2ZVVybChjbGVhbnNlZFVybCkpIGFzIFVybFJlc29sdmVyUmVzcG9uc2UpO1xuICAgICAgICBzZXRWYXJpYW50RnJvbVVybFJlc29sdmVyKGNsZWFuc2VkVXJsLCByZXNwb25zZSk7XG4gICAgICAgIHNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgIHNldElzU3VwcG9ydGVkKHJlc3BvbnNlLnJlYWR5KTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgTG9nZ2VyLmxvZ0Vycm9yKCdGYWlsZWQgdG8gcmVzb2x2ZSBwYWdlIFVSTCcsIGUsIHsgcGFnZVVybCB9KTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHJlc29sdmVQYWdlVXJsKCk7XG4gIH0sIFtcbiAgICBwYWdlVXJsLFxuICAgIHVybFJlc29sdmVyUmVzcG9uc2UsXG4gICAgc2V0VXJsUmVzb2x2ZXJSZXNwb25zZSxcbiAgICBzZXRWYXJpYW50RnJvbVVybFJlc29sdmVyLFxuICAgIHVzZXJFdmVudCxcbiAgICB2YXJpYW50SW5mbyxcbiAgICBwcmV2aWV3TW9kZSxcbiAgXSk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBwYWdlVXJsLFxuICAgICAgdmFyaWFudEluZm8sXG4gICAgICB1c2VyRXZlbnQsXG4gICAgICBpc0xvYWRpbmcsXG4gICAgICBpc1N1cHBvcnRlZCxcbiAgICB9KSxcbiAgICBbcGFnZVVybCwgdXNlckV2ZW50LCB2YXJpYW50SW5mbywgaXNMb2FkaW5nLCBpc1N1cHBvcnRlZF0sXG4gICk7XG5cbiAgcmV0dXJuIDxQYWdlQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17dmFsdWV9PntjaGlsZHJlbn08L1BhZ2VDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VQYWdlID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChQYWdlQ29udGV4dCk7XG4gIGlmICghY29udGV4dCkge1xuICAgIHRocm93IG5ldyBFcnJvcigndXNlUGFnZSBtdXN0IGJlIHVzZWQgd2l0aGluIGEgUGFnZVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBdUJBLE1BQU0sdUNBRUosT0FBVTtBQUVaLE1BQWFBLGdCQUdQLEVBQUUsVUFBVSxjQUFjLFlBQVk7Q0FDMUMsTUFBTSxDQUFDLFNBQVMsa0NBQTJDLE9BQVU7Q0FDckUsTUFBTSxDQUFDLHFCQUFxQiw2Q0FBa0NDLGdDQUFnQjtDQUM5RSxNQUFNLENBQUMsV0FBVyxvQ0FBeUIsTUFBTTtDQUNqRCxNQUFNLENBQUMsYUFBYSxxQ0FBMEJDLG9DQUFvQjtDQUNsRSxNQUFNLENBQUMsV0FBVyxtQ0FBd0JDLGtDQUFrQjtDQUM1RCxNQUFNLENBQUMsYUFBYSxzQ0FBMkIsTUFBTTtBQUNyRCw0QkFBZ0I7QUFFZCxhQUFXLE9BQU8sU0FBUyxLQUFLO0lBQy9CLEVBQUUsQ0FBQztBQUdOLDRCQUFnQjtBQUNkLE1BQUksZUFBZSxDQUFDLGFBQWEsQ0FBQyxhQUFhO0dBQzdDLE1BQU0sTUFBTSxPQUFPLFdBQVcsY0FBYyxPQUFPLFNBQVMsT0FBTztBQUNuRSxnQkFBYTtJQUNYLFVBQVU7SUFDViw2QkFBWSxJQUFJLE1BQU0sRUFBQyxhQUFhO0lBQ3BDLFVBQVVDLGtEQUFrQjtJQUM1QixZQUFZO0tBQ1YscUJBQXFCQyxrREFBa0I7S0FDdkM7S0FDRDtJQUNGLENBQVE7QUFFVCxrQkFBZTtJQUNiLGFBQWFDLG9DQUFnQjtJQUM3QjtJQUNELENBQUM7O0lBRUg7RUFBQztFQUFhO0VBQVc7RUFBYTtFQUFjO0VBQWUsQ0FBQztDQUV2RSxNQUFNLG9EQUNILEtBQWEsYUFBa0M7RUFDOUMsTUFBTSxpQkFBaUJDLG9EQUFvQyxLQUFLLFNBQVM7RUFDekUsTUFBTSxlQUFlQywyQ0FBMkIsU0FBUyxjQUFjLE9BQVU7QUFDakYsaUJBQWUsZUFBZTtBQUM5QixlQUFhLGFBQWE7SUFFNUIsQ0FBQyxnQkFBZ0IsYUFBYSxDQUMvQjtBQUVELDRCQUFnQjtFQUNkLE1BQU0saUJBQWlCLFlBQVk7QUFDakMsZ0JBQWEsS0FBSztBQUNsQixPQUFJO0FBQ0YsUUFBSSxDQUFDLFNBQVM7QUFDWixrQkFBYSxNQUFNO0FBQ25COztBQUlGLFFBQUksZUFBZSxhQUFhLGFBQWE7QUFDM0Msa0JBQWEsTUFBTTtBQUNuQjs7SUFHRixNQUFNLGNBQWMsUUFBUSxhQUFhLENBQUMsTUFBTTtJQUNoRCxNQUFNLFdBQ0osb0JBQW9CLGdCQUNsQixNQUFNQyw2QkFBa0IsV0FBVyxZQUFZO0FBQ25ELDhCQUEwQixhQUFhLFNBQVM7QUFDaEQsaUJBQWEsTUFBTTtBQUNuQixtQkFBZSxTQUFTLE1BQU07WUFDdkIsR0FBRztBQUNWLGlCQUFhLE1BQU07QUFDbkIsMkJBQU8sU0FBUyw4QkFBOEIsR0FBRyxFQUFFLFNBQVMsQ0FBQzs7O0FBR2pFLGtCQUFnQjtJQUNmO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRCxDQUFDO0NBRUYsTUFBTSxrQ0FDRztFQUNMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRCxHQUNEO0VBQUM7RUFBUztFQUFXO0VBQWE7RUFBVztFQUFZLENBQzFEO0FBRUQsUUFBTywyQ0FBQyxZQUFZO0VBQWdCO0VBQVE7R0FBZ0M7O0FBRzlFLE1BQWEsZ0JBQWdCO0NBQzNCLE1BQU0sZ0NBQXFCLFlBQVk7QUFDdkMsS0FBSSxDQUFDLFFBQ0gsT0FBTSxJQUFJLE1BQU0sNkNBQTZDO0FBRS9ELFFBQU8ifQ==
@@ -4,8 +4,12 @@ import { ReactNode } from "react";
4
4
  //#region src/contexts/pageContext/pageContext.d.ts
5
5
  declare const PageProvider: React.FC<{
6
6
  children: ReactNode;
7
+ previewMode: boolean;
7
8
  }>;
8
- declare const usePage: () => PageDetails;
9
+ declare const usePage: () => PageDetails & {
10
+ isLoading: boolean;
11
+ isSupported: boolean;
12
+ };
9
13
  //#endregion
10
14
  export { PageProvider, usePage };
11
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3BhZ2VDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgUGFnZURldGFpbHMgfSBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IFBhZ2VQcm92aWRlcjogUmVhY3QuRkM8e1xuICAgIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59PjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZVBhZ2U6ICgpID0+IFBhZ2VEZXRhaWxzO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBRUEsSUFBVyxlQUFlO0NBQUM7T0FBVztPQUFNLE1BQUE7Q0FBQTtBQUM1QyxJQUFXLFVBQVUsQ0FBQyxXQUFDLFlBQUEifQ==
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3BhZ2VDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgUGFnZURldGFpbHMgfSBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IFBhZ2VQcm92aWRlcjogUmVhY3QuRkM8e1xuICAgIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gICAgcHJldmlld01vZGU6IGJvb2xlYW47XG59PjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZVBhZ2U6ICgpID0+IFBhZ2VEZXRhaWxzICYge1xuICAgIGlzTG9hZGluZzogYm9vbGVhbjtcbiAgICBpc1N1cHBvcnRlZDogYm9vbGVhbjtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxJQUFXLGVBQWU7Q0FBQztPQUFXO09BQU0sTUFBQTtDQUFBO0FBQzVDLElBQVcsVUFBVSxDQUFDLFdBQUMsWUFBQSJ9
@@ -4,8 +4,12 @@ import { ReactNode } from "react";
4
4
  //#region src/contexts/pageContext/pageContext.d.ts
5
5
  declare const PageProvider: React.FC<{
6
6
  children: ReactNode;
7
+ previewMode: boolean;
7
8
  }>;
8
- declare const usePage: () => PageDetails;
9
+ declare const usePage: () => PageDetails & {
10
+ isLoading: boolean;
11
+ isSupported: boolean;
12
+ };
9
13
  //#endregion
10
14
  export { PageProvider, usePage };
11
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvcGFnZUNvbnRleHQvcGFnZUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBQYWdlRGV0YWlscyB9IGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn0+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlUGFnZTogKCkgPT4gUGFnZURldGFpbHM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxJQUFXLGVBQWU7Q0FBQztPQUFXO09BQU0sTUFBQTtDQUFBO0FBQzVDLElBQVcsVUFBVSxDQUFDLFdBQUMsWUFBQSJ9
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvcGFnZUNvbnRleHQvcGFnZUNvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBQYWdlRGV0YWlscyB9IGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgICBwcmV2aWV3TW9kZTogYm9vbGVhbjtcbn0+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlUGFnZTogKCkgPT4gUGFnZURldGFpbHMgJiB7XG4gICAgaXNMb2FkaW5nOiBib29sZWFuO1xuICAgIGlzU3VwcG9ydGVkOiBib29sZWFuO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLElBQVcsZUFBZTtDQUFDO09BQVc7T0FBTSxNQUFBO0NBQUE7QUFDNUMsSUFBVyxVQUFVLENBQUMsV0FBQyxZQUFBIn0=
@@ -1,34 +1,75 @@
1
1
  import logger_default from "../../application/logging/logger.js";
2
- import { urlResolverAtom } from "../../atoms/app/variant.js";
2
+ import { VariantTypeEnum } from "../../application/models/variantInfo/variantInfo.js";
3
+ import "../../application/models/index.js";
4
+ import { pageUserEventAtom, pageVariantInfoAtom, urlResolverAtom } from "../../atoms/app/variant.js";
3
5
  import commerce_api_default from "../../application/commerce-api.js";
4
- import { mapUrlResolverResponseToVariantInfo } from "./mapping.js";
6
+ import { mapApiUserEventToUserEvent, mapUrlResolverResponseToVariantInfo } from "./mapping.js";
7
+ import { PageVisitCategory, UserEventCategory } from "@spiffy-ai/commerce-api-client";
5
8
  import { createContext, useCallback, useContext, useEffect, useMemo, useState } from "react";
6
9
  import { useAtom } from "jotai";
7
10
  import { jsx } from "react/jsx-runtime";
8
11
 
9
12
  //#region src/contexts/pageContext/pageContext.tsx
10
13
  const PageContext = createContext(void 0);
11
- const PageProvider = ({ children }) => {
14
+ const PageProvider = ({ children, previewMode = false }) => {
12
15
  const [pageUrl, setPageUrl] = useState(void 0);
13
- const [variantInfo, setVariantInfo] = useState(void 0);
14
16
  const [urlResolverResponse, setUrlResolverResponse] = useAtom(urlResolverAtom);
15
- const [userEvent, setUserEvent] = useState(void 0);
17
+ const [isLoading, setIsLoading] = useState(false);
18
+ const [variantInfo, setVariantInfo] = useAtom(pageVariantInfoAtom);
19
+ const [userEvent, setUserEvent] = useAtom(pageUserEventAtom);
20
+ const [isSupported, setIsSupported] = useState(false);
16
21
  useEffect(() => {
17
22
  setPageUrl(window.location.href);
18
23
  }, []);
24
+ useEffect(() => {
25
+ if (previewMode && !userEvent && !variantInfo) {
26
+ const url = typeof window !== "undefined" ? window.location.href : "";
27
+ setUserEvent({
28
+ event_id: "preview-user-event",
29
+ created_at: (/* @__PURE__ */ new Date()).toISOString(),
30
+ category: UserEventCategory.PageVisit,
31
+ attributes: {
32
+ page_visit_category: PageVisitCategory.Other,
33
+ url
34
+ }
35
+ });
36
+ setVariantInfo({
37
+ variantType: VariantTypeEnum.PageVisit,
38
+ url
39
+ });
40
+ }
41
+ }, [
42
+ previewMode,
43
+ userEvent,
44
+ variantInfo,
45
+ setUserEvent,
46
+ setVariantInfo
47
+ ]);
19
48
  const setVariantFromUrlResolver = useCallback((url, response) => {
20
49
  const newVariantInfo = mapUrlResolverResponseToVariantInfo(url, response);
21
- const newUserEvent = response.user_event ?? void 0;
50
+ const newUserEvent = mapApiUserEventToUserEvent(response.user_event ?? void 0);
22
51
  setVariantInfo(newVariantInfo);
23
52
  setUserEvent(newUserEvent);
24
- }, [setVariantInfo]);
53
+ }, [setVariantInfo, setUserEvent]);
25
54
  useEffect(() => {
26
55
  const resolvePageUrl = async () => {
56
+ setIsLoading(true);
27
57
  try {
28
- if (!pageUrl) return;
58
+ if (!pageUrl) {
59
+ setIsLoading(false);
60
+ return;
61
+ }
62
+ if (previewMode || userEvent || variantInfo) {
63
+ setIsLoading(false);
64
+ return;
65
+ }
29
66
  const cleansedUrl = pageUrl.toLowerCase().trim();
30
- setVariantFromUrlResolver(cleansedUrl, urlResolverResponse[cleansedUrl] ?? await commerce_api_default.resolveUrl(cleansedUrl));
67
+ const response = urlResolverResponse[cleansedUrl] ?? await commerce_api_default.resolveUrl(cleansedUrl);
68
+ setVariantFromUrlResolver(cleansedUrl, response);
69
+ setIsLoading(false);
70
+ setIsSupported(response.ready);
31
71
  } catch (e) {
72
+ setIsLoading(false);
32
73
  logger_default.logError("Failed to resolve page URL", e, { pageUrl });
33
74
  }
34
75
  };
@@ -37,16 +78,23 @@ const PageProvider = ({ children }) => {
37
78
  pageUrl,
38
79
  urlResolverResponse,
39
80
  setUrlResolverResponse,
40
- setVariantFromUrlResolver
81
+ setVariantFromUrlResolver,
82
+ userEvent,
83
+ variantInfo,
84
+ previewMode
41
85
  ]);
42
86
  const value = useMemo(() => ({
43
87
  pageUrl,
44
88
  variantInfo,
45
- userEvent
89
+ userEvent,
90
+ isLoading,
91
+ isSupported
46
92
  }), [
47
93
  pageUrl,
48
94
  userEvent,
49
- variantInfo
95
+ variantInfo,
96
+ isLoading,
97
+ isSupported
50
98
  ]);
51
99
  return /* @__PURE__ */ jsx(PageContext.Provider, {
52
100
  value,
@@ -61,4 +109,4 @@ const usePage = () => {
61
109
 
62
110
  //#endregion
63
111
  export { PageProvider, usePage };
64
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuanMiLCJuYW1lcyI6WyJQYWdlUHJvdmlkZXI6IFJlYWN0LkZDPHsgY2hpbGRyZW46IFJlYWN0Tm9kZSB9PiIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3BhZ2VDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZWFjdE5vZGUsXG4gIGNyZWF0ZUNvbnRleHQsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VDb250ZXh0LFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgVXJsUmVzb2x2ZXJSZXNwb25zZSwgdXJsUmVzb2x2ZXJBdG9tIH0gZnJvbSAnc3JjL2F0b21zL2FwcC92YXJpYW50JztcbmltcG9ydCB7IHVzZUF0b20gfSBmcm9tICdqb3RhaSc7XG5cbmltcG9ydCBDb21tZXJjZUFwaUNsaWVudCBmcm9tICdzcmMvYXBwbGljYXRpb24vY29tbWVyY2UtYXBpJztcbmltcG9ydCBMb2dnZXIgZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyJztcbmltcG9ydCB7IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvIH0gZnJvbSAnLi9tYXBwaW5nJztcbmltcG9ydCB7IFBhZ2VEZXRhaWxzLCBQYWdlVmFyaWFudEluZm8gfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgUGFnZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0PFBhZ2VEZXRhaWxzIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdE5vZGUgfT4gPSAoeyBjaGlsZHJlbiB9KSA9PiB7XG4gIGNvbnN0IFtwYWdlVXJsLCBzZXRQYWdlVXJsXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgY29uc3QgW3ZhcmlhbnRJbmZvLCBzZXRWYXJpYW50SW5mb10gPSB1c2VTdGF0ZTxQYWdlVmFyaWFudEluZm8gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IFt1cmxSZXNvbHZlclJlc3BvbnNlLCBzZXRVcmxSZXNvbHZlclJlc3BvbnNlXSA9IHVzZUF0b20odXJsUmVzb2x2ZXJBdG9tKTtcbiAgY29uc3QgW3VzZXJFdmVudCwgc2V0VXNlckV2ZW50XSA9IHVzZVN0YXRlPFVzZXJFdmVudCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFRPRE86IEFkZCBzdXBwb3J0IGZvciBTUEEncyBhbmQgb3RoZXIgY2hhbmdlcyB0byB0aGUgVVJMIHRvIGVuc3VyZSB0aGF0IHRoZSBwYWdlVXJsIGlzIHNldCBjb3JyZWN0bHlcbiAgICBzZXRQYWdlVXJsKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IHNldFZhcmlhbnRGcm9tVXJsUmVzb2x2ZXIgPSB1c2VDYWxsYmFjayhcbiAgICAodXJsOiBzdHJpbmcsIHJlc3BvbnNlOiBVcmxSZXNvbHZlclJlc3BvbnNlKSA9PiB7XG4gICAgICBjb25zdCBuZXdWYXJpYW50SW5mbyA9IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvKHVybCwgcmVzcG9uc2UpO1xuICAgICAgY29uc3QgbmV3VXNlckV2ZW50ID0gcmVzcG9uc2UudXNlcl9ldmVudCA/PyB1bmRlZmluZWQ7XG4gICAgICBzZXRWYXJpYW50SW5mbyhuZXdWYXJpYW50SW5mbyk7XG4gICAgICBzZXRVc2VyRXZlbnQobmV3VXNlckV2ZW50KTtcbiAgICB9LFxuICAgIFtzZXRWYXJpYW50SW5mb10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCByZXNvbHZlUGFnZVVybCA9IGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmICghcGFnZVVybCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjbGVhbnNlZFVybCA9IHBhZ2VVcmwudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID1cbiAgICAgICAgICB1cmxSZXNvbHZlclJlc3BvbnNlW2NsZWFuc2VkVXJsXSA/P1xuICAgICAgICAgICgoYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQucmVzb2x2ZVVybChjbGVhbnNlZFVybCkpIGFzIFVybFJlc29sdmVyUmVzcG9uc2UpO1xuICAgICAgICBzZXRWYXJpYW50RnJvbVVybFJlc29sdmVyKGNsZWFuc2VkVXJsLCByZXNwb25zZSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIExvZ2dlci5sb2dFcnJvcignRmFpbGVkIHRvIHJlc29sdmUgcGFnZSBVUkwnLCBlLCB7IHBhZ2VVcmwgfSk7XG4gICAgICB9XG4gICAgfTtcbiAgICByZXNvbHZlUGFnZVVybCgpO1xuICB9LCBbcGFnZVVybCwgdXJsUmVzb2x2ZXJSZXNwb25zZSwgc2V0VXJsUmVzb2x2ZXJSZXNwb25zZSwgc2V0VmFyaWFudEZyb21VcmxSZXNvbHZlcl0pO1xuXG4gIGNvbnN0IHZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgcGFnZVVybCxcbiAgICAgIHZhcmlhbnRJbmZvLFxuICAgICAgdXNlckV2ZW50LFxuICAgIH0pLFxuICAgIFtwYWdlVXJsLCB1c2VyRXZlbnQsIHZhcmlhbnRJbmZvXSxcbiAgKTtcblxuICByZXR1cm4gPFBhZ2VDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt2YWx1ZX0+e2NoaWxkcmVufTwvUGFnZUNvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZVBhZ2UgPSAoKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KFBhZ2VDb250ZXh0KTtcbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCd1c2VQYWdlIG11c3QgYmUgdXNlZCB3aXRoaW4gYSBQYWdlUHJvdmlkZXInKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQWtCQSxNQUFNLGNBQWMsY0FBdUMsT0FBVTtBQUVyRSxNQUFhQSxnQkFBbUQsRUFBRSxlQUFlO0NBQy9FLE1BQU0sQ0FBQyxTQUFTLGNBQWMsU0FBNkIsT0FBVTtDQUNyRSxNQUFNLENBQUMsYUFBYSxrQkFBa0IsU0FBc0MsT0FBVTtDQUN0RixNQUFNLENBQUMscUJBQXFCLDBCQUEwQixRQUFRLGdCQUFnQjtDQUM5RSxNQUFNLENBQUMsV0FBVyxnQkFBZ0IsU0FBZ0MsT0FBVTtBQUU1RSxpQkFBZ0I7QUFFZCxhQUFXLE9BQU8sU0FBUyxLQUFLO0lBQy9CLEVBQUUsQ0FBQztDQUVOLE1BQU0sNEJBQTRCLGFBQy9CLEtBQWEsYUFBa0M7RUFDOUMsTUFBTSxpQkFBaUIsb0NBQW9DLEtBQUssU0FBUztFQUN6RSxNQUFNLGVBQWUsU0FBUyxjQUFjO0FBQzVDLGlCQUFlLGVBQWU7QUFDOUIsZUFBYSxhQUFhO0lBRTVCLENBQUMsZUFBZSxDQUNqQjtBQUVELGlCQUFnQjtFQUNkLE1BQU0saUJBQWlCLFlBQVk7QUFDakMsT0FBSTtBQUNGLFFBQUksQ0FBQyxRQUNIO0lBRUYsTUFBTSxjQUFjLFFBQVEsYUFBYSxDQUFDLE1BQU07QUFJaEQsOEJBQTBCLGFBRnhCLG9CQUFvQixnQkFDbEIsTUFBTUMscUJBQWtCLFdBQVcsWUFBWSxDQUNIO1lBQ3pDLEdBQUc7QUFDVixtQkFBTyxTQUFTLDhCQUE4QixHQUFHLEVBQUUsU0FBUyxDQUFDOzs7QUFHakUsa0JBQWdCO0lBQ2Y7RUFBQztFQUFTO0VBQXFCO0VBQXdCO0VBQTBCLENBQUM7Q0FFckYsTUFBTSxRQUFRLGVBQ0w7RUFDTDtFQUNBO0VBQ0E7RUFDRCxHQUNEO0VBQUM7RUFBUztFQUFXO0VBQVksQ0FDbEM7QUFFRCxRQUFPLG9CQUFDLFlBQVk7RUFBZ0I7RUFBUTtHQUFnQzs7QUFHOUUsTUFBYSxnQkFBZ0I7Q0FDM0IsTUFBTSxVQUFVLFdBQVcsWUFBWTtBQUN2QyxLQUFJLENBQUMsUUFDSCxPQUFNLElBQUksTUFBTSw2Q0FBNkM7QUFFL0QsUUFBTyJ9
112
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZUNvbnRleHQuanMiLCJuYW1lcyI6WyJQYWdlUHJvdmlkZXI6IFJlYWN0LkZDPHtcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbiAgcHJldmlld01vZGU6IGJvb2xlYW47XG59PiIsIkNvbW1lcmNlQXBpQ2xpZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3BhZ2VDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBSZWFjdE5vZGUsXG4gIGNyZWF0ZUNvbnRleHQsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VDb250ZXh0LFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge1xuICBVcmxSZXNvbHZlclJlc3BvbnNlLFxuICBwYWdlVXNlckV2ZW50QXRvbSxcbiAgcGFnZVZhcmlhbnRJbmZvQXRvbSxcbiAgdXJsUmVzb2x2ZXJBdG9tLFxufSBmcm9tICdzcmMvYXRvbXMvYXBwL3ZhcmlhbnQnO1xuaW1wb3J0IHsgdXNlQXRvbSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCBDb21tZXJjZUFwaUNsaWVudCBmcm9tICdzcmMvYXBwbGljYXRpb24vY29tbWVyY2UtYXBpJztcbmltcG9ydCBMb2dnZXIgZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyJztcbmltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5LCBVc2VyRXZlbnRDYXRlZ29yeSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBWYXJpYW50VHlwZUVudW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IG1hcEFwaVVzZXJFdmVudFRvVXNlckV2ZW50LCBtYXBVcmxSZXNvbHZlclJlc3BvbnNlVG9WYXJpYW50SW5mbyB9IGZyb20gJy4vbWFwcGluZyc7XG5pbXBvcnQgeyBQYWdlRGV0YWlscyB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBQYWdlQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8XG4gIChQYWdlRGV0YWlscyAmIHsgaXNMb2FkaW5nOiBib29sZWFuOyBpc1N1cHBvcnRlZDogYm9vbGVhbiB9KSB8IHVuZGVmaW5lZFxuPih1bmRlZmluZWQpO1xuXG5leHBvcnQgY29uc3QgUGFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG4gIHByZXZpZXdNb2RlOiBib29sZWFuO1xufT4gPSAoeyBjaGlsZHJlbiwgcHJldmlld01vZGUgPSBmYWxzZSB9KSA9PiB7XG4gIGNvbnN0IFtwYWdlVXJsLCBzZXRQYWdlVXJsXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgY29uc3QgW3VybFJlc29sdmVyUmVzcG9uc2UsIHNldFVybFJlc29sdmVyUmVzcG9uc2VdID0gdXNlQXRvbSh1cmxSZXNvbHZlckF0b20pO1xuICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbdmFyaWFudEluZm8sIHNldFZhcmlhbnRJbmZvXSA9IHVzZUF0b20ocGFnZVZhcmlhbnRJbmZvQXRvbSk7XG4gIGNvbnN0IFt1c2VyRXZlbnQsIHNldFVzZXJFdmVudF0gPSB1c2VBdG9tKHBhZ2VVc2VyRXZlbnRBdG9tKTtcbiAgY29uc3QgW2lzU3VwcG9ydGVkLCBzZXRJc1N1cHBvcnRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gVE9ETzogQWRkIHN1cHBvcnQgZm9yIFNQQSdzIGFuZCBvdGhlciBjaGFuZ2VzIHRvIHRoZSBVUkwgdG8gZW5zdXJlIHRoYXQgdGhlIHBhZ2VVcmwgaXMgc2V0IGNvcnJlY3RseVxuICAgIHNldFBhZ2VVcmwod2luZG93LmxvY2F0aW9uLmhyZWYpO1xuICB9LCBbXSk7XG5cbiAgLy8gQXV0by1pbml0aWFsaXplIGF0b21zIGZvciBwcmV2aWV3IG1vZGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAocHJldmlld01vZGUgJiYgIXVzZXJFdmVudCAmJiAhdmFyaWFudEluZm8pIHtcbiAgICAgIGNvbnN0IHVybCA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93LmxvY2F0aW9uLmhyZWYgOiAnJztcbiAgICAgIHNldFVzZXJFdmVudCh7XG4gICAgICAgIGV2ZW50X2lkOiAncHJldmlldy11c2VyLWV2ZW50JyxcbiAgICAgICAgY3JlYXRlZF9hdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUGFnZVZpc2l0LFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgcGFnZV92aXNpdF9jYXRlZ29yeTogUGFnZVZpc2l0Q2F0ZWdvcnkuT3RoZXIsXG4gICAgICAgICAgdXJsLFxuICAgICAgICB9LFxuICAgICAgfSBhcyBhbnkpO1xuXG4gICAgICBzZXRWYXJpYW50SW5mbyh7XG4gICAgICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGFnZVZpc2l0LFxuICAgICAgICB1cmwsXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtwcmV2aWV3TW9kZSwgdXNlckV2ZW50LCB2YXJpYW50SW5mbywgc2V0VXNlckV2ZW50LCBzZXRWYXJpYW50SW5mb10pO1xuXG4gIGNvbnN0IHNldFZhcmlhbnRGcm9tVXJsUmVzb2x2ZXIgPSB1c2VDYWxsYmFjayhcbiAgICAodXJsOiBzdHJpbmcsIHJlc3BvbnNlOiBVcmxSZXNvbHZlclJlc3BvbnNlKSA9PiB7XG4gICAgICBjb25zdCBuZXdWYXJpYW50SW5mbyA9IG1hcFVybFJlc29sdmVyUmVzcG9uc2VUb1ZhcmlhbnRJbmZvKHVybCwgcmVzcG9uc2UpO1xuICAgICAgY29uc3QgbmV3VXNlckV2ZW50ID0gbWFwQXBpVXNlckV2ZW50VG9Vc2VyRXZlbnQocmVzcG9uc2UudXNlcl9ldmVudCA/PyB1bmRlZmluZWQpO1xuICAgICAgc2V0VmFyaWFudEluZm8obmV3VmFyaWFudEluZm8pO1xuICAgICAgc2V0VXNlckV2ZW50KG5ld1VzZXJFdmVudCk7XG4gICAgfSxcbiAgICBbc2V0VmFyaWFudEluZm8sIHNldFVzZXJFdmVudF0sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCByZXNvbHZlUGFnZVVybCA9IGFzeW5jICgpID0+IHtcbiAgICAgIHNldElzTG9hZGluZyh0cnVlKTtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmICghcGFnZVVybCkge1xuICAgICAgICAgIHNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgaW4gcHJldmlldyBtb2RlIG9yIGF0b21zIGFyZSBhbHJlYWR5IHNldCAoZS5nLiwgYnkgc3Rvcnlib29rKSwgc2tpcCBBUEkgY2FsbFxuICAgICAgICBpZiAocHJldmlld01vZGUgfHwgdXNlckV2ZW50IHx8IHZhcmlhbnRJbmZvKSB7XG4gICAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjbGVhbnNlZFVybCA9IHBhZ2VVcmwudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID1cbiAgICAgICAgICB1cmxSZXNvbHZlclJlc3BvbnNlW2NsZWFuc2VkVXJsXSA/P1xuICAgICAgICAgICgoYXdhaXQgQ29tbWVyY2VBcGlDbGllbnQucmVzb2x2ZVVybChjbGVhbnNlZFVybCkpIGFzIFVybFJlc29sdmVyUmVzcG9uc2UpO1xuICAgICAgICBzZXRWYXJpYW50RnJvbVVybFJlc29sdmVyKGNsZWFuc2VkVXJsLCByZXNwb25zZSk7XG4gICAgICAgIHNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgIHNldElzU3VwcG9ydGVkKHJlc3BvbnNlLnJlYWR5KTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgTG9nZ2VyLmxvZ0Vycm9yKCdGYWlsZWQgdG8gcmVzb2x2ZSBwYWdlIFVSTCcsIGUsIHsgcGFnZVVybCB9KTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHJlc29sdmVQYWdlVXJsKCk7XG4gIH0sIFtcbiAgICBwYWdlVXJsLFxuICAgIHVybFJlc29sdmVyUmVzcG9uc2UsXG4gICAgc2V0VXJsUmVzb2x2ZXJSZXNwb25zZSxcbiAgICBzZXRWYXJpYW50RnJvbVVybFJlc29sdmVyLFxuICAgIHVzZXJFdmVudCxcbiAgICB2YXJpYW50SW5mbyxcbiAgICBwcmV2aWV3TW9kZSxcbiAgXSk7XG5cbiAgY29uc3QgdmFsdWUgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBwYWdlVXJsLFxuICAgICAgdmFyaWFudEluZm8sXG4gICAgICB1c2VyRXZlbnQsXG4gICAgICBpc0xvYWRpbmcsXG4gICAgICBpc1N1cHBvcnRlZCxcbiAgICB9KSxcbiAgICBbcGFnZVVybCwgdXNlckV2ZW50LCB2YXJpYW50SW5mbywgaXNMb2FkaW5nLCBpc1N1cHBvcnRlZF0sXG4gICk7XG5cbiAgcmV0dXJuIDxQYWdlQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17dmFsdWV9PntjaGlsZHJlbn08L1BhZ2VDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VQYWdlID0gKCkgPT4ge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChQYWdlQ29udGV4dCk7XG4gIGlmICghY29udGV4dCkge1xuICAgIHRocm93IG5ldyBFcnJvcigndXNlUGFnZSBtdXN0IGJlIHVzZWQgd2l0aGluIGEgUGFnZVByb3ZpZGVyJyk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUF1QkEsTUFBTSxjQUFjLGNBRWxCLE9BQVU7QUFFWixNQUFhQSxnQkFHUCxFQUFFLFVBQVUsY0FBYyxZQUFZO0NBQzFDLE1BQU0sQ0FBQyxTQUFTLGNBQWMsU0FBNkIsT0FBVTtDQUNyRSxNQUFNLENBQUMscUJBQXFCLDBCQUEwQixRQUFRLGdCQUFnQjtDQUM5RSxNQUFNLENBQUMsV0FBVyxnQkFBZ0IsU0FBUyxNQUFNO0NBQ2pELE1BQU0sQ0FBQyxhQUFhLGtCQUFrQixRQUFRLG9CQUFvQjtDQUNsRSxNQUFNLENBQUMsV0FBVyxnQkFBZ0IsUUFBUSxrQkFBa0I7Q0FDNUQsTUFBTSxDQUFDLGFBQWEsa0JBQWtCLFNBQVMsTUFBTTtBQUNyRCxpQkFBZ0I7QUFFZCxhQUFXLE9BQU8sU0FBUyxLQUFLO0lBQy9CLEVBQUUsQ0FBQztBQUdOLGlCQUFnQjtBQUNkLE1BQUksZUFBZSxDQUFDLGFBQWEsQ0FBQyxhQUFhO0dBQzdDLE1BQU0sTUFBTSxPQUFPLFdBQVcsY0FBYyxPQUFPLFNBQVMsT0FBTztBQUNuRSxnQkFBYTtJQUNYLFVBQVU7SUFDViw2QkFBWSxJQUFJLE1BQU0sRUFBQyxhQUFhO0lBQ3BDLFVBQVUsa0JBQWtCO0lBQzVCLFlBQVk7S0FDVixxQkFBcUIsa0JBQWtCO0tBQ3ZDO0tBQ0Q7SUFDRixDQUFRO0FBRVQsa0JBQWU7SUFDYixhQUFhLGdCQUFnQjtJQUM3QjtJQUNELENBQUM7O0lBRUg7RUFBQztFQUFhO0VBQVc7RUFBYTtFQUFjO0VBQWUsQ0FBQztDQUV2RSxNQUFNLDRCQUE0QixhQUMvQixLQUFhLGFBQWtDO0VBQzlDLE1BQU0saUJBQWlCLG9DQUFvQyxLQUFLLFNBQVM7RUFDekUsTUFBTSxlQUFlLDJCQUEyQixTQUFTLGNBQWMsT0FBVTtBQUNqRixpQkFBZSxlQUFlO0FBQzlCLGVBQWEsYUFBYTtJQUU1QixDQUFDLGdCQUFnQixhQUFhLENBQy9CO0FBRUQsaUJBQWdCO0VBQ2QsTUFBTSxpQkFBaUIsWUFBWTtBQUNqQyxnQkFBYSxLQUFLO0FBQ2xCLE9BQUk7QUFDRixRQUFJLENBQUMsU0FBUztBQUNaLGtCQUFhLE1BQU07QUFDbkI7O0FBSUYsUUFBSSxlQUFlLGFBQWEsYUFBYTtBQUMzQyxrQkFBYSxNQUFNO0FBQ25COztJQUdGLE1BQU0sY0FBYyxRQUFRLGFBQWEsQ0FBQyxNQUFNO0lBQ2hELE1BQU0sV0FDSixvQkFBb0IsZ0JBQ2xCLE1BQU1DLHFCQUFrQixXQUFXLFlBQVk7QUFDbkQsOEJBQTBCLGFBQWEsU0FBUztBQUNoRCxpQkFBYSxNQUFNO0FBQ25CLG1CQUFlLFNBQVMsTUFBTTtZQUN2QixHQUFHO0FBQ1YsaUJBQWEsTUFBTTtBQUNuQixtQkFBTyxTQUFTLDhCQUE4QixHQUFHLEVBQUUsU0FBUyxDQUFDOzs7QUFHakUsa0JBQWdCO0lBQ2Y7RUFDRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNELENBQUM7Q0FFRixNQUFNLFFBQVEsZUFDTDtFQUNMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRCxHQUNEO0VBQUM7RUFBUztFQUFXO0VBQWE7RUFBVztFQUFZLENBQzFEO0FBRUQsUUFBTyxvQkFBQyxZQUFZO0VBQWdCO0VBQVE7R0FBZ0M7O0FBRzlFLE1BQWEsZ0JBQWdCO0NBQzNCLE1BQU0sVUFBVSxXQUFXLFlBQVk7QUFDdkMsS0FBSSxDQUFDLFFBQ0gsT0FBTSxJQUFJLE1BQU0sNkNBQTZDO0FBRS9ELFFBQU8ifQ==
@@ -1,15 +1,19 @@
1
+ import { UserEvent } from "../../application/models/api/userEvent.cjs";
1
2
  import { VariantTypeEnum } from "../../application/models/variantInfo/variantInfo.cjs";
2
- import { UserEvent } from "@spiffy-ai/commerce-api-client";
3
3
 
4
4
  //#region src/contexts/pageContext/types.d.ts
5
5
  type PDPPageVariantInfo = {
6
6
  variantType: VariantTypeEnum.Pdp;
7
7
  productId: string;
8
+ collections: string[];
9
+ numberOfReviews: number;
10
+ merchantTags: string[];
8
11
  url: string;
9
12
  };
10
13
  type PLPPageVariantInfo = {
11
14
  variantType: VariantTypeEnum.Plp;
12
15
  plpId: string;
16
+ topCategory: string;
13
17
  url: string;
14
18
  };
15
19
  type VisitPageVariantInfo = {
@@ -24,4 +28,4 @@ interface PageDetails {
24
28
  }
25
29
  //#endregion
26
30
  export { PDPPageVariantInfo, PLPPageVariantInfo, PageDetails, PageVariantInfo, VisitPageVariantInfo };
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3R5cGVzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlckV2ZW50IH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IFZhcmlhbnRUeXBlRW51bSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IHR5cGUgUERQUGFnZVZhcmlhbnRJbmZvID0ge1xuICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGRwO1xuICAgIHByb2R1Y3RJZDogc3RyaW5nO1xuICAgIHVybDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFBMUFBhZ2VWYXJpYW50SW5mbyA9IHtcbiAgICB2YXJpYW50VHlwZTogVmFyaWFudFR5cGVFbnVtLlBscDtcbiAgICBwbHBJZDogc3RyaW5nO1xuICAgIHVybDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFZpc2l0UGFnZVZhcmlhbnRJbmZvID0ge1xuICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGFnZVZpc2l0O1xuICAgIHVybDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFBhZ2VWYXJpYW50SW5mbyA9IFBEUFBhZ2VWYXJpYW50SW5mbyB8IFBMUFBhZ2VWYXJpYW50SW5mbyB8IFZpc2l0UGFnZVZhcmlhbnRJbmZvO1xuZXhwb3J0IGludGVyZmFjZSBQYWdlRGV0YWlscyB7XG4gICAgcGFnZVVybDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIHZhcmlhbnRJbmZvOiBQYWdlVmFyaWFudEluZm8gfCB1bmRlZmluZWQ7XG4gICAgdXNlckV2ZW50OiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxJQUFXLHFCQUFxQixDQUFDLFdBQUEsZ0JBQUEsSUFBQTtBQUNqQyxJQUFXLHFCQUFxQixDQUFDLFdBQUcsZ0JBQUEsSUFBQTtBQUNwQyxJQUFXLHVCQUFVLENBQUEsV0FBQSxnQkFBQSxVQUFBO0FBQ3JCLElBQVcsa0JBQUk7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ2YsSUFBQyxjQUFBO0NBQUE7T0FBQTtPQUFBO0NBQUEifQ==
31
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3BhZ2VDb250ZXh0L3R5cGVzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlckV2ZW50LCBWYXJpYW50VHlwZUVudW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCB0eXBlIFBEUFBhZ2VWYXJpYW50SW5mbyA9IHtcbiAgICB2YXJpYW50VHlwZTogVmFyaWFudFR5cGVFbnVtLlBkcDtcbiAgICBwcm9kdWN0SWQ6IHN0cmluZztcbiAgICBjb2xsZWN0aW9uczogc3RyaW5nW107XG4gICAgbnVtYmVyT2ZSZXZpZXdzOiBudW1iZXI7XG4gICAgbWVyY2hhbnRUYWdzOiBzdHJpbmdbXTtcbiAgICB1cmw6IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBQTFBQYWdlVmFyaWFudEluZm8gPSB7XG4gICAgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlRW51bS5QbHA7XG4gICAgcGxwSWQ6IHN0cmluZztcbiAgICB0b3BDYXRlZ29yeTogc3RyaW5nO1xuICAgIHVybDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFZpc2l0UGFnZVZhcmlhbnRJbmZvID0ge1xuICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGFnZVZpc2l0O1xuICAgIHVybDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFBhZ2VWYXJpYW50SW5mbyA9IFBEUFBhZ2VWYXJpYW50SW5mbyB8IFBMUFBhZ2VWYXJpYW50SW5mbyB8IFZpc2l0UGFnZVZhcmlhbnRJbmZvO1xuZXhwb3J0IGludGVyZmFjZSBQYWdlRGV0YWlscyB7XG4gICAgcGFnZVVybDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIHZhcmlhbnRJbmZvOiBQYWdlVmFyaWFudEluZm8gfCB1bmRlZmluZWQ7XG4gICAgdXNlckV2ZW50OiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxJQUFXLHFCQUFxQixDQUFDLFdBQUEsZ0JBQUEsSUFBQTtBQUNqQyxJQUFXLHFCQUFxQixDQUFDLFdBQUcsZ0JBQUEsSUFBQTtBQUNwQyxJQUFXLHVCQUFVLENBQUEsV0FBQSxnQkFBQSxVQUFBO0FBQ3JCLElBQVcsa0JBQWM7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ3pCLElBQVcsY0FBYztDQUFDO09BQUM7T0FBQTtDQUFBIn0=
@@ -1,15 +1,19 @@
1
+ import { UserEvent } from "../../application/models/api/userEvent.js";
1
2
  import { VariantTypeEnum } from "../../application/models/variantInfo/variantInfo.js";
2
- import { UserEvent } from "@spiffy-ai/commerce-api-client";
3
3
 
4
4
  //#region src/contexts/pageContext/types.d.ts
5
5
  type PDPPageVariantInfo = {
6
6
  variantType: VariantTypeEnum.Pdp;
7
7
  productId: string;
8
+ collections: string[];
9
+ numberOfReviews: number;
10
+ merchantTags: string[];
8
11
  url: string;
9
12
  };
10
13
  type PLPPageVariantInfo = {
11
14
  variantType: VariantTypeEnum.Plp;
12
15
  plpId: string;
16
+ topCategory: string;
13
17
  url: string;
14
18
  };
15
19
  type VisitPageVariantInfo = {
@@ -24,4 +28,4 @@ interface PageDetails {
24
28
  }
25
29
  //#endregion
26
30
  export { PDPPageVariantInfo, PLPPageVariantInfo, PageDetails, PageVariantInfo, VisitPageVariantInfo };
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2VyRXZlbnQgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgVmFyaWFudFR5cGVFbnVtIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5leHBvcnQgdHlwZSBQRFBQYWdlVmFyaWFudEluZm8gPSB7XG4gICAgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlRW51bS5QZHA7XG4gICAgcHJvZHVjdElkOiBzdHJpbmc7XG4gICAgdXJsOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgUExQUGFnZVZhcmlhbnRJbmZvID0ge1xuICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGxwO1xuICAgIHBscElkOiBzdHJpbmc7XG4gICAgdXJsOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgVmlzaXRQYWdlVmFyaWFudEluZm8gPSB7XG4gICAgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlRW51bS5QYWdlVmlzaXQ7XG4gICAgdXJsOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgUGFnZVZhcmlhbnRJbmZvID0gUERQUGFnZVZhcmlhbnRJbmZvIHwgUExQUGFnZVZhcmlhbnRJbmZvIHwgVmlzaXRQYWdlVmFyaWFudEluZm87XG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VEZXRhaWxzIHtcbiAgICBwYWdlVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgdmFyaWFudEluZm86IFBhZ2VWYXJpYW50SW5mbyB8IHVuZGVmaW5lZDtcbiAgICB1c2VyRXZlbnQ6IFVzZXJFdmVudCB8IHVuZGVmaW5lZDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLElBQVcscUJBQXFCLENBQUMsV0FBQSxnQkFBQSxJQUFBO0FBQ2pDLElBQVcscUJBQXFCLENBQUMsV0FBRyxnQkFBQSxJQUFBO0FBQ3BDLElBQVcsdUJBQVUsQ0FBQSxXQUFBLGdCQUFBLFVBQUE7QUFDckIsSUFBVyxrQkFBSTtDQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDZixJQUFDLGNBQUE7Q0FBQTtPQUFBO09BQUE7Q0FBQSJ9
31
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2VyRXZlbnQsIFZhcmlhbnRUeXBlRW51bSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IHR5cGUgUERQUGFnZVZhcmlhbnRJbmZvID0ge1xuICAgIHZhcmlhbnRUeXBlOiBWYXJpYW50VHlwZUVudW0uUGRwO1xuICAgIHByb2R1Y3RJZDogc3RyaW5nO1xuICAgIGNvbGxlY3Rpb25zOiBzdHJpbmdbXTtcbiAgICBudW1iZXJPZlJldmlld3M6IG51bWJlcjtcbiAgICBtZXJjaGFudFRhZ3M6IHN0cmluZ1tdO1xuICAgIHVybDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFBMUFBhZ2VWYXJpYW50SW5mbyA9IHtcbiAgICB2YXJpYW50VHlwZTogVmFyaWFudFR5cGVFbnVtLlBscDtcbiAgICBwbHBJZDogc3RyaW5nO1xuICAgIHRvcENhdGVnb3J5OiBzdHJpbmc7XG4gICAgdXJsOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgVmlzaXRQYWdlVmFyaWFudEluZm8gPSB7XG4gICAgdmFyaWFudFR5cGU6IFZhcmlhbnRUeXBlRW51bS5QYWdlVmlzaXQ7XG4gICAgdXJsOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgUGFnZVZhcmlhbnRJbmZvID0gUERQUGFnZVZhcmlhbnRJbmZvIHwgUExQUGFnZVZhcmlhbnRJbmZvIHwgVmlzaXRQYWdlVmFyaWFudEluZm87XG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VEZXRhaWxzIHtcbiAgICBwYWdlVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgdmFyaWFudEluZm86IFBhZ2VWYXJpYW50SW5mbyB8IHVuZGVmaW5lZDtcbiAgICB1c2VyRXZlbnQ6IFVzZXJFdmVudCB8IHVuZGVmaW5lZDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLElBQVcscUJBQXFCLENBQUMsV0FBQSxnQkFBQSxJQUFBO0FBQ2pDLElBQVcscUJBQXFCLENBQUMsV0FBRyxnQkFBQSxJQUFBO0FBQ3BDLElBQVcsdUJBQVUsQ0FBQSxXQUFBLGdCQUFBLFVBQUE7QUFDckIsSUFBVyxrQkFBYztDQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDekIsSUFBVyxjQUFjO0NBQUM7T0FBQztPQUFBO0NBQUEifQ==
@@ -1,8 +1,8 @@
1
1
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
2
  const require_messageQueue = require('../../atoms/chat/messageQueue.cjs');
3
3
  let __spiffy_ai_commerce_api_client = require("@spiffy-ai/commerce-api-client");
4
- let react = require("react");
5
4
  let uuid = require("uuid");
5
+ let react = require("react");
6
6
  let jotai = require("jotai");
7
7
 
8
8
  //#region src/contexts/salesAgentContext/chatAPI.ts
@@ -20,12 +20,18 @@ const useSalesAgentChatAPI = () => {
20
20
  }
21
21
  });
22
22
  }, [queueUserEvent]),
23
+ logUserEvent: (0, react.useCallback)((event) => {
24
+ queueUserEvent(event);
25
+ }, [queueUserEvent]),
23
26
  onSuggestionClicked: (0, react.useCallback)((suggestion) => {
24
27
  queueUserEvent({
25
28
  eventId: (0, uuid.v4)(),
26
29
  category: __spiffy_ai_commerce_api_client.UserEventCategory.SuggestionClicked,
27
30
  createdAt: (/* @__PURE__ */ new Date()).toISOString(),
28
- attributes: { suggestionId: suggestion.id }
31
+ attributes: {
32
+ suggestionId: suggestion.id,
33
+ content: suggestion.content
34
+ }
29
35
  });
30
36
  }, [queueUserEvent]),
31
37
  onTypedMessageSubmitted: (0, react.useCallback)(({ query }) => {
@@ -42,4 +48,4 @@ const useSalesAgentChatAPI = () => {
42
48
 
43
49
  //#endregion
44
50
  exports.useSalesAgentChatAPI = useSalesAgentChatAPI;
45
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdEFQSS5janMiLCJuYW1lcyI6WyJxdWV1ZVVzZXJFdmVudEF0b20iLCJVc2VyRXZlbnRDYXRlZ29yeSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9zYWxlc0FnZW50Q29udGV4dC9jaGF0QVBJLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoaXMgY29tcG9uZW50IHdpbGwgaW50ZXJhY3Qgd2l0aCB0aGUgYmFja2VuZCBBUEkgdG8gZ2V0IHRoZSByZXNwb25zZXMgZnJvbSB0aGUgc2FsZXMgYWdlbnQuXG5cbmltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5LCBVc2VyRXZlbnRDYXRlZ29yeSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBTdWdnZXN0aW9uLCBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IHVzZVNldEF0b20gfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IHF1ZXVlVXNlckV2ZW50QXRvbSB9IGZyb20gJ3NyYy9hdG9tcy9jaGF0L21lc3NhZ2VRdWV1ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2FsZXNBZ2VudENoYXRBUEkge1xuICBsb2dQYWdlVmlzaXQ6ICh7IHBhZ2VWaXNpdENhdGVnb3J5IH06IHsgcGFnZVZpc2l0Q2F0ZWdvcnk6IFBhZ2VWaXNpdENhdGVnb3J5IH0pID0+IHZvaWQ7XG4gIG9uU3VnZ2VzdGlvbkNsaWNrZWQ6IChzdWdnZXN0aW9uOiBTdWdnZXN0aW9uKSA9PiB2b2lkO1xuICBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZDogKHsgcXVlcnkgfTogeyBxdWVyeTogc3RyaW5nIH0pID0+IHZvaWQ7XG4gIG9uRm9ybVJlc3BvbnNlU3VibWl0dGVkOiAoZm9ybVJlc3BvbnNlOiBhbnkpID0+IHZvaWQ7IC8vIFRPRE86IEZpZ3VyZSBvdXQgdGhlIHJpZ2h0IHR5cGVcbn1cblxuZXhwb3J0IGNvbnN0IHVzZVNhbGVzQWdlbnRDaGF0QVBJID0gKCkgPT4ge1xuICAvLyBUT0RPOiBFYWNoIG9mIHRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRyaWdnZXIgYm90aCB0aGUgbmVjZXNzYXJ5IGFtcGxpdHVkZSBldmVudHMgYW5kIGluaXRpYXRlIHRoZVxuICAvLyBuZWNlc3NhcnkgYWN0aW9ucyB0byB0cmlnZ2VyIHRoZSBiYWNrZW5kIEFQSVxuICBjb25zdCBxdWV1ZVVzZXJFdmVudCA9IHVzZVNldEF0b20ocXVldWVVc2VyRXZlbnRBdG9tKTtcblxuICBjb25zdCBsb2dQYWdlVmlzaXQgPSB1c2VDYWxsYmFjayhcbiAgICAoeyBwYWdlVmlzaXRDYXRlZ29yeSB9OiB7IHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeSB9KSA9PiB7XG4gICAgICBjb25zdCBldmVudDogVXNlckV2ZW50ID0ge1xuICAgICAgICBldmVudElkOiB1dWlkKCksXG4gICAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5QYWdlVmlzaXQsXG4gICAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgICAgICBwYWdlVmlzaXRDYXRlZ29yeSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgICBxdWV1ZVVzZXJFdmVudChldmVudCk7XG4gICAgfSxcbiAgICBbcXVldWVVc2VyRXZlbnRdLFxuICApO1xuICBjb25zdCBvblN1Z2dlc3Rpb25DbGlja2VkID0gdXNlQ2FsbGJhY2soXG4gICAgKHN1Z2dlc3Rpb246IFN1Z2dlc3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50OiBVc2VyRXZlbnQgPSB7XG4gICAgICAgIGV2ZW50SWQ6IHV1aWQoKSxcbiAgICAgICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlN1Z2dlc3Rpb25DbGlja2VkLFxuICAgICAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIHN1Z2dlc3Rpb25JZDogc3VnZ2VzdGlvbi5pZCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgICBxdWV1ZVVzZXJFdmVudChldmVudCk7XG4gICAgfSxcbiAgICBbcXVldWVVc2VyRXZlbnRdLFxuICApO1xuICBjb25zdCBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZCA9IHVzZUNhbGxiYWNrKFxuICAgICh7IHF1ZXJ5IH06IHsgcXVlcnk6IHN0cmluZyB9KSA9PiB7XG4gICAgICBjb25zdCBldmVudDogVXNlckV2ZW50ID0ge1xuICAgICAgICBldmVudElkOiB1dWlkKCksXG4gICAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5RdWVyeVR5cGVkLFxuICAgICAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIHF1ZXJ5LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICAgIHF1ZXVlVXNlckV2ZW50KGV2ZW50KTtcbiAgICB9LFxuICAgIFtxdWV1ZVVzZXJFdmVudF0sXG4gICk7XG4gIGNvbnN0IG9uRm9ybVJlc3BvbnNlU3VibWl0dGVkID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIC8vIFRPRE86IEltcGxlbWVudCB0aGUgZm9ybSByZXNwb25zZSBzdWJtaXR0ZWRcbiAgfSwgW10pO1xuXG4gIHJldHVybiB7XG4gICAgbG9nUGFnZVZpc2l0LFxuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gIH07XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQWdCQSxNQUFhLDZCQUE2QjtDQUd4QyxNQUFNLHVDQUE0QkEsd0NBQW1CO0FBaURyRCxRQUFPO0VBQ0wsc0NBL0NDLEVBQUUsd0JBQWtFO0FBVW5FLGtCQVR5QjtJQUN2Qix1QkFBZTtJQUNmLFVBQVVDLGtEQUFrQjtJQUM1Qiw0QkFBVyxJQUFJLE1BQU0sRUFBQyxhQUFhO0lBQ25DLFlBQVk7S0FDVixLQUFLLE9BQU8sU0FBUztLQUNyQjtLQUNEO0lBQ0YsQ0FDb0I7S0FFdkIsQ0FBQyxlQUFlLENBQ2pCO0VBbUNDLDZDQWpDQyxlQUEyQjtBQVMxQixrQkFSeUI7SUFDdkIsdUJBQWU7SUFDZixVQUFVQSxrREFBa0I7SUFDNUIsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtJQUNuQyxZQUFZLEVBQ1YsY0FBYyxXQUFXLElBQzFCO0lBQ0YsQ0FDb0I7S0FFdkIsQ0FBQyxlQUFlLENBQ2pCO0VBc0JDLGlEQXBCQyxFQUFFLFlBQStCO0FBU2hDLGtCQVJ5QjtJQUN2Qix1QkFBZTtJQUNmLFVBQVVBLGtEQUFrQjtJQUM1Qiw0QkFBVyxJQUFJLE1BQU0sRUFBQyxhQUFhO0lBQ25DLFlBQVksRUFDVixPQUNEO0lBQ0YsQ0FDb0I7S0FFdkIsQ0FBQyxlQUFlLENBQ2pCO0VBU0Msc0RBUmdELElBRS9DLEVBQUUsQ0FBQztFQU9MIn0=
51
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdEFQSS5janMiLCJuYW1lcyI6WyJxdWV1ZVVzZXJFdmVudEF0b20iLCJVc2VyRXZlbnRDYXRlZ29yeSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9zYWxlc0FnZW50Q29udGV4dC9jaGF0QVBJLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoaXMgY29tcG9uZW50IHdpbGwgaW50ZXJhY3Qgd2l0aCB0aGUgYmFja2VuZCBBUEkgdG8gZ2V0IHRoZSByZXNwb25zZXMgZnJvbSB0aGUgc2FsZXMgYWdlbnQuXG5cbmltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5LCBVc2VyRXZlbnRDYXRlZ29yeSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBTdWdnZXN0aW9uLCBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IHVzZVNldEF0b20gfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IHF1ZXVlVXNlckV2ZW50QXRvbSB9IGZyb20gJ3NyYy9hdG9tcy9jaGF0L21lc3NhZ2VRdWV1ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2FsZXNBZ2VudENoYXRBUEkge1xuICBsb2dQYWdlVmlzaXQ6ICh7IHBhZ2VWaXNpdENhdGVnb3J5IH06IHsgcGFnZVZpc2l0Q2F0ZWdvcnk6IFBhZ2VWaXNpdENhdGVnb3J5IH0pID0+IHZvaWQ7XG4gIGxvZ1VzZXJFdmVudDogKGV2ZW50OiBVc2VyRXZlbnQpID0+IHZvaWQ7XG4gIG9uU3VnZ2VzdGlvbkNsaWNrZWQ6IChzdWdnZXN0aW9uOiBTdWdnZXN0aW9uKSA9PiB2b2lkO1xuICBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZDogKHsgcXVlcnkgfTogeyBxdWVyeTogc3RyaW5nIH0pID0+IHZvaWQ7XG4gIG9uRm9ybVJlc3BvbnNlU3VibWl0dGVkOiAoZm9ybVJlc3BvbnNlOiBhbnkpID0+IHZvaWQ7IC8vIFRPRE86IEZpZ3VyZSBvdXQgdGhlIHJpZ2h0IHR5cGVcbn1cblxuZXhwb3J0IGNvbnN0IHVzZVNhbGVzQWdlbnRDaGF0QVBJID0gKCkgPT4ge1xuICAvLyBUT0RPOiBFYWNoIG9mIHRoZXNlIGZ1bmN0aW9ucyB3aWxsIHRyaWdnZXIgYm90aCB0aGUgbmVjZXNzYXJ5IGFtcGxpdHVkZSBldmVudHMgYW5kIGluaXRpYXRlIHRoZVxuICAvLyBuZWNlc3NhcnkgYWN0aW9ucyB0byB0cmlnZ2VyIHRoZSBiYWNrZW5kIEFQSVxuICBjb25zdCBxdWV1ZVVzZXJFdmVudCA9IHVzZVNldEF0b20ocXVldWVVc2VyRXZlbnRBdG9tKTtcblxuICBjb25zdCBsb2dQYWdlVmlzaXQgPSB1c2VDYWxsYmFjayhcbiAgICAoeyBwYWdlVmlzaXRDYXRlZ29yeSB9OiB7IHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeSB9KSA9PiB7XG4gICAgICBjb25zdCBldmVudDogVXNlckV2ZW50ID0ge1xuICAgICAgICBldmVudElkOiB1dWlkKCksXG4gICAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5QYWdlVmlzaXQsXG4gICAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgdXJsOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgICAgICBwYWdlVmlzaXRDYXRlZ29yeSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgICBxdWV1ZVVzZXJFdmVudChldmVudCk7XG4gICAgfSxcbiAgICBbcXVldWVVc2VyRXZlbnRdLFxuICApO1xuXG4gIGNvbnN0IGxvZ1VzZXJFdmVudCA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudDogVXNlckV2ZW50KSA9PiB7XG4gICAgICBxdWV1ZVVzZXJFdmVudChldmVudCk7XG4gICAgfSxcbiAgICBbcXVldWVVc2VyRXZlbnRdLFxuICApO1xuICBjb25zdCBvblN1Z2dlc3Rpb25DbGlja2VkID0gdXNlQ2FsbGJhY2soXG4gICAgKHN1Z2dlc3Rpb246IFN1Z2dlc3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50OiBVc2VyRXZlbnQgPSB7XG4gICAgICAgIGV2ZW50SWQ6IHV1aWQoKSxcbiAgICAgICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlN1Z2dlc3Rpb25DbGlja2VkLFxuICAgICAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIHN1Z2dlc3Rpb25JZDogc3VnZ2VzdGlvbi5pZCxcbiAgICAgICAgICBjb250ZW50OiBzdWdnZXN0aW9uLmNvbnRlbnQsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgICAgcXVldWVVc2VyRXZlbnQoZXZlbnQpO1xuICAgIH0sXG4gICAgW3F1ZXVlVXNlckV2ZW50XSxcbiAgKTtcbiAgY29uc3Qgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQgPSB1c2VDYWxsYmFjayhcbiAgICAoeyBxdWVyeSB9OiB7IHF1ZXJ5OiBzdHJpbmcgfSkgPT4ge1xuICAgICAgY29uc3QgZXZlbnQ6IFVzZXJFdmVudCA9IHtcbiAgICAgICAgZXZlbnRJZDogdXVpZCgpLFxuICAgICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUXVlcnlUeXBlZCxcbiAgICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgICBxdWVyeSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgICBxdWV1ZVVzZXJFdmVudChldmVudCk7XG4gICAgfSxcbiAgICBbcXVldWVVc2VyRXZlbnRdLFxuICApO1xuICBjb25zdCBvbkZvcm1SZXNwb25zZVN1Ym1pdHRlZCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAvLyBUT0RPOiBJbXBsZW1lbnQgdGhlIGZvcm0gcmVzcG9uc2Ugc3VibWl0dGVkXG4gIH0sIFtdKTtcblxuICByZXR1cm4ge1xuICAgIGxvZ1BhZ2VWaXNpdCxcbiAgICBsb2dVc2VyRXZlbnQsXG4gICAgb25TdWdnZXN0aW9uQ2xpY2tlZCxcbiAgICBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZCxcbiAgICBvbkZvcm1SZXNwb25zZVN1Ym1pdHRlZCxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBaUJBLE1BQWEsNkJBQTZCO0NBR3hDLE1BQU0sdUNBQTRCQSx3Q0FBbUI7QUF5RHJELFFBQU87RUFDTCxzQ0F2REMsRUFBRSx3QkFBa0U7QUFVbkUsa0JBVHlCO0lBQ3ZCLHVCQUFlO0lBQ2YsVUFBVUMsa0RBQWtCO0lBQzVCLDRCQUFXLElBQUksTUFBTSxFQUFDLGFBQWE7SUFDbkMsWUFBWTtLQUNWLEtBQUssT0FBTyxTQUFTO0tBQ3JCO0tBQ0Q7SUFDRixDQUNvQjtLQUV2QixDQUFDLGVBQWUsQ0FDakI7RUEyQ0Msc0NBeENDLFVBQXFCO0FBQ3BCLGtCQUFlLE1BQU07S0FFdkIsQ0FBQyxlQUFlLENBQ2pCO0VBcUNDLDZDQW5DQyxlQUEyQjtBQVUxQixrQkFUeUI7SUFDdkIsdUJBQWU7SUFDZixVQUFVQSxrREFBa0I7SUFDNUIsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtJQUNuQyxZQUFZO0tBQ1YsY0FBYyxXQUFXO0tBQ3pCLFNBQVMsV0FBVztLQUNyQjtJQUNGLENBQ29CO0tBRXZCLENBQUMsZUFBZSxDQUNqQjtFQXVCQyxpREFyQkMsRUFBRSxZQUErQjtBQVNoQyxrQkFSeUI7SUFDdkIsdUJBQWU7SUFDZixVQUFVQSxrREFBa0I7SUFDNUIsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtJQUNuQyxZQUFZLEVBQ1YsT0FDRDtJQUNGLENBQ29CO0tBRXZCLENBQUMsZUFBZSxDQUNqQjtFQVVDLHNEQVRnRCxJQUUvQyxFQUFFLENBQUM7RUFRTCJ9
@@ -1,3 +1,4 @@
1
+ import { UserEvent as UserEvent$1 } from "../../application/models/api/userEvent.cjs";
1
2
  import { Suggestion as Suggestion$1 } from "../../application/models/api/suggestion.cjs";
2
3
  import { PageVisitCategory } from "@spiffy-ai/commerce-api-client";
3
4
 
@@ -8,6 +9,7 @@ interface SalesAgentChatAPI {
8
9
  }: {
9
10
  pageVisitCategory: PageVisitCategory;
10
11
  }) => void;
12
+ logUserEvent: (event: UserEvent$1) => void;
11
13
  onSuggestionClicked: (suggestion: Suggestion$1) => void;
12
14
  onTypedMessageSubmitted: ({
13
15
  query
@@ -22,6 +24,7 @@ declare const useSalesAgentChatAPI: () => {
22
24
  }: {
23
25
  pageVisitCategory: PageVisitCategory;
24
26
  }) => void;
27
+ logUserEvent: (event: UserEvent$1) => void;
25
28
  onSuggestionClicked: (suggestion: Suggestion$1) => void;
26
29
  onTypedMessageSubmitted: ({
27
30
  query
@@ -32,4 +35,4 @@ declare const useSalesAgentChatAPI: () => {
32
35
  };
33
36
  //#endregion
34
37
  export { SalesAgentChatAPI, useSalesAgentChatAPI };
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdEFQSS5kLmN0cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvc2FsZXNBZ2VudENvbnRleHQvY2hhdEFQSS5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5IH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IFN1Z2dlc3Rpb24gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBpbnRlcmZhY2UgU2FsZXNBZ2VudENoYXRBUEkge1xuICAgIGxvZ1BhZ2VWaXNpdDogKHsgcGFnZVZpc2l0Q2F0ZWdvcnkgfToge1xuICAgICAgICBwYWdlVmlzaXRDYXRlZ29yeTogUGFnZVZpc2l0Q2F0ZWdvcnk7XG4gICAgfSkgPT4gdm9pZDtcbiAgICBvblN1Z2dlc3Rpb25DbGlja2VkOiAoc3VnZ2VzdGlvbjogU3VnZ2VzdGlvbikgPT4gdm9pZDtcbiAgICBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZDogKHsgcXVlcnkgfToge1xuICAgICAgICBxdWVyeTogc3RyaW5nO1xuICAgIH0pID0+IHZvaWQ7XG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQ6IChmb3JtUmVzcG9uc2U6IGFueSkgPT4gdm9pZDtcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZVNhbGVzQWdlbnRDaGF0QVBJOiAoKSA9PiB7XG4gICAgbG9nUGFnZVZpc2l0OiAoeyBwYWdlVmlzaXRDYXRlZ29yeSB9OiB7XG4gICAgICAgIHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeTtcbiAgICB9KSA9PiB2b2lkO1xuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQ6IChzdWdnZXN0aW9uOiBTdWdnZXN0aW9uKSA9PiB2b2lkO1xuICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkOiAoeyBxdWVyeSB9OiB7XG4gICAgICAgIHF1ZXJ5OiBzdHJpbmc7XG4gICAgfSkgPT4gdm9pZDtcbiAgICBvbkZvcm1SZXNwb25zZVN1Ym1pdHRlZDogKCkgPT4gdm9pZDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxJQUFXLG9CQUFvQjtDQUFDO09BQUc7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNuQyxJQUFXLHVCQUF1QjtDQUFDO09BQU87T0FBQTtPQUFBO09BQUE7Q0FBQSJ9
38
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdEFQSS5kLmN0cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvc2FsZXNBZ2VudENvbnRleHQvY2hhdEFQSS5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2VWaXNpdENhdGVnb3J5IH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IFN1Z2dlc3Rpb24sIFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IGludGVyZmFjZSBTYWxlc0FnZW50Q2hhdEFQSSB7XG4gICAgbG9nUGFnZVZpc2l0OiAoeyBwYWdlVmlzaXRDYXRlZ29yeSB9OiB7XG4gICAgICAgIHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeTtcbiAgICB9KSA9PiB2b2lkO1xuICAgIGxvZ1VzZXJFdmVudDogKGV2ZW50OiBVc2VyRXZlbnQpID0+IHZvaWQ7XG4gICAgb25TdWdnZXN0aW9uQ2xpY2tlZDogKHN1Z2dlc3Rpb246IFN1Z2dlc3Rpb24pID0+IHZvaWQ7XG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQ6ICh7IHF1ZXJ5IH06IHtcbiAgICAgICAgcXVlcnk6IHN0cmluZztcbiAgICB9KSA9PiB2b2lkO1xuICAgIG9uRm9ybVJlc3BvbnNlU3VibWl0dGVkOiAoZm9ybVJlc3BvbnNlOiBhbnkpID0+IHZvaWQ7XG59XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VTYWxlc0FnZW50Q2hhdEFQSTogKCkgPT4ge1xuICAgIGxvZ1BhZ2VWaXNpdDogKHsgcGFnZVZpc2l0Q2F0ZWdvcnkgfToge1xuICAgICAgICBwYWdlVmlzaXRDYXRlZ29yeTogUGFnZVZpc2l0Q2F0ZWdvcnk7XG4gICAgfSkgPT4gdm9pZDtcbiAgICBsb2dVc2VyRXZlbnQ6IChldmVudDogVXNlckV2ZW50KSA9PiB2b2lkO1xuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQ6IChzdWdnZXN0aW9uOiBTdWdnZXN0aW9uKSA9PiB2b2lkO1xuICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkOiAoeyBxdWVyeSB9OiB7XG4gICAgICAgIHF1ZXJ5OiBzdHJpbmc7XG4gICAgfSkgPT4gdm9pZDtcbiAgICBvbkZvcm1SZXNwb25zZVN1Ym1pdHRlZDogKCkgPT4gdm9pZDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsSUFBVyxvQkFBb0I7Q0FBQztPQUFHO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNuQyxJQUFXLHVCQUF1QjtDQUFDO09BQU87T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBIn0=