UNPKG

@moengage/web-sdk

Version:
1 lines 6.49 kB
const Moe={initialize:e=>{var o=e.app_id,n=e.debug_logs||0,d=e.env||null,a=e.logLevel||null,i=e.cluster||"DC_1",t=e.project_id||null,s=e.disable_onsite||!1,g=e.enableSPA||!1,r=e.cards||null,l=e.disable_web_push||!1,M=e.swPath||"/serviceworker.js",w=e.swScope||null,_=e.disableCookies||!1,u=e.useLatest||!1,c=e.sdkVersion||"2.68.00",L=e.disableSdk||!1,b=e.customProxyDomain||null,m=e.bots_list||[];try{r&&(r=JSON.stringify(r))}catch(e){console.log("Failed to parse cards config",e)}try{m=JSON.stringify(m)}catch(e){console.log("Failed to parse bots list config",e)}if("undefined"!=typeof window&&document&&!window.Moengage){var f=i.toLowerCase(),p=document.createElement("script"),v="string"==typeof b&&b.length?`https://cdn.${b}`:"https://cdn.moengage.com",k=c&&!u?`${v}/release/${f}/versions/${c}/moe_webSdk.min.latest.js`:`${v}/release/${f}/moe_webSdk.min.latest.js`;p.type="text/javascript",p.text=`!function(e,n,i,t,a,r,o,d){if(!"${f}"||"{DC}"==="${f}")return console.error("Data center has not been passed correctly. Please follow the SDK installation instruction carefully.");var s=e[a]=e[a]||[];if(s.invoked=0,s&&s.initialised>0||s.invoked>0)return console.error("MoEngage Web SDK initialised multiple times. Please integrate the Web SDK only once!"),!1;e.moengage_object=a;var l={},g=function n(i){return function(){for(var n=arguments.length,t=Array(n),a=0;a<n;a++)t[a]=arguments[a];(e.moengage_q=e.moengage_q||[]).push({f:i,a:t})}},u=["track_event","add_user_attribute","add_first_name","add_last_name","add_email","add_mobile","add_user_name","add_gender","add_birthday","destroy_session","add_unique_user_id","update_unique_user_id","moe_events","call_web_push","track","location_type_attribute","track_page_view","getSdkVersion","setLogLevel","setDebugLevel","handle_page_change","identifyUser","getUserIdentities"],m={onsite:["getData","registerCallback","getSelfHandledOSM"]};for(var c in u)l[u[c]]=g(u[c]);for(var v in m)for(var f in m[v])null==l[v]&&(l[v]={}),l[v][m[v][f]]=g(v+"."+m[v][f]);r=n.createElement(i),o=n.getElementsByTagName("head")[0],r.async=1,r.src=t,o.appendChild(r),e.moe=e.moe||function(){return(s.invoked=s.invoked+1,s.invoked>1)?(console.error("MoEngage Web SDK initialised multiple times. Please integrate the Web SDK only once!"),!1):(d=arguments.length<=0?void 0:arguments[0],l)},r.addEventListener("load",function(){if(d)return e[a]=e.moe(d),(e[a]&&(e[a].initialised=e[a].initialised+1||1)),!0}),r.addEventListener("error",function(){return console.error("Moengage Web SDK loading failed."),!1})}(window,document,"script","${k}","Moengage");\n Moengage = moe({\n app_id: "${o}",\n debug_logs: ${n},\n ${d?`env: "${d}",`:""}\n ${null!=a?`logLevel: ${"string"==typeof a?`"${a}"`:a},`:""}\n swPath: "${M}",\n swScope: ${w?`"${w}"`:null},\n cluster: "${i.toUpperCase()}",\n ${t?`project_id: "${t}",`:""}\n disableOnsite: ${s},\n disableCookies: ${_},\n disable_web_push: ${l},\n enableSPA: ${g},\n cards: ${r},\n disableSdk: ${L},\n customProxyDomain: ${"string"==typeof b&&b.length?`"${b}"`:null},\n bots_list: ${m}\n });\n `,document.head.appendChild(p)}},isMoeLoaded:()=>{try{if("undefined"!=typeof window&&document&&window.Moengage)return!0}catch(e){return!1}return!1},track_event:(e,o)=>Moe.isMoeLoaded()&&window.Moengage.track_event(e,o),getSdkVersion:()=>Moe.isMoeLoaded()&&window.Moengage.getSdkVersion(),setLogLevel:e=>Moe.isMoeLoaded()&&window.Moengage.setLogLevel(e),setDebugLevel:e=>Moe.isMoeLoaded()&&window.Moengage.setDebugLevel(e),add_unique_user_id:e=>Moe.isMoeLoaded()&&window.Moengage.add_unique_user_id(e),update_unique_user_id:e=>Moe.isMoeLoaded()&&window.Moengage.update_unique_user_id(e),identifyUser:e=>Moe.isMoeLoaded()&&window.Moengage.identifyUser(e),getUserIdentities:()=>Moe.isMoeLoaded()&&window.Moengage.getUserIdentities(),enableSdk:()=>Moe.isMoeLoaded()&&window.Moengage.enableSdk(),disableSdk:()=>Moe.isMoeLoaded()&&window.Moengage.disableSdk(),isSdkEnabled:()=>Moe.isMoeLoaded()&&window.Moengage.isSdkEnabled(),enableDataTracking:()=>Moe.isMoeLoaded()&&window.Moengage.enableDataTracking(),disableDataTracking:()=>Moe.isMoeLoaded()&&window.Moengage.disableDataTracking(),isDataTrackingEnabled:()=>Moe.isMoeLoaded()&&window.Moengage.isDataTrackingEnabled(),getUserId:()=>Moe.isMoeLoaded()&&window.Moengage.getUserId(),getUserAttribute:(e,o)=>Moe.isMoeLoaded()?o&&"string"==typeof o?window.Moengage.getUserAttribute(e,o):window.Moengage.getUserAttribute(e):null,add_user_attribute:(e,o,n)=>!!Moe.isMoeLoaded()&&(n&&"string"==typeof n?window.Moengage.add_user_attribute(e,o,n):window.Moengage.add_user_attribute(e,o)),add_first_name:e=>Moe.isMoeLoaded()&&window.Moengage.add_first_name(e),add_last_name:e=>Moe.isMoeLoaded()&&window.Moengage.add_last_name(e),add_email:e=>Moe.isMoeLoaded()&&window.Moengage.add_email(e),add_mobile:e=>Moe.isMoeLoaded()&&window.Moengage.add_mobile(e),add_user_name:e=>Moe.isMoeLoaded()&&window.Moengage.add_user_name(e),add_gender:e=>Moe.isMoeLoaded()&&window.Moengage.add_gender(e),add_birthday:e=>Moe.isMoeLoaded()&&window.Moengage.add_birthday(e),destroy_session:()=>Moe.isMoeLoaded()&&window.Moengage.destroy_session(),call_web_push:e=>Moe.isMoeLoaded()&&window.Moengage.call_web_push(e),track_page_view:()=>Moe.isMoeLoaded()&&window.Moengage.track_page_view(),handle_page_change:()=>Moe.isMoeLoaded()&&window.Moengage.handle_page_change(),on_cards_loaded:()=>new Promise((e,o)=>{"undefined"!=typeof window?window.Moengage.cards?(Moe.cards=window.Moengage.cards,e()):window.addEventListener("MOE_LIFECYCLE",o=>{"CARDS_INITIALIZED"===o.detail.name&&(Moe.cards=window.Moengage.cards,e())}):o()}),cards:"undefined"!=typeof window&&window.Moengage&&window.Moengage.cards||{},onsite:{getData:()=>Moe.isMoeLoaded()&&window.Moengage.onsite.getData(),registerCallback:e=>Moe.isMoeLoaded()&&window.Moengage.onsite.registerCallback(e),getSelfHandledOSM:e=>Moe.isMoeLoaded()&&window.Moengage.onsite.getSelfHandledOSM(e),selfHandledShown:e=>Moe.isMoeLoaded()&&window.Moengage.onsite.selfHandledShown(e),selfHandledClicked:e=>Moe.isMoeLoaded()&&window.Moengage.onsite.selfHandledClicked(e),selfHandledDismissed:e=>Moe.isMoeLoaded()&&window.Moengage.onsite.selfHandledDismissed(e)},Attribute:{USER_ATTRIBUTE_LEVEL:{PROJECT:"PROJECT",PORTFOLIO:"PORTFOLIO"}},env:{TEST:"TEST",LIVE:"LIVE"},logLevel:{NONE:0,LIMITED:1,ALL:2}};module.exports=Moe;