UNPKG

react-tawk-messenger

Version:
2 lines (1 loc) 6.29 kB
(function(w,r){typeof exports=="object"&&typeof module!="undefined"?module.exports=r(require("react")):typeof define=="function"&&define.amd?define(["react"],r):(w=typeof globalThis!="undefined"?globalThis:w||self,w["react-tawk-messenger"]=r(w.React))})(this,function(w){"use strict";var r={exports:{}},m="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",O=m,C=O;function u(){}function c(){}c.resetWarningCache=u;var l=function(){function t(k,o,e,i,g,y){if(y!==C){var f=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw f.name="Invariant Violation",f}}t.isRequired=t;function n(){return t}var d={array:t,bigint:t,bool:t,func:t,number:t,object:t,string:t,symbol:t,any:t,arrayOf:n,element:t,elementType:t,instanceOf:n,node:t,objectOf:n,oneOf:n,oneOfType:n,shape:n,exact:n,checkPropTypes:c,resetWarningCache:u};return d.PropTypes=d,d};r.exports=l();var a=r.exports;const h=t=>!t||t.length===0?!1:t!=null&&typeof t=="string",T=({propertyId:t="",widgetId:n="",embedId:d="",basePath:k="tawk.to"})=>{if(d.length){if(!document.getElementById(d)){const i=document.createElement("div");i.id=d,document.body.appendChild(i)}window.Tawk_API.embedded=d}const o=document.createElement("script");o.async=!0,o.src=`https://embed.${k}/${t}/${n}`,o.charset="UTF-8",o.setAttribute("crossorigin","*");const e=document.getElementsByTagName("script")[0];e.parentNode.insertBefore(o,e)},s=w.forwardRef((t,n)=>{w.useEffect(()=>{d()},[]);const d=()=>{if(!h(t.propertyId)){console.error("[Tawk-messenger-react warn]: You didn't specified 'propertyId' property in the plugin.");return}if(!h(t.widgetId)){console.error("[Tawk-messenger-react warn]: You didn't specified 'widgetId' property in the plugin.");return}!window||!document||k()},k=()=>{window.Tawk_API=window.Tawk_API||{},window.Tawk_LoadStart=new Date,T({propertyId:t.propertyId,widgetId:t.widgetId,embedId:t.embedId,basePath:t.basePath}),t.customStyle&&typeof t.customStyle=="object"&&(window.Tawk_API.customStyle=t.customStyle),o()};w.useImperativeHandle(n,()=>({tawkMaximize:()=>window.Tawk_API.maximize(),tawkMinimize:()=>window.Tawk_API.minimize(),tawkToggle:()=>window.Tawk_API.toggle(),tawkPopup:()=>window.Tawk_API.popup(),tawkShowWidget:()=>window.Tawk_API.showWidget(),tawkHideWidget:()=>window.Tawk_API.hideWidget(),tawkToggleVisibility:()=>window.Tawk_API.toggleVisibility(),tawkEndChat:()=>window.Tawk_API.endChat(),tawkGetWindowType:()=>window.Tawk_API.getWindowType(),tawkGetStatus:()=>window.Tawk_API.getStatus(),tawkIsChatMaximized:()=>window.Tawk_API.isChatMaximized(),tawkIsChatMinimized:()=>window.Tawk_API.isChatMinimized(),tawkIsChatHidden:()=>window.Tawk_API.isChatHidden(),tawkIsChatOngoing:()=>window.Tawk_API.isChatOngoing(),tawkIsVisitorEngaged:()=>window.Tawk_API.isVisitorEngaged(),tawkOnLoaded:()=>window.Tawk_API.onLoaded,tawkOnBeforeLoaded:()=>window.Tawk_API.onBeforeLoaded,tawkWidgetPosition:()=>window.Tawk_API.widgetPosition(),tawkVisitor:e=>{window.Tawk_API.visitor=e},tawkSetAttributes:(e,i)=>{window.Tawk_API.setAttributes(e,i)},tawkAddEvent:(e,i,g)=>{window.Tawk_API.addEvent(e,i,g)},tawkAddTags:(e,i)=>{window.Tawk_API.addTags(e,i)},tawkRemoveTags:(e,i)=>{window.Tawk_API.removeTags(e,i)},tawkSwitchWidget:e=>{window.Tawk_API.switchWidget(e)}}));const o=()=>{window.addEventListener("tawkLoad",()=>{t.tawkOnLoad()}),window.addEventListener("tawkStatusChange",e=>{t.tawkOnStatusChange(e.detail)}),window.addEventListener("tawkBeforeLoad",()=>{t.tawkOnBeforeLoad()}),window.addEventListener("tawkChatMaximized",()=>{t.tawkOnChatMaximized()}),window.addEventListener("tawkChatMinimized",()=>{t.tawkOnChatMinimized()}),window.addEventListener("tawkChatHidden",()=>{t.tawkOnChatHidden()}),window.addEventListener("tawkChatStarted",()=>{t.tawkOnChatStarted()}),window.addEventListener("tawkChatEnded",()=>{t.tawkOnChatEnded()}),window.addEventListener("tawkPrechatSubmit",e=>{t.tawkOnPrechatSubmit(e.detail)}),window.addEventListener("tawkOfflineSubmit",e=>{t.tawkOnOfflineSubmit(e.detail)}),window.addEventListener("tawkChatMessageVisitor",e=>{t.tawkOnChatMessageVisitor(e.detail)}),window.addEventListener("tawkChatMessageAgent",e=>{t.tawkOnChatMessageAgent(e.detail)}),window.addEventListener("tawkChatMessageSystem",e=>{t.tawkOnChatMessageSystem(e.detail)}),window.addEventListener("tawkAgentJoinChat",e=>{t.tawkOnAgentJoinChat(e.detail)}),window.addEventListener("tawkAgentLeaveChat",e=>{t.tawkOnAgentLeaveChat(e.detail)}),window.addEventListener("tawkChatSatisfaction",e=>{t.tawkOnChatSatisfaction(e.detail)}),window.addEventListener("tawkVisitorNameChanged",e=>{t.tawkOnVisitorNameChanged(e.detail)}),window.addEventListener("tawkFileUpload",e=>{t.tawkOnFileUpload(e.detail)}),window.addEventListener("tawkTagsUpdated",e=>{t.tawkOnTagsUpdated(e.detail)}),window.addEventListener("tawkUnreadCountChanged",e=>{t.tawkOnUnreadCountChanged(e.detail)})};return null});return s.displayName="TawkMessenger",s.defaultProps={customStyle:null,embedId:"",basePath:"tawk.to",tawkOnLoad:()=>{},tawkOnStatusChange:()=>{},tawkOnBeforeLoad:()=>{},tawkOnChatMaximized:()=>{},tawkOnChatMinimized:()=>{},tawkOnChatHidden:()=>{},tawkOnChatStarted:()=>{},tawkOnChatEnded:()=>{},tawkOnPrechatSubmit:()=>{},tawkOnOfflineSubmit:()=>{},tawkOnChatMessageVisitor:()=>{},tawkOnChatMessageAgent:()=>{},tawkOnChatMessageSystem:()=>{},tawkOnAgentJoinChat:()=>{},tawkOnAgentLeaveChat:()=>{},tawkOnChatSatisfaction:()=>{},tawkOnVisitorNameChanged:()=>{},tawkOnFileUpload:()=>{},tawkOnTagsUpdated:()=>{},tawkOnUnreadCountChanged:()=>{}},s.propTypes={propertyId:a.string.isRequired,widgetId:a.string.isRequired,customStyle:a.object,embedId:a.string,basePath:a.string,tawkOnLoad:a.func,tawkOnStatusChange:a.func,tawkOnBeforeLoad:a.func,tawkOnChatMaximized:a.func,tawkOnChatMinimized:a.func,tawkOnChatHidden:a.func,tawkOnChatStarted:a.func,tawkOnChatEnded:a.func,tawkOnPrechatSubmit:a.func,tawkOnOfflineSubmit:a.func,tawkOnChatMessageVisitor:a.func,tawkOnChatMessageAgent:a.func,tawkOnChatMessageSystem:a.func,tawkOnAgentJoinChat:a.func,tawkOnAgentLeaveChat:a.func,tawkOnChatSatisfaction:a.func,tawkOnVisitorNameChanged:a.func,tawkOnFileUpload:a.func,tawkOnTagsUpdated:a.func,tawkOnUnreadCountChanged:a.func},s});