@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.
- package/dist/application/commerce-api.cjs +38 -1
- package/dist/application/commerce-api.d.cts +13 -2
- package/dist/application/commerce-api.d.ts +13 -2
- package/dist/application/commerce-api.js +39 -2
- package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.cjs +2 -2
- package/dist/application/models/guards/api/isApiQueryTypedEventAttributes.js +2 -2
- package/dist/application/models/index.d.cts +10 -10
- package/dist/application/models/index.d.ts +10 -10
- package/dist/application/models/variantInfo/variantInfo.cjs +1 -1
- package/dist/application/models/variantInfo/variantInfo.d.cts +2 -2
- package/dist/application/models/variantInfo/variantInfo.d.ts +2 -2
- package/dist/application/models/variantInfo/variantInfo.js +1 -1
- package/dist/application/utils/productRetrievalResponseToProductRetrievalResult.cjs +18 -0
- package/dist/application/utils/productRetrievalResponseToProductRetrievalResult.js +18 -0
- package/dist/atoms/app/index.d.cts +7 -7
- package/dist/atoms/app/index.d.ts +6 -6
- package/dist/atoms/app/variant.cjs +5 -1
- package/dist/atoms/app/variant.d.cts +1 -1
- package/dist/atoms/app/variant.d.ts +1 -1
- package/dist/atoms/app/variant.js +5 -1
- package/dist/atoms/chat/chatState.d.cts +17 -17
- package/dist/atoms/chat/chatState.d.ts +18 -18
- package/dist/atoms/chat/form.d.cts +2 -2
- package/dist/atoms/chat/index.cjs +1 -1
- package/dist/atoms/chat/index.d.cts +2 -2
- package/dist/atoms/chat/index.js +1 -1
- package/dist/atoms/chat/lastMessage.d.ts +2 -2
- package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
- package/dist/atoms/chat/replies.d.cts +3 -3
- package/dist/atoms/chat/replies.d.ts +3 -3
- package/dist/atoms/chat/suggestions.d.cts +2 -2
- package/dist/atoms/chat/suggestions.d.ts +2 -2
- package/dist/atoms/envive/enviveConfig.d.cts +12 -12
- package/dist/atoms/envive/enviveConfig.d.ts +13 -13
- package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
- package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
- package/dist/atoms/org/customerService.d.cts +6 -6
- package/dist/atoms/org/customerService.d.ts +6 -6
- package/dist/atoms/org/graphqlConfig.d.cts +4 -4
- package/dist/atoms/org/graphqlConfig.d.ts +4 -4
- package/dist/atoms/org/index.cjs +1 -1
- package/dist/atoms/org/index.js +1 -1
- package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
- package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
- package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
- package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
- package/dist/atoms/search/chatSearch.cjs +1 -1
- package/dist/atoms/search/chatSearch.d.cts +18 -18
- package/dist/atoms/search/chatSearch.d.ts +1 -1
- package/dist/atoms/search/chatSearch.js +1 -1
- package/dist/atoms/search/searchAPI.cjs +1 -1
- package/dist/atoms/search/searchAPI.d.cts +14 -14
- package/dist/atoms/search/searchAPI.d.ts +14 -14
- package/dist/atoms/search/searchAPI.js +1 -1
- package/dist/atoms/widget/chatPreviewLoading.d.cts +2 -2
- package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
- package/dist/contexts/enviveContext/types.d.cts +1 -1
- package/dist/contexts/enviveContext/types.d.ts +1 -1
- package/dist/contexts/graphqlContext/graphqlContext.d.cts +1 -1
- package/dist/contexts/graphqlContext/graphqlContext.d.ts +1 -1
- package/dist/contexts/graphqlContext/mockV3Config.cjs +2 -3
- package/dist/contexts/graphqlContext/mockV3Config.js +2 -3
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +1 -1
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +1 -1
- package/dist/contexts/salesAgentContext/chatAPI.cjs +7 -6
- package/dist/contexts/salesAgentContext/chatAPI.d.cts +3 -2
- package/dist/contexts/salesAgentContext/chatAPI.d.ts +3 -2
- package/dist/contexts/salesAgentContext/chatAPI.js +7 -6
- package/dist/contexts/salesAgentContext/salesAgentContext.cjs +20 -7
- package/dist/contexts/salesAgentContext/salesAgentContext.d.cts +3 -2
- package/dist/contexts/salesAgentContext/salesAgentContext.d.ts +3 -2
- package/dist/contexts/salesAgentContext/salesAgentContext.js +21 -8
- package/dist/contexts/salesAgentContext/salesAgentService.cjs +9 -4
- package/dist/contexts/salesAgentContext/salesAgentService.js +9 -4
- package/dist/contexts/searchContext/searchContext.cjs +1 -1
- package/dist/contexts/searchContext/searchContext.js +1 -1
- package/dist/contexts/types.d.cts +1 -1
- package/dist/contexts/types.d.ts +1 -1
- package/dist/contexts/typesV3.cjs +1 -1
- package/dist/contexts/typesV3.d.cts +1 -10
- package/dist/contexts/typesV3.d.ts +1 -10
- package/dist/contexts/typesV3.js +1 -1
- package/dist/hooks/ChatToggle/useChatToggle.cjs +1 -1
- package/dist/hooks/ChatToggle/useChatToggle.js +1 -1
- package/dist/hooks/ProductImageUrl/index.cjs +3 -0
- package/dist/hooks/ProductImageUrl/index.d.cts +2 -0
- package/dist/hooks/ProductImageUrl/index.d.ts +2 -0
- package/dist/hooks/ProductImageUrl/index.js +3 -0
- package/dist/hooks/ProductImageUrl/useProductImageUrl.cjs +33 -0
- package/dist/hooks/ProductImageUrl/useProductImageUrl.d.cts +9 -0
- package/dist/hooks/ProductImageUrl/useProductImageUrl.d.ts +9 -0
- package/dist/hooks/ProductImageUrl/useProductImageUrl.js +32 -0
- package/dist/hooks/Search/useSearch.cjs +3 -3
- package/dist/hooks/Search/useSearch.d.cts +1 -1
- package/dist/hooks/Search/useSearch.d.ts +1 -1
- package/dist/hooks/Search/useSearch.js +3 -3
- package/dist/hooks/WidgetInteraction/types.cjs +2 -1
- package/dist/hooks/WidgetInteraction/types.d.cts +2 -1
- package/dist/hooks/WidgetInteraction/types.d.ts +2 -1
- package/dist/hooks/WidgetInteraction/types.js +2 -1
- package/dist/hooks/utils.d.cts +1 -1
- package/dist/hooks/utils.d.ts +1 -1
- package/dist/services/ga4ProjectionService/ga4EventSchema.cjs +2 -1
- package/dist/services/ga4ProjectionService/ga4EventSchema.js +2 -1
- package/package.json +5 -1
- package/src/application/commerce-api.ts +51 -0
- package/src/application/models/guards/api/isApiQueryTypedEventAttributes.ts +1 -6
- package/src/application/models/variantInfo/variantInfo.ts +1 -1
- package/src/application/utils/productRetrievalResponseToProductRetrievalResult.ts +21 -0
- package/src/atoms/app/variant.ts +8 -2
- package/src/contexts/graphqlContext/mockV3Config.ts +0 -3
- package/src/contexts/salesAgentContext/chatAPI.ts +4 -3
- package/src/contexts/salesAgentContext/salesAgentContext.tsx +32 -16
- package/src/contexts/salesAgentContext/salesAgentService.ts +22 -14
- package/src/contexts/typesV3.ts +0 -10
- package/src/hooks/ProductImageUrl/index.ts +1 -0
- package/src/hooks/ProductImageUrl/useProductImageUrl.ts +35 -0
- package/src/hooks/WidgetInteraction/types.ts +1 -0
- 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/
|
|
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/
|
|
45
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuLi8uLi9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQge1xuICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGU7XG4gIHBhZ2VfaWQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uVHJpZ2dlciB7XG4gIGludGVyYWN0aW9uX2lkPzogc3RyaW5nO1xuICB3aWRnZXQ6IFdpZGdldEludGVyYWN0aW9uQ29tcG9uZW50O1xuICB3aWRnZXRfaW50ZXJhY3Rpb246IFdpZGdldEludGVyYWN0aW9uVHlwZTtcbiAgd2lkZ2V0X2ludGVyYWN0aW9uX2RhdGE/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGEgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb24ge1xuICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICBjb250ZXh0OiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQ7XG4gIHRyaWdnZXI6IFdpZGdldEludGVyYWN0aW9uVHJpZ2dlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbiB7XG4gIGV2ZW50TmFtZTogSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvblsnZXZlbnROYW1lJ107XG4gIHRyaWdnZXI6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ3RyaWdnZXInXTtcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB7XG4gIFBEUCA9ICdwZHAnLFxuICBQTFAgPSAncGxwJyxcbiAgSE9NRVBBR0UgPSAnaG9tZXBhZ2UnLFxuICBTRUFSQ0ggPSAnc2VhcmNoJyxcbiAgT1RIRVIgPSAnb3RoZXInLFxuICBGVUxMX1BBR0UgPSAnZnVsbF9wYWdlJyxcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25Db21wb25lbnQge1xuICBFTUJFRERFRF9XSURHRVQgPSAnZW1iZWRkZWRfd2lkZ2V0JyxcbiAgU1VHR0VTVElPTl9CQVIgPSAnc3VnZ2VzdGlvbl9iYXInLFxuICBGTE9BVElOR19CVVRUT04gPSAnZmxvYXRpbmdfYnV0dG9uJyxcbiAgRlVMTF9QQUdFX1NBTEVTX0FHRU5UID0gJ2Z1bGxfcGFnZV9zYWxlc19hZ2VudCcsXG4gIFNPQ0lBTF9QUk9PRiA9ICdzb2NpYWxfcHJvb2YnLFxuICBDSEFUX1BSRVZJRVcgPSAnY2hhdF9wcmV2aWV3JyxcbiAgRkxPQVRJTkdfQ0hBVCA9ICdmbG9hdGluZ19jaGF0JyxcbiAgU0lOR0xFX0lNQUdFX1BST01QVCA9ICdzaW5nbGVfaW1hZ2VfcHJvbXB0JyxcbiAgSU1BR0VfUFJPTVBUX0NBUkQgPSAnaW1hZ2VfcHJvbXB0X2NhcmQnLFxuICBQT1NUX0lOVEVSQUNUSU9OX0NPTVBBUklTT04gPSAncG9zdF9pbnRlcmFjdGlvbl9jb21wYXJpc29uJyxcbiAgUE9TVF9JTlRFUkFDVElPTl9FTUJFRERFRCA9ICdwb3N0X2ludGVyYWN0aW9uX2VtYmVkZGVkJyxcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25UeXBlIHtcbiAgUVVFUllfSU5QVVRfQ0xJQ0tFRCA9ICdxdWVyeV9pbnB1dF9jbGlja2VkJyxcbiAgU1VHR0VTVElPTl9DTElDS0VEID0gJ3N1Z2dlc3Rpb25fY2xpY2tlZCcsXG4gIFdJREdFVF9DTElDS0VEID0gJ3dpZGdldF9jbGlja2VkJyxcbiAgV0lER0VUX0hPVkVSRUQgPSAnd2lkZ2V0X2hvdmVyZWQnLFxuICBXSURHRVRfRVhQQU5ERUQgPSAnd2lkZ2V0X2V4cGFuZGVkJyxcbiAgV0lER0VUX0NPTExBUFNFRCA9ICd3aWRnZXRfY29sbGFwc2VkJyxcbiAgU1VHR0VTVElPTl9TQ1JPTExFRCA9ICdzdWdnZXN0aW9uX3Njcm9sbGVkJyxcbiAgTElOS19DTElDS0VEID0gJ2xpbmtfY2xpY2tlZCcsXG4gIFBST0RVQ1RfQ0FSRF9DTElDS0VEID0gJ3Byb2R1Y3RfY2FyZF9jbGlja2VkJyxcbiAgVEVYVF9MSU5LX0NMSUNLRUQgPSAndGV4dF9saW5rX2NsaWNrZWQnLFxuICBBUlRJQ0xFX0xJTktfQ0xJQ0tFRCA9ICdhcnRpY2xlX2xpbmtfY2xpY2tlZCcsXG4gIFJFVklFV19DQVJEX0NMSUNLRUQgPSAncmV2aWV3X2NhcmRfY2xpY2tlZCcsXG4gIE1FU1NBR0VfU1VCTUlUVEVEID0gJ21lc3NhZ2Vfc3VibWl0dGVkJyxcbiAgTUFOVUFMX1NDUk9MTF9UT19CT1RUT00gPSAnbWFudWFsX3Njcm9sbF90b19ib3R0b20nLFxufVxuXG5leHBvcnQgdHlwZSBVUkwgPSB7XG4gIHVybDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdCA9IHtcbiAgcHJvZHVjdF9pZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUmV2aWV3ID0ge1xuICByZXZpZXdfaWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFN1Z2dlc3Rpb24gPSB7XG4gIHN1Z2dlc3Rpb25faWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFJlcXVlc3QgPSB7XG4gIHJlcXVlc3RfdGV4dDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgQ29sbGFwc2UgPSB7XG4gIGNvbGxhcHNlX3NvdXJjZTogJ2Nsb3NlX2J1dHRvbicgfCAnc3dpcGUnIHwgJ2JvZHlfY2xpY2snO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvblNjcm9sbGVkID0ge1xuICBzdWdnZXN0aW9uX3Njcm9sbGVkOiBTdWdnZXN0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbkNsaWNrZWQgPSB7XG4gIHN1Z2dlc3Rpb25fY2xpY2tlZDogU3VnZ2VzdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIFN1Z2dlc3Rpb25Ib3ZlcmVkID0ge1xuICBzdWdnZXN0aW9uX2hvdmVyZWQ6IFN1Z2dlc3Rpb247XG59O1xuXG5leHBvcnQgdHlwZSBMaW5rQ2xpY2tlZCA9IHtcbiAgbGlua19jbGlja2VkOiBVUkw7XG59O1xuXG5leHBvcnQgdHlwZSBXaWRnZXRDb2xsYXBzZWQgPSB7XG4gIHdpZGdldF9jb2xsYXBzZWQ6IENvbGxhcHNlO1xufTtcblxuZXhwb3J0IHR5cGUgVGV4dExpbmtDbGlja2VkID0ge1xuICB0ZXh0X2xpbmtfY2xpY2tlZDogVVJMO1xufTtcblxuZXhwb3J0IHR5cGUgQXJ0aWNsZUxpbmtDbGlja2VkID0ge1xuICBhcnRpY2xlX2xpbmtfY2xpY2tlZDogVVJMO1xufTtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdENhcmRDbGlja2VkID0ge1xuICBwcm9kdWN0X2NhcmRfY2xpY2tlZDogUHJvZHVjdDtcbn07XG5cbmV4cG9ydCB0eXBlIFJldmlld0NhcmRDbGlja2VkID0ge1xuICByZXZpZXdfY2FyZF9jbGlja2VkOiBSZXZpZXc7XG59O1xuXG5leHBvcnQgdHlwZSBNZXNzYWdlU3VibWl0dGVkID0ge1xuICBtZXNzYWdlX3N1Ym1pdHRlZDogUmVxdWVzdDtcbn07XG5cbmV4cG9ydCB0eXBlIFdpZGdldEludGVyYWN0aW9uRGF0YSA9XG4gIHwgU3VnZ2VzdGlvblNjcm9sbGVkXG4gIHwgU3VnZ2VzdGlvbkNsaWNrZWRcbiAgfCBTdWdnZXN0aW9uSG92ZXJlZFxuICB8IExpbmtDbGlja2VkXG4gIHwgV2lkZ2V0Q29sbGFwc2VkXG4gIHwgVGV4dExpbmtDbGlja2VkXG4gIHwgQXJ0aWNsZUxpbmtDbGlja2VkXG4gIHwgUHJvZHVjdENhcmRDbGlja2VkXG4gIHwgUmV2aWV3Q2FyZENsaWNrZWRcbiAgfCBNZXNzYWdlU3VibWl0dGVkO1xuIl0sIm1hcHBpbmdzIjoiO0FBeUJBLElBQVksa0ZBQUw7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdGLElBQVksb0ZBQUw7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHRixJQUFZLDBFQUFMO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSJ9
|
package/dist/hooks/utils.d.cts
CHANGED
|
@@ -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,
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoJztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudEluZm8gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsVUFBVSxlQUFlO0FBQ2pFLElBQVcsdUJBQXVCLENBQUMsVUFBVSxVQUFVO0FBQ3ZELElBQVcsdUJBQXVCO0NBQUM7T0FBVTtPQUFpQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxHQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsR0FBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVU7T0FBb0I7Q0FBbUIifQ==
|
package/dist/hooks/utils.d.ts
CHANGED
|
@@ -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+
|
|
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/
|
|
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/
|
|
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.
|
|
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
|
+
}
|
package/src/atoms/app/variant.ts
CHANGED
|
@@ -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:
|
|
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:
|
|
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 '
|
|
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
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
199
|
+
const startHydration = async () => {
|
|
200
|
+
// Skip hydration in preview mode
|
|
201
|
+
if (previewMode) {
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
196
204
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
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 {
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
374
|
+
const { messages: existingMessages } = await CommerceApiClient.getResponses(
|
|
367
375
|
orgId,
|
|
368
376
|
chatId,
|
|
369
377
|
userId,
|