UNPKG

analytics-plugin-customerio

Version:

Customer.io integration for 'analytics' module

1 lines 1.8 kB
var analyticsCustomerio=function(){"use strict";return function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},o=!1;return{NAMESPACE:"customerio",config:e,initialize:function(e){var r=e.config.siteId;if(!r)throw new Error("No customer.io siteId defined");"undefined"==typeof _cio&&(window._cio=[],function(){var e,t,o;for(e=function(e){return function(){_cio.push([e].concat(Array.prototype.slice.call(arguments,0)))}},t=["load","identify","sidentify","track","page"],o=0;o<t.length;o++)_cio[t[o]]=e(t[o]);var i=document.createElement("script"),n=document.getElementsByTagName("script")[0];i.async=!0,i.id="cio-tracker",i.setAttribute("data-site-id",r),i.src="https://assets.customer.io/assets/track.js",n.parentNode.insertBefore(i,n)}())},page:function(e){var t=e.payload;e.config.disableAnonymousTraffic&&!t.userId||(o?"undefined"!=typeof _cio&&_cio.page(document.location.href,t.properties):o=!0)},reset:function(e){var t=e.instance.storage,o={storage:"cookie"};t.removeItem("_cio",o),t.removeItem("_cioid",o)},track:function(e){var t=e.payload;e.config.disableAnonymousTraffic&&!t.userId||"undefined"!=typeof _cio&&_cio.track(t.event,t.properties)},identify:function(e){var t=e.payload,o=t.userId,i=t.traits;"undefined"!=typeof _cio&&o&&_cio.identify(function(n){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{},t=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),t.forEach(function(e){var t,o,i;t=n,i=r[o=e],o in t?Object.defineProperty(t,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[o]=i})}return n}({id:o},i))},loaded:function(){return!(!window._cio||window._cio.push===Array.prototype.push)}}}}();