@envive-ai/react-hooks 0.3.15-beta.1 → 0.3.16

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 (119) hide show
  1. package/dist/application/commerce-api.cjs +38 -1
  2. package/dist/application/commerce-api.d.cts +13 -2
  3. package/dist/application/commerce-api.d.ts +13 -2
  4. package/dist/application/commerce-api.js +39 -2
  5. package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.cjs +2 -2
  6. package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.js +2 -2
  7. package/dist/application/models/index.d.cts +10 -10
  8. package/dist/application/models/index.d.ts +10 -10
  9. package/dist/application/models/variantInfo/variantInfo.cjs +1 -1
  10. package/dist/application/models/variantInfo/variantInfo.d.cts +2 -2
  11. package/dist/application/models/variantInfo/variantInfo.d.ts +2 -2
  12. package/dist/application/models/variantInfo/variantInfo.js +1 -1
  13. package/dist/application/utils/productRetrievalResponseToProductRetrievalResult.cjs +18 -0
  14. package/dist/application/utils/productRetrievalResponseToProductRetrievalResult.js +18 -0
  15. package/dist/atoms/app/index.d.cts +7 -7
  16. package/dist/atoms/app/index.d.ts +6 -6
  17. package/dist/atoms/app/variant.cjs +5 -1
  18. package/dist/atoms/app/variant.d.cts +1 -1
  19. package/dist/atoms/app/variant.d.ts +1 -1
  20. package/dist/atoms/app/variant.js +5 -1
  21. package/dist/atoms/chat/chatState.d.cts +17 -17
  22. package/dist/atoms/chat/chatState.d.ts +18 -18
  23. package/dist/atoms/chat/form.d.cts +2 -2
  24. package/dist/atoms/chat/index.cjs +1 -1
  25. package/dist/atoms/chat/index.d.cts +2 -2
  26. package/dist/atoms/chat/index.js +1 -1
  27. package/dist/atoms/chat/lastMessage.d.ts +2 -2
  28. package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
  29. package/dist/atoms/chat/replies.d.cts +3 -3
  30. package/dist/atoms/chat/replies.d.ts +3 -3
  31. package/dist/atoms/chat/suggestions.d.cts +2 -2
  32. package/dist/atoms/chat/suggestions.d.ts +2 -2
  33. package/dist/atoms/envive/enviveConfig.d.cts +12 -12
  34. package/dist/atoms/envive/enviveConfig.d.ts +13 -13
  35. package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
  36. package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
  37. package/dist/atoms/org/customerService.d.cts +6 -6
  38. package/dist/atoms/org/customerService.d.ts +6 -6
  39. package/dist/atoms/org/graphqlConfig.d.cts +4 -4
  40. package/dist/atoms/org/graphqlConfig.d.ts +4 -4
  41. package/dist/atoms/org/index.cjs +1 -1
  42. package/dist/atoms/org/index.js +1 -1
  43. package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
  44. package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
  45. package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
  46. package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
  47. package/dist/atoms/search/chatSearch.cjs +1 -1
  48. package/dist/atoms/search/chatSearch.d.cts +18 -18
  49. package/dist/atoms/search/chatSearch.d.ts +1 -1
  50. package/dist/atoms/search/chatSearch.js +1 -1
  51. package/dist/atoms/search/searchAPI.cjs +1 -1
  52. package/dist/atoms/search/searchAPI.d.cts +14 -14
  53. package/dist/atoms/search/searchAPI.d.ts +14 -14
  54. package/dist/atoms/search/searchAPI.js +1 -1
  55. package/dist/atoms/widget/chatPreviewLoading.d.cts +2 -2
  56. package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
  57. package/dist/contexts/enviveContext/types.d.cts +1 -1
  58. package/dist/contexts/enviveContext/types.d.ts +1 -1
  59. package/dist/contexts/graphqlContext/graphqlContext.d.cts +1 -1
  60. package/dist/contexts/graphqlContext/graphqlContext.d.ts +1 -1
  61. package/dist/contexts/graphqlContext/mockV3Config.cjs +2 -3
  62. package/dist/contexts/graphqlContext/mockV3Config.js +2 -3
  63. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +1 -1
  64. package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +1 -1
  65. package/dist/contexts/salesAgentContext/chatAPI.cjs +7 -6
  66. package/dist/contexts/salesAgentContext/chatAPI.d.cts +3 -2
  67. package/dist/contexts/salesAgentContext/chatAPI.d.ts +3 -2
  68. package/dist/contexts/salesAgentContext/chatAPI.js +7 -6
  69. package/dist/contexts/salesAgentContext/salesAgentContext.cjs +20 -7
  70. package/dist/contexts/salesAgentContext/salesAgentContext.d.cts +3 -2
  71. package/dist/contexts/salesAgentContext/salesAgentContext.d.ts +3 -2
  72. package/dist/contexts/salesAgentContext/salesAgentContext.js +21 -8
  73. package/dist/contexts/salesAgentContext/salesAgentService.cjs +9 -4
  74. package/dist/contexts/salesAgentContext/salesAgentService.js +9 -4
  75. package/dist/contexts/searchContext/searchContext.cjs +1 -1
  76. package/dist/contexts/searchContext/searchContext.js +1 -1
  77. package/dist/contexts/types.d.cts +1 -1
  78. package/dist/contexts/types.d.ts +1 -1
  79. package/dist/contexts/typesV3.cjs +1 -1
  80. package/dist/contexts/typesV3.d.cts +1 -10
  81. package/dist/contexts/typesV3.d.ts +1 -10
  82. package/dist/contexts/typesV3.js +1 -1
  83. package/dist/hooks/ChatToggle/useChatToggle.cjs +1 -1
  84. package/dist/hooks/ChatToggle/useChatToggle.js +1 -1
  85. package/dist/hooks/ProductImageUrl/index.cjs +3 -0
  86. package/dist/hooks/ProductImageUrl/index.d.cts +2 -0
  87. package/dist/hooks/ProductImageUrl/index.d.ts +2 -0
  88. package/dist/hooks/ProductImageUrl/index.js +3 -0
  89. package/dist/hooks/ProductImageUrl/useProductImageUrl.cjs +33 -0
  90. package/dist/hooks/ProductImageUrl/useProductImageUrl.d.cts +9 -0
  91. package/dist/hooks/ProductImageUrl/useProductImageUrl.d.ts +9 -0
  92. package/dist/hooks/ProductImageUrl/useProductImageUrl.js +32 -0
  93. package/dist/hooks/Search/useSearch.cjs +3 -3
  94. package/dist/hooks/Search/useSearch.d.cts +1 -1
  95. package/dist/hooks/Search/useSearch.d.ts +1 -1
  96. package/dist/hooks/Search/useSearch.js +3 -3
  97. package/dist/hooks/WidgetInteraction/types.cjs +2 -1
  98. package/dist/hooks/WidgetInteraction/types.d.cts +2 -1
  99. package/dist/hooks/WidgetInteraction/types.d.ts +2 -1
  100. package/dist/hooks/WidgetInteraction/types.js +2 -1
  101. package/dist/hooks/utils.d.cts +1 -1
  102. package/dist/hooks/utils.d.ts +1 -1
  103. package/dist/services/ga4ProjectionService/ga4EventSchema.cjs +2 -1
  104. package/dist/services/ga4ProjectionService/ga4EventSchema.js +2 -1
  105. package/package.json +5 -1
  106. package/src/application/commerce-api.ts +51 -0
  107. package/src/application/models/guards/api/isApiQueryTypedEventAttributes.ts +1 -6
  108. package/src/application/models/variantInfo/variantInfo.ts +1 -1
  109. package/src/application/utils/productRetrievalResponseToProductRetrievalResult.ts +21 -0
  110. package/src/atoms/app/variant.ts +8 -2
  111. package/src/contexts/graphqlContext/mockV3Config.ts +0 -3
  112. package/src/contexts/salesAgentContext/chatAPI.ts +4 -3
  113. package/src/contexts/salesAgentContext/salesAgentContext.tsx +32 -16
  114. package/src/contexts/salesAgentContext/salesAgentService.ts +22 -14
  115. package/src/contexts/typesV3.ts +0 -10
  116. package/src/hooks/ProductImageUrl/index.ts +1 -0
  117. package/src/hooks/ProductImageUrl/useProductImageUrl.ts +35 -0
  118. package/src/hooks/WidgetInteraction/types.ts +1 -0
  119. package/src/services/ga4ProjectionService/ga4EventSchema.ts +1 -0
