@tango-analytics/core 16.9999.999999

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of @tango-analytics/core might be problematic. Click here for more details.

@@ -0,0 +1,50 @@
1
+ import { Analytics } from '@tango-analytics/core';
2
+ export { CONSTANTS, EVENTS } from '@tango-analytics/core';
3
+ import storage from '@tango-analytics/storage-utils';
4
+
5
+ function _defineProperty(obj, key, value) {
6
+ if (key in obj) {
7
+ Object.defineProperty(obj, key, {
8
+ value: value,
9
+ enumerable: true,
10
+ configurable: true,
11
+ writable: true
12
+ });
13
+ } else {
14
+ obj[key] = value;
15
+ }
16
+ return obj;
17
+ }
18
+
19
+ function ownKeys(object, enumerableOnly) {
20
+ var keys = Object.keys(object);
21
+ if (Object.getOwnPropertySymbols) {
22
+ var symbols = Object.getOwnPropertySymbols(object);
23
+ enumerableOnly && (symbols = symbols.filter(function (sym) {
24
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
25
+ })), keys.push.apply(keys, symbols);
26
+ }
27
+ return keys;
28
+ }
29
+ function _objectSpread2(target) {
30
+ for (var i = 1; i < arguments.length; i++) {
31
+ var source = null != arguments[i] ? arguments[i] : {};
32
+ i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
33
+ _defineProperty(target, key, source[key]);
34
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
35
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
36
+ });
37
+ }
38
+ return target;
39
+ }
40
+
41
+ // See ../packages/analytics-core for source code
42
+ function analyticsLib() {
43
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
44
+ var defaultSettings = {
45
+ storage: storage
46
+ };
47
+ return Analytics(_objectSpread2(_objectSpread2({}, defaultSettings), opts));
48
+ }
49
+
50
+ export { analyticsLib as Analytics, analyticsLib as default, analyticsLib as init };
@@ -0,0 +1,2 @@
1
+ import{set as e,get as o,remove as n}from"@tango-analytics/global-storage-utils";var t="cookie",i=u(),r=d,c=d;function a(e){return i?d(e,"",-1):n(e)}function u(){if(void 0!==i)return i;var e=t+t;try{d(e,e),i=-1!==document.cookie.indexOf(e),a(e)}catch(e){i=!1}return i}function d(n,t,r,c,a,u){if("undefined"!=typeof window){var d=arguments.length>1;return!1===i&&(d?e(n,t):o(n)),d?document.cookie=n+"="+encodeURIComponent(t)+(r?"; expires="+new Date(+new Date+1e3*r).toUTCString()+(c?"; path="+c:"")+(a?"; domain="+a:"")+(u?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+n+"=")[1]||"").split(";")[0])}}export{t as COOKIE,r as getCookie,u as hasCookies,a as removeCookie,c as setCookie};
2
+ //# sourceMappingURL=analytics-util-cookie.module.js.map
@@ -0,0 +1,2 @@
1
+ import{get as e,remove as n,set as t,globalContext as r,KEY as i}from"@tango-analytics/global-storage-utils";function a(){return a=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},a.apply(this,arguments)}var o,u,c=(o=function(e,n){e.exports=function(e,n,t,r,i){for(n=n.split?n.split("."):n,r=0;r<n.length;r++)e=e?e[n[r]]:i;return e===i?t:e}},o(u={exports:{}}),u.exports),s=c,l="undefined",f="object",d="array",p="null";typeof process===l||process;var m=typeof document!==l;function g(e,n){return n.charAt(0)[e]()+n.slice(1)}typeof Deno!==l&&Deno,m&&"nodejs"===window.name||typeof navigator!==l&&typeof navigator.userAgent!==l&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var v=g.bind(null,"toUpperCase"),h=g.bind(null,"toLowerCase");function y(e,n){void 0===n&&(n=!0);var t=function(e){return P(e)?v(p):typeof e===f?function(e){return w(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?h(t):t}function b(e,n){return typeof n===e}var w=b.bind(null,"function"),I=b.bind(null,"string");b.bind(null,l);var E=b.bind(null,"boolean");function P(e){return null===e}function x(e){if(!function(e){return e&&(typeof e===f||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function S(e,n){if("object"!=typeof n||P(n))return!1;if(n instanceof e)return!0;var t=y(new e(""));if(function(e){return e instanceof Error||I(e.message)&&e.constructor&&function(e){return"number"===y(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(y(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function O(e,n){var t=e instanceof Element||e instanceof HTMLDocument;return t&&n?function(e,n){return void 0===n&&(n=""),e&&e.nodeName===n.toUpperCase()}(e,n):t}function _(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function N(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function j(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var a=n[i];if("__proto__"===a||"constructor"===a)break;a in e||(e[a]={}),e=e[a]}e[n[r]]=t}function A(){for(var e="",n=0,t=4294967295*Math.random()|0;n++<36;){var r="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[n-1],i=15&t;e+="-"==r||"4"==r?r:("x"==r?i:3&i|8).toString(16),t=n%8==0?4294967295*Math.random()|0:t>>4}return e}b.bind(null,"symbol"),S.bind(null,TypeError),S.bind(null,SyntaxError),_(O,"form"),_(O,"button"),_(O,"input"),_(O,"select");var k="function",T="undefined",M="reducer",z="@@redux/",L=z+"INIT",U=z+Math.random().toString(36),q=/* #__PURE__ */function(){return typeof Symbol===k&&Symbol.observable||"@@observable"}(),C=" != "+k;function D(e,n,t){var r;if(typeof n===k&&typeof t===T&&(t=n,n=void 0),typeof t!==T){if(typeof t!==k)throw new Error("enhancer"+C);return t(D)(e,n)}if(typeof e!==k)throw new Error(M+C);var i=e,a=n,o=[],u=o,c=!1;function s(){u===o&&(u=o.slice())}function l(){return a}function f(e){if(typeof e!==k)throw new Error("Listener"+C);var n=!0;return s(),u.push(e),function(){if(n){n=!1,s();var t=u.indexOf(e);u.splice(t,1)}}}function d(e){if(!x(e))throw new Error("Act != obj");if(typeof e.type===T)throw new Error("ActType "+T);if(c)throw new Error("Dispatch in "+M);try{c=!0,a=i(a,e)}finally{c=!1}for(var n=o=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:L}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==k)throw new Error("next "+M+C);i=e,d({type:L})}})[q]=function(){var e,n=f;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function t(){e.next&&e.next(l())}return t(),{unsubscribe:n(t)}}})[q]=function(){return this},e},r}function V(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+M+" "+e+" returns "+T}function R(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,n){return function(){return e(n.apply(void 0,[].slice.call(arguments)))}})}function $(){var e=arguments;return function(n){return function(t,r,i){var o,u=n(t,r,i),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),a({},u,{dispatch:c=R.apply(void 0,o)(u.dispatch)})}}}var B="__anon_id",X="__user_id",J="__user_traits",W={__proto__:null,ANON_ID:B,USER_ID:X,USER_TRAITS:J},H="analytics",F="userId",Z="anonymousId",G=["bootstrap","params","campaign","initializeStart","initialize","initializeEnd","ready","resetStart","reset","resetEnd","pageStart","page","pageEnd","pageAborted","trackStart","track","trackEnd","trackAborted","identifyStart","identify","identifyEnd","identifyAborted","userIdChanged","registerPlugins","enablePlugin","disablePlugin","online","offline","setItemStart","setItem","setItemEnd","setItemAborted","removeItemStart","removeItem","removeItemEnd","removeItemAborted"],K=["name","EVENTS","config","loaded"],Q=G.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),Y=/^utm_/,ee=/^an_prop_/,ne=/^an_trait_/;function te(e){var n=e.storage.setItem;return function(t){return function(r){return function(i){if(i.type===Q.bootstrap){var o=i.params,u=i.user,c=i.persistedUser,s=i.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&n(B,u.anonymousId),l||n(X,u.userId),s.traits&&n(J,a({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(i.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,n){if(n.match(Y)||n.match(/^(d|g)clid/)){var t=n.replace(Y,"");e.campaign["campaign"===t?"name":t]=o[n]}return n.match(ee)&&(e.props[n.replace(ee,"")]=o[n]),n.match(ne)&&(e.traits[n.replace(ne,"")]=o[n]),e},{campaign:{},props:{},traits:{}});t.dispatch(a({type:Q.params,raw:o},m,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,m.traits)},0),p&&setTimeout(function(){return e.track(p,m.props)},0),Object.keys(m.campaign).length&&t.dispatch({type:Q.campaign,campaign:m.campaign})}}return r(i)}}}}function re(e){return function(n,t){if(void 0===n&&(n={}),void 0===t&&(t={}),t.type===Q.setItemEnd){if(t.key===B)return a({},n,{anonymousId:t.value});if(t.key===X)return a({},n,{userId:t.value})}switch(t.type){case Q.identify:return Object.assign({},n,{userId:t.userId,traits:a({},n.traits,t.traits)});case Q.reset:return[X,B,J].forEach(function(n){e.removeItem(n)}),Object.assign({},n,{userId:null,anonymousId:null,traits:{}});default:return n}}}function ie(e){return{userId:e.getItem(X),anonymousId:e.getItem(B),traits:e.getItem(J)}}var ae=function(e){return"__TEMP__"+e};function oe(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===Q.reset&&([X,J,B].forEach(function(e){i(e)}),[F,Z,"traits"].forEach(function(e){n(ae(e))})),u.type===Q.identify){o(B)||r(B,A());var f=o(X),d=o(J)||{};f&&f!==c&&e.dispatch({type:Q.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(X,c),s&&r(J,a({},d,s))}return t(u)}}}}var ue={};function ce(e,n){ue[e]&&w(ue[e])&&(ue[e](n),delete ue[e])}function se(e,n,t){return new Promise(function(r,i){return n()?r(e):t<1?i(a({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return se(e,n,t-10).then(r,i)})})}function le(e){return{abort:e}}function fe(e,n,t){var r={},i=n(),o=e.getState(),u=o.plugins,c=o.queue,s=o.user;if(!o.context.offline&&c&&c.actions&&c.actions.length){var l=c.actions.reduce(function(e,n,t){return u[n.plugin].loaded?(e.process.push(n),e.processIndex.push(t)):(e.requeue.push(n),e.requeueIndex.push(t)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(n){var o=c.actions[n],l=o.plugin,f=o.payload.type,d=i[l][f];if(d&&w(d)){var p,m=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[F,Z].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(o.payload,s),g=r[m.meta.rid];if(!g&&(p=d({payload:m,config:u[l].config,instance:t,abort:le}))&&x(p)&&p.abort)return void(r[m.meta.rid]=!0);if(!g){var v=f+":"+l;e.dispatch(a({},m,{type:v,_:{called:v,from:"queueDrain"}}))}}});var f=c.actions.filter(function(e,n){return!~l.processIndex.indexOf(n)});c.actions=f}}}var de=function(e){var n=e.data,t=e.action,r=e.instance,i=e.state,o=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=i.plugins,f=i.context,d=t.type,p=d.match(pe),m=n.exact.map(function(e){return e.pluginName});p&&(m=u.during.map(function(e){return e.pluginName}));var g=function(e,n){return function(t,r,i){var o=r.config,u=r.name,c=u+"."+t.type;i&&(c=i.event);var s=t.type.match(pe)?function(e,n,t,r,i){return function(o,u){var c=r?r.name:e,s=u&&Pe(u)?u:t;if(r&&(!(s=u&&Pe(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+n+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return a({},i,{abort:{reason:o,plugins:s,caller:n,_:c}})}}(u,c,n,i,t):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(t,c);return{payload:Oe(t),instance:e,config:o||{},abort:s}}}(r,m),v=n.exact.reduce(function(e,n){var t=n.pluginName,r=n.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!l[t].loaded),f.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(n.exact.reduce(function(e,i,u){var c=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var u=function(){if(n.namespaced&&n.namespaced[c])return Promise.resolve(n.namespaced[c].reduce(function(e,n,t){return Promise.resolve(e).then(function(e){return n.method&&w(n.method)?(function(e,n){var t=Se(e);if(t&&t.name===n){var r=Se(t.method);throw new Error([n+" plugin is calling method "+e,"Plugins cant call self","Use "+t.method+" "+(r?"or "+r.method:"")+" in "+n+" plugin insteadof "+e].join("\n"))}}(n.methodName,n.pluginName),Promise.resolve(n.method({payload:e,instance:r,abort:(t=e,i=c,u=n.pluginName,function(e,n){return a({},t,{abort:{reason:e,plugins:n||[i],caller:d,from:u||i}})}),config:ye(n.pluginName,l,o),plugins:l})).then(function(n){var t=x(n)?n:{};return Promise.resolve(a({},e,t))})):e;var t,i,u})},Promise.resolve(t))).then(function(n){e[c]=n});e[c]=t}();return u&&u.then?u.then(i):i()})},Promise.resolve({}))).then(function(e){return Promise.resolve(n.exact.reduce(function(t,i,u){try{var s=n.exact.length===u+1,f=i.pluginName,m=o[f];return Promise.resolve(t).then(function(n){var t=e[f]?e[f]:{};if(p&&(t=n),Ie(t,f))return he({data:t,method:d,instance:r,pluginName:f,store:c}),Promise.resolve(n);if(Ie(n,f))return s&&he({data:n,method:d,instance:r,store:c}),Promise.resolve(n);if(v.hasOwnProperty(f)&&!0===v[f])return c.dispatch({type:"queue",plugin:f,payload:t,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(n);var i=g(e[f],o[f]);return Promise.resolve(m[d]({abort:i.abort,payload:t,instance:r,config:ye(f,l,o),plugins:l})).then(function(i){var o=x(i)?i:{},u=a({},n,o),s=e[f];if(Ie(s,f))he({data:s,method:d,instance:r,pluginName:f,store:c});else{var l=d+":"+f;(l.match(/:/g)||[]).length<2&&!d.match(me)&&!d.match(ge)&&r.dispatch(a({},p?u:t,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(e){if(!(d.match(pe)||d.match(/^registerPlugin/)||d.match(ge)||d.match(me)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),e._&&e._.originalAction===d)return e;var t=a({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});Ee(e,n.exact.length)&&!d.match(/End$/)&&(t=a({},t,{type:e.type+"Aborted"})),c.dispatch(t)}return e})})}catch(e){return Promise.reject(e)}},pe=/Start$/,me=/^bootstrap/,ge=/^ready/,ve=function(e,n,t,r,i){try{var o=w(n)?n():n,u=e.type,c=u.replace(pe,"");if(e._&&e._.called)return Promise.resolve(e);var s=t.getState(),l=(p=o,void 0===(m=s.plugins)&&(m={}),void 0===(g=e.options)&&(g={}),Object.keys(p).filter(function(e){var n=g.plugins||{};return E(n[e])?n[e]:!1!==n.all&&(!m[e]||!1!==m[e].enabled)}).map(function(e){return p[e]}));u===Q.initializeStart&&e.fromEnable&&(l=Object.keys(s.plugins).filter(function(n){var t=s.plugins[n];return e.plugins.includes(n)&&!t.initialized}).map(function(e){return o[e]}));var f=l.map(function(e){return e.name}),d=function(e,n,t){var r=we(e).map(function(e){return be(e,n)});return n.reduce(function(t,r){var i=r.name,a=we(e,i).map(function(e){return be(e,n)}),o=a[0],u=a[1],c=a[2];return o.length&&(t.beforeNS[i]=o),u.length&&(t.duringNS[i]=u),c.length&&(t.afterNS[i]=c),t},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(u,l);return Promise.resolve(de({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:s,allPlugins:o,allMatches:d,instance:t,store:r,EVENTS:i})).then(function(e){function n(){var n=function(){if(u.match(pe))return Promise.resolve(de({action:a({},l,{type:c+"End"}),data:{exact:d.after,namespaced:d.afterNS},state:s,allPlugins:o,allMatches:d,instance:t,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&ce(e.meta.rid,{payload:e})})}();return n&&n.then?n.then(function(){return e}):e}if(Ee(e,f.length))return e;var l,p=function(){if(u!==c)return Promise.resolve(de({action:a({},e,{type:c}),data:{exact:d.during,namespaced:d.duringNS},state:s,allPlugins:o,allMatches:d,instance:t,store:r,EVENTS:i})).then(function(e){l=e});l=e}();return p&&p.then?p.then(n):n()})}catch(e){return Promise.reject(e)}var p,m,g};function he(e){var n=e.pluginName,t=e.method+"Aborted"+(n?":"+n:"");e.store.dispatch(a({},e.data,{type:t,_:{called:t,from:"abort"}}))}function ye(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function be(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function we(e,n){var t=e.replace(pe,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function Ie(e,n){var t=e.abort;return!!t&&(!0===t||xe(t,n)||t&&xe(t.plugins,n))}function Ee(e,n){var t=e.abort;if(!t)return!1;if(!0===t||I(t))return!0;var r=t.plugins;return Pe(t)&&t.length===n||Pe(r)&&r.length===n}function Pe(e){return Array.isArray(e)}function xe(e,n){return!(!e||!Pe(e))&&e.includes(n)}function Se(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function Oe(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=x(e[t])?Object.assign({},e[t]):e[t]),n},{})}function _e(e,n,t){var r={};return function(i){return function(o){return function(u){try{var c,s=function(e){return c?e:o(d)},l=u.type,f=u.plugins,d=u;if(u.abort)return Promise.resolve(o(u));if(l===Q.enablePlugin&&i.dispatch({type:Q.initializeStart,plugins:f,disabled:[],fromEnable:!0,meta:u.meta}),l===Q.disablePlugin&&setTimeout(function(){return ce(u.meta.rid,{payload:u})},0),l===Q.initializeEnd){var p=n(),m=Object.keys(p),g=m.filter(function(e){return f.includes(e)}).map(function(e){return p[e]}),v=[],h=[],y=u.disabled,b=g.map(function(e){var n=e.loaded,t=e.name,a=e.config;return se(e,function(){return n({config:a})},1e4).then(function(n){return r[t]||(i.dispatch({type:Q.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!K.includes(e)})}),r[t]=!0),v=v.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return h=h.concat(e.name),e})});Promise.all(b).then(function(e){var n={plugins:v,failed:h,disabled:y};setTimeout(function(){m.length===b.length+y.length&&i.dispatch(a({},{type:Q.ready},n))},0)})}var w=function(){if(l!==Q.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return fe(i,n,e)},0),Promise.resolve(ve(u,n,e,i,t)).then(function(e){var n=o(e);return c=1,n})}();return Promise.resolve(w&&w.then?w.then(s):s(w))}catch(e){return Promise.reject(e)}}}}}function Ne(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,a=t.value,o=t.options;if(r===Q.setItem||r===Q.removeItem){if(t.abort)return n(t);r===Q.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return n(t)}}}}var je=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(n,t){e[t]=e[t].concat(n)},this.removeMiddleware=function(n,t){var r=e[t].findIndex(function(e){return e===n});-1!==r&&(e[t]=[].concat(e[t].slice(0,r),e[t].slice(r+1)))},this.dynamicMiddlewares=function(n){return function(t){return function(r){return function(i){var a={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},o=e[n].map(function(e){return e(a)});return R.apply(void 0,o)(r)(i)}}}}};function Ae(e){return function(n,t){void 0===n&&(n={});var r={};if("initialize:aborted"===t.type)return n;if(/^registerPlugin:([^:]*)$/.test(t.type)){var i=ke(t.type,"registerPlugin"),o=e()[i];if(!o||!i)return n;var u=t.enabled,c=o.config;return r[i]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},a({},n,r)}if(/^initialize:([^:]*)$/.test(t.type)){var s=ke(t.type,Q.initialize),l=e()[s];return l&&s?(r[s]=a({},n[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),a({},n,r)):n}if(/^ready:([^:]*)$/.test(t.type))return r[t.name]=a({},n[t.name],{loaded:!0}),a({},n,r);switch(t.type){case Q.disablePlugin:return a({},n,Te(t.plugins,!1,n));case Q.enablePlugin:return a({},n,Te(t.plugins,!0,n));default:return n}}}function ke(e,n){return e.substring(n.length+1,e.length)}function Te(e,n,t){return e.reduce(function(e,r){return e[r]=a({},t[r],{enabled:n}),e},t)}function Me(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ze={last:{},history:[]};function Le(e,n){void 0===e&&(e=ze);var t=n.options,r=n.meta;if(n.type===Q.track){var i=Me(a({event:n.event,properties:n.properties},Object.keys(t).length&&{options:t},{meta:r}));return a({},e,{last:i,history:e.history.concat(i)})}return e}var Ue={actions:[]};function qe(e,n){void 0===e&&(e=Ue);var t=n.payload;switch(n.type){case"queue":var r;return r=t&&t.type&&t.type===Q.identify?[n].concat(e.actions):e.actions.concat(n),a({},e,{actions:r});case"dequeue":return[];default:return e}}var Ce=/#.*$/;function De(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Ce,""):"")}var Ve,Re,$e,Be,Xe=function(e){if(void 0===e&&(e={}),!m)return e;var n=document,t=n.title,r=n.referrer,i=window,o=i.location,u=i.innerWidth,c=i.innerHeight,s=o.hash,l=o.search,f=function(e){var n=function(){if(m)for(var e,n=document.getElementsByTagName("link"),t=0;e=n[t];t++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return n?n.match(/\?/)?n:n+e:window.location.href.replace(Ce,"")}(l),d={title:t,url:f,path:De(f),hash:s,search:l,width:u,height:c};return r&&""!==r&&(d.referrer=r),a({},d,e)},Je={last:{},history:[]};function We(e,n){void 0===e&&(e=Je);var t=n.options;if(n.type===Q.page){var r=Me(a({properties:n.properties,meta:n.meta},Object.keys(t).length&&{options:t}));return a({},e,{last:r,history:e.history.concat(r)})}return e}Ve=function(){if(!m)return!1;var e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),Re=m?document.referrer:null,$e=function(){if(m){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),Be=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var He={initialized:!1,sessionId:A(),app:null,version:null,debug:!1,offline:!!m&&!navigator.onLine,os:{name:Ve},userAgent:m?navigator.userAgent:"node",library:{name:H,version:"0.12.24"},timezone:Be,locale:$e,campaign:{},referrer:Re};function Fe(e,n){void 0===e&&(e=He);var t=e.initialized,r=n.campaign;switch(n.type){case Q.campaign:return a({},e,{campaign:r});case Q.offline:return a({},e,{offline:!0});case Q.online:return a({},e,{offline:!1});default:return t?e:a({},He,e,{initialized:!0})}}var Ze=["plugins","reducers","storage"];function Ge(e,n,t){if(m){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Ke(e){var n=Ge.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Qe(){return t(H,[]),function(e){return function(n,t,a){var o=e(n,t,a),u=o.dispatch;return Object.assign(o,{dispatch:function(e){return r[i][H].push(e.action||e),u(e)}})}}}function Ye(e){return function(){return R(R.apply(null,arguments),Qe())}}function en(e){return e?function(e){return y(e)===d}(e)?e:[e]:[]}function nn(e,n,t){void 0===e&&(e={});var r,i,o=A();return n&&(ue[o]=(r=n,i=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(w(t[r])){n=t[r];break}return n}(t),function(e){i&&i(e),r(e)})),a({},e,{rid:o,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function tn(r){void 0===r&&(r={});var i=r.reducers||{},o=r.initialUser||{},u=(r.plugins||[]).reduce(function(e,n){if(w(n))return e.middlewares=e.middlewares.concat(n),e;if(n.NAMESPACE&&(n.name=n.NAMESPACE),!n.name)throw new Error("https://lytics.dev/errors/1");n.config||(n.config={});var t=n.EVENTS?Object.keys(n.EVENTS).map(function(e){return n.EVENTS[e]}):[];e.pluginEnabled[n.name]=!(!1===n.enabled||!1===n.config.enabled),delete n.enabled,n.methods&&(e.methods[n.name]=Object.keys(n.methods).reduce(function(e,t){return e[t]=function(e){return function(){for(var n=Array.prototype.slice.call(arguments),t=new Array(e.length),r=0;r<n.length;r++)t[r]=n[r];return t[t.length]=C,e.apply({instance:C},t)}}(n.methods[t]),e},{}),delete n.methods);var r=Object.keys(n).concat(t),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(n),e.plugins[n.name])throw new Error(n.name+"AlreadyLoaded");return e.plugins[n.name]=n,e.plugins[n.name].loaded||(e.plugins[n.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),c=r.storage?r.storage:{getItem:e,setItem:t,removeItem:n},l=function(n){return function(t,r,i){return r.getState("user")[t]||(i&&x(i)&&i[t]?i[t]:ie(n)[t]||e(ae(t))||null)}}(c),f=u.plugins,d=u.events.filter(function(e){return!K.includes(e)}).sort(),p=new Set(d.concat(G).filter(function(e){return!K.includes(e)})),g=Array.from(p).sort(),v=function(){return f},h=new je,y=h.addMiddleware,b=h.removeMiddleware,E=h.dynamicMiddlewares,P=function(){throw new Error("Abort disabled inListener")},S=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=N(n[1]),a=N(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(a):t[i]=""===a||a}for(var o in t){var u=o.split("[");u.length>1&&(j(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[o]),delete t[o])}return t}(m&&window.location.search.substring(1)),O=ie(c),_=a({},O,o,S.an_uid?{userId:S.an_uid}:{},S.an_aid?{anonymousId:S.an_aid}:{});_.anonymousId||(_.anonymousId=A());var z=a({enable:function(e,n){return new Promise(function(t){ce.dispatch({type:Q.enablePlugin,plugins:en(e),_:{originalAction:Q.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ce.dispatch({type:Q.disablePlugin,plugins:en(e),_:{originalAction:Q.disablePlugin}},t,[n])})}},u.methods),q=!1,C={identify:function(e,n,r,i){try{var o=I(e)?e:null,u=x(e)?e:n,c=r||{},s=C.user();t(ae(F),o);var f=o||u.userId||l(F,C,u);return Promise.resolve(new Promise(function(e){ce.dispatch(a({type:Q.identifyStart,userId:f,traits:u||{},options:c,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[n,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=x(e)?e.event:e;if(!i||!I(i))throw new Error("EventMissing");var a=x(e)?e:n||{},o=x(t)?t:{};return Promise.resolve(new Promise(function(e){ce.dispatch({type:Q.trackStart,event:i,properties:a,options:o,userId:l(F,C,n),anonymousId:l(Z,C,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=x(e)?e:{},i=x(n)?n:{};return Promise.resolve(new Promise(function(a){ce.dispatch({type:Q.pageStart,properties:Xe(r),options:i,userId:l(F,C,r),anonymousId:l(Z,C,r)},a,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===F||"id"===e)return l(F,C);if(e===Z||"anonId"===e)return l(Z,C);var n=C.getState("user");return e?s(n,e):n},reset:function(e){return new Promise(function(n){ce.dispatch({type:Q.resetStart},n,e)})},ready:function(e){return q&&e({plugins:z,instance:C}),C.on(Q.ready,function(n){e(n),q=!0})},on:function(e,n){if(!e||!w(n))return!1;if(e===Q.bootstrap)throw new Error(".on disabled for "+e);var t=/Start$|Start:/;if("*"===e){var r=function(e){return function(e){return function(r){return r.type.match(t)&&n({payload:r,instance:C,plugins:f}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:C,plugins:f}),e(r)}}};return y(r,rn),y(i,an),function(){b(r,rn),b(i,an)}}var a=e.match(t)?rn:an,o=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:C,plugins:f,abort:P}),t(r)}}};return y(o,a),function(){return b(o,a)}},once:function(e,n){if(!e||!w(n))return!1;if(e===Q.bootstrap)throw new Error(".once disabled for "+e);var t=C.on(e,function(e){n({payload:e.payload,instance:C,plugins:f,abort:P}),t()});return t},getState:function(e){var n=ce.getState();return e?s(n,e):Object.assign({},n)},dispatch:function(e){var n=I(e)?{type:e}:e;if(G.includes(n.type))throw new Error("reserved action "+n.type);var t=a({},n,{_:a({originalAction:n.type},e._||{})});ce.dispatch(t)},enablePlugin:z.enable,disablePlugin:z.disable,plugins:z,storage:{getItem:c.getItem,setItem:function(e,n,t){ce.dispatch({type:Q.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ce.dispatch({type:Q.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){C.storage.setItem(B,e,n)},events:{core:G,plugins:d}},X=u.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=nn()),e(n)}}},E(rn),_e(C,v,{all:g,plugins:d}),Ne(c),te(C),oe(C),E(an)]),J={context:Fe,user:re(c),page:We,track:Le,plugins:Ae(v),queue:qe},W=R,H=R;if(m&&r.debug){var Y=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Y&&(W=Y({trace:!0,traceLimit:25})),H=function(){return 0===arguments.length?Qe():x(typeof arguments[0])?Ye():Ye().apply(null,arguments)}}var ee=function(e){return Object.keys(e).reduce(function(n,t){return Ze.includes(t)||(n[t]=e[t]),n},{})}(r),ne=u.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,a=u.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ue={context:ee,user:_,plugins:ne},ce=D(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===k&&(t[i]=e[i])}var a,o=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:L})===T||typeof t(void 0,{type:U})===T)throw new Error(M+" "+n+" "+T)})}(t)}catch(e){a=e}return function(e,n){if(void 0===e&&(e={}),a)throw a;for(var r=!1,i={},u=0;u<o.length;u++){var c=o[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===T){var f=V(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(a({},J,i)),ue,H(W($.apply(void 0,X))));ce.dispatch=function(e){return function(n,t,r){var i=a({},n,{meta:nn(n.meta,t,en(r))});return e.apply(null,[i])}}(ce.dispatch);var se=Object.keys(f);ce.dispatch({type:Q.bootstrap,plugins:se,config:ee,params:S,user:_,initialUser:o,persistedUser:O});var le=se.filter(function(e){return u.pluginEnabled[e]}),de=se.filter(function(e){return!u.pluginEnabled[e]});return ce.dispatch({type:Q.registerPlugins,plugins:se,enabled:u.pluginEnabled}),u.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&w(t)&&t({instance:C,config:r,payload:e}),ce.dispatch({type:Q.registerPluginType(i),name:i,enabled:u.pluginEnabled[i],plugin:e}),u.pluginsArray.length===n+1&&ce.dispatch({type:Q.initializeStart,plugins:le,disabled:de})}),Ke(function(e){ce.dispatch({type:e?Q.offline:Q.online})}),function(e,n,t){setInterval(function(){return fe(e,n,t)},3e3)}(ce,v,C),C}var rn="before",an="after";export{tn as Analytics,W as CONSTANTS,Q as EVENTS,tn as default,tn as init};
2
+ //# sourceMappingURL=analytics-core.module.js.map
@@ -0,0 +1,2 @@
1
+ import{PREFIX as t,OBJECT as e,UNDEFINED as r}from"@tango-analytics/type-utils";var n="global",o=t+n+t,l=typeof self===e&&self.self===self&&self||typeof global===e&&global[n]===global&&global||void 0;function f(t){return l[o][t]}function a(t,e){return l[o][t]=e}function i(t){delete l[o][t]}function u(t,e,r){var n;try{if(s(t)){var o=window[t];n=o[e].bind(o)}}catch(t){}return n||r}l[o]||(l[o]={});var c={};function s(t){if(typeof c[t]!==r)return c[t];try{var e=window[t];e.setItem(r,r),e.removeItem(r)}catch(e){return c[t]=!1}return c[t]=!0}export{n as GLOBAL,o as KEY,f as get,l as globalContext,s as hasSupport,i as remove,a as set,u as wrap};
2
+ //# sourceMappingURL=analytics-util-global-storage.module.js.map
@@ -0,0 +1,149 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ var config = {
8
+ debug: false,
9
+ containerId: null,
10
+ dataLayerName: 'dataLayer',
11
+ dataLayer: undefined,
12
+ preview: undefined,
13
+ auth: undefined,
14
+ execution: 'async'
15
+ // assumesPageview: true,
16
+ };
17
+ var initializedDataLayerName;
18
+
19
+ /**
20
+ * Google tag manager plugin
21
+ * @link https://getanalytics.io/plugins/google-tag-manager
22
+ * @link https://developers.google.com/tag-manager/
23
+ * @param {object} pluginConfig - Plugin settings
24
+ * @param {string} pluginConfig.containerId - The Container ID uniquely identifies the GTM Container.
25
+ * @param {string} [pluginConfig.dataLayerName=dataLayer] - The optional name for dataLayer-object. Defaults to dataLayer.
26
+ * @param {string} [pluginConfig.customScriptSrc] - Load Google Tag Manager script from a custom source
27
+ * @param {string} [pluginConfig.preview] - The preview-mode environment
28
+ * @param {string} [pluginConfig.auth] - The preview-mode authentication credentials
29
+ * @param {string} [pluginConfig.execution] - The script execution mode
30
+ * @return {object} Analytics plugin
31
+ * @example
32
+ *
33
+ * googleTagManager({
34
+ * containerId: 'GTM-123xyz'
35
+ * })
36
+ */
37
+ function googleTagManager() {
38
+ var pluginConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
39
+ var defaultScriptSrc = 'https://www.googletagmanager.com/gtm.js';
40
+
41
+ // Allow for userland overides of base methods
42
+ return {
43
+ name: 'google-tag-manager',
44
+ config: _objectSpread(_objectSpread({}, config), pluginConfig),
45
+ initialize: function initialize(_ref) {
46
+ var config = _ref.config;
47
+ var containerId = config.containerId,
48
+ dataLayerName = config.dataLayerName,
49
+ customScriptSrc = config.customScriptSrc,
50
+ preview = config.preview,
51
+ auth = config.auth,
52
+ execution = config.execution;
53
+ if (!containerId) {
54
+ throw new Error('No google tag manager containerId defined');
55
+ }
56
+ if (preview && !auth) {
57
+ throw new Error('When enabling preview mode, both preview and auth parameters must be defined');
58
+ }
59
+ var scriptSrc = customScriptSrc || defaultScriptSrc;
60
+ if (!scriptLoaded(containerId, scriptSrc)) {
61
+ /* eslint-disable */
62
+ (function (w, d, s, l, i) {
63
+ w[l] = w[l] || [];
64
+ w[l].push({
65
+ 'gtm.start': new Date().getTime(),
66
+ event: 'gtm.js'
67
+ });
68
+ var f = d.getElementsByTagName(s)[0],
69
+ j = d.createElement(s),
70
+ dl = l != 'dataLayer' ? '&l=' + l : '',
71
+ p = preview ? '&gtm_preview=' + preview + '&gtm_auth=' + auth + '&gtm_cookies_win=x' : '';
72
+ if (execution) {
73
+ j[execution] = true;
74
+ }
75
+ j.src = "".concat(scriptSrc, "?id=") + i + dl + p;
76
+ f.parentNode.insertBefore(j, f);
77
+ })(window, document, 'script', dataLayerName, containerId);
78
+ /* eslint-enable */
79
+ initializedDataLayerName = dataLayerName;
80
+ config.dataLayer = window[dataLayerName];
81
+ }
82
+ },
83
+ page: function page(_ref2) {
84
+ var payload = _ref2.payload;
85
+ _ref2.options;
86
+ _ref2.instance;
87
+ var config = _ref2.config;
88
+ if (typeof config.dataLayer !== 'undefined') {
89
+ config.dataLayer.push(payload.properties);
90
+ }
91
+ },
92
+ track: function track(_ref3) {
93
+ var payload = _ref3.payload;
94
+ _ref3.options;
95
+ var config = _ref3.config;
96
+ if (typeof config.dataLayer !== 'undefined') {
97
+ var anonymousId = payload.anonymousId,
98
+ userId = payload.userId,
99
+ properties = payload.properties;
100
+ var formattedPayload = properties;
101
+ if (userId) {
102
+ formattedPayload.userId = userId;
103
+ }
104
+ if (anonymousId) {
105
+ formattedPayload.anonymousId = anonymousId;
106
+ }
107
+ if (!properties.category) {
108
+ formattedPayload.category = 'All';
109
+ }
110
+ if (config.debug) {
111
+ console.log('dataLayer push', _objectSpread({
112
+ event: payload.event
113
+ }, formattedPayload));
114
+ }
115
+ config.dataLayer.push(_objectSpread({
116
+ event: payload.event
117
+ }, formattedPayload));
118
+ }
119
+ },
120
+ loaded: function loaded() {
121
+ var hasDataLayer = !!initializedDataLayerName && !!(window[initializedDataLayerName] && Array.prototype.push !== window[initializedDataLayerName].push);
122
+ return scriptLoaded(pluginConfig.containerId, pluginConfig.customScriptSrc || defaultScriptSrc) && hasDataLayer;
123
+ }
124
+ };
125
+ }
126
+ var regexCache = {};
127
+
128
+ /*
129
+ TODO add logic to make it impossible to load 2 plugins with the same container ID
130
+ [containerID]: pluginName
131
+ */
132
+
133
+ function scriptLoaded(containerId, scriptSrc) {
134
+ var regex = regexCache[containerId];
135
+ if (!regex) {
136
+ var scriptSrcEscaped = scriptSrc.replace(/^https?:\/\//, '').replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
137
+ regex = new RegExp(scriptSrcEscaped + '.*[?&]id=' + containerId);
138
+ regexCache[containerId] = regex;
139
+ }
140
+ var scripts = document.querySelectorAll('script[src]');
141
+ return !!Object.keys(scripts).filter(function (key) {
142
+ return (scripts[key].src || '').match(regex);
143
+ }).length;
144
+ }
145
+
146
+ /* This module will shake out unused code and work in browser and node 🎉 */
147
+ var index = googleTagManager ;
148
+
149
+ export { index as default };