Skip to content

Commit f011649

Browse files
committed
Hubspot check hubspot widget
1 parent 8095866 commit f011649

1 file changed

Lines changed: 8 additions & 9 deletions

File tree

src/providers/hubSpot.ts

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ declare global {
1313
}
1414
}
1515

16+
const isWidgetDefined = () => window.HubSpotConversations && window.HubSpotConversations.widget;
17+
1618
const loadScript = (hsId: string) => {
1719
// Detect the provider is already loaded and return early
1820
if (window.HubSpotConversations) {
@@ -54,7 +56,7 @@ const load = ({
5456
}): boolean => {
5557
window.hsConversationsOnReady = [
5658
() => {
57-
window.HubSpotConversations.widget.load()
59+
isWidgetDefined() && window.HubSpotConversations.widget.load()
5860
}
5961
]
6062
const loaded = loadScript(providerKey)
@@ -64,14 +66,13 @@ const load = ({
6466
waitForLoad(
6567
() => {
6668
return Boolean(
67-
window.HubSpotConversations &&
68-
window.HubSpotConversations.widget &&
69+
isWidgetDefined() &&
6970
window.HubSpotConversations.widget.status().loaded
7071
)
7172
},
7273
// Allow hubspot to complete loading before removing fake widget
7374
() => {
74-
window.HubSpotConversations.widget.open()
75+
isWidgetDefined() && window.HubSpotConversations.widget.open()
7576
setState('complete')
7677
onReady()
7778
}
@@ -81,18 +82,16 @@ const load = ({
8182
}
8283

8384
const open = (): unknown => {
84-
window.HubSpotConversations &&
85-
window.HubSpotConversations.widget &&
85+
isWidgetDefined() &&
8686
!window.HubSpotConversations.widget.status().loaded &&
8787
window.HubSpotConversations.widget.load()
8888

8989
return (
90-
window.HubSpotConversations &&
91-
window.HubSpotConversations.widget &&
90+
isWidgetDefined() &&
9291
window.HubSpotConversations.widget.open()
9392
)
9493
} // Open provider
95-
const close = (): unknown => window.HubSpotConversations.widget.close() // Close provider
94+
const close = (): unknown => isWidgetDefined() && window.HubSpotConversations.widget.close() // Close provider
9695

9796
export default {
9897
load,

0 commit comments

Comments
 (0)