@@ -32,6 +32,7 @@ declare enum WidgetInteractionComponent {
32
32
  EMBEDDED_WIDGET = "embedded_widget",
33
33
  SUGGESTION_BAR = "suggestion_bar",
34
34
  FLOATING_BUTTON = "floating_button",
35
+ FULL_PAGE_SALES_AGENT = "full_page_sales_agent",
35
36
  SOCIAL_PROOF = "social_proof",
36
37
  CHAT_PREVIEW = "chat_preview",
37
38
  FLOATING_CHAT = "floating_chat",
@@ -107,4 +108,4 @@ type MessageSubmitted = {
107
108
  type WidgetInteractionData = SuggestionScrolled | SuggestionClicked | SuggestionHovered | LinkClicked | WidgetCollapsed | TextLinkClicked | ArticleLinkClicked | ProductCardClicked | ReviewCardClicked | MessageSubmitted;
108
109
  //#endregion
109
110
  export { ArticleLinkClicked, Collapse, InternalWidgetInteraction, LinkClicked, MessageSubmitted, Product, ProductCardClicked, Request, Review, ReviewCardClicked, Suggestion, SuggestionClicked, SuggestionHovered, SuggestionScrolled, TextLinkClicked, URL, WidgetCollapsed, WidgetInteraction, WidgetInteractionComponent, WidgetInteractionContext, WidgetInteractionData, WidgetInteractionPageType, WidgetInteractionType };
110
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvV2lkZ2V0SW50ZXJhY3Rpb24vdHlwZXMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnLi4vLi4vY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dCc7XG5leHBvcnQgaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uQ29udGV4dCB7XG4gICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlO1xuICAgIHBhZ2VfaWQ6IHN0cmluZztcbn1cbmludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvblRyaWdnZXIge1xuICAgIGludGVyYWN0aW9uX2lkPzogc3RyaW5nO1xuICAgIHdpZGdldDogV2lkZ2V0SW50ZXJhY3Rpb25Db21wb25lbnQ7XG4gICAgd2lkZ2V0X2ludGVyYWN0aW9uOiBXaWRnZXRJbnRlcmFjdGlvblR5cGU7XG4gICAgd2lkZ2V0X2ludGVyYWN0aW9uX2RhdGE/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGEgfCBudWxsO1xufVxuZXhwb3J0IGludGVyZmFjZSBJbnRlcm5hbFdpZGdldEludGVyYWN0aW9uIHtcbiAgICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICAgIGNvbnRleHQ6IFdpZGdldEludGVyYWN0aW9uQ29udGV4dDtcbiAgICB0cmlnZ2VyOiBXaWRnZXRJbnRlcmFjdGlvblRyaWdnZXI7XG59XG5leHBvcnQgaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uIHtcbiAgICBldmVudE5hbWU6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ2V2ZW50TmFtZSddO1xuICAgIHRyaWdnZXI6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ3RyaWdnZXInXTtcbn1cbmV4cG9ydCBkZWNsYXJlIGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB7XG4gICAgUERQID0gXCJwZHBcIixcbiAgICBQTFAgPSBcInBscFwiLFxuICAgIEhPTUVQQUdFID0gXCJob21lcGFnZVwiLFxuICAgIFNFQVJDSCA9IFwic2VhcmNoXCIsXG4gICAgT1RIRVIgPSBcIm90aGVyXCIsXG4gICAgRlVMTF9QQUdFID0gXCJmdWxsX3BhZ2VcIlxufVxuZXhwb3J0IGRlY2xhcmUgZW51bSBXaWRnZXRJbnRlcmFjdGlvbkNvbXBvbmVudCB7XG4gICAgRU1CRURERURfV0lER0VUID0gXCJlbWJlZGRlZF93aWRnZXRcIixcbiAgICBTVUdHRVNUSU9OX0JBUiA9IFwic3VnZ2VzdGlvbl9iYXJcIixcbiAgICBGTE9BVElOR19CVVRUT04gPSBcImZsb2F0aW5nX2J1dHRvblwiLFxuICAgIFNPQ0lBTF9QUk9PRiA9IFwic29jaWFsX3Byb29mXCIsXG4gICAgQ0hBVF9QUkVWSUVXID0gXCJjaGF0X3ByZXZpZXdcIixcbiAgICBGTE9BVElOR19DSEFUID0gXCJmbG9hdGluZ19jaGF0XCIsXG4gICAgU0lOR0xFX0lNQUdFX1BST01QVCA9IFwic2luZ2xlX2ltYWdlX3Byb21wdFwiLFxuICAgIElNQUdFX1BST01QVF9DQVJEID0gXCJpbWFnZV9wcm9tcHRfY2FyZFwiLFxuICAgIFBPU1RfSU5URVJBQ1RJT05fQ09NUEFSSVNPTiA9IFwicG9zdF9pbnRlcmFjdGlvbl9jb21wYXJpc29uXCIsXG4gICAgUE9TVF9JTlRFUkFDVElPTl9FTUJFRERFRCA9IFwicG9zdF9pbnRlcmFjdGlvbl9lbWJlZGRlZFwiXG59XG5leHBvcnQgZGVjbGFyZSBlbnVtIFdpZGdldEludGVyYWN0aW9uVHlwZSB7XG4gICAgUVVFUllfSU5QVVRfQ0xJQ0tFRCA9IFwicXVlcnlfaW5wdXRfY2xpY2tlZFwiLFxuICAgIFNVR0dFU1RJT05fQ0xJQ0tFRCA9IFwic3VnZ2VzdGlvbl9jbGlja2VkXCIsXG4gICAgV0lER0VUX0NMSUNLRUQgPSBcIndpZGdldF9jbGlja2VkXCIsXG4gICAgV0lER0VUX0hPVkVSRUQgPSBcIndpZGdldF9ob3ZlcmVkXCIsXG4gICAgV0lER0VUX0VYUEFOREVEID0gXCJ3aWRnZXRfZXhwYW5kZWRcIixcbiAgICBXSURHRVRfQ09MTEFQU0VEID0gXCJ3aWRnZXRfY29sbGFwc2VkXCIsXG4gICAgU1VHR0VTVElPTl9TQ1JPTExFRCA9IFwic3VnZ2VzdGlvbl9zY3JvbGxlZFwiLFxuICAgIExJTktfQ0xJQ0tFRCA9IFwibGlua19jbGlja2VkXCIsXG4gICAgUFJPRFVDVF9DQVJEX0NMSUNLRUQgPSBcInByb2R1Y3RfY2FyZF9jbGlja2VkXCIsXG4gICAgVEVYVF9MSU5LX0NMSUNLRUQgPSBcInRleHRfbGlua19jbGlja2VkXCIsXG4gICAgQVJUSUNMRV9MSU5LX0NMSUNLRUQgPSBcImFydGljbGVfbGlua19jbGlja2VkXCIsXG4gICAgUkVWSUVXX0NBUkRfQ0xJQ0tFRCA9IFwicmV2aWV3X2NhcmRfY2xpY2tlZFwiLFxuICAgIE1FU1NBR0VfU1VCTUlUVEVEID0gXCJtZXNzYWdlX3N1Ym1pdHRlZFwiLFxuICAgIE1BTlVBTF9TQ1JPTExfVE9fQk9UVE9NID0gXCJtYW51YWxfc2Nyb2xsX3RvX2JvdHRvbVwiXG59XG5leHBvcnQgdHlwZSBVUkwgPSB7XG4gICAgdXJsOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgUHJvZHVjdCA9IHtcbiAgICBwcm9kdWN0X2lkOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgUmV2aWV3ID0ge1xuICAgIHJldmlld19pZDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFN1Z2dlc3Rpb24gPSB7XG4gICAgc3VnZ2VzdGlvbl9pZDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIFJlcXVlc3QgPSB7XG4gICAgcmVxdWVzdF90ZXh0OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgQ29sbGFwc2UgPSB7XG4gICAgY29sbGFwc2Vfc291cmNlOiAnY2xvc2VfYnV0dG9uJyB8ICdzd2lwZScgfCAnYm9keV9jbGljayc7XG59O1xuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvblNjcm9sbGVkID0ge1xuICAgIHN1Z2dlc3Rpb25fc2Nyb2xsZWQ6IFN1Z2dlc3Rpb247XG59O1xuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbkNsaWNrZWQgPSB7XG4gICAgc3VnZ2VzdGlvbl9jbGlja2VkOiBTdWdnZXN0aW9uO1xufTtcbmV4cG9ydCB0eXBlIFN1Z2dlc3Rpb25Ib3ZlcmVkID0ge1xuICAgIHN1Z2dlc3Rpb25faG92ZXJlZDogU3VnZ2VzdGlvbjtcbn07XG5leHBvcnQgdHlwZSBMaW5rQ2xpY2tlZCA9IHtcbiAgICBsaW5rX2NsaWNrZWQ6IFVSTDtcbn07XG5leHBvcnQgdHlwZSBXaWRnZXRDb2xsYXBzZWQgPSB7XG4gICAgd2lkZ2V0X2NvbGxhcHNlZDogQ29sbGFwc2U7XG59O1xuZXhwb3J0IHR5cGUgVGV4dExpbmtDbGlja2VkID0ge1xuICAgIHRleHRfbGlua19jbGlja2VkOiBVUkw7XG59O1xuZXhwb3J0IHR5cGUgQXJ0aWNsZUxpbmtDbGlja2VkID0ge1xuICAgIGFydGljbGVfbGlua19jbGlja2VkOiBVUkw7XG59O1xuZXhwb3J0IHR5cGUgUHJvZHVjdENhcmRDbGlja2VkID0ge1xuICAgIHByb2R1Y3RfY2FyZF9jbGlja2VkOiBQcm9kdWN0O1xufTtcbmV4cG9ydCB0eXBlIFJldmlld0NhcmRDbGlja2VkID0ge1xuICAgIHJldmlld19jYXJkX2NsaWNrZWQ6IFJldmlldztcbn07XG5leHBvcnQgdHlwZSBNZXNzYWdlU3VibWl0dGVkID0ge1xuICAgIG1lc3NhZ2Vfc3VibWl0dGVkOiBSZXF1ZXN0O1xufTtcbmV4cG9ydCB0eXBlIFdpZGdldEludGVyYWN0aW9uRGF0YSA9IFN1Z2dlc3Rpb25TY3JvbGxlZCB8IFN1Z2dlc3Rpb25DbGlja2VkIHwgU3VnZ2VzdGlvbkhvdmVyZWQgfCBMaW5rQ2xpY2tlZCB8IFdpZGdldENvbGxhcHNlZCB8IFRleHRMaW5rQ2xpY2tlZCB8IEFydGljbGVMaW5rQ2xpY2tlZCB8IFByb2R1Y3RDYXJkQ2xpY2tlZCB8IFJldmlld0NhcmRDbGlja2VkIHwgTWVzc2FnZVN1Ym1pdHRlZDtcbmV4cG9ydCB7fTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsSUFBVywyQkFBMkIsQ0FBQyxXQUFHLDBCQUFBO0FBQzFDLElBQUksMkJBQTJCO0NBQUM7T0FBUTtPQUFBO09BQUE7Q0FBQTtBQUN4QyxJQUFXLDRCQUFRO0NBQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ25CLElBQUEsb0JBQUE7Q0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNBLElBQVcsNEJBQXdCLENBQUEsSUFBQTtBQUNuQyxJQUFXLDZCQUFnQixDQUFBLElBQUE7QUFDM0IsSUFBVyx3QkFBd0IsQ0FBQyxJQUFFO0FBQ3RDLElBQVcsTUFBTSxDQUFDLElBQUk7QUFDdEIsSUFBVyxVQUFVLENBQUMsSUFBSTtBQUMxQixJQUFBLFNBQUEsQ0FBQSxJQUFBO0FBQ0EsSUFBVyxhQUFhLENBQUMsSUFBSTtBQUM3QixJQUFXLFVBQVUsQ0FBQyxJQUFJO0FBQzFCLElBQVcsV0FBVyxDQUFDLElBQUk7QUFDM0IsSUFBVyxxQkFBcUIsQ0FBQyxXQUFJLFdBQUE7QUFDckMsSUFBQSxvQkFBQSxDQUFBLFdBQUEsV0FBQTtBQUNBLElBQVcsb0JBQW9CLENBQUMsV0FBRyxXQUFBO0FBQ25DLElBQVcsY0FBYyxDQUFDLFdBQVcsSUFBSTtBQUN6QyxJQUFXLGtCQUFrQixDQUFDLFdBQVcsU0FBUTtBQUNqRCxJQUFBLGtCQUFBLENBQUEsV0FBQSxJQUFBO0FBQ0EsSUFBVyxxQkFBcUIsQ0FBQyxXQUFXLElBQUU7QUFDOUMsSUFBVyxxQkFBSSxDQUFBLFdBQUEsUUFBQTtBQUNmLElBQVcsb0JBQUksQ0FBQSxXQUFBLE9BQUE7QUFDZixJQUFXLG1CQUFjLENBQUEsV0FBQSxRQUFBO0FBQ3pCLElBQVcsd0JBQVU7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUEifQ==
111
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvV2lkZ2V0SW50ZXJhY3Rpb24vdHlwZXMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnLi4vLi4vY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dCc7XG5leHBvcnQgaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uQ29udGV4dCB7XG4gICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlO1xuICAgIHBhZ2VfaWQ6IHN0cmluZztcbn1cbmludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvblRyaWdnZXIge1xuICAgIGludGVyYWN0aW9uX2lkPzogc3RyaW5nO1xuICAgIHdpZGdldDogV2lkZ2V0SW50ZXJhY3Rpb25Db21wb25lbnQ7XG4gICAgd2lkZ2V0X2ludGVyYWN0aW9uOiBXaWRnZXRJbnRlcmFjdGlvblR5cGU7XG4gICAgd2lkZ2V0X2ludGVyYWN0aW9uX2RhdGE/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGEgfCBudWxsO1xufVxuZXhwb3J0IGludGVyZmFjZSBJbnRlcm5hbFdpZGdldEludGVyYWN0aW9uIHtcbiAgICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICAgIGNvbnRleHQ6IFdpZGdldEludGVyYWN0aW9uQ29udGV4dDtcbiAgICB0cmlnZ2VyOiBXaWRnZXRJbnRlcmFjdGlvblRyaWdnZXI7XG59XG5leHBvcnQgaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uIHtcbiAgICBldmVudE5hbWU6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ2V2ZW50TmFtZSddO1xuICAgIHRyaWdnZXI6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ3RyaWdnZXInXTtcbn1cbmV4cG9ydCBkZWNsYXJlIGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB7XG4gICAgUERQID0gXCJwZHBcIixcbiAgICBQTFAgPSBcInBscFwiLFxuICAgIEhPTUVQQUdFID0gXCJob21lcGFnZVwiLFxuICAgIFNFQVJDSCA9IFwic2VhcmNoXCIsXG4gICAgT1RIRVIgPSBcIm90aGVyXCIsXG4gICAgRlVMTF9QQUdFID0gXCJmdWxsX3BhZ2VcIlxufVxuZXhwb3J0IGRlY2xhcmUgZW51bSBXaWRnZXRJbnRlcmFjdGlvbkNvbXBvbmVudCB7XG4gICAgRU1CRURERURfV0lER0VUID0gXCJlbWJlZGRlZF93aWRnZXRcIixcbiAgICBTVUdHRVNUSU9OX0JBUiA9IFwic3VnZ2VzdGlvbl9iYXJcIixcbiAgICBGTE9BVElOR19CVVRUT04gPSBcImZsb2F0aW5nX2J1dHRvblwiLFxuICAgIEZVTExfUEFHRV9TQUxFU19BR0VOVCA9IFwiZnVsbF9wYWdlX3NhbGVzX2FnZW50XCIsXG4gICAgU09DSUFMX1BST09GID0gXCJzb2NpYWxfcHJvb2ZcIixcbiAgICBDSEFUX1BSRVZJRVcgPSBcImNoYXRfcHJldmlld1wiLFxuICAgIEZMT0FUSU5HX0NIQVQgPSBcImZsb2F0aW5nX2NoYXRcIixcbiAgICBTSU5HTEVfSU1BR0VfUFJPTVBUID0gXCJzaW5nbGVfaW1hZ2VfcHJvbXB0XCIsXG4gICAgSU1BR0VfUFJPTVBUX0NBUkQgPSBcImltYWdlX3Byb21wdF9jYXJkXCIsXG4gICAgUE9TVF9JTlRFUkFDVElPTl9DT01QQVJJU09OID0gXCJwb3N0X2ludGVyYWN0aW9uX2NvbXBhcmlzb25cIixcbiAgICBQT1NUX0lOVEVSQUNUSU9OX0VNQkVEREVEID0gXCJwb3N0X2ludGVyYWN0aW9uX2VtYmVkZGVkXCJcbn1cbmV4cG9ydCBkZWNsYXJlIGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25UeXBlIHtcbiAgICBRVUVSWV9JTlBVVF9DTElDS0VEID0gXCJxdWVyeV9pbnB1dF9jbGlja2VkXCIsXG4gICAgU1VHR0VTVElPTl9DTElDS0VEID0gXCJzdWdnZXN0aW9uX2NsaWNrZWRcIixcbiAgICBXSURHRVRfQ0xJQ0tFRCA9IFwid2lkZ2V0X2NsaWNrZWRcIixcbiAgICBXSURHRVRfSE9WRVJFRCA9IFwid2lkZ2V0X2hvdmVyZWRcIixcbiAgICBXSURHRVRfRVhQQU5ERUQgPSBcIndpZGdldF9leHBhbmRlZFwiLFxuICAgIFdJREdFVF9DT0xMQVBTRUQgPSBcIndpZGdldF9jb2xsYXBzZWRcIixcbiAgICBTVUdHRVNUSU9OX1NDUk9MTEVEID0gXCJzdWdnZXN0aW9uX3Njcm9sbGVkXCIsXG4gICAgTElOS19DTElDS0VEID0gXCJsaW5rX2NsaWNrZWRcIixcbiAgICBQUk9EVUNUX0NBUkRfQ0xJQ0tFRCA9IFwicHJvZHVjdF9jYXJkX2NsaWNrZWRcIixcbiAgICBURVhUX0xJTktfQ0xJQ0tFRCA9IFwidGV4dF9saW5rX2NsaWNrZWRcIixcbiAgICBBUlRJQ0xFX0xJTktfQ0xJQ0tFRCA9IFwiYXJ0aWNsZV9saW5rX2NsaWNrZWRcIixcbiAgICBSRVZJRVdfQ0FSRF9DTElDS0VEID0gXCJyZXZpZXdfY2FyZF9jbGlja2VkXCIsXG4gICAgTUVTU0FHRV9TVUJNSVRURUQgPSBcIm1lc3NhZ2Vfc3VibWl0dGVkXCIsXG4gICAgTUFOVUFMX1NDUk9MTF9UT19CT1RUT00gPSBcIm1hbnVhbF9zY3JvbGxfdG9fYm90dG9tXCJcbn1cbmV4cG9ydCB0eXBlIFVSTCA9IHtcbiAgICB1cmw6IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBQcm9kdWN0ID0ge1xuICAgIHByb2R1Y3RfaWQ6IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBSZXZpZXcgPSB7XG4gICAgcmV2aWV3X2lkOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbiA9IHtcbiAgICBzdWdnZXN0aW9uX2lkOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgUmVxdWVzdCA9IHtcbiAgICByZXF1ZXN0X3RleHQ6IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBDb2xsYXBzZSA9IHtcbiAgICBjb2xsYXBzZV9zb3VyY2U6ICdjbG9zZV9idXR0b24nIHwgJ3N3aXBlJyB8ICdib2R5X2NsaWNrJztcbn07XG5leHBvcnQgdHlwZSBTdWdnZXN0aW9uU2Nyb2xsZWQgPSB7XG4gICAgc3VnZ2VzdGlvbl9zY3JvbGxlZDogU3VnZ2VzdGlvbjtcbn07XG5leHBvcnQgdHlwZSBTdWdnZXN0aW9uQ2xpY2tlZCA9IHtcbiAgICBzdWdnZXN0aW9uX2NsaWNrZWQ6IFN1Z2dlc3Rpb247XG59O1xuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbkhvdmVyZWQgPSB7XG4gICAgc3VnZ2VzdGlvbl9ob3ZlcmVkOiBTdWdnZXN0aW9uO1xufTtcbmV4cG9ydCB0eXBlIExpbmtDbGlja2VkID0ge1xuICAgIGxpbmtfY2xpY2tlZDogVVJMO1xufTtcbmV4cG9ydCB0eXBlIFdpZGdldENvbGxhcHNlZCA9IHtcbiAgICB3aWRnZXRfY29sbGFwc2VkOiBDb2xsYXBzZTtcbn07XG5leHBvcnQgdHlwZSBUZXh0TGlua0NsaWNrZWQgPSB7XG4gICAgdGV4dF9saW5rX2NsaWNrZWQ6IFVSTDtcbn07XG5leHBvcnQgdHlwZSBBcnRpY2xlTGlua0NsaWNrZWQgPSB7XG4gICAgYXJ0aWNsZV9saW5rX2NsaWNrZWQ6IFVSTDtcbn07XG5leHBvcnQgdHlwZSBQcm9kdWN0Q2FyZENsaWNrZWQgPSB7XG4gICAgcHJvZHVjdF9jYXJkX2NsaWNrZWQ6IFByb2R1Y3Q7XG59O1xuZXhwb3J0IHR5cGUgUmV2aWV3Q2FyZENsaWNrZWQgPSB7XG4gICAgcmV2aWV3X2NhcmRfY2xpY2tlZDogUmV2aWV3O1xufTtcbmV4cG9ydCB0eXBlIE1lc3NhZ2VTdWJtaXR0ZWQgPSB7XG4gICAgbWVzc2FnZV9zdWJtaXR0ZWQ6IFJlcXVlc3Q7XG59O1xuZXhwb3J0IHR5cGUgV2lkZ2V0SW50ZXJhY3Rpb25EYXRhID0gU3VnZ2VzdGlvblNjcm9sbGVkIHwgU3VnZ2VzdGlvbkNsaWNrZWQgfCBTdWdnZXN0aW9uSG92ZXJlZCB8IExpbmtDbGlja2VkIHwgV2lkZ2V0Q29sbGFwc2VkIHwgVGV4dExpbmtDbGlja2VkIHwgQXJ0aWNsZUxpbmtDbGlja2VkIHwgUHJvZHVjdENhcmRDbGlja2VkIHwgUmV2aWV3Q2FyZENsaWNrZWQgfCBNZXNzYWdlU3VibWl0dGVkO1xuZXhwb3J0IHt9O1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFDQSxJQUFXLDJCQUEyQixDQUFDLFdBQUcsMEJBQUE7QUFDMUMsSUFBSSwyQkFBMkI7Q0FBQztPQUFRO09BQUE7T0FBQTtDQUFBO0FBQ3hDLElBQVcsNEJBQVE7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDbkIsSUFBQSxvQkFBQTtDQUFBO09BQUE7T0FBQTtDQUFBO0FBQ0EsSUFBVyw0QkFBd0IsQ0FBQSxJQUFBO0FBQ25DLElBQVcsNkJBQWdCLENBQUEsSUFBQTtBQUMzQixJQUFXLHdCQUF3QixDQUFDLElBQUU7QUFDdEMsSUFBVyxNQUFNLENBQUMsSUFBSTtBQUN0QixJQUFXLFVBQVUsQ0FBQyxJQUFJO0FBQzFCLElBQUEsU0FBQSxDQUFBLElBQUE7QUFDQSxJQUFXLGFBQWEsQ0FBQyxJQUFJO0FBQzdCLElBQVcsVUFBVSxDQUFDLElBQUk7QUFDMUIsSUFBVyxXQUFXLENBQUMsSUFBSTtBQUMzQixJQUFXLHFCQUFxQixDQUFDLFdBQUksV0FBQTtBQUNyQyxJQUFBLG9CQUFBLENBQUEsV0FBQSxXQUFBO0FBQ0EsSUFBVyxvQkFBb0IsQ0FBQyxXQUFHLFdBQUE7QUFDbkMsSUFBVyxjQUFjLENBQUMsV0FBVyxJQUFJO0FBQ3pDLElBQVcsa0JBQWtCLENBQUMsV0FBVyxTQUFRO0FBQ2pELElBQUEsa0JBQUEsQ0FBQSxXQUFBLElBQUE7QUFDQSxJQUFXLHFCQUFxQixDQUFDLFdBQVcsSUFBRTtBQUM5QyxJQUFXLHFCQUFJLENBQUEsV0FBQSxRQUFBO0FBQ2YsSUFBVyxvQkFBSSxDQUFBLFdBQUEsT0FBQTtBQUNmLElBQVcsbUJBQWMsQ0FBQSxXQUFBLFFBQUE7QUFDekIsSUFBVyx3QkFBVTtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQSJ9
@@ -12,6 +12,7 @@ let WidgetInteractionComponent = /* @__PURE__ */ function(WidgetInteractionCompo
12
12
  WidgetInteractionComponent$1["EMBEDDED_WIDGET"] = "embedded_widget";
13
13
  WidgetInteractionComponent$1["SUGGESTION_BAR"] = "suggestion_bar";
14
14
  WidgetInteractionComponent$1["FLOATING_BUTTON"] = "floating_button";
15
+ WidgetInteractionComponent$1["FULL_PAGE_SALES_AGENT"] = "full_page_sales_agent";
15
16
  WidgetInteractionComponent$1["SOCIAL_PROOF"] = "social_proof";
16
17
  WidgetInteractionComponent$1["CHAT_PREVIEW"] = "chat_preview";
17
18
  WidgetInteractionComponent$1["FLOATING_CHAT"] = "floating_chat";
@@ -41,4 +42,4 @@ let WidgetInteractionType = /* @__PURE__ */ function(WidgetInteractionType$1) {
41
42
 
42
43
  //#endregion
43
44
  export { WidgetInteractionComponent, WidgetInteractionPageType, WidgetInteractionType };
44
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuLi8uLi9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQge1xuICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGU7XG4gIHBhZ2VfaWQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uVHJpZ2dlciB7XG4gIGludGVyYWN0aW9uX2lkPzogc3RyaW5nO1xuICB3aWRnZXQ6IFdpZGdldEludGVyYWN0aW9uQ29tcG9uZW50O1xuICB3aWRnZXRfaW50ZXJhY3Rpb246IFdpZGdldEludGVyYWN0aW9uVHlwZTtcbiAgd2lkZ2V0X2ludGVyYWN0aW9uX2RhdGE/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGEgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb24ge1xuICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICBjb250ZXh0OiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQ7XG4gIHRyaWdnZXI6IFdpZGdldEludGVyYWN0aW9uVHJpZ2dlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbiB7XG4gIGV2ZW50TmFtZTogSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvblsnZXZlbnROYW1lJ107XG4gIHRyaWdnZXI6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ3RyaWdnZXInXTtcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB7XG4gIFBEUCA9ICdwZHAnLFxuICBQTFAgPSAncGxwJyxcbiAgSE9NRVBBR0UgPSAnaG9tZXBhZ2UnLFxuICBTRUFSQ0ggPSAnc2VhcmNoJyxcbiAgT1RIRVIgPSAnb3RoZXInLFxuICBGVUxMX1BBR0UgPSAnZnVsbF9wYWdlJyxcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25Db21wb25lbnQge1xuICBFTUJFRERFRF9XSURHRVQgPSAnZW1iZWRkZWRfd2lkZ2V0JyxcbiAgU1VHR0VTVElPTl9CQVIgPSAnc3VnZ2VzdGlvbl9iYXInLFxuICBGTE9BVElOR19CVVRUT04gPSAnZmxvYXRpbmdfYnV0dG9uJyxcbiAgU09DSUFMX1BST09GID0gJ3NvY2lhbF9wcm9vZicsXG4gIENIQVRfUFJFVklFVyA9ICdjaGF0X3ByZXZpZXcnLFxuICBGTE9BVElOR19DSEFUID0gJ2Zsb2F0aW5nX2NoYXQnLFxuICBTSU5HTEVfSU1BR0VfUFJPTVBUID0gJ3NpbmdsZV9pbWFnZV9wcm9tcHQnLFxuICBJTUFHRV9QUk9NUFRfQ0FSRCA9ICdpbWFnZV9wcm9tcHRfY2FyZCcsXG4gIFBPU1RfSU5URVJBQ1RJT05fQ09NUEFSSVNPTiA9ICdwb3N0X2ludGVyYWN0aW9uX2NvbXBhcmlzb24nLFxuICBQT1NUX0lOVEVSQUNUSU9OX0VNQkVEREVEID0gJ3Bvc3RfaW50ZXJhY3Rpb25fZW1iZWRkZWQnLFxufVxuXG5leHBvcnQgZW51bSBXaWRnZXRJbnRlcmFjdGlvblR5cGUge1xuICBRVUVSWV9JTlBVVF9DTElDS0VEID0gJ3F1ZXJ5X2lucHV0X2NsaWNrZWQnLFxuICBTVUdHRVNUSU9OX0NMSUNLRUQgPSAnc3VnZ2VzdGlvbl9jbGlja2VkJyxcbiAgV0lER0VUX0NMSUNLRUQgPSAnd2lkZ2V0X2NsaWNrZWQnLFxuICBXSURHRVRfSE9WRVJFRCA9ICd3aWRnZXRfaG92ZXJlZCcsXG4gIFdJREdFVF9FWFBBTkRFRCA9ICd3aWRnZXRfZXhwYW5kZWQnLFxuICBXSURHRVRfQ09MTEFQU0VEID0gJ3dpZGdldF9jb2xsYXBzZWQnLFxuICBTVUdHRVNUSU9OX1NDUk9MTEVEID0gJ3N1Z2dlc3Rpb25fc2Nyb2xsZWQnLFxuICBMSU5LX0NMSUNLRUQgPSAnbGlua19jbGlja2VkJyxcbiAgUFJPRFVDVF9DQVJEX0NMSUNLRUQgPSAncHJvZHVjdF9jYXJkX2NsaWNrZWQnLFxuICBURVhUX0xJTktfQ0xJQ0tFRCA9ICd0ZXh0X2xpbmtfY2xpY2tlZCcsXG4gIEFSVElDTEVfTElOS19DTElDS0VEID0gJ2FydGljbGVfbGlua19jbGlja2VkJyxcbiAgUkVWSUVXX0NBUkRfQ0xJQ0tFRCA9ICdyZXZpZXdfY2FyZF9jbGlja2VkJyxcbiAgTUVTU0FHRV9TVUJNSVRURUQgPSAnbWVzc2FnZV9zdWJtaXR0ZWQnLFxuICBNQU5VQUxfU0NST0xMX1RPX0JPVFRPTSA9ICdtYW51YWxfc2Nyb2xsX3RvX2JvdHRvbScsXG59XG5cbmV4cG9ydCB0eXBlIFVSTCA9IHtcbiAgdXJsOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0ID0ge1xuICBwcm9kdWN0X2lkOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBSZXZpZXcgPSB7XG4gIHJldmlld19pZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbiA9IHtcbiAgc3VnZ2VzdGlvbl9pZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUmVxdWVzdCA9IHtcbiAgcmVxdWVzdF90ZXh0OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBDb2xsYXBzZSA9IHtcbiAgY29sbGFwc2Vfc291cmNlOiAnY2xvc2VfYnV0dG9uJyB8ICdzd2lwZScgfCAnYm9keV9jbGljayc7XG59O1xuXG5leHBvcnQgdHlwZSBTdWdnZXN0aW9uU2Nyb2xsZWQgPSB7XG4gIHN1Z2dlc3Rpb25fc2Nyb2xsZWQ6IFN1Z2dlc3Rpb247XG59O1xuXG5leHBvcnQgdHlwZSBTdWdnZXN0aW9uQ2xpY2tlZCA9IHtcbiAgc3VnZ2VzdGlvbl9jbGlja2VkOiBTdWdnZXN0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbkhvdmVyZWQgPSB7XG4gIHN1Z2dlc3Rpb25faG92ZXJlZDogU3VnZ2VzdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIExpbmtDbGlja2VkID0ge1xuICBsaW5rX2NsaWNrZWQ6IFVSTDtcbn07XG5cbmV4cG9ydCB0eXBlIFdpZGdldENvbGxhcHNlZCA9IHtcbiAgd2lkZ2V0X2NvbGxhcHNlZDogQ29sbGFwc2U7XG59O1xuXG5leHBvcnQgdHlwZSBUZXh0TGlua0NsaWNrZWQgPSB7XG4gIHRleHRfbGlua19jbGlja2VkOiBVUkw7XG59O1xuXG5leHBvcnQgdHlwZSBBcnRpY2xlTGlua0NsaWNrZWQgPSB7XG4gIGFydGljbGVfbGlua19jbGlja2VkOiBVUkw7XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0Q2FyZENsaWNrZWQgPSB7XG4gIHByb2R1Y3RfY2FyZF9jbGlja2VkOiBQcm9kdWN0O1xufTtcblxuZXhwb3J0IHR5cGUgUmV2aWV3Q2FyZENsaWNrZWQgPSB7XG4gIHJldmlld19jYXJkX2NsaWNrZWQ6IFJldmlldztcbn07XG5cbmV4cG9ydCB0eXBlIE1lc3NhZ2VTdWJtaXR0ZWQgPSB7XG4gIG1lc3NhZ2Vfc3VibWl0dGVkOiBSZXF1ZXN0O1xufTtcblxuZXhwb3J0IHR5cGUgV2lkZ2V0SW50ZXJhY3Rpb25EYXRhID1cbiAgfCBTdWdnZXN0aW9uU2Nyb2xsZWRcbiAgfCBTdWdnZXN0aW9uQ2xpY2tlZFxuICB8IFN1Z2dlc3Rpb25Ib3ZlcmVkXG4gIHwgTGlua0NsaWNrZWRcbiAgfCBXaWRnZXRDb2xsYXBzZWRcbiAgfCBUZXh0TGlua0NsaWNrZWRcbiAgfCBBcnRpY2xlTGlua0NsaWNrZWRcbiAgfCBQcm9kdWN0Q2FyZENsaWNrZWRcbiAgfCBSZXZpZXdDYXJkQ2xpY2tlZFxuICB8IE1lc3NhZ2VTdWJtaXR0ZWQ7XG4iXSwibWFwcGluZ3MiOiI7QUF5QkEsSUFBWSxrRkFBTDtBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0YsSUFBWSxvRkFBTDtBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHRixJQUFZLDBFQUFMO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSJ9
45
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuLi8uLi9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQge1xuICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGU7XG4gIHBhZ2VfaWQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uVHJpZ2dlciB7XG4gIGludGVyYWN0aW9uX2lkPzogc3RyaW5nO1xuICB3aWRnZXQ6IFdpZGdldEludGVyYWN0aW9uQ29tcG9uZW50O1xuICB3aWRnZXRfaW50ZXJhY3Rpb246IFdpZGdldEludGVyYWN0aW9uVHlwZTtcbiAgd2lkZ2V0X2ludGVyYWN0aW9uX2RhdGE/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGEgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb24ge1xuICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICBjb250ZXh0OiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQ7XG4gIHRyaWdnZXI6IFdpZGdldEludGVyYWN0aW9uVHJpZ2dlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbiB7XG4gIGV2ZW50TmFtZTogSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvblsnZXZlbnROYW1lJ107XG4gIHRyaWdnZXI6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ3RyaWdnZXInXTtcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB7XG4gIFBEUCA9ICdwZHAnLFxuICBQTFAgPSAncGxwJyxcbiAgSE9NRVBBR0UgPSAnaG9tZXBhZ2UnLFxuICBTRUFSQ0ggPSAnc2VhcmNoJyxcbiAgT1RIRVIgPSAnb3RoZXInLFxuICBGVUxMX1BBR0UgPSAnZnVsbF9wYWdlJyxcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25Db21wb25lbnQge1xuICBFTUJFRERFRF9XSURHRVQgPSAnZW1iZWRkZWRfd2lkZ2V0JyxcbiAgU1VHR0VTVElPTl9CQVIgPSAnc3VnZ2VzdGlvbl9iYXInLFxuICBGTE9BVElOR19CVVRUT04gPSAnZmxvYXRpbmdfYnV0dG9uJyxcbiAgRlVMTF9QQUdFX1NBTEVTX0FHRU5UID0gJ2Z1bGxfcGFnZV9zYWxlc19hZ2VudCcsXG4gIFNPQ0lBTF9QUk9PRiA9ICdzb2NpYWxfcHJvb2YnLFxuICBDSEFUX1BSRVZJRVcgPSAnY2hhdF9wcmV2aWV3JyxcbiAgRkxPQVRJTkdfQ0hBVCA9ICdmbG9hdGluZ19jaGF0JyxcbiAgU0lOR0xFX0lNQUdFX1BST01QVCA9ICdzaW5nbGVfaW1hZ2VfcHJvbXB0JyxcbiAgSU1BR0VfUFJPTVBUX0NBUkQgPSAnaW1hZ2VfcHJvbXB0X2NhcmQnLFxuICBQT1NUX0lOVEVSQUNUSU9OX0NPTVBBUklTT04gPSAncG9zdF9pbnRlcmFjdGlvbl9jb21wYXJpc29uJyxcbiAgUE9TVF9JTlRFUkFDVElPTl9FTUJFRERFRCA9ICdwb3N0X2ludGVyYWN0aW9uX2VtYmVkZGVkJyxcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25UeXBlIHtcbiAgUVVFUllfSU5QVVRfQ0xJQ0tFRCA9ICdxdWVyeV9pbnB1dF9jbGlja2VkJyxcbiAgU1VHR0VTVElPTl9DTElDS0VEID0gJ3N1Z2dlc3Rpb25fY2xpY2tlZCcsXG4gIFdJREdFVF9DTElDS0VEID0gJ3dpZGdldF9jbGlja2VkJyxcbiAgV0lER0VUX0hPVkVSRUQgPSAnd2lkZ2V0X2hvdmVyZWQnLFxuICBXSURHRVRfRVhQQU5ERUQgPSAnd2lkZ2V0X2V4cGFuZGVkJyxcbiAgV0lER0VUX0NPTExBUFNFRCA9ICd3aWRnZXRfY29sbGFwc2VkJyxcbiAgU1VHR0VTVElPTl9TQ1JPTExFRCA9ICdzdWdnZXN0aW9uX3Njcm9sbGVkJyxcbiAgTElOS19DTElDS0VEID0gJ2xpbmtfY2xpY2tlZCcsXG4gIFBST0RVQ1RfQ0FSRF9DTElDS0VEID0gJ3Byb2R1Y3RfY2FyZF9jbGlja2VkJyxcbiAgVEVYVF9MSU5LX0NMSUNLRUQgPSAndGV4dF9saW5rX2NsaWNrZWQnLFxuICBBUlRJQ0xFX0xJTktfQ0xJQ0tFRCA9ICdhcnRpY2xlX2xpbmtfY2xpY2tlZCcsXG4gIFJFVklFV19DQVJEX0NMSUNLRUQgPSAncmV2aWV3X2NhcmRfY2xpY2tlZCcsXG4gIE1FU1NBR0VfU1VCTUlUVEVEID0gJ21lc3NhZ2Vfc3VibWl0dGVkJyxcbiAgTUFOVUFMX1NDUk9MTF9UT19CT1RUT00gPSAnbWFudWFsX3Njcm9sbF90b19ib3R0b20nLFxufVxuXG5leHBvcnQgdHlwZSBVUkwgPSB7XG4gIHVybDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdCA9IHtcbiAgcHJvZHVjdF9pZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUmV2aWV3ID0ge1xuICByZXZpZXdfaWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFN1Z2dlc3Rpb24gPSB7XG4gIHN1Z2dlc3Rpb25faWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFJlcXVlc3QgPSB7XG4gIHJlcXVlc3RfdGV4dDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgQ29sbGFwc2UgPSB7XG4gIGNvbGxhcHNlX3NvdXJjZTogJ2Nsb3NlX2J1dHRvbicgfCAnc3dpcGUnIHwgJ2JvZHlfY2xpY2snO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvblNjcm9sbGVkID0ge1xuICBzdWdnZXN0aW9uX3Njcm9sbGVkOiBTdWdnZXN0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbkNsaWNrZWQgPSB7XG4gIHN1Z2dlc3Rpb25fY2xpY2tlZDogU3VnZ2VzdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIFN1Z2dlc3Rpb25Ib3ZlcmVkID0ge1xuICBzdWdnZXN0aW9uX2hvdmVyZWQ6IFN1Z2dlc3Rpb247XG59O1xuXG5leHBvcnQgdHlwZSBMaW5rQ2xpY2tlZCA9IHtcbiAgbGlua19jbGlja2VkOiBVUkw7XG59O1xuXG5leHBvcnQgdHlwZSBXaWRnZXRDb2xsYXBzZWQgPSB7XG4gIHdpZGdldF9jb2xsYXBzZWQ6IENvbGxhcHNlO1xufTtcblxuZXhwb3J0IHR5cGUgVGV4dExpbmtDbGlja2VkID0ge1xuICB0ZXh0X2xpbmtfY2xpY2tlZDogVVJMO1xufTtcblxuZXhwb3J0IHR5cGUgQXJ0aWNsZUxpbmtDbGlja2VkID0ge1xuICBhcnRpY2xlX2xpbmtfY2xpY2tlZDogVVJMO1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdENhcmRDbGlja2VkID0ge1xuICBwcm9kdWN0X2NhcmRfY2xpY2tlZDogUHJvZHVjdDtcbn07XG5cbmV4cG9ydCB0eXBlIFJldmlld0NhcmRDbGlja2VkID0ge1xuICByZXZpZXdfY2FyZF9jbGlja2VkOiBSZXZpZXc7XG59O1xuXG5leHBvcnQgdHlwZSBNZXNzYWdlU3VibWl0dGVkID0ge1xuICBtZXNzYWdlX3N1Ym1pdHRlZDogUmVxdWVzdDtcbn07XG5cbmV4cG9ydCB0eXBlIFdpZGdldEludGVyYWN0aW9uRGF0YSA9XG4gIHwgU3VnZ2VzdGlvblNjcm9sbGVkXG4gIHwgU3VnZ2VzdGlvbkNsaWNrZWRcbiAgfCBTdWdnZXN0aW9uSG92ZXJlZFxuICB8IExpbmtDbGlja2VkXG4gIHwgV2lkZ2V0Q29sbGFwc2VkXG4gIHwgVGV4dExpbmtDbGlja2VkXG4gIHwgQXJ0aWNsZUxpbmtDbGlja2VkXG4gIHwgUHJvZHVjdENhcmRDbGlja2VkXG4gIHwgUmV2aWV3Q2FyZENsaWNrZWRcbiAgfCBNZXNzYWdlU3VibWl0dGVkO1xuIl0sIm1hcHBpbmdzIjoiO0FBeUJBLElBQVksa0ZBQUw7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdGLElBQVksb0ZBQUw7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHRixJQUFZLDBFQUFMO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSJ9
@@ -19,4 +19,4 @@ declare enum SearchResultsState {
19
19
  declare const getSearchResultsState: (isLoadingSearch: boolean, searchData: SearchResult | null) => SearchResultsState;
20
20
  //#endregion
21
21
  export { SearchResultsState, createAppLoadedEvent, createVisitUserEvent, getSearchResultsState, isElementPartiallyVisible, isWithinBusinessHours };
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoJztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudEluZm8gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsV0FBVyxlQUFlO0FBQ2xFLElBQVcsdUJBQXVCLENBQUMsV0FBVyxVQUFVO0FBQ3hELElBQVcsdUJBQXVCO0NBQUM7T0FBVztPQUFnQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxJQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsSUFBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVc7T0FBb0I7Q0FBbUIifQ==
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoJztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudEluZm8gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsVUFBVSxlQUFlO0FBQ2pFLElBQVcsdUJBQXVCLENBQUMsVUFBVSxVQUFVO0FBQ3ZELElBQVcsdUJBQXVCO0NBQUM7T0FBVTtPQUFpQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxHQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsR0FBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVU7T0FBb0I7Q0FBbUIifQ==
@@ -19,4 +19,4 @@ declare enum SearchResultsState {
19
19
  declare const getSearchResultsState: (isLoadingSearch: boolean, searchData: SearchResult | null) => SearchResultsState;
20
20
  //#endregion
21
21
  export { SearchResultsState, createAppLoadedEvent, createVisitUserEvent, getSearchResultsState, isElementPartiallyVisible, isWithinBusinessHours };
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWFyY2hSZXN1bHQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS9zZWFyY2gnO1xuaW1wb3J0IHsgVXNlckV2ZW50LCBWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgaXNFbGVtZW50UGFydGlhbGx5VmlzaWJsZTogKGVsPzogSFRNTERpdkVsZW1lbnQgfCBudWxsKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgY3JlYXRlQXBwTG9hZGVkRXZlbnQ6ICgpID0+IFVzZXJFdmVudDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZVZpc2l0VXNlckV2ZW50OiAoeyB2YXJpYW50SW5mbywgfToge1xuICAgIHZhcmlhbnRJbmZvOiBWYXJpYW50SW5mbztcbn0pID0+IFVzZXJFdmVudCB8IHVuZGVmaW5lZDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzV2l0aGluQnVzaW5lc3NIb3VyczogKHN0YXJ0VGltZTogc3RyaW5nLCBlbmRUaW1lOiBzdHJpbmcsIHRpbWVab25lOiBzdHJpbmcpID0+IGJvb2xlYW47XG5leHBvcnQgZGVjbGFyZSBlbnVtIFNlYXJjaFJlc3VsdHNTdGF0ZSB7XG4gICAgTG9hZGluZyA9IDAsXG4gICAgUmVzdWx0cyA9IDEsXG4gICAgTm9SZXN1bHRzID0gMlxufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgZ2V0U2VhcmNoUmVzdWx0c1N0YXRlOiAoaXNMb2FkaW5nU2VhcmNoOiBib29sZWFuLCBzZWFyY2hEYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsKSA9PiBTZWFyY2hSZXN1bHRzU3RhdGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsSUFBVyw0QkFBNEIsQ0FBQyxTQUFTLGVBQWU7QUFDaEUsSUFBVyx1QkFBdUIsQ0FBQyxTQUFTLFVBQVU7QUFDdEQsSUFBVyx1QkFBdUI7Q0FBQztPQUFTO09BQWtCO09BQUE7Q0FBQTtBQUM5RCxJQUFXLHdCQUFpQixDQUFBLEVBQUE7QUFDNUIsSUFBVyxxQkFBZ0IsQ0FBQSxFQUFBO0FBQzNCLElBQVcsd0JBQXdCO0NBQUM7T0FBUztPQUFvQjtDQUFtQiJ9
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWFyY2hSZXN1bHQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS9zZWFyY2gnO1xuaW1wb3J0IHsgVXNlckV2ZW50LCBWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgaXNFbGVtZW50UGFydGlhbGx5VmlzaWJsZTogKGVsPzogSFRNTERpdkVsZW1lbnQgfCBudWxsKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgY3JlYXRlQXBwTG9hZGVkRXZlbnQ6ICgpID0+IFVzZXJFdmVudDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZVZpc2l0VXNlckV2ZW50OiAoeyB2YXJpYW50SW5mbywgfToge1xuICAgIHZhcmlhbnRJbmZvOiBWYXJpYW50SW5mbztcbn0pID0+IFVzZXJFdmVudCB8IHVuZGVmaW5lZDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzV2l0aGluQnVzaW5lc3NIb3VyczogKHN0YXJ0VGltZTogc3RyaW5nLCBlbmRUaW1lOiBzdHJpbmcsIHRpbWVab25lOiBzdHJpbmcpID0+IGJvb2xlYW47XG5leHBvcnQgZGVjbGFyZSBlbnVtIFNlYXJjaFJlc3VsdHNTdGF0ZSB7XG4gICAgTG9hZGluZyA9IDAsXG4gICAgUmVzdWx0cyA9IDEsXG4gICAgTm9SZXN1bHRzID0gMlxufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgZ2V0U2VhcmNoUmVzdWx0c1N0YXRlOiAoaXNMb2FkaW5nU2VhcmNoOiBib29sZWFuLCBzZWFyY2hEYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsKSA9PiBTZWFyY2hSZXN1bHRzU3RhdGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsSUFBVyw0QkFBNEIsQ0FBQyxVQUFVLGVBQWU7QUFDakUsSUFBVyx1QkFBdUIsQ0FBQyxVQUFVLFVBQVU7QUFDdkQsSUFBVyx1QkFBdUI7Q0FBQztPQUFVO09BQWlCO09BQUE7Q0FBQTtBQUM5RCxJQUFXLHdCQUFpQixDQUFBLEdBQUE7QUFDNUIsSUFBVyxxQkFBZ0IsQ0FBQSxHQUFBO0FBQzNCLElBQVcsd0JBQXdCO0NBQUM7T0FBVTtPQUFvQjtDQUFtQiJ9
@@ -75,6 +75,7 @@ const GA4_EVENT_SCHEMA = {
75
75
  "chat.user_typed",
76
76
  "chat.response_time_ms",
77
77
  "chat.product_cards_returned",
78
+ "chat.product_ids_returned",
78
79
  "chat.review_cards_returned"
79
80
  ]
80
81
  },
@@ -105,4 +106,4 @@ const GA4_EVENT_SCHEMA = {
105
106
 
106
107
  //#endregion
107
108
  exports.GA4_EVENT_SCHEMA = GA4_EVENT_SCHEMA;
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2E0RXZlbnRTY2hlbWEuY2pzIiwibmFtZXMiOlsiV0lER0VUX0lOVEVSQUNUSU9OX0RBVEFfUFJPSkVDVElPTlM6IFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb24iLCJHQTRfRVZFTlRfU0NIRU1BOiBSZWNvcmQ8RW52aXZlTWV0cmljc0V2ZW50TmFtZSwgR0E0RXZlbnRTY2hlbWFFbnRyeT4iLCJFbnZpdmVNZXRyaWNzRXZlbnROYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2dhNFByb2plY3Rpb25TZXJ2aWNlL2dhNEV2ZW50U2NoZW1hLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR0E0IEV2ZW50IFNjaGVtYSDigJQgc2luZ2xlIHNvdXJjZSBvZiB0cnV0aCBmb3IgRW52aXZlIOKGkiBHQTQgcHJvamVjdGlvbi5cbiAqXG4gKiBFdmVyeSBFbnZpdmVNZXRyaWNzRXZlbnROYW1lIE1VU1QgaGF2ZSBhbiBlbnRyeSBoZXJlLiBUaGUgUmVjb3JkIHR5cGUgZW5mb3JjZXNcbiAqIHRoaXMgYXQgY29tcGlsZSB0aW1lIOKAlCBhZGRpbmcgYSBuZXcgZW51bSBtZW1iZXIgd2l0aG91dCBhIHNjaGVtYSBlbnRyeSB3aWxsXG4gKiBjYXVzZSBhIFR5cGVTY3JpcHQgZXJyb3IuXG4gKlxuICogIyMgSG93IHRvIHVwZGF0ZSB0aGlzIGZpbGVcbiAqXG4gKiBXaGVuIGFkZGluZyBvciBtb2RpZnlpbmcgZXZlbnQgcHJvcGVydGllcywgZGVjaWRlIHdoZXRoZXIgdGhleSBiZWxvbmcgaW4gYGFsbG93ZWRGaWVsZHNgIHVzaW5nIHRoZXNlIGNyaXRlcmlhOlxuICogLSAqKkxvdyBjYXJkaW5hbGl0eSoqIOKAlCBhdm9pZCB1bmJvdW5kZWQgdmFsdWVzIChmcmVlIHRleHQsIElEcywgVVJMcywgdGltZXN0YW1wcykuXG4gKiAtICoqTm9uLXNlbnNpdGl2ZSoqIOKAlCBubyBQSUksIHVzZXIgaW5wdXQgdGV4dCwgb3IgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gZGV0YWlscy5cbiAqIC0gKipGbGF0IHNjYWxhcioqIOKAlCBHQTQgY3VzdG9tIGRpbWVuc2lvbnMgYXJlIGZsYXQgc3RyaW5ncy9udW1iZXJzL2Jvb2xlYW5zLlxuICogICBOZXN0ZWQgb2JqZWN0cyBzaG91bGQgTk9UIGJlIGFkZGVkOyBleHRyYWN0IHNwZWNpZmljIHN1Yi1maWVsZHMgaW5zdGVhZC5cbiAqIC0gKipTbmFrZV9jYXNlIGtleSoqIOKAlCBtdXN0IGFscmVhZHkgYmUgZG90LW5vdGF0aW9uIHNuYWtlX2Nhc2UgKGUuZy4gYGNoYXQudXNlcl90eXBlZGApLlxuICogLSAqKkFuYWx5dGljYWxseSB1c2VmdWwqKiDigJQgdGhlIGZpZWxkIHNob3VsZCBlbmFibGUgbWVhbmluZ2Z1bCBmaWx0ZXJpbmcvc2VnbWVudGF0aW9uXG4gKiAgIGZvciBtZXJjaGFudHMgaW4gdGhlaXIgR0E0IGRhc2hib2FyZHMuXG4gKlxuICogSWYgZXhjbHVkZWQgZnJvbSBgYWxsb3dlZEZpZWxkc2AsIHRoZSBwcm9qZWN0aW9uIGxheWVyIHdpbGwgYXV0b21hdGljYWxseSBkcm9wIGl0LlxuICpcbiAqIElGIElOIERPVUJULCBET04nVCBIRVNJVEFURSBUTyBSRUFDSCBPVVQgVE8gVEhFIEFOQUxZVElDUyBURUFNISEhXG4gKi9cbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuLi9hbXBsaXR1ZGVTZXJ2aWNlL2V2ZW50TmFtZXMnO1xuXG4vKipcbiAqIERlZmluZXMgd2hpY2ggZmllbGRzIHRvIGV4dHJhY3QgZnJvbSBgdHJpZ2dlci53aWRnZXRfaW50ZXJhY3Rpb25fZGF0YWBcbiAqIGZvciBhIGdpdmVuIGB0cmlnZ2VyLndpZGdldF9pbnRlcmFjdGlvbmAgdmFsdWUuXG4gKlxuICogS2V5OiB0aGUgdmFsdWUgb2YgYHRyaWdnZXIud2lkZ2V0X2ludGVyYWN0aW9uYCAoZS5nLiBcIndpZGdldF9jb2xsYXBzZWRcIilcbiAqIFZhbHVlOiBtYXBwaW5nIG9mIHsgZ2E0RmxhdEtleTogc291cmNlRmllbGRJbldpZGdldEludGVyYWN0aW9uRGF0YSB9XG4gKi9cbmV4cG9ydCB0eXBlIFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb24gPSBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PjtcblxuZXhwb3J0IGludGVyZmFjZSBHQTRQcm9qZWN0ZWRFdmVudENvbmZpZyB7XG4gIGdhRXZlbnROYW1lOiBzdHJpbmc7XG4gIGFsbG93ZWRGaWVsZHM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuICB3aWRnZXRJbnRlcmFjdGlvbkRhdGFQcm9qZWN0aW9ucz86IFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR0E0RXhjbHVkZWRFdmVudENvbmZpZyB7XG4gIGdhRXZlbnROYW1lOiBudWxsO1xufVxuXG5leHBvcnQgdHlwZSBHQTRFdmVudFNjaGVtYUVudHJ5ID0gR0E0UHJvamVjdGVkRXZlbnRDb25maWcgfCBHQTRFeGNsdWRlZEV2ZW50Q29uZmlnO1xuXG5jb25zdCBXSURHRVRfSU5URVJBQ1RJT05fREFUQV9QUk9KRUNUSU9OUzogV2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbiA9IHtcbiAgd2lkZ2V0X2NvbGxhcHNlZDogeyB0cmlnZ2VyX2NvbGxhcHNlX3NvdXJjZTogJ2NvbGxhcHNlX3NvdXJjZScgfSxcbiAgcHJvZHVjdF9jYXJkX2NsaWNrZWQ6IHsgdHJpZ2dlcl9wcm9kdWN0X2lkOiAncHJvZHVjdF9pZCcgfSxcbiAgc3VnZ2VzdGlvbl9zY3JvbGxlZDogeyB0cmlnZ2VyX3N1Z2dlc3Rpb25faWQ6ICdzdWdnZXN0aW9uX2lkJyB9LFxufTtcblxuZXhwb3J0IGNvbnN0IEdBNF9FVkVOVF9TQ0hFTUE6IFJlY29yZDxFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBHQTRFdmVudFNjaGVtYUVudHJ5PiA9IHtcbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0UmVuZGVyZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfd2lkZ2V0X3JlbmRlcmVkJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAnY29udGV4dC5wYWdlX3R5cGUnLFxuICAgICAgJ2NvbnRleHQucGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0X3JvbGUnLFxuICAgICAgJ2NvbnRleHQuc3VyZmFjZScsXG4gICAgXSxcbiAgfSxcblxuICAvLyBUaGlzIGV2ZW50IGlzIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0SW50ZXJhY3Rpb25dOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfd2lkZ2V0X2ludGVyYWN0aW9uJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAnY29udGV4dC5wYWdlX3R5cGUnLFxuICAgICAgJ2NvbnRleHQucGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0X2ludGVyYWN0aW9uJyxcbiAgICAgICd0cmlnZ2VyLmVudGl0eV9yb2xlJyxcbiAgICAgICdjb250ZXh0LnN1cmZhY2UnLFxuICAgIF0sXG4gICAgd2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbnM6IFdJREdFVF9JTlRFUkFDVElPTl9EQVRBX1BST0pFQ1RJT05TLFxuICB9LFxuXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLkNoYXRSZXF1ZXN0XToge1xuICAgIGdhRXZlbnROYW1lOiAnZW52aXZlX2NoYXRfcmVxdWVzdCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ3BhZ2VfdHlwZScsXG4gICAgICAncGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLFxuICAgICAgJ2NoYXQucmVxdWVzdF90eXBlJyxcbiAgICAgIC8vICdjaGF0LnJlcXVlc3RfdGV4dCcsIC8vIFRoaXMgaXMgaGlnaCBjYXJkaW5hbGl0eSBhbmQgcG90ZW50aWFsbHkgUElJIGJ1dCB3ZSBtaWdodCB3YW50IHRvIGluY2x1ZGUgaXQgbGF0ZXJcbiAgICAgICdjaGF0LnVzZXJfdHlwZWQnLFxuICAgICAgJ2NoYXQuc3VnZ2VzdGlvbl9pZCcsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgICAgICdjaGF0LnN1Z2dlc3Rpb25fY2F0ZWdvcnknLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5zdWdnZXN0aW9uX2NyZWF0ZWRfYXQnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5zdWdnZXN0aW9uX2lzX2Fuc3dlcicsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgICAgICdjaGF0LmZvcm1fdHlwZScsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgICBdLFxuICB9LFxuXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLkNoYXRSZXNwb25zZV06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9jaGF0X3Jlc3BvbnNlJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAncGFnZV90eXBlJyxcbiAgICAgICdwYWdlX2lkJyxcbiAgICAgICd0cmlnZ2VyLndpZGdldCcsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWQgKG1heWJlIGl0IHNob3VsZCdudCBiZT8/PylcbiAgICAgICdjaGF0LnVzZXJfdHlwZWQnLFxuICAgICAgJ2NoYXQucmVzcG9uc2VfdGltZV9tcycsXG4gICAgICAnY2hhdC5wcm9kdWN0X2NhcmRzX3JldHVybmVkJyxcbiAgICAgICdjaGF0LnJldmlld19jYXJkc19yZXR1cm5lZCcsXG4gICAgXSxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5FbnZpdmVJbml0aWFsaXplZF06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9pbml0aWFsaXplZCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2Vudmlyb25tZW50LnNhbGVzX2FnZW50X2VuYWJsZWQnLFxuICAgICAgJ2Vudmlyb25tZW50LmVudml2ZV9lbmFibGVkJyxcbiAgICAgIC8vICdlbnZpcm9ubWVudC5zZWFyY2hfZW5hYmxlZCcsIC8vIEZvciBub3csIHNlYXJjaCBpcyBub3QgaW1wbGVtZW50ZWQuIFdlIHdpbGwgYWRkIGl0IGxhdGVyLlxuICAgICAgJ3BlcmZvcm1hbmNlLnN0YXJ0X3RpbWVfbXMnLFxuICAgICAgJ3BlcmZvcm1hbmNlLmluaXRpYWxpemVfdGltZV9tcycsXG4gICAgXSxcbiAgfSxcblxuICAvLyBUaGlzIGV2ZW50IGlzIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuUGFnZVZpZXdlZF06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9wYWdlX2NvbnRleHRfZXZhbHVhdGVkJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAnY29udGV4dC5wYWdlX3R5cGUnLFxuICAgICAgJ2NvbnRleHQucGFnZV9pZCcsXG4gICAgICAnY29udGV4dC5zdXBwb3J0ZWQnLFxuICAgICAgJ2NvbnRleHQucmVhZHknLFxuICAgICAgJ2NvbnRleHQucGFnZV92YXJpYW50X2lkJyxcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfZW5hYmxlZCcsXG4gICAgXSxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVxdWVzdF06IHtcbiAgICBnYUV2ZW50TmFtZTogbnVsbCxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVzcG9uc2VdOiB7XG4gICAgZ2FFdmVudE5hbWU6IG51bGwsXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dENsaWNrZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6IG51bGwsXG4gIH0sXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNkNBLE1BQU1BLHNDQUF1RTtDQUMzRSxrQkFBa0IsRUFBRSx5QkFBeUIsbUJBQW1CO0NBQ2hFLHNCQUFzQixFQUFFLG9CQUFvQixjQUFjO0NBQzFELHFCQUFxQixFQUFFLHVCQUF1QixpQkFBaUI7Q0FDaEU7QUFFRCxNQUFhQyxtQkFBd0U7RUFDbEZDLDBDQUF1QixpQkFBaUI7RUFDdkMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUdBQSwwQ0FBdUIsb0JBQW9CO0VBQzFDLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRCxrQ0FBa0M7RUFDbkM7RUFFQUEsMENBQXVCLGNBQWM7RUFDcEMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUVBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNEO0VBQ0Y7RUFFQUEsMENBQXVCLGVBQWU7RUFDckMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNEO0VBQ0Y7RUFFQUEsMENBQXVCLG9CQUFvQjtFQUMxQyxhQUFhO0VBQ2IsZUFBZTtHQUNiO0dBQ0E7R0FFQTtHQUNBO0dBQ0Q7RUFDRjtFQUdBQSwwQ0FBdUIsYUFBYTtFQUNuQyxhQUFhO0VBQ2IsZUFBZTtHQUNiO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNEO0VBQ0Y7RUFFQUEsMENBQXVCLG9CQUFvQixFQUMxQyxhQUFhLE1BQ2Q7RUFFQUEsMENBQXVCLHFCQUFxQixFQUMzQyxhQUFhLE1BQ2Q7RUFFQUEsMENBQXVCLG9CQUFvQixFQUMxQyxhQUFhLE1BQ2Q7Q0FDRiJ9
109
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2E0RXZlbnRTY2hlbWEuY2pzIiwibmFtZXMiOlsiV0lER0VUX0lOVEVSQUNUSU9OX0RBVEFfUFJPSkVDVElPTlM6IFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb24iLCJHQTRfRVZFTlRfU0NIRU1BOiBSZWNvcmQ8RW52aXZlTWV0cmljc0V2ZW50TmFtZSwgR0E0RXZlbnRTY2hlbWFFbnRyeT4iLCJFbnZpdmVNZXRyaWNzRXZlbnROYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2dhNFByb2plY3Rpb25TZXJ2aWNlL2dhNEV2ZW50U2NoZW1hLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR0E0IEV2ZW50IFNjaGVtYSDigJQgc2luZ2xlIHNvdXJjZSBvZiB0cnV0aCBmb3IgRW52aXZlIOKGkiBHQTQgcHJvamVjdGlvbi5cbiAqXG4gKiBFdmVyeSBFbnZpdmVNZXRyaWNzRXZlbnROYW1lIE1VU1QgaGF2ZSBhbiBlbnRyeSBoZXJlLiBUaGUgUmVjb3JkIHR5cGUgZW5mb3JjZXNcbiAqIHRoaXMgYXQgY29tcGlsZSB0aW1lIOKAlCBhZGRpbmcgYSBuZXcgZW51bSBtZW1iZXIgd2l0aG91dCBhIHNjaGVtYSBlbnRyeSB3aWxsXG4gKiBjYXVzZSBhIFR5cGVTY3JpcHQgZXJyb3IuXG4gKlxuICogIyMgSG93IHRvIHVwZGF0ZSB0aGlzIGZpbGVcbiAqXG4gKiBXaGVuIGFkZGluZyBvciBtb2RpZnlpbmcgZXZlbnQgcHJvcGVydGllcywgZGVjaWRlIHdoZXRoZXIgdGhleSBiZWxvbmcgaW4gYGFsbG93ZWRGaWVsZHNgIHVzaW5nIHRoZXNlIGNyaXRlcmlhOlxuICogLSAqKkxvdyBjYXJkaW5hbGl0eSoqIOKAlCBhdm9pZCB1bmJvdW5kZWQgdmFsdWVzIChmcmVlIHRleHQsIElEcywgVVJMcywgdGltZXN0YW1wcykuXG4gKiAtICoqTm9uLXNlbnNpdGl2ZSoqIOKAlCBubyBQSUksIHVzZXIgaW5wdXQgdGV4dCwgb3IgaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gZGV0YWlscy5cbiAqIC0gKipGbGF0IHNjYWxhcioqIOKAlCBHQTQgY3VzdG9tIGRpbWVuc2lvbnMgYXJlIGZsYXQgc3RyaW5ncy9udW1iZXJzL2Jvb2xlYW5zLlxuICogICBOZXN0ZWQgb2JqZWN0cyBzaG91bGQgTk9UIGJlIGFkZGVkOyBleHRyYWN0IHNwZWNpZmljIHN1Yi1maWVsZHMgaW5zdGVhZC5cbiAqIC0gKipTbmFrZV9jYXNlIGtleSoqIOKAlCBtdXN0IGFscmVhZHkgYmUgZG90LW5vdGF0aW9uIHNuYWtlX2Nhc2UgKGUuZy4gYGNoYXQudXNlcl90eXBlZGApLlxuICogLSAqKkFuYWx5dGljYWxseSB1c2VmdWwqKiDigJQgdGhlIGZpZWxkIHNob3VsZCBlbmFibGUgbWVhbmluZ2Z1bCBmaWx0ZXJpbmcvc2VnbWVudGF0aW9uXG4gKiAgIGZvciBtZXJjaGFudHMgaW4gdGhlaXIgR0E0IGRhc2hib2FyZHMuXG4gKlxuICogSWYgZXhjbHVkZWQgZnJvbSBgYWxsb3dlZEZpZWxkc2AsIHRoZSBwcm9qZWN0aW9uIGxheWVyIHdpbGwgYXV0b21hdGljYWxseSBkcm9wIGl0LlxuICpcbiAqIElGIElOIERPVUJULCBET04nVCBIRVNJVEFURSBUTyBSRUFDSCBPVVQgVE8gVEhFIEFOQUxZVElDUyBURUFNISEhXG4gKi9cbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuLi9hbXBsaXR1ZGVTZXJ2aWNlL2V2ZW50TmFtZXMnO1xuXG4vKipcbiAqIERlZmluZXMgd2hpY2ggZmllbGRzIHRvIGV4dHJhY3QgZnJvbSBgdHJpZ2dlci53aWRnZXRfaW50ZXJhY3Rpb25fZGF0YWBcbiAqIGZvciBhIGdpdmVuIGB0cmlnZ2VyLndpZGdldF9pbnRlcmFjdGlvbmAgdmFsdWUuXG4gKlxuICogS2V5OiB0aGUgdmFsdWUgb2YgYHRyaWdnZXIud2lkZ2V0X2ludGVyYWN0aW9uYCAoZS5nLiBcIndpZGdldF9jb2xsYXBzZWRcIilcbiAqIFZhbHVlOiBtYXBwaW5nIG9mIHsgZ2E0RmxhdEtleTogc291cmNlRmllbGRJbldpZGdldEludGVyYWN0aW9uRGF0YSB9XG4gKi9cbmV4cG9ydCB0eXBlIFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb24gPSBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PjtcblxuZXhwb3J0IGludGVyZmFjZSBHQTRQcm9qZWN0ZWRFdmVudENvbmZpZyB7XG4gIGdhRXZlbnROYW1lOiBzdHJpbmc7XG4gIGFsbG93ZWRGaWVsZHM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuICB3aWRnZXRJbnRlcmFjdGlvbkRhdGFQcm9qZWN0aW9ucz86IFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR0E0RXhjbHVkZWRFdmVudENvbmZpZyB7XG4gIGdhRXZlbnROYW1lOiBudWxsO1xufVxuXG5leHBvcnQgdHlwZSBHQTRFdmVudFNjaGVtYUVudHJ5ID0gR0E0UHJvamVjdGVkRXZlbnRDb25maWcgfCBHQTRFeGNsdWRlZEV2ZW50Q29uZmlnO1xuXG5jb25zdCBXSURHRVRfSU5URVJBQ1RJT05fREFUQV9QUk9KRUNUSU9OUzogV2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbiA9IHtcbiAgd2lkZ2V0X2NvbGxhcHNlZDogeyB0cmlnZ2VyX2NvbGxhcHNlX3NvdXJjZTogJ2NvbGxhcHNlX3NvdXJjZScgfSxcbiAgcHJvZHVjdF9jYXJkX2NsaWNrZWQ6IHsgdHJpZ2dlcl9wcm9kdWN0X2lkOiAncHJvZHVjdF9pZCcgfSxcbiAgc3VnZ2VzdGlvbl9zY3JvbGxlZDogeyB0cmlnZ2VyX3N1Z2dlc3Rpb25faWQ6ICdzdWdnZXN0aW9uX2lkJyB9LFxufTtcblxuZXhwb3J0IGNvbnN0IEdBNF9FVkVOVF9TQ0hFTUE6IFJlY29yZDxFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBHQTRFdmVudFNjaGVtYUVudHJ5PiA9IHtcbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0UmVuZGVyZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfd2lkZ2V0X3JlbmRlcmVkJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAnY29udGV4dC5wYWdlX3R5cGUnLFxuICAgICAgJ2NvbnRleHQucGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0X3JvbGUnLFxuICAgICAgJ2NvbnRleHQuc3VyZmFjZScsXG4gICAgXSxcbiAgfSxcblxuICAvLyBUaGlzIGV2ZW50IGlzIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0SW50ZXJhY3Rpb25dOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfd2lkZ2V0X2ludGVyYWN0aW9uJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAnY29udGV4dC5wYWdlX3R5cGUnLFxuICAgICAgJ2NvbnRleHQucGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0X2ludGVyYWN0aW9uJyxcbiAgICAgICd0cmlnZ2VyLmVudGl0eV9yb2xlJyxcbiAgICAgICdjb250ZXh0LnN1cmZhY2UnLFxuICAgIF0sXG4gICAgd2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbnM6IFdJREdFVF9JTlRFUkFDVElPTl9EQVRBX1BST0pFQ1RJT05TLFxuICB9LFxuXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLkNoYXRSZXF1ZXN0XToge1xuICAgIGdhRXZlbnROYW1lOiAnZW52aXZlX2NoYXRfcmVxdWVzdCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ3BhZ2VfdHlwZScsXG4gICAgICAncGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLFxuICAgICAgJ2NoYXQucmVxdWVzdF90eXBlJyxcbiAgICAgIC8vICdjaGF0LnJlcXVlc3RfdGV4dCcsIC8vIFRoaXMgaXMgaGlnaCBjYXJkaW5hbGl0eSBhbmQgcG90ZW50aWFsbHkgUElJIGJ1dCB3ZSBtaWdodCB3YW50IHRvIGluY2x1ZGUgaXQgbGF0ZXJcbiAgICAgICdjaGF0LnVzZXJfdHlwZWQnLFxuICAgICAgJ2NoYXQuc3VnZ2VzdGlvbl9pZCcsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgICAgICdjaGF0LnN1Z2dlc3Rpb25fY2F0ZWdvcnknLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5zdWdnZXN0aW9uX2NyZWF0ZWRfYXQnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5zdWdnZXN0aW9uX2lzX2Fuc3dlcicsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgICAgICdjaGF0LmZvcm1fdHlwZScsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgICBdLFxuICB9LFxuXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLkNoYXRSZXNwb25zZV06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9jaGF0X3Jlc3BvbnNlJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAncGFnZV90eXBlJyxcbiAgICAgICdwYWdlX2lkJyxcbiAgICAgICd0cmlnZ2VyLndpZGdldCcsIC8vIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWQgKG1heWJlIGl0IHNob3VsZCdudCBiZT8/PylcbiAgICAgICdjaGF0LnVzZXJfdHlwZWQnLFxuICAgICAgJ2NoYXQucmVzcG9uc2VfdGltZV9tcycsXG4gICAgICAnY2hhdC5wcm9kdWN0X2NhcmRzX3JldHVybmVkJyxcbiAgICAgICdjaGF0LnByb2R1Y3RfaWRzX3JldHVybmVkJyxcbiAgICAgICdjaGF0LnJldmlld19jYXJkc19yZXR1cm5lZCcsXG4gICAgXSxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5FbnZpdmVJbml0aWFsaXplZF06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9pbml0aWFsaXplZCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2Vudmlyb25tZW50LnNhbGVzX2FnZW50X2VuYWJsZWQnLFxuICAgICAgJ2Vudmlyb25tZW50LmVudml2ZV9lbmFibGVkJyxcbiAgICAgIC8vICdlbnZpcm9ubWVudC5zZWFyY2hfZW5hYmxlZCcsIC8vIEZvciBub3csIHNlYXJjaCBpcyBub3QgaW1wbGVtZW50ZWQuIFdlIHdpbGwgYWRkIGl0IGxhdGVyLlxuICAgICAgJ3BlcmZvcm1hbmNlLnN0YXJ0X3RpbWVfbXMnLFxuICAgICAgJ3BlcmZvcm1hbmNlLmluaXRpYWxpemVfdGltZV9tcycsXG4gICAgXSxcbiAgfSxcblxuICAvLyBUaGlzIGV2ZW50IGlzIG5vdCBjdXJyZW50bHkgaW1wbGVtZW50ZWRcbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuUGFnZVZpZXdlZF06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9wYWdlX2NvbnRleHRfZXZhbHVhdGVkJyxcbiAgICBhbGxvd2VkRmllbGRzOiBbXG4gICAgICAnY29udGV4dC5wYWdlX3R5cGUnLFxuICAgICAgJ2NvbnRleHQucGFnZV9pZCcsXG4gICAgICAnY29udGV4dC5zdXBwb3J0ZWQnLFxuICAgICAgJ2NvbnRleHQucmVhZHknLFxuICAgICAgJ2NvbnRleHQucGFnZV92YXJpYW50X2lkJyxcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfZW5hYmxlZCcsXG4gICAgXSxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVxdWVzdF06IHtcbiAgICBnYUV2ZW50TmFtZTogbnVsbCxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5XaWRnZXRUZXh0UmVzcG9uc2VdOiB7XG4gICAgZ2FFdmVudE5hbWU6IG51bGwsXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dENsaWNrZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6IG51bGwsXG4gIH0sXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNkNBLE1BQU1BLHNDQUF1RTtDQUMzRSxrQkFBa0IsRUFBRSx5QkFBeUIsbUJBQW1CO0NBQ2hFLHNCQUFzQixFQUFFLG9CQUFvQixjQUFjO0NBQzFELHFCQUFxQixFQUFFLHVCQUF1QixpQkFBaUI7Q0FDaEU7QUFFRCxNQUFhQyxtQkFBd0U7RUFDbEZDLDBDQUF1QixpQkFBaUI7RUFDdkMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUdBQSwwQ0FBdUIsb0JBQW9CO0VBQzFDLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRCxrQ0FBa0M7RUFDbkM7RUFFQUEsMENBQXVCLGNBQWM7RUFDcEMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUVBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNEO0VBQ0Y7RUFFQUEsMENBQXVCLGVBQWU7RUFDckMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUVBQSwwQ0FBdUIsb0JBQW9CO0VBQzFDLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUVBO0dBQ0E7R0FDRDtFQUNGO0VBR0FBLDBDQUF1QixhQUFhO0VBQ25DLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUVBQSwwQ0FBdUIsb0JBQW9CLEVBQzFDLGFBQWEsTUFDZDtFQUVBQSwwQ0FBdUIscUJBQXFCLEVBQzNDLGFBQWEsTUFDZDtFQUVBQSwwQ0FBdUIsb0JBQW9CLEVBQzFDLGFBQWEsTUFDZDtDQUNGIn0=
@@ -75,6 +75,7 @@ const GA4_EVENT_SCHEMA = {
75
75
  "chat.user_typed",
76
76
  "chat.response_time_ms",
77
77
  "chat.product_cards_returned",
78
+ "chat.product_ids_returned",
78
79
  "chat.review_cards_returned"
79
80
  ]
80
81
  },
@@ -105,4 +106,4 @@ const GA4_EVENT_SCHEMA = {
105
106
 
106
107
  //#endregion
107
108
  export { GA4_EVENT_SCHEMA };
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2E0RXZlbnRTY2hlbWEuanMiLCJuYW1lcyI6WyJXSURHRVRfSU5URVJBQ1RJT05fREFUQV9QUk9KRUNUSU9OUzogV2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbiIsIkdBNF9FVkVOVF9TQ0hFTUE6IFJlY29yZDxFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBHQTRFdmVudFNjaGVtYUVudHJ5PiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9nYTRQcm9qZWN0aW9uU2VydmljZS9nYTRFdmVudFNjaGVtYS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdBNCBFdmVudCBTY2hlbWEg4oCUIHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGggZm9yIEVudml2ZSDihpIgR0E0IHByb2plY3Rpb24uXG4gKlxuICogRXZlcnkgRW52aXZlTWV0cmljc0V2ZW50TmFtZSBNVVNUIGhhdmUgYW4gZW50cnkgaGVyZS4gVGhlIFJlY29yZCB0eXBlIGVuZm9yY2VzXG4gKiB0aGlzIGF0IGNvbXBpbGUgdGltZSDigJQgYWRkaW5nIGEgbmV3IGVudW0gbWVtYmVyIHdpdGhvdXQgYSBzY2hlbWEgZW50cnkgd2lsbFxuICogY2F1c2UgYSBUeXBlU2NyaXB0IGVycm9yLlxuICpcbiAqICMjIEhvdyB0byB1cGRhdGUgdGhpcyBmaWxlXG4gKlxuICogV2hlbiBhZGRpbmcgb3IgbW9kaWZ5aW5nIGV2ZW50IHByb3BlcnRpZXMsIGRlY2lkZSB3aGV0aGVyIHRoZXkgYmVsb25nIGluIGBhbGxvd2VkRmllbGRzYCB1c2luZyB0aGVzZSBjcml0ZXJpYTpcbiAqIC0gKipMb3cgY2FyZGluYWxpdHkqKiDigJQgYXZvaWQgdW5ib3VuZGVkIHZhbHVlcyAoZnJlZSB0ZXh0LCBJRHMsIFVSTHMsIHRpbWVzdGFtcHMpLlxuICogLSAqKk5vbi1zZW5zaXRpdmUqKiDigJQgbm8gUElJLCB1c2VyIGlucHV0IHRleHQsIG9yIGludGVybmFsIGltcGxlbWVudGF0aW9uIGRldGFpbHMuXG4gKiAtICoqRmxhdCBzY2FsYXIqKiDigJQgR0E0IGN1c3RvbSBkaW1lbnNpb25zIGFyZSBmbGF0IHN0cmluZ3MvbnVtYmVycy9ib29sZWFucy5cbiAqICAgTmVzdGVkIG9iamVjdHMgc2hvdWxkIE5PVCBiZSBhZGRlZDsgZXh0cmFjdCBzcGVjaWZpYyBzdWItZmllbGRzIGluc3RlYWQuXG4gKiAtICoqU25ha2VfY2FzZSBrZXkqKiDigJQgbXVzdCBhbHJlYWR5IGJlIGRvdC1ub3RhdGlvbiBzbmFrZV9jYXNlIChlLmcuIGBjaGF0LnVzZXJfdHlwZWRgKS5cbiAqIC0gKipBbmFseXRpY2FsbHkgdXNlZnVsKiog4oCUIHRoZSBmaWVsZCBzaG91bGQgZW5hYmxlIG1lYW5pbmdmdWwgZmlsdGVyaW5nL3NlZ21lbnRhdGlvblxuICogICBmb3IgbWVyY2hhbnRzIGluIHRoZWlyIEdBNCBkYXNoYm9hcmRzLlxuICpcbiAqIElmIGV4Y2x1ZGVkIGZyb20gYGFsbG93ZWRGaWVsZHNgLCB0aGUgcHJvamVjdGlvbiBsYXllciB3aWxsIGF1dG9tYXRpY2FsbHkgZHJvcCBpdC5cbiAqXG4gKiBJRiBJTiBET1VCVCwgRE9OJ1QgSEVTSVRBVEUgVE8gUkVBQ0ggT1VUIFRPIFRIRSBBTkFMWVRJQ1MgVEVBTSEhIVxuICovXG5pbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnLi4vYW1wbGl0dWRlU2VydmljZS9ldmVudE5hbWVzJztcblxuLyoqXG4gKiBEZWZpbmVzIHdoaWNoIGZpZWxkcyB0byBleHRyYWN0IGZyb20gYHRyaWdnZXIud2lkZ2V0X2ludGVyYWN0aW9uX2RhdGFgXG4gKiBmb3IgYSBnaXZlbiBgdHJpZ2dlci53aWRnZXRfaW50ZXJhY3Rpb25gIHZhbHVlLlxuICpcbiAqIEtleTogdGhlIHZhbHVlIG9mIGB0cmlnZ2VyLndpZGdldF9pbnRlcmFjdGlvbmAgKGUuZy4gXCJ3aWRnZXRfY29sbGFwc2VkXCIpXG4gKiBWYWx1ZTogbWFwcGluZyBvZiB7IGdhNEZsYXRLZXk6IHNvdXJjZUZpZWxkSW5XaWRnZXRJbnRlcmFjdGlvbkRhdGEgfVxuICovXG5leHBvcnQgdHlwZSBXaWRnZXRJbnRlcmFjdGlvbkRhdGFQcm9qZWN0aW9uID0gUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj47XG5cbmV4cG9ydCBpbnRlcmZhY2UgR0E0UHJvamVjdGVkRXZlbnRDb25maWcge1xuICBnYUV2ZW50TmFtZTogc3RyaW5nO1xuICBhbGxvd2VkRmllbGRzOiByZWFkb25seSBzdHJpbmdbXTtcbiAgd2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbnM/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGFQcm9qZWN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdBNEV4Y2x1ZGVkRXZlbnRDb25maWcge1xuICBnYUV2ZW50TmFtZTogbnVsbDtcbn1cblxuZXhwb3J0IHR5cGUgR0E0RXZlbnRTY2hlbWFFbnRyeSA9IEdBNFByb2plY3RlZEV2ZW50Q29uZmlnIHwgR0E0RXhjbHVkZWRFdmVudENvbmZpZztcblxuY29uc3QgV0lER0VUX0lOVEVSQUNUSU9OX0RBVEFfUFJPSkVDVElPTlM6IFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb24gPSB7XG4gIHdpZGdldF9jb2xsYXBzZWQ6IHsgdHJpZ2dlcl9jb2xsYXBzZV9zb3VyY2U6ICdjb2xsYXBzZV9zb3VyY2UnIH0sXG4gIHByb2R1Y3RfY2FyZF9jbGlja2VkOiB7IHRyaWdnZXJfcHJvZHVjdF9pZDogJ3Byb2R1Y3RfaWQnIH0sXG4gIHN1Z2dlc3Rpb25fc2Nyb2xsZWQ6IHsgdHJpZ2dlcl9zdWdnZXN0aW9uX2lkOiAnc3VnZ2VzdGlvbl9pZCcgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBHQTRfRVZFTlRfU0NIRU1BOiBSZWNvcmQ8RW52aXZlTWV0cmljc0V2ZW50TmFtZSwgR0E0RXZlbnRTY2hlbWFFbnRyeT4gPSB7XG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFJlbmRlcmVkXToge1xuICAgIGdhRXZlbnROYW1lOiAnZW52aXZlX3dpZGdldF9yZW5kZXJlZCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2NvbnRleHQucGFnZV90eXBlJyxcbiAgICAgICdjb250ZXh0LnBhZ2VfaWQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0JyxcbiAgICAgICd0cmlnZ2VyLndpZGdldF9yb2xlJyxcbiAgICAgICdjb250ZXh0LnN1cmZhY2UnLFxuICAgIF0sXG4gIH0sXG5cbiAgLy8gVGhpcyBldmVudCBpcyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldEludGVyYWN0aW9uXToge1xuICAgIGdhRXZlbnROYW1lOiAnZW52aXZlX3dpZGdldF9pbnRlcmFjdGlvbicsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2NvbnRleHQucGFnZV90eXBlJyxcbiAgICAgICdjb250ZXh0LnBhZ2VfaWQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0JyxcbiAgICAgICd0cmlnZ2VyLndpZGdldF9pbnRlcmFjdGlvbicsXG4gICAgICAndHJpZ2dlci5lbnRpdHlfcm9sZScsXG4gICAgICAnY29udGV4dC5zdXJmYWNlJyxcbiAgICBdLFxuICAgIHdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb25zOiBXSURHRVRfSU5URVJBQ1RJT05fREFUQV9QUk9KRUNUSU9OUyxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5DaGF0UmVxdWVzdF06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9jaGF0X3JlcXVlc3QnLFxuICAgIGFsbG93ZWRGaWVsZHM6IFtcbiAgICAgICdwYWdlX3R5cGUnLFxuICAgICAgJ3BhZ2VfaWQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0JyxcbiAgICAgICdjaGF0LnJlcXVlc3RfdHlwZScsXG4gICAgICAvLyAnY2hhdC5yZXF1ZXN0X3RleHQnLCAvLyBUaGlzIGlzIGhpZ2ggY2FyZGluYWxpdHkgYW5kIHBvdGVudGlhbGx5IFBJSSBidXQgd2UgbWlnaHQgd2FudCB0byBpbmNsdWRlIGl0IGxhdGVyXG4gICAgICAnY2hhdC51c2VyX3R5cGVkJyxcbiAgICAgICdjaGF0LnN1Z2dlc3Rpb25faWQnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5zdWdnZXN0aW9uX2NhdGVnb3J5JywgLy8gbm90IGN1cnJlbnRseSBpbXBsZW1lbnRlZFxuICAgICAgJ2NoYXQuc3VnZ2VzdGlvbl9jcmVhdGVkX2F0JywgLy8gbm90IGN1cnJlbnRseSBpbXBsZW1lbnRlZFxuICAgICAgJ2NoYXQuc3VnZ2VzdGlvbl9pc19hbnN3ZXInLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5mb3JtX3R5cGUnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgXSxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5DaGF0UmVzcG9uc2VdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfY2hhdF9yZXNwb25zZScsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ3BhZ2VfdHlwZScsXG4gICAgICAncGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkIChtYXliZSBpdCBzaG91bGQnbnQgYmU/Pz8pXG4gICAgICAnY2hhdC51c2VyX3R5cGVkJyxcbiAgICAgICdjaGF0LnJlc3BvbnNlX3RpbWVfbXMnLFxuICAgICAgJ2NoYXQucHJvZHVjdF9jYXJkc19yZXR1cm5lZCcsXG4gICAgICAnY2hhdC5yZXZpZXdfY2FyZHNfcmV0dXJuZWQnLFxuICAgIF0sXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuRW52aXZlSW5pdGlhbGl6ZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfaW5pdGlhbGl6ZWQnLFxuICAgIGFsbG93ZWRGaWVsZHM6IFtcbiAgICAgICdlbnZpcm9ubWVudC5zYWxlc19hZ2VudF9lbmFibGVkJyxcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfZW5hYmxlZCcsXG4gICAgICAvLyAnZW52aXJvbm1lbnQuc2VhcmNoX2VuYWJsZWQnLCAvLyBGb3Igbm93LCBzZWFyY2ggaXMgbm90IGltcGxlbWVudGVkLiBXZSB3aWxsIGFkZCBpdCBsYXRlci5cbiAgICAgICdwZXJmb3JtYW5jZS5zdGFydF90aW1lX21zJyxcbiAgICAgICdwZXJmb3JtYW5jZS5pbml0aWFsaXplX3RpbWVfbXMnLFxuICAgIF0sXG4gIH0sXG5cbiAgLy8gVGhpcyBldmVudCBpcyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLlBhZ2VWaWV3ZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfcGFnZV9jb250ZXh0X2V2YWx1YXRlZCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2NvbnRleHQucGFnZV90eXBlJyxcbiAgICAgICdjb250ZXh0LnBhZ2VfaWQnLFxuICAgICAgJ2NvbnRleHQuc3VwcG9ydGVkJyxcbiAgICAgICdjb250ZXh0LnJlYWR5JyxcbiAgICAgICdjb250ZXh0LnBhZ2VfdmFyaWFudF9pZCcsXG4gICAgICAnZW52aXJvbm1lbnQuZW52aXZlX2VuYWJsZWQnLFxuICAgIF0sXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlcXVlc3RdOiB7XG4gICAgZ2FFdmVudE5hbWU6IG51bGwsXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlc3BvbnNlXToge1xuICAgIGdhRXZlbnROYW1lOiBudWxsLFxuICB9LFxuXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFRleHRDbGlja2VkXToge1xuICAgIGdhRXZlbnROYW1lOiBudWxsLFxuICB9LFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZDQSxNQUFNQSxzQ0FBdUU7Q0FDM0Usa0JBQWtCLEVBQUUseUJBQXlCLG1CQUFtQjtDQUNoRSxzQkFBc0IsRUFBRSxvQkFBb0IsY0FBYztDQUMxRCxxQkFBcUIsRUFBRSx1QkFBdUIsaUJBQWlCO0NBQ2hFO0FBRUQsTUFBYUMsbUJBQXdFO0VBQ2xGLHVCQUF1QixpQkFBaUI7RUFDdkMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUdBLHVCQUF1QixvQkFBb0I7RUFDMUMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRDtFQUNELGtDQUFrQztFQUNuQztFQUVBLHVCQUF1QixjQUFjO0VBQ3BDLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUNBO0dBQ0E7R0FFQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRDtFQUNGO0VBRUEsdUJBQXVCLGVBQWU7RUFDckMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNEO0VBQ0Y7RUFFQSx1QkFBdUIsb0JBQW9CO0VBQzFDLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUVBO0dBQ0E7R0FDRDtFQUNGO0VBR0EsdUJBQXVCLGFBQWE7RUFDbkMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRDtFQUNGO0VBRUEsdUJBQXVCLG9CQUFvQixFQUMxQyxhQUFhLE1BQ2Q7RUFFQSx1QkFBdUIscUJBQXFCLEVBQzNDLGFBQWEsTUFDZDtFQUVBLHVCQUF1QixvQkFBb0IsRUFDMUMsYUFBYSxNQUNkO0NBQ0YifQ==
109
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2E0RXZlbnRTY2hlbWEuanMiLCJuYW1lcyI6WyJXSURHRVRfSU5URVJBQ1RJT05fREFUQV9QUk9KRUNUSU9OUzogV2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbiIsIkdBNF9FVkVOVF9TQ0hFTUE6IFJlY29yZDxFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBHQTRFdmVudFNjaGVtYUVudHJ5PiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9nYTRQcm9qZWN0aW9uU2VydmljZS9nYTRFdmVudFNjaGVtYS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdBNCBFdmVudCBTY2hlbWEg4oCUIHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGggZm9yIEVudml2ZSDihpIgR0E0IHByb2plY3Rpb24uXG4gKlxuICogRXZlcnkgRW52aXZlTWV0cmljc0V2ZW50TmFtZSBNVVNUIGhhdmUgYW4gZW50cnkgaGVyZS4gVGhlIFJlY29yZCB0eXBlIGVuZm9yY2VzXG4gKiB0aGlzIGF0IGNvbXBpbGUgdGltZSDigJQgYWRkaW5nIGEgbmV3IGVudW0gbWVtYmVyIHdpdGhvdXQgYSBzY2hlbWEgZW50cnkgd2lsbFxuICogY2F1c2UgYSBUeXBlU2NyaXB0IGVycm9yLlxuICpcbiAqICMjIEhvdyB0byB1cGRhdGUgdGhpcyBmaWxlXG4gKlxuICogV2hlbiBhZGRpbmcgb3IgbW9kaWZ5aW5nIGV2ZW50IHByb3BlcnRpZXMsIGRlY2lkZSB3aGV0aGVyIHRoZXkgYmVsb25nIGluIGBhbGxvd2VkRmllbGRzYCB1c2luZyB0aGVzZSBjcml0ZXJpYTpcbiAqIC0gKipMb3cgY2FyZGluYWxpdHkqKiDigJQgYXZvaWQgdW5ib3VuZGVkIHZhbHVlcyAoZnJlZSB0ZXh0LCBJRHMsIFVSTHMsIHRpbWVzdGFtcHMpLlxuICogLSAqKk5vbi1zZW5zaXRpdmUqKiDigJQgbm8gUElJLCB1c2VyIGlucHV0IHRleHQsIG9yIGludGVybmFsIGltcGxlbWVudGF0aW9uIGRldGFpbHMuXG4gKiAtICoqRmxhdCBzY2FsYXIqKiDigJQgR0E0IGN1c3RvbSBkaW1lbnNpb25zIGFyZSBmbGF0IHN0cmluZ3MvbnVtYmVycy9ib29sZWFucy5cbiAqICAgTmVzdGVkIG9iamVjdHMgc2hvdWxkIE5PVCBiZSBhZGRlZDsgZXh0cmFjdCBzcGVjaWZpYyBzdWItZmllbGRzIGluc3RlYWQuXG4gKiAtICoqU25ha2VfY2FzZSBrZXkqKiDigJQgbXVzdCBhbHJlYWR5IGJlIGRvdC1ub3RhdGlvbiBzbmFrZV9jYXNlIChlLmcuIGBjaGF0LnVzZXJfdHlwZWRgKS5cbiAqIC0gKipBbmFseXRpY2FsbHkgdXNlZnVsKiog4oCUIHRoZSBmaWVsZCBzaG91bGQgZW5hYmxlIG1lYW5pbmdmdWwgZmlsdGVyaW5nL3NlZ21lbnRhdGlvblxuICogICBmb3IgbWVyY2hhbnRzIGluIHRoZWlyIEdBNCBkYXNoYm9hcmRzLlxuICpcbiAqIElmIGV4Y2x1ZGVkIGZyb20gYGFsbG93ZWRGaWVsZHNgLCB0aGUgcHJvamVjdGlvbiBsYXllciB3aWxsIGF1dG9tYXRpY2FsbHkgZHJvcCBpdC5cbiAqXG4gKiBJRiBJTiBET1VCVCwgRE9OJ1QgSEVTSVRBVEUgVE8gUkVBQ0ggT1VUIFRPIFRIRSBBTkFMWVRJQ1MgVEVBTSEhIVxuICovXG5pbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnLi4vYW1wbGl0dWRlU2VydmljZS9ldmVudE5hbWVzJztcblxuLyoqXG4gKiBEZWZpbmVzIHdoaWNoIGZpZWxkcyB0byBleHRyYWN0IGZyb20gYHRyaWdnZXIud2lkZ2V0X2ludGVyYWN0aW9uX2RhdGFgXG4gKiBmb3IgYSBnaXZlbiBgdHJpZ2dlci53aWRnZXRfaW50ZXJhY3Rpb25gIHZhbHVlLlxuICpcbiAqIEtleTogdGhlIHZhbHVlIG9mIGB0cmlnZ2VyLndpZGdldF9pbnRlcmFjdGlvbmAgKGUuZy4gXCJ3aWRnZXRfY29sbGFwc2VkXCIpXG4gKiBWYWx1ZTogbWFwcGluZyBvZiB7IGdhNEZsYXRLZXk6IHNvdXJjZUZpZWxkSW5XaWRnZXRJbnRlcmFjdGlvbkRhdGEgfVxuICovXG5leHBvcnQgdHlwZSBXaWRnZXRJbnRlcmFjdGlvbkRhdGFQcm9qZWN0aW9uID0gUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj47XG5cbmV4cG9ydCBpbnRlcmZhY2UgR0E0UHJvamVjdGVkRXZlbnRDb25maWcge1xuICBnYUV2ZW50TmFtZTogc3RyaW5nO1xuICBhbGxvd2VkRmllbGRzOiByZWFkb25seSBzdHJpbmdbXTtcbiAgd2lkZ2V0SW50ZXJhY3Rpb25EYXRhUHJvamVjdGlvbnM/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGFQcm9qZWN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdBNEV4Y2x1ZGVkRXZlbnRDb25maWcge1xuICBnYUV2ZW50TmFtZTogbnVsbDtcbn1cblxuZXhwb3J0IHR5cGUgR0E0RXZlbnRTY2hlbWFFbnRyeSA9IEdBNFByb2plY3RlZEV2ZW50Q29uZmlnIHwgR0E0RXhjbHVkZWRFdmVudENvbmZpZztcblxuY29uc3QgV0lER0VUX0lOVEVSQUNUSU9OX0RBVEFfUFJPSkVDVElPTlM6IFdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb24gPSB7XG4gIHdpZGdldF9jb2xsYXBzZWQ6IHsgdHJpZ2dlcl9jb2xsYXBzZV9zb3VyY2U6ICdjb2xsYXBzZV9zb3VyY2UnIH0sXG4gIHByb2R1Y3RfY2FyZF9jbGlja2VkOiB7IHRyaWdnZXJfcHJvZHVjdF9pZDogJ3Byb2R1Y3RfaWQnIH0sXG4gIHN1Z2dlc3Rpb25fc2Nyb2xsZWQ6IHsgdHJpZ2dlcl9zdWdnZXN0aW9uX2lkOiAnc3VnZ2VzdGlvbl9pZCcgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBHQTRfRVZFTlRfU0NIRU1BOiBSZWNvcmQ8RW52aXZlTWV0cmljc0V2ZW50TmFtZSwgR0E0RXZlbnRTY2hlbWFFbnRyeT4gPSB7XG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFJlbmRlcmVkXToge1xuICAgIGdhRXZlbnROYW1lOiAnZW52aXZlX3dpZGdldF9yZW5kZXJlZCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2NvbnRleHQucGFnZV90eXBlJyxcbiAgICAgICdjb250ZXh0LnBhZ2VfaWQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0JyxcbiAgICAgICd0cmlnZ2VyLndpZGdldF9yb2xlJyxcbiAgICAgICdjb250ZXh0LnN1cmZhY2UnLFxuICAgIF0sXG4gIH0sXG5cbiAgLy8gVGhpcyBldmVudCBpcyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldEludGVyYWN0aW9uXToge1xuICAgIGdhRXZlbnROYW1lOiAnZW52aXZlX3dpZGdldF9pbnRlcmFjdGlvbicsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2NvbnRleHQucGFnZV90eXBlJyxcbiAgICAgICdjb250ZXh0LnBhZ2VfaWQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0JyxcbiAgICAgICd0cmlnZ2VyLndpZGdldF9pbnRlcmFjdGlvbicsXG4gICAgICAndHJpZ2dlci5lbnRpdHlfcm9sZScsXG4gICAgICAnY29udGV4dC5zdXJmYWNlJyxcbiAgICBdLFxuICAgIHdpZGdldEludGVyYWN0aW9uRGF0YVByb2plY3Rpb25zOiBXSURHRVRfSU5URVJBQ1RJT05fREFUQV9QUk9KRUNUSU9OUyxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5DaGF0UmVxdWVzdF06IHtcbiAgICBnYUV2ZW50TmFtZTogJ2Vudml2ZV9jaGF0X3JlcXVlc3QnLFxuICAgIGFsbG93ZWRGaWVsZHM6IFtcbiAgICAgICdwYWdlX3R5cGUnLFxuICAgICAgJ3BhZ2VfaWQnLFxuICAgICAgJ3RyaWdnZXIud2lkZ2V0JyxcbiAgICAgICdjaGF0LnJlcXVlc3RfdHlwZScsXG4gICAgICAvLyAnY2hhdC5yZXF1ZXN0X3RleHQnLCAvLyBUaGlzIGlzIGhpZ2ggY2FyZGluYWxpdHkgYW5kIHBvdGVudGlhbGx5IFBJSSBidXQgd2UgbWlnaHQgd2FudCB0byBpbmNsdWRlIGl0IGxhdGVyXG4gICAgICAnY2hhdC51c2VyX3R5cGVkJyxcbiAgICAgICdjaGF0LnN1Z2dlc3Rpb25faWQnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5zdWdnZXN0aW9uX2NhdGVnb3J5JywgLy8gbm90IGN1cnJlbnRseSBpbXBsZW1lbnRlZFxuICAgICAgJ2NoYXQuc3VnZ2VzdGlvbl9jcmVhdGVkX2F0JywgLy8gbm90IGN1cnJlbnRseSBpbXBsZW1lbnRlZFxuICAgICAgJ2NoYXQuc3VnZ2VzdGlvbl9pc19hbnN3ZXInLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgICAnY2hhdC5mb3JtX3R5cGUnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gICAgXSxcbiAgfSxcblxuICBbRW52aXZlTWV0cmljc0V2ZW50TmFtZS5DaGF0UmVzcG9uc2VdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfY2hhdF9yZXNwb25zZScsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ3BhZ2VfdHlwZScsXG4gICAgICAncGFnZV9pZCcsXG4gICAgICAndHJpZ2dlci53aWRnZXQnLCAvLyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkIChtYXliZSBpdCBzaG91bGQnbnQgYmU/Pz8pXG4gICAgICAnY2hhdC51c2VyX3R5cGVkJyxcbiAgICAgICdjaGF0LnJlc3BvbnNlX3RpbWVfbXMnLFxuICAgICAgJ2NoYXQucHJvZHVjdF9jYXJkc19yZXR1cm5lZCcsXG4gICAgICAnY2hhdC5wcm9kdWN0X2lkc19yZXR1cm5lZCcsXG4gICAgICAnY2hhdC5yZXZpZXdfY2FyZHNfcmV0dXJuZWQnLFxuICAgIF0sXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuRW52aXZlSW5pdGlhbGl6ZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfaW5pdGlhbGl6ZWQnLFxuICAgIGFsbG93ZWRGaWVsZHM6IFtcbiAgICAgICdlbnZpcm9ubWVudC5zYWxlc19hZ2VudF9lbmFibGVkJyxcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfZW5hYmxlZCcsXG4gICAgICAvLyAnZW52aXJvbm1lbnQuc2VhcmNoX2VuYWJsZWQnLCAvLyBGb3Igbm93LCBzZWFyY2ggaXMgbm90IGltcGxlbWVudGVkLiBXZSB3aWxsIGFkZCBpdCBsYXRlci5cbiAgICAgICdwZXJmb3JtYW5jZS5zdGFydF90aW1lX21zJyxcbiAgICAgICdwZXJmb3JtYW5jZS5pbml0aWFsaXplX3RpbWVfbXMnLFxuICAgIF0sXG4gIH0sXG5cbiAgLy8gVGhpcyBldmVudCBpcyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLlBhZ2VWaWV3ZWRdOiB7XG4gICAgZ2FFdmVudE5hbWU6ICdlbnZpdmVfcGFnZV9jb250ZXh0X2V2YWx1YXRlZCcsXG4gICAgYWxsb3dlZEZpZWxkczogW1xuICAgICAgJ2NvbnRleHQucGFnZV90eXBlJyxcbiAgICAgICdjb250ZXh0LnBhZ2VfaWQnLFxuICAgICAgJ2NvbnRleHQuc3VwcG9ydGVkJyxcbiAgICAgICdjb250ZXh0LnJlYWR5JyxcbiAgICAgICdjb250ZXh0LnBhZ2VfdmFyaWFudF9pZCcsXG4gICAgICAnZW52aXJvbm1lbnQuZW52aXZlX2VuYWJsZWQnLFxuICAgIF0sXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlcXVlc3RdOiB7XG4gICAgZ2FFdmVudE5hbWU6IG51bGwsXG4gIH0sXG5cbiAgW0Vudml2ZU1ldHJpY3NFdmVudE5hbWUuV2lkZ2V0VGV4dFJlc3BvbnNlXToge1xuICAgIGdhRXZlbnROYW1lOiBudWxsLFxuICB9LFxuXG4gIFtFbnZpdmVNZXRyaWNzRXZlbnROYW1lLldpZGdldFRleHRDbGlja2VkXToge1xuICAgIGdhRXZlbnROYW1lOiBudWxsLFxuICB9LFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZDQSxNQUFNQSxzQ0FBdUU7Q0FDM0Usa0JBQWtCLEVBQUUseUJBQXlCLG1CQUFtQjtDQUNoRSxzQkFBc0IsRUFBRSxvQkFBb0IsY0FBYztDQUMxRCxxQkFBcUIsRUFBRSx1QkFBdUIsaUJBQWlCO0NBQ2hFO0FBRUQsTUFBYUMsbUJBQXdFO0VBQ2xGLHVCQUF1QixpQkFBaUI7RUFDdkMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUdBLHVCQUF1QixvQkFBb0I7RUFDMUMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRDtFQUNELGtDQUFrQztFQUNuQztFQUVBLHVCQUF1QixjQUFjO0VBQ3BDLGFBQWE7RUFDYixlQUFlO0dBQ2I7R0FDQTtHQUNBO0dBQ0E7R0FFQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRDtFQUNGO0VBRUEsdUJBQXVCLGVBQWU7RUFDckMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7RUFDRjtFQUVBLHVCQUF1QixvQkFBb0I7RUFDMUMsYUFBYTtFQUNiLGVBQWU7R0FDYjtHQUNBO0dBRUE7R0FDQTtHQUNEO0VBQ0Y7RUFHQSx1QkFBdUIsYUFBYTtFQUNuQyxhQUFhO0VBQ2IsZUFBZTtHQUNiO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNEO0VBQ0Y7RUFFQSx1QkFBdUIsb0JBQW9CLEVBQzFDLGFBQWEsTUFDZDtFQUVBLHVCQUF1QixxQkFBcUIsRUFDM0MsYUFBYSxNQUNkO0VBRUEsdUJBQXVCLG9CQUFvQixFQUMxQyxhQUFhLE1BQ2Q7Q0FDRiJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@envive-ai/react-hooks",
3
- "version": "0.3.15-beta.1",
3
+ "version": "0.3.16",
4
4
  "description": "React hooks for connecting to Envive AI services.",
5
5
  "keywords": [
6
6
  "react",
@@ -342,6 +342,10 @@
342
342
  "import": "./dist/hooks/NewOrgConfig/index.js",
343
343
  "require": "./dist/hooks/NewOrgConfig/index.cjs"
344
344
  },
345
+ "./hooks/ProductImageUrl": {
346
+ "import": "./dist/hooks/ProductImageUrl/index.js",
347
+ "require": "./dist/hooks/ProductImageUrl/index.cjs"
348
+ },
345
349
  "./hooks/Search": {
346
350
  "import": "./dist/hooks/Search/index.js",
347
351
  "require": "./dist/hooks/Search/index.cjs"
@@ -7,6 +7,7 @@ import {
7
7
  DefaultApi,
8
8
  FormType,
9
9
  InferenceApi,
10
+ ProductsApi,
10
11
  ReportSessionRequest,
11
12
  ResponseCategory,
12
13
  ResponseError,
@@ -16,6 +17,7 @@ import {
16
17
  V1OrgConfigGetSourceEnum,
17
18
  } from '@spiffy-ai/commerce-api-client';
18
19
  import type { Context } from '@spiffy-ai/commerce-api-client/dist/models/Context';
20
+ import type { ProductRetrievalResult } from 'src/atoms/search/types';
19
21
  import Logger from 'src/application/logging/logger';
20
22
  import {
21
23
  Message,
@@ -57,6 +59,7 @@ import { SessionRestartRequired } from 'src/types/exceptions/sessionExceptions';
57
59
  import { UnsupportedProductException } from 'src/types/exceptions/unsupportedProductExceptions';
58
60
  import { WidgetText } from './models/api/widgetText';
59
61
  import { WidgetTextRequest } from './models/api/widgetTextRequest';
62
+ import { productRetrievalResponseToProductRetrievalResult } from './utils/productRetrievalResponseToProductRetrievalResult';
60
63
  import { apiWidgetTextResponseToCoreWidgetText } from './utils/widgetTextFromApiWidgetTextResponse';
61
64
  import { coreWidgetTextRequestToApiRequest } from './utils/widgetTextRequestToApiRequest';
62
65
 
@@ -104,6 +107,8 @@ class CommerceApiClient {
104
107
 
105
108
  private readonly inferenceApi: InferenceApi;
106
109
 
110
+ private readonly productsApi: ProductsApi;
111
+
107
112
  private static instance: CommerceApiClient | undefined;
108
113
 
109
114
  private suggestionsAbortController = new AbortController();
@@ -135,6 +140,7 @@ class CommerceApiClient {
135
140
  this.defaultApi = new DefaultApi(config);
136
141
  this.inferenceApi = new InferenceApi(config);
137
142
  this.customerServiceApi = new CustomerServiceApi(config);
143
+ this.productsApi = new ProductsApi(config);
138
144
  }
139
145
 
140
146
  static resolveUrl = async (url: string) => {
@@ -437,6 +443,51 @@ class CommerceApiClient {
437
443
  return apiWidgetTextResponseToCoreWidgetText(apiRequest, response);
438
444
  };
439
445
 
446
+ /**
447
+ * Retrieves product details for the given product IDs via POST /v1/products/retrieve.
448
+ * Builds context from the current atom store (org, user, chat, etc.) and returns
449
+ * products in the shape expected by ProductRetrievalResult (camelCase attributes).
450
+ *
451
+ * @param productIds - List of product IDs to retrieve
452
+ * @returns ProductRetrievalResult with products and totalProductCount
453
+ */
454
+ static retrieveProducts = async (productIds: string[]): Promise<ProductRetrievalResult> => {
455
+ if (productIds.length === 0) {
456
+ return { products: [], totalProductCount: 0 };
457
+ }
458
+
459
+ try {
460
+ const atomStore = getAtomStore();
461
+ const orgShortName = atomStore.get(orgShortNameAtom);
462
+ const orgId = atomStore.get(orgIdAtom);
463
+ const userId = atomStore.get(userIdAtom);
464
+ const chatId = atomStore.get(chatIdAtom);
465
+ const source = atomStore.get(contextSourceAtom);
466
+ const env = atomStore.get(envAtom);
467
+
468
+ const context: Context = {
469
+ user_id: userId ?? '',
470
+ org_id: orgId ?? '',
471
+ org_short_name: orgShortName ?? '',
472
+ chat_id: chatId ?? '',
473
+ source: source ?? ContextSourceEnum.App,
474
+ env: (env as ContextEnvEnum) ?? ContextEnvEnum.Dev,
475
+ };
476
+
477
+ const response = await CommerceApiClient.getInstance().productsApi.v1ProductsRetrievePost({
478
+ ProductRetrievalRequest: {
479
+ context,
480
+ product_ids: productIds,
481
+ },
482
+ });
483
+
484
+ return productRetrievalResponseToProductRetrievalResult(response);
485
+ } catch (err) {
486
+ await throwSessionRestartRequiredIf('Failed to retrieve products', err);
487
+ return { products: [], totalProductCount: 0 };
488
+ }
489
+ };
490
+
440
491
  /**
441
492
  *
442
493
  * @param payload
@@ -1,9 +1,4 @@
1
1
  import { QueryTypedAttributes } from '@spiffy-ai/commerce-api-client';
2
2
 
3
3
  export const isApiQueryTypedAttributes = (data: unknown): data is QueryTypedAttributes =>
4
- data != null &&
5
- typeof data === 'object' &&
6
- 'query' in data &&
7
- typeof data.query === 'string' &&
8
- 'user_typed' in data &&
9
- typeof data.user_typed === 'boolean';
4
+ data != null && typeof data === 'object' && 'query' in data && typeof data.query === 'string';
@@ -1,6 +1,6 @@
1
1
  import { ShowFloatingButtonOptions } from 'src/contexts/types';
2
- import { PLPInfo } from './plpInfo';
3
2
  import { PageVisitInfo } from './pageVisitInfo';
3
+ import { PLPInfo } from './plpInfo';
4
4
  import { ProductInfo } from './productInfo';
5
5
 
6
6
  export enum VariantTypeEnum {
@@ -0,0 +1,21 @@
1
+ import type { ProductRetrievalResponse } from '@spiffy-ai/commerce-api-client';
2
+ import { transformSnakeToCamel } from 'src/application/models/utils/snakeToCamelTransformer';
3
+ import type { SearchResponseProductAttributes } from 'src/application/models/api/response';
4
+ import type { ProductRetrievalResult } from 'src/atoms/search/types';
5
+
6
+ /**
7
+ * Maps the API response from /v1/products/retrieve to the core ProductRetrievalResult.
8
+ * Converts product attributes from snake_case to camelCase to match SearchResponseProductAttributes.
9
+ */
10
+ export function productRetrievalResponseToProductRetrievalResult(
11
+ apiResponse: ProductRetrievalResponse,
12
+ ): ProductRetrievalResult {
13
+ const products = (apiResponse.products ?? []).map(product =>
14
+ transformSnakeToCamel(product),
15
+ ) as SearchResponseProductAttributes['attributes'][];
16
+
17
+ return {
18
+ products,
19
+ totalProductCount: products.length,
20
+ };
21
+ }
@@ -5,6 +5,7 @@ import {
5
5
  } from '@spiffy-ai/commerce-api-client';
6
6
  import { atom } from 'jotai';
7
7
  import { atomWithStorage } from 'jotai/utils';
8
+ import Logger from 'src/application/logging/logger';
8
9
  import {
9
10
  PDPVariantInfo,
10
11
  PLPVariantInfo,
@@ -15,7 +16,6 @@ import {
15
16
  } from 'src/application/models';
16
17
  import { sessionStorageUtil } from 'src/atoms/atomStore';
17
18
  import type { PageVariantInfo } from 'src/contexts/pageContext/types';
18
- import Logger from 'src/application/logging/logger';
19
19
  import { ShowFloatingButtonOptions } from 'src/contexts/types';
20
20
 
21
21
  export interface SupportedEvent extends Pick<
@@ -168,7 +168,7 @@ const internalProductUrlAtom = atom<string>();
168
168
  const internalPlpIdAtom = atom<string>();
169
169
  const internalUrlAtom = atom<string>();
170
170
  const internalPageVisitCategoryAtom = atom<PageVisitCategory>();
171
- const internalVariantAtom = atom<'pdp' | 'plp' | 'search' | 'page_visit'>('pdp');
171
+ const internalVariantAtom = atom<'pdp' | 'plp' | 'search' | 'page_visit' | 'full_page'>('pdp');
172
172
  const internalFloatingButtonOverrideAtom = atom<ShowFloatingButtonOptions>();
173
173
 
174
174
  export const variantIdAtom = atom(get => get(internalVariantIdAtom));
@@ -251,6 +251,12 @@ const getPageVisitContext = (pageVisitCategory: PageVisitCategory | undefined) =
251
251
  page_id: window.location.href,
252
252
  };
253
253
  }
254
+ if (pageVisitCategory === PageVisitCategory.FullPage) {
255
+ return {
256
+ page_type: 'full_page',
257
+ page_id: window.location.href,
258
+ };
259
+ }
254
260
  return {
255
261
  page_type: 'other',
256
262
  page_id: window.location.href,
@@ -133,9 +133,6 @@ export const mockV3FrontendConfig: FrontendConfigV3 = {
133
133
  welcomeMessageText:
134
134
  'Your personal shopper trained on the collective knowledge of thousands of real experts!',
135
135
  chatFooterTextFieldPlaceholderText: 'Ask me anything...',
136
- partialViewConfig: {
137
- disabled: true,
138
- },
139
136
  },
140
137
  customerServiceIntegration: {
141
138
  provider: CustomerServiceType.unsupported,
@@ -48,7 +48,7 @@ export interface SalesAgentChatAPI {
48
48
  onFormResponseSubmitted: (form: FormSubmittedAttributes) => void;
49
49
  }
50
50
 
51
- export const useSalesAgentChatAPI = () => {
51
+ export const useSalesAgentChatAPI = (widget?: WidgetInteractionComponent) => {
52
52
  // TODO: Each of these functions will trigger both the necessary amplitude events and initiate the
53
53
  // necessary actions to trigger the backend API
54
54
  const context = useAtomValue(analyticsContextAtom);
@@ -58,6 +58,7 @@ export const useSalesAgentChatAPI = () => {
58
58
  const setFormSubmit = useSetAtom(formSubmitAtom);
59
59
  const { trackEvent } = useAmplitude();
60
60
  const { trackWidgetInteraction } = useWidgetInteraction();
61
+ const contextWidget = widget || WidgetInteractionComponent.FLOATING_CHAT;
61
62
 
62
63
  const logPageVisit = useCallback(
63
64
  ({ pageVisitCategory }: { pageVisitCategory: PageVisitCategory }) => {
@@ -113,7 +114,7 @@ export const useSalesAgentChatAPI = () => {
113
114
  trackWidgetInteraction({
114
115
  eventName: EnviveMetricsEventName.WidgetInteraction,
115
116
  trigger: {
116
- widget: WidgetInteractionComponent.FLOATING_CHAT,
117
+ widget: contextWidget,
117
118
  widget_interaction: WidgetInteractionType.SUGGESTION_CLICKED,
118
119
  widget_interaction_data: {
119
120
  suggestion_clicked: {
@@ -182,7 +183,7 @@ export const useSalesAgentChatAPI = () => {
182
183
  trackWidgetInteraction({
183
184
  eventName: EnviveMetricsEventName.WidgetInteraction,
184
185
  trigger: {
185
- widget: WidgetInteractionComponent.FLOATING_CHAT,
186
+ widget: contextWidget,
186
187
  widget_interaction: WidgetInteractionType.MESSAGE_SUBMITTED,
187
188
  widget_interaction_data: {
188
189
  message_submitted: {
@@ -1,9 +1,9 @@
1
- import { useAtom, useAtomValue, useSetAtom } from 'jotai';
2
- import { ReactNode, createContext, useCallback, useEffect, useMemo, useRef } from 'react';
3
1
  import { UserEventCategory } from '@spiffy-ai/commerce-api-client';
2
+ import { useAtom, useAtomValue, useSetAtom } from 'jotai';
3
+ import { ReactNode, createContext, useCallback, useEffect, useMemo, useRef, useState } from 'react';
4
4
  import Logger from 'src/application/logging/logger';
5
- import { Message, MessageRole, MessageType } from 'src/application/models/message';
6
5
  import { NextMessageRequest, Suggestion, UserEvent } from 'src/application/models';
6
+ import { Message, MessageRole, MessageType } from 'src/application/models/message';
7
7
  import {
8
8
  initializedAtom,
9
9
  messagesAtom,
@@ -16,12 +16,13 @@ import {
16
16
  userEventQueueAtom,
17
17
  userQueueEventCountAtom,
18
18
  } from 'src/atoms/chat/messageQueue';
19
- import { useSystemSettingsContext } from 'src/hooks/SystemSettingsContext';
19
+ import { useSystemSettingsContext } from '../../hooks/SystemSettingsContext';
20
+ import { WidgetInteractionComponent } from '../../hooks/WidgetInteraction/types';
21
+ import { SalesAgentChatAPI, useSalesAgentChatAPI } from './chatAPI';
20
22
  import {
21
23
  buildFormSubmittedDisplayContent,
22
24
  createFormSubmittedUserMessage,
23
25
  } from './formSubmittedUtils';
24
- import { SalesAgentChatAPI, useSalesAgentChatAPI } from './chatAPI';
25
26
  import { useSalesAgentService } from './salesAgentService';
26
27
 
27
28
  export interface SalesAgent extends SalesAgentChatAPI {
@@ -60,6 +61,7 @@ export const SalesAgentProvider: React.FC<SalesAgentProviderProps> = ({
60
61
  const userEvents = useAtomValue(userEventQueueAtom);
61
62
  const userQueueEventCount = useAtomValue(userQueueEventCountAtom);
62
63
  const markUserEventsProcessed = useSetAtom(processUserEventAtom);
64
+ const [isHydrated, setIsHydrated] = useState(false);
63
65
  const [isInitialized, setIsInitialized] = useAtom(initializedAtom);
64
66
  const settingsContext = useSystemSettingsContext();
65
67
  const setMessages = useSetAtom(messagesAtom);
@@ -111,6 +113,10 @@ export const SalesAgentProvider: React.FC<SalesAgentProviderProps> = ({
111
113
  if (previewMode) {
112
114
  return;
113
115
  }
116
+ // Wait for the messages to be hydrated before sending messages to the backend
117
+ if (!isHydrated) {
118
+ return;
119
+ }
114
120
 
115
121
  if (userQueueEventCount > 0 && !isSendingRef.current) {
116
122
  isSendingRef.current = true;
@@ -177,6 +183,7 @@ export const SalesAgentProvider: React.FC<SalesAgentProviderProps> = ({
177
183
  );
178
184
  }
179
185
  }, [
186
+ isHydrated,
180
187
  createResponsePayload,
181
188
  getSuggestions,
182
189
  isInitialized,
@@ -189,21 +196,30 @@ export const SalesAgentProvider: React.FC<SalesAgentProviderProps> = ({
189
196
  ]);
190
197
 
191
198
  useEffect(() => {
192
- // Skip hydration in preview mode
193
- if (previewMode) {
194
- return;
195
- }
199
+ const startHydration = async () => {
200
+ // Skip hydration in preview mode
201
+ if (previewMode) {
202
+ return;
203
+ }
196
204
 
197
- if (isInitialized) {
198
- // Rehydrate any messages from the backend
199
- hydrateMessages();
200
- }
201
- }, [isInitialized, hydrateMessages, previewMode]);
205
+ if (!isHydrated) {
206
+ // Rehydrate any messages from the backend
207
+ try {
208
+ await hydrateMessages();
209
+ } catch (error) {
210
+ Logger.logError('[envive-ai] error hydrating messages', error);
211
+ } finally {
212
+ setIsHydrated(true);
213
+ }
214
+ }
215
+ };
216
+ startHydration();
217
+ }, [isInitialized, hydrateMessages, previewMode, isHydrated]);
202
218
 
203
219
  return <SalesAgentContext.Provider value={undefined}>{children}</SalesAgentContext.Provider>;
204
220
  };
205
221
 
206
- export const useSalesAgent = (): SalesAgent => {
222
+ export const useSalesAgent = (contextWidget?: WidgetInteractionComponent): SalesAgent => {
207
223
  const messages = useAtomValue(messagesAtom);
208
224
  const suggestions = useAtomValue(suggestionsAtom);
209
225
  const pendingMessages = useAtomValue(userEventQueueAtom);
@@ -216,7 +232,7 @@ export const useSalesAgent = (): SalesAgent => {
216
232
  onSuggestionClicked,
217
233
  onTypedMessageSubmitted,
218
234
  onFormResponseSubmitted,
219
- } = useSalesAgentChatAPI();
235
+ } = useSalesAgentChatAPI(contextWidget);
220
236
 
221
237
  const salesAgent: SalesAgent = useMemo(() => {
222
238
  return {
@@ -1,8 +1,7 @@
1
+ import { UserEventCategory } from '@spiffy-ai/commerce-api-client';
1
2
  import { useAtomValue, useSetAtom } from 'jotai';
2
3
  import { useCallback } from 'react';
3
- import { v4 as uuid } from 'uuid';
4
4
  import CommerceApiClient from 'src/application/commerce-api';
5
- import { appDetailsAtom } from 'src/atoms/app';
6
5
  import Logger from 'src/application/logging/logger';
7
6
  import {
8
7
  GenerationParams,
@@ -13,7 +12,9 @@ import {
13
12
  Response,
14
13
  UserEvent,
15
14
  } from 'src/application/models';
16
- import { messageFromResponse } from 'src/application/utils';
15
+ import { messageFromQueryEvent, messageFromResponse } from 'src/application/utils';
16
+ import { appDetailsAtom } from 'src/atoms/app';
17
+ import { analyticsContextAtom } from 'src/atoms/app/variant';
17
18
  import {
18
19
  messagesAtom,
19
20
  pendingResponseAtom,
@@ -21,15 +22,14 @@ import {
21
22
  responseStreamingAtom,
22
23
  suggestionsAtom,
23
24
  } from 'src/atoms/chat/chatState';
24
- import { useMessageInterceptor } from 'src/interceptors/useMessageInterceptor';
25
25
  import { useAmplitude } from 'src/contexts/amplitudeContext';
26
+ import { useFeatureFlagService } from 'src/contexts/featureFlagServiceContext';
27
+ import { useMessageInterceptor } from 'src/interceptors/useMessageInterceptor';
26
28
  import {
27
29
  EnviveMetricsEventName,
28
30
  SpiffyMetricsEventName,
29
31
  } from 'src/services/amplitudeService/amplitudeService';
30
- import { useFeatureFlagService } from 'src/contexts/featureFlagServiceContext';
31
- import { UserEventCategory } from '@spiffy-ai/commerce-api-client';
32
- import { analyticsContextAtom } from 'src/atoms/app/variant';
32
+ import { v4 as uuid } from 'uuid';
33
33
 
34
34
  import { StatusCodeError } from './statusCodeError';
35
35
 
@@ -177,10 +177,11 @@ const processStreamingResponse = async (
177
177
  messageInterceptor: { intercept: (response?: Response) => boolean | undefined },
178
178
  setMessages: (updater: (prev: Message[][]) => Message[][]) => void,
179
179
  setResponseStreaming: (responseStreaming: boolean) => void,
180
- ): Promise<Record<string, number>> => {
180
+ ): Promise<Record<string, number | string[]>> => {
181
181
  let lastMessage: Message | undefined;
182
182
  setResponseStreaming(true);
183
- const responseAnalytics: Record<string, number> = {};
183
+ const responseAnalytics: Record<string, number | string[]> = {};
184
+ const productIds = [];
184
185
 
185
186
  for await (const response of stream) {
186
187
  try {
@@ -197,12 +198,19 @@ const processStreamingResponse = async (
197
198
  throw new Error('Failed to transform API response to client message');
198
199
  }
199
200
  if (message.type === MessageType.Product) {
200
- responseAnalytics['chat.product_cards_returned'] =
201
- (responseAnalytics['chat.product_cards_returned'] || 0) + 1;
201
+ const cardsCounter = (responseAnalytics['chat.product_cards_returned'] as number) || 0;
202
+ responseAnalytics['chat.product_cards_returned'] = cardsCounter + 1;
203
+
204
+ const productIds = responseAnalytics['chat.product_ids_returned'] as string[];
205
+ if (!productIds) {
206
+ responseAnalytics['chat.product_ids_returned'] = [message.metadata.id];
207
+ } else {
208
+ productIds.push(message.metadata.id);
209
+ }
202
210
  }
203
211
  if (message.type === MessageType.Review) {
204
- responseAnalytics['chat.review_cards_returned'] =
205
- (responseAnalytics['chat.review_cards_returned'] || 0) + 1;
212
+ const cardsCounter = (responseAnalytics['chat.review_cards_returned'] as number) || 0;
213
+ responseAnalytics['chat.review_cards_returned'] = cardsCounter + 1;
206
214
  }
207
215
 
208
216
  // No support for ChatSearch messages at the current time.
@@ -363,7 +371,7 @@ export const useSalesAgentService: () => SalesAgentService = () => {
363
371
 
364
372
  const hydrateMessages = useCallback(async () => {
365
373
  const { orgId, chatId, userId } = context;
366
- const { messages: existingMessages, userEvents } = await CommerceApiClient.getResponses(
374
+ const { messages: existingMessages } = await CommerceApiClient.getResponses(
367
375
  orgId,
368
376
  chatId,
369
377
  userId,