@envive-ai/react-hooks 0.3.13 → 0.3.15-beta.0
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 +1 -1
- package/dist/application/commerce-api.js +1 -1
- package/dist/application/models/featureGates.cjs +4 -1
- package/dist/application/models/featureGates.d.cts +4 -1
- package/dist/application/models/featureGates.d.ts +4 -1
- package/dist/application/models/featureGates.js +4 -1
- package/dist/atoms/app/index.d.cts +7 -7
- package/dist/atoms/app/index.d.ts +1 -1
- package/dist/atoms/app/variant.d.cts +6 -6
- package/dist/atoms/app/variant.d.ts +6 -6
- package/dist/atoms/chat/chatState.d.cts +18 -18
- package/dist/atoms/chat/chatState.d.ts +1 -1
- package/dist/atoms/chat/form.d.cts +3 -3
- package/dist/atoms/chat/form.d.ts +2 -2
- package/dist/atoms/chat/index.d.cts +3 -3
- package/dist/atoms/chat/index.d.ts +2 -2
- package/dist/atoms/chat/lastMessage.d.cts +2 -2
- package/dist/atoms/chat/lastMessage.d.ts +2 -2
- package/dist/atoms/chat/messageQueue.d.cts +6 -6
- package/dist/atoms/chat/messageQueue.d.ts +6 -6
- package/dist/atoms/chat/performanceMetrics.d.cts +7 -7
- package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
- package/dist/atoms/chat/renderedWidgetRefs.d.cts +2 -2
- package/dist/atoms/chat/renderedWidgetRefs.d.ts +2 -2
- 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 +13 -13
- 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/newOrgConfigAtom.d.cts +2 -2
- package/dist/atoms/org/newOrgConfigAtom.d.ts +3 -3
- package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
- package/dist/atoms/org/orgAnalyticsConfig.d.ts +6 -6
- package/dist/atoms/search/chatSearch.d.cts +17 -17
- package/dist/atoms/search/chatSearch.d.ts +17 -17
- package/dist/atoms/search/searchAPI.d.cts +13 -13
- package/dist/atoms/search/searchAPI.d.ts +13 -13
- package/dist/atoms/search/utils.d.cts +1 -1
- package/dist/atoms/search/utils.d.ts +1 -1
- package/dist/atoms/widget/chatPreviewLoading.d.cts +2 -2
- package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
- package/dist/contexts/hardcopyContext/hardcopyContext.cjs +4 -2
- package/dist/contexts/hardcopyContext/hardcopyContext.js +4 -2
- package/dist/contexts/pageContext/types.d.cts +1 -1
- package/dist/contexts/salesAgentContext/chatAPI.cjs +21 -1
- package/dist/contexts/salesAgentContext/chatAPI.js +21 -1
- package/dist/contexts/systemSettingsContext/systemSettingsContext.d.ts +2 -2
- package/dist/contexts/types.d.cts +1 -1
- package/dist/contexts/types.d.ts +1 -1
- package/dist/contexts/typesV3.d.cts +1 -1
- package/dist/contexts/typesV3.d.ts +1 -1
- package/dist/hooks/ChatToggle/useChatToggle.cjs +47 -17
- package/dist/hooks/ChatToggle/useChatToggle.d.cts +2 -1
- package/dist/hooks/ChatToggle/useChatToggle.d.ts +2 -1
- package/dist/hooks/ChatToggle/useChatToggle.js +48 -18
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +2 -2
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.cts +2 -2
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.ts +2 -2
- package/dist/hooks/SystemSettingsContext/useSystemSettingsContext.d.ts +2 -2
- package/dist/hooks/WidgetInteraction/index.cjs +3 -0
- package/dist/hooks/WidgetInteraction/index.d.cts +2 -0
- package/dist/hooks/WidgetInteraction/index.d.ts +2 -0
- package/dist/hooks/WidgetInteraction/index.js +3 -0
- package/dist/hooks/WidgetInteraction/types.cjs +47 -0
- package/dist/hooks/WidgetInteraction/types.d.cts +110 -0
- package/dist/hooks/WidgetInteraction/types.d.ts +110 -0
- package/dist/hooks/WidgetInteraction/types.js +44 -0
- package/dist/hooks/WidgetInteraction/useWidgetInteraction.cjs +34 -0
- package/dist/hooks/WidgetInteraction/useWidgetInteraction.d.cts +10 -0
- package/dist/hooks/WidgetInteraction/useWidgetInteraction.d.ts +10 -0
- package/dist/hooks/WidgetInteraction/useWidgetInteraction.js +33 -0
- package/dist/hooks/WidgetInteraction/utils.cjs +34 -0
- package/dist/hooks/WidgetInteraction/utils.d.cts +8 -0
- package/dist/hooks/WidgetInteraction/utils.d.ts +8 -0
- package/dist/hooks/WidgetInteraction/utils.js +34 -0
- package/dist/hooks/utils.d.cts +1 -1
- package/dist/hooks/utils.d.ts +1 -1
- package/dist/types/customerService.cjs +3 -1
- package/dist/types/customerService.d.cts +3 -1
- package/dist/types/customerService.d.ts +3 -1
- package/dist/types/customerService.js +3 -1
- package/package.json +13 -1
- package/src/application/commerce-api.ts +0 -1
- package/src/application/models/featureGates.ts +3 -0
- package/src/contexts/hardcopyContext/hardcopyContext.tsx +2 -0
- package/src/contexts/salesAgentContext/chatAPI.ts +39 -6
- package/src/hooks/ChatToggle/useChatToggle.ts +35 -2
- package/src/hooks/WidgetInteraction/index.ts +1 -0
- package/src/hooks/WidgetInteraction/types.ts +139 -0
- package/src/hooks/WidgetInteraction/useWidgetInteraction.ts +35 -0
- package/src/hooks/WidgetInteraction/utils.ts +44 -0
- package/src/types/customerService.ts +2 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { EnviveMetricsEventName, SpiffyMetricsEventName } from "../../services/amplitudeService/eventNames.js";
|
|
2
|
+
|
|
3
|
+
//#region src/hooks/WidgetInteraction/types.d.ts
|
|
4
|
+
interface WidgetInteractionContext {
|
|
5
|
+
page_type: WidgetInteractionPageType;
|
|
6
|
+
page_id: string;
|
|
7
|
+
}
|
|
8
|
+
interface WidgetInteractionTrigger {
|
|
9
|
+
interaction_id?: string;
|
|
10
|
+
widget: WidgetInteractionComponent;
|
|
11
|
+
widget_interaction: WidgetInteractionType;
|
|
12
|
+
widget_interaction_data?: WidgetInteractionData | null;
|
|
13
|
+
}
|
|
14
|
+
interface InternalWidgetInteraction {
|
|
15
|
+
eventName: SpiffyMetricsEventName | EnviveMetricsEventName;
|
|
16
|
+
context: WidgetInteractionContext;
|
|
17
|
+
trigger: WidgetInteractionTrigger;
|
|
18
|
+
}
|
|
19
|
+
interface WidgetInteraction {
|
|
20
|
+
eventName: InternalWidgetInteraction['eventName'];
|
|
21
|
+
trigger: InternalWidgetInteraction['trigger'];
|
|
22
|
+
}
|
|
23
|
+
declare enum WidgetInteractionPageType {
|
|
24
|
+
PDP = "pdp",
|
|
25
|
+
PLP = "plp",
|
|
26
|
+
HOMEPAGE = "homepage",
|
|
27
|
+
SEARCH = "search",
|
|
28
|
+
OTHER = "other",
|
|
29
|
+
FULL_PAGE = "full_page",
|
|
30
|
+
}
|
|
31
|
+
declare enum WidgetInteractionComponent {
|
|
32
|
+
EMBEDDED_WIDGET = "embedded_widget",
|
|
33
|
+
SUGGESTION_BAR = "suggestion_bar",
|
|
34
|
+
FLOATING_BUTTON = "floating_button",
|
|
35
|
+
SOCIAL_PROOF = "social_proof",
|
|
36
|
+
CHAT_PREVIEW = "chat_preview",
|
|
37
|
+
FLOATING_CHAT = "floating_chat",
|
|
38
|
+
SINGLE_IMAGE_PROMPT = "single_image_prompt",
|
|
39
|
+
IMAGE_PROMPT_CARD = "image_prompt_card",
|
|
40
|
+
POST_INTERACTION_COMPARISON = "post_interaction_comparison",
|
|
41
|
+
POST_INTERACTION_EMBEDDED = "post_interaction_embedded",
|
|
42
|
+
}
|
|
43
|
+
declare enum WidgetInteractionType {
|
|
44
|
+
QUERY_INPUT_CLICKED = "query_input_clicked",
|
|
45
|
+
SUGGESTION_CLICKED = "suggestion_clicked",
|
|
46
|
+
WIDGET_CLICKED = "widget_clicked",
|
|
47
|
+
WIDGET_HOVERED = "widget_hovered",
|
|
48
|
+
WIDGET_EXPANDED = "widget_expanded",
|
|
49
|
+
WIDGET_COLLAPSED = "widget_collapsed",
|
|
50
|
+
SUGGESTION_SCROLLED = "suggestion_scrolled",
|
|
51
|
+
LINK_CLICKED = "link_clicked",
|
|
52
|
+
PRODUCT_CARD_CLICKED = "product_card_clicked",
|
|
53
|
+
TEXT_LINK_CLICKED = "text_link_clicked",
|
|
54
|
+
ARTICLE_LINK_CLICKED = "article_link_clicked",
|
|
55
|
+
REVIEW_CARD_CLICKED = "review_card_clicked",
|
|
56
|
+
MESSAGE_SUBMITTED = "message_submitted",
|
|
57
|
+
MANUAL_SCROLL_TO_BOTTOM = "manual_scroll_to_bottom",
|
|
58
|
+
}
|
|
59
|
+
type URL = {
|
|
60
|
+
url: string;
|
|
61
|
+
};
|
|
62
|
+
type Product = {
|
|
63
|
+
product_id: string;
|
|
64
|
+
};
|
|
65
|
+
type Review = {
|
|
66
|
+
review_id: string;
|
|
67
|
+
};
|
|
68
|
+
type Suggestion = {
|
|
69
|
+
suggestion_id: string;
|
|
70
|
+
};
|
|
71
|
+
type Request = {
|
|
72
|
+
request_text: string;
|
|
73
|
+
};
|
|
74
|
+
type Collapse = {
|
|
75
|
+
collapse_source: 'close_button' | 'swipe' | 'body_click';
|
|
76
|
+
};
|
|
77
|
+
type SuggestionScrolled = {
|
|
78
|
+
suggestion_scrolled: Suggestion;
|
|
79
|
+
};
|
|
80
|
+
type SuggestionClicked = {
|
|
81
|
+
suggestion_clicked: Suggestion;
|
|
82
|
+
};
|
|
83
|
+
type SuggestionHovered = {
|
|
84
|
+
suggestion_hovered: Suggestion;
|
|
85
|
+
};
|
|
86
|
+
type LinkClicked = {
|
|
87
|
+
link_clicked: URL;
|
|
88
|
+
};
|
|
89
|
+
type WidgetCollapsed = {
|
|
90
|
+
widget_collapsed: Collapse;
|
|
91
|
+
};
|
|
92
|
+
type TextLinkClicked = {
|
|
93
|
+
text_link_clicked: URL;
|
|
94
|
+
};
|
|
95
|
+
type ArticleLinkClicked = {
|
|
96
|
+
article_link_clicked: URL;
|
|
97
|
+
};
|
|
98
|
+
type ProductCardClicked = {
|
|
99
|
+
product_card_clicked: Product;
|
|
100
|
+
};
|
|
101
|
+
type ReviewCardClicked = {
|
|
102
|
+
review_card_clicked: Review;
|
|
103
|
+
};
|
|
104
|
+
type MessageSubmitted = {
|
|
105
|
+
message_submitted: Request;
|
|
106
|
+
};
|
|
107
|
+
type WidgetInteractionData = SuggestionScrolled | SuggestionClicked | SuggestionHovered | LinkClicked | WidgetCollapsed | TextLinkClicked | ArticleLinkClicked | ProductCardClicked | ReviewCardClicked | MessageSubmitted;
|
|
108
|
+
//#endregion
|
|
109
|
+
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==
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
//#region src/hooks/WidgetInteraction/types.ts
|
|
2
|
+
let WidgetInteractionPageType = /* @__PURE__ */ function(WidgetInteractionPageType$1) {
|
|
3
|
+
WidgetInteractionPageType$1["PDP"] = "pdp";
|
|
4
|
+
WidgetInteractionPageType$1["PLP"] = "plp";
|
|
5
|
+
WidgetInteractionPageType$1["HOMEPAGE"] = "homepage";
|
|
6
|
+
WidgetInteractionPageType$1["SEARCH"] = "search";
|
|
7
|
+
WidgetInteractionPageType$1["OTHER"] = "other";
|
|
8
|
+
WidgetInteractionPageType$1["FULL_PAGE"] = "full_page";
|
|
9
|
+
return WidgetInteractionPageType$1;
|
|
10
|
+
}({});
|
|
11
|
+
let WidgetInteractionComponent = /* @__PURE__ */ function(WidgetInteractionComponent$1) {
|
|
12
|
+
WidgetInteractionComponent$1["EMBEDDED_WIDGET"] = "embedded_widget";
|
|
13
|
+
WidgetInteractionComponent$1["SUGGESTION_BAR"] = "suggestion_bar";
|
|
14
|
+
WidgetInteractionComponent$1["FLOATING_BUTTON"] = "floating_button";
|
|
15
|
+
WidgetInteractionComponent$1["SOCIAL_PROOF"] = "social_proof";
|
|
16
|
+
WidgetInteractionComponent$1["CHAT_PREVIEW"] = "chat_preview";
|
|
17
|
+
WidgetInteractionComponent$1["FLOATING_CHAT"] = "floating_chat";
|
|
18
|
+
WidgetInteractionComponent$1["SINGLE_IMAGE_PROMPT"] = "single_image_prompt";
|
|
19
|
+
WidgetInteractionComponent$1["IMAGE_PROMPT_CARD"] = "image_prompt_card";
|
|
20
|
+
WidgetInteractionComponent$1["POST_INTERACTION_COMPARISON"] = "post_interaction_comparison";
|
|
21
|
+
WidgetInteractionComponent$1["POST_INTERACTION_EMBEDDED"] = "post_interaction_embedded";
|
|
22
|
+
return WidgetInteractionComponent$1;
|
|
23
|
+
}({});
|
|
24
|
+
let WidgetInteractionType = /* @__PURE__ */ function(WidgetInteractionType$1) {
|
|
25
|
+
WidgetInteractionType$1["QUERY_INPUT_CLICKED"] = "query_input_clicked";
|
|
26
|
+
WidgetInteractionType$1["SUGGESTION_CLICKED"] = "suggestion_clicked";
|
|
27
|
+
WidgetInteractionType$1["WIDGET_CLICKED"] = "widget_clicked";
|
|
28
|
+
WidgetInteractionType$1["WIDGET_HOVERED"] = "widget_hovered";
|
|
29
|
+
WidgetInteractionType$1["WIDGET_EXPANDED"] = "widget_expanded";
|
|
30
|
+
WidgetInteractionType$1["WIDGET_COLLAPSED"] = "widget_collapsed";
|
|
31
|
+
WidgetInteractionType$1["SUGGESTION_SCROLLED"] = "suggestion_scrolled";
|
|
32
|
+
WidgetInteractionType$1["LINK_CLICKED"] = "link_clicked";
|
|
33
|
+
WidgetInteractionType$1["PRODUCT_CARD_CLICKED"] = "product_card_clicked";
|
|
34
|
+
WidgetInteractionType$1["TEXT_LINK_CLICKED"] = "text_link_clicked";
|
|
35
|
+
WidgetInteractionType$1["ARTICLE_LINK_CLICKED"] = "article_link_clicked";
|
|
36
|
+
WidgetInteractionType$1["REVIEW_CARD_CLICKED"] = "review_card_clicked";
|
|
37
|
+
WidgetInteractionType$1["MESSAGE_SUBMITTED"] = "message_submitted";
|
|
38
|
+
WidgetInteractionType$1["MANUAL_SCROLL_TO_BOTTOM"] = "manual_scroll_to_bottom";
|
|
39
|
+
return WidgetInteractionType$1;
|
|
40
|
+
}({});
|
|
41
|
+
|
|
42
|
+
//#endregion
|
|
43
|
+
export { WidgetInteractionComponent, WidgetInteractionPageType, WidgetInteractionType };
|
|
44
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuLi8uLi9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQge1xuICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGU7XG4gIHBhZ2VfaWQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFdpZGdldEludGVyYWN0aW9uVHJpZ2dlciB7XG4gIGludGVyYWN0aW9uX2lkPzogc3RyaW5nO1xuICB3aWRnZXQ6IFdpZGdldEludGVyYWN0aW9uQ29tcG9uZW50O1xuICB3aWRnZXRfaW50ZXJhY3Rpb246IFdpZGdldEludGVyYWN0aW9uVHlwZTtcbiAgd2lkZ2V0X2ludGVyYWN0aW9uX2RhdGE/OiBXaWRnZXRJbnRlcmFjdGlvbkRhdGEgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb24ge1xuICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICBjb250ZXh0OiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQ7XG4gIHRyaWdnZXI6IFdpZGdldEludGVyYWN0aW9uVHJpZ2dlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaWRnZXRJbnRlcmFjdGlvbiB7XG4gIGV2ZW50TmFtZTogSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvblsnZXZlbnROYW1lJ107XG4gIHRyaWdnZXI6IEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb25bJ3RyaWdnZXInXTtcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB7XG4gIFBEUCA9ICdwZHAnLFxuICBQTFAgPSAncGxwJyxcbiAgSE9NRVBBR0UgPSAnaG9tZXBhZ2UnLFxuICBTRUFSQ0ggPSAnc2VhcmNoJyxcbiAgT1RIRVIgPSAnb3RoZXInLFxuICBGVUxMX1BBR0UgPSAnZnVsbF9wYWdlJyxcbn1cblxuZXhwb3J0IGVudW0gV2lkZ2V0SW50ZXJhY3Rpb25Db21wb25lbnQge1xuICBFTUJFRERFRF9XSURHRVQgPSAnZW1iZWRkZWRfd2lkZ2V0JyxcbiAgU1VHR0VTVElPTl9CQVIgPSAnc3VnZ2VzdGlvbl9iYXInLFxuICBGTE9BVElOR19CVVRUT04gPSAnZmxvYXRpbmdfYnV0dG9uJyxcbiAgU09DSUFMX1BST09GID0gJ3NvY2lhbF9wcm9vZicsXG4gIENIQVRfUFJFVklFVyA9ICdjaGF0X3ByZXZpZXcnLFxuICBGTE9BVElOR19DSEFUID0gJ2Zsb2F0aW5nX2NoYXQnLFxuICBTSU5HTEVfSU1BR0VfUFJPTVBUID0gJ3NpbmdsZV9pbWFnZV9wcm9tcHQnLFxuICBJTUFHRV9QUk9NUFRfQ0FSRCA9ICdpbWFnZV9wcm9tcHRfY2FyZCcsXG4gIFBPU1RfSU5URVJBQ1RJT05fQ09NUEFSSVNPTiA9ICdwb3N0X2ludGVyYWN0aW9uX2NvbXBhcmlzb24nLFxuICBQT1NUX0lOVEVSQUNUSU9OX0VNQkVEREVEID0gJ3Bvc3RfaW50ZXJhY3Rpb25fZW1iZWRkZWQnLFxufVxuXG5leHBvcnQgZW51bSBXaWRnZXRJbnRlcmFjdGlvblR5cGUge1xuICBRVUVSWV9JTlBVVF9DTElDS0VEID0gJ3F1ZXJ5X2lucHV0X2NsaWNrZWQnLFxuICBTVUdHRVNUSU9OX0NMSUNLRUQgPSAnc3VnZ2VzdGlvbl9jbGlja2VkJyxcbiAgV0lER0VUX0NMSUNLRUQgPSAnd2lkZ2V0X2NsaWNrZWQnLFxuICBXSURHRVRfSE9WRVJFRCA9ICd3aWRnZXRfaG92ZXJlZCcsXG4gIFdJREdFVF9FWFBBTkRFRCA9ICd3aWRnZXRfZXhwYW5kZWQnLFxuICBXSURHRVRfQ09MTEFQU0VEID0gJ3dpZGdldF9jb2xsYXBzZWQnLFxuICBTVUdHRVNUSU9OX1NDUk9MTEVEID0gJ3N1Z2dlc3Rpb25fc2Nyb2xsZWQnLFxuICBMSU5LX0NMSUNLRUQgPSAnbGlua19jbGlja2VkJyxcbiAgUFJPRFVDVF9DQVJEX0NMSUNLRUQgPSAncHJvZHVjdF9jYXJkX2NsaWNrZWQnLFxuICBURVhUX0xJTktfQ0xJQ0tFRCA9ICd0ZXh0X2xpbmtfY2xpY2tlZCcsXG4gIEFSVElDTEVfTElOS19DTElDS0VEID0gJ2FydGljbGVfbGlua19jbGlja2VkJyxcbiAgUkVWSUVXX0NBUkRfQ0xJQ0tFRCA9ICdyZXZpZXdfY2FyZF9jbGlja2VkJyxcbiAgTUVTU0FHRV9TVUJNSVRURUQgPSAnbWVzc2FnZV9zdWJtaXR0ZWQnLFxuICBNQU5VQUxfU0NST0xMX1RPX0JPVFRPTSA9ICdtYW51YWxfc2Nyb2xsX3RvX2JvdHRvbScsXG59XG5cbmV4cG9ydCB0eXBlIFVSTCA9IHtcbiAgdXJsOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0ID0ge1xuICBwcm9kdWN0X2lkOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBSZXZpZXcgPSB7XG4gIHJldmlld19pZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbiA9IHtcbiAgc3VnZ2VzdGlvbl9pZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUmVxdWVzdCA9IHtcbiAgcmVxdWVzdF90ZXh0OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBDb2xsYXBzZSA9IHtcbiAgY29sbGFwc2Vfc291cmNlOiAnY2xvc2VfYnV0dG9uJyB8ICdzd2lwZScgfCAnYm9keV9jbGljayc7XG59O1xuXG5leHBvcnQgdHlwZSBTdWdnZXN0aW9uU2Nyb2xsZWQgPSB7XG4gIHN1Z2dlc3Rpb25fc2Nyb2xsZWQ6IFN1Z2dlc3Rpb247XG59O1xuXG5leHBvcnQgdHlwZSBTdWdnZXN0aW9uQ2xpY2tlZCA9IHtcbiAgc3VnZ2VzdGlvbl9jbGlja2VkOiBTdWdnZXN0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgU3VnZ2VzdGlvbkhvdmVyZWQgPSB7XG4gIHN1Z2dlc3Rpb25faG92ZXJlZDogU3VnZ2VzdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIExpbmtDbGlja2VkID0ge1xuICBsaW5rX2NsaWNrZWQ6IFVSTDtcbn07XG5cbmV4cG9ydCB0eXBlIFdpZGdldENvbGxhcHNlZCA9IHtcbiAgd2lkZ2V0X2NvbGxhcHNlZDogQ29sbGFwc2U7XG59O1xuXG5leHBvcnQgdHlwZSBUZXh0TGlua0NsaWNrZWQgPSB7XG4gIHRleHRfbGlua19jbGlja2VkOiBVUkw7XG59O1xuXG5leHBvcnQgdHlwZSBBcnRpY2xlTGlua0NsaWNrZWQgPSB7XG4gIGFydGljbGVfbGlua19jbGlja2VkOiBVUkw7XG59O1xuXG5leHBvcnQgdHlwZSBQcm9kdWN0Q2FyZENsaWNrZWQgPSB7XG4gIHByb2R1Y3RfY2FyZF9jbGlja2VkOiBQcm9kdWN0O1xufTtcblxuZXhwb3J0IHR5cGUgUmV2aWV3Q2FyZENsaWNrZWQgPSB7XG4gIHJldmlld19jYXJkX2NsaWNrZWQ6IFJldmlldztcbn07XG5cbmV4cG9ydCB0eXBlIE1lc3NhZ2VTdWJtaXR0ZWQgPSB7XG4gIG1lc3NhZ2Vfc3VibWl0dGVkOiBSZXF1ZXN0O1xufTtcblxuZXhwb3J0IHR5cGUgV2lkZ2V0SW50ZXJhY3Rpb25EYXRhID1cbiAgfCBTdWdnZXN0aW9uU2Nyb2xsZWRcbiAgfCBTdWdnZXN0aW9uQ2xpY2tlZFxuICB8IFN1Z2dlc3Rpb25Ib3ZlcmVkXG4gIHwgTGlua0NsaWNrZWRcbiAgfCBXaWRnZXRDb2xsYXBzZWRcbiAgfCBUZXh0TGlua0NsaWNrZWRcbiAgfCBBcnRpY2xlTGlua0NsaWNrZWRcbiAgfCBQcm9kdWN0Q2FyZENsaWNrZWRcbiAgfCBSZXZpZXdDYXJkQ2xpY2tlZFxuICB8IE1lc3NhZ2VTdWJtaXR0ZWQ7XG4iXSwibWFwcGluZ3MiOiI7QUF5QkEsSUFBWSxrRkFBTDtBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR0YsSUFBWSxvRkFBTDtBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHRixJQUFZLDBFQUFMO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSJ9
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_variant = require('../../atoms/app/variant.cjs');
|
|
3
|
+
require('../../atoms/app/index.cjs');
|
|
4
|
+
const require_amplitudeContext = require('../../contexts/amplitudeContext/amplitudeContext.cjs');
|
|
5
|
+
require('../../contexts/amplitudeContext/index.cjs');
|
|
6
|
+
const require_hooks_WidgetInteraction_utils = require('./utils.cjs');
|
|
7
|
+
let jotai = require("jotai");
|
|
8
|
+
let uuid = require("uuid");
|
|
9
|
+
|
|
10
|
+
//#region src/hooks/WidgetInteraction/useWidgetInteraction.ts
|
|
11
|
+
const useWidgetInteraction = () => {
|
|
12
|
+
const { trackEvent } = require_amplitudeContext.useAmplitude();
|
|
13
|
+
const variantInfo = (0, jotai.useAtomValue)(require_variant.pageVariantInfoAtom);
|
|
14
|
+
const trackWidgetInteraction = (props) => {
|
|
15
|
+
if (props.trigger) props.trigger.interaction_id = props.trigger.interaction_id || getInteractionId();
|
|
16
|
+
const eventProps = {
|
|
17
|
+
...props,
|
|
18
|
+
context: require_hooks_WidgetInteraction_utils.extractPageContext(variantInfo)
|
|
19
|
+
};
|
|
20
|
+
trackEvent({
|
|
21
|
+
eventName: props.eventName,
|
|
22
|
+
eventProps: { ...eventProps }
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
const getInteractionId = () => (0, uuid.v4)();
|
|
26
|
+
return {
|
|
27
|
+
trackWidgetInteraction,
|
|
28
|
+
getInteractionId
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
//#endregion
|
|
33
|
+
exports.useWidgetInteraction = useWidgetInteraction;
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uY2pzIiwibmFtZXMiOlsidXNlQW1wbGl0dWRlIiwicGFnZVZhcmlhbnRJbmZvQXRvbSIsImV4dHJhY3RQYWdlQ29udGV4dCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9XaWRnZXRJbnRlcmFjdGlvbi91c2VXaWRnZXRJbnRlcmFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VBdG9tVmFsdWUgfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBwYWdlVmFyaWFudEluZm9BdG9tIH0gZnJvbSAnc3JjL2F0b21zL2FwcCc7XG5pbXBvcnQgeyB1c2VBbXBsaXR1ZGUgfSBmcm9tICdzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dCc7XG5pbXBvcnQgeyBQYWdlVmFyaWFudEluZm8gfSBmcm9tICdzcmMvY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvbiwgV2lkZ2V0SW50ZXJhY3Rpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGV4dHJhY3RQYWdlQ29udGV4dCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdXNlV2lkZ2V0SW50ZXJhY3Rpb24gPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IHZhcmlhbnRJbmZvID0gdXNlQXRvbVZhbHVlKHBhZ2VWYXJpYW50SW5mb0F0b20pO1xuXG4gIGNvbnN0IHRyYWNrV2lkZ2V0SW50ZXJhY3Rpb24gPSAocHJvcHM6IFdpZGdldEludGVyYWN0aW9uKSA9PiB7XG4gICAgaWYgKHByb3BzLnRyaWdnZXIpIHtcbiAgICAgIHByb3BzLnRyaWdnZXIuaW50ZXJhY3Rpb25faWQgPSBwcm9wcy50cmlnZ2VyLmludGVyYWN0aW9uX2lkIHx8IGdldEludGVyYWN0aW9uSWQoKTtcbiAgICB9XG5cbiAgICBjb25zdCBldmVudFByb3BzID0ge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb250ZXh0OiBleHRyYWN0UGFnZUNvbnRleHQodmFyaWFudEluZm8gYXMgUGFnZVZhcmlhbnRJbmZvKSxcbiAgICB9IGFzIEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb247XG5cbiAgICB0cmFja0V2ZW50KHtcbiAgICAgIGV2ZW50TmFtZTogcHJvcHMuZXZlbnROYW1lLFxuICAgICAgZXZlbnRQcm9wczogeyAuLi5ldmVudFByb3BzIH0sXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0SW50ZXJhY3Rpb25JZCA9ICgpID0+IHV1aWQoKTtcblxuICByZXR1cm4ge1xuICAgIHRyYWNrV2lkZ2V0SW50ZXJhY3Rpb24sXG4gICAgZ2V0SW50ZXJhY3Rpb25JZCxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFRQSxNQUFhLDZCQUE2QjtDQUN4QyxNQUFNLEVBQUUsZUFBZUEsdUNBQWM7Q0FDckMsTUFBTSxzQ0FBMkJDLG9DQUFvQjtDQUVyRCxNQUFNLDBCQUEwQixVQUE2QjtBQUMzRCxNQUFJLE1BQU0sUUFDUixPQUFNLFFBQVEsaUJBQWlCLE1BQU0sUUFBUSxrQkFBa0Isa0JBQWtCO0VBR25GLE1BQU0sYUFBYTtHQUNqQixHQUFHO0dBQ0gsU0FBU0MseURBQW1CLFlBQStCO0dBQzVEO0FBRUQsYUFBVztHQUNULFdBQVcsTUFBTTtHQUNqQixZQUFZLEVBQUUsR0FBRyxZQUFZO0dBQzlCLENBQUM7O0NBR0osTUFBTSx1Q0FBK0I7QUFFckMsUUFBTztFQUNMO0VBQ0E7RUFDRCJ9
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { WidgetInteraction } from "./types.cjs";
|
|
2
|
+
|
|
3
|
+
//#region src/hooks/WidgetInteraction/useWidgetInteraction.d.ts
|
|
4
|
+
declare const useWidgetInteraction: () => {
|
|
5
|
+
trackWidgetInteraction: (props: WidgetInteraction) => void;
|
|
6
|
+
getInteractionId: () => string;
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { useWidgetInteraction };
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3VzZVdpZGdldEludGVyYWN0aW9uLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2lkZ2V0SW50ZXJhY3Rpb24gfSBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZVdpZGdldEludGVyYWN0aW9uOiAoKSA9PiB7XG4gICAgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbjogKHByb3BzOiBXaWRnZXRJbnRlcmFjdGlvbikgPT4gdm9pZDtcbiAgICBnZXRJbnRlcmFjdGlvbklkOiAoKSA9PiBzdHJpbmc7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFDQSxJQUFXLHVCQUF1QixDQUFDLFdBQVcsa0JBQUcifQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { WidgetInteraction } from "./types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/hooks/WidgetInteraction/useWidgetInteraction.d.ts
|
|
4
|
+
declare const useWidgetInteraction: () => {
|
|
5
|
+
trackWidgetInteraction: (props: WidgetInteraction) => void;
|
|
6
|
+
getInteractionId: () => string;
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { useWidgetInteraction };
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvV2lkZ2V0SW50ZXJhY3Rpb24vdXNlV2lkZ2V0SW50ZXJhY3Rpb24uZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXaWRnZXRJbnRlcmFjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlV2lkZ2V0SW50ZXJhY3Rpb246ICgpID0+IHtcbiAgICB0cmFja1dpZGdldEludGVyYWN0aW9uOiAocHJvcHM6IFdpZGdldEludGVyYWN0aW9uKSA9PiB2b2lkO1xuICAgIGdldEludGVyYWN0aW9uSWQ6ICgpID0+IHN0cmluZztcbn07XG4iXSwibWFwcGluZ3MiOiI7OztBQUNBLElBQVcsdUJBQXVCLENBQUMsV0FBVyxrQkFBRyJ9
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { pageVariantInfoAtom } from "../../atoms/app/variant.js";
|
|
2
|
+
import "../../atoms/app/index.js";
|
|
3
|
+
import { useAmplitude } from "../../contexts/amplitudeContext/amplitudeContext.js";
|
|
4
|
+
import "../../contexts/amplitudeContext/index.js";
|
|
5
|
+
import { extractPageContext } from "./utils.js";
|
|
6
|
+
import { useAtomValue } from "jotai";
|
|
7
|
+
import { v4 } from "uuid";
|
|
8
|
+
|
|
9
|
+
//#region src/hooks/WidgetInteraction/useWidgetInteraction.ts
|
|
10
|
+
const useWidgetInteraction = () => {
|
|
11
|
+
const { trackEvent } = useAmplitude();
|
|
12
|
+
const variantInfo = useAtomValue(pageVariantInfoAtom);
|
|
13
|
+
const trackWidgetInteraction = (props) => {
|
|
14
|
+
if (props.trigger) props.trigger.interaction_id = props.trigger.interaction_id || getInteractionId();
|
|
15
|
+
const eventProps = {
|
|
16
|
+
...props,
|
|
17
|
+
context: extractPageContext(variantInfo)
|
|
18
|
+
};
|
|
19
|
+
trackEvent({
|
|
20
|
+
eventName: props.eventName,
|
|
21
|
+
eventProps: { ...eventProps }
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
const getInteractionId = () => v4();
|
|
25
|
+
return {
|
|
26
|
+
trackWidgetInteraction,
|
|
27
|
+
getInteractionId
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
//#endregion
|
|
32
|
+
export { useWidgetInteraction };
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uanMiLCJuYW1lcyI6WyJ1dWlkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3VzZVdpZGdldEludGVyYWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUF0b21WYWx1ZSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCB7IHBhZ2VWYXJpYW50SW5mb0F0b20gfSBmcm9tICdzcmMvYXRvbXMvYXBwJztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcbmltcG9ydCB7IFBhZ2VWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9jb250ZXh0cy9wYWdlQ29udGV4dC90eXBlcyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBJbnRlcm5hbFdpZGdldEludGVyYWN0aW9uLCBXaWRnZXRJbnRlcmFjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgZXh0cmFjdFBhZ2VDb250ZXh0IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCB1c2VXaWRnZXRJbnRlcmFjdGlvbiA9ICgpID0+IHtcbiAgY29uc3QgeyB0cmFja0V2ZW50IH0gPSB1c2VBbXBsaXR1ZGUoKTtcbiAgY29uc3QgdmFyaWFudEluZm8gPSB1c2VBdG9tVmFsdWUocGFnZVZhcmlhbnRJbmZvQXRvbSk7XG5cbiAgY29uc3QgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbiA9IChwcm9wczogV2lkZ2V0SW50ZXJhY3Rpb24pID0+IHtcbiAgICBpZiAocHJvcHMudHJpZ2dlcikge1xuICAgICAgcHJvcHMudHJpZ2dlci5pbnRlcmFjdGlvbl9pZCA9IHByb3BzLnRyaWdnZXIuaW50ZXJhY3Rpb25faWQgfHwgZ2V0SW50ZXJhY3Rpb25JZCgpO1xuICAgIH1cblxuICAgIGNvbnN0IGV2ZW50UHJvcHMgPSB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGNvbnRleHQ6IGV4dHJhY3RQYWdlQ29udGV4dCh2YXJpYW50SW5mbyBhcyBQYWdlVmFyaWFudEluZm8pLFxuICAgIH0gYXMgSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvbjtcblxuICAgIHRyYWNrRXZlbnQoe1xuICAgICAgZXZlbnROYW1lOiBwcm9wcy5ldmVudE5hbWUsXG4gICAgICBldmVudFByb3BzOiB7IC4uLmV2ZW50UHJvcHMgfSxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBnZXRJbnRlcmFjdGlvbklkID0gKCkgPT4gdXVpZCgpO1xuXG4gIHJldHVybiB7XG4gICAgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbixcbiAgICBnZXRJbnRlcmFjdGlvbklkLFxuICB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBUUEsTUFBYSw2QkFBNkI7Q0FDeEMsTUFBTSxFQUFFLGVBQWUsY0FBYztDQUNyQyxNQUFNLGNBQWMsYUFBYSxvQkFBb0I7Q0FFckQsTUFBTSwwQkFBMEIsVUFBNkI7QUFDM0QsTUFBSSxNQUFNLFFBQ1IsT0FBTSxRQUFRLGlCQUFpQixNQUFNLFFBQVEsa0JBQWtCLGtCQUFrQjtFQUduRixNQUFNLGFBQWE7R0FDakIsR0FBRztHQUNILFNBQVMsbUJBQW1CLFlBQStCO0dBQzVEO0FBRUQsYUFBVztHQUNULFdBQVcsTUFBTTtHQUNqQixZQUFZLEVBQUUsR0FBRyxZQUFZO0dBQzlCLENBQUM7O0NBR0osTUFBTSx5QkFBeUJBLElBQU07QUFFckMsUUFBTztFQUNMO0VBQ0E7RUFDRCJ9
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const require_variantInfo = require('../../application/models/variantInfo/variantInfo.cjs');
|
|
2
|
+
require('../../application/models/index.cjs');
|
|
3
|
+
const require_hooks_WidgetInteraction_types = require('./types.cjs');
|
|
4
|
+
|
|
5
|
+
//#region src/hooks/WidgetInteraction/utils.ts
|
|
6
|
+
const extractPageContext = (pageVariant) => {
|
|
7
|
+
switch (pageVariant.variantType) {
|
|
8
|
+
case require_variantInfo.VariantTypeEnum.Pdp: return {
|
|
9
|
+
page_id: pageVariant.productId,
|
|
10
|
+
page_type: require_hooks_WidgetInteraction_types.WidgetInteractionPageType.PDP
|
|
11
|
+
};
|
|
12
|
+
case require_variantInfo.VariantTypeEnum.Plp: return {
|
|
13
|
+
page_id: pageVariant.plpId,
|
|
14
|
+
page_type: require_hooks_WidgetInteraction_types.WidgetInteractionPageType.PLP
|
|
15
|
+
};
|
|
16
|
+
case require_variantInfo.VariantTypeEnum.Home: return {
|
|
17
|
+
page_id: pageVariant.url,
|
|
18
|
+
page_type: require_hooks_WidgetInteraction_types.WidgetInteractionPageType.HOMEPAGE
|
|
19
|
+
};
|
|
20
|
+
case require_variantInfo.VariantTypeEnum.Other: return {
|
|
21
|
+
page_id: pageVariant.url,
|
|
22
|
+
page_type: require_hooks_WidgetInteraction_types.WidgetInteractionPageType.OTHER
|
|
23
|
+
};
|
|
24
|
+
case require_variantInfo.VariantTypeEnum.FullPageSalesAgent: return {
|
|
25
|
+
page_id: pageVariant.url,
|
|
26
|
+
page_type: require_hooks_WidgetInteraction_types.WidgetInteractionPageType.FULL_PAGE
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
return null;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
//#endregion
|
|
33
|
+
exports.extractPageContext = extractPageContext;
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuY2pzIiwibmFtZXMiOlsiVmFyaWFudFR5cGVFbnVtIiwiV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9XaWRnZXRJbnRlcmFjdGlvbi91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYXJpYW50VHlwZUVudW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7XG4gIEZ1bGxQYWdlU2FsZXNBZ2VudFZhcmlhbnRJbmZvLFxuICBIb21lVmFyaWFudEluZm8sXG4gIE90aGVyVmFyaWFudEluZm8sXG4gIFBhZ2VWYXJpYW50SW5mbyxcbiAgUERQUGFnZVZhcmlhbnRJbmZvLFxuICBQTFBQYWdlVmFyaWFudEluZm8sXG59IGZyb20gJy4uLy4uL2NvbnRleHRzL3BhZ2VDb250ZXh0L3R5cGVzJztcbmltcG9ydCB7IFdpZGdldEludGVyYWN0aW9uQ29udGV4dCwgV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgZXh0cmFjdFBhZ2VDb250ZXh0ID0gKFxuICBwYWdlVmFyaWFudDogUGFnZVZhcmlhbnRJbmZvLFxuKTogV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0IHwgbnVsbCA9PiB7XG4gIHN3aXRjaCAocGFnZVZhcmlhbnQudmFyaWFudFR5cGUpIHtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5QZHA6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgUERQUGFnZVZhcmlhbnRJbmZvKS5wcm9kdWN0SWQsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5QRFAsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLlBscDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBQTFBQYWdlVmFyaWFudEluZm8pLnBscElkLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuUExQLFxuICAgICAgfTtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5Ib21lOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIEhvbWVWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuSE9NRVBBR0UsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLk90aGVyOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIE90aGVyVmFyaWFudEluZm8pLnVybCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLk9USEVSLFxuICAgICAgfTtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5GdWxsUGFnZVNhbGVzQWdlbnQ6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgRnVsbFBhZ2VTYWxlc0FnZW50VmFyaWFudEluZm8pLnVybCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLkZVTExfUEFHRSxcbiAgICAgIH07XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBV0EsTUFBYSxzQkFDWCxnQkFDb0M7QUFDcEMsU0FBUSxZQUFZLGFBQXBCO0VBQ0UsS0FBS0Esb0NBQWdCLElBQ25CLFFBQU87R0FDTCxTQUFVLFlBQW1DO0dBQzdDLFdBQVdDLGdFQUEwQjtHQUN0QztFQUNILEtBQUtELG9DQUFnQixJQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFtQztHQUM3QyxXQUFXQyxnRUFBMEI7R0FDdEM7RUFDSCxLQUFLRCxvQ0FBZ0IsS0FDbkIsUUFBTztHQUNMLFNBQVUsWUFBZ0M7R0FDMUMsV0FBV0MsZ0VBQTBCO0dBQ3RDO0VBQ0gsS0FBS0Qsb0NBQWdCLE1BQ25CLFFBQU87R0FDTCxTQUFVLFlBQWlDO0dBQzNDLFdBQVdDLGdFQUEwQjtHQUN0QztFQUNILEtBQUtELG9DQUFnQixtQkFDbkIsUUFBTztHQUNMLFNBQVUsWUFBOEM7R0FDeEQsV0FBV0MsZ0VBQTBCO0dBQ3RDOztBQUdMLFFBQU8ifQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PageVariantInfo } from "../../contexts/pageContext/types.cjs";
|
|
2
|
+
import { WidgetInteractionContext } from "./types.cjs";
|
|
3
|
+
|
|
4
|
+
//#region src/hooks/WidgetInteraction/utils.d.ts
|
|
5
|
+
declare const extractPageContext: (pageVariant: PageVariantInfo) => WidgetInteractionContext | null;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { extractPageContext };
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnZVZhcmlhbnRJbmZvIH0gZnJvbSAnLi4vLi4vY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0IH0gZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBleHRyYWN0UGFnZUNvbnRleHQ6IChwYWdlVmFyaWFudDogUGFnZVZhcmlhbnRJbmZvKSA9PiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQgfCBudWxsO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBRUEsSUFBVyxxQkFBcUI7Q0FBQztPQUFXO09BQXVCO0NBQXlCIn0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PageVariantInfo } from "../../contexts/pageContext/types.js";
|
|
2
|
+
import { WidgetInteractionContext } from "./types.js";
|
|
3
|
+
|
|
4
|
+
//#region src/hooks/WidgetInteraction/utils.d.ts
|
|
5
|
+
declare const extractPageContext: (pageVariant: PageVariantInfo) => WidgetInteractionContext | null;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { extractPageContext };
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvV2lkZ2V0SW50ZXJhY3Rpb24vdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdlVmFyaWFudEluZm8gfSBmcm9tICcuLi8uLi9jb250ZXh0cy9wYWdlQ29udGV4dC90eXBlcyc7XG5pbXBvcnQgeyBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQgfSBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGV4dHJhY3RQYWdlQ29udGV4dDogKHBhZ2VWYXJpYW50OiBQYWdlVmFyaWFudEluZm8pID0+IFdpZGdldEludGVyYWN0aW9uQ29udGV4dCB8IG51bGw7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxJQUFXLHFCQUFxQjtDQUFDO09BQVc7T0FBdUI7Q0FBeUIifQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { VariantTypeEnum } from "../../application/models/variantInfo/variantInfo.js";
|
|
2
|
+
import "../../application/models/index.js";
|
|
3
|
+
import { WidgetInteractionPageType } from "./types.js";
|
|
4
|
+
|
|
5
|
+
//#region src/hooks/WidgetInteraction/utils.ts
|
|
6
|
+
const extractPageContext = (pageVariant) => {
|
|
7
|
+
switch (pageVariant.variantType) {
|
|
8
|
+
case VariantTypeEnum.Pdp: return {
|
|
9
|
+
page_id: pageVariant.productId,
|
|
10
|
+
page_type: WidgetInteractionPageType.PDP
|
|
11
|
+
};
|
|
12
|
+
case VariantTypeEnum.Plp: return {
|
|
13
|
+
page_id: pageVariant.plpId,
|
|
14
|
+
page_type: WidgetInteractionPageType.PLP
|
|
15
|
+
};
|
|
16
|
+
case VariantTypeEnum.Home: return {
|
|
17
|
+
page_id: pageVariant.url,
|
|
18
|
+
page_type: WidgetInteractionPageType.HOMEPAGE
|
|
19
|
+
};
|
|
20
|
+
case VariantTypeEnum.Other: return {
|
|
21
|
+
page_id: pageVariant.url,
|
|
22
|
+
page_type: WidgetInteractionPageType.OTHER
|
|
23
|
+
};
|
|
24
|
+
case VariantTypeEnum.FullPageSalesAgent: return {
|
|
25
|
+
page_id: pageVariant.url,
|
|
26
|
+
page_type: WidgetInteractionPageType.FULL_PAGE
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
return null;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
//#endregion
|
|
33
|
+
export { extractPageContext };
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhcmlhbnRUeXBlRW51bSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgRnVsbFBhZ2VTYWxlc0FnZW50VmFyaWFudEluZm8sXG4gIEhvbWVWYXJpYW50SW5mbyxcbiAgT3RoZXJWYXJpYW50SW5mbyxcbiAgUGFnZVZhcmlhbnRJbmZvLFxuICBQRFBQYWdlVmFyaWFudEluZm8sXG4gIFBMUFBhZ2VWYXJpYW50SW5mbyxcbn0gZnJvbSAnLi4vLi4vY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0LCBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBleHRyYWN0UGFnZUNvbnRleHQgPSAoXG4gIHBhZ2VWYXJpYW50OiBQYWdlVmFyaWFudEluZm8sXG4pOiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQgfCBudWxsID0+IHtcbiAgc3dpdGNoIChwYWdlVmFyaWFudC52YXJpYW50VHlwZSkge1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLlBkcDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBQRFBQYWdlVmFyaWFudEluZm8pLnByb2R1Y3RJZCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLlBEUCxcbiAgICAgIH07XG4gICAgY2FzZSBWYXJpYW50VHlwZUVudW0uUGxwOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIFBMUFBhZ2VWYXJpYW50SW5mbykucGxwSWQsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5QTFAsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLkhvbWU6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgSG9tZVZhcmlhbnRJbmZvKS51cmwsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5IT01FUEFHRSxcbiAgICAgIH07XG4gICAgY2FzZSBWYXJpYW50VHlwZUVudW0uT3RoZXI6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgT3RoZXJWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuT1RIRVIsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLkZ1bGxQYWdlU2FsZXNBZ2VudDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBGdWxsUGFnZVNhbGVzQWdlbnRWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuRlVMTF9QQUdFLFxuICAgICAgfTtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFXQSxNQUFhLHNCQUNYLGdCQUNvQztBQUNwQyxTQUFRLFlBQVksYUFBcEI7RUFDRSxLQUFLLGdCQUFnQixJQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFtQztHQUM3QyxXQUFXLDBCQUEwQjtHQUN0QztFQUNILEtBQUssZ0JBQWdCLElBQ25CLFFBQU87R0FDTCxTQUFVLFlBQW1DO0dBQzdDLFdBQVcsMEJBQTBCO0dBQ3RDO0VBQ0gsS0FBSyxnQkFBZ0IsS0FDbkIsUUFBTztHQUNMLFNBQVUsWUFBZ0M7R0FDMUMsV0FBVywwQkFBMEI7R0FDdEM7RUFDSCxLQUFLLGdCQUFnQixNQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFpQztHQUMzQyxXQUFXLDBCQUEwQjtHQUN0QztFQUNILEtBQUssZ0JBQWdCLG1CQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUE4QztHQUN4RCxXQUFXLDBCQUEwQjtHQUN0Qzs7QUFHTCxRQUFPIn0=
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoJztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudEluZm8gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsV0FBVyxlQUFlO0FBQ2xFLElBQVcsdUJBQXVCLENBQUMsV0FBVyxVQUFVO0FBQ3hELElBQVcsdUJBQXVCO0NBQUM7T0FBVztPQUFnQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxJQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsSUFBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVc7T0FBb0I7Q0FBbUIifQ==
|
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+IGJvb2xlYW47XG5leHBvcnQgZGVjbGFyZSBlbnVtIFNlYXJjaFJlc3VsdHNTdGF0ZSB7XG4gICAgTG9hZGluZyA9IDAsXG4gICAgUmVzdWx0cyA9IDEsXG4gICAgTm9SZXN1bHRzID0gMlxufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgZ2V0U2VhcmNoUmVzdWx0c1N0YXRlOiAoaXNMb2FkaW5nU2VhcmNoOiBib29sZWFuLCBzZWFyY2hEYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsKSA9PiBTZWFyY2hSZXN1bHRzU3RhdGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsSUFBVyw0QkFBNEIsQ0FBQyxTQUFTLGVBQWU7QUFDaEUsSUFBVyx1QkFBdUIsQ0FBQyxTQUFTLFVBQVU7QUFDdEQsSUFBVyx1QkFBdUI7Q0FBQztPQUFTO09BQWtCO09BQUE7Q0FBQTtBQUM5RCxJQUFXLHdCQUFpQixDQUFBLEVBQUE7QUFDNUIsSUFBVyxxQkFBZ0IsQ0FBQSxFQUFBO0FBQzNCLElBQVcsd0JBQXdCO0NBQUM7T0FBUztPQUFvQjtDQUFtQiJ9
|
|
@@ -11,6 +11,8 @@ let CustomerServiceType = /* @__PURE__ */ function(CustomerServiceType$1) {
|
|
|
11
11
|
CustomerServiceType$1["gladly"] = "gladly";
|
|
12
12
|
CustomerServiceType$1["richpanel"] = "richpanel";
|
|
13
13
|
CustomerServiceType$1["zendesk"] = "zendesk";
|
|
14
|
+
CustomerServiceType$1["helpscout"] = "helpscout";
|
|
15
|
+
CustomerServiceType$1["talkdesk"] = "talkdesk";
|
|
14
16
|
CustomerServiceType$1["eightByEight"] = "8x8";
|
|
15
17
|
CustomerServiceType$1["unsupported"] = "unsupported";
|
|
16
18
|
return CustomerServiceType$1;
|
|
@@ -18,4 +20,4 @@ let CustomerServiceType = /* @__PURE__ */ function(CustomerServiceType$1) {
|
|
|
18
20
|
|
|
19
21
|
//#endregion
|
|
20
22
|
exports.CustomerServiceType = CustomerServiceType;
|
|
21
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXJTZXJ2aWNlLmNqcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvY3VzdG9tZXJTZXJ2aWNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1c3RvbWVyU2VydmljZVByb3ZpZGVyIH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcblxuZXhwb3J0IGVudW0gQ3VzdG9tZXJTZXJ2aWNlVHlwZSB7XG4gIHNob3BpZnkgPSAnc2hvcGlmeScsXG4gIGdvcmdpYXMgPSAnZ29yZ2lhcycsXG4gIGt1c3RvbWVyID0gJ2t1c3RvbWVyJyxcbiAgZ3Jvb3ZlID0gJ2dyb292ZScsXG4gIHRpZGlvID0gJ3RpZGlvJyxcbiAgem93aWUgPSAnem93aWUnLFxuICByZWRvID0gJ3JlZG8nLFxuICBnbGFkbHkgPSAnZ2xhZGx5JyxcbiAgcmljaHBhbmVsID0gJ3JpY2hwYW5lbCcsXG4gIHplbmRlc2sgPSAnemVuZGVzaycsXG4gIGhlbHBzY291dCA9ICdoZWxwc2NvdXQnLFxuICB0YWxrZGVzayA9ICd0YWxrZGVzaycsXG4gIGVpZ2h0QnlFaWdodCA9ICc4eDgnLFxuICB1bnN1cHBvcnRlZCA9ICd1bnN1cHBvcnRlZCcsXG59XG5leHBvcnQgZW51bSBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbk1vZGUge1xuICBub25lID0gJ25vbmUnLFxuICBzaW1wbGUgPSAnc2ltcGxlJyxcbiAgZnVsbCA9ICdmdWxsJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbiB7XG4gIHByb3ZpZGVyOiBDdXN0b21lclNlcnZpY2VQcm92aWRlcjtcbiAgc3VwcG9ydGVkSW50ZWdyYXRpb25Nb2RlczogQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb25Nb2RlW107XG4gIGFsbG93RmlsZVVwbG9hZD86IGJvb2xlYW47XG4gIG1heGZpbGVVcGxvYWRTaXplPzogbnVtYmVyO1xuICAvLyBUT0RPOiBSZW1vdmUgdGhpcyBtZXRob2Qgd2hlbiBtaWdyYXRpbmcgb3RoZXIgcHJvdmlkZXJzIHRvIHRoZSBuZXcgdW5pZmllZCBDWCBidXR0b24uXG4gIG9uU3dpdGNoVG9BZ2VudDogKCkgPT4gdm9pZDtcbiAgaXNFbmFibGVkOiAoKSA9PiBib29sZWFuO1xuICBpc0J1c2luZXNzSG91cnM6IChhcGlLZXk/OiBzdHJpbmcsIGFwaUVuZHBvaW50Pzogc3RyaW5nKSA9PiBQcm9taXNlPGJvb2xlYW4+O1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLElBQVksc0VBQUw7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIn0=
|
|
@@ -12,6 +12,8 @@ declare enum CustomerServiceType {
|
|
|
12
12
|
gladly = "gladly",
|
|
13
13
|
richpanel = "richpanel",
|
|
14
14
|
zendesk = "zendesk",
|
|
15
|
+
helpscout = "helpscout",
|
|
16
|
+
talkdesk = "talkdesk",
|
|
15
17
|
eightByEight = "8x8",
|
|
16
18
|
unsupported = "unsupported",
|
|
17
19
|
}
|
|
@@ -22,4 +24,4 @@ declare enum CustomerServiceIntegrationMode {
|
|
|
22
24
|
}
|
|
23
25
|
//#endregion
|
|
24
26
|
export { CustomerServiceIntegrationMode, CustomerServiceType };
|
|
25
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXJTZXJ2aWNlLmQuY3RzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9jdXN0b21lclNlcnZpY2UuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21lclNlcnZpY2VQcm92aWRlciB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5leHBvcnQgZGVjbGFyZSBlbnVtIEN1c3RvbWVyU2VydmljZVR5cGUge1xuICAgIHNob3BpZnkgPSBcInNob3BpZnlcIixcbiAgICBnb3JnaWFzID0gXCJnb3JnaWFzXCIsXG4gICAga3VzdG9tZXIgPSBcImt1c3RvbWVyXCIsXG4gICAgZ3Jvb3ZlID0gXCJncm9vdmVcIixcbiAgICB0aWRpbyA9IFwidGlkaW9cIixcbiAgICB6b3dpZSA9IFwiem93aWVcIixcbiAgICByZWRvID0gXCJyZWRvXCIsXG4gICAgZ2xhZGx5ID0gXCJnbGFkbHlcIixcbiAgICByaWNocGFuZWwgPSBcInJpY2hwYW5lbFwiLFxuICAgIHplbmRlc2sgPSBcInplbmRlc2tcIixcbiAgICBoZWxwc2NvdXQgPSBcImhlbHBzY291dFwiLFxuICAgIHRhbGtkZXNrID0gXCJ0YWxrZGVza1wiLFxuICAgIGVpZ2h0QnlFaWdodCA9IFwiOHg4XCIsXG4gICAgdW5zdXBwb3J0ZWQgPSBcInVuc3VwcG9ydGVkXCJcbn1cbmV4cG9ydCBkZWNsYXJlIGVudW0gQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb25Nb2RlIHtcbiAgICBub25lID0gXCJub25lXCIsXG4gICAgc2ltcGxlID0gXCJzaW1wbGVcIixcbiAgICBmdWxsID0gXCJmdWxsXCJcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tZXJTZXJ2aWNlSW50ZWdyYXRpb24ge1xuICAgIHByb3ZpZGVyOiBDdXN0b21lclNlcnZpY2VQcm92aWRlcjtcbiAgICBzdXBwb3J0ZWRJbnRlZ3JhdGlvbk1vZGVzOiBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbk1vZGVbXTtcbiAgICBhbGxvd0ZpbGVVcGxvYWQ/OiBib29sZWFuO1xuICAgIG1heGZpbGVVcGxvYWRTaXplPzogbnVtYmVyO1xuICAgIG9uU3dpdGNoVG9BZ2VudDogKCkgPT4gdm9pZDtcbiAgICBpc0VuYWJsZWQ6ICgpID0+IGJvb2xlYW47XG4gICAgaXNCdXNpbmVzc0hvdXJzOiAoYXBpS2V5Pzogc3RyaW5nLCBhcGlFbmRwb2ludD86IHN0cmluZykgPT4gUHJvbWlzZTxib29sZWFuPjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsSUFBVyxzQkFBc0IsQ0FBQyxJQUFJO0FBQ3RDLElBQVcsaUNBQVksQ0FBQSxJQUFBIn0=
|
|
@@ -12,6 +12,8 @@ declare enum CustomerServiceType {
|
|
|
12
12
|
gladly = "gladly",
|
|
13
13
|
richpanel = "richpanel",
|
|
14
14
|
zendesk = "zendesk",
|
|
15
|
+
helpscout = "helpscout",
|
|
16
|
+
talkdesk = "talkdesk",
|
|
15
17
|
eightByEight = "8x8",
|
|
16
18
|
unsupported = "unsupported",
|
|
17
19
|
}
|
|
@@ -22,4 +24,4 @@ declare enum CustomerServiceIntegrationMode {
|
|
|
22
24
|
}
|
|
23
25
|
//#endregion
|
|
24
26
|
export { CustomerServiceIntegrationMode, CustomerServiceType };
|
|
25
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXJTZXJ2aWNlLmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2N1c3RvbWVyU2VydmljZS5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1c3RvbWVyU2VydmljZVByb3ZpZGVyIH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmV4cG9ydCBkZWNsYXJlIGVudW0gQ3VzdG9tZXJTZXJ2aWNlVHlwZSB7XG4gICAgc2hvcGlmeSA9IFwic2hvcGlmeVwiLFxuICAgIGdvcmdpYXMgPSBcImdvcmdpYXNcIixcbiAgICBrdXN0b21lciA9IFwia3VzdG9tZXJcIixcbiAgICBncm9vdmUgPSBcImdyb292ZVwiLFxuICAgIHRpZGlvID0gXCJ0aWRpb1wiLFxuICAgIHpvd2llID0gXCJ6b3dpZVwiLFxuICAgIHJlZG8gPSBcInJlZG9cIixcbiAgICBnbGFkbHkgPSBcImdsYWRseVwiLFxuICAgIHJpY2hwYW5lbCA9IFwicmljaHBhbmVsXCIsXG4gICAgemVuZGVzayA9IFwiemVuZGVza1wiLFxuICAgIGhlbHBzY291dCA9IFwiaGVscHNjb3V0XCIsXG4gICAgdGFsa2Rlc2sgPSBcInRhbGtkZXNrXCIsXG4gICAgZWlnaHRCeUVpZ2h0ID0gXCI4eDhcIixcbiAgICB1bnN1cHBvcnRlZCA9IFwidW5zdXBwb3J0ZWRcIlxufVxuZXhwb3J0IGRlY2xhcmUgZW51bSBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbk1vZGUge1xuICAgIG5vbmUgPSBcIm5vbmVcIixcbiAgICBzaW1wbGUgPSBcInNpbXBsZVwiLFxuICAgIGZ1bGwgPSBcImZ1bGxcIlxufVxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbiB7XG4gICAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVByb3ZpZGVyO1xuICAgIHN1cHBvcnRlZEludGVncmF0aW9uTW9kZXM6IEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uTW9kZVtdO1xuICAgIGFsbG93RmlsZVVwbG9hZD86IGJvb2xlYW47XG4gICAgbWF4ZmlsZVVwbG9hZFNpemU/OiBudW1iZXI7XG4gICAgb25Td2l0Y2hUb0FnZW50OiAoKSA9PiB2b2lkO1xuICAgIGlzRW5hYmxlZDogKCkgPT4gYm9vbGVhbjtcbiAgICBpc0J1c2luZXNzSG91cnM6IChhcGlLZXk/OiBzdHJpbmcsIGFwaUVuZHBvaW50Pzogc3RyaW5nKSA9PiBQcm9taXNlPGJvb2xlYW4+O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7QUFDQSxJQUFXLHNCQUFzQixDQUFDLElBQUk7QUFDdEMsSUFBVyxpQ0FBWSxDQUFBLElBQUEifQ==
|
|
@@ -10,6 +10,8 @@ let CustomerServiceType = /* @__PURE__ */ function(CustomerServiceType$1) {
|
|
|
10
10
|
CustomerServiceType$1["gladly"] = "gladly";
|
|
11
11
|
CustomerServiceType$1["richpanel"] = "richpanel";
|
|
12
12
|
CustomerServiceType$1["zendesk"] = "zendesk";
|
|
13
|
+
CustomerServiceType$1["helpscout"] = "helpscout";
|
|
14
|
+
CustomerServiceType$1["talkdesk"] = "talkdesk";
|
|
13
15
|
CustomerServiceType$1["eightByEight"] = "8x8";
|
|
14
16
|
CustomerServiceType$1["unsupported"] = "unsupported";
|
|
15
17
|
return CustomerServiceType$1;
|
|
@@ -17,4 +19,4 @@ let CustomerServiceType = /* @__PURE__ */ function(CustomerServiceType$1) {
|
|
|
17
19
|
|
|
18
20
|
//#endregion
|
|
19
21
|
export { CustomerServiceType };
|
|
20
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXJTZXJ2aWNlLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9jdXN0b21lclNlcnZpY2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tZXJTZXJ2aWNlUHJvdmlkZXIgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuXG5leHBvcnQgZW51bSBDdXN0b21lclNlcnZpY2VUeXBlIHtcbiAgc2hvcGlmeSA9ICdzaG9waWZ5JyxcbiAgZ29yZ2lhcyA9ICdnb3JnaWFzJyxcbiAga3VzdG9tZXIgPSAna3VzdG9tZXInLFxuICBncm9vdmUgPSAnZ3Jvb3ZlJyxcbiAgdGlkaW8gPSAndGlkaW8nLFxuICB6b3dpZSA9ICd6b3dpZScsXG4gIHJlZG8gPSAncmVkbycsXG4gIGdsYWRseSA9ICdnbGFkbHknLFxuICByaWNocGFuZWwgPSAncmljaHBhbmVsJyxcbiAgemVuZGVzayA9ICd6ZW5kZXNrJyxcbiAgaGVscHNjb3V0ID0gJ2hlbHBzY291dCcsXG4gIHRhbGtkZXNrID0gJ3RhbGtkZXNrJyxcbiAgZWlnaHRCeUVpZ2h0ID0gJzh4OCcsXG4gIHVuc3VwcG9ydGVkID0gJ3Vuc3VwcG9ydGVkJyxcbn1cbmV4cG9ydCBlbnVtIEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uTW9kZSB7XG4gIG5vbmUgPSAnbm9uZScsXG4gIHNpbXBsZSA9ICdzaW1wbGUnLFxuICBmdWxsID0gJ2Z1bGwnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbWVyU2VydmljZUludGVncmF0aW9uIHtcbiAgcHJvdmlkZXI6IEN1c3RvbWVyU2VydmljZVByb3ZpZGVyO1xuICBzdXBwb3J0ZWRJbnRlZ3JhdGlvbk1vZGVzOiBDdXN0b21lclNlcnZpY2VJbnRlZ3JhdGlvbk1vZGVbXTtcbiAgYWxsb3dGaWxlVXBsb2FkPzogYm9vbGVhbjtcbiAgbWF4ZmlsZVVwbG9hZFNpemU/OiBudW1iZXI7XG4gIC8vIFRPRE86IFJlbW92ZSB0aGlzIG1ldGhvZCB3aGVuIG1pZ3JhdGluZyBvdGhlciBwcm92aWRlcnMgdG8gdGhlIG5ldyB1bmlmaWVkIENYIGJ1dHRvbi5cbiAgb25Td2l0Y2hUb0FnZW50OiAoKSA9PiB2b2lkO1xuICBpc0VuYWJsZWQ6ICgpID0+IGJvb2xlYW47XG4gIGlzQnVzaW5lc3NIb3VyczogKGFwaUtleT86IHN0cmluZywgYXBpRW5kcG9pbnQ/OiBzdHJpbmcpID0+IFByb21pc2U8Ym9vbGVhbj47XG59XG4iXSwibWFwcGluZ3MiOiI7QUFFQSxJQUFZLHNFQUFMO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSJ9
|
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.15-beta.0",
|
|
4
4
|
"description": "React hooks for connecting to Envive AI services.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -378,6 +378,18 @@
|
|
|
378
378
|
"import": "./dist/hooks/utils.js",
|
|
379
379
|
"require": "./dist/hooks/utils.cjs"
|
|
380
380
|
},
|
|
381
|
+
"./hooks/WidgetInteraction": {
|
|
382
|
+
"import": "./dist/hooks/WidgetInteraction/index.js",
|
|
383
|
+
"require": "./dist/hooks/WidgetInteraction/index.cjs"
|
|
384
|
+
},
|
|
385
|
+
"./hooks/WidgetInteraction/types": {
|
|
386
|
+
"import": "./dist/hooks/WidgetInteraction/types.js",
|
|
387
|
+
"require": "./dist/hooks/WidgetInteraction/types.cjs"
|
|
388
|
+
},
|
|
389
|
+
"./hooks/WidgetInteraction/utils": {
|
|
390
|
+
"import": "./dist/hooks/WidgetInteraction/utils.js",
|
|
391
|
+
"require": "./dist/hooks/WidgetInteraction/utils.cjs"
|
|
392
|
+
},
|
|
381
393
|
"./interceptors": {
|
|
382
394
|
"import": "./dist/interceptors/index.js",
|
|
383
395
|
"require": "./dist/interceptors/index.cjs"
|
|
@@ -26,7 +26,6 @@ import {
|
|
|
26
26
|
UserEvent,
|
|
27
27
|
} from 'src/application/models';
|
|
28
28
|
import { OrgConfig } from 'src/application/models/api/orgConfigResults';
|
|
29
|
-
import { ClientDetails } from 'src/application/models/clientDetails';
|
|
30
29
|
import { ProductExperiment } from 'src/application/models/productExperiment';
|
|
31
30
|
import { validateOrgConfigResults } from 'src/application/models/validators/validateOrgConfigResults';
|
|
32
31
|
import { validateResponse } from 'src/application/models/validators/validateResponse';
|
|
@@ -24,4 +24,7 @@ export enum FeatureGates {
|
|
|
24
24
|
// Model experiment flags
|
|
25
25
|
IsInModelExperiment = 'is_in_model_experiment',
|
|
26
26
|
IsModelExperimentTreatment = 'is_model_experiment_treatment',
|
|
27
|
+
IsAiSuggestionsVariantEnabled = 'is_ai_suggestions_variant_enabled',
|
|
28
|
+
IsAiSuggestionsVariantAEnabled = 'is_ai_suggestions_variant_a_enabled',
|
|
29
|
+
IsAiSuggestionsVariantBEnabled = 'is_ai_suggestions_variant_b_enabled',
|
|
27
30
|
}
|
|
@@ -181,6 +181,8 @@ const MOCK_HARDCOPY_RESPONSE: Partial<Record<WidgetTypeV3, HardcopyResponse>> =
|
|
|
181
181
|
'Your personal shopper trained on the collective knowledge of thousands of real experts!',
|
|
182
182
|
chatFooterTextFieldPlaceholderText: 'Ask me anything...',
|
|
183
183
|
disclaimerText: 'This is a disclaimer...',
|
|
184
|
+
leftToggleLabel: 'Shop with AI',
|
|
185
|
+
rightToggleLabel: 'Live support',
|
|
184
186
|
},
|
|
185
187
|
},
|
|
186
188
|
[WidgetTypeV3.FullPageSalesAgentV3]: {
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// This component will interact with the backend API to get the responses from the sales agent.
|
|
2
|
-
import Logger from 'src/application/logging/logger';
|
|
3
2
|
import { PageVisitCategory, UserEventCategory } from '@spiffy-ai/commerce-api-client';
|
|
3
|
+
import { useAtomValue, useSetAtom } from 'jotai';
|
|
4
|
+
import { useCallback } from 'react';
|
|
5
|
+
import Logger from 'src/application/logging/logger';
|
|
4
6
|
import {
|
|
5
7
|
ChatElementDisplayLocationV3,
|
|
6
8
|
FormSubmittedAttributes,
|
|
@@ -9,14 +11,17 @@ import {
|
|
|
9
11
|
Suggestion,
|
|
10
12
|
UserEvent,
|
|
11
13
|
} from 'src/application/models';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { v4 as uuid } from 'uuid';
|
|
14
|
+
import { hasParsedVariantInfoAtom } from 'src/atoms/app';
|
|
15
|
+
import { analyticsContextAtom } from 'src/atoms/app/variant';
|
|
15
16
|
import { formSubmitAtom, replyEventCategoryAtom } from 'src/atoms/chat';
|
|
16
17
|
import { queueUserEventAtom } from 'src/atoms/chat/messageQueue';
|
|
18
|
+
import { useWidgetInteraction } from 'src/hooks/WidgetInteraction';
|
|
19
|
+
import {
|
|
20
|
+
WidgetInteractionComponent,
|
|
21
|
+
WidgetInteractionType,
|
|
22
|
+
} from 'src/hooks/WidgetInteraction/types';
|
|
17
23
|
import { EnviveMetricsEventName } from 'src/services/amplitudeService/amplitudeService';
|
|
18
|
-
import {
|
|
19
|
-
import { hasParsedVariantInfoAtom } from 'src/atoms/app';
|
|
24
|
+
import { v4 as uuid } from 'uuid';
|
|
20
25
|
import { SpiffyMetricsEventName, useAmplitude } from '../amplitudeContext';
|
|
21
26
|
|
|
22
27
|
const TRACKED_USER_EVENTS = [
|
|
@@ -52,6 +57,7 @@ export const useSalesAgentChatAPI = () => {
|
|
|
52
57
|
const setReplyEventCategory = useSetAtom(replyEventCategoryAtom);
|
|
53
58
|
const setFormSubmit = useSetAtom(formSubmitAtom);
|
|
54
59
|
const { trackEvent } = useAmplitude();
|
|
60
|
+
const { trackWidgetInteraction } = useWidgetInteraction();
|
|
55
61
|
|
|
56
62
|
const logPageVisit = useCallback(
|
|
57
63
|
({ pageVisitCategory }: { pageVisitCategory: PageVisitCategory }) => {
|
|
@@ -104,6 +110,19 @@ export const useSalesAgentChatAPI = () => {
|
|
|
104
110
|
);
|
|
105
111
|
const onSuggestionClicked = useCallback(
|
|
106
112
|
(suggestion: Suggestion, displayLocation: ChatElementDisplayLocationV3) => {
|
|
113
|
+
trackWidgetInteraction({
|
|
114
|
+
eventName: EnviveMetricsEventName.WidgetInteraction,
|
|
115
|
+
trigger: {
|
|
116
|
+
widget: WidgetInteractionComponent.FLOATING_CHAT,
|
|
117
|
+
widget_interaction: WidgetInteractionType.SUGGESTION_CLICKED,
|
|
118
|
+
widget_interaction_data: {
|
|
119
|
+
suggestion_clicked: {
|
|
120
|
+
suggestion_id: suggestion.id,
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
});
|
|
125
|
+
|
|
107
126
|
trackEvent({
|
|
108
127
|
eventName: SpiffyMetricsEventName.ChatSuggestionClicked,
|
|
109
128
|
eventProps: {
|
|
@@ -159,6 +178,20 @@ export const useSalesAgentChatAPI = () => {
|
|
|
159
178
|
displayLocation: ChatElementDisplayLocationV3;
|
|
160
179
|
}) => {
|
|
161
180
|
const eventId = uuid();
|
|
181
|
+
|
|
182
|
+
trackWidgetInteraction({
|
|
183
|
+
eventName: EnviveMetricsEventName.WidgetInteraction,
|
|
184
|
+
trigger: {
|
|
185
|
+
widget: WidgetInteractionComponent.FLOATING_CHAT,
|
|
186
|
+
widget_interaction: WidgetInteractionType.MESSAGE_SUBMITTED,
|
|
187
|
+
widget_interaction_data: {
|
|
188
|
+
message_submitted: {
|
|
189
|
+
request_text: query,
|
|
190
|
+
},
|
|
191
|
+
},
|
|
192
|
+
},
|
|
193
|
+
});
|
|
194
|
+
|
|
162
195
|
trackEvent({
|
|
163
196
|
eventName: SpiffyMetricsEventName.ChatUserMessageInput,
|
|
164
197
|
eventProps: {
|