sui-analytics
Description
This package adds an abstraction layer on top of segment.com's javascript library
Usage
After adding your Segment snippet into your html, you'll need to include this package in order to be able to fire events.
sui-analytics will be an object with the methods described here
In your html page (SPA / Monolith docs)
<script type="text/javascript">
!function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t,e){var n=document.createElement("script");n.type="text/javascript";n.async=!0;n.src="https://cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(n,a);analytics._loadOptions=e};analytics.SNIPPET_VERSION="4.1.0";
analytics.load("YOUR_WRITE_KEY");
}}();
</script>
In your modern and beautiful JavaScript...
import suiAnalytics from '@s-ui/analytics'
In your monolithic JavaScript...
<script src="https://unpkg.com/@s-ui/analytics/umd/index.js"></script>
<script>
window.sui.analytics.identify('your user id', {});
window.sui.analytics.track('your event', {});
window.sui.analytics.reset();
</script>
Events
Identify - docs
suiAnalytics.identify('97980cfea0067', {
name: 'Peter Gibbons',
email: 'peter@initech.com',
plan: 'premium',
logins: 5
})
suiAnalytics.track('Registered', {
plan: 'Pro Annual',
accountType: 'Facebook'
})
suiAnalytics.reset()