Socket
Socket
Sign inDemoInstall

@analytics/core

Package Overview
Dependencies
Maintainers
1
Versions
43
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@analytics/core - npm Package Compare versions

Comparing version 0.12.7 to 0.12.9

2

client/dist/cdn/core.js

@@ -1,2 +0,2 @@

var _analytics=function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t,r,i=(t=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}},t(r={exports:{}}),r.exports),o=i,a="object";"undefined"==typeof process||process;var u="undefined"!=typeof document;function c(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,u&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var s=c.bind(null,"toUpperCase"),l=c.bind(null,"toLowerCase");function f(e,n){void 0===n&&(n=!0);var t=function(e){return v(e)?s("null"):"object"==typeof e?function(e){return p(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?l(t):t}function d(e,n){return typeof n===e}var p=d.bind(null,"function"),m=d.bind(null,"string");d.bind(null,"undefined");var g=d.bind(null,"boolean");function v(e){return null===e}function h(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function y(e,n){if("object"!=typeof n||v(n))return!1;if(n instanceof e)return!0;var t=f(new e(""));if(function(e){return e instanceof Error||m(e.message)&&e.constructor&&function(e){return"number"===f(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(f(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function b(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 w(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function I(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function E(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function P(){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}d.bind(null,"symbol"),y.bind(null,TypeError),y.bind(null,SyntaxError),w(b,"form"),w(b,"button"),w(b,"input"),w(b,"select");var S="__global__",x=typeof self===a&&self.self===self&&self||typeof global===a&&global.global===global&&global||void 0;function _(e){return x[S][e]}function O(e,n){return x[S][e]=n}function N(e){delete x[S][e]}x[S]||(x[S]={});var j="function",A="undefined",k="@@redux/",T=k+"INIT",M=k+Math.random().toString(36),z=/* #__PURE__ */function(){return typeof Symbol===j&&Symbol.observable||"@@observable"}(),L=" != "+j;function U(e,n,t){var r;if(typeof n===j&&typeof t===A&&(t=n,n=void 0),typeof t!==A){if(typeof t!==j)throw new Error("enhancer"+L);return t(U)(e,n)}if(typeof e!==j)throw new Error("reducer"+L);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==j)throw new Error("Listener"+L);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(!h(e))throw new Error("Act != obj");if(typeof e.type===A)throw new Error("ActType "+A);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:T}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==j)throw new Error("next reducer"+L);i=e,d({type:T})}})[z]=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)}}})[z]=function(){return this},e},r}function q(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+A}function C(){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 D(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=C.apply(void 0,a)(u.dispatch)})}}}var V="__anon_id",R="__user_id",$="__user_traits",B={__proto__:null,ANON_ID:V,USER_ID:R,USER_TRAITS:$},X="analytics",J="userId",W="anonymousId",H=["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"],F=["name","EVENTS","config","loaded"],Z=H.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),G=/^utm_/,K=/^an_prop_/,Q=/^an_trait_/;function Y(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===Z.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(V,u.anonymousId),l||t(R,u.userId),s.traits&&t($,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(G)||n.match(/^(d|g)clid/)){var t=n.replace(G,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(K)&&(e.props[n.replace(K,"")]=a[n]),n.match(Q)&&(e.traits[n.replace(Q,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:Z.params,raw:a},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&&r.dispatch({type:Z.campaign,campaign:m.campaign})}}return i(o)}}}}function ee(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===Z.setItemEnd){if(r.key===V)return n({},t,{anonymousId:r.value});if(r.key===R)return n({},t,{userId:r.value})}switch(r.type){case Z.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case Z.reset:return[R,V,$].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function ne(e){return{userId:e.getItem(R),anonymousId:e.getItem(V),traits:e.getItem($)}}var te=function(e){return"__TEMP__"+e};function re(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===Z.reset&&([R,$,V].forEach(function(e){i(e)}),[J,W,"traits"].forEach(function(e){N(te(e))})),a.type===Z.identify){o(V)||r(V,P());var l=o(R),f=o($)||{};l&&l!==u&&e.dispatch({type:Z.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(R,u),c&&r($,n({},f,c))}return t(a)}}}}var ie={};function oe(e,n){ie[e]&&p(ie[e])&&(ie[e](n),delete ie[e])}function ae(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ae(e,t,r-10).then(i,o)})})}function ue(e,t,r){var i=t(),o=e.getState(),a=o.plugins,u=o.queue,c=o.user;if(!o.context.offline&&u&&u.actions&&u.actions.length){var s=u.actions.reduce(function(e,n,t){return a[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(s.processIndex&&s.processIndex.length){s.processIndex.forEach(function(t){var o=u.actions[t],s=o.plugin,l=o.payload.type,f=i[s][l];if(f&&p(f)){var d=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[J,W].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(o.payload,c);f({payload:d,config:a[s].config,instance:r});var m=l+":"+s;e.dispatch(n({},d,{type:m,_:{called:m,from:"queueDrain"}}))}});var l=u.actions.filter(function(e,n){return!~s.processIndex.indexOf(n)});u.actions=l}}}var ce=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,f=o.context,d=r.type,m=d.match(se),g=t.exact.map(function(e){return e.pluginName});m&&(g=u.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(se)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&ye(u)?u:r;if(i&&(!(s=u&&ye(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:Ie(r),instance:e,config:a||{},abort:s}}}(i,g),y=t.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(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&p(t.method)?(function(e,n){var t=we(e);if(t&&t.name===n){var r=we(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:d,from:u||o}})}),config:pe(t.pluginName,l,a),plugins:l})).then(function(t){var r=h(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,p=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),ve(r,f))return de({data:r,method:d,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(ve(t,f))return s&&de({data:t,method:d,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=v(e[f],a[f]);return Promise.resolve(p[d]({abort:o.abort,payload:r,instance:i,config:pe(f,l,a),plugins:l})).then(function(o){var a=h(o)?o:{},u=n({},t,a),s=e[f];if(ve(s,f))de({data:s,method:d,instance:i,pluginName:f,store:c});else{var l=d+":"+f;(l.match(/:/g)||[]).length<2&&!d.match(le)&&!d.match(fe)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(d.match(se)||d.match(/^registerPlugin/)||d.match(fe)||d.match(le)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),e._&&e._.originalAction===d)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});he(e,t.exact.length)&&!d.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},se=/Start$/,le=/^bootstrap/,fe=/^ready/;function de(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function pe(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function me(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function ge(e,n){var t=e.replace(se,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function ve(e,n){var t=e.abort;return!!t&&(!0===t||be(t,n)||t&&be(t.plugins,n))}function he(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return ye(t)&&t.length===n||ye(r)&&r.length===n}function ye(e){return Array.isArray(e)}function be(e,n){return!(!e||!ye(e))&&e.includes(n)}function we(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function Ie(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=h(e[t])?Object.assign({},e[t]):e[t]),n},{})}function Ee(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(d)},l=u.type,f=u.plugins,d=u;if(u.abort)return Promise.resolve(a(u));if(l===Z.enablePlugin&&o.dispatch({type:Z.initializeStart,plugins:f,disabled:[],fromEnable:!0,meta:u.meta}),l===Z.disablePlugin&&setTimeout(function(){return oe(u.meta.rid,{payload:u})},0),l===Z.initializeEnd){var m=t(),v=Object.keys(m),h=v.filter(function(e){return f.includes(e)}).map(function(e){return m[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ae(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:Z.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!F.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:Z.ready},t))},0)})}var E=function(){if(l!==Z.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return ue(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=p(t)?t():t,u=e.type,c=u.replace(se,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(m=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return g(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return m[e]}));u===Z.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 a[e]}));var f=l.map(function(e){return e.name}),d=function(e,n,t){var r=ge(e).map(function(e){return me(e,n)});return n.reduce(function(t,r){var i=r.name,o=ge(e,i).map(function(e){return me(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(ce({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(se))return Promise.resolve(ce({action:n({},l,{type:c+"End"}),data:{exact:d.after,namespaced:d.afterNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&oe(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(he(e,f.length))return e;var l,p=function(){if(u!==c)return Promise.resolve(ce({action:n({},e,{type:c}),data:{exact:d.during,namespaced:d.duringNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return p&&p.then?p.then(t):t()})}catch(e){return Promise.reject(e)}var m,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Pe(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===Z.setItem||r===Z.removeItem){if(t.abort)return n(t);r===Z.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var Se=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return C.apply(void 0,a)(r)(i)}}}}};function xe(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=_e(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=_e(r.type,Z.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case Z.disablePlugin:return n({},t,Oe(r.plugins,!1,t));case Z.enablePlugin:return n({},t,Oe(r.plugins,!0,t));default:return t}}}function _e(e,n){return e.substring(n.length+1,e.length)}function Oe(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function Ne(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var je={last:{},history:[]};function Ae(e,t){void 0===e&&(e=je);var r=t.options,i=t.meta;if(t.type===Z.track){var o=Ne(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var ke={actions:[]};function Te(e,t){void 0===e&&(e=ke);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===Z.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var Me=/#.*$/;function ze(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Me,""):"")}var Le,Ue,qe,Ce,De=function(e){if(void 0===e&&(e={}),!u)return e;var t=document,r=t.title,i=t.referrer,o=window,a=o.location,c=o.innerWidth,s=o.innerHeight,l=a.hash,f=a.search,d=function(e){var n=function(){if(u)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(Me,"")}(f),p={title:r,url:d,path:ze(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},Ve={last:{},history:[]};function Re(e,t){void 0===e&&(e=Ve);var r=t.options;if(t.type===Z.page){var i=Ne(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}Le=function(){if(!u)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"}(),Ue=u?document.referrer:null,qe=function(){if(u){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),Ce=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var $e={initialized:!1,sessionId:P(),app:null,version:null,debug:!1,offline:!!u&&!navigator.onLine,os:{name:Le},userAgent:u?navigator.userAgent:"node",library:{name:X,version:"0.12.5"},timezone:Ce,locale:qe,campaign:{},referrer:Ue};function Be(e,t){void 0===e&&(e=$e);var r=e.initialized,i=t.campaign;switch(t.type){case Z.campaign:return n({},e,{campaign:i});case Z.offline:return n({},e,{offline:!0});case Z.online:return n({},e,{offline:!1});default:return r?e:n({},$e,e,{initialized:!0})}}var Xe=["plugins","reducers","storage"];function Je(e,n,t){if(u){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function We(e){var n=Je.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function He(){return O(X,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return x[S].analytics.push(e.action||e),o(e)}})}}}function Fe(e){return function(){return C(C.apply(null,arguments),He())}}function Ze(e){return e?function(e){return"array"===f(e)}(e)?e:[e]:[]}function Ge(e,t,r){void 0===e&&(e={});var i,o,a=P();return t&&(ie[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(p(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ke(e){void 0===e&&(e={});var t=e.reducers||{},r=e.initialUser||{},i=(e.plugins||[]).reduce(function(e,n){if(p(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]=$,e.apply({instance:$},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:[]}),a=e.storage?e.storage:{getItem:_,setItem:O,removeItem:N},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&h(r)&&r[n]?r[n]:ne(e)[n]||_(te(n))||null)}}(a),s=i.plugins,l=i.events.filter(function(e){return!F.includes(e)}).sort(),f=new Set(l.concat(H).filter(function(e){return!F.includes(e)})),d=Array.from(f).sort(),g=function(){return s},v=new Se,y=v.addMiddleware,b=v.removeMiddleware,w=v.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},x=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=I(n[1]),o=I(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(E(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(u&&window.location.search.substring(1)),k=ne(a),z=n({},k,r,x.an_uid?{userId:x.an_uid}:{},x.an_aid?{anonymousId:x.an_aid}:{});z.anonymousId||(z.anonymousId=P());var L=n({enable:function(e,n){return new Promise(function(t){ce.dispatch({type:Z.enablePlugin,plugins:Ze(e),_:{originalAction:Z.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ce.dispatch({type:Z.disablePlugin,plugins:Ze(e),_:{originalAction:Z.disablePlugin}},t,[n])})}},i.methods),R=!1,$={identify:function(e,t,r,i){try{var o=m(e)?e:null,a=h(e)?e:t,u=r||{},s=$.user();O(te(J),o);var l=o||a.userId||c(J,$,a);return Promise.resolve(new Promise(function(e){ce.dispatch(n({type:Z.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=h(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var o=h(e)?e:n||{},a=h(t)?t:{};return Promise.resolve(new Promise(function(e){ce.dispatch({type:Z.trackStart,event:i,properties:o,options:a,userId:c(J,$,n),anonymousId:c(W,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=h(e)?e:{},i=h(n)?n:{};return Promise.resolve(new Promise(function(o){ce.dispatch({type:Z.pageStart,properties:De(r),options:i,userId:c(J,$,r),anonymousId:c(W,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===J||"id"===e)return c(J,$);if(e===W||"anonId"===e)return c(W,$);var n=$.getState("user");return e?o(n,e):n},reset:function(e){return new Promise(function(n){ce.dispatch({type:Z.resetStart},n,e)})},ready:function(e){return R&&e({plugins:L,instance:$}),$.on(Z.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!p(n))return!1;if(e===Z.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Qe),y(i,Ye),function(){b(r,Qe),b(i,Ye)}}var o=e.match(t)?Qe:Ye,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:S}),t(r)}}};return y(a,o),function(){return b(a,o)}},once:function(e,n){if(!e||!p(n))return!1;if(e===Z.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:S}),t()});return t},getState:function(e){var n=ce.getState();return e?o(n,e):Object.assign({},n)},dispatch:function(e){var t=m(e)?{type:e}:e;if(H.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});ce.dispatch(r)},enablePlugin:L.enable,disablePlugin:L.disable,plugins:L,storage:{getItem:a.getItem,setItem:function(e,n,t){ce.dispatch({type:Z.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ce.dispatch({type:Z.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(V,e,n)},events:{core:H,plugins:l}},B=i.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ge()),e(n)}}},w(Qe),Ee($,g,{all:d,plugins:l}),Pe(a),Y($),re($),w(Ye)]),X={context:Be,user:ee(a),page:Re,track:Ae,plugins:xe(g),queue:Te},G=C,K=C;if(u&&e.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(G=Q({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?He():h(typeof arguments[0])?Fe():Fe().apply(null,arguments)}}var ie=function(e){return Object.keys(e).reduce(function(n,t){return Xe.includes(t)||(n[t]=e[t]),n},{})}(e),oe=i.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,o=n.loaded,a=i.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(o({config:r})),config:r},e},{}),ae={context:ie,user:z,plugins:oe},ce=U(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===j&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:T})===A||typeof t(void 0,{type:M})===A)throw new Error("reducer "+n+" "+A)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===A){var f=q(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},X,t)),ae,K(G(D.apply(void 0,B))));ce.dispatch=function(e){return function(t,r,i){var o=n({},t,{meta:Ge(t.meta,r,Ze(i))});return e.apply(null,[o])}}(ce.dispatch);var se=Object.keys(s);ce.dispatch({type:Z.bootstrap,plugins:se,config:ie,params:x,user:z,initialUser:r,persistedUser:k});var le=se.filter(function(e){return i.pluginEnabled[e]}),fe=se.filter(function(e){return!i.pluginEnabled[e]});return ce.dispatch({type:Z.registerPlugins,plugins:se,enabled:i.pluginEnabled}),i.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,o=e.name;t&&p(t)&&t({instance:$,config:r,payload:e}),ce.dispatch({type:Z.registerPluginType(o),name:o,enabled:i.pluginEnabled[o],plugin:e}),i.pluginsArray.length===n+1&&ce.dispatch({type:Z.initializeStart,plugins:le,disabled:fe})}),We(function(e){ce.dispatch({type:e?Z.offline:Z.online})}),function(e,n,t){setInterval(function(){return ue(e,n,t)},3e3)}(ce,g,$),$}var Qe="before",Ye="after";return e.Analytics=Ke,e.CONSTANTS=B,e.EVENTS=Z,e.default=Ke,e.init=Ke,e}({});
var _analytics=function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t,r,i=(t=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}},t(r={exports:{}}),r.exports),o=i,a="object";"undefined"==typeof process||process;var u="undefined"!=typeof document;function c(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,u&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var s=c.bind(null,"toUpperCase"),l=c.bind(null,"toLowerCase");function f(e,n){void 0===n&&(n=!0);var t=function(e){return v(e)?s("null"):"object"==typeof e?function(e){return p(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?l(t):t}function d(e,n){return typeof n===e}var p=d.bind(null,"function"),m=d.bind(null,"string");d.bind(null,"undefined");var g=d.bind(null,"boolean");function v(e){return null===e}function h(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function y(e,n){if("object"!=typeof n||v(n))return!1;if(n instanceof e)return!0;var t=f(new e(""));if(function(e){return e instanceof Error||m(e.message)&&e.constructor&&function(e){return"number"===f(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(f(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function b(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 w(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function I(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function E(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function P(){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}d.bind(null,"symbol"),y.bind(null,TypeError),y.bind(null,SyntaxError),w(b,"form"),w(b,"button"),w(b,"input"),w(b,"select");var S="__global__",x=typeof self===a&&self.self===self&&self||typeof global===a&&global.global===global&&global||void 0;function _(e){return x[S][e]}function O(e,n){return x[S][e]=n}function N(e){delete x[S][e]}x[S]||(x[S]={});var j="function",A="undefined",k="@@redux/",T=k+"INIT",M=k+Math.random().toString(36),z=/* #__PURE__ */function(){return typeof Symbol===j&&Symbol.observable||"@@observable"}(),L=" != "+j;function U(e,n,t){var r;if(typeof n===j&&typeof t===A&&(t=n,n=void 0),typeof t!==A){if(typeof t!==j)throw new Error("enhancer"+L);return t(U)(e,n)}if(typeof e!==j)throw new Error("reducer"+L);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==j)throw new Error("Listener"+L);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(!h(e))throw new Error("Act != obj");if(typeof e.type===A)throw new Error("ActType "+A);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:T}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==j)throw new Error("next reducer"+L);i=e,d({type:T})}})[z]=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)}}})[z]=function(){return this},e},r}function q(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+A}function C(){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 D(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=C.apply(void 0,a)(u.dispatch)})}}}var V="__anon_id",R="__user_id",$="__user_traits",B={__proto__:null,ANON_ID:V,USER_ID:R,USER_TRAITS:$},X="analytics",J="userId",W="anonymousId",H=["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"],F=["name","EVENTS","config","loaded"],Z=H.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),G=/^utm_/,K=/^an_prop_/,Q=/^an_trait_/;function Y(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===Z.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(V,u.anonymousId),l||t(R,u.userId),s.traits&&t($,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(G)||n.match(/^(d|g)clid/)){var t=n.replace(G,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(K)&&(e.props[n.replace(K,"")]=a[n]),n.match(Q)&&(e.traits[n.replace(Q,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:Z.params,raw:a},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&&r.dispatch({type:Z.campaign,campaign:m.campaign})}}return i(o)}}}}function ee(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===Z.setItemEnd){if(r.key===V)return n({},t,{anonymousId:r.value});if(r.key===R)return n({},t,{userId:r.value})}switch(r.type){case Z.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case Z.reset:return[R,V,$].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function ne(e){return{userId:e.getItem(R),anonymousId:e.getItem(V),traits:e.getItem($)}}var te=function(e){return"__TEMP__"+e};function re(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===Z.reset&&([R,$,V].forEach(function(e){i(e)}),[J,W,"traits"].forEach(function(e){N(te(e))})),a.type===Z.identify){o(V)||r(V,P());var l=o(R),f=o($)||{};l&&l!==u&&e.dispatch({type:Z.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(R,u),c&&r($,n({},f,c))}return t(a)}}}}var ie={};function oe(e,n){ie[e]&&p(ie[e])&&(ie[e](n),delete ie[e])}function ae(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ae(e,t,r-10).then(i,o)})})}function ue(e){return{abort:e}}function ce(e,t,r){var i={},o=t(),a=e.getState(),u=a.plugins,c=a.queue,s=a.user;if(!a.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(t){var a=c.actions[t],l=a.plugin,f=a.payload.type,d=o[l][f];if(d&&p(d)){var m,g=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[J,W].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(a.payload,s),v=i[g.meta.rid];if(!v&&(m=d({payload:g,config:u[l].config,instance:r,abort:ue}))&&h(m)&&m.abort)return void(i[g.meta.rid]=!0);if(!v){var y=f+":"+l;e.dispatch(n({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var f=c.actions.filter(function(e,n){return!~l.processIndex.indexOf(n)});c.actions=f}}}var se=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,f=o.context,d=r.type,m=d.match(le),g=t.exact.map(function(e){return e.pluginName});m&&(g=u.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(le)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&be(u)?u:r;if(i&&(!(s=u&&be(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:Ee(r),instance:e,config:a||{},abort:s}}}(i,g),y=t.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(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&p(t.method)?(function(e,n){var t=Ie(e);if(t&&t.name===n){var r=Ie(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:d,from:u||o}})}),config:me(t.pluginName,l,a),plugins:l})).then(function(t){var r=h(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,p=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),he(r,f))return pe({data:r,method:d,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(he(t,f))return s&&pe({data:t,method:d,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=v(e[f],a[f]);return Promise.resolve(p[d]({abort:o.abort,payload:r,instance:i,config:me(f,l,a),plugins:l})).then(function(o){var a=h(o)?o:{},u=n({},t,a),s=e[f];if(he(s,f))pe({data:s,method:d,instance:i,pluginName:f,store:c});else{var l=d+":"+f;(l.match(/:/g)||[]).length<2&&!d.match(fe)&&!d.match(de)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(d.match(le)||d.match(/^registerPlugin/)||d.match(de)||d.match(fe)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),e._&&e._.originalAction===d)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ye(e,t.exact.length)&&!d.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},le=/Start$/,fe=/^bootstrap/,de=/^ready/;function pe(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function me(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function ge(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function ve(e,n){var t=e.replace(le,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function he(e,n){var t=e.abort;return!!t&&(!0===t||we(t,n)||t&&we(t.plugins,n))}function ye(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return be(t)&&t.length===n||be(r)&&r.length===n}function be(e){return Array.isArray(e)}function we(e,n){return!(!e||!be(e))&&e.includes(n)}function Ie(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function Ee(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=h(e[t])?Object.assign({},e[t]):e[t]),n},{})}function Pe(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(d)},l=u.type,f=u.plugins,d=u;if(u.abort)return Promise.resolve(a(u));if(l===Z.enablePlugin&&o.dispatch({type:Z.initializeStart,plugins:f,disabled:[],fromEnable:!0,meta:u.meta}),l===Z.disablePlugin&&setTimeout(function(){return oe(u.meta.rid,{payload:u})},0),l===Z.initializeEnd){var m=t(),v=Object.keys(m),h=v.filter(function(e){return f.includes(e)}).map(function(e){return m[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ae(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:Z.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!F.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:Z.ready},t))},0)})}var E=function(){if(l!==Z.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return ce(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=p(t)?t():t,u=e.type,c=u.replace(le,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(m=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return g(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return m[e]}));u===Z.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 a[e]}));var f=l.map(function(e){return e.name}),d=function(e,n,t){var r=ve(e).map(function(e){return ge(e,n)});return n.reduce(function(t,r){var i=r.name,o=ve(e,i).map(function(e){return ge(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(se({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(le))return Promise.resolve(se({action:n({},l,{type:c+"End"}),data:{exact:d.after,namespaced:d.afterNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&oe(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ye(e,f.length))return e;var l,p=function(){if(u!==c)return Promise.resolve(se({action:n({},e,{type:c}),data:{exact:d.during,namespaced:d.duringNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return p&&p.then?p.then(t):t()})}catch(e){return Promise.reject(e)}var m,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Se(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===Z.setItem||r===Z.removeItem){if(t.abort)return n(t);r===Z.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var xe=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return C.apply(void 0,a)(r)(i)}}}}};function _e(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=Oe(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=Oe(r.type,Z.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case Z.disablePlugin:return n({},t,Ne(r.plugins,!1,t));case Z.enablePlugin:return n({},t,Ne(r.plugins,!0,t));default:return t}}}function Oe(e,n){return e.substring(n.length+1,e.length)}function Ne(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function je(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var Ae={last:{},history:[]};function ke(e,t){void 0===e&&(e=Ae);var r=t.options,i=t.meta;if(t.type===Z.track){var o=je(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var Te={actions:[]};function Me(e,t){void 0===e&&(e=Te);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===Z.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var ze=/#.*$/;function Le(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(ze,""):"")}var Ue,qe,Ce,De,Ve=function(e){if(void 0===e&&(e={}),!u)return e;var t=document,r=t.title,i=t.referrer,o=window,a=o.location,c=o.innerWidth,s=o.innerHeight,l=a.hash,f=a.search,d=function(e){var n=function(){if(u)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(ze,"")}(f),p={title:r,url:d,path:Le(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},Re={last:{},history:[]};function $e(e,t){void 0===e&&(e=Re);var r=t.options;if(t.type===Z.page){var i=je(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}Ue=function(){if(!u)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"}(),qe=u?document.referrer:null,Ce=function(){if(u){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),De=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var Be={initialized:!1,sessionId:P(),app:null,version:null,debug:!1,offline:!!u&&!navigator.onLine,os:{name:Ue},userAgent:u?navigator.userAgent:"node",library:{name:X,version:"0.12.7"},timezone:De,locale:Ce,campaign:{},referrer:qe};function Xe(e,t){void 0===e&&(e=Be);var r=e.initialized,i=t.campaign;switch(t.type){case Z.campaign:return n({},e,{campaign:i});case Z.offline:return n({},e,{offline:!0});case Z.online:return n({},e,{offline:!1});default:return r?e:n({},Be,e,{initialized:!0})}}var Je=["plugins","reducers","storage"];function We(e,n,t){if(u){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function He(e){var n=We.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Fe(){return O(X,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return x[S].analytics.push(e.action||e),o(e)}})}}}function Ze(e){return function(){return C(C.apply(null,arguments),Fe())}}function Ge(e){return e?function(e){return"array"===f(e)}(e)?e:[e]:[]}function Ke(e,t,r){void 0===e&&(e={});var i,o,a=P();return t&&(ie[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(p(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Qe(e){void 0===e&&(e={});var t=e.reducers||{},r=e.initialUser||{},i=(e.plugins||[]).reduce(function(e,n){if(p(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]=$,e.apply({instance:$},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:[]}),a=e.storage?e.storage:{getItem:_,setItem:O,removeItem:N},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&h(r)&&r[n]?r[n]:ne(e)[n]||_(te(n))||null)}}(a),s=i.plugins,l=i.events.filter(function(e){return!F.includes(e)}).sort(),f=new Set(l.concat(H).filter(function(e){return!F.includes(e)})),d=Array.from(f).sort(),g=function(){return s},v=new xe,y=v.addMiddleware,b=v.removeMiddleware,w=v.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},x=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=I(n[1]),o=I(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(E(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(u&&window.location.search.substring(1)),k=ne(a),z=n({},k,r,x.an_uid?{userId:x.an_uid}:{},x.an_aid?{anonymousId:x.an_aid}:{});z.anonymousId||(z.anonymousId=P());var L=n({enable:function(e,n){return new Promise(function(t){ue.dispatch({type:Z.enablePlugin,plugins:Ge(e),_:{originalAction:Z.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ue.dispatch({type:Z.disablePlugin,plugins:Ge(e),_:{originalAction:Z.disablePlugin}},t,[n])})}},i.methods),R=!1,$={identify:function(e,t,r,i){try{var o=m(e)?e:null,a=h(e)?e:t,u=r||{},s=$.user();O(te(J),o);var l=o||a.userId||c(J,$,a);return Promise.resolve(new Promise(function(e){ue.dispatch(n({type:Z.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=h(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var o=h(e)?e:n||{},a=h(t)?t:{};return Promise.resolve(new Promise(function(e){ue.dispatch({type:Z.trackStart,event:i,properties:o,options:a,userId:c(J,$,n),anonymousId:c(W,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=h(e)?e:{},i=h(n)?n:{};return Promise.resolve(new Promise(function(o){ue.dispatch({type:Z.pageStart,properties:Ve(r),options:i,userId:c(J,$,r),anonymousId:c(W,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===J||"id"===e)return c(J,$);if(e===W||"anonId"===e)return c(W,$);var n=$.getState("user");return e?o(n,e):n},reset:function(e){return new Promise(function(n){ue.dispatch({type:Z.resetStart},n,e)})},ready:function(e){return R&&e({plugins:L,instance:$}),$.on(Z.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!p(n))return!1;if(e===Z.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Ye),y(i,en),function(){b(r,Ye),b(i,en)}}var o=e.match(t)?Ye:en,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:S}),t(r)}}};return y(a,o),function(){return b(a,o)}},once:function(e,n){if(!e||!p(n))return!1;if(e===Z.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:S}),t()});return t},getState:function(e){var n=ue.getState();return e?o(n,e):Object.assign({},n)},dispatch:function(e){var t=m(e)?{type:e}:e;if(H.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});ue.dispatch(r)},enablePlugin:L.enable,disablePlugin:L.disable,plugins:L,storage:{getItem:a.getItem,setItem:function(e,n,t){ue.dispatch({type:Z.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ue.dispatch({type:Z.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(V,e,n)},events:{core:H,plugins:l}},B=i.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ke()),e(n)}}},w(Ye),Pe($,g,{all:d,plugins:l}),Se(a),Y($),re($),w(en)]),X={context:Xe,user:ee(a),page:$e,track:ke,plugins:_e(g),queue:Me},G=C,K=C;if(u&&e.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(G=Q({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?Fe():h(typeof arguments[0])?Ze():Ze().apply(null,arguments)}}var ie=function(e){return Object.keys(e).reduce(function(n,t){return Je.includes(t)||(n[t]=e[t]),n},{})}(e),oe=i.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,o=n.loaded,a=i.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(o({config:r})),config:r},e},{}),ae={context:ie,user:z,plugins:oe},ue=U(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===j&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:T})===A||typeof t(void 0,{type:M})===A)throw new Error("reducer "+n+" "+A)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===A){var f=q(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},X,t)),ae,K(G(D.apply(void 0,B))));ue.dispatch=function(e){return function(t,r,i){var o=n({},t,{meta:Ke(t.meta,r,Ge(i))});return e.apply(null,[o])}}(ue.dispatch);var se=Object.keys(s);ue.dispatch({type:Z.bootstrap,plugins:se,config:ie,params:x,user:z,initialUser:r,persistedUser:k});var le=se.filter(function(e){return i.pluginEnabled[e]}),fe=se.filter(function(e){return!i.pluginEnabled[e]});return ue.dispatch({type:Z.registerPlugins,plugins:se,enabled:i.pluginEnabled}),i.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,o=e.name;t&&p(t)&&t({instance:$,config:r,payload:e}),ue.dispatch({type:Z.registerPluginType(o),name:o,enabled:i.pluginEnabled[o],plugin:e}),i.pluginsArray.length===n+1&&ue.dispatch({type:Z.initializeStart,plugins:le,disabled:fe})}),He(function(e){ue.dispatch({type:e?Z.offline:Z.online})}),function(e,n,t){setInterval(function(){return ce(e,n,t)},3e3)}(ue,g,$),$}var Ye="before",en="after";return e.Analytics=Qe,e.CONSTANTS=B,e.EVENTS=Z,e.default=Qe,e.init=Qe,e}({});
//# sourceMappingURL=core.js.map

@@ -1,2 +0,2 @@

!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e||self)._analytics={})}(this,function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t=function(e){var n={exports:{}};return 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}}(n),n.exports}(),r=t,i="object";"undefined"==typeof process||process;var o="undefined"!=typeof document;function a(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,o&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var u=a.bind(null,"toUpperCase"),c=a.bind(null,"toLowerCase");function s(e,n){void 0===n&&(n=!0);var t=function(e){return m(e)?u("null"):"object"==typeof e?function(e){return f(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?c(t):t}function l(e,n){return typeof n===e}var f=l.bind(null,"function"),d=l.bind(null,"string");l.bind(null,"undefined");var p=l.bind(null,"boolean");function m(e){return null===e}function g(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function v(e,n){if("object"!=typeof n||m(n))return!1;if(n instanceof e)return!0;var t=s(new e(""));if(function(e){return e instanceof Error||d(e.message)&&e.constructor&&function(e){return"number"===s(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(s(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function h(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 y(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function b(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function w(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function I(){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}l.bind(null,"symbol"),v.bind(null,TypeError),v.bind(null,SyntaxError),y(h,"form"),y(h,"button"),y(h,"input"),y(h,"select");var E="__global__",P=typeof self===i&&self.self===self&&self||typeof global===i&&global.global===global&&global||void 0;function x(e){return P[E][e]}function S(e,n){return P[E][e]=n}function _(e){delete P[E][e]}P[E]||(P[E]={});var O="function",j="undefined",N="@@redux/",A=N+"INIT",k=N+Math.random().toString(36),T=/* #__PURE__ */function(){return typeof Symbol===O&&Symbol.observable||"@@observable"}(),M=" != "+O;function z(e,n,t){var r;if(typeof n===O&&typeof t===j&&(t=n,n=void 0),typeof t!==j){if(typeof t!==O)throw new Error("enhancer"+M);return t(z)(e,n)}if(typeof e!==O)throw new Error("reducer"+M);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==O)throw new Error("Listener"+M);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(!g(e))throw new Error("Act != obj");if(typeof e.type===j)throw new Error("ActType "+j);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:A}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==O)throw new Error("next reducer"+M);i=e,d({type:A})}})[T]=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)}}})[T]=function(){return this},e},r}function L(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+j}function U(){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 q(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=U.apply(void 0,a)(u.dispatch)})}}}var C="__anon_id",D="__user_id",V="__user_traits",R={__proto__:null,ANON_ID:C,USER_ID:D,USER_TRAITS:V},$="analytics",B="userId",X="anonymousId",J=["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"],W=["name","EVENTS","config","loaded"],H=J.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),F=/^utm_/,Z=/^an_prop_/,G=/^an_trait_/;function K(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===H.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(C,u.anonymousId),l||t(D,u.userId),s.traits&&t(V,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(F)||n.match(/^(d|g)clid/)){var t=n.replace(F,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(Z)&&(e.props[n.replace(Z,"")]=a[n]),n.match(G)&&(e.traits[n.replace(G,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:H.params,raw:a},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&&r.dispatch({type:H.campaign,campaign:m.campaign})}}return i(o)}}}}function Q(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===H.setItemEnd){if(r.key===C)return n({},t,{anonymousId:r.value});if(r.key===D)return n({},t,{userId:r.value})}switch(r.type){case H.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case H.reset:return[D,C,V].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Y(e){return{userId:e.getItem(D),anonymousId:e.getItem(C),traits:e.getItem(V)}}var ee=function(e){return"__TEMP__"+e};function ne(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===H.reset&&([D,V,C].forEach(function(e){i(e)}),[B,X,"traits"].forEach(function(e){_(ee(e))})),a.type===H.identify){o(C)||r(C,I());var l=o(D),f=o(V)||{};l&&l!==u&&e.dispatch({type:H.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(D,u),c&&r(V,n({},f,c))}return t(a)}}}}var te={};function re(e,n){te[e]&&f(te[e])&&(te[e](n),delete te[e])}function ie(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ie(e,t,r-10).then(i,o)})})}function oe(e,t,r){var i=t(),o=e.getState(),a=o.plugins,u=o.queue,c=o.user;if(!o.context.offline&&u&&u.actions&&u.actions.length){var s=u.actions.reduce(function(e,n,t){return a[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(s.processIndex&&s.processIndex.length){s.processIndex.forEach(function(t){var o=u.actions[t],s=o.plugin,l=o.payload.type,d=i[s][l];if(d&&f(d)){var p=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[B,X].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(o.payload,c);d({payload:p,config:a[s].config,instance:r});var m=l+":"+s;e.dispatch(n({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var l=u.actions.filter(function(e,n){return!~s.processIndex.indexOf(n)});u.actions=l}}}var ae=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,d=o.context,p=r.type,m=p.match(ue),v=t.exact.map(function(e){return e.pluginName});m&&(v=u.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(ue)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&ve(u)?u:r;if(i&&(!(s=u&&ve(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:be(r),instance:e,config:a||{},abort:s}}}(i,v),y=t.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),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&f(t.method)?(function(e,n){var t=ye(e);if(t&&t.name===n){var r=ye(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:p,from:u||o}})}),config:fe(t.pluginName,l,a),plugins:l})).then(function(t){var r=g(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,d=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),me(r,f))return le({data:r,method:p,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(me(t,f))return s&&le({data:t,method:p,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[f],a[f]);return Promise.resolve(d[p]({abort:o.abort,payload:r,instance:i,config:fe(f,l,a),plugins:l})).then(function(o){var a=g(o)?o:{},u=n({},t,a),s=e[f];if(me(s,f))le({data:s,method:p,instance:i,pluginName:f,store:c});else{var l=p+":"+f;(l.match(/:/g)||[]).length<2&&!p.match(ce)&&!p.match(se)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(p.match(ue)||p.match(/^registerPlugin/)||p.match(se)||p.match(ce)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ge(e,t.exact.length)&&!p.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},ue=/Start$/,ce=/^bootstrap/,se=/^ready/;function le(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function fe(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function de(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function pe(e,n){var t=e.replace(ue,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function me(e,n){var t=e.abort;return!!t&&(!0===t||he(t,n)||t&&he(t.plugins,n))}function ge(e,n){var t=e.abort;if(!t)return!1;if(!0===t||d(t))return!0;var r=t.plugins;return ve(t)&&t.length===n||ve(r)&&r.length===n}function ve(e){return Array.isArray(e)}function he(e,n){return!(!e||!ve(e))&&e.includes(n)}function ye(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function be(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=g(e[t])?Object.assign({},e[t]):e[t]),n},{})}function we(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(m)},l=u.type,d=u.plugins,m=u;if(u.abort)return Promise.resolve(a(u));if(l===H.enablePlugin&&o.dispatch({type:H.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:u.meta}),l===H.disablePlugin&&setTimeout(function(){return re(u.meta.rid,{payload:u})},0),l===H.initializeEnd){var g=t(),v=Object.keys(g),h=v.filter(function(e){return d.includes(e)}).map(function(e){return g[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ie(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:H.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!W.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:H.ready},t))},0)})}var E=function(){if(l!==H.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return oe(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=f(t)?t():t,u=e.type,c=u.replace(ue,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(g=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(g).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return g[e]}));u===H.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 a[e]}));var d=l.map(function(e){return e.name}),m=function(e,n,t){var r=pe(e).map(function(e){return de(e,n)});return n.reduce(function(t,r){var i=r.name,o=pe(e,i).map(function(e){return de(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(ae({action:e,data:{exact:m.before,namespaced:m.beforeNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(ue))return Promise.resolve(ae({action:n({},l,{type:c+"End"}),data:{exact:m.after,namespaced:m.afterNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&re(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ge(e,d.length))return e;var l,f=function(){if(u!==c)return Promise.resolve(ae({action:n({},e,{type:c}),data:{exact:m.during,namespaced:m.duringNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var g,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Ie(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===H.setItem||r===H.removeItem){if(t.abort)return n(t);r===H.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var Ee=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return U.apply(void 0,a)(r)(i)}}}}};function Pe(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=xe(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=xe(r.type,H.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case H.disablePlugin:return n({},t,Se(r.plugins,!1,t));case H.enablePlugin:return n({},t,Se(r.plugins,!0,t));default:return t}}}function xe(e,n){return e.substring(n.length+1,e.length)}function Se(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function _e(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var Oe={last:{},history:[]};function je(e,t){void 0===e&&(e=Oe);var r=t.options,i=t.meta;if(t.type===H.track){var o=_e(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var Ne={actions:[]};function Ae(e,t){void 0===e&&(e=Ne);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===H.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var ke=/#.*$/;function Te(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(ke,""):"")}var Me,ze,Le,Ue,qe=function(e){if(void 0===e&&(e={}),!o)return e;var t=document,r=t.title,i=t.referrer,a=window,u=a.location,c=a.innerWidth,s=a.innerHeight,l=u.hash,f=u.search,d=function(e){var n=function(){if(o)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(ke,"")}(f),p={title:r,url:d,path:Te(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},Ce={last:{},history:[]};function De(e,t){void 0===e&&(e=Ce);var r=t.options;if(t.type===H.page){var i=_e(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}Me=function(){if(!o)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"}(),ze=o?document.referrer:null,Le=function(){if(o){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),Ue=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var Ve={initialized:!1,sessionId:I(),app:null,version:null,debug:!1,offline:!!o&&!navigator.onLine,os:{name:Me},userAgent:o?navigator.userAgent:"node",library:{name:$,version:"0.12.5"},timezone:Ue,locale:Le,campaign:{},referrer:ze};function Re(e,t){void 0===e&&(e=Ve);var r=e.initialized,i=t.campaign;switch(t.type){case H.campaign:return n({},e,{campaign:i});case H.offline:return n({},e,{offline:!0});case H.online:return n({},e,{offline:!1});default:return r?e:n({},Ve,e,{initialized:!0})}}var $e=["plugins","reducers","storage"];function Be(e,n,t){if(o){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Xe(e){var n=Be.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Je(){return S($,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return P[E].analytics.push(e.action||e),o(e)}})}}}function We(e){return function(){return U(U.apply(null,arguments),Je())}}function He(e){return e?function(e){return"array"===s(e)}(e)?e:[e]:[]}function Fe(e,t,r){void 0===e&&(e={});var i,o,a=I();return t&&(te[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(f(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ze(e){void 0===e&&(e={});var t=e.reducers||{},i=e.initialUser||{},a=(e.plugins||[]).reduce(function(e,n){if(f(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=$,r.apply({instance:$},n)}),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:[]}),u=e.storage?e.storage:{getItem:x,setItem:S,removeItem:_},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&g(r)&&r[n]?r[n]:Y(e)[n]||x(ee(n))||null)}}(u),s=a.plugins,l=a.events.filter(function(e){return!W.includes(e)}).sort(),p=new Set(l.concat(J).filter(function(e){return!W.includes(e)})),m=Array.from(p).sort(),v=function(){return s},h=new Ee,y=h.addMiddleware,E=h.removeMiddleware,P=h.dynamicMiddlewares,N=function(){throw new Error("Abort disabled inListener")},T=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=b(n[1]),o=b(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(w(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(o&&window.location.search.substring(1)),M=Y(u),D=n({},M,i,T.an_uid?{userId:T.an_uid}:{},T.an_aid?{anonymousId:T.an_aid}:{});D.anonymousId||(D.anonymousId=I());var V=n({enable:function(e,n){return new Promise(function(t){se.dispatch({type:H.enablePlugin,plugins:He(e),_:{originalAction:H.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){se.dispatch({type:H.disablePlugin,plugins:He(e),_:{originalAction:H.disablePlugin}},t,[n])})}},a.methods),R=!1,$={identify:function(e,t,r,i){try{var o=d(e)?e:null,a=g(e)?e:t,u=r||{},s=$.user();S(ee(B),o);var l=o||a.userId||c(B,$,a);return Promise.resolve(new Promise(function(e){se.dispatch(n({type:H.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=g(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var o=g(e)?e:n||{},a=g(t)?t:{};return Promise.resolve(new Promise(function(e){se.dispatch({type:H.trackStart,event:i,properties:o,options:a,userId:c(B,$,n),anonymousId:c(X,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=g(e)?e:{},i=g(n)?n:{};return Promise.resolve(new Promise(function(o){se.dispatch({type:H.pageStart,properties:qe(r),options:i,userId:c(B,$,r),anonymousId:c(X,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===B||"id"===e)return c(B,$);if(e===X||"anonId"===e)return c(X,$);var n=$.getState("user");return e?r(n,e):n},reset:function(e){return new Promise(function(n){se.dispatch({type:H.resetStart},n,e)})},ready:function(e){return R&&e({plugins:V,instance:$}),$.on(H.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!f(n))return!1;if(e===H.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Ge),y(i,Ke),function(){E(r,Ge),E(i,Ke)}}var o=e.match(t)?Ge:Ke,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:N}),t(r)}}};return y(a,o),function(){return E(a,o)}},once:function(e,n){if(!e||!f(n))return!1;if(e===H.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:N}),t()});return t},getState:function(e){var n=se.getState();return e?r(n,e):Object.assign({},n)},dispatch:function(e){var t=d(e)?{type:e}:e;if(J.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});se.dispatch(r)},enablePlugin:V.enable,disablePlugin:V.disable,plugins:V,storage:{getItem:u.getItem,setItem:function(e,n,t){se.dispatch({type:H.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){se.dispatch({type:H.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(C,e,n)},events:{core:J,plugins:l}},F=a.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Fe()),e(n)}}},P(Ge),we($,v,{all:m,plugins:l}),Ie(u),K($),ne($),P(Ke)]),Z={context:Re,user:Q(u),page:De,track:je,plugins:Pe(v),queue:Ae},G=U,te=U;if(o&&e.debug){var re=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;re&&(G=re({trace:!0,traceLimit:25})),te=function(){return 0===arguments.length?Je():g(typeof arguments[0])?We():We().apply(null,arguments)}}var ie,ae=function(e){return Object.keys(e).reduce(function(n,t){return $e.includes(t)||(n[t]=e[t]),n},{})}(e),ue=a.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,o=a.pluginEnabled[t];return e[t]={enabled:o,initialized:!!o&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ce={context:ae,user:D,plugins:ue},se=z(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===O&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:A})===j||typeof t(void 0,{type:k})===j)throw new Error("reducer "+n+" "+j)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===j){var f=L(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},Z,t)),ce,te(G(q.apply(void 0,F))));se.dispatch=(ie=se.dispatch,function(e,t,r){var i=n({},e,{meta:Fe(e.meta,t,He(r))});return ie.apply(null,[i])});var le=Object.keys(s);se.dispatch({type:H.bootstrap,plugins:le,config:ae,params:T,user:D,initialUser:i,persistedUser:M});var fe=le.filter(function(e){return a.pluginEnabled[e]}),de=le.filter(function(e){return!a.pluginEnabled[e]});return se.dispatch({type:H.registerPlugins,plugins:le,enabled:a.pluginEnabled}),a.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&f(t)&&t({instance:$,config:r,payload:e}),se.dispatch({type:H.registerPluginType(i),name:i,enabled:a.pluginEnabled[i],plugin:e}),a.pluginsArray.length===n+1&&se.dispatch({type:H.initializeStart,plugins:fe,disabled:de})}),Xe(function(e){se.dispatch({type:e?H.offline:H.online})}),function(e,n,t){setInterval(function(){return oe(e,n,t)},3e3)}(se,v,$),$}var Ge="before",Ke="after";e.Analytics=Ze,e.CONSTANTS=R,e.EVENTS=H,e.default=Ze,e.init=Ze});
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e||self)._analytics={})}(this,function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t=function(e){var n={exports:{}};return 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}}(n),n.exports}(),r=t,i="object";"undefined"==typeof process||process;var o="undefined"!=typeof document;function a(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,o&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var u=a.bind(null,"toUpperCase"),c=a.bind(null,"toLowerCase");function s(e,n){void 0===n&&(n=!0);var t=function(e){return m(e)?u("null"):"object"==typeof e?function(e){return f(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?c(t):t}function l(e,n){return typeof n===e}var f=l.bind(null,"function"),d=l.bind(null,"string");l.bind(null,"undefined");var p=l.bind(null,"boolean");function m(e){return null===e}function g(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function v(e,n){if("object"!=typeof n||m(n))return!1;if(n instanceof e)return!0;var t=s(new e(""));if(function(e){return e instanceof Error||d(e.message)&&e.constructor&&function(e){return"number"===s(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(s(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function h(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 y(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function b(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function w(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function I(){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}l.bind(null,"symbol"),v.bind(null,TypeError),v.bind(null,SyntaxError),y(h,"form"),y(h,"button"),y(h,"input"),y(h,"select");var E="__global__",P=typeof self===i&&self.self===self&&self||typeof global===i&&global.global===global&&global||void 0;function x(e){return P[E][e]}function S(e,n){return P[E][e]=n}function _(e){delete P[E][e]}P[E]||(P[E]={});var O="function",j="undefined",N="@@redux/",A=N+"INIT",k=N+Math.random().toString(36),T=/* #__PURE__ */function(){return typeof Symbol===O&&Symbol.observable||"@@observable"}(),M=" != "+O;function z(e,n,t){var r;if(typeof n===O&&typeof t===j&&(t=n,n=void 0),typeof t!==j){if(typeof t!==O)throw new Error("enhancer"+M);return t(z)(e,n)}if(typeof e!==O)throw new Error("reducer"+M);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==O)throw new Error("Listener"+M);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(!g(e))throw new Error("Act != obj");if(typeof e.type===j)throw new Error("ActType "+j);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:A}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==O)throw new Error("next reducer"+M);i=e,d({type:A})}})[T]=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)}}})[T]=function(){return this},e},r}function L(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+j}function U(){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 q(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=U.apply(void 0,a)(u.dispatch)})}}}var C="__anon_id",D="__user_id",V="__user_traits",R={__proto__:null,ANON_ID:C,USER_ID:D,USER_TRAITS:V},$="analytics",B="userId",X="anonymousId",J=["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"],W=["name","EVENTS","config","loaded"],H=J.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),F=/^utm_/,Z=/^an_prop_/,G=/^an_trait_/;function K(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===H.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(C,u.anonymousId),l||t(D,u.userId),s.traits&&t(V,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(F)||n.match(/^(d|g)clid/)){var t=n.replace(F,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(Z)&&(e.props[n.replace(Z,"")]=a[n]),n.match(G)&&(e.traits[n.replace(G,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:H.params,raw:a},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&&r.dispatch({type:H.campaign,campaign:m.campaign})}}return i(o)}}}}function Q(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===H.setItemEnd){if(r.key===C)return n({},t,{anonymousId:r.value});if(r.key===D)return n({},t,{userId:r.value})}switch(r.type){case H.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case H.reset:return[D,C,V].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Y(e){return{userId:e.getItem(D),anonymousId:e.getItem(C),traits:e.getItem(V)}}var ee=function(e){return"__TEMP__"+e};function ne(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===H.reset&&([D,V,C].forEach(function(e){i(e)}),[B,X,"traits"].forEach(function(e){_(ee(e))})),a.type===H.identify){o(C)||r(C,I());var l=o(D),f=o(V)||{};l&&l!==u&&e.dispatch({type:H.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(D,u),c&&r(V,n({},f,c))}return t(a)}}}}var te={};function re(e,n){te[e]&&f(te[e])&&(te[e](n),delete te[e])}function ie(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ie(e,t,r-10).then(i,o)})})}function oe(e){return{abort:e}}function ae(e,t,r){var i={},o=t(),a=e.getState(),u=a.plugins,c=a.queue,s=a.user;if(!a.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(t){var a=c.actions[t],l=a.plugin,d=a.payload.type,p=o[l][d];if(p&&f(p)){var m,v=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[B,X].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(a.payload,s),h=i[v.meta.rid];if(!h&&(m=p({payload:v,config:u[l].config,instance:r,abort:oe}))&&g(m)&&m.abort)return void(i[v.meta.rid]=!0);if(!h){var y=d+":"+l;e.dispatch(n({},v,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=c.actions.filter(function(e,n){return!~l.processIndex.indexOf(n)});c.actions=d}}}var ue=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,d=o.context,p=r.type,m=p.match(ce),v=t.exact.map(function(e){return e.pluginName});m&&(v=u.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(ce)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&he(u)?u:r;if(i&&(!(s=u&&he(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:we(r),instance:e,config:a||{},abort:s}}}(i,v),y=t.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),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&f(t.method)?(function(e,n){var t=be(e);if(t&&t.name===n){var r=be(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:p,from:u||o}})}),config:de(t.pluginName,l,a),plugins:l})).then(function(t){var r=g(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,d=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),ge(r,f))return fe({data:r,method:p,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(ge(t,f))return s&&fe({data:t,method:p,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[f],a[f]);return Promise.resolve(d[p]({abort:o.abort,payload:r,instance:i,config:de(f,l,a),plugins:l})).then(function(o){var a=g(o)?o:{},u=n({},t,a),s=e[f];if(ge(s,f))fe({data:s,method:p,instance:i,pluginName:f,store:c});else{var l=p+":"+f;(l.match(/:/g)||[]).length<2&&!p.match(se)&&!p.match(le)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(p.match(ce)||p.match(/^registerPlugin/)||p.match(le)||p.match(se)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ve(e,t.exact.length)&&!p.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},ce=/Start$/,se=/^bootstrap/,le=/^ready/;function fe(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function de(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function pe(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function me(e,n){var t=e.replace(ce,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function ge(e,n){var t=e.abort;return!!t&&(!0===t||ye(t,n)||t&&ye(t.plugins,n))}function ve(e,n){var t=e.abort;if(!t)return!1;if(!0===t||d(t))return!0;var r=t.plugins;return he(t)&&t.length===n||he(r)&&r.length===n}function he(e){return Array.isArray(e)}function ye(e,n){return!(!e||!he(e))&&e.includes(n)}function be(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function we(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=g(e[t])?Object.assign({},e[t]):e[t]),n},{})}function Ie(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(m)},l=u.type,d=u.plugins,m=u;if(u.abort)return Promise.resolve(a(u));if(l===H.enablePlugin&&o.dispatch({type:H.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:u.meta}),l===H.disablePlugin&&setTimeout(function(){return re(u.meta.rid,{payload:u})},0),l===H.initializeEnd){var g=t(),v=Object.keys(g),h=v.filter(function(e){return d.includes(e)}).map(function(e){return g[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ie(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:H.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!W.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:H.ready},t))},0)})}var E=function(){if(l!==H.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return ae(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=f(t)?t():t,u=e.type,c=u.replace(ce,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(g=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(g).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return g[e]}));u===H.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 a[e]}));var d=l.map(function(e){return e.name}),m=function(e,n,t){var r=me(e).map(function(e){return pe(e,n)});return n.reduce(function(t,r){var i=r.name,o=me(e,i).map(function(e){return pe(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(ue({action:e,data:{exact:m.before,namespaced:m.beforeNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(ce))return Promise.resolve(ue({action:n({},l,{type:c+"End"}),data:{exact:m.after,namespaced:m.afterNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&re(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ve(e,d.length))return e;var l,f=function(){if(u!==c)return Promise.resolve(ue({action:n({},e,{type:c}),data:{exact:m.during,namespaced:m.duringNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var g,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Ee(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===H.setItem||r===H.removeItem){if(t.abort)return n(t);r===H.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var Pe=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return U.apply(void 0,a)(r)(i)}}}}};function xe(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=Se(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=Se(r.type,H.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case H.disablePlugin:return n({},t,_e(r.plugins,!1,t));case H.enablePlugin:return n({},t,_e(r.plugins,!0,t));default:return t}}}function Se(e,n){return e.substring(n.length+1,e.length)}function _e(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function Oe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var je={last:{},history:[]};function Ne(e,t){void 0===e&&(e=je);var r=t.options,i=t.meta;if(t.type===H.track){var o=Oe(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var Ae={actions:[]};function ke(e,t){void 0===e&&(e=Ae);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===H.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var Te=/#.*$/;function Me(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Te,""):"")}var ze,Le,Ue,qe,Ce=function(e){if(void 0===e&&(e={}),!o)return e;var t=document,r=t.title,i=t.referrer,a=window,u=a.location,c=a.innerWidth,s=a.innerHeight,l=u.hash,f=u.search,d=function(e){var n=function(){if(o)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(Te,"")}(f),p={title:r,url:d,path:Me(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},De={last:{},history:[]};function Ve(e,t){void 0===e&&(e=De);var r=t.options;if(t.type===H.page){var i=Oe(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}ze=function(){if(!o)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"}(),Le=o?document.referrer:null,Ue=function(){if(o){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),qe=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var Re={initialized:!1,sessionId:I(),app:null,version:null,debug:!1,offline:!!o&&!navigator.onLine,os:{name:ze},userAgent:o?navigator.userAgent:"node",library:{name:$,version:"0.12.7"},timezone:qe,locale:Ue,campaign:{},referrer:Le};function $e(e,t){void 0===e&&(e=Re);var r=e.initialized,i=t.campaign;switch(t.type){case H.campaign:return n({},e,{campaign:i});case H.offline:return n({},e,{offline:!0});case H.online:return n({},e,{offline:!1});default:return r?e:n({},Re,e,{initialized:!0})}}var Be=["plugins","reducers","storage"];function Xe(e,n,t){if(o){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Je(e){var n=Xe.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function We(){return S($,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return P[E].analytics.push(e.action||e),o(e)}})}}}function He(e){return function(){return U(U.apply(null,arguments),We())}}function Fe(e){return e?function(e){return"array"===s(e)}(e)?e:[e]:[]}function Ze(e,t,r){void 0===e&&(e={});var i,o,a=I();return t&&(te[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(f(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ge(e){void 0===e&&(e={});var t=e.reducers||{},i=e.initialUser||{},a=(e.plugins||[]).reduce(function(e,n){if(f(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=$,r.apply({instance:$},n)}),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:[]}),u=e.storage?e.storage:{getItem:x,setItem:S,removeItem:_},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&g(r)&&r[n]?r[n]:Y(e)[n]||x(ee(n))||null)}}(u),s=a.plugins,l=a.events.filter(function(e){return!W.includes(e)}).sort(),p=new Set(l.concat(J).filter(function(e){return!W.includes(e)})),m=Array.from(p).sort(),v=function(){return s},h=new Pe,y=h.addMiddleware,E=h.removeMiddleware,P=h.dynamicMiddlewares,N=function(){throw new Error("Abort disabled inListener")},T=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=b(n[1]),o=b(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(w(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(o&&window.location.search.substring(1)),M=Y(u),D=n({},M,i,T.an_uid?{userId:T.an_uid}:{},T.an_aid?{anonymousId:T.an_aid}:{});D.anonymousId||(D.anonymousId=I());var V=n({enable:function(e,n){return new Promise(function(t){se.dispatch({type:H.enablePlugin,plugins:Fe(e),_:{originalAction:H.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){se.dispatch({type:H.disablePlugin,plugins:Fe(e),_:{originalAction:H.disablePlugin}},t,[n])})}},a.methods),R=!1,$={identify:function(e,t,r,i){try{var o=d(e)?e:null,a=g(e)?e:t,u=r||{},s=$.user();S(ee(B),o);var l=o||a.userId||c(B,$,a);return Promise.resolve(new Promise(function(e){se.dispatch(n({type:H.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=g(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var o=g(e)?e:n||{},a=g(t)?t:{};return Promise.resolve(new Promise(function(e){se.dispatch({type:H.trackStart,event:i,properties:o,options:a,userId:c(B,$,n),anonymousId:c(X,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=g(e)?e:{},i=g(n)?n:{};return Promise.resolve(new Promise(function(o){se.dispatch({type:H.pageStart,properties:Ce(r),options:i,userId:c(B,$,r),anonymousId:c(X,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===B||"id"===e)return c(B,$);if(e===X||"anonId"===e)return c(X,$);var n=$.getState("user");return e?r(n,e):n},reset:function(e){return new Promise(function(n){se.dispatch({type:H.resetStart},n,e)})},ready:function(e){return R&&e({plugins:V,instance:$}),$.on(H.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!f(n))return!1;if(e===H.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Ke),y(i,Qe),function(){E(r,Ke),E(i,Qe)}}var o=e.match(t)?Ke:Qe,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:N}),t(r)}}};return y(a,o),function(){return E(a,o)}},once:function(e,n){if(!e||!f(n))return!1;if(e===H.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:N}),t()});return t},getState:function(e){var n=se.getState();return e?r(n,e):Object.assign({},n)},dispatch:function(e){var t=d(e)?{type:e}:e;if(J.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});se.dispatch(r)},enablePlugin:V.enable,disablePlugin:V.disable,plugins:V,storage:{getItem:u.getItem,setItem:function(e,n,t){se.dispatch({type:H.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){se.dispatch({type:H.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(C,e,n)},events:{core:J,plugins:l}},F=a.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ze()),e(n)}}},P(Ke),Ie($,v,{all:m,plugins:l}),Ee(u),K($),ne($),P(Qe)]),Z={context:$e,user:Q(u),page:Ve,track:Ne,plugins:xe(v),queue:ke},G=U,te=U;if(o&&e.debug){var re=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;re&&(G=re({trace:!0,traceLimit:25})),te=function(){return 0===arguments.length?We():g(typeof arguments[0])?He():He().apply(null,arguments)}}var ie,oe=function(e){return Object.keys(e).reduce(function(n,t){return Be.includes(t)||(n[t]=e[t]),n},{})}(e),ue=a.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,o=a.pluginEnabled[t];return e[t]={enabled:o,initialized:!!o&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ce={context:oe,user:D,plugins:ue},se=z(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===O&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:A})===j||typeof t(void 0,{type:k})===j)throw new Error("reducer "+n+" "+j)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===j){var f=L(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},Z,t)),ce,te(G(q.apply(void 0,F))));se.dispatch=(ie=se.dispatch,function(e,t,r){var i=n({},e,{meta:Ze(e.meta,t,Fe(r))});return ie.apply(null,[i])});var le=Object.keys(s);se.dispatch({type:H.bootstrap,plugins:le,config:oe,params:T,user:D,initialUser:i,persistedUser:M});var fe=le.filter(function(e){return a.pluginEnabled[e]}),de=le.filter(function(e){return!a.pluginEnabled[e]});return se.dispatch({type:H.registerPlugins,plugins:le,enabled:a.pluginEnabled}),a.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&f(t)&&t({instance:$,config:r,payload:e}),se.dispatch({type:H.registerPluginType(i),name:i,enabled:a.pluginEnabled[i],plugin:e}),a.pluginsArray.length===n+1&&se.dispatch({type:H.initializeStart,plugins:fe,disabled:de})}),Je(function(e){se.dispatch({type:e?H.offline:H.online})}),function(e,n,t){setInterval(function(){return ae(e,n,t)},3e3)}(se,v,$),$}var Ke="before",Qe="after";e.Analytics=Ge,e.CONSTANTS=R,e.EVENTS=H,e.default=Ge,e.init=Ge});
//# sourceMappingURL=core.umd.js.map

@@ -1,2 +0,2 @@

var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var x=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function A(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(x(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var _={};function k(e,t){_[e]&&n.isFunction(_[e])&&(_[e](t),delete _[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}function z(e,t,i){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&n.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:i});var m=f+":"+l;e.dispatch(r({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}var M=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(q),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(q)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&$(u)?u:n;if(i&&(!(s=u&&$(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:W(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=J(e);if(n&&n.name===t){var r=J(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:L(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),C(i,d))return R({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(C(t,d))return l&&R({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:L(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if(C(l,d))R({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(B)&&!p.match(F)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(q)||p.match(/^registerPlugin/)||p.match(F)||p.match(B)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});X(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},q=/Start$/,B=/^bootstrap/,F=/^ready/;function R(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function L(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function U(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function V(e,t){var n=e.replace(q,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function C(e,t){var n=e.abort;return!!n&&(!0===n||D(n,t)||n&&D(n.plugins,t))}function X(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return $(r)&&r.length===t||$(i)&&i.length===t}function $(e){return Array.isArray(e)}function D(e,t){return!(!e||!$(e))&&e.includes(t)}function J(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function W(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function H(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),v=[],y=[],b=c.disabled,E=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),v=v.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return y=y.concat(e.name),e})});Promise.all(E).then(function(e){var t={plugins:v,failed:y,disabled:b};setTimeout(function(){g.length===E.length+b.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var P=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return z(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(q,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=V(e).map(function(e){return U(e,t)});return t.reduce(function(n,r){var i=r.name,a=V(e,i).map(function(e){return U(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(M({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(q))return Promise.resolve(M({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(X(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(M({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function K(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Y=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function Z(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=G(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=G(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,Q(n.plugins,!1,t));case w.enablePlugin:return r({},t,Q(n.plugins,!0,t));default:return t}}}function G(e,t){return e.substring(t.length+1,e.length)}function Q(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function ee(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var te={last:{},history:[]};function ne(e,t){void 0===e&&(e=te);var n=t.options,i=t.meta;if(t.type===w.track){var a=ee(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var re={actions:[]};function ie(e,t){void 0===e&&(e=re);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var ae=/#.*$/;function oe(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ae,""):"")}var ue,ce,se,le,fe=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ae,"")}(f),p={title:i,url:d,path:oe(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},de={last:{},history:[]};function pe(e,t){void 0===e&&(e=de);var n=t.options;if(t.type===w.page){var i=ee(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}ue=function(){if(!n.isBrowser)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"}(),ce=n.isBrowser?document.referrer:null,se=e.getBrowserLocale(),le=e.getTimeZone();var me={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:ue},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:le,locale:se,campaign:{},referrer:ce};function ge(e,t){void 0===e&&(e=me);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},me,e,{initialized:!0})}}var he=["plugins","reducers","storage"];function ve(e,t,r){if(n.isBrowser){var i=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function ye(e){var t=ve.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function be(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function Ie(e){return function(){return f(f.apply(null,arguments),be())}}function we(e){return e?n.isArray(e)?e:[e]:[]}function Ee(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(_[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function Pe(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=$,r.apply({instance:$},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(x(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),_=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(_).sort(),T=function(){return P},M=new Y,q=M.addMiddleware,B=M.removeMiddleware,F=M.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=e.paramsParse(),U=N(h),V=r({},U,m,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var C=r({enable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.enablePlugin,plugins:we(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.disablePlugin,plugins:we(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),X=!1,$={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=$.user();t.set(x(v),u);var f=u||c.userId||E(v,$,c);return Promise.resolve(new Promise(function(e){oe.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){oe.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,$,t),anonymousId:E(y,$,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){oe.dispatch({type:w.pageStart,properties:fe(i),options:a,userId:E(v,$,i),anonymousId:E(y,$,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,$);if(t===y||"anonId"===t)return E(y,$);var n=$.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){oe.dispatch({type:w.resetStart},t,e)})},ready:function(e){return X&&e({plugins:C,instance:$}),$.on(w.ready,function(t){e(t),X=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:$,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:$,plugins:P}),e(n)}}};return q(i,Se),q(a,Oe),function(){B(i,Se),B(a,Oe)}}var o=e.match(r)?Se:Oe,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:$,plugins:P,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=$.on(e,function(e){t({payload:e.payload,instance:$,plugins:P,abort:R}),r()});return r},getState:function(t){var n=oe.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});oe.dispatch(i)},enablePlugin:C.enable,disablePlugin:C.disable,plugins:C,storage:{getItem:h.getItem,setItem:function(e,t,n){oe.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){oe.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){$.storage.setItem(p,e,t)},events:{core:b,plugins:S}},D=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Ee()),e(t)}}},F(Se),H($,T,{all:k,plugins:S}),K(h),O($),A($),F(Oe)]),J={context:ge,user:j(h),page:pe,track:ne,plugins:Z(T),queue:ie},W=f,G=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(W=Q({trace:!0,traceLimit:25})),G=function(){return 0===arguments.length?be():n.isObject(typeof arguments[0])?Ie():Ie().apply(null,arguments)}}var ee,te=function(e){return Object.keys(e).reduce(function(t,n){return he.includes(n)||(t[n]=e[n]),t},{})}(u),re=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ae={context:te,user:V,plugins:re},oe=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},J,c)),ae,G(W(d.apply(void 0,D))));oe.dispatch=(ee=oe.dispatch,function(e,t,n){var i=r({},e,{meta:Ee(e.meta,t,we(n))});return ee.apply(null,[i])});var ue=Object.keys(P);oe.dispatch({type:w.bootstrap,plugins:ue,config:te,params:L,user:V,initialUser:m,persistedUser:U});var ce=ue.filter(function(e){return g.pluginEnabled[e]}),se=ue.filter(function(e){return!g.pluginEnabled[e]});return oe.dispatch({type:w.registerPlugins,plugins:ue,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:$,config:i,payload:e}),oe.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&oe.dispatch({type:w.initializeStart,plugins:ce,disabled:se})}),ye(function(e){oe.dispatch({type:e?w.offline:w.online})}),function(e,t,n){setInterval(function(){return z(e,t,n)},3e3)}(oe,T,$),$}var Se="before",Oe="after";exports.Analytics=Pe,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=Pe,exports.init=Pe;
var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var x=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function A(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(x(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var _={};function k(e,t){_[e]&&n.isFunction(_[e])&&(_[e](t),delete _[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}function z(e){return{abort:e}}function M(e,t,i){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&n.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:i,abort:z}))&&n.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var b=d+":"+f;e.dispatch(r({},g,{type:b,_:{called:b,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}var q=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(B),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(B)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&D(u)?u:n;if(i&&(!(s=u&&D(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:H(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=W(e);if(n&&n.name===t){var r=W(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:U(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),X(i,d))return L({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(X(t,d))return l&&L({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:U(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if(X(l,d))L({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(F)&&!p.match(R)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(B)||p.match(/^registerPlugin/)||p.match(R)||p.match(F)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});$(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},B=/Start$/,F=/^bootstrap/,R=/^ready/;function L(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function U(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function V(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function C(e,t){var n=e.replace(B,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function X(e,t){var n=e.abort;return!!n&&(!0===n||J(n,t)||n&&J(n.plugins,t))}function $(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return D(r)&&r.length===t||D(i)&&i.length===t}function D(e){return Array.isArray(e)}function J(e,t){return!(!e||!D(e))&&e.includes(t)}function W(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function H(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function K(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),v=[],y=[],b=c.disabled,E=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),v=v.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return y=y.concat(e.name),e})});Promise.all(E).then(function(e){var t={plugins:v,failed:y,disabled:b};setTimeout(function(){g.length===E.length+b.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var P=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return M(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(B,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=C(e).map(function(e){return V(e,t)});return t.reduce(function(n,r){var i=r.name,a=C(e,i).map(function(e){return V(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(q({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(B))return Promise.resolve(q({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if($(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(q({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function Y(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Z=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function G(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=Q(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=Q(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,ee(n.plugins,!1,t));case w.enablePlugin:return r({},t,ee(n.plugins,!0,t));default:return t}}}function Q(e,t){return e.substring(t.length+1,e.length)}function ee(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function te(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ne={last:{},history:[]};function re(e,t){void 0===e&&(e=ne);var n=t.options,i=t.meta;if(t.type===w.track){var a=te(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var ie={actions:[]};function ae(e,t){void 0===e&&(e=ie);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var oe=/#.*$/;function ue(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(oe,""):"")}var ce,se,le,fe,de=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(oe,"")}(f),p={title:i,url:d,path:ue(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},pe={last:{},history:[]};function me(e,t){void 0===e&&(e=pe);var n=t.options;if(t.type===w.page){var i=te(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}ce=function(){if(!n.isBrowser)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"}(),se=n.isBrowser?document.referrer:null,le=e.getBrowserLocale(),fe=e.getTimeZone();var ge={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:ce},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:fe,locale:le,campaign:{},referrer:se};function he(e,t){void 0===e&&(e=ge);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},ge,e,{initialized:!0})}}var ve=["plugins","reducers","storage"];function ye(e,t,r){if(n.isBrowser){var i=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function be(e){var t=ye.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function Ie(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function we(e){return function(){return f(f.apply(null,arguments),Ie())}}function Ee(e){return e?n.isArray(e)?e:[e]:[]}function Pe(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(_[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function Se(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=$,r.apply({instance:$},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(x(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),_=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(_).sort(),T=function(){return P},z=new Z,q=z.addMiddleware,B=z.removeMiddleware,F=z.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=e.paramsParse(),U=N(h),V=r({},U,m,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var C=r({enable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.enablePlugin,plugins:Ee(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.disablePlugin,plugins:Ee(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),X=!1,$={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=$.user();t.set(x(v),u);var f=u||c.userId||E(v,$,c);return Promise.resolve(new Promise(function(e){oe.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){oe.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,$,t),anonymousId:E(y,$,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){oe.dispatch({type:w.pageStart,properties:de(i),options:a,userId:E(v,$,i),anonymousId:E(y,$,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,$);if(t===y||"anonId"===t)return E(y,$);var n=$.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){oe.dispatch({type:w.resetStart},t,e)})},ready:function(e){return X&&e({plugins:C,instance:$}),$.on(w.ready,function(t){e(t),X=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:$,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:$,plugins:P}),e(n)}}};return q(i,Oe),q(a,je),function(){B(i,Oe),B(a,je)}}var o=e.match(r)?Oe:je,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:$,plugins:P,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=$.on(e,function(e){t({payload:e.payload,instance:$,plugins:P,abort:R}),r()});return r},getState:function(t){var n=oe.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});oe.dispatch(i)},enablePlugin:C.enable,disablePlugin:C.disable,plugins:C,storage:{getItem:h.getItem,setItem:function(e,t,n){oe.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){oe.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){$.storage.setItem(p,e,t)},events:{core:b,plugins:S}},D=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Pe()),e(t)}}},F(Oe),K($,T,{all:k,plugins:S}),Y(h),O($),A($),F(je)]),J={context:he,user:j(h),page:me,track:re,plugins:G(T),queue:ae},W=f,H=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(W=Q({trace:!0,traceLimit:25})),H=function(){return 0===arguments.length?Ie():n.isObject(typeof arguments[0])?we():we().apply(null,arguments)}}var ee,te=function(e){return Object.keys(e).reduce(function(t,n){return ve.includes(n)||(t[n]=e[n]),t},{})}(u),ne=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:te,user:V,plugins:ne},oe=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},J,c)),ie,H(W(d.apply(void 0,D))));oe.dispatch=(ee=oe.dispatch,function(e,t,n){var i=r({},e,{meta:Pe(e.meta,t,Ee(n))});return ee.apply(null,[i])});var ue=Object.keys(P);oe.dispatch({type:w.bootstrap,plugins:ue,config:te,params:L,user:V,initialUser:m,persistedUser:U});var ce=ue.filter(function(e){return g.pluginEnabled[e]}),se=ue.filter(function(e){return!g.pluginEnabled[e]});return oe.dispatch({type:w.registerPlugins,plugins:ue,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:$,config:i,payload:e}),oe.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&oe.dispatch({type:w.initializeStart,plugins:ce,disabled:se})}),be(function(e){oe.dispatch({type:e?w.offline:w.online})}),function(e,t,n){setInterval(function(){return M(e,t,n)},3e3)}(oe,T,$),$}var Oe="before",je="after";exports.Analytics=Se,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=Se,exports.init=Se;
//# sourceMappingURL=analytics-core.js.map

@@ -1,2 +0,2 @@

import{uuid as e,getBrowserLocale as t,getTimeZone as n,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as s,globalContext as c,KEY as u}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as d,isFunction as p,isBoolean as f,isString as m,isBrowser as g,isArray as y}from"@analytics/type-utils";function h(){return h=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},h.apply(this,arguments)}const b="function",w="undefined",I="@@redux/"+Math.random().toString(36),E=/* #__PURE__ */(()=>typeof Symbol===b&&Symbol.observable||"@@observable")(),v=" != "+b;function S(e,t,n){if(typeof t===b&&typeof n===w&&(n=t,t=void 0),typeof n!==w){if(typeof n!==b)throw new Error("enhancer"+v);return n(S)(e,t)}if(typeof e!==b)throw new Error("reducer"+v);let r=e,i=t,a=[],o=a,s=!1;function c(){o===a&&(o=a.slice())}function u(){return i}function d(e){if(typeof e!==b)throw new Error("Listener"+v);let t=!0;return c(),o.push(e),function(){if(!t)return;t=!1,c();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===w)throw new Error("ActType "+w);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:u,replaceReducer:function(e){if(typeof e!==b)throw new Error("next reducer"+v);r=e,p({type:"@@redux/INIT"})},[E]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(u())}return n(),{unsubscribe:e(n)}},[E](){return this}}}}}function P(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+w}function N(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const O=d+"anon_id",A=d+"user_id",_=d+"user_traits";var x={__proto__:null,ANON_ID:O,USER_ID:A,USER_TRAITS:_};const k="userId",T="anonymousId",$=["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"],j=["name","EVENTS","config","loaded"];var z=$.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const M=/^utm_/,q=/^an_prop_/,U=/^an_trait_/;function V(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===z.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(O,a.anonymousId),c||t(A,a.userId),s.traits&&t(_,h({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(M)||t.match(/^(d|g)clid/)){const n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(q)&&(e.props[t.replace(q,"")]=r[t]),t.match(U)&&(e.traits[t.replace(U,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(h({type:z.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:z.campaign,campaign:a.campaign})}}return r(i)}}function L(e){return function(t={},n={}){if(n.type===z.setItemEnd){if(n.key===O)return h({},t,{anonymousId:n.value});if(n.key===A)return h({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:h({},t.traits,n.traits)});case z.reset:return[A,O,_].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(A),anonymousId:e.getItem(O),traits:e.getItem(_)}}const R=e=>d+"TEMP"+d+e;function D(t){const{setItem:n,removeItem:r,getItem:i}=t.storage;return t=>a=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===z.reset&&([A,_,O].forEach(e=>{r(e)}),[k,T,"traits"].forEach(e=>{o(R(e))})),s.type===z.identify){i(O)||n(O,e());const r=i(A),a=i(_)||{};r&&r!==c&&t.dispatch({type:z.userIdChanged,old:{userId:r,traits:a},new:{userId:c,traits:u},options:l}),c&&n(A,c),u&&n(_,h({},a,u))}return a(s)}}const B={};function X(e,t){B[e]&&p(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(h({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>J(e,t,n-10).then(r,i)))}function W(e,t,n){const r=t(),{plugins:i,context:a,queue:o,user:s}=e.getState();if(!a.offline&&o&&o.actions&&o.actions.length){const t=o.actions.reduce((e,t,n)=>(i[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const a=o.actions[t],c=a.plugin,u=a.payload.type,l=r[c][u];if(l&&p(l)){const t=function(e={},t={}){return[k,T].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(a.payload,s);l({payload:t,config:i[c].config,instance:n});const r=`${u}:${c}`;e.dispatch(h({},t,{type:r,_:{called:r,from:"queueDrain"}}))}});const a=o.actions.filter((e,n)=>!~t.processIndex.indexOf(n));o.actions=a}}}const H=/Start$/,F=/^bootstrap/,G=/^ready/;async function K({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:c,context:u}=r,d=t.type,f=d.match(H);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const g=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(H)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&re(o)?o:n;if(r&&(c=o&&re(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return h({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:oe(n),instance:e,config:a||{},abort:c}}}(n,m),y=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!c[n].loaded),u.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,u=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!p(t.method))return a;!function(e,t){const n=ae(e);if(n&&n.name===t){const r=ae(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(u=a,f=s,m=t.pluginName,function(e,t){return h({},u,{abort:{reason:e,plugins:t||[f],caller:d,from:m||f}})}),config:Y(t.pluginName,c,i),plugins:c});var u,f,m;const g=l(o)?o:{};return Promise.resolve(h({},a,g))},Promise.resolve(t));u[s]=r}else u[s]=t;return Promise.resolve(u)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:u}=r,p=i[u],m=await t;let w=b[u]?b[u]:{};if(f&&(w=m),te(w,u))return Q({data:w,method:d,instance:n,pluginName:u,store:o}),Promise.resolve(m);if(te(m,u))return s&&Q({data:m,method:d,instance:n,store:o}),Promise.resolve(m);if(y.hasOwnProperty(u)&&!0===y[u])return o.dispatch({type:"queue",plugin:u,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=g(b[u],i[u]),E=await p[d]({abort:I.abort,payload:w,instance:n,config:Y(u,c,i),plugins:c}),v=h({},m,l(E)?E:{}),S=b[u];if(te(S,u))Q({data:S,method:d,instance:n,pluginName:u,store:o});else{const e=`${d}:${u}`;(e.match(/:/g)||[]).length<2&&!d.match(F)&&!d.match(G)&&n.dispatch(h({},f?v:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(v)},Promise.resolve(t));if(!(d.match(H)||d.match(/^registerPlugin/)||d.match(G)||d.match(F)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),w._&&w._.originalAction===d)return w;let t=h({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});ne(w,e.exact.length)&&!d.match(/End$/)&&(t=h({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function Q({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(h({},e,{type:i,_:{called:i,from:"abort"}}))}function Y(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function Z(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function ee(e,t){const n=e.replace(H,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function te({abort:e},t){return!!e&&(!0===e||ie(e,t)||e&&ie(e.plugins,t))}function ne({abort:e},t){if(!e)return!1;if(!0===e||m(e))return!0;const{plugins:n}=e;return re(e)&&e.length===t||re(n)&&n.length===t}function re(e){return Array.isArray(e)}function ie(e,t){return!(!e||!re(e))&&e.includes(t)}function ae(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function oe(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=l(e[n])?Object.assign({},e[n]):e[n]),t),{})}function se(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let l=o;if(c)return a(o);if(s===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===z.disablePlugin&&setTimeout(()=>X(o.meta.rid,{payload:o}),0),s===z.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return J(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!j.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(h({},{type:z.ready},t))},0)})}if(s!==z.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>W(i,t,e),0);const r=await async function(e,t,n,r,i){const a=p(t)?t():t,o=e.type,s=o.replace(H,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return f(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===z.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const l=u.map(e=>e.name),d=function(e,t,n){const r=ee(e).map(e=>Z(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=ee(e,i),[o,s,c]=a.map(e=>Z(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await K({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});if(ne(m,l.length))return m;let g;if(g=o===s?m:await K({action:h({},m,{type:s}),data:{exact:d.during,namespaced:d.duringNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i}),o.match(H)){const e=`${s}End`,t=await K({action:h({},g,{type:e}),data:{exact:d.after,namespaced:d.afterNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&X(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(l)}}function ce(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class ue{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return N(...this[e].map(e=>e(i)))(n)(r)}}}function le(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=de(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},h({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=de(n.type,z.initialize),a=e()[i];return a&&i?(r[i]=h({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),h({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=h({},t[n.name],{loaded:!0}),h({},t,r);switch(n.type){case z.disablePlugin:return h({},t,pe(n.plugins,!1,t));case z.enablePlugin:return h({},t,pe(n.plugins,!0,t));default:return t}}}function de(e,t){return e.substring(t.length+1,e.length)}function pe(e,t,n){return e.reduce((e,r)=>(e[r]=h({},n[r],{enabled:t}),e),n)}function fe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const me={last:{},history:[]};function ge(e=me,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===z.track){const t=fe(h({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return h({},e,{last:t,history:e.history.concat(t)})}return e}const ye={actions:[]};function he(e=ye,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===z.identify?[t].concat(e.actions):e.actions.concat(t),h({},e,{actions:n});case"dequeue":return[];default:return e}}const be=/#.*$/;function we(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(be,""):"")}const Ie=(e={})=>{if(!g)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!g)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(be,"")}(s),u={title:t,url:c,path:we(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),h({},u,e)},Ee={last:{},history:[]};function ve(e=Ee,t){const{properties:n,options:r,meta:i}=t;if(t.type===z.page){const t=fe(h({properties:n,meta:i},Object.keys(r).length&&{options:r}));return h({},e,{last:t,history:e.history.concat(t)})}return e}let Se,Pe,Ne,Oe;Se=function(){if(!g)return!1;const e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),Pe=g?document.referrer:null,Ne=t(),Oe=n();const Ae={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:Se},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:Oe,locale:Ne,campaign:{},referrer:Pe};function _e(e=Ae,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case z.campaign:return h({},e,{campaign:i});case z.offline:return h({},e,{offline:!0});case z.online:return h({},e,{offline:!1});default:return n?e:h({},Ae,e,{initialized:!0})}}const xe=["plugins","reducers","storage"];function ke(e,t,n){if(!g)return;const r=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(e=>{r(e,t)})}function Te(e){const t=ke.bind(null,"online offline",t=>Promise.resolve(!navigator.onLine).then(e));return t(!0),e=>t(!1)}function $e(){return s("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(c[u].analytics.push(e.action||e),a(e))})}}function je(e){return function(){return N(N.apply(null,arguments),$e())}}function ze(e){return e?y(e)?e:[e]:[]}function Me(t={},n,r){const i=e();var a,o;return n&&(B[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(p(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),h({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function qe(t={}){const n=t.reducers||{},c=t.initialUser||{},u=(t.plugins||[]).reduce((e,t)=>{if(p(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=G,r.apply({instance:G},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),d=t.storage?t.storage:{getItem:a,setItem:s,removeItem:o},f=function(e){return function(t,n,r){return n.getState("user")[t]||(r&&l(r)&&r[t]?r[t]:C(e)[t]||a(R(t))||null)}}(d);let y=u.plugins;const E=u.events.filter(e=>!j.includes(e)).sort(),v=new Set(E.concat($).filter(e=>!j.includes(e))),A=Array.from(v).sort(),_=()=>y,{addMiddleware:x,removeMiddleware:M,dynamicMiddlewares:q}=new ue,U=()=>{throw new Error("Abort disabled inListener")},B=r(),X=C(d),J=h({},X,c,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});J.anonymousId||(J.anonymousId=e());const H=h({enable:(e,t)=>new Promise(n=>{re.dispatch({type:z.enablePlugin,plugins:ze(e),_:{originalAction:z.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{re.dispatch({type:z.disablePlugin,plugins:ze(e),_:{originalAction:z.disablePlugin}},n,[t])})},u.methods);let F=!1;const G={identify:async(e,t,n,r)=>{const i=m(e)?e:null,a=l(e)?e:t,o=n||{},c=G.user();s(R(k),i);const u=i||a.userId||f(k,G,a);return new Promise(e=>{re.dispatch(h({type:z.identifyStart,userId:u,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");const a=l(e)?e:t||{},o=l(n)?n:{};return new Promise(e=>{re.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:f(k,G,t),anonymousId:f(T,G,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=l(e)?e:{},i=l(t)?t:{};return new Promise(a=>{re.dispatch({type:z.pageStart,properties:Ie(r),options:i,userId:f(k,G,r),anonymousId:f(T,G,r)},a,[e,t,n])})},user:e=>{if(e===k||"id"===e)return f(k,G);if(e===T||"anonId"===e)return f(T,G);const t=G.getState("user");return e?i(t,e):t},reset:e=>new Promise(t=>{re.dispatch({type:z.resetStart},t,e)}),ready:e=>(F&&e({plugins:H,instance:G}),G.on(z.ready,t=>{e(t),F=!0})),on:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:G,plugins:y}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:G,plugins:y}),e(r));return x(e,Ue),x(r,Ve),()=>{M(e,Ue),M(r,Ve)}}const r=e.match(n)?Ue:Ve,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:G,plugins:y,abort:U}),n(r));return x(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);const n=G.on(e,({payload:e})=>{t({payload:e,instance:G,plugins:y,abort:U}),n()});return n},getState:e=>{const t=re.getState();return e?i(t,e):Object.assign({},t)},dispatch:e=>{const t=m(e)?{type:e}:e;if($.includes(t.type))throw new Error("reserved action "+t.type);const n=h({},t,{_:h({originalAction:t.type},e._||{})});re.dispatch(n)},enablePlugin:H.enable,disablePlugin:H.disable,plugins:H,storage:{getItem:d.getItem,setItem:(e,t,n)=>{re.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{re.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{G.storage.setItem(O,e,t)},events:{core:$,plugins:E}},K=u.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=Me()),e(t)),q(Ue),se(G,_,{all:A,plugins:E}),ce(d),V(G),D(G),q(Ve)]),Q={context:_e,user:L(d),page:ve,track:ge,plugins:le(_),queue:he};let Y=N,Z=N;if(g&&t.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Y=e({trace:!0,traceLimit:25})),Z=function(){return 0===arguments.length?$e():l(typeof arguments[0])?je():je().apply(null,arguments)}}const ee=function(e){return Object.keys(e).reduce((t,n)=>(xe.includes(n)||(t[n]=e[n]),t),{})}(t),te=u.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=u.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ne={context:ee,user:J,plugins:te},re=S(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===b&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===w||typeof n(void 0,{type:I})===w)throw new Error("reducer "+t+" "+w)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===w){const e=P(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(h({},Q,n)),ne,Z(Y(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=N(...s)(a.dispatch),h({},a,{dispatch:o})}}(...K))));var ie;re.dispatch=(ie=re.dispatch,function(e,t,n){const r=h({},e,{meta:Me(e.meta,t,ze(n))});return ie.apply(null,[r])});const ae=Object.keys(y);re.dispatch({type:z.bootstrap,plugins:ae,config:ee,params:B,user:J,initialUser:c,persistedUser:X});const oe=ae.filter(e=>u.pluginEnabled[e]),de=ae.filter(e=>!u.pluginEnabled[e]);return re.dispatch({type:z.registerPlugins,plugins:ae,enabled:u.pluginEnabled}),u.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&p(n)&&n({instance:G,config:r,payload:e}),re.dispatch({type:z.registerPluginType(i),name:i,enabled:u.pluginEnabled[i],plugin:e}),u.pluginsArray.length===t+1&&re.dispatch({type:z.initializeStart,plugins:oe,disabled:de})}),Te(e=>{re.dispatch({type:e?z.offline:z.online})}),function(e,t,n){setInterval(()=>W(e,t,n),3e3)}(re,_,G),G}const Ue="before",Ve="after";export{qe as Analytics,x as CONSTANTS,z as EVENTS,qe as default,qe as init};
import{uuid as e,getBrowserLocale as t,getTimeZone as n,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as s,globalContext as c,KEY as u}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as d,isFunction as p,isBoolean as f,isString as m,isBrowser as g,isArray as y}from"@analytics/type-utils";function h(){return h=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},h.apply(this,arguments)}const b="function",w="undefined",I="@@redux/"+Math.random().toString(36),E=/* #__PURE__ */(()=>typeof Symbol===b&&Symbol.observable||"@@observable")(),v=" != "+b;function S(e,t,n){if(typeof t===b&&typeof n===w&&(n=t,t=void 0),typeof n!==w){if(typeof n!==b)throw new Error("enhancer"+v);return n(S)(e,t)}if(typeof e!==b)throw new Error("reducer"+v);let r=e,i=t,a=[],o=a,s=!1;function c(){o===a&&(o=a.slice())}function u(){return i}function d(e){if(typeof e!==b)throw new Error("Listener"+v);let t=!0;return c(),o.push(e),function(){if(!t)return;t=!1,c();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===w)throw new Error("ActType "+w);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:u,replaceReducer:function(e){if(typeof e!==b)throw new Error("next reducer"+v);r=e,p({type:"@@redux/INIT"})},[E]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(u())}return n(),{unsubscribe:e(n)}},[E](){return this}}}}}function P(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+w}function N(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const O=d+"anon_id",A=d+"user_id",_=d+"user_traits";var x={__proto__:null,ANON_ID:O,USER_ID:A,USER_TRAITS:_};const k="userId",T="anonymousId",$=["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"],j=["name","EVENTS","config","loaded"];var z=$.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const M=/^utm_/,q=/^an_prop_/,U=/^an_trait_/;function V(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===z.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(O,a.anonymousId),c||t(A,a.userId),s.traits&&t(_,h({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(M)||t.match(/^(d|g)clid/)){const n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(q)&&(e.props[t.replace(q,"")]=r[t]),t.match(U)&&(e.traits[t.replace(U,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(h({type:z.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:z.campaign,campaign:a.campaign})}}return r(i)}}function L(e){return function(t={},n={}){if(n.type===z.setItemEnd){if(n.key===O)return h({},t,{anonymousId:n.value});if(n.key===A)return h({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:h({},t.traits,n.traits)});case z.reset:return[A,O,_].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(A),anonymousId:e.getItem(O),traits:e.getItem(_)}}const R=e=>d+"TEMP"+d+e;function D(t){const{setItem:n,removeItem:r,getItem:i}=t.storage;return t=>a=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===z.reset&&([A,_,O].forEach(e=>{r(e)}),[k,T,"traits"].forEach(e=>{o(R(e))})),s.type===z.identify){i(O)||n(O,e());const r=i(A),a=i(_)||{};r&&r!==c&&t.dispatch({type:z.userIdChanged,old:{userId:r,traits:a},new:{userId:c,traits:u},options:l}),c&&n(A,c),u&&n(_,h({},a,u))}return a(s)}}const B={};function X(e,t){B[e]&&p(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(h({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>J(e,t,n-10).then(r,i)))}function W(e){return{abort:e}}function H(e,t,n){const r={},i=t(),{plugins:a,context:o,queue:s,user:c}=e.getState();if(!o.offline&&s&&s.actions&&s.actions.length){const t=s.actions.reduce((e,t,n)=>(a[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const o=s.actions[t],u=o.plugin,d=o.payload.type,f=i[u][d];if(f&&p(f)){const t=function(e={},t={}){return[k,T].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(o.payload,c);let i;const s=r[t.meta.rid];if(!s&&(i=f({payload:t,config:a[u].config,instance:n,abort:W}),i&&l(i)&&i.abort))return void(r[t.meta.rid]=!0);if(!s){const n=`${d}:${u}`;e.dispatch(h({},t,{type:n,_:{called:n,from:"queueDrain"}}))}}});const o=s.actions.filter((e,n)=>!~t.processIndex.indexOf(n));s.actions=o}}}const F=/Start$/,G=/^bootstrap/,K=/^ready/;async function Q({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:c,context:u}=r,d=t.type,f=d.match(F);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const g=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(F)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&ie(o)?o:n;if(r&&(c=o&&ie(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return h({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:se(n),instance:e,config:a||{},abort:c}}}(n,m),y=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!c[n].loaded),u.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,u=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!p(t.method))return a;!function(e,t){const n=oe(e);if(n&&n.name===t){const r=oe(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(u=a,f=s,m=t.pluginName,function(e,t){return h({},u,{abort:{reason:e,plugins:t||[f],caller:d,from:m||f}})}),config:Z(t.pluginName,c,i),plugins:c});var u,f,m;const g=l(o)?o:{};return Promise.resolve(h({},a,g))},Promise.resolve(t));u[s]=r}else u[s]=t;return Promise.resolve(u)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:u}=r,p=i[u],m=await t;let w=b[u]?b[u]:{};if(f&&(w=m),ne(w,u))return Y({data:w,method:d,instance:n,pluginName:u,store:o}),Promise.resolve(m);if(ne(m,u))return s&&Y({data:m,method:d,instance:n,store:o}),Promise.resolve(m);if(y.hasOwnProperty(u)&&!0===y[u])return o.dispatch({type:"queue",plugin:u,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=g(b[u],i[u]),E=await p[d]({abort:I.abort,payload:w,instance:n,config:Z(u,c,i),plugins:c}),v=h({},m,l(E)?E:{}),S=b[u];if(ne(S,u))Y({data:S,method:d,instance:n,pluginName:u,store:o});else{const e=`${d}:${u}`;(e.match(/:/g)||[]).length<2&&!d.match(G)&&!d.match(K)&&n.dispatch(h({},f?v:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(v)},Promise.resolve(t));if(!(d.match(F)||d.match(/^registerPlugin/)||d.match(K)||d.match(G)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),w._&&w._.originalAction===d)return w;let t=h({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});re(w,e.exact.length)&&!d.match(/End$/)&&(t=h({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function Y({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(h({},e,{type:i,_:{called:i,from:"abort"}}))}function Z(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function ee(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function te(e,t){const n=e.replace(F,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function ne({abort:e},t){return!!e&&(!0===e||ae(e,t)||e&&ae(e.plugins,t))}function re({abort:e},t){if(!e)return!1;if(!0===e||m(e))return!0;const{plugins:n}=e;return ie(e)&&e.length===t||ie(n)&&n.length===t}function ie(e){return Array.isArray(e)}function ae(e,t){return!(!e||!ie(e))&&e.includes(t)}function oe(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function se(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=l(e[n])?Object.assign({},e[n]):e[n]),t),{})}function ce(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let l=o;if(c)return a(o);if(s===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===z.disablePlugin&&setTimeout(()=>X(o.meta.rid,{payload:o}),0),s===z.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return J(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!j.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(h({},{type:z.ready},t))},0)})}if(s!==z.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>H(i,t,e),0);const r=await async function(e,t,n,r,i){const a=p(t)?t():t,o=e.type,s=o.replace(F,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return f(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===z.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const l=u.map(e=>e.name),d=function(e,t,n){const r=te(e).map(e=>ee(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=te(e,i),[o,s,c]=a.map(e=>ee(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await Q({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});if(re(m,l.length))return m;let g;if(g=o===s?m:await Q({action:h({},m,{type:s}),data:{exact:d.during,namespaced:d.duringNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i}),o.match(F)){const e=`${s}End`,t=await Q({action:h({},g,{type:e}),data:{exact:d.after,namespaced:d.afterNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&X(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(l)}}function ue(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class le{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return N(...this[e].map(e=>e(i)))(n)(r)}}}function de(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=pe(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},h({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=pe(n.type,z.initialize),a=e()[i];return a&&i?(r[i]=h({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),h({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=h({},t[n.name],{loaded:!0}),h({},t,r);switch(n.type){case z.disablePlugin:return h({},t,fe(n.plugins,!1,t));case z.enablePlugin:return h({},t,fe(n.plugins,!0,t));default:return t}}}function pe(e,t){return e.substring(t.length+1,e.length)}function fe(e,t,n){return e.reduce((e,r)=>(e[r]=h({},n[r],{enabled:t}),e),n)}function me(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const ge={last:{},history:[]};function ye(e=ge,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===z.track){const t=me(h({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return h({},e,{last:t,history:e.history.concat(t)})}return e}const he={actions:[]};function be(e=he,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===z.identify?[t].concat(e.actions):e.actions.concat(t),h({},e,{actions:n});case"dequeue":return[];default:return e}}const we=/#.*$/;function Ie(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(we,""):"")}const Ee=(e={})=>{if(!g)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!g)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(we,"")}(s),u={title:t,url:c,path:Ie(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),h({},u,e)},ve={last:{},history:[]};function Se(e=ve,t){const{properties:n,options:r,meta:i}=t;if(t.type===z.page){const t=me(h({properties:n,meta:i},Object.keys(r).length&&{options:r}));return h({},e,{last:t,history:e.history.concat(t)})}return e}let Pe,Ne,Oe,Ae;Pe=function(){if(!g)return!1;const e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),Ne=g?document.referrer:null,Oe=t(),Ae=n();const _e={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:Pe},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:Ae,locale:Oe,campaign:{},referrer:Ne};function xe(e=_e,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case z.campaign:return h({},e,{campaign:i});case z.offline:return h({},e,{offline:!0});case z.online:return h({},e,{offline:!1});default:return n?e:h({},_e,e,{initialized:!0})}}const ke=["plugins","reducers","storage"];function Te(e,t,n){if(!g)return;const r=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(e=>{r(e,t)})}function $e(e){const t=Te.bind(null,"online offline",t=>Promise.resolve(!navigator.onLine).then(e));return t(!0),e=>t(!1)}function je(){return s("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(c[u].analytics.push(e.action||e),a(e))})}}function ze(e){return function(){return N(N.apply(null,arguments),je())}}function Me(e){return e?y(e)?e:[e]:[]}function qe(t={},n,r){const i=e();var a,o;return n&&(B[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(p(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),h({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ue(t={}){const n=t.reducers||{},c=t.initialUser||{},u=(t.plugins||[]).reduce((e,t)=>{if(p(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=G,r.apply({instance:G},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),d=t.storage?t.storage:{getItem:a,setItem:s,removeItem:o},f=function(e){return function(t,n,r){return n.getState("user")[t]||(r&&l(r)&&r[t]?r[t]:C(e)[t]||a(R(t))||null)}}(d);let y=u.plugins;const E=u.events.filter(e=>!j.includes(e)).sort(),v=new Set(E.concat($).filter(e=>!j.includes(e))),A=Array.from(v).sort(),_=()=>y,{addMiddleware:x,removeMiddleware:M,dynamicMiddlewares:q}=new le,U=()=>{throw new Error("Abort disabled inListener")},B=r(),X=C(d),J=h({},X,c,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});J.anonymousId||(J.anonymousId=e());const W=h({enable:(e,t)=>new Promise(n=>{re.dispatch({type:z.enablePlugin,plugins:Me(e),_:{originalAction:z.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{re.dispatch({type:z.disablePlugin,plugins:Me(e),_:{originalAction:z.disablePlugin}},n,[t])})},u.methods);let F=!1;const G={identify:async(e,t,n,r)=>{const i=m(e)?e:null,a=l(e)?e:t,o=n||{},c=G.user();s(R(k),i);const u=i||a.userId||f(k,G,a);return new Promise(e=>{re.dispatch(h({type:z.identifyStart,userId:u,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");const a=l(e)?e:t||{},o=l(n)?n:{};return new Promise(e=>{re.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:f(k,G,t),anonymousId:f(T,G,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=l(e)?e:{},i=l(t)?t:{};return new Promise(a=>{re.dispatch({type:z.pageStart,properties:Ee(r),options:i,userId:f(k,G,r),anonymousId:f(T,G,r)},a,[e,t,n])})},user:e=>{if(e===k||"id"===e)return f(k,G);if(e===T||"anonId"===e)return f(T,G);const t=G.getState("user");return e?i(t,e):t},reset:e=>new Promise(t=>{re.dispatch({type:z.resetStart},t,e)}),ready:e=>(F&&e({plugins:W,instance:G}),G.on(z.ready,t=>{e(t),F=!0})),on:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:G,plugins:y}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:G,plugins:y}),e(r));return x(e,Ve),x(r,Le),()=>{M(e,Ve),M(r,Le)}}const r=e.match(n)?Ve:Le,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:G,plugins:y,abort:U}),n(r));return x(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);const n=G.on(e,({payload:e})=>{t({payload:e,instance:G,plugins:y,abort:U}),n()});return n},getState:e=>{const t=re.getState();return e?i(t,e):Object.assign({},t)},dispatch:e=>{const t=m(e)?{type:e}:e;if($.includes(t.type))throw new Error("reserved action "+t.type);const n=h({},t,{_:h({originalAction:t.type},e._||{})});re.dispatch(n)},enablePlugin:W.enable,disablePlugin:W.disable,plugins:W,storage:{getItem:d.getItem,setItem:(e,t,n)=>{re.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{re.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{G.storage.setItem(O,e,t)},events:{core:$,plugins:E}},K=u.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=qe()),e(t)),q(Ve),ce(G,_,{all:A,plugins:E}),ue(d),V(G),D(G),q(Le)]),Q={context:xe,user:L(d),page:Se,track:ye,plugins:de(_),queue:be};let Y=N,Z=N;if(g&&t.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Y=e({trace:!0,traceLimit:25})),Z=function(){return 0===arguments.length?je():l(typeof arguments[0])?ze():ze().apply(null,arguments)}}const ee=function(e){return Object.keys(e).reduce((t,n)=>(ke.includes(n)||(t[n]=e[n]),t),{})}(t),te=u.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=u.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ne={context:ee,user:J,plugins:te},re=S(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===b&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===w||typeof n(void 0,{type:I})===w)throw new Error("reducer "+t+" "+w)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===w){const e=P(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(h({},Q,n)),ne,Z(Y(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=N(...s)(a.dispatch),h({},a,{dispatch:o})}}(...K))));var ie;re.dispatch=(ie=re.dispatch,function(e,t,n){const r=h({},e,{meta:qe(e.meta,t,Me(n))});return ie.apply(null,[r])});const ae=Object.keys(y);re.dispatch({type:z.bootstrap,plugins:ae,config:ee,params:B,user:J,initialUser:c,persistedUser:X});const oe=ae.filter(e=>u.pluginEnabled[e]),se=ae.filter(e=>!u.pluginEnabled[e]);return re.dispatch({type:z.registerPlugins,plugins:ae,enabled:u.pluginEnabled}),u.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&p(n)&&n({instance:G,config:r,payload:e}),re.dispatch({type:z.registerPluginType(i),name:i,enabled:u.pluginEnabled[i],plugin:e}),u.pluginsArray.length===t+1&&re.dispatch({type:z.initializeStart,plugins:oe,disabled:se})}),$e(e=>{re.dispatch({type:e?z.offline:z.online})}),function(e,t,n){setInterval(()=>H(e,t,n),3e3)}(re,_,G),G}const Ve="before",Le="after";export{Ue as Analytics,x as CONSTANTS,z as EVENTS,Ue as default,Ue as init};
//# sourceMappingURL=analytics-core.modern.js.map

@@ -1,2 +0,2 @@

import{uuid as e,getBrowserLocale as n,getTimeZone as t,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as u,globalContext as c,KEY as s}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as f,isFunction as d,isBoolean as p,isString as m,isBrowser as g,isArray as h}from"@analytics/type-utils";function v(){return v=Object.assign||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},v.apply(this,arguments)}var y="function",b="undefined",I="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */function(){return typeof Symbol===y&&Symbol.observable||"@@observable"}(),E=" != "+y;function P(e,n,t){var r;if(typeof n===y&&typeof t===b&&(t=n,n=void 0),typeof t!==b){if(typeof t!==y)throw new Error("enhancer"+E);return t(P)(e,n)}if(typeof e!==y)throw new Error("reducer"+E);var i=e,a=n,o=[],u=o,c=!1;function s(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==y)throw new Error("Listener"+E);var n=!0;return s(),u.push(e),function(){if(n){n=!1,s();var t=u.indexOf(e);u.splice(t,1)}}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===b)throw new Error("ActType "+b);if(c)throw new Error("Dispatch in reducer");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 p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+E);i=e,p({type:"@@redux/INIT"})}})[w]=function(){var e,n=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function t(){e.next&&e.next(f())}return t(),{unsubscribe:n(t)}}})[w]=function(){return this},e},r}function S(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+b}function N(){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 O(){var e=arguments;return function(n){return function(t,r,i){var a,o=n(t,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),v({},o,{dispatch:u=N.apply(void 0,a)(o.dispatch)})}}}var A=f+"anon_id",_=f+"user_id",x=f+"user_traits",j={__proto__:null,ANON_ID:A,USER_ID:_,USER_TRAITS:x},k="userId",T="anonymousId",z=["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"],M=["name","EVENTS","config","loaded"],q=z.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),U=/^utm_/,V=/^an_prop_/,L=/^an_trait_/;function C(e){var n=e.storage.setItem;return function(t){return function(r){return function(i){if(i.type===q.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&n(A,o.anonymousId),s||n(_,o.userId),c.traits&&n(x,v({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,n){if(n.match(U)||n.match(/^(d|g)clid/)){var t=n.replace(U,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(V)&&(e.props[n.replace(V,"")]=a[n]),n.match(L)&&(e.traits[n.replace(L,"")]=a[n]),e},{campaign:{},props:{},traits:{}});t.dispatch(v({type:q.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&t.dispatch({type:q.campaign,campaign:p.campaign})}}return r(i)}}}}function R(e){return function(n,t){if(void 0===n&&(n={}),void 0===t&&(t={}),t.type===q.setItemEnd){if(t.key===A)return v({},n,{anonymousId:t.value});if(t.key===_)return v({},n,{userId:t.value})}switch(t.type){case q.identify:return Object.assign({},n,{userId:t.userId,traits:v({},n.traits,t.traits)});case q.reset:return[_,A,x].forEach(function(n){e.removeItem(n)}),Object.assign({},n,{userId:null,anonymousId:null,traits:{}});default:return n}}}function $(e){return{userId:e.getItem(_),anonymousId:e.getItem(A),traits:e.getItem(x)}}var D=function(e){return f+"TEMP"+f+e};function B(n){var t=n.storage,r=t.setItem,i=t.removeItem,a=t.getItem;return function(n){return function(t){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===q.reset&&([_,x,A].forEach(function(e){i(e)}),[k,T,"traits"].forEach(function(e){o(D(e))})),u.type===q.identify){a(A)||r(A,e());var f=a(_),d=a(x)||{};f&&f!==c&&n.dispatch({type:q.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(_,c),s&&r(x,v({},d,s))}return t(u)}}}}var X={};function J(e,n){X[e]&&d(X[e])&&(X[e](n),delete X[e])}function W(e,n,t){return new Promise(function(r,i){return n()?r(e):t<1?i(v({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return W(e,n,t-10).then(r,i)})})}function H(e,n,t){var r=n(),i=e.getState(),a=i.plugins,o=i.queue,u=i.user;if(!i.context.offline&&o&&o.actions&&o.actions.length){var c=o.actions.reduce(function(e,n,t){return a[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(c.processIndex&&c.processIndex.length){c.processIndex.forEach(function(n){var i=o.actions[n],c=i.plugin,s=i.payload.type,l=r[c][s];if(l&&d(l)){var f=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[k,T].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(i.payload,u);l({payload:f,config:a[c].config,instance:t});var p=s+":"+c;e.dispatch(v({},f,{type:p,_:{called:p,from:"queueDrain"}}))}});var s=o.actions.filter(function(e,n){return!~c.processIndex.indexOf(n)});o.actions=s}}}var F=function(e){var n=e.data,t=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,c=e.EVENTS;try{var s=i.plugins,f=i.context,p=t.type,m=p.match(G),g=n.exact.map(function(e){return e.pluginName});m&&(g=o.during.map(function(e){return e.pluginName}));var h=function(e,n){return function(t,r,i){var a=r.config,o=r.name,u=o+"."+t.type;i&&(u=i.event);var c=t.type.match(G)?function(e,n,t,r,i){return function(a,o){var u=r?r.name:e,c=o&&ie(o)?o:t;if(r&&(!(c=o&&ie(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+n+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return v({},i,{abort:{reason:a,plugins:c,caller:n,_:u}})}}(o,u,n,i,t):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(t,u);return{payload:ue(t),instance:e,config:a||{},abort:c}}}(r,g),y=n.exact.reduce(function(e,n){var t=n.pluginName,r=n.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!s[t].loaded),f.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(n.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(n.namespaced&&n.namespaced[u])return Promise.resolve(n.namespaced[u].reduce(function(e,n,t){try{return Promise.resolve(e).then(function(e){return n.method&&d(n.method)?(function(e,n){var t=oe(e);if(t&&t.name===n){var r=oe(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=u,o=n.pluginName,function(e,n){return v({},t,{abort:{reason:e,plugins:n||[i],caller:p,from:o||i}})}),config:Z(n.pluginName,s,a),plugins:s})).then(function(n){var t=l(n)?n:{};return Promise.resolve(v({},e,t))})):e;var t,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(n){e[u]=n});e[u]=t}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(n.exact.reduce(function(t,i,o){try{var c=n.exact.length===o+1,f=i.pluginName,d=a[f];return Promise.resolve(t).then(function(n){var t=e[f]?e[f]:{};if(m&&(t=n),te(t,f))return Y({data:t,method:p,instance:r,pluginName:f,store:u}),Promise.resolve(n);if(te(n,f))return c&&Y({data:n,method:p,instance:r,store:u}),Promise.resolve(n);if(y.hasOwnProperty(f)&&!0===y[f])return u.dispatch({type:"queue",plugin:f,payload:t,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(n);var i=h(e[f],a[f]);return Promise.resolve(d[p]({abort:i.abort,payload:t,instance:r,config:Z(f,s,a),plugins:s})).then(function(i){var a=l(i)?i:{},o=v({},n,a),c=e[f];if(te(c,f))Y({data:c,method:p,instance:r,pluginName:f,store:u});else{var s=p+":"+f;(s.match(/:/g)||[]).length<2&&!p.match(K)&&!p.match(Q)&&r.dispatch(v({},m?o:t,{type:s,_:{called:s,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(e){if(!(p.match(G)||p.match(/^registerPlugin/)||p.match(Q)||p.match(K)||p.match(/^params/)||p.match(/^userIdChanged/))){if(c.plugins.includes(p),e._&&e._.originalAction===p)return e;var t=v({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});re(e,n.exact.length)&&!p.match(/End$/)&&(t=v({},t,{type:e.type+"Aborted"})),u.dispatch(t)}return e})})}catch(e){return Promise.reject(e)}},G=/Start$/,K=/^bootstrap/,Q=/^ready/;function Y(e){var n=e.pluginName,t=e.method+"Aborted"+(n?":"+n:"");e.store.dispatch(v({},e.data,{type:t,_:{called:t,from:"abort"}}))}function Z(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function ee(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function ne(e,n){var t=e.replace(G,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function te(e,n){var t=e.abort;return!!t&&(!0===t||ae(t,n)||t&&ae(t.plugins,n))}function re(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return ie(t)&&t.length===n||ie(r)&&r.length===n}function ie(e){return Array.isArray(e)}function ae(e,n){return!(!e||!ie(e))&&e.includes(n)}function oe(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function ue(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=l(e[t])?Object.assign({},e[t]):e[t]),n},{})}function ce(e,n,t){var r={};return function(i){return function(a){return function(o){try{var u,c=function(e){return u?e:a(f)},s=o.type,l=o.plugins,f=o;if(o.abort)return Promise.resolve(a(o));if(s===q.enablePlugin&&i.dispatch({type:q.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),s===q.disablePlugin&&setTimeout(function(){return J(o.meta.rid,{payload:o})},0),s===q.initializeEnd){var m=n(),g=Object.keys(m),h=g.filter(function(e){return l.includes(e)}).map(function(e){return m[e]}),y=[],b=[],I=o.disabled,w=h.map(function(e){var n=e.loaded,t=e.name,a=e.config;return W(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!M.includes(e)})}),r[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(w).then(function(e){var n={plugins:y,failed:b,disabled:I};setTimeout(function(){g.length===w.length+I.length&&i.dispatch(v({},{type:q.ready},n))},0)})}var E=function(){if(s!==q.bootstrap)return/^ready:([^:]*)$/.test(s)&&setTimeout(function(){return H(i,n,e)},0),Promise.resolve(function(e,n,t,r,i){try{var a=d(n)?n():n,o=e.type,u=o.replace(G,"");if(e._&&e._.called)return Promise.resolve(e);var c=t.getState(),s=(m=a,void 0===(g=c.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));o===q.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(n){var t=c.plugins[n];return e.plugins.includes(n)&&!t.initialized}).map(function(e){return a[e]}));var l=s.map(function(e){return e.name}),f=function(e,n,t){var r=ne(e).map(function(e){return ee(e,n)});return n.reduce(function(t,r){var i=r.name,a=ne(e,i).map(function(e){return ee(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:{}})}(o,s);return Promise.resolve(F({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){function n(){var n=function(){if(o.match(G))return Promise.resolve(F({action:v({},s,{type:u+"End"}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&J(e.meta.rid,{payload:e})})}();return n&&n.then?n.then(function(){return e}):e}if(re(e,l.length))return e;var s,d=function(){if(o!==u)return Promise.resolve(F({action:v({},e,{type:u}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return d&&d.then?d.then(n):n()})}catch(e){return Promise.reject(e)}var m,g,h}(o,n,e,i,t)).then(function(e){return u=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(c):c(E))}catch(e){return Promise.reject(e)}}}}}function se(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 le=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 N.apply(void 0,o)(r)(i)}}}}};function fe(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=de(t.type,"registerPlugin"),a=e()[i];if(!a||!i)return n;var o=t.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},v({},n,r)}if(/^initialize:([^:]*)$/.test(t.type)){var c=de(t.type,q.initialize),s=e()[c];return s&&c?(r[c]=v({},n[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),v({},n,r)):n}if(/^ready:([^:]*)$/.test(t.type))return r[t.name]=v({},n[t.name],{loaded:!0}),v({},n,r);switch(t.type){case q.disablePlugin:return v({},n,pe(t.plugins,!1,n));case q.enablePlugin:return v({},n,pe(t.plugins,!0,n));default:return n}}}function de(e,n){return e.substring(n.length+1,e.length)}function pe(e,n,t){return e.reduce(function(e,r){return e[r]=v({},t[r],{enabled:n}),e},t)}function me(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ge={last:{},history:[]};function he(e,n){void 0===e&&(e=ge);var t=n.options,r=n.meta;if(n.type===q.track){var i=me(v({event:n.event,properties:n.properties},Object.keys(t).length&&{options:t},{meta:r}));return v({},e,{last:i,history:e.history.concat(i)})}return e}var ve={actions:[]};function ye(e,n){void 0===e&&(e=ve);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),v({},e,{actions:r});case"dequeue":return[];default:return e}}var be=/#.*$/;function Ie(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(be,""):"")}var we,Ee,Pe,Se,Ne=function(e){if(void 0===e&&(e={}),!g)return e;var n=document,t=n.title,r=n.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var n=function(){if(g)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(be,"")}(s),f={title:t,url:l,path:Ie(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),v({},f,e)},Oe={last:{},history:[]};function Ae(e,n){void 0===e&&(e=Oe);var t=n.options;if(n.type===q.page){var r=me(v({properties:n.properties,meta:n.meta},Object.keys(t).length&&{options:t}));return v({},e,{last:r,history:e.history.concat(r)})}return e}we=function(){if(!g)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"}(),Ee=g?document.referrer:null,Pe=n(),Se=t();var _e={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:we},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:Se,locale:Pe,campaign:{},referrer:Ee};function xe(e,n){void 0===e&&(e=_e);var t=e.initialized,r=n.campaign;switch(n.type){case q.campaign:return v({},e,{campaign:r});case q.offline:return v({},e,{offline:!0});case q.online:return v({},e,{offline:!1});default:return t?e:v({},_e,e,{initialized:!0})}}var je=["plugins","reducers","storage"];function ke(e,n,t){if(g){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Te(e){var n=ke.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function ze(){return u("analytics",[]),function(e){return function(n,t,r){var i=e(n,t,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return c[s].analytics.push(e.action||e),a(e)}})}}}function Me(e){return function(){return N(N.apply(null,arguments),ze())}}function qe(e){return e?h(e)?e:[e]:[]}function Ue(n,t,r){void 0===n&&(n={});var i,a,o=e();return t&&(X[o]=(i=t,a=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(d(t[r])){n=t[r];break}return n}(r),function(e){a&&a(e),i(e)})),v({},n,{rid:o,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ve(n){void 0===n&&(n={});var t=n.reducers||{},c=n.initialUser||{},s=(n.plugins||[]).reduce(function(e,n){if(d(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=Q,r.apply({instance:Q},n)}),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:[]}),f=n.storage?n.storage:{getItem:a,setItem:u,removeItem:o},p=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&l(r)&&r[n]?r[n]:$(e)[n]||a(D(n))||null)}}(f),h=s.plugins,w=s.events.filter(function(e){return!M.includes(e)}).sort(),E=new Set(w.concat(z).filter(function(e){return!M.includes(e)})),_=Array.from(E).sort(),x=function(){return h},j=new le,U=j.addMiddleware,V=j.removeMiddleware,L=j.dynamicMiddlewares,X=function(){throw new Error("Abort disabled inListener")},J=r(),W=$(f),F=v({},W,c,J.an_uid?{userId:J.an_uid}:{},J.an_aid?{anonymousId:J.an_aid}:{});F.anonymousId||(F.anonymousId=e());var G=v({enable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.enablePlugin,plugins:qe(e),_:{originalAction:q.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.disablePlugin,plugins:qe(e),_:{originalAction:q.disablePlugin}},t,[n])})}},s.methods),K=!1,Q={identify:function(e,n,t,r){try{var i=m(e)?e:null,a=l(e)?e:n,o=t||{},c=Q.user();u(D(k),i);var s=i||a.userId||p(k,Q,a);return Promise.resolve(new Promise(function(e){ue.dispatch(v({type:q.identifyStart,userId:s,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[n,t,r])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var a=l(e)?e:n||{},o=l(t)?t:{};return Promise.resolve(new Promise(function(e){ue.dispatch({type:q.trackStart,event:i,properties:a,options:o,userId:p(k,Q,n),anonymousId:p(T,Q,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=l(e)?e:{},i=l(n)?n:{};return Promise.resolve(new Promise(function(a){ue.dispatch({type:q.pageStart,properties:Ne(r),options:i,userId:p(k,Q,r),anonymousId:p(T,Q,r)},a,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===k||"id"===e)return p(k,Q);if(e===T||"anonId"===e)return p(T,Q);var n=Q.getState("user");return e?i(n,e):n},reset:function(e){return new Promise(function(n){ue.dispatch({type:q.resetStart},n,e)})},ready:function(e){return K&&e({plugins:G,instance:Q}),Q.on(q.ready,function(n){e(n),K=!0})},on:function(e,n){if(!e||!d(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:Q,plugins:h}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:Q,plugins:h}),e(r)}}};return U(r,Le),U(i,Ce),function(){V(r,Le),V(i,Ce)}}var a=e.match(t)?Le:Ce,o=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:Q,plugins:h,abort:X}),t(r)}}};return U(o,a),function(){return V(o,a)}},once:function(e,n){if(!e||!d(n))return!1;if(e===q.bootstrap)throw new Error(".once disabled for "+e);var t=Q.on(e,function(e){n({payload:e.payload,instance:Q,plugins:h,abort:X}),t()});return t},getState:function(e){var n=ue.getState();return e?i(n,e):Object.assign({},n)},dispatch:function(e){var n=m(e)?{type:e}:e;if(z.includes(n.type))throw new Error("reserved action "+n.type);var t=v({},n,{_:v({originalAction:n.type},e._||{})});ue.dispatch(t)},enablePlugin:G.enable,disablePlugin:G.disable,plugins:G,storage:{getItem:f.getItem,setItem:function(e,n,t){ue.dispatch({type:q.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ue.dispatch({type:q.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){Q.storage.setItem(A,e,n)},events:{core:z,plugins:w}},Y=s.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ue()),e(n)}}},L(Le),ce(Q,x,{all:_,plugins:w}),se(f),C(Q),B(Q),L(Ce)]),Z={context:xe,user:R(f),page:Ae,track:he,plugins:fe(x),queue:ye},ee=N,ne=N;if(g&&n.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(ee=te({trace:!0,traceLimit:25})),ne=function(){return 0===arguments.length?ze():l(typeof arguments[0])?Me():Me().apply(null,arguments)}}var re,ie=function(e){return Object.keys(e).reduce(function(n,t){return je.includes(t)||(n[t]=e[t]),n},{})}(n),ae=s.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,a=s.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),oe={context:ie,user:F,plugins:ae},ue=P(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===y&&(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:"@@redux/INIT"})===b||typeof t(void 0,{type:I})===b)throw new Error("reducer "+n+" "+b)})}(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===b){var f=S(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(v({},Z,t)),oe,ne(ee(O.apply(void 0,Y))));ue.dispatch=(re=ue.dispatch,function(e,n,t){var r=v({},e,{meta:Ue(e.meta,n,qe(t))});return re.apply(null,[r])});var de=Object.keys(h);ue.dispatch({type:q.bootstrap,plugins:de,config:ie,params:J,user:F,initialUser:c,persistedUser:W});var pe=de.filter(function(e){return s.pluginEnabled[e]}),me=de.filter(function(e){return!s.pluginEnabled[e]});return ue.dispatch({type:q.registerPlugins,plugins:de,enabled:s.pluginEnabled}),s.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&d(t)&&t({instance:Q,config:r,payload:e}),ue.dispatch({type:q.registerPluginType(i),name:i,enabled:s.pluginEnabled[i],plugin:e}),s.pluginsArray.length===n+1&&ue.dispatch({type:q.initializeStart,plugins:pe,disabled:me})}),Te(function(e){ue.dispatch({type:e?q.offline:q.online})}),function(e,n,t){setInterval(function(){return H(e,n,t)},3e3)}(ue,x,Q),Q}var Le="before",Ce="after";export{Ve as Analytics,j as CONSTANTS,q as EVENTS,Ve as default,Ve as init};
import{uuid as e,getBrowserLocale as n,getTimeZone as t,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as u,globalContext as c,KEY as s}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as f,isFunction as d,isBoolean as p,isString as m,isBrowser as g,isArray as h}from"@analytics/type-utils";function v(){return v=Object.assign||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},v.apply(this,arguments)}var y="function",b="undefined",I="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */function(){return typeof Symbol===y&&Symbol.observable||"@@observable"}(),E=" != "+y;function P(e,n,t){var r;if(typeof n===y&&typeof t===b&&(t=n,n=void 0),typeof t!==b){if(typeof t!==y)throw new Error("enhancer"+E);return t(P)(e,n)}if(typeof e!==y)throw new Error("reducer"+E);var i=e,a=n,o=[],u=o,c=!1;function s(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==y)throw new Error("Listener"+E);var n=!0;return s(),u.push(e),function(){if(n){n=!1,s();var t=u.indexOf(e);u.splice(t,1)}}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===b)throw new Error("ActType "+b);if(c)throw new Error("Dispatch in reducer");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 p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+E);i=e,p({type:"@@redux/INIT"})}})[w]=function(){var e,n=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function t(){e.next&&e.next(f())}return t(),{unsubscribe:n(t)}}})[w]=function(){return this},e},r}function S(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+b}function N(){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 O(){var e=arguments;return function(n){return function(t,r,i){var a,o=n(t,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),v({},o,{dispatch:u=N.apply(void 0,a)(o.dispatch)})}}}var A=f+"anon_id",_=f+"user_id",x=f+"user_traits",j={__proto__:null,ANON_ID:A,USER_ID:_,USER_TRAITS:x},k="userId",T="anonymousId",z=["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"],M=["name","EVENTS","config","loaded"],q=z.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),U=/^utm_/,V=/^an_prop_/,L=/^an_trait_/;function C(e){var n=e.storage.setItem;return function(t){return function(r){return function(i){if(i.type===q.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&n(A,o.anonymousId),s||n(_,o.userId),c.traits&&n(x,v({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,n){if(n.match(U)||n.match(/^(d|g)clid/)){var t=n.replace(U,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(V)&&(e.props[n.replace(V,"")]=a[n]),n.match(L)&&(e.traits[n.replace(L,"")]=a[n]),e},{campaign:{},props:{},traits:{}});t.dispatch(v({type:q.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&t.dispatch({type:q.campaign,campaign:p.campaign})}}return r(i)}}}}function R(e){return function(n,t){if(void 0===n&&(n={}),void 0===t&&(t={}),t.type===q.setItemEnd){if(t.key===A)return v({},n,{anonymousId:t.value});if(t.key===_)return v({},n,{userId:t.value})}switch(t.type){case q.identify:return Object.assign({},n,{userId:t.userId,traits:v({},n.traits,t.traits)});case q.reset:return[_,A,x].forEach(function(n){e.removeItem(n)}),Object.assign({},n,{userId:null,anonymousId:null,traits:{}});default:return n}}}function $(e){return{userId:e.getItem(_),anonymousId:e.getItem(A),traits:e.getItem(x)}}var D=function(e){return f+"TEMP"+f+e};function B(n){var t=n.storage,r=t.setItem,i=t.removeItem,a=t.getItem;return function(n){return function(t){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===q.reset&&([_,x,A].forEach(function(e){i(e)}),[k,T,"traits"].forEach(function(e){o(D(e))})),u.type===q.identify){a(A)||r(A,e());var f=a(_),d=a(x)||{};f&&f!==c&&n.dispatch({type:q.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(_,c),s&&r(x,v({},d,s))}return t(u)}}}}var X={};function J(e,n){X[e]&&d(X[e])&&(X[e](n),delete X[e])}function W(e,n,t){return new Promise(function(r,i){return n()?r(e):t<1?i(v({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return W(e,n,t-10).then(r,i)})})}function H(e){return{abort:e}}function F(e,n,t){var r={},i=n(),a=e.getState(),o=a.plugins,u=a.queue,c=a.user;if(!a.context.offline&&u&&u.actions&&u.actions.length){var s=u.actions.reduce(function(e,n,t){return o[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(s.processIndex&&s.processIndex.length){s.processIndex.forEach(function(n){var a=u.actions[n],s=a.plugin,f=a.payload.type,p=i[s][f];if(p&&d(p)){var m,g=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[k,T].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(a.payload,c),h=r[g.meta.rid];if(!h&&(m=p({payload:g,config:o[s].config,instance:t,abort:H}))&&l(m)&&m.abort)return void(r[g.meta.rid]=!0);if(!h){var y=f+":"+s;e.dispatch(v({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var f=u.actions.filter(function(e,n){return!~s.processIndex.indexOf(n)});u.actions=f}}}var G=function(e){var n=e.data,t=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,c=e.EVENTS;try{var s=i.plugins,f=i.context,p=t.type,m=p.match(K),g=n.exact.map(function(e){return e.pluginName});m&&(g=o.during.map(function(e){return e.pluginName}));var h=function(e,n){return function(t,r,i){var a=r.config,o=r.name,u=o+"."+t.type;i&&(u=i.event);var c=t.type.match(K)?function(e,n,t,r,i){return function(a,o){var u=r?r.name:e,c=o&&ae(o)?o:t;if(r&&(!(c=o&&ae(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+n+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return v({},i,{abort:{reason:a,plugins:c,caller:n,_:u}})}}(o,u,n,i,t):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(t,u);return{payload:ce(t),instance:e,config:a||{},abort:c}}}(r,g),y=n.exact.reduce(function(e,n){var t=n.pluginName,r=n.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!s[t].loaded),f.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(n.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(n.namespaced&&n.namespaced[u])return Promise.resolve(n.namespaced[u].reduce(function(e,n,t){try{return Promise.resolve(e).then(function(e){return n.method&&d(n.method)?(function(e,n){var t=ue(e);if(t&&t.name===n){var r=ue(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=u,o=n.pluginName,function(e,n){return v({},t,{abort:{reason:e,plugins:n||[i],caller:p,from:o||i}})}),config:ee(n.pluginName,s,a),plugins:s})).then(function(n){var t=l(n)?n:{};return Promise.resolve(v({},e,t))})):e;var t,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(n){e[u]=n});e[u]=t}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(n.exact.reduce(function(t,i,o){try{var c=n.exact.length===o+1,f=i.pluginName,d=a[f];return Promise.resolve(t).then(function(n){var t=e[f]?e[f]:{};if(m&&(t=n),re(t,f))return Z({data:t,method:p,instance:r,pluginName:f,store:u}),Promise.resolve(n);if(re(n,f))return c&&Z({data:n,method:p,instance:r,store:u}),Promise.resolve(n);if(y.hasOwnProperty(f)&&!0===y[f])return u.dispatch({type:"queue",plugin:f,payload:t,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(n);var i=h(e[f],a[f]);return Promise.resolve(d[p]({abort:i.abort,payload:t,instance:r,config:ee(f,s,a),plugins:s})).then(function(i){var a=l(i)?i:{},o=v({},n,a),c=e[f];if(re(c,f))Z({data:c,method:p,instance:r,pluginName:f,store:u});else{var s=p+":"+f;(s.match(/:/g)||[]).length<2&&!p.match(Q)&&!p.match(Y)&&r.dispatch(v({},m?o:t,{type:s,_:{called:s,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(e){if(!(p.match(K)||p.match(/^registerPlugin/)||p.match(Y)||p.match(Q)||p.match(/^params/)||p.match(/^userIdChanged/))){if(c.plugins.includes(p),e._&&e._.originalAction===p)return e;var t=v({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ie(e,n.exact.length)&&!p.match(/End$/)&&(t=v({},t,{type:e.type+"Aborted"})),u.dispatch(t)}return e})})}catch(e){return Promise.reject(e)}},K=/Start$/,Q=/^bootstrap/,Y=/^ready/;function Z(e){var n=e.pluginName,t=e.method+"Aborted"+(n?":"+n:"");e.store.dispatch(v({},e.data,{type:t,_:{called:t,from:"abort"}}))}function ee(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function ne(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function te(e,n){var t=e.replace(K,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function re(e,n){var t=e.abort;return!!t&&(!0===t||oe(t,n)||t&&oe(t.plugins,n))}function ie(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return ae(t)&&t.length===n||ae(r)&&r.length===n}function ae(e){return Array.isArray(e)}function oe(e,n){return!(!e||!ae(e))&&e.includes(n)}function ue(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function ce(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=l(e[t])?Object.assign({},e[t]):e[t]),n},{})}function se(e,n,t){var r={};return function(i){return function(a){return function(o){try{var u,c=function(e){return u?e:a(f)},s=o.type,l=o.plugins,f=o;if(o.abort)return Promise.resolve(a(o));if(s===q.enablePlugin&&i.dispatch({type:q.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),s===q.disablePlugin&&setTimeout(function(){return J(o.meta.rid,{payload:o})},0),s===q.initializeEnd){var m=n(),g=Object.keys(m),h=g.filter(function(e){return l.includes(e)}).map(function(e){return m[e]}),y=[],b=[],I=o.disabled,w=h.map(function(e){var n=e.loaded,t=e.name,a=e.config;return W(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!M.includes(e)})}),r[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(w).then(function(e){var n={plugins:y,failed:b,disabled:I};setTimeout(function(){g.length===w.length+I.length&&i.dispatch(v({},{type:q.ready},n))},0)})}var E=function(){if(s!==q.bootstrap)return/^ready:([^:]*)$/.test(s)&&setTimeout(function(){return F(i,n,e)},0),Promise.resolve(function(e,n,t,r,i){try{var a=d(n)?n():n,o=e.type,u=o.replace(K,"");if(e._&&e._.called)return Promise.resolve(e);var c=t.getState(),s=(m=a,void 0===(g=c.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));o===q.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(n){var t=c.plugins[n];return e.plugins.includes(n)&&!t.initialized}).map(function(e){return a[e]}));var l=s.map(function(e){return e.name}),f=function(e,n,t){var r=te(e).map(function(e){return ne(e,n)});return n.reduce(function(t,r){var i=r.name,a=te(e,i).map(function(e){return ne(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:{}})}(o,s);return Promise.resolve(G({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){function n(){var n=function(){if(o.match(K))return Promise.resolve(G({action:v({},s,{type:u+"End"}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&J(e.meta.rid,{payload:e})})}();return n&&n.then?n.then(function(){return e}):e}if(ie(e,l.length))return e;var s,d=function(){if(o!==u)return Promise.resolve(G({action:v({},e,{type:u}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return d&&d.then?d.then(n):n()})}catch(e){return Promise.reject(e)}var m,g,h}(o,n,e,i,t)).then(function(e){return u=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(c):c(E))}catch(e){return Promise.reject(e)}}}}}function le(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 fe=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 N.apply(void 0,o)(r)(i)}}}}};function de(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=pe(t.type,"registerPlugin"),a=e()[i];if(!a||!i)return n;var o=t.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},v({},n,r)}if(/^initialize:([^:]*)$/.test(t.type)){var c=pe(t.type,q.initialize),s=e()[c];return s&&c?(r[c]=v({},n[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),v({},n,r)):n}if(/^ready:([^:]*)$/.test(t.type))return r[t.name]=v({},n[t.name],{loaded:!0}),v({},n,r);switch(t.type){case q.disablePlugin:return v({},n,me(t.plugins,!1,n));case q.enablePlugin:return v({},n,me(t.plugins,!0,n));default:return n}}}function pe(e,n){return e.substring(n.length+1,e.length)}function me(e,n,t){return e.reduce(function(e,r){return e[r]=v({},t[r],{enabled:n}),e},t)}function ge(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var he={last:{},history:[]};function ve(e,n){void 0===e&&(e=he);var t=n.options,r=n.meta;if(n.type===q.track){var i=ge(v({event:n.event,properties:n.properties},Object.keys(t).length&&{options:t},{meta:r}));return v({},e,{last:i,history:e.history.concat(i)})}return e}var ye={actions:[]};function be(e,n){void 0===e&&(e=ye);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),v({},e,{actions:r});case"dequeue":return[];default:return e}}var Ie=/#.*$/;function we(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Ie,""):"")}var Ee,Pe,Se,Ne,Oe=function(e){if(void 0===e&&(e={}),!g)return e;var n=document,t=n.title,r=n.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var n=function(){if(g)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(Ie,"")}(s),f={title:t,url:l,path:we(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),v({},f,e)},Ae={last:{},history:[]};function _e(e,n){void 0===e&&(e=Ae);var t=n.options;if(n.type===q.page){var r=ge(v({properties:n.properties,meta:n.meta},Object.keys(t).length&&{options:t}));return v({},e,{last:r,history:e.history.concat(r)})}return e}Ee=function(){if(!g)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"}(),Pe=g?document.referrer:null,Se=n(),Ne=t();var xe={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:Ee},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:Ne,locale:Se,campaign:{},referrer:Pe};function je(e,n){void 0===e&&(e=xe);var t=e.initialized,r=n.campaign;switch(n.type){case q.campaign:return v({},e,{campaign:r});case q.offline:return v({},e,{offline:!0});case q.online:return v({},e,{offline:!1});default:return t?e:v({},xe,e,{initialized:!0})}}var ke=["plugins","reducers","storage"];function Te(e,n,t){if(g){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function ze(e){var n=Te.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Me(){return u("analytics",[]),function(e){return function(n,t,r){var i=e(n,t,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return c[s].analytics.push(e.action||e),a(e)}})}}}function qe(e){return function(){return N(N.apply(null,arguments),Me())}}function Ue(e){return e?h(e)?e:[e]:[]}function Ve(n,t,r){void 0===n&&(n={});var i,a,o=e();return t&&(X[o]=(i=t,a=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(d(t[r])){n=t[r];break}return n}(r),function(e){a&&a(e),i(e)})),v({},n,{rid:o,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Le(n){void 0===n&&(n={});var t=n.reducers||{},c=n.initialUser||{},s=(n.plugins||[]).reduce(function(e,n){if(d(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=Q,r.apply({instance:Q},n)}),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:[]}),f=n.storage?n.storage:{getItem:a,setItem:u,removeItem:o},p=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&l(r)&&r[n]?r[n]:$(e)[n]||a(D(n))||null)}}(f),h=s.plugins,w=s.events.filter(function(e){return!M.includes(e)}).sort(),E=new Set(w.concat(z).filter(function(e){return!M.includes(e)})),_=Array.from(E).sort(),x=function(){return h},j=new fe,U=j.addMiddleware,V=j.removeMiddleware,L=j.dynamicMiddlewares,X=function(){throw new Error("Abort disabled inListener")},J=r(),W=$(f),H=v({},W,c,J.an_uid?{userId:J.an_uid}:{},J.an_aid?{anonymousId:J.an_aid}:{});H.anonymousId||(H.anonymousId=e());var G=v({enable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.enablePlugin,plugins:Ue(e),_:{originalAction:q.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.disablePlugin,plugins:Ue(e),_:{originalAction:q.disablePlugin}},t,[n])})}},s.methods),K=!1,Q={identify:function(e,n,t,r){try{var i=m(e)?e:null,a=l(e)?e:n,o=t||{},c=Q.user();u(D(k),i);var s=i||a.userId||p(k,Q,a);return Promise.resolve(new Promise(function(e){ue.dispatch(v({type:q.identifyStart,userId:s,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[n,t,r])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var a=l(e)?e:n||{},o=l(t)?t:{};return Promise.resolve(new Promise(function(e){ue.dispatch({type:q.trackStart,event:i,properties:a,options:o,userId:p(k,Q,n),anonymousId:p(T,Q,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=l(e)?e:{},i=l(n)?n:{};return Promise.resolve(new Promise(function(a){ue.dispatch({type:q.pageStart,properties:Oe(r),options:i,userId:p(k,Q,r),anonymousId:p(T,Q,r)},a,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===k||"id"===e)return p(k,Q);if(e===T||"anonId"===e)return p(T,Q);var n=Q.getState("user");return e?i(n,e):n},reset:function(e){return new Promise(function(n){ue.dispatch({type:q.resetStart},n,e)})},ready:function(e){return K&&e({plugins:G,instance:Q}),Q.on(q.ready,function(n){e(n),K=!0})},on:function(e,n){if(!e||!d(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:Q,plugins:h}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:Q,plugins:h}),e(r)}}};return U(r,Ce),U(i,Re),function(){V(r,Ce),V(i,Re)}}var a=e.match(t)?Ce:Re,o=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:Q,plugins:h,abort:X}),t(r)}}};return U(o,a),function(){return V(o,a)}},once:function(e,n){if(!e||!d(n))return!1;if(e===q.bootstrap)throw new Error(".once disabled for "+e);var t=Q.on(e,function(e){n({payload:e.payload,instance:Q,plugins:h,abort:X}),t()});return t},getState:function(e){var n=ue.getState();return e?i(n,e):Object.assign({},n)},dispatch:function(e){var n=m(e)?{type:e}:e;if(z.includes(n.type))throw new Error("reserved action "+n.type);var t=v({},n,{_:v({originalAction:n.type},e._||{})});ue.dispatch(t)},enablePlugin:G.enable,disablePlugin:G.disable,plugins:G,storage:{getItem:f.getItem,setItem:function(e,n,t){ue.dispatch({type:q.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ue.dispatch({type:q.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){Q.storage.setItem(A,e,n)},events:{core:z,plugins:w}},Y=s.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ve()),e(n)}}},L(Ce),se(Q,x,{all:_,plugins:w}),le(f),C(Q),B(Q),L(Re)]),Z={context:je,user:R(f),page:_e,track:ve,plugins:de(x),queue:be},ee=N,ne=N;if(g&&n.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(ee=te({trace:!0,traceLimit:25})),ne=function(){return 0===arguments.length?Me():l(typeof arguments[0])?qe():qe().apply(null,arguments)}}var re,ie=function(e){return Object.keys(e).reduce(function(n,t){return ke.includes(t)||(n[t]=e[t]),n},{})}(n),ae=s.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,a=s.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),oe={context:ie,user:H,plugins:ae},ue=P(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===y&&(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:"@@redux/INIT"})===b||typeof t(void 0,{type:I})===b)throw new Error("reducer "+n+" "+b)})}(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===b){var f=S(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(v({},Z,t)),oe,ne(ee(O.apply(void 0,Y))));ue.dispatch=(re=ue.dispatch,function(e,n,t){var r=v({},e,{meta:Ve(e.meta,n,Ue(t))});return re.apply(null,[r])});var ce=Object.keys(h);ue.dispatch({type:q.bootstrap,plugins:ce,config:ie,params:J,user:H,initialUser:c,persistedUser:W});var pe=ce.filter(function(e){return s.pluginEnabled[e]}),me=ce.filter(function(e){return!s.pluginEnabled[e]});return ue.dispatch({type:q.registerPlugins,plugins:ce,enabled:s.pluginEnabled}),s.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&d(t)&&t({instance:Q,config:r,payload:e}),ue.dispatch({type:q.registerPluginType(i),name:i,enabled:s.pluginEnabled[i],plugin:e}),s.pluginsArray.length===n+1&&ue.dispatch({type:q.initializeStart,plugins:pe,disabled:me})}),ze(function(e){ue.dispatch({type:e?q.offline:q.online})}),function(e,n,t){setInterval(function(){return F(e,n,t)},3e3)}(ue,x,Q),Q}var Ce="before",Re="after";export{Le as Analytics,j as CONSTANTS,q as EVENTS,Le as default,Le as init};
//# sourceMappingURL=analytics-core.module.js.map

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},w="analytics",I="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function x(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function k(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[I,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function B(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return B(e,t,n-10).then(r,a)})})}function F(e,t,n){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&r.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[I,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:n});var m=f+":"+l;e.dispatch(i({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}var U=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(R),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(R)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&H(u)?u:n;if(r&&(!(s=u&&H(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:Z(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=Y(e);if(n&&n.name===t){var r=Y(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:X(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),J(n,d))return C({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(J(t,d))return l&&C({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:X(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(J(l,d))C({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(L)&&!p.match(V)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(R)||p.match(/^registerPlugin/)||p.match(V)||p.match(L)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});W(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},R=/Start$/,L=/^bootstrap/,V=/^ready/;function C(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function X(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function $(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function D(e,t){var n=e.replace(R,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function J(e,t){var n=e.abort;return!!n&&(!0===n||K(n,t)||n&&K(n.plugins,t))}function W(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return H(n)&&n.length===t||H(i)&&i.length===t}function H(e){return Array.isArray(e)}function K(e,t){return!(!e||!H(e))&&e.includes(t)}function Y(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function Z(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function G(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,w=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return B(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(w).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===w.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var I=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return F(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(R,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=D(e).map(function(e){return $(e,t)});return t.reduce(function(n,r){var i=r.name,a=D(e,i).map(function(e){return $(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(U({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(R))return Promise.resolve(U({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(W(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(U({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(I&&I.then?I.then(l):l(I))}catch(e){return Promise.reject(e)}}}}}function Q(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ee=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function te(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=ne(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=ne(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,re(n.plugins,!1,t));case O.enablePlugin:return i({},t,re(n.plugins,!0,t));default:return t}}}function ne(e,t){return e.substring(t.length+1,e.length)}function re(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function ie(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ae={last:{},history:[]};function oe(e,t){void 0===e&&(e=ae);var n=t.options,r=t.meta;if(t.type===O.track){var a=ie(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var ue={actions:[]};function ce(e,t){void 0===e&&(e=ue);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var se=/#.*$/;function le(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(se,""):"")}var fe,de,pe,me,ge=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(se,"")}(f),p={title:n,url:d,path:le(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},he={last:{},history:[]};function ye(e,t){void 0===e&&(e=he);var n=t.options;if(t.type===O.page){var r=ie(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}fe=function(){if(!r.isBrowser)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"}(),de=r.isBrowser?document.referrer:null,pe=t.getBrowserLocale(),me=t.getTimeZone();var ve={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:fe},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:w,version:"0.12.5"},timezone:me,locale:pe,campaign:{},referrer:de};function be(e,t){void 0===e&&(e=ve);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},ve,e,{initialized:!0})}}var we=["plugins","reducers","storage"];function Ie(e,t,n){if(r.isBrowser){var i=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function Ee(e){var t=Ie.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function Pe(){return n.set(w,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function Se(e){return function(){return m(m.apply(null,arguments),Pe())}}function Oe(e){return e?r.isArray(e)?e:[e]:[]}function je(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ne(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:k(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,w=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(w.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new ee,q=M.addMiddleware,B=M.removeMiddleware,U=M.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=t.paramsParse(),V=k(y),C=i({},V,l,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});C.anonymousId||(C.anonymousId=t.uuid());var X=i({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.enablePlugin,plugins:Oe(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.disablePlugin,plugins:Oe(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),$=!1,D={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=D.user();n.set(T(I),u);var f=u||c.userId||v(I,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(I,D,t),anonymousId:v(E,D,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ae.dispatch({type:O.pageStart,properties:ge(i),options:a,userId:v(I,D,i),anonymousId:v(E,D,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===I||"id"===e)return v(I,D);if(e===E||"anonId"===e)return v(E,D);var n=D.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:O.resetStart},t,e)})},ready:function(e){return $&&e({plugins:X,instance:D}),D.on(O.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:D,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:D,plugins:b}),e(r)}}};return q(i,Ae),q(a,_e),function(){B(i,Ae),B(a,_e)}}var o=e.match(n)?Ae:_e,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:b,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:b,abort:R}),n()});return n},getState:function(e){var n=ae.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ae.dispatch(n)},enablePlugin:X.enable,disablePlugin:X.disable,plugins:X,storage:{getItem:y.getItem,setItem:function(e,t,n){ae.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(h,e,t)},events:{core:P,plugins:w}},J=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=je()),e(t)}}},U(Ae),G(D,A,{all:N,plugins:w}),Q(y),_(D),z(D),U(_e)]),W={context:be,user:x(y),page:ye,track:oe,plugins:te(A),queue:ce},H=m,K=m;if(r.isBrowser&&e.debug){var Y=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Y&&(H=Y({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?Pe():r.isObject(typeof arguments[0])?Se():Se().apply(null,arguments)}}var Z,ne=function(e){return Object.keys(e).reduce(function(t,n){return we.includes(n)||(t[n]=e[n]),t},{})}(e),re=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:ne,user:C,plugins:re},ae=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},W,u)),ie,K(H(g.apply(void 0,J))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var r=i({},e,{meta:je(e.meta,t,Oe(n))});return Z.apply(null,[r])});var ue=Object.keys(b);ae.dispatch({type:O.bootstrap,plugins:ue,config:ne,params:L,user:C,initialUser:l,persistedUser:V});var se=ue.filter(function(e){return f.pluginEnabled[e]}),le=ue.filter(function(e){return!f.pluginEnabled[e]});return ae.dispatch({type:O.registerPlugins,plugins:ue,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:D,config:i,payload:e}),ae.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ae.dispatch({type:O.initializeStart,plugins:se,disabled:le})}),Ee(function(e){ae.dispatch({type:e?O.offline:O.online})}),function(e,t,n){setInterval(function(){return F(e,t,n)},3e3)}(ae,A,D),D}var Ae="before",_e="after";e.Analytics=Ne,e.CONSTANTS=b,e.EVENTS=O,e.default=Ne,e.init=Ne});
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},w="analytics",I="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function x(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function k(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[I,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function B(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return B(e,t,n-10).then(r,a)})})}function F(e){return{abort:e}}function U(e,t,n){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&r.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[I,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:n,abort:F}))&&r.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var y=d+":"+f;e.dispatch(i({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}var R=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(L),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(L)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&K(u)?u:n;if(r&&(!(s=u&&K(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:G(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=Z(e);if(n&&n.name===t){var r=Z(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:$(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),W(n,d))return X({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(W(t,d))return l&&X({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:$(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(W(l,d))X({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(V)&&!p.match(C)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(L)||p.match(/^registerPlugin/)||p.match(C)||p.match(V)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});H(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},L=/Start$/,V=/^bootstrap/,C=/^ready/;function X(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function $(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function D(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function J(e,t){var n=e.replace(L,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function W(e,t){var n=e.abort;return!!n&&(!0===n||Y(n,t)||n&&Y(n.plugins,t))}function H(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return K(n)&&n.length===t||K(i)&&i.length===t}function K(e){return Array.isArray(e)}function Y(e,t){return!(!e||!K(e))&&e.includes(t)}function Z(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function G(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function Q(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,w=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return B(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(w).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===w.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var I=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return U(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(L,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=J(e).map(function(e){return D(e,t)});return t.reduce(function(n,r){var i=r.name,a=J(e,i).map(function(e){return D(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(R({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(L))return Promise.resolve(R({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(H(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(R({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(I&&I.then?I.then(l):l(I))}catch(e){return Promise.reject(e)}}}}}function ee(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var te=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function ne(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=re(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=re(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,ie(n.plugins,!1,t));case O.enablePlugin:return i({},t,ie(n.plugins,!0,t));default:return t}}}function re(e,t){return e.substring(t.length+1,e.length)}function ie(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function ae(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var oe={last:{},history:[]};function ue(e,t){void 0===e&&(e=oe);var n=t.options,r=t.meta;if(t.type===O.track){var a=ae(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var ce={actions:[]};function se(e,t){void 0===e&&(e=ce);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var le=/#.*$/;function fe(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(le,""):"")}var de,pe,me,ge,he=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(le,"")}(f),p={title:n,url:d,path:fe(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},ye={last:{},history:[]};function ve(e,t){void 0===e&&(e=ye);var n=t.options;if(t.type===O.page){var r=ae(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}de=function(){if(!r.isBrowser)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"}(),pe=r.isBrowser?document.referrer:null,me=t.getBrowserLocale(),ge=t.getTimeZone();var be={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:de},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:w,version:"0.12.7"},timezone:ge,locale:me,campaign:{},referrer:pe};function we(e,t){void 0===e&&(e=be);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},be,e,{initialized:!0})}}var Ie=["plugins","reducers","storage"];function Ee(e,t,n){if(r.isBrowser){var i=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function Pe(e){var t=Ee.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function Se(){return n.set(w,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function Oe(e){return function(){return m(m.apply(null,arguments),Se())}}function je(e){return e?r.isArray(e)?e:[e]:[]}function Ne(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ae(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:k(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,w=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(w.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new te,q=M.addMiddleware,B=M.removeMiddleware,F=M.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=t.paramsParse(),V=k(y),C=i({},V,l,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});C.anonymousId||(C.anonymousId=t.uuid());var X=i({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.enablePlugin,plugins:je(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.disablePlugin,plugins:je(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),$=!1,D={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=D.user();n.set(T(I),u);var f=u||c.userId||v(I,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(I,D,t),anonymousId:v(E,D,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ae.dispatch({type:O.pageStart,properties:he(i),options:a,userId:v(I,D,i),anonymousId:v(E,D,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===I||"id"===e)return v(I,D);if(e===E||"anonId"===e)return v(E,D);var n=D.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:O.resetStart},t,e)})},ready:function(e){return $&&e({plugins:X,instance:D}),D.on(O.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:D,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:D,plugins:b}),e(r)}}};return q(i,_e),q(a,xe),function(){B(i,_e),B(a,xe)}}var o=e.match(n)?_e:xe,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:b,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:b,abort:R}),n()});return n},getState:function(e){var n=ae.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ae.dispatch(n)},enablePlugin:X.enable,disablePlugin:X.disable,plugins:X,storage:{getItem:y.getItem,setItem:function(e,t,n){ae.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(h,e,t)},events:{core:P,plugins:w}},J=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Ne()),e(t)}}},F(_e),Q(D,A,{all:N,plugins:w}),ee(y),_(D),z(D),F(xe)]),W={context:we,user:x(y),page:ve,track:ue,plugins:ne(A),queue:se},H=m,K=m;if(r.isBrowser&&e.debug){var Y=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Y&&(H=Y({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?Se():r.isObject(typeof arguments[0])?Oe():Oe().apply(null,arguments)}}var Z,G=function(e){return Object.keys(e).reduce(function(t,n){return Ie.includes(n)||(t[n]=e[n]),t},{})}(e),re=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:G,user:C,plugins:re},ae=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},W,u)),ie,K(H(g.apply(void 0,J))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var r=i({},e,{meta:Ne(e.meta,t,je(n))});return Z.apply(null,[r])});var oe=Object.keys(b);ae.dispatch({type:O.bootstrap,plugins:oe,config:G,params:L,user:C,initialUser:l,persistedUser:V});var ce=oe.filter(function(e){return f.pluginEnabled[e]}),le=oe.filter(function(e){return!f.pluginEnabled[e]});return ae.dispatch({type:O.registerPlugins,plugins:oe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:D,config:i,payload:e}),ae.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ae.dispatch({type:O.initializeStart,plugins:ce,disabled:le})}),Pe(function(e){ae.dispatch({type:e?O.offline:O.online})}),function(e,t,n){setInterval(function(){return U(e,t,n)},3e3)}(ae,A,D),D}var _e="before",xe="after";e.Analytics=Ae,e.CONSTANTS=b,e.EVENTS=O,e.default=Ae,e.init=Ae});
//# sourceMappingURL=analytics-core.umd.js.map

@@ -1,2 +0,2 @@

var _analytics=function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t,r,i=(t=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}},t(r={exports:{}}),r.exports),o=i,a="object";"undefined"==typeof process||process;var u="undefined"!=typeof document;function c(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,u&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var s=c.bind(null,"toUpperCase"),l=c.bind(null,"toLowerCase");function f(e,n){void 0===n&&(n=!0);var t=function(e){return v(e)?s("null"):"object"==typeof e?function(e){return p(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?l(t):t}function d(e,n){return typeof n===e}var p=d.bind(null,"function"),m=d.bind(null,"string");d.bind(null,"undefined");var g=d.bind(null,"boolean");function v(e){return null===e}function h(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function y(e,n){if("object"!=typeof n||v(n))return!1;if(n instanceof e)return!0;var t=f(new e(""));if(function(e){return e instanceof Error||m(e.message)&&e.constructor&&function(e){return"number"===f(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(f(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function b(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 w(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function I(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function E(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function P(){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}d.bind(null,"symbol"),y.bind(null,TypeError),y.bind(null,SyntaxError),w(b,"form"),w(b,"button"),w(b,"input"),w(b,"select");var S="__global__",x=typeof self===a&&self.self===self&&self||typeof global===a&&global.global===global&&global||void 0;function _(e){return x[S][e]}function O(e,n){return x[S][e]=n}function N(e){delete x[S][e]}x[S]||(x[S]={});var j="function",A="undefined",k="@@redux/",T=k+"INIT",M=k+Math.random().toString(36),z=/* #__PURE__ */function(){return typeof Symbol===j&&Symbol.observable||"@@observable"}(),L=" != "+j;function U(e,n,t){var r;if(typeof n===j&&typeof t===A&&(t=n,n=void 0),typeof t!==A){if(typeof t!==j)throw new Error("enhancer"+L);return t(U)(e,n)}if(typeof e!==j)throw new Error("reducer"+L);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==j)throw new Error("Listener"+L);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(!h(e))throw new Error("Act != obj");if(typeof e.type===A)throw new Error("ActType "+A);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:T}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==j)throw new Error("next reducer"+L);i=e,d({type:T})}})[z]=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)}}})[z]=function(){return this},e},r}function q(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+A}function C(){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 D(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=C.apply(void 0,a)(u.dispatch)})}}}var V="__anon_id",R="__user_id",$="__user_traits",B={__proto__:null,ANON_ID:V,USER_ID:R,USER_TRAITS:$},X="analytics",J="userId",W="anonymousId",H=["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"],F=["name","EVENTS","config","loaded"],Z=H.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),G=/^utm_/,K=/^an_prop_/,Q=/^an_trait_/;function Y(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===Z.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(V,u.anonymousId),l||t(R,u.userId),s.traits&&t($,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(G)||n.match(/^(d|g)clid/)){var t=n.replace(G,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(K)&&(e.props[n.replace(K,"")]=a[n]),n.match(Q)&&(e.traits[n.replace(Q,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:Z.params,raw:a},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&&r.dispatch({type:Z.campaign,campaign:m.campaign})}}return i(o)}}}}function ee(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===Z.setItemEnd){if(r.key===V)return n({},t,{anonymousId:r.value});if(r.key===R)return n({},t,{userId:r.value})}switch(r.type){case Z.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case Z.reset:return[R,V,$].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function ne(e){return{userId:e.getItem(R),anonymousId:e.getItem(V),traits:e.getItem($)}}var te=function(e){return"__TEMP__"+e};function re(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===Z.reset&&([R,$,V].forEach(function(e){i(e)}),[J,W,"traits"].forEach(function(e){N(te(e))})),a.type===Z.identify){o(V)||r(V,P());var l=o(R),f=o($)||{};l&&l!==u&&e.dispatch({type:Z.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(R,u),c&&r($,n({},f,c))}return t(a)}}}}var ie={};function oe(e,n){ie[e]&&p(ie[e])&&(ie[e](n),delete ie[e])}function ae(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ae(e,t,r-10).then(i,o)})})}function ue(e,t,r){var i=t(),o=e.getState(),a=o.plugins,u=o.queue,c=o.user;if(!o.context.offline&&u&&u.actions&&u.actions.length){var s=u.actions.reduce(function(e,n,t){return a[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(s.processIndex&&s.processIndex.length){s.processIndex.forEach(function(t){var o=u.actions[t],s=o.plugin,l=o.payload.type,f=i[s][l];if(f&&p(f)){var d=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[J,W].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(o.payload,c);f({payload:d,config:a[s].config,instance:r});var m=l+":"+s;e.dispatch(n({},d,{type:m,_:{called:m,from:"queueDrain"}}))}});var l=u.actions.filter(function(e,n){return!~s.processIndex.indexOf(n)});u.actions=l}}}var ce=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,f=o.context,d=r.type,m=d.match(se),g=t.exact.map(function(e){return e.pluginName});m&&(g=u.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(se)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&ye(u)?u:r;if(i&&(!(s=u&&ye(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:Ie(r),instance:e,config:a||{},abort:s}}}(i,g),y=t.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(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&p(t.method)?(function(e,n){var t=we(e);if(t&&t.name===n){var r=we(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:d,from:u||o}})}),config:pe(t.pluginName,l,a),plugins:l})).then(function(t){var r=h(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,p=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),ve(r,f))return de({data:r,method:d,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(ve(t,f))return s&&de({data:t,method:d,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=v(e[f],a[f]);return Promise.resolve(p[d]({abort:o.abort,payload:r,instance:i,config:pe(f,l,a),plugins:l})).then(function(o){var a=h(o)?o:{},u=n({},t,a),s=e[f];if(ve(s,f))de({data:s,method:d,instance:i,pluginName:f,store:c});else{var l=d+":"+f;(l.match(/:/g)||[]).length<2&&!d.match(le)&&!d.match(fe)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(d.match(se)||d.match(/^registerPlugin/)||d.match(fe)||d.match(le)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),e._&&e._.originalAction===d)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});he(e,t.exact.length)&&!d.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},se=/Start$/,le=/^bootstrap/,fe=/^ready/;function de(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function pe(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function me(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function ge(e,n){var t=e.replace(se,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function ve(e,n){var t=e.abort;return!!t&&(!0===t||be(t,n)||t&&be(t.plugins,n))}function he(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return ye(t)&&t.length===n||ye(r)&&r.length===n}function ye(e){return Array.isArray(e)}function be(e,n){return!(!e||!ye(e))&&e.includes(n)}function we(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function Ie(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=h(e[t])?Object.assign({},e[t]):e[t]),n},{})}function Ee(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(d)},l=u.type,f=u.plugins,d=u;if(u.abort)return Promise.resolve(a(u));if(l===Z.enablePlugin&&o.dispatch({type:Z.initializeStart,plugins:f,disabled:[],fromEnable:!0,meta:u.meta}),l===Z.disablePlugin&&setTimeout(function(){return oe(u.meta.rid,{payload:u})},0),l===Z.initializeEnd){var m=t(),v=Object.keys(m),h=v.filter(function(e){return f.includes(e)}).map(function(e){return m[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ae(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:Z.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!F.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:Z.ready},t))},0)})}var E=function(){if(l!==Z.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return ue(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=p(t)?t():t,u=e.type,c=u.replace(se,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(m=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return g(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return m[e]}));u===Z.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 a[e]}));var f=l.map(function(e){return e.name}),d=function(e,n,t){var r=ge(e).map(function(e){return me(e,n)});return n.reduce(function(t,r){var i=r.name,o=ge(e,i).map(function(e){return me(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(ce({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(se))return Promise.resolve(ce({action:n({},l,{type:c+"End"}),data:{exact:d.after,namespaced:d.afterNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&oe(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(he(e,f.length))return e;var l,p=function(){if(u!==c)return Promise.resolve(ce({action:n({},e,{type:c}),data:{exact:d.during,namespaced:d.duringNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return p&&p.then?p.then(t):t()})}catch(e){return Promise.reject(e)}var m,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Pe(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===Z.setItem||r===Z.removeItem){if(t.abort)return n(t);r===Z.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var Se=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return C.apply(void 0,a)(r)(i)}}}}};function xe(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=_e(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=_e(r.type,Z.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case Z.disablePlugin:return n({},t,Oe(r.plugins,!1,t));case Z.enablePlugin:return n({},t,Oe(r.plugins,!0,t));default:return t}}}function _e(e,n){return e.substring(n.length+1,e.length)}function Oe(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function Ne(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var je={last:{},history:[]};function Ae(e,t){void 0===e&&(e=je);var r=t.options,i=t.meta;if(t.type===Z.track){var o=Ne(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var ke={actions:[]};function Te(e,t){void 0===e&&(e=ke);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===Z.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var Me=/#.*$/;function ze(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Me,""):"")}var Le,Ue,qe,Ce,De=function(e){if(void 0===e&&(e={}),!u)return e;var t=document,r=t.title,i=t.referrer,o=window,a=o.location,c=o.innerWidth,s=o.innerHeight,l=a.hash,f=a.search,d=function(e){var n=function(){if(u)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(Me,"")}(f),p={title:r,url:d,path:ze(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},Ve={last:{},history:[]};function Re(e,t){void 0===e&&(e=Ve);var r=t.options;if(t.type===Z.page){var i=Ne(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}Le=function(){if(!u)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"}(),Ue=u?document.referrer:null,qe=function(){if(u){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),Ce=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var $e={initialized:!1,sessionId:P(),app:null,version:null,debug:!1,offline:!!u&&!navigator.onLine,os:{name:Le},userAgent:u?navigator.userAgent:"node",library:{name:X,version:"0.12.5"},timezone:Ce,locale:qe,campaign:{},referrer:Ue};function Be(e,t){void 0===e&&(e=$e);var r=e.initialized,i=t.campaign;switch(t.type){case Z.campaign:return n({},e,{campaign:i});case Z.offline:return n({},e,{offline:!0});case Z.online:return n({},e,{offline:!1});default:return r?e:n({},$e,e,{initialized:!0})}}var Xe=["plugins","reducers","storage"];function Je(e,n,t){if(u){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function We(e){var n=Je.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function He(){return O(X,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return x[S].analytics.push(e.action||e),o(e)}})}}}function Fe(e){return function(){return C(C.apply(null,arguments),He())}}function Ze(e){return e?function(e){return"array"===f(e)}(e)?e:[e]:[]}function Ge(e,t,r){void 0===e&&(e={});var i,o,a=P();return t&&(ie[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(p(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ke(e){void 0===e&&(e={});var t=e.reducers||{},r=e.initialUser||{},i=(e.plugins||[]).reduce(function(e,n){if(p(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]=$,e.apply({instance:$},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:[]}),a=e.storage?e.storage:{getItem:_,setItem:O,removeItem:N},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&h(r)&&r[n]?r[n]:ne(e)[n]||_(te(n))||null)}}(a),s=i.plugins,l=i.events.filter(function(e){return!F.includes(e)}).sort(),f=new Set(l.concat(H).filter(function(e){return!F.includes(e)})),d=Array.from(f).sort(),g=function(){return s},v=new Se,y=v.addMiddleware,b=v.removeMiddleware,w=v.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},x=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=I(n[1]),o=I(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(E(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(u&&window.location.search.substring(1)),k=ne(a),z=n({},k,r,x.an_uid?{userId:x.an_uid}:{},x.an_aid?{anonymousId:x.an_aid}:{});z.anonymousId||(z.anonymousId=P());var L=n({enable:function(e,n){return new Promise(function(t){ce.dispatch({type:Z.enablePlugin,plugins:Ze(e),_:{originalAction:Z.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ce.dispatch({type:Z.disablePlugin,plugins:Ze(e),_:{originalAction:Z.disablePlugin}},t,[n])})}},i.methods),R=!1,$={identify:function(e,t,r,i){try{var o=m(e)?e:null,a=h(e)?e:t,u=r||{},s=$.user();O(te(J),o);var l=o||a.userId||c(J,$,a);return Promise.resolve(new Promise(function(e){ce.dispatch(n({type:Z.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=h(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var o=h(e)?e:n||{},a=h(t)?t:{};return Promise.resolve(new Promise(function(e){ce.dispatch({type:Z.trackStart,event:i,properties:o,options:a,userId:c(J,$,n),anonymousId:c(W,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=h(e)?e:{},i=h(n)?n:{};return Promise.resolve(new Promise(function(o){ce.dispatch({type:Z.pageStart,properties:De(r),options:i,userId:c(J,$,r),anonymousId:c(W,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===J||"id"===e)return c(J,$);if(e===W||"anonId"===e)return c(W,$);var n=$.getState("user");return e?o(n,e):n},reset:function(e){return new Promise(function(n){ce.dispatch({type:Z.resetStart},n,e)})},ready:function(e){return R&&e({plugins:L,instance:$}),$.on(Z.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!p(n))return!1;if(e===Z.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Qe),y(i,Ye),function(){b(r,Qe),b(i,Ye)}}var o=e.match(t)?Qe:Ye,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:S}),t(r)}}};return y(a,o),function(){return b(a,o)}},once:function(e,n){if(!e||!p(n))return!1;if(e===Z.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:S}),t()});return t},getState:function(e){var n=ce.getState();return e?o(n,e):Object.assign({},n)},dispatch:function(e){var t=m(e)?{type:e}:e;if(H.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});ce.dispatch(r)},enablePlugin:L.enable,disablePlugin:L.disable,plugins:L,storage:{getItem:a.getItem,setItem:function(e,n,t){ce.dispatch({type:Z.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ce.dispatch({type:Z.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(V,e,n)},events:{core:H,plugins:l}},B=i.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ge()),e(n)}}},w(Qe),Ee($,g,{all:d,plugins:l}),Pe(a),Y($),re($),w(Ye)]),X={context:Be,user:ee(a),page:Re,track:Ae,plugins:xe(g),queue:Te},G=C,K=C;if(u&&e.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(G=Q({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?He():h(typeof arguments[0])?Fe():Fe().apply(null,arguments)}}var ie=function(e){return Object.keys(e).reduce(function(n,t){return Xe.includes(t)||(n[t]=e[t]),n},{})}(e),oe=i.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,o=n.loaded,a=i.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(o({config:r})),config:r},e},{}),ae={context:ie,user:z,plugins:oe},ce=U(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===j&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:T})===A||typeof t(void 0,{type:M})===A)throw new Error("reducer "+n+" "+A)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===A){var f=q(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},X,t)),ae,K(G(D.apply(void 0,B))));ce.dispatch=function(e){return function(t,r,i){var o=n({},t,{meta:Ge(t.meta,r,Ze(i))});return e.apply(null,[o])}}(ce.dispatch);var se=Object.keys(s);ce.dispatch({type:Z.bootstrap,plugins:se,config:ie,params:x,user:z,initialUser:r,persistedUser:k});var le=se.filter(function(e){return i.pluginEnabled[e]}),fe=se.filter(function(e){return!i.pluginEnabled[e]});return ce.dispatch({type:Z.registerPlugins,plugins:se,enabled:i.pluginEnabled}),i.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,o=e.name;t&&p(t)&&t({instance:$,config:r,payload:e}),ce.dispatch({type:Z.registerPluginType(o),name:o,enabled:i.pluginEnabled[o],plugin:e}),i.pluginsArray.length===n+1&&ce.dispatch({type:Z.initializeStart,plugins:le,disabled:fe})}),We(function(e){ce.dispatch({type:e?Z.offline:Z.online})}),function(e,n,t){setInterval(function(){return ue(e,n,t)},3e3)}(ce,g,$),$}var Qe="before",Ye="after";return e.Analytics=Ke,e.CONSTANTS=B,e.EVENTS=Z,e.default=Ke,e.init=Ke,e}({});
var _analytics=function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t,r,i=(t=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}},t(r={exports:{}}),r.exports),o=i,a="object";"undefined"==typeof process||process;var u="undefined"!=typeof document;function c(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,u&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var s=c.bind(null,"toUpperCase"),l=c.bind(null,"toLowerCase");function f(e,n){void 0===n&&(n=!0);var t=function(e){return v(e)?s("null"):"object"==typeof e?function(e){return p(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?l(t):t}function d(e,n){return typeof n===e}var p=d.bind(null,"function"),m=d.bind(null,"string");d.bind(null,"undefined");var g=d.bind(null,"boolean");function v(e){return null===e}function h(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function y(e,n){if("object"!=typeof n||v(n))return!1;if(n instanceof e)return!0;var t=f(new e(""));if(function(e){return e instanceof Error||m(e.message)&&e.constructor&&function(e){return"number"===f(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(f(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function b(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 w(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function I(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function E(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function P(){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}d.bind(null,"symbol"),y.bind(null,TypeError),y.bind(null,SyntaxError),w(b,"form"),w(b,"button"),w(b,"input"),w(b,"select");var S="__global__",x=typeof self===a&&self.self===self&&self||typeof global===a&&global.global===global&&global||void 0;function _(e){return x[S][e]}function O(e,n){return x[S][e]=n}function N(e){delete x[S][e]}x[S]||(x[S]={});var j="function",A="undefined",k="@@redux/",T=k+"INIT",M=k+Math.random().toString(36),z=/* #__PURE__ */function(){return typeof Symbol===j&&Symbol.observable||"@@observable"}(),L=" != "+j;function U(e,n,t){var r;if(typeof n===j&&typeof t===A&&(t=n,n=void 0),typeof t!==A){if(typeof t!==j)throw new Error("enhancer"+L);return t(U)(e,n)}if(typeof e!==j)throw new Error("reducer"+L);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==j)throw new Error("Listener"+L);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(!h(e))throw new Error("Act != obj");if(typeof e.type===A)throw new Error("ActType "+A);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:T}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==j)throw new Error("next reducer"+L);i=e,d({type:T})}})[z]=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)}}})[z]=function(){return this},e},r}function q(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+A}function C(){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 D(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=C.apply(void 0,a)(u.dispatch)})}}}var V="__anon_id",R="__user_id",$="__user_traits",B={__proto__:null,ANON_ID:V,USER_ID:R,USER_TRAITS:$},X="analytics",J="userId",W="anonymousId",H=["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"],F=["name","EVENTS","config","loaded"],Z=H.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),G=/^utm_/,K=/^an_prop_/,Q=/^an_trait_/;function Y(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===Z.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(V,u.anonymousId),l||t(R,u.userId),s.traits&&t($,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(G)||n.match(/^(d|g)clid/)){var t=n.replace(G,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(K)&&(e.props[n.replace(K,"")]=a[n]),n.match(Q)&&(e.traits[n.replace(Q,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:Z.params,raw:a},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&&r.dispatch({type:Z.campaign,campaign:m.campaign})}}return i(o)}}}}function ee(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===Z.setItemEnd){if(r.key===V)return n({},t,{anonymousId:r.value});if(r.key===R)return n({},t,{userId:r.value})}switch(r.type){case Z.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case Z.reset:return[R,V,$].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function ne(e){return{userId:e.getItem(R),anonymousId:e.getItem(V),traits:e.getItem($)}}var te=function(e){return"__TEMP__"+e};function re(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===Z.reset&&([R,$,V].forEach(function(e){i(e)}),[J,W,"traits"].forEach(function(e){N(te(e))})),a.type===Z.identify){o(V)||r(V,P());var l=o(R),f=o($)||{};l&&l!==u&&e.dispatch({type:Z.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(R,u),c&&r($,n({},f,c))}return t(a)}}}}var ie={};function oe(e,n){ie[e]&&p(ie[e])&&(ie[e](n),delete ie[e])}function ae(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ae(e,t,r-10).then(i,o)})})}function ue(e){return{abort:e}}function ce(e,t,r){var i={},o=t(),a=e.getState(),u=a.plugins,c=a.queue,s=a.user;if(!a.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(t){var a=c.actions[t],l=a.plugin,f=a.payload.type,d=o[l][f];if(d&&p(d)){var m,g=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[J,W].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(a.payload,s),v=i[g.meta.rid];if(!v&&(m=d({payload:g,config:u[l].config,instance:r,abort:ue}))&&h(m)&&m.abort)return void(i[g.meta.rid]=!0);if(!v){var y=f+":"+l;e.dispatch(n({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var f=c.actions.filter(function(e,n){return!~l.processIndex.indexOf(n)});c.actions=f}}}var se=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,f=o.context,d=r.type,m=d.match(le),g=t.exact.map(function(e){return e.pluginName});m&&(g=u.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(le)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&be(u)?u:r;if(i&&(!(s=u&&be(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:Ee(r),instance:e,config:a||{},abort:s}}}(i,g),y=t.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(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&p(t.method)?(function(e,n){var t=Ie(e);if(t&&t.name===n){var r=Ie(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:d,from:u||o}})}),config:me(t.pluginName,l,a),plugins:l})).then(function(t){var r=h(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,p=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),he(r,f))return pe({data:r,method:d,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(he(t,f))return s&&pe({data:t,method:d,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=v(e[f],a[f]);return Promise.resolve(p[d]({abort:o.abort,payload:r,instance:i,config:me(f,l,a),plugins:l})).then(function(o){var a=h(o)?o:{},u=n({},t,a),s=e[f];if(he(s,f))pe({data:s,method:d,instance:i,pluginName:f,store:c});else{var l=d+":"+f;(l.match(/:/g)||[]).length<2&&!d.match(fe)&&!d.match(de)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(d.match(le)||d.match(/^registerPlugin/)||d.match(de)||d.match(fe)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),e._&&e._.originalAction===d)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ye(e,t.exact.length)&&!d.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},le=/Start$/,fe=/^bootstrap/,de=/^ready/;function pe(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function me(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function ge(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function ve(e,n){var t=e.replace(le,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function he(e,n){var t=e.abort;return!!t&&(!0===t||we(t,n)||t&&we(t.plugins,n))}function ye(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return be(t)&&t.length===n||be(r)&&r.length===n}function be(e){return Array.isArray(e)}function we(e,n){return!(!e||!be(e))&&e.includes(n)}function Ie(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function Ee(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=h(e[t])?Object.assign({},e[t]):e[t]),n},{})}function Pe(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(d)},l=u.type,f=u.plugins,d=u;if(u.abort)return Promise.resolve(a(u));if(l===Z.enablePlugin&&o.dispatch({type:Z.initializeStart,plugins:f,disabled:[],fromEnable:!0,meta:u.meta}),l===Z.disablePlugin&&setTimeout(function(){return oe(u.meta.rid,{payload:u})},0),l===Z.initializeEnd){var m=t(),v=Object.keys(m),h=v.filter(function(e){return f.includes(e)}).map(function(e){return m[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ae(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:Z.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!F.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:Z.ready},t))},0)})}var E=function(){if(l!==Z.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return ce(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=p(t)?t():t,u=e.type,c=u.replace(le,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(m=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return g(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return m[e]}));u===Z.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 a[e]}));var f=l.map(function(e){return e.name}),d=function(e,n,t){var r=ve(e).map(function(e){return ge(e,n)});return n.reduce(function(t,r){var i=r.name,o=ve(e,i).map(function(e){return ge(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(se({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(le))return Promise.resolve(se({action:n({},l,{type:c+"End"}),data:{exact:d.after,namespaced:d.afterNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&oe(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ye(e,f.length))return e;var l,p=function(){if(u!==c)return Promise.resolve(se({action:n({},e,{type:c}),data:{exact:d.during,namespaced:d.duringNS},state:s,allPlugins:a,allMatches:d,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return p&&p.then?p.then(t):t()})}catch(e){return Promise.reject(e)}var m,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Se(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===Z.setItem||r===Z.removeItem){if(t.abort)return n(t);r===Z.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var xe=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return C.apply(void 0,a)(r)(i)}}}}};function _e(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=Oe(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=Oe(r.type,Z.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case Z.disablePlugin:return n({},t,Ne(r.plugins,!1,t));case Z.enablePlugin:return n({},t,Ne(r.plugins,!0,t));default:return t}}}function Oe(e,n){return e.substring(n.length+1,e.length)}function Ne(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function je(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var Ae={last:{},history:[]};function ke(e,t){void 0===e&&(e=Ae);var r=t.options,i=t.meta;if(t.type===Z.track){var o=je(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var Te={actions:[]};function Me(e,t){void 0===e&&(e=Te);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===Z.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var ze=/#.*$/;function Le(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(ze,""):"")}var Ue,qe,Ce,De,Ve=function(e){if(void 0===e&&(e={}),!u)return e;var t=document,r=t.title,i=t.referrer,o=window,a=o.location,c=o.innerWidth,s=o.innerHeight,l=a.hash,f=a.search,d=function(e){var n=function(){if(u)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(ze,"")}(f),p={title:r,url:d,path:Le(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},Re={last:{},history:[]};function $e(e,t){void 0===e&&(e=Re);var r=t.options;if(t.type===Z.page){var i=je(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}Ue=function(){if(!u)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"}(),qe=u?document.referrer:null,Ce=function(){if(u){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),De=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var Be={initialized:!1,sessionId:P(),app:null,version:null,debug:!1,offline:!!u&&!navigator.onLine,os:{name:Ue},userAgent:u?navigator.userAgent:"node",library:{name:X,version:"0.12.7"},timezone:De,locale:Ce,campaign:{},referrer:qe};function Xe(e,t){void 0===e&&(e=Be);var r=e.initialized,i=t.campaign;switch(t.type){case Z.campaign:return n({},e,{campaign:i});case Z.offline:return n({},e,{offline:!0});case Z.online:return n({},e,{offline:!1});default:return r?e:n({},Be,e,{initialized:!0})}}var Je=["plugins","reducers","storage"];function We(e,n,t){if(u){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function He(e){var n=We.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Fe(){return O(X,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return x[S].analytics.push(e.action||e),o(e)}})}}}function Ze(e){return function(){return C(C.apply(null,arguments),Fe())}}function Ge(e){return e?function(e){return"array"===f(e)}(e)?e:[e]:[]}function Ke(e,t,r){void 0===e&&(e={});var i,o,a=P();return t&&(ie[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(p(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Qe(e){void 0===e&&(e={});var t=e.reducers||{},r=e.initialUser||{},i=(e.plugins||[]).reduce(function(e,n){if(p(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]=$,e.apply({instance:$},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:[]}),a=e.storage?e.storage:{getItem:_,setItem:O,removeItem:N},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&h(r)&&r[n]?r[n]:ne(e)[n]||_(te(n))||null)}}(a),s=i.plugins,l=i.events.filter(function(e){return!F.includes(e)}).sort(),f=new Set(l.concat(H).filter(function(e){return!F.includes(e)})),d=Array.from(f).sort(),g=function(){return s},v=new xe,y=v.addMiddleware,b=v.removeMiddleware,w=v.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},x=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=I(n[1]),o=I(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(E(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(u&&window.location.search.substring(1)),k=ne(a),z=n({},k,r,x.an_uid?{userId:x.an_uid}:{},x.an_aid?{anonymousId:x.an_aid}:{});z.anonymousId||(z.anonymousId=P());var L=n({enable:function(e,n){return new Promise(function(t){ue.dispatch({type:Z.enablePlugin,plugins:Ge(e),_:{originalAction:Z.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ue.dispatch({type:Z.disablePlugin,plugins:Ge(e),_:{originalAction:Z.disablePlugin}},t,[n])})}},i.methods),R=!1,$={identify:function(e,t,r,i){try{var o=m(e)?e:null,a=h(e)?e:t,u=r||{},s=$.user();O(te(J),o);var l=o||a.userId||c(J,$,a);return Promise.resolve(new Promise(function(e){ue.dispatch(n({type:Z.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=h(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var o=h(e)?e:n||{},a=h(t)?t:{};return Promise.resolve(new Promise(function(e){ue.dispatch({type:Z.trackStart,event:i,properties:o,options:a,userId:c(J,$,n),anonymousId:c(W,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=h(e)?e:{},i=h(n)?n:{};return Promise.resolve(new Promise(function(o){ue.dispatch({type:Z.pageStart,properties:Ve(r),options:i,userId:c(J,$,r),anonymousId:c(W,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===J||"id"===e)return c(J,$);if(e===W||"anonId"===e)return c(W,$);var n=$.getState("user");return e?o(n,e):n},reset:function(e){return new Promise(function(n){ue.dispatch({type:Z.resetStart},n,e)})},ready:function(e){return R&&e({plugins:L,instance:$}),$.on(Z.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!p(n))return!1;if(e===Z.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Ye),y(i,en),function(){b(r,Ye),b(i,en)}}var o=e.match(t)?Ye:en,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:S}),t(r)}}};return y(a,o),function(){return b(a,o)}},once:function(e,n){if(!e||!p(n))return!1;if(e===Z.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:S}),t()});return t},getState:function(e){var n=ue.getState();return e?o(n,e):Object.assign({},n)},dispatch:function(e){var t=m(e)?{type:e}:e;if(H.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});ue.dispatch(r)},enablePlugin:L.enable,disablePlugin:L.disable,plugins:L,storage:{getItem:a.getItem,setItem:function(e,n,t){ue.dispatch({type:Z.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ue.dispatch({type:Z.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(V,e,n)},events:{core:H,plugins:l}},B=i.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ke()),e(n)}}},w(Ye),Pe($,g,{all:d,plugins:l}),Se(a),Y($),re($),w(en)]),X={context:Xe,user:ee(a),page:$e,track:ke,plugins:_e(g),queue:Me},G=C,K=C;if(u&&e.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(G=Q({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?Fe():h(typeof arguments[0])?Ze():Ze().apply(null,arguments)}}var ie=function(e){return Object.keys(e).reduce(function(n,t){return Je.includes(t)||(n[t]=e[t]),n},{})}(e),oe=i.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,o=n.loaded,a=i.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(o({config:r})),config:r},e},{}),ae={context:ie,user:z,plugins:oe},ue=U(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===j&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:T})===A||typeof t(void 0,{type:M})===A)throw new Error("reducer "+n+" "+A)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===A){var f=q(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},X,t)),ae,K(G(D.apply(void 0,B))));ue.dispatch=function(e){return function(t,r,i){var o=n({},t,{meta:Ke(t.meta,r,Ge(i))});return e.apply(null,[o])}}(ue.dispatch);var se=Object.keys(s);ue.dispatch({type:Z.bootstrap,plugins:se,config:ie,params:x,user:z,initialUser:r,persistedUser:k});var le=se.filter(function(e){return i.pluginEnabled[e]}),fe=se.filter(function(e){return!i.pluginEnabled[e]});return ue.dispatch({type:Z.registerPlugins,plugins:se,enabled:i.pluginEnabled}),i.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,o=e.name;t&&p(t)&&t({instance:$,config:r,payload:e}),ue.dispatch({type:Z.registerPluginType(o),name:o,enabled:i.pluginEnabled[o],plugin:e}),i.pluginsArray.length===n+1&&ue.dispatch({type:Z.initializeStart,plugins:le,disabled:fe})}),He(function(e){ue.dispatch({type:e?Z.offline:Z.online})}),function(e,n,t){setInterval(function(){return ce(e,n,t)},3e3)}(ue,g,$),$}var Ye="before",en="after";return e.Analytics=Qe,e.CONSTANTS=B,e.EVENTS=Z,e.default=Qe,e.init=Qe,e}({});
//# sourceMappingURL=core.js.map

@@ -1,2 +0,2 @@

!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e||self)._analytics={})}(this,function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t=function(e){var n={exports:{}};return 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}}(n),n.exports}(),r=t,i="object";"undefined"==typeof process||process;var o="undefined"!=typeof document;function a(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,o&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var u=a.bind(null,"toUpperCase"),c=a.bind(null,"toLowerCase");function s(e,n){void 0===n&&(n=!0);var t=function(e){return m(e)?u("null"):"object"==typeof e?function(e){return f(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?c(t):t}function l(e,n){return typeof n===e}var f=l.bind(null,"function"),d=l.bind(null,"string");l.bind(null,"undefined");var p=l.bind(null,"boolean");function m(e){return null===e}function g(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function v(e,n){if("object"!=typeof n||m(n))return!1;if(n instanceof e)return!0;var t=s(new e(""));if(function(e){return e instanceof Error||d(e.message)&&e.constructor&&function(e){return"number"===s(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(s(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function h(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 y(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function b(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function w(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function I(){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}l.bind(null,"symbol"),v.bind(null,TypeError),v.bind(null,SyntaxError),y(h,"form"),y(h,"button"),y(h,"input"),y(h,"select");var E="__global__",P=typeof self===i&&self.self===self&&self||typeof global===i&&global.global===global&&global||void 0;function x(e){return P[E][e]}function S(e,n){return P[E][e]=n}function _(e){delete P[E][e]}P[E]||(P[E]={});var O="function",j="undefined",N="@@redux/",A=N+"INIT",k=N+Math.random().toString(36),T=/* #__PURE__ */function(){return typeof Symbol===O&&Symbol.observable||"@@observable"}(),M=" != "+O;function z(e,n,t){var r;if(typeof n===O&&typeof t===j&&(t=n,n=void 0),typeof t!==j){if(typeof t!==O)throw new Error("enhancer"+M);return t(z)(e,n)}if(typeof e!==O)throw new Error("reducer"+M);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==O)throw new Error("Listener"+M);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(!g(e))throw new Error("Act != obj");if(typeof e.type===j)throw new Error("ActType "+j);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:A}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==O)throw new Error("next reducer"+M);i=e,d({type:A})}})[T]=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)}}})[T]=function(){return this},e},r}function L(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+j}function U(){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 q(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=U.apply(void 0,a)(u.dispatch)})}}}var C="__anon_id",D="__user_id",V="__user_traits",R={__proto__:null,ANON_ID:C,USER_ID:D,USER_TRAITS:V},$="analytics",B="userId",X="anonymousId",J=["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"],W=["name","EVENTS","config","loaded"],H=J.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),F=/^utm_/,Z=/^an_prop_/,G=/^an_trait_/;function K(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===H.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(C,u.anonymousId),l||t(D,u.userId),s.traits&&t(V,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(F)||n.match(/^(d|g)clid/)){var t=n.replace(F,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(Z)&&(e.props[n.replace(Z,"")]=a[n]),n.match(G)&&(e.traits[n.replace(G,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:H.params,raw:a},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&&r.dispatch({type:H.campaign,campaign:m.campaign})}}return i(o)}}}}function Q(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===H.setItemEnd){if(r.key===C)return n({},t,{anonymousId:r.value});if(r.key===D)return n({},t,{userId:r.value})}switch(r.type){case H.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case H.reset:return[D,C,V].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Y(e){return{userId:e.getItem(D),anonymousId:e.getItem(C),traits:e.getItem(V)}}var ee=function(e){return"__TEMP__"+e};function ne(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===H.reset&&([D,V,C].forEach(function(e){i(e)}),[B,X,"traits"].forEach(function(e){_(ee(e))})),a.type===H.identify){o(C)||r(C,I());var l=o(D),f=o(V)||{};l&&l!==u&&e.dispatch({type:H.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(D,u),c&&r(V,n({},f,c))}return t(a)}}}}var te={};function re(e,n){te[e]&&f(te[e])&&(te[e](n),delete te[e])}function ie(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ie(e,t,r-10).then(i,o)})})}function oe(e,t,r){var i=t(),o=e.getState(),a=o.plugins,u=o.queue,c=o.user;if(!o.context.offline&&u&&u.actions&&u.actions.length){var s=u.actions.reduce(function(e,n,t){return a[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(s.processIndex&&s.processIndex.length){s.processIndex.forEach(function(t){var o=u.actions[t],s=o.plugin,l=o.payload.type,d=i[s][l];if(d&&f(d)){var p=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[B,X].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(o.payload,c);d({payload:p,config:a[s].config,instance:r});var m=l+":"+s;e.dispatch(n({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var l=u.actions.filter(function(e,n){return!~s.processIndex.indexOf(n)});u.actions=l}}}var ae=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,d=o.context,p=r.type,m=p.match(ue),v=t.exact.map(function(e){return e.pluginName});m&&(v=u.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(ue)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&ve(u)?u:r;if(i&&(!(s=u&&ve(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:be(r),instance:e,config:a||{},abort:s}}}(i,v),y=t.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),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&f(t.method)?(function(e,n){var t=ye(e);if(t&&t.name===n){var r=ye(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:p,from:u||o}})}),config:fe(t.pluginName,l,a),plugins:l})).then(function(t){var r=g(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,d=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),me(r,f))return le({data:r,method:p,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(me(t,f))return s&&le({data:t,method:p,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[f],a[f]);return Promise.resolve(d[p]({abort:o.abort,payload:r,instance:i,config:fe(f,l,a),plugins:l})).then(function(o){var a=g(o)?o:{},u=n({},t,a),s=e[f];if(me(s,f))le({data:s,method:p,instance:i,pluginName:f,store:c});else{var l=p+":"+f;(l.match(/:/g)||[]).length<2&&!p.match(ce)&&!p.match(se)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(p.match(ue)||p.match(/^registerPlugin/)||p.match(se)||p.match(ce)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ge(e,t.exact.length)&&!p.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},ue=/Start$/,ce=/^bootstrap/,se=/^ready/;function le(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function fe(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function de(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function pe(e,n){var t=e.replace(ue,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function me(e,n){var t=e.abort;return!!t&&(!0===t||he(t,n)||t&&he(t.plugins,n))}function ge(e,n){var t=e.abort;if(!t)return!1;if(!0===t||d(t))return!0;var r=t.plugins;return ve(t)&&t.length===n||ve(r)&&r.length===n}function ve(e){return Array.isArray(e)}function he(e,n){return!(!e||!ve(e))&&e.includes(n)}function ye(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function be(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=g(e[t])?Object.assign({},e[t]):e[t]),n},{})}function we(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(m)},l=u.type,d=u.plugins,m=u;if(u.abort)return Promise.resolve(a(u));if(l===H.enablePlugin&&o.dispatch({type:H.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:u.meta}),l===H.disablePlugin&&setTimeout(function(){return re(u.meta.rid,{payload:u})},0),l===H.initializeEnd){var g=t(),v=Object.keys(g),h=v.filter(function(e){return d.includes(e)}).map(function(e){return g[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ie(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:H.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!W.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:H.ready},t))},0)})}var E=function(){if(l!==H.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return oe(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=f(t)?t():t,u=e.type,c=u.replace(ue,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(g=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(g).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return g[e]}));u===H.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 a[e]}));var d=l.map(function(e){return e.name}),m=function(e,n,t){var r=pe(e).map(function(e){return de(e,n)});return n.reduce(function(t,r){var i=r.name,o=pe(e,i).map(function(e){return de(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(ae({action:e,data:{exact:m.before,namespaced:m.beforeNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(ue))return Promise.resolve(ae({action:n({},l,{type:c+"End"}),data:{exact:m.after,namespaced:m.afterNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&re(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ge(e,d.length))return e;var l,f=function(){if(u!==c)return Promise.resolve(ae({action:n({},e,{type:c}),data:{exact:m.during,namespaced:m.duringNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var g,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Ie(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===H.setItem||r===H.removeItem){if(t.abort)return n(t);r===H.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var Ee=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return U.apply(void 0,a)(r)(i)}}}}};function Pe(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=xe(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=xe(r.type,H.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case H.disablePlugin:return n({},t,Se(r.plugins,!1,t));case H.enablePlugin:return n({},t,Se(r.plugins,!0,t));default:return t}}}function xe(e,n){return e.substring(n.length+1,e.length)}function Se(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function _e(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var Oe={last:{},history:[]};function je(e,t){void 0===e&&(e=Oe);var r=t.options,i=t.meta;if(t.type===H.track){var o=_e(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var Ne={actions:[]};function Ae(e,t){void 0===e&&(e=Ne);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===H.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var ke=/#.*$/;function Te(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(ke,""):"")}var Me,ze,Le,Ue,qe=function(e){if(void 0===e&&(e={}),!o)return e;var t=document,r=t.title,i=t.referrer,a=window,u=a.location,c=a.innerWidth,s=a.innerHeight,l=u.hash,f=u.search,d=function(e){var n=function(){if(o)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(ke,"")}(f),p={title:r,url:d,path:Te(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},Ce={last:{},history:[]};function De(e,t){void 0===e&&(e=Ce);var r=t.options;if(t.type===H.page){var i=_e(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}Me=function(){if(!o)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"}(),ze=o?document.referrer:null,Le=function(){if(o){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),Ue=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var Ve={initialized:!1,sessionId:I(),app:null,version:null,debug:!1,offline:!!o&&!navigator.onLine,os:{name:Me},userAgent:o?navigator.userAgent:"node",library:{name:$,version:"0.12.5"},timezone:Ue,locale:Le,campaign:{},referrer:ze};function Re(e,t){void 0===e&&(e=Ve);var r=e.initialized,i=t.campaign;switch(t.type){case H.campaign:return n({},e,{campaign:i});case H.offline:return n({},e,{offline:!0});case H.online:return n({},e,{offline:!1});default:return r?e:n({},Ve,e,{initialized:!0})}}var $e=["plugins","reducers","storage"];function Be(e,n,t){if(o){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Xe(e){var n=Be.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Je(){return S($,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return P[E].analytics.push(e.action||e),o(e)}})}}}function We(e){return function(){return U(U.apply(null,arguments),Je())}}function He(e){return e?function(e){return"array"===s(e)}(e)?e:[e]:[]}function Fe(e,t,r){void 0===e&&(e={});var i,o,a=I();return t&&(te[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(f(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ze(e){void 0===e&&(e={});var t=e.reducers||{},i=e.initialUser||{},a=(e.plugins||[]).reduce(function(e,n){if(f(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=$,r.apply({instance:$},n)}),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:[]}),u=e.storage?e.storage:{getItem:x,setItem:S,removeItem:_},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&g(r)&&r[n]?r[n]:Y(e)[n]||x(ee(n))||null)}}(u),s=a.plugins,l=a.events.filter(function(e){return!W.includes(e)}).sort(),p=new Set(l.concat(J).filter(function(e){return!W.includes(e)})),m=Array.from(p).sort(),v=function(){return s},h=new Ee,y=h.addMiddleware,E=h.removeMiddleware,P=h.dynamicMiddlewares,N=function(){throw new Error("Abort disabled inListener")},T=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=b(n[1]),o=b(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(w(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(o&&window.location.search.substring(1)),M=Y(u),D=n({},M,i,T.an_uid?{userId:T.an_uid}:{},T.an_aid?{anonymousId:T.an_aid}:{});D.anonymousId||(D.anonymousId=I());var V=n({enable:function(e,n){return new Promise(function(t){se.dispatch({type:H.enablePlugin,plugins:He(e),_:{originalAction:H.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){se.dispatch({type:H.disablePlugin,plugins:He(e),_:{originalAction:H.disablePlugin}},t,[n])})}},a.methods),R=!1,$={identify:function(e,t,r,i){try{var o=d(e)?e:null,a=g(e)?e:t,u=r||{},s=$.user();S(ee(B),o);var l=o||a.userId||c(B,$,a);return Promise.resolve(new Promise(function(e){se.dispatch(n({type:H.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=g(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var o=g(e)?e:n||{},a=g(t)?t:{};return Promise.resolve(new Promise(function(e){se.dispatch({type:H.trackStart,event:i,properties:o,options:a,userId:c(B,$,n),anonymousId:c(X,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=g(e)?e:{},i=g(n)?n:{};return Promise.resolve(new Promise(function(o){se.dispatch({type:H.pageStart,properties:qe(r),options:i,userId:c(B,$,r),anonymousId:c(X,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===B||"id"===e)return c(B,$);if(e===X||"anonId"===e)return c(X,$);var n=$.getState("user");return e?r(n,e):n},reset:function(e){return new Promise(function(n){se.dispatch({type:H.resetStart},n,e)})},ready:function(e){return R&&e({plugins:V,instance:$}),$.on(H.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!f(n))return!1;if(e===H.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Ge),y(i,Ke),function(){E(r,Ge),E(i,Ke)}}var o=e.match(t)?Ge:Ke,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:N}),t(r)}}};return y(a,o),function(){return E(a,o)}},once:function(e,n){if(!e||!f(n))return!1;if(e===H.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:N}),t()});return t},getState:function(e){var n=se.getState();return e?r(n,e):Object.assign({},n)},dispatch:function(e){var t=d(e)?{type:e}:e;if(J.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});se.dispatch(r)},enablePlugin:V.enable,disablePlugin:V.disable,plugins:V,storage:{getItem:u.getItem,setItem:function(e,n,t){se.dispatch({type:H.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){se.dispatch({type:H.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(C,e,n)},events:{core:J,plugins:l}},F=a.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Fe()),e(n)}}},P(Ge),we($,v,{all:m,plugins:l}),Ie(u),K($),ne($),P(Ke)]),Z={context:Re,user:Q(u),page:De,track:je,plugins:Pe(v),queue:Ae},G=U,te=U;if(o&&e.debug){var re=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;re&&(G=re({trace:!0,traceLimit:25})),te=function(){return 0===arguments.length?Je():g(typeof arguments[0])?We():We().apply(null,arguments)}}var ie,ae=function(e){return Object.keys(e).reduce(function(n,t){return $e.includes(t)||(n[t]=e[t]),n},{})}(e),ue=a.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,o=a.pluginEnabled[t];return e[t]={enabled:o,initialized:!!o&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ce={context:ae,user:D,plugins:ue},se=z(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===O&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:A})===j||typeof t(void 0,{type:k})===j)throw new Error("reducer "+n+" "+j)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===j){var f=L(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},Z,t)),ce,te(G(q.apply(void 0,F))));se.dispatch=(ie=se.dispatch,function(e,t,r){var i=n({},e,{meta:Fe(e.meta,t,He(r))});return ie.apply(null,[i])});var le=Object.keys(s);se.dispatch({type:H.bootstrap,plugins:le,config:ae,params:T,user:D,initialUser:i,persistedUser:M});var fe=le.filter(function(e){return a.pluginEnabled[e]}),de=le.filter(function(e){return!a.pluginEnabled[e]});return se.dispatch({type:H.registerPlugins,plugins:le,enabled:a.pluginEnabled}),a.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&f(t)&&t({instance:$,config:r,payload:e}),se.dispatch({type:H.registerPluginType(i),name:i,enabled:a.pluginEnabled[i],plugin:e}),a.pluginsArray.length===n+1&&se.dispatch({type:H.initializeStart,plugins:fe,disabled:de})}),Xe(function(e){se.dispatch({type:e?H.offline:H.online})}),function(e,n,t){setInterval(function(){return oe(e,n,t)},3e3)}(se,v,$),$}var Ge="before",Ke="after";e.Analytics=Ze,e.CONSTANTS=R,e.EVENTS=H,e.default=Ze,e.init=Ze});
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e||self)._analytics={})}(this,function(e){function n(){return n=Object.assign||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},n.apply(this,arguments)}var t=function(e){var n={exports:{}};return 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}}(n),n.exports}(),r=t,i="object";"undefined"==typeof process||process;var o="undefined"!=typeof document;function a(e,n){return n.charAt(0)[e]()+n.slice(1)}"undefined"!=typeof Deno&&Deno,o&&"nodejs"===window.name||"undefined"!=typeof navigator&&void 0!==navigator.userAgent&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));var u=a.bind(null,"toUpperCase"),c=a.bind(null,"toLowerCase");function s(e,n){void 0===n&&(n=!0);var t=function(e){return m(e)?u("null"):"object"==typeof e?function(e){return f(e.constructor)?e.constructor.name:null}(e):Object.prototype.toString.call(e).slice(8,-1)}(e);return n?c(t):t}function l(e,n){return typeof n===e}var f=l.bind(null,"function"),d=l.bind(null,"string");l.bind(null,"undefined");var p=l.bind(null,"boolean");function m(e){return null===e}function g(e){if(!function(e){return e&&("object"==typeof e||null!==e)}(e))return!1;for(var n=e;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function v(e,n){if("object"!=typeof n||m(n))return!1;if(n instanceof e)return!0;var t=s(new e(""));if(function(e){return e instanceof Error||d(e.message)&&e.constructor&&function(e){return"number"===s(e)&&!isNaN(e)}(e.constructor.stackTraceLimit)}(n))for(;n;){if(s(n)===t)return!0;n=Object.getPrototypeOf(n)}return!1}function h(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 y(e){var n=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(n))}}function b(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(e){return null}}function w(e,n,t){for(var r=n.length-1,i=0;i<r;++i){var o=n[i];if("__proto__"===o||"constructor"===o)break;o in e||(e[o]={}),e=e[o]}e[n[r]]=t}function I(){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}l.bind(null,"symbol"),v.bind(null,TypeError),v.bind(null,SyntaxError),y(h,"form"),y(h,"button"),y(h,"input"),y(h,"select");var E="__global__",P=typeof self===i&&self.self===self&&self||typeof global===i&&global.global===global&&global||void 0;function x(e){return P[E][e]}function S(e,n){return P[E][e]=n}function _(e){delete P[E][e]}P[E]||(P[E]={});var O="function",j="undefined",N="@@redux/",A=N+"INIT",k=N+Math.random().toString(36),T=/* #__PURE__ */function(){return typeof Symbol===O&&Symbol.observable||"@@observable"}(),M=" != "+O;function z(e,n,t){var r;if(typeof n===O&&typeof t===j&&(t=n,n=void 0),typeof t!==j){if(typeof t!==O)throw new Error("enhancer"+M);return t(z)(e,n)}if(typeof e!==O)throw new Error("reducer"+M);var i=e,o=n,a=[],u=a,c=!1;function s(){u===a&&(u=a.slice())}function l(){return o}function f(e){if(typeof e!==O)throw new Error("Listener"+M);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(!g(e))throw new Error("Act != obj");if(typeof e.type===j)throw new Error("ActType "+j);if(c)throw new Error("Dispatch in reducer");try{c=!0,o=i(o,e)}finally{c=!1}for(var n=a=u,t=0;t<n.length;t++)(0,n[t])();return e}return d({type:A}),(r={dispatch:d,subscribe:f,getState:l,replaceReducer:function(e){if(typeof e!==O)throw new Error("next reducer"+M);i=e,d({type:A})}})[T]=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)}}})[T]=function(){return this},e},r}function L(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+j}function U(){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 q(){var e=arguments;return function(t){return function(r,i,o){var a,u=t(r,i,o),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return a=[].slice.call(e).map(function(e){return e(s)}),n({},u,{dispatch:c=U.apply(void 0,a)(u.dispatch)})}}}var C="__anon_id",D="__user_id",V="__user_traits",R={__proto__:null,ANON_ID:C,USER_ID:D,USER_TRAITS:V},$="analytics",B="userId",X="anonymousId",J=["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"],W=["name","EVENTS","config","loaded"],H=J.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),F=/^utm_/,Z=/^an_prop_/,G=/^an_trait_/;function K(e){var t=e.storage.setItem;return function(r){return function(i){return function(o){if(o.type===H.bootstrap){var a=o.params,u=o.user,c=o.persistedUser,s=o.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(C,u.anonymousId),l||t(D,u.userId),s.traits&&t(V,n({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(o.params);if(f.length){var d=a.an_uid,p=a.an_event,m=f.reduce(function(e,n){if(n.match(F)||n.match(/^(d|g)clid/)){var t=n.replace(F,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(Z)&&(e.props[n.replace(Z,"")]=a[n]),n.match(G)&&(e.traits[n.replace(G,"")]=a[n]),e},{campaign:{},props:{},traits:{}});r.dispatch(n({type:H.params,raw:a},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&&r.dispatch({type:H.campaign,campaign:m.campaign})}}return i(o)}}}}function Q(e){return function(t,r){if(void 0===t&&(t={}),void 0===r&&(r={}),r.type===H.setItemEnd){if(r.key===C)return n({},t,{anonymousId:r.value});if(r.key===D)return n({},t,{userId:r.value})}switch(r.type){case H.identify:return Object.assign({},t,{userId:r.userId,traits:n({},t.traits,r.traits)});case H.reset:return[D,C,V].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Y(e){return{userId:e.getItem(D),anonymousId:e.getItem(C),traits:e.getItem(V)}}var ee=function(e){return"__TEMP__"+e};function ne(e){var t=e.storage,r=t.setItem,i=t.removeItem,o=t.getItem;return function(e){return function(t){return function(a){var u=a.userId,c=a.traits,s=a.options;if(a.type===H.reset&&([D,V,C].forEach(function(e){i(e)}),[B,X,"traits"].forEach(function(e){_(ee(e))})),a.type===H.identify){o(C)||r(C,I());var l=o(D),f=o(V)||{};l&&l!==u&&e.dispatch({type:H.userIdChanged,old:{userId:l,traits:f},new:{userId:u,traits:c},options:s}),u&&r(D,u),c&&r(V,n({},f,c))}return t(a)}}}}var te={};function re(e,n){te[e]&&f(te[e])&&(te[e](n),delete te[e])}function ie(e,t,r){return new Promise(function(i,o){return t()?i(e):r<1?o(n({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(n){return ie(e,t,r-10).then(i,o)})})}function oe(e){return{abort:e}}function ae(e,t,r){var i={},o=t(),a=e.getState(),u=a.plugins,c=a.queue,s=a.user;if(!a.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(t){var a=c.actions[t],l=a.plugin,d=a.payload.type,p=o[l][d];if(p&&f(p)){var m,v=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[B,X].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(a.payload,s),h=i[v.meta.rid];if(!h&&(m=p({payload:v,config:u[l].config,instance:r,abort:oe}))&&g(m)&&m.abort)return void(i[v.meta.rid]=!0);if(!h){var y=d+":"+l;e.dispatch(n({},v,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=c.actions.filter(function(e,n){return!~l.processIndex.indexOf(n)});c.actions=d}}}var ue=function(e){var t=e.data,r=e.action,i=e.instance,o=e.state,a=e.allPlugins,u=e.allMatches,c=e.store,s=e.EVENTS;try{var l=o.plugins,d=o.context,p=r.type,m=p.match(ce),v=t.exact.map(function(e){return e.pluginName});m&&(v=u.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(r,i,o){var a=i.config,u=i.name,c=u+"."+r.type;o&&(c=o.event);var s=r.type.match(ce)?function(e,t,r,i,o){return function(a,u){var c=i?i.name:e,s=u&&he(u)?u:r;if(i&&(!(s=u&&he(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return n({},o,{abort:{reason:a,plugins:s,caller:t,_:c}})}}(u,c,t,o,r):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(r,c);return{payload:we(r),instance:e,config:a||{},abort:s}}}(i,v),y=t.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),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,u){try{var c=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var u=function(){if(t.namespaced&&t.namespaced[c])return Promise.resolve(t.namespaced[c].reduce(function(e,t,r){try{return Promise.resolve(e).then(function(e){return t.method&&f(t.method)?(function(e,n){var t=be(e);if(t&&t.name===n){var r=be(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"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:i,abort:(r=e,o=c,u=t.pluginName,function(e,t){return n({},r,{abort:{reason:e,plugins:t||[o],caller:p,from:u||o}})}),config:de(t.pluginName,l,a),plugins:l})).then(function(t){var r=g(t)?t:{};return Promise.resolve(n({},e,r))})):e;var r,o,u})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(n){e[c]=n});e[c]=r}();return u&&u.then?u.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(r,o,u){try{var s=t.exact.length===u+1,f=o.pluginName,d=a[f];return Promise.resolve(r).then(function(t){var r=e[f]?e[f]:{};if(m&&(r=t),ge(r,f))return fe({data:r,method:p,instance:i,pluginName:f,store:c}),Promise.resolve(t);if(ge(t,f))return s&&fe({data:t,method:p,instance:i,store:c}),Promise.resolve(t);if(y.hasOwnProperty(f)&&!0===y[f])return c.dispatch({type:"queue",plugin:f,payload:r,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[f],a[f]);return Promise.resolve(d[p]({abort:o.abort,payload:r,instance:i,config:de(f,l,a),plugins:l})).then(function(o){var a=g(o)?o:{},u=n({},t,a),s=e[f];if(ge(s,f))fe({data:s,method:p,instance:i,pluginName:f,store:c});else{var l=p+":"+f;(l.match(/:/g)||[]).length<2&&!p.match(se)&&!p.match(le)&&i.dispatch(n({},m?u:r,{type:l,_:{called:l,from:"submethod"}}))}return Promise.resolve(u)})})}catch(e){return Promise.reject(e)}},Promise.resolve(r))).then(function(e){if(!(p.match(ce)||p.match(/^registerPlugin/)||p.match(le)||p.match(se)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var r=n({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ve(e,t.exact.length)&&!p.match(/End$/)&&(r=n({},r,{type:e.type+"Aborted"})),c.dispatch(r)}return e})})}catch(e){return Promise.reject(e)}},ce=/Start$/,se=/^bootstrap/,le=/^ready/;function fe(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(n({},e.data,{type:r,_:{called:r,from:"abort"}}))}function de(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function pe(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function me(e,n){var t=e.replace(ce,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function ge(e,n){var t=e.abort;return!!t&&(!0===t||ye(t,n)||t&&ye(t.plugins,n))}function ve(e,n){var t=e.abort;if(!t)return!1;if(!0===t||d(t))return!0;var r=t.plugins;return he(t)&&t.length===n||he(r)&&r.length===n}function he(e){return Array.isArray(e)}function ye(e,n){return!(!e||!he(e))&&e.includes(n)}function be(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function we(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=g(e[t])?Object.assign({},e[t]):e[t]),n},{})}function Ie(e,t,r){var i={};return function(o){return function(a){return function(u){try{var c,s=function(e){return c?e:a(m)},l=u.type,d=u.plugins,m=u;if(u.abort)return Promise.resolve(a(u));if(l===H.enablePlugin&&o.dispatch({type:H.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:u.meta}),l===H.disablePlugin&&setTimeout(function(){return re(u.meta.rid,{payload:u})},0),l===H.initializeEnd){var g=t(),v=Object.keys(g),h=v.filter(function(e){return d.includes(e)}).map(function(e){return g[e]}),y=[],b=[],w=u.disabled,I=h.map(function(e){var n=e.loaded,t=e.name,r=e.config;return ie(e,function(){return n({config:r})},1e4).then(function(n){return i[t]||(o.dispatch({type:H.pluginReadyType(t),name:t,events:Object.keys(e).filter(function(e){return!W.includes(e)})}),i[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:b,disabled:w};setTimeout(function(){v.length===I.length+w.length&&o.dispatch(n({},{type:H.ready},t))},0)})}var E=function(){if(l!==H.bootstrap)return/^ready:([^:]*)$/.test(l)&&setTimeout(function(){return ae(o,t,e)},0),Promise.resolve(function(e,t,r,i,o){try{var a=f(t)?t():t,u=e.type,c=u.replace(ce,"");if(e._&&e._.called)return Promise.resolve(e);var s=r.getState(),l=(g=a,void 0===(v=s.plugins)&&(v={}),void 0===(h=e.options)&&(h={}),Object.keys(g).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!v[e]||!1!==v[e].enabled)}).map(function(e){return g[e]}));u===H.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 a[e]}));var d=l.map(function(e){return e.name}),m=function(e,n,t){var r=me(e).map(function(e){return pe(e,n)});return n.reduce(function(t,r){var i=r.name,o=me(e,i).map(function(e){return pe(e,n)}),a=o[0],u=o[1],c=o[2];return a.length&&(t.beforeNS[i]=a),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(ue({action:e,data:{exact:m.before,namespaced:m.beforeNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){function t(){var t=function(){if(u.match(ce))return Promise.resolve(ue({action:n({},l,{type:c+"End"}),data:{exact:m.after,namespaced:m.afterNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&re(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ve(e,d.length))return e;var l,f=function(){if(u!==c)return Promise.resolve(ue({action:n({},e,{type:c}),data:{exact:m.during,namespaced:m.duringNS},state:s,allPlugins:a,allMatches:m,instance:r,store:i,EVENTS:o})).then(function(e){l=e});l=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var g,v,h}(u,t,e,o,r)).then(function(e){return c=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(s):s(E))}catch(e){return Promise.reject(e)}}}}}function Ee(e){return function(n){return function(n){return function(t){var r=t.type,i=t.key,o=t.value,a=t.options;if(r===H.setItem||r===H.removeItem){if(t.abort)return n(t);r===H.setItem?e.setItem(i,o,a):e.removeItem(i,a)}return n(t)}}}}var Pe=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 o={getState:t.getState,dispatch:function(e){return t.dispatch(e)}},a=e[n].map(function(e){return e(o)});return U.apply(void 0,a)(r)(i)}}}}};function xe(e){return function(t,r){void 0===t&&(t={});var i={};if("initialize:aborted"===r.type)return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var o=Se(r.type,"registerPlugin"),a=e()[o];if(!a||!o)return t;var u=r.enabled,c=a.config;return i[o]={enabled:u,initialized:!!u&&Boolean(!a.initialize),loaded:!!u&&Boolean(a.loaded({config:c})),config:c},n({},t,i)}if(/^initialize:([^:]*)$/.test(r.type)){var s=Se(r.type,H.initialize),l=e()[s];return l&&s?(i[s]=n({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),n({},t,i)):t}if(/^ready:([^:]*)$/.test(r.type))return i[r.name]=n({},t[r.name],{loaded:!0}),n({},t,i);switch(r.type){case H.disablePlugin:return n({},t,_e(r.plugins,!1,t));case H.enablePlugin:return n({},t,_e(r.plugins,!0,t));default:return t}}}function Se(e,n){return e.substring(n.length+1,e.length)}function _e(e,t,r){return e.reduce(function(e,i){return e[i]=n({},r[i],{enabled:t}),e},r)}function Oe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var je={last:{},history:[]};function Ne(e,t){void 0===e&&(e=je);var r=t.options,i=t.meta;if(t.type===H.track){var o=Oe(n({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:i}));return n({},e,{last:o,history:e.history.concat(o)})}return e}var Ae={actions:[]};function ke(e,t){void 0===e&&(e=Ae);var r=t.payload;switch(t.type){case"queue":var i;return i=r&&r.type&&r.type===H.identify?[t].concat(e.actions):e.actions.concat(t),n({},e,{actions:i});case"dequeue":return[];default:return e}}var Te=/#.*$/;function Me(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Te,""):"")}var ze,Le,Ue,qe,Ce=function(e){if(void 0===e&&(e={}),!o)return e;var t=document,r=t.title,i=t.referrer,a=window,u=a.location,c=a.innerWidth,s=a.innerHeight,l=u.hash,f=u.search,d=function(e){var n=function(){if(o)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(Te,"")}(f),p={title:r,url:d,path:Me(d),hash:l,search:f,width:c,height:s};return i&&""!==i&&(p.referrer=i),n({},p,e)},De={last:{},history:[]};function Ve(e,t){void 0===e&&(e=De);var r=t.options;if(t.type===H.page){var i=Oe(n({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return n({},e,{last:i,history:e.history.concat(i)})}return e}ze=function(){if(!o)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"}(),Le=o?document.referrer:null,Ue=function(){if(o){var e=navigator,n=e.languages;return e.userLanguage||(n&&n.length?n[0]:e.language)}}(),qe=function(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}();var Re={initialized:!1,sessionId:I(),app:null,version:null,debug:!1,offline:!!o&&!navigator.onLine,os:{name:ze},userAgent:o?navigator.userAgent:"node",library:{name:$,version:"0.12.7"},timezone:qe,locale:Ue,campaign:{},referrer:Le};function $e(e,t){void 0===e&&(e=Re);var r=e.initialized,i=t.campaign;switch(t.type){case H.campaign:return n({},e,{campaign:i});case H.offline:return n({},e,{offline:!0});case H.online:return n({},e,{offline:!1});default:return r?e:n({},Re,e,{initialized:!0})}}var Be=["plugins","reducers","storage"];function Xe(e,n,t){if(o){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Je(e){var n=Xe.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function We(){return S($,[]),function(e){return function(n,t,r){var i=e(n,t,r),o=i.dispatch;return Object.assign(i,{dispatch:function(e){return P[E].analytics.push(e.action||e),o(e)}})}}}function He(e){return function(){return U(U.apply(null,arguments),We())}}function Fe(e){return e?function(e){return"array"===s(e)}(e)?e:[e]:[]}function Ze(e,t,r){void 0===e&&(e={});var i,o,a=I();return t&&(te[a]=(i=t,o=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(f(t[r])){n=t[r];break}return n}(r),function(e){o&&o(e),i(e)})),n({},e,{rid:a,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ge(e){void 0===e&&(e={});var t=e.reducers||{},i=e.initialUser||{},a=(e.plugins||[]).reduce(function(e,n){if(f(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=$,r.apply({instance:$},n)}),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:[]}),u=e.storage?e.storage:{getItem:x,setItem:S,removeItem:_},c=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&g(r)&&r[n]?r[n]:Y(e)[n]||x(ee(n))||null)}}(u),s=a.plugins,l=a.events.filter(function(e){return!W.includes(e)}).sort(),p=new Set(l.concat(J).filter(function(e){return!W.includes(e)})),m=Array.from(p).sort(),v=function(){return s},h=new Pe,y=h.addMiddleware,E=h.removeMiddleware,P=h.dynamicMiddlewares,N=function(){throw new Error("Abort disabled inListener")},T=function(e){for(var n,t=Object.create(null),r=/([^&=]+)=?([^&]*)/g;n=r.exec(e);){var i=b(n[1]),o=b(n[2]);"[]"===i.substring(i.length-2)?(t[i=i.substring(0,i.length-2)]||(t[i]=[])).push(o):t[i]=""===o||o}for(var a in t){var u=a.split("[");u.length>1&&(w(t,u.map(function(e){return e.replace(/[?[\]\\ ]/g,"")}),t[a]),delete t[a])}return t}(o&&window.location.search.substring(1)),M=Y(u),D=n({},M,i,T.an_uid?{userId:T.an_uid}:{},T.an_aid?{anonymousId:T.an_aid}:{});D.anonymousId||(D.anonymousId=I());var V=n({enable:function(e,n){return new Promise(function(t){se.dispatch({type:H.enablePlugin,plugins:Fe(e),_:{originalAction:H.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){se.dispatch({type:H.disablePlugin,plugins:Fe(e),_:{originalAction:H.disablePlugin}},t,[n])})}},a.methods),R=!1,$={identify:function(e,t,r,i){try{var o=d(e)?e:null,a=g(e)?e:t,u=r||{},s=$.user();S(ee(B),o);var l=o||a.userId||c(B,$,a);return Promise.resolve(new Promise(function(e){se.dispatch(n({type:H.identifyStart,userId:l,traits:a||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==o&&{previousId:s.id}),e,[t,r,i])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=g(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var o=g(e)?e:n||{},a=g(t)?t:{};return Promise.resolve(new Promise(function(e){se.dispatch({type:H.trackStart,event:i,properties:o,options:a,userId:c(B,$,n),anonymousId:c(X,$,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=g(e)?e:{},i=g(n)?n:{};return Promise.resolve(new Promise(function(o){se.dispatch({type:H.pageStart,properties:Ce(r),options:i,userId:c(B,$,r),anonymousId:c(X,$,r)},o,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===B||"id"===e)return c(B,$);if(e===X||"anonId"===e)return c(X,$);var n=$.getState("user");return e?r(n,e):n},reset:function(e){return new Promise(function(n){se.dispatch({type:H.resetStart},n,e)})},ready:function(e){return R&&e({plugins:V,instance:$}),$.on(H.ready,function(n){e(n),R=!0})},on:function(e,n){if(!e||!f(n))return!1;if(e===H.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:$,plugins:s}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:$,plugins:s}),e(r)}}};return y(r,Ke),y(i,Qe),function(){E(r,Ke),E(i,Qe)}}var o=e.match(t)?Ke:Qe,a=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:$,plugins:s,abort:N}),t(r)}}};return y(a,o),function(){return E(a,o)}},once:function(e,n){if(!e||!f(n))return!1;if(e===H.bootstrap)throw new Error(".once disabled for "+e);var t=$.on(e,function(e){n({payload:e.payload,instance:$,plugins:s,abort:N}),t()});return t},getState:function(e){var n=se.getState();return e?r(n,e):Object.assign({},n)},dispatch:function(e){var t=d(e)?{type:e}:e;if(J.includes(t.type))throw new Error("reserved action "+t.type);var r=n({},t,{_:n({originalAction:t.type},e._||{})});se.dispatch(r)},enablePlugin:V.enable,disablePlugin:V.disable,plugins:V,storage:{getItem:u.getItem,setItem:function(e,n,t){se.dispatch({type:H.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){se.dispatch({type:H.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){$.storage.setItem(C,e,n)},events:{core:J,plugins:l}},F=a.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ze()),e(n)}}},P(Ke),Ie($,v,{all:m,plugins:l}),Ee(u),K($),ne($),P(Qe)]),Z={context:$e,user:Q(u),page:Ve,track:Ne,plugins:xe(v),queue:ke},G=U,te=U;if(o&&e.debug){var re=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;re&&(G=re({trace:!0,traceLimit:25})),te=function(){return 0===arguments.length?We():g(typeof arguments[0])?He():He().apply(null,arguments)}}var ie,oe=function(e){return Object.keys(e).reduce(function(n,t){return Be.includes(t)||(n[t]=e[t]),n},{})}(e),ue=a.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,o=a.pluginEnabled[t];return e[t]={enabled:o,initialized:!!o&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ce={context:oe,user:D,plugins:ue},se=z(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===O&&(t[i]=e[i])}var o,a=Object.keys(t);try{!function(e){Object.keys(e).forEach(function(n){var t=e[n];if(typeof t(void 0,{type:A})===j||typeof t(void 0,{type:k})===j)throw new Error("reducer "+n+" "+j)})}(t)}catch(e){o=e}return function(e,n){if(void 0===e&&(e={}),o)throw o;for(var r=!1,i={},u=0;u<a.length;u++){var c=a[u],s=e[c],l=(0,t[c])(s,n);if(typeof l===j){var f=L(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(n({},Z,t)),ce,te(G(q.apply(void 0,F))));se.dispatch=(ie=se.dispatch,function(e,t,r){var i=n({},e,{meta:Ze(e.meta,t,Fe(r))});return ie.apply(null,[i])});var le=Object.keys(s);se.dispatch({type:H.bootstrap,plugins:le,config:oe,params:T,user:D,initialUser:i,persistedUser:M});var fe=le.filter(function(e){return a.pluginEnabled[e]}),de=le.filter(function(e){return!a.pluginEnabled[e]});return se.dispatch({type:H.registerPlugins,plugins:le,enabled:a.pluginEnabled}),a.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&f(t)&&t({instance:$,config:r,payload:e}),se.dispatch({type:H.registerPluginType(i),name:i,enabled:a.pluginEnabled[i],plugin:e}),a.pluginsArray.length===n+1&&se.dispatch({type:H.initializeStart,plugins:fe,disabled:de})}),Je(function(e){se.dispatch({type:e?H.offline:H.online})}),function(e,n,t){setInterval(function(){return ae(e,n,t)},3e3)}(se,v,$),$}var Ke="before",Qe="after";e.Analytics=Ge,e.CONSTANTS=R,e.EVENTS=H,e.default=Ge,e.init=Ge});
//# sourceMappingURL=core.umd.js.map

@@ -1,2 +0,2 @@

var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var x=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function A(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(x(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var _={};function k(e,t){_[e]&&n.isFunction(_[e])&&(_[e](t),delete _[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}function z(e,t,i){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&n.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:i});var m=f+":"+l;e.dispatch(r({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}var M=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(q),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(q)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&$(u)?u:n;if(i&&(!(s=u&&$(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:W(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=J(e);if(n&&n.name===t){var r=J(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:L(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),C(i,d))return R({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(C(t,d))return l&&R({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:L(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if(C(l,d))R({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(B)&&!p.match(F)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(q)||p.match(/^registerPlugin/)||p.match(F)||p.match(B)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});X(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},q=/Start$/,B=/^bootstrap/,F=/^ready/;function R(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function L(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function U(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function V(e,t){var n=e.replace(q,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function C(e,t){var n=e.abort;return!!n&&(!0===n||D(n,t)||n&&D(n.plugins,t))}function X(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return $(r)&&r.length===t||$(i)&&i.length===t}function $(e){return Array.isArray(e)}function D(e,t){return!(!e||!$(e))&&e.includes(t)}function J(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function W(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function H(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),v=[],y=[],b=c.disabled,E=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),v=v.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return y=y.concat(e.name),e})});Promise.all(E).then(function(e){var t={plugins:v,failed:y,disabled:b};setTimeout(function(){g.length===E.length+b.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var P=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return z(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(q,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=V(e).map(function(e){return U(e,t)});return t.reduce(function(n,r){var i=r.name,a=V(e,i).map(function(e){return U(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(M({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(q))return Promise.resolve(M({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(X(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(M({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function K(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Y=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function Z(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=G(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=G(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,Q(n.plugins,!1,t));case w.enablePlugin:return r({},t,Q(n.plugins,!0,t));default:return t}}}function G(e,t){return e.substring(t.length+1,e.length)}function Q(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function ee(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var te={last:{},history:[]};function ne(e,t){void 0===e&&(e=te);var n=t.options,i=t.meta;if(t.type===w.track){var a=ee(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var re={actions:[]};function ie(e,t){void 0===e&&(e=re);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var ae=/#.*$/;function oe(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ae,""):"")}var ue,ce,se,le,fe=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ae,"")}(f),p={title:i,url:d,path:oe(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},de={last:{},history:[]};function pe(e,t){void 0===e&&(e=de);var n=t.options;if(t.type===w.page){var i=ee(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}ue=function(){if(!n.isBrowser)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"}(),ce=n.isBrowser?document.referrer:null,se=e.getBrowserLocale(),le=e.getTimeZone();var me={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:ue},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:le,locale:se,campaign:{},referrer:ce};function ge(e,t){void 0===e&&(e=me);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},me,e,{initialized:!0})}}var he=["plugins","reducers","storage"];function ve(e,t,r){if(n.isBrowser){var i=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function ye(e){var t=ve.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function be(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function Ie(e){return function(){return f(f.apply(null,arguments),be())}}function we(e){return e?n.isArray(e)?e:[e]:[]}function Ee(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(_[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function Pe(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=$,r.apply({instance:$},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(x(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),_=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(_).sort(),T=function(){return P},M=new Y,q=M.addMiddleware,B=M.removeMiddleware,F=M.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=e.paramsParse(),U=N(h),V=r({},U,m,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var C=r({enable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.enablePlugin,plugins:we(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.disablePlugin,plugins:we(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),X=!1,$={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=$.user();t.set(x(v),u);var f=u||c.userId||E(v,$,c);return Promise.resolve(new Promise(function(e){oe.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){oe.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,$,t),anonymousId:E(y,$,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){oe.dispatch({type:w.pageStart,properties:fe(i),options:a,userId:E(v,$,i),anonymousId:E(y,$,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,$);if(t===y||"anonId"===t)return E(y,$);var n=$.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){oe.dispatch({type:w.resetStart},t,e)})},ready:function(e){return X&&e({plugins:C,instance:$}),$.on(w.ready,function(t){e(t),X=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:$,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:$,plugins:P}),e(n)}}};return q(i,Se),q(a,Oe),function(){B(i,Se),B(a,Oe)}}var o=e.match(r)?Se:Oe,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:$,plugins:P,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=$.on(e,function(e){t({payload:e.payload,instance:$,plugins:P,abort:R}),r()});return r},getState:function(t){var n=oe.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});oe.dispatch(i)},enablePlugin:C.enable,disablePlugin:C.disable,plugins:C,storage:{getItem:h.getItem,setItem:function(e,t,n){oe.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){oe.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){$.storage.setItem(p,e,t)},events:{core:b,plugins:S}},D=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Ee()),e(t)}}},F(Se),H($,T,{all:k,plugins:S}),K(h),O($),A($),F(Oe)]),J={context:ge,user:j(h),page:pe,track:ne,plugins:Z(T),queue:ie},W=f,G=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(W=Q({trace:!0,traceLimit:25})),G=function(){return 0===arguments.length?be():n.isObject(typeof arguments[0])?Ie():Ie().apply(null,arguments)}}var ee,te=function(e){return Object.keys(e).reduce(function(t,n){return he.includes(n)||(t[n]=e[n]),t},{})}(u),re=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ae={context:te,user:V,plugins:re},oe=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},J,c)),ae,G(W(d.apply(void 0,D))));oe.dispatch=(ee=oe.dispatch,function(e,t,n){var i=r({},e,{meta:Ee(e.meta,t,we(n))});return ee.apply(null,[i])});var ue=Object.keys(P);oe.dispatch({type:w.bootstrap,plugins:ue,config:te,params:L,user:V,initialUser:m,persistedUser:U});var ce=ue.filter(function(e){return g.pluginEnabled[e]}),se=ue.filter(function(e){return!g.pluginEnabled[e]});return oe.dispatch({type:w.registerPlugins,plugins:ue,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:$,config:i,payload:e}),oe.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&oe.dispatch({type:w.initializeStart,plugins:ce,disabled:se})}),ye(function(e){oe.dispatch({type:e?w.offline:w.online})}),function(e,t,n){setInterval(function(){return z(e,t,n)},3e3)}(oe,T,$),$}var Se="before",Oe="after";exports.Analytics=Pe,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=Pe,exports.init=Pe;
var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var x=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function A(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(x(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var _={};function k(e,t){_[e]&&n.isFunction(_[e])&&(_[e](t),delete _[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}function z(e){return{abort:e}}function M(e,t,i){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&n.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:i,abort:z}))&&n.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var b=d+":"+f;e.dispatch(r({},g,{type:b,_:{called:b,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}var q=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(B),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(B)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&D(u)?u:n;if(i&&(!(s=u&&D(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:H(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=W(e);if(n&&n.name===t){var r=W(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:U(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),X(i,d))return L({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(X(t,d))return l&&L({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:U(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if(X(l,d))L({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(F)&&!p.match(R)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(B)||p.match(/^registerPlugin/)||p.match(R)||p.match(F)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});$(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},B=/Start$/,F=/^bootstrap/,R=/^ready/;function L(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function U(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function V(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function C(e,t){var n=e.replace(B,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function X(e,t){var n=e.abort;return!!n&&(!0===n||J(n,t)||n&&J(n.plugins,t))}function $(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return D(r)&&r.length===t||D(i)&&i.length===t}function D(e){return Array.isArray(e)}function J(e,t){return!(!e||!D(e))&&e.includes(t)}function W(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function H(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function K(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),v=[],y=[],b=c.disabled,E=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),v=v.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return y=y.concat(e.name),e})});Promise.all(E).then(function(e){var t={plugins:v,failed:y,disabled:b};setTimeout(function(){g.length===E.length+b.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var P=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return M(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(B,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=C(e).map(function(e){return V(e,t)});return t.reduce(function(n,r){var i=r.name,a=C(e,i).map(function(e){return V(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(q({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(B))return Promise.resolve(q({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if($(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(q({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function Y(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Z=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function G(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=Q(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=Q(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,ee(n.plugins,!1,t));case w.enablePlugin:return r({},t,ee(n.plugins,!0,t));default:return t}}}function Q(e,t){return e.substring(t.length+1,e.length)}function ee(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function te(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ne={last:{},history:[]};function re(e,t){void 0===e&&(e=ne);var n=t.options,i=t.meta;if(t.type===w.track){var a=te(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var ie={actions:[]};function ae(e,t){void 0===e&&(e=ie);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var oe=/#.*$/;function ue(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(oe,""):"")}var ce,se,le,fe,de=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(oe,"")}(f),p={title:i,url:d,path:ue(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},pe={last:{},history:[]};function me(e,t){void 0===e&&(e=pe);var n=t.options;if(t.type===w.page){var i=te(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}ce=function(){if(!n.isBrowser)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"}(),se=n.isBrowser?document.referrer:null,le=e.getBrowserLocale(),fe=e.getTimeZone();var ge={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:ce},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:fe,locale:le,campaign:{},referrer:se};function he(e,t){void 0===e&&(e=ge);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},ge,e,{initialized:!0})}}var ve=["plugins","reducers","storage"];function ye(e,t,r){if(n.isBrowser){var i=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function be(e){var t=ye.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function Ie(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function we(e){return function(){return f(f.apply(null,arguments),Ie())}}function Ee(e){return e?n.isArray(e)?e:[e]:[]}function Pe(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(_[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function Se(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=$,r.apply({instance:$},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(x(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),_=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(_).sort(),T=function(){return P},z=new Z,q=z.addMiddleware,B=z.removeMiddleware,F=z.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=e.paramsParse(),U=N(h),V=r({},U,m,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var C=r({enable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.enablePlugin,plugins:Ee(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){oe.dispatch({type:w.disablePlugin,plugins:Ee(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),X=!1,$={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=$.user();t.set(x(v),u);var f=u||c.userId||E(v,$,c);return Promise.resolve(new Promise(function(e){oe.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){oe.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,$,t),anonymousId:E(y,$,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){oe.dispatch({type:w.pageStart,properties:de(i),options:a,userId:E(v,$,i),anonymousId:E(y,$,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,$);if(t===y||"anonId"===t)return E(y,$);var n=$.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){oe.dispatch({type:w.resetStart},t,e)})},ready:function(e){return X&&e({plugins:C,instance:$}),$.on(w.ready,function(t){e(t),X=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:$,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:$,plugins:P}),e(n)}}};return q(i,Oe),q(a,je),function(){B(i,Oe),B(a,je)}}var o=e.match(r)?Oe:je,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:$,plugins:P,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=$.on(e,function(e){t({payload:e.payload,instance:$,plugins:P,abort:R}),r()});return r},getState:function(t){var n=oe.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});oe.dispatch(i)},enablePlugin:C.enable,disablePlugin:C.disable,plugins:C,storage:{getItem:h.getItem,setItem:function(e,t,n){oe.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){oe.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){$.storage.setItem(p,e,t)},events:{core:b,plugins:S}},D=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Pe()),e(t)}}},F(Oe),K($,T,{all:k,plugins:S}),Y(h),O($),A($),F(je)]),J={context:he,user:j(h),page:me,track:re,plugins:G(T),queue:ae},W=f,H=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(W=Q({trace:!0,traceLimit:25})),H=function(){return 0===arguments.length?Ie():n.isObject(typeof arguments[0])?we():we().apply(null,arguments)}}var ee,te=function(e){return Object.keys(e).reduce(function(t,n){return ve.includes(n)||(t[n]=e[n]),t},{})}(u),ne=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:te,user:V,plugins:ne},oe=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},J,c)),ie,H(W(d.apply(void 0,D))));oe.dispatch=(ee=oe.dispatch,function(e,t,n){var i=r({},e,{meta:Pe(e.meta,t,Ee(n))});return ee.apply(null,[i])});var ue=Object.keys(P);oe.dispatch({type:w.bootstrap,plugins:ue,config:te,params:L,user:V,initialUser:m,persistedUser:U});var ce=ue.filter(function(e){return g.pluginEnabled[e]}),se=ue.filter(function(e){return!g.pluginEnabled[e]});return oe.dispatch({type:w.registerPlugins,plugins:ue,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:$,config:i,payload:e}),oe.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&oe.dispatch({type:w.initializeStart,plugins:ce,disabled:se})}),be(function(e){oe.dispatch({type:e?w.offline:w.online})}),function(e,t,n){setInterval(function(){return M(e,t,n)},3e3)}(oe,T,$),$}var Oe="before",je="after";exports.Analytics=Se,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=Se,exports.init=Se;
//# sourceMappingURL=analytics-core.js.map

@@ -1,2 +0,2 @@

import{uuid as e,getBrowserLocale as t,getTimeZone as n,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as s,globalContext as c,KEY as u}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as d,isFunction as p,isBoolean as f,isString as m,isBrowser as g,isArray as y}from"@analytics/type-utils";function h(){return h=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},h.apply(this,arguments)}const b="function",w="undefined",I="@@redux/"+Math.random().toString(36),E=/* #__PURE__ */(()=>typeof Symbol===b&&Symbol.observable||"@@observable")(),v=" != "+b;function S(e,t,n){if(typeof t===b&&typeof n===w&&(n=t,t=void 0),typeof n!==w){if(typeof n!==b)throw new Error("enhancer"+v);return n(S)(e,t)}if(typeof e!==b)throw new Error("reducer"+v);let r=e,i=t,a=[],o=a,s=!1;function c(){o===a&&(o=a.slice())}function u(){return i}function d(e){if(typeof e!==b)throw new Error("Listener"+v);let t=!0;return c(),o.push(e),function(){if(!t)return;t=!1,c();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===w)throw new Error("ActType "+w);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:u,replaceReducer:function(e){if(typeof e!==b)throw new Error("next reducer"+v);r=e,p({type:"@@redux/INIT"})},[E]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(u())}return n(),{unsubscribe:e(n)}},[E](){return this}}}}}function P(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+w}function N(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const O=d+"anon_id",A=d+"user_id",_=d+"user_traits";var x={__proto__:null,ANON_ID:O,USER_ID:A,USER_TRAITS:_};const k="userId",T="anonymousId",$=["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"],j=["name","EVENTS","config","loaded"];var z=$.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const M=/^utm_/,q=/^an_prop_/,U=/^an_trait_/;function V(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===z.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(O,a.anonymousId),c||t(A,a.userId),s.traits&&t(_,h({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(M)||t.match(/^(d|g)clid/)){const n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(q)&&(e.props[t.replace(q,"")]=r[t]),t.match(U)&&(e.traits[t.replace(U,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(h({type:z.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:z.campaign,campaign:a.campaign})}}return r(i)}}function L(e){return function(t={},n={}){if(n.type===z.setItemEnd){if(n.key===O)return h({},t,{anonymousId:n.value});if(n.key===A)return h({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:h({},t.traits,n.traits)});case z.reset:return[A,O,_].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(A),anonymousId:e.getItem(O),traits:e.getItem(_)}}const R=e=>d+"TEMP"+d+e;function D(t){const{setItem:n,removeItem:r,getItem:i}=t.storage;return t=>a=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===z.reset&&([A,_,O].forEach(e=>{r(e)}),[k,T,"traits"].forEach(e=>{o(R(e))})),s.type===z.identify){i(O)||n(O,e());const r=i(A),a=i(_)||{};r&&r!==c&&t.dispatch({type:z.userIdChanged,old:{userId:r,traits:a},new:{userId:c,traits:u},options:l}),c&&n(A,c),u&&n(_,h({},a,u))}return a(s)}}const B={};function X(e,t){B[e]&&p(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(h({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>J(e,t,n-10).then(r,i)))}function W(e,t,n){const r=t(),{plugins:i,context:a,queue:o,user:s}=e.getState();if(!a.offline&&o&&o.actions&&o.actions.length){const t=o.actions.reduce((e,t,n)=>(i[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const a=o.actions[t],c=a.plugin,u=a.payload.type,l=r[c][u];if(l&&p(l)){const t=function(e={},t={}){return[k,T].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(a.payload,s);l({payload:t,config:i[c].config,instance:n});const r=`${u}:${c}`;e.dispatch(h({},t,{type:r,_:{called:r,from:"queueDrain"}}))}});const a=o.actions.filter((e,n)=>!~t.processIndex.indexOf(n));o.actions=a}}}const H=/Start$/,F=/^bootstrap/,G=/^ready/;async function K({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:c,context:u}=r,d=t.type,f=d.match(H);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const g=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(H)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&re(o)?o:n;if(r&&(c=o&&re(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return h({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:oe(n),instance:e,config:a||{},abort:c}}}(n,m),y=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!c[n].loaded),u.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,u=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!p(t.method))return a;!function(e,t){const n=ae(e);if(n&&n.name===t){const r=ae(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(u=a,f=s,m=t.pluginName,function(e,t){return h({},u,{abort:{reason:e,plugins:t||[f],caller:d,from:m||f}})}),config:Y(t.pluginName,c,i),plugins:c});var u,f,m;const g=l(o)?o:{};return Promise.resolve(h({},a,g))},Promise.resolve(t));u[s]=r}else u[s]=t;return Promise.resolve(u)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:u}=r,p=i[u],m=await t;let w=b[u]?b[u]:{};if(f&&(w=m),te(w,u))return Q({data:w,method:d,instance:n,pluginName:u,store:o}),Promise.resolve(m);if(te(m,u))return s&&Q({data:m,method:d,instance:n,store:o}),Promise.resolve(m);if(y.hasOwnProperty(u)&&!0===y[u])return o.dispatch({type:"queue",plugin:u,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=g(b[u],i[u]),E=await p[d]({abort:I.abort,payload:w,instance:n,config:Y(u,c,i),plugins:c}),v=h({},m,l(E)?E:{}),S=b[u];if(te(S,u))Q({data:S,method:d,instance:n,pluginName:u,store:o});else{const e=`${d}:${u}`;(e.match(/:/g)||[]).length<2&&!d.match(F)&&!d.match(G)&&n.dispatch(h({},f?v:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(v)},Promise.resolve(t));if(!(d.match(H)||d.match(/^registerPlugin/)||d.match(G)||d.match(F)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),w._&&w._.originalAction===d)return w;let t=h({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});ne(w,e.exact.length)&&!d.match(/End$/)&&(t=h({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function Q({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(h({},e,{type:i,_:{called:i,from:"abort"}}))}function Y(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function Z(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function ee(e,t){const n=e.replace(H,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function te({abort:e},t){return!!e&&(!0===e||ie(e,t)||e&&ie(e.plugins,t))}function ne({abort:e},t){if(!e)return!1;if(!0===e||m(e))return!0;const{plugins:n}=e;return re(e)&&e.length===t||re(n)&&n.length===t}function re(e){return Array.isArray(e)}function ie(e,t){return!(!e||!re(e))&&e.includes(t)}function ae(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function oe(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=l(e[n])?Object.assign({},e[n]):e[n]),t),{})}function se(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let l=o;if(c)return a(o);if(s===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===z.disablePlugin&&setTimeout(()=>X(o.meta.rid,{payload:o}),0),s===z.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return J(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!j.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(h({},{type:z.ready},t))},0)})}if(s!==z.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>W(i,t,e),0);const r=await async function(e,t,n,r,i){const a=p(t)?t():t,o=e.type,s=o.replace(H,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return f(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===z.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const l=u.map(e=>e.name),d=function(e,t,n){const r=ee(e).map(e=>Z(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=ee(e,i),[o,s,c]=a.map(e=>Z(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await K({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});if(ne(m,l.length))return m;let g;if(g=o===s?m:await K({action:h({},m,{type:s}),data:{exact:d.during,namespaced:d.duringNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i}),o.match(H)){const e=`${s}End`,t=await K({action:h({},g,{type:e}),data:{exact:d.after,namespaced:d.afterNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&X(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(l)}}function ce(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class ue{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return N(...this[e].map(e=>e(i)))(n)(r)}}}function le(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=de(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},h({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=de(n.type,z.initialize),a=e()[i];return a&&i?(r[i]=h({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),h({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=h({},t[n.name],{loaded:!0}),h({},t,r);switch(n.type){case z.disablePlugin:return h({},t,pe(n.plugins,!1,t));case z.enablePlugin:return h({},t,pe(n.plugins,!0,t));default:return t}}}function de(e,t){return e.substring(t.length+1,e.length)}function pe(e,t,n){return e.reduce((e,r)=>(e[r]=h({},n[r],{enabled:t}),e),n)}function fe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const me={last:{},history:[]};function ge(e=me,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===z.track){const t=fe(h({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return h({},e,{last:t,history:e.history.concat(t)})}return e}const ye={actions:[]};function he(e=ye,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===z.identify?[t].concat(e.actions):e.actions.concat(t),h({},e,{actions:n});case"dequeue":return[];default:return e}}const be=/#.*$/;function we(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(be,""):"")}const Ie=(e={})=>{if(!g)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!g)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(be,"")}(s),u={title:t,url:c,path:we(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),h({},u,e)},Ee={last:{},history:[]};function ve(e=Ee,t){const{properties:n,options:r,meta:i}=t;if(t.type===z.page){const t=fe(h({properties:n,meta:i},Object.keys(r).length&&{options:r}));return h({},e,{last:t,history:e.history.concat(t)})}return e}let Se,Pe,Ne,Oe;Se=function(){if(!g)return!1;const e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),Pe=g?document.referrer:null,Ne=t(),Oe=n();const Ae={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:Se},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:Oe,locale:Ne,campaign:{},referrer:Pe};function _e(e=Ae,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case z.campaign:return h({},e,{campaign:i});case z.offline:return h({},e,{offline:!0});case z.online:return h({},e,{offline:!1});default:return n?e:h({},Ae,e,{initialized:!0})}}const xe=["plugins","reducers","storage"];function ke(e,t,n){if(!g)return;const r=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(e=>{r(e,t)})}function Te(e){const t=ke.bind(null,"online offline",t=>Promise.resolve(!navigator.onLine).then(e));return t(!0),e=>t(!1)}function $e(){return s("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(c[u].analytics.push(e.action||e),a(e))})}}function je(e){return function(){return N(N.apply(null,arguments),$e())}}function ze(e){return e?y(e)?e:[e]:[]}function Me(t={},n,r){const i=e();var a,o;return n&&(B[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(p(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),h({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function qe(t={}){const n=t.reducers||{},c=t.initialUser||{},u=(t.plugins||[]).reduce((e,t)=>{if(p(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=G,r.apply({instance:G},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),d=t.storage?t.storage:{getItem:a,setItem:s,removeItem:o},f=function(e){return function(t,n,r){return n.getState("user")[t]||(r&&l(r)&&r[t]?r[t]:C(e)[t]||a(R(t))||null)}}(d);let y=u.plugins;const E=u.events.filter(e=>!j.includes(e)).sort(),v=new Set(E.concat($).filter(e=>!j.includes(e))),A=Array.from(v).sort(),_=()=>y,{addMiddleware:x,removeMiddleware:M,dynamicMiddlewares:q}=new ue,U=()=>{throw new Error("Abort disabled inListener")},B=r(),X=C(d),J=h({},X,c,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});J.anonymousId||(J.anonymousId=e());const H=h({enable:(e,t)=>new Promise(n=>{re.dispatch({type:z.enablePlugin,plugins:ze(e),_:{originalAction:z.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{re.dispatch({type:z.disablePlugin,plugins:ze(e),_:{originalAction:z.disablePlugin}},n,[t])})},u.methods);let F=!1;const G={identify:async(e,t,n,r)=>{const i=m(e)?e:null,a=l(e)?e:t,o=n||{},c=G.user();s(R(k),i);const u=i||a.userId||f(k,G,a);return new Promise(e=>{re.dispatch(h({type:z.identifyStart,userId:u,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");const a=l(e)?e:t||{},o=l(n)?n:{};return new Promise(e=>{re.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:f(k,G,t),anonymousId:f(T,G,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=l(e)?e:{},i=l(t)?t:{};return new Promise(a=>{re.dispatch({type:z.pageStart,properties:Ie(r),options:i,userId:f(k,G,r),anonymousId:f(T,G,r)},a,[e,t,n])})},user:e=>{if(e===k||"id"===e)return f(k,G);if(e===T||"anonId"===e)return f(T,G);const t=G.getState("user");return e?i(t,e):t},reset:e=>new Promise(t=>{re.dispatch({type:z.resetStart},t,e)}),ready:e=>(F&&e({plugins:H,instance:G}),G.on(z.ready,t=>{e(t),F=!0})),on:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:G,plugins:y}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:G,plugins:y}),e(r));return x(e,Ue),x(r,Ve),()=>{M(e,Ue),M(r,Ve)}}const r=e.match(n)?Ue:Ve,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:G,plugins:y,abort:U}),n(r));return x(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);const n=G.on(e,({payload:e})=>{t({payload:e,instance:G,plugins:y,abort:U}),n()});return n},getState:e=>{const t=re.getState();return e?i(t,e):Object.assign({},t)},dispatch:e=>{const t=m(e)?{type:e}:e;if($.includes(t.type))throw new Error("reserved action "+t.type);const n=h({},t,{_:h({originalAction:t.type},e._||{})});re.dispatch(n)},enablePlugin:H.enable,disablePlugin:H.disable,plugins:H,storage:{getItem:d.getItem,setItem:(e,t,n)=>{re.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{re.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{G.storage.setItem(O,e,t)},events:{core:$,plugins:E}},K=u.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=Me()),e(t)),q(Ue),se(G,_,{all:A,plugins:E}),ce(d),V(G),D(G),q(Ve)]),Q={context:_e,user:L(d),page:ve,track:ge,plugins:le(_),queue:he};let Y=N,Z=N;if(g&&t.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Y=e({trace:!0,traceLimit:25})),Z=function(){return 0===arguments.length?$e():l(typeof arguments[0])?je():je().apply(null,arguments)}}const ee=function(e){return Object.keys(e).reduce((t,n)=>(xe.includes(n)||(t[n]=e[n]),t),{})}(t),te=u.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=u.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ne={context:ee,user:J,plugins:te},re=S(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===b&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===w||typeof n(void 0,{type:I})===w)throw new Error("reducer "+t+" "+w)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===w){const e=P(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(h({},Q,n)),ne,Z(Y(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=N(...s)(a.dispatch),h({},a,{dispatch:o})}}(...K))));var ie;re.dispatch=(ie=re.dispatch,function(e,t,n){const r=h({},e,{meta:Me(e.meta,t,ze(n))});return ie.apply(null,[r])});const ae=Object.keys(y);re.dispatch({type:z.bootstrap,plugins:ae,config:ee,params:B,user:J,initialUser:c,persistedUser:X});const oe=ae.filter(e=>u.pluginEnabled[e]),de=ae.filter(e=>!u.pluginEnabled[e]);return re.dispatch({type:z.registerPlugins,plugins:ae,enabled:u.pluginEnabled}),u.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&p(n)&&n({instance:G,config:r,payload:e}),re.dispatch({type:z.registerPluginType(i),name:i,enabled:u.pluginEnabled[i],plugin:e}),u.pluginsArray.length===t+1&&re.dispatch({type:z.initializeStart,plugins:oe,disabled:de})}),Te(e=>{re.dispatch({type:e?z.offline:z.online})}),function(e,t,n){setInterval(()=>W(e,t,n),3e3)}(re,_,G),G}const Ue="before",Ve="after";export{qe as Analytics,x as CONSTANTS,z as EVENTS,qe as default,qe as init};
import{uuid as e,getBrowserLocale as t,getTimeZone as n,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as s,globalContext as c,KEY as u}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as d,isFunction as p,isBoolean as f,isString as m,isBrowser as g,isArray as y}from"@analytics/type-utils";function h(){return h=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},h.apply(this,arguments)}const b="function",w="undefined",I="@@redux/"+Math.random().toString(36),E=/* #__PURE__ */(()=>typeof Symbol===b&&Symbol.observable||"@@observable")(),v=" != "+b;function S(e,t,n){if(typeof t===b&&typeof n===w&&(n=t,t=void 0),typeof n!==w){if(typeof n!==b)throw new Error("enhancer"+v);return n(S)(e,t)}if(typeof e!==b)throw new Error("reducer"+v);let r=e,i=t,a=[],o=a,s=!1;function c(){o===a&&(o=a.slice())}function u(){return i}function d(e){if(typeof e!==b)throw new Error("Listener"+v);let t=!0;return c(),o.push(e),function(){if(!t)return;t=!1,c();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===w)throw new Error("ActType "+w);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:u,replaceReducer:function(e){if(typeof e!==b)throw new Error("next reducer"+v);r=e,p({type:"@@redux/INIT"})},[E]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(u())}return n(),{unsubscribe:e(n)}},[E](){return this}}}}}function P(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+w}function N(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const O=d+"anon_id",A=d+"user_id",_=d+"user_traits";var x={__proto__:null,ANON_ID:O,USER_ID:A,USER_TRAITS:_};const k="userId",T="anonymousId",$=["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"],j=["name","EVENTS","config","loaded"];var z=$.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const M=/^utm_/,q=/^an_prop_/,U=/^an_trait_/;function V(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===z.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(O,a.anonymousId),c||t(A,a.userId),s.traits&&t(_,h({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(M)||t.match(/^(d|g)clid/)){const n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(q)&&(e.props[t.replace(q,"")]=r[t]),t.match(U)&&(e.traits[t.replace(U,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(h({type:z.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:z.campaign,campaign:a.campaign})}}return r(i)}}function L(e){return function(t={},n={}){if(n.type===z.setItemEnd){if(n.key===O)return h({},t,{anonymousId:n.value});if(n.key===A)return h({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:h({},t.traits,n.traits)});case z.reset:return[A,O,_].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(A),anonymousId:e.getItem(O),traits:e.getItem(_)}}const R=e=>d+"TEMP"+d+e;function D(t){const{setItem:n,removeItem:r,getItem:i}=t.storage;return t=>a=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===z.reset&&([A,_,O].forEach(e=>{r(e)}),[k,T,"traits"].forEach(e=>{o(R(e))})),s.type===z.identify){i(O)||n(O,e());const r=i(A),a=i(_)||{};r&&r!==c&&t.dispatch({type:z.userIdChanged,old:{userId:r,traits:a},new:{userId:c,traits:u},options:l}),c&&n(A,c),u&&n(_,h({},a,u))}return a(s)}}const B={};function X(e,t){B[e]&&p(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(h({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>J(e,t,n-10).then(r,i)))}function W(e){return{abort:e}}function H(e,t,n){const r={},i=t(),{plugins:a,context:o,queue:s,user:c}=e.getState();if(!o.offline&&s&&s.actions&&s.actions.length){const t=s.actions.reduce((e,t,n)=>(a[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const o=s.actions[t],u=o.plugin,d=o.payload.type,f=i[u][d];if(f&&p(f)){const t=function(e={},t={}){return[k,T].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(o.payload,c);let i;const s=r[t.meta.rid];if(!s&&(i=f({payload:t,config:a[u].config,instance:n,abort:W}),i&&l(i)&&i.abort))return void(r[t.meta.rid]=!0);if(!s){const n=`${d}:${u}`;e.dispatch(h({},t,{type:n,_:{called:n,from:"queueDrain"}}))}}});const o=s.actions.filter((e,n)=>!~t.processIndex.indexOf(n));s.actions=o}}}const F=/Start$/,G=/^bootstrap/,K=/^ready/;async function Q({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:c,context:u}=r,d=t.type,f=d.match(F);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const g=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(F)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&ie(o)?o:n;if(r&&(c=o&&ie(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return h({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:se(n),instance:e,config:a||{},abort:c}}}(n,m),y=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!c[n].loaded),u.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,u=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!p(t.method))return a;!function(e,t){const n=oe(e);if(n&&n.name===t){const r=oe(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(u=a,f=s,m=t.pluginName,function(e,t){return h({},u,{abort:{reason:e,plugins:t||[f],caller:d,from:m||f}})}),config:Z(t.pluginName,c,i),plugins:c});var u,f,m;const g=l(o)?o:{};return Promise.resolve(h({},a,g))},Promise.resolve(t));u[s]=r}else u[s]=t;return Promise.resolve(u)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:u}=r,p=i[u],m=await t;let w=b[u]?b[u]:{};if(f&&(w=m),ne(w,u))return Y({data:w,method:d,instance:n,pluginName:u,store:o}),Promise.resolve(m);if(ne(m,u))return s&&Y({data:m,method:d,instance:n,store:o}),Promise.resolve(m);if(y.hasOwnProperty(u)&&!0===y[u])return o.dispatch({type:"queue",plugin:u,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=g(b[u],i[u]),E=await p[d]({abort:I.abort,payload:w,instance:n,config:Z(u,c,i),plugins:c}),v=h({},m,l(E)?E:{}),S=b[u];if(ne(S,u))Y({data:S,method:d,instance:n,pluginName:u,store:o});else{const e=`${d}:${u}`;(e.match(/:/g)||[]).length<2&&!d.match(G)&&!d.match(K)&&n.dispatch(h({},f?v:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(v)},Promise.resolve(t));if(!(d.match(F)||d.match(/^registerPlugin/)||d.match(K)||d.match(G)||d.match(/^params/)||d.match(/^userIdChanged/))){if(s.plugins.includes(d),w._&&w._.originalAction===d)return w;let t=h({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});re(w,e.exact.length)&&!d.match(/End$/)&&(t=h({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function Y({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(h({},e,{type:i,_:{called:i,from:"abort"}}))}function Z(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function ee(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function te(e,t){const n=e.replace(F,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function ne({abort:e},t){return!!e&&(!0===e||ae(e,t)||e&&ae(e.plugins,t))}function re({abort:e},t){if(!e)return!1;if(!0===e||m(e))return!0;const{plugins:n}=e;return ie(e)&&e.length===t||ie(n)&&n.length===t}function ie(e){return Array.isArray(e)}function ae(e,t){return!(!e||!ie(e))&&e.includes(t)}function oe(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function se(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=l(e[n])?Object.assign({},e[n]):e[n]),t),{})}function ce(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let l=o;if(c)return a(o);if(s===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===z.disablePlugin&&setTimeout(()=>X(o.meta.rid,{payload:o}),0),s===z.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return J(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!j.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(h({},{type:z.ready},t))},0)})}if(s!==z.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>H(i,t,e),0);const r=await async function(e,t,n,r,i){const a=p(t)?t():t,o=e.type,s=o.replace(F,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return f(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===z.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const l=u.map(e=>e.name),d=function(e,t,n){const r=te(e).map(e=>ee(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=te(e,i),[o,s,c]=a.map(e=>ee(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await Q({action:e,data:{exact:d.before,namespaced:d.beforeNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});if(re(m,l.length))return m;let g;if(g=o===s?m:await Q({action:h({},m,{type:s}),data:{exact:d.during,namespaced:d.duringNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i}),o.match(F)){const e=`${s}End`,t=await Q({action:h({},g,{type:e}),data:{exact:d.after,namespaced:d.afterNS},state:c,allPlugins:a,allMatches:d,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&X(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(l)}}function ue(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class le{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return N(...this[e].map(e=>e(i)))(n)(r)}}}function de(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=pe(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},h({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=pe(n.type,z.initialize),a=e()[i];return a&&i?(r[i]=h({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),h({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=h({},t[n.name],{loaded:!0}),h({},t,r);switch(n.type){case z.disablePlugin:return h({},t,fe(n.plugins,!1,t));case z.enablePlugin:return h({},t,fe(n.plugins,!0,t));default:return t}}}function pe(e,t){return e.substring(t.length+1,e.length)}function fe(e,t,n){return e.reduce((e,r)=>(e[r]=h({},n[r],{enabled:t}),e),n)}function me(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const ge={last:{},history:[]};function ye(e=ge,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===z.track){const t=me(h({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return h({},e,{last:t,history:e.history.concat(t)})}return e}const he={actions:[]};function be(e=he,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===z.identify?[t].concat(e.actions):e.actions.concat(t),h({},e,{actions:n});case"dequeue":return[];default:return e}}const we=/#.*$/;function Ie(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(we,""):"")}const Ee=(e={})=>{if(!g)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!g)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(we,"")}(s),u={title:t,url:c,path:Ie(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),h({},u,e)},ve={last:{},history:[]};function Se(e=ve,t){const{properties:n,options:r,meta:i}=t;if(t.type===z.page){const t=me(h({properties:n,meta:i},Object.keys(r).length&&{options:r}));return h({},e,{last:t,history:e.history.concat(t)})}return e}let Pe,Ne,Oe,Ae;Pe=function(){if(!g)return!1;const e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),Ne=g?document.referrer:null,Oe=t(),Ae=n();const _e={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:Pe},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:Ae,locale:Oe,campaign:{},referrer:Ne};function xe(e=_e,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case z.campaign:return h({},e,{campaign:i});case z.offline:return h({},e,{offline:!0});case z.online:return h({},e,{offline:!1});default:return n?e:h({},_e,e,{initialized:!0})}}const ke=["plugins","reducers","storage"];function Te(e,t,n){if(!g)return;const r=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(e=>{r(e,t)})}function $e(e){const t=Te.bind(null,"online offline",t=>Promise.resolve(!navigator.onLine).then(e));return t(!0),e=>t(!1)}function je(){return s("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(c[u].analytics.push(e.action||e),a(e))})}}function ze(e){return function(){return N(N.apply(null,arguments),je())}}function Me(e){return e?y(e)?e:[e]:[]}function qe(t={},n,r){const i=e();var a,o;return n&&(B[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(p(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),h({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ue(t={}){const n=t.reducers||{},c=t.initialUser||{},u=(t.plugins||[]).reduce((e,t)=>{if(p(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=G,r.apply({instance:G},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),d=t.storage?t.storage:{getItem:a,setItem:s,removeItem:o},f=function(e){return function(t,n,r){return n.getState("user")[t]||(r&&l(r)&&r[t]?r[t]:C(e)[t]||a(R(t))||null)}}(d);let y=u.plugins;const E=u.events.filter(e=>!j.includes(e)).sort(),v=new Set(E.concat($).filter(e=>!j.includes(e))),A=Array.from(v).sort(),_=()=>y,{addMiddleware:x,removeMiddleware:M,dynamicMiddlewares:q}=new le,U=()=>{throw new Error("Abort disabled inListener")},B=r(),X=C(d),J=h({},X,c,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});J.anonymousId||(J.anonymousId=e());const W=h({enable:(e,t)=>new Promise(n=>{re.dispatch({type:z.enablePlugin,plugins:Me(e),_:{originalAction:z.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{re.dispatch({type:z.disablePlugin,plugins:Me(e),_:{originalAction:z.disablePlugin}},n,[t])})},u.methods);let F=!1;const G={identify:async(e,t,n,r)=>{const i=m(e)?e:null,a=l(e)?e:t,o=n||{},c=G.user();s(R(k),i);const u=i||a.userId||f(k,G,a);return new Promise(e=>{re.dispatch(h({type:z.identifyStart,userId:u,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");const a=l(e)?e:t||{},o=l(n)?n:{};return new Promise(e=>{re.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:f(k,G,t),anonymousId:f(T,G,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=l(e)?e:{},i=l(t)?t:{};return new Promise(a=>{re.dispatch({type:z.pageStart,properties:Ee(r),options:i,userId:f(k,G,r),anonymousId:f(T,G,r)},a,[e,t,n])})},user:e=>{if(e===k||"id"===e)return f(k,G);if(e===T||"anonId"===e)return f(T,G);const t=G.getState("user");return e?i(t,e):t},reset:e=>new Promise(t=>{re.dispatch({type:z.resetStart},t,e)}),ready:e=>(F&&e({plugins:W,instance:G}),G.on(z.ready,t=>{e(t),F=!0})),on:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:G,plugins:y}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:G,plugins:y}),e(r));return x(e,Ve),x(r,Le),()=>{M(e,Ve),M(r,Le)}}const r=e.match(n)?Ve:Le,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:G,plugins:y,abort:U}),n(r));return x(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!p(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);const n=G.on(e,({payload:e})=>{t({payload:e,instance:G,plugins:y,abort:U}),n()});return n},getState:e=>{const t=re.getState();return e?i(t,e):Object.assign({},t)},dispatch:e=>{const t=m(e)?{type:e}:e;if($.includes(t.type))throw new Error("reserved action "+t.type);const n=h({},t,{_:h({originalAction:t.type},e._||{})});re.dispatch(n)},enablePlugin:W.enable,disablePlugin:W.disable,plugins:W,storage:{getItem:d.getItem,setItem:(e,t,n)=>{re.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{re.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{G.storage.setItem(O,e,t)},events:{core:$,plugins:E}},K=u.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=qe()),e(t)),q(Ve),ce(G,_,{all:A,plugins:E}),ue(d),V(G),D(G),q(Le)]),Q={context:xe,user:L(d),page:Se,track:ye,plugins:de(_),queue:be};let Y=N,Z=N;if(g&&t.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Y=e({trace:!0,traceLimit:25})),Z=function(){return 0===arguments.length?je():l(typeof arguments[0])?ze():ze().apply(null,arguments)}}const ee=function(e){return Object.keys(e).reduce((t,n)=>(ke.includes(n)||(t[n]=e[n]),t),{})}(t),te=u.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=u.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ne={context:ee,user:J,plugins:te},re=S(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===b&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===w||typeof n(void 0,{type:I})===w)throw new Error("reducer "+t+" "+w)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===w){const e=P(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(h({},Q,n)),ne,Z(Y(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=N(...s)(a.dispatch),h({},a,{dispatch:o})}}(...K))));var ie;re.dispatch=(ie=re.dispatch,function(e,t,n){const r=h({},e,{meta:qe(e.meta,t,Me(n))});return ie.apply(null,[r])});const ae=Object.keys(y);re.dispatch({type:z.bootstrap,plugins:ae,config:ee,params:B,user:J,initialUser:c,persistedUser:X});const oe=ae.filter(e=>u.pluginEnabled[e]),se=ae.filter(e=>!u.pluginEnabled[e]);return re.dispatch({type:z.registerPlugins,plugins:ae,enabled:u.pluginEnabled}),u.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&p(n)&&n({instance:G,config:r,payload:e}),re.dispatch({type:z.registerPluginType(i),name:i,enabled:u.pluginEnabled[i],plugin:e}),u.pluginsArray.length===t+1&&re.dispatch({type:z.initializeStart,plugins:oe,disabled:se})}),$e(e=>{re.dispatch({type:e?z.offline:z.online})}),function(e,t,n){setInterval(()=>H(e,t,n),3e3)}(re,_,G),G}const Ve="before",Le="after";export{Ue as Analytics,x as CONSTANTS,z as EVENTS,Ue as default,Ue as init};
//# sourceMappingURL=analytics-core.modern.js.map

@@ -1,2 +0,2 @@

import{uuid as e,getBrowserLocale as n,getTimeZone as t,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as u,globalContext as c,KEY as s}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as f,isFunction as d,isBoolean as p,isString as m,isBrowser as g,isArray as h}from"@analytics/type-utils";function v(){return v=Object.assign||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},v.apply(this,arguments)}var y="function",b="undefined",I="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */function(){return typeof Symbol===y&&Symbol.observable||"@@observable"}(),E=" != "+y;function P(e,n,t){var r;if(typeof n===y&&typeof t===b&&(t=n,n=void 0),typeof t!==b){if(typeof t!==y)throw new Error("enhancer"+E);return t(P)(e,n)}if(typeof e!==y)throw new Error("reducer"+E);var i=e,a=n,o=[],u=o,c=!1;function s(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==y)throw new Error("Listener"+E);var n=!0;return s(),u.push(e),function(){if(n){n=!1,s();var t=u.indexOf(e);u.splice(t,1)}}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===b)throw new Error("ActType "+b);if(c)throw new Error("Dispatch in reducer");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 p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+E);i=e,p({type:"@@redux/INIT"})}})[w]=function(){var e,n=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function t(){e.next&&e.next(f())}return t(),{unsubscribe:n(t)}}})[w]=function(){return this},e},r}function S(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+b}function N(){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 O(){var e=arguments;return function(n){return function(t,r,i){var a,o=n(t,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),v({},o,{dispatch:u=N.apply(void 0,a)(o.dispatch)})}}}var A=f+"anon_id",_=f+"user_id",x=f+"user_traits",j={__proto__:null,ANON_ID:A,USER_ID:_,USER_TRAITS:x},k="userId",T="anonymousId",z=["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"],M=["name","EVENTS","config","loaded"],q=z.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),U=/^utm_/,V=/^an_prop_/,L=/^an_trait_/;function C(e){var n=e.storage.setItem;return function(t){return function(r){return function(i){if(i.type===q.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&n(A,o.anonymousId),s||n(_,o.userId),c.traits&&n(x,v({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,n){if(n.match(U)||n.match(/^(d|g)clid/)){var t=n.replace(U,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(V)&&(e.props[n.replace(V,"")]=a[n]),n.match(L)&&(e.traits[n.replace(L,"")]=a[n]),e},{campaign:{},props:{},traits:{}});t.dispatch(v({type:q.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&t.dispatch({type:q.campaign,campaign:p.campaign})}}return r(i)}}}}function R(e){return function(n,t){if(void 0===n&&(n={}),void 0===t&&(t={}),t.type===q.setItemEnd){if(t.key===A)return v({},n,{anonymousId:t.value});if(t.key===_)return v({},n,{userId:t.value})}switch(t.type){case q.identify:return Object.assign({},n,{userId:t.userId,traits:v({},n.traits,t.traits)});case q.reset:return[_,A,x].forEach(function(n){e.removeItem(n)}),Object.assign({},n,{userId:null,anonymousId:null,traits:{}});default:return n}}}function $(e){return{userId:e.getItem(_),anonymousId:e.getItem(A),traits:e.getItem(x)}}var D=function(e){return f+"TEMP"+f+e};function B(n){var t=n.storage,r=t.setItem,i=t.removeItem,a=t.getItem;return function(n){return function(t){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===q.reset&&([_,x,A].forEach(function(e){i(e)}),[k,T,"traits"].forEach(function(e){o(D(e))})),u.type===q.identify){a(A)||r(A,e());var f=a(_),d=a(x)||{};f&&f!==c&&n.dispatch({type:q.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(_,c),s&&r(x,v({},d,s))}return t(u)}}}}var X={};function J(e,n){X[e]&&d(X[e])&&(X[e](n),delete X[e])}function W(e,n,t){return new Promise(function(r,i){return n()?r(e):t<1?i(v({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return W(e,n,t-10).then(r,i)})})}function H(e,n,t){var r=n(),i=e.getState(),a=i.plugins,o=i.queue,u=i.user;if(!i.context.offline&&o&&o.actions&&o.actions.length){var c=o.actions.reduce(function(e,n,t){return a[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(c.processIndex&&c.processIndex.length){c.processIndex.forEach(function(n){var i=o.actions[n],c=i.plugin,s=i.payload.type,l=r[c][s];if(l&&d(l)){var f=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[k,T].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(i.payload,u);l({payload:f,config:a[c].config,instance:t});var p=s+":"+c;e.dispatch(v({},f,{type:p,_:{called:p,from:"queueDrain"}}))}});var s=o.actions.filter(function(e,n){return!~c.processIndex.indexOf(n)});o.actions=s}}}var F=function(e){var n=e.data,t=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,c=e.EVENTS;try{var s=i.plugins,f=i.context,p=t.type,m=p.match(G),g=n.exact.map(function(e){return e.pluginName});m&&(g=o.during.map(function(e){return e.pluginName}));var h=function(e,n){return function(t,r,i){var a=r.config,o=r.name,u=o+"."+t.type;i&&(u=i.event);var c=t.type.match(G)?function(e,n,t,r,i){return function(a,o){var u=r?r.name:e,c=o&&ie(o)?o:t;if(r&&(!(c=o&&ie(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+n+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return v({},i,{abort:{reason:a,plugins:c,caller:n,_:u}})}}(o,u,n,i,t):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(t,u);return{payload:ue(t),instance:e,config:a||{},abort:c}}}(r,g),y=n.exact.reduce(function(e,n){var t=n.pluginName,r=n.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!s[t].loaded),f.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(n.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(n.namespaced&&n.namespaced[u])return Promise.resolve(n.namespaced[u].reduce(function(e,n,t){try{return Promise.resolve(e).then(function(e){return n.method&&d(n.method)?(function(e,n){var t=oe(e);if(t&&t.name===n){var r=oe(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=u,o=n.pluginName,function(e,n){return v({},t,{abort:{reason:e,plugins:n||[i],caller:p,from:o||i}})}),config:Z(n.pluginName,s,a),plugins:s})).then(function(n){var t=l(n)?n:{};return Promise.resolve(v({},e,t))})):e;var t,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(n){e[u]=n});e[u]=t}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(n.exact.reduce(function(t,i,o){try{var c=n.exact.length===o+1,f=i.pluginName,d=a[f];return Promise.resolve(t).then(function(n){var t=e[f]?e[f]:{};if(m&&(t=n),te(t,f))return Y({data:t,method:p,instance:r,pluginName:f,store:u}),Promise.resolve(n);if(te(n,f))return c&&Y({data:n,method:p,instance:r,store:u}),Promise.resolve(n);if(y.hasOwnProperty(f)&&!0===y[f])return u.dispatch({type:"queue",plugin:f,payload:t,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(n);var i=h(e[f],a[f]);return Promise.resolve(d[p]({abort:i.abort,payload:t,instance:r,config:Z(f,s,a),plugins:s})).then(function(i){var a=l(i)?i:{},o=v({},n,a),c=e[f];if(te(c,f))Y({data:c,method:p,instance:r,pluginName:f,store:u});else{var s=p+":"+f;(s.match(/:/g)||[]).length<2&&!p.match(K)&&!p.match(Q)&&r.dispatch(v({},m?o:t,{type:s,_:{called:s,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(e){if(!(p.match(G)||p.match(/^registerPlugin/)||p.match(Q)||p.match(K)||p.match(/^params/)||p.match(/^userIdChanged/))){if(c.plugins.includes(p),e._&&e._.originalAction===p)return e;var t=v({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});re(e,n.exact.length)&&!p.match(/End$/)&&(t=v({},t,{type:e.type+"Aborted"})),u.dispatch(t)}return e})})}catch(e){return Promise.reject(e)}},G=/Start$/,K=/^bootstrap/,Q=/^ready/;function Y(e){var n=e.pluginName,t=e.method+"Aborted"+(n?":"+n:"");e.store.dispatch(v({},e.data,{type:t,_:{called:t,from:"abort"}}))}function Z(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function ee(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function ne(e,n){var t=e.replace(G,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function te(e,n){var t=e.abort;return!!t&&(!0===t||ae(t,n)||t&&ae(t.plugins,n))}function re(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return ie(t)&&t.length===n||ie(r)&&r.length===n}function ie(e){return Array.isArray(e)}function ae(e,n){return!(!e||!ie(e))&&e.includes(n)}function oe(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function ue(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=l(e[t])?Object.assign({},e[t]):e[t]),n},{})}function ce(e,n,t){var r={};return function(i){return function(a){return function(o){try{var u,c=function(e){return u?e:a(f)},s=o.type,l=o.plugins,f=o;if(o.abort)return Promise.resolve(a(o));if(s===q.enablePlugin&&i.dispatch({type:q.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),s===q.disablePlugin&&setTimeout(function(){return J(o.meta.rid,{payload:o})},0),s===q.initializeEnd){var m=n(),g=Object.keys(m),h=g.filter(function(e){return l.includes(e)}).map(function(e){return m[e]}),y=[],b=[],I=o.disabled,w=h.map(function(e){var n=e.loaded,t=e.name,a=e.config;return W(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!M.includes(e)})}),r[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(w).then(function(e){var n={plugins:y,failed:b,disabled:I};setTimeout(function(){g.length===w.length+I.length&&i.dispatch(v({},{type:q.ready},n))},0)})}var E=function(){if(s!==q.bootstrap)return/^ready:([^:]*)$/.test(s)&&setTimeout(function(){return H(i,n,e)},0),Promise.resolve(function(e,n,t,r,i){try{var a=d(n)?n():n,o=e.type,u=o.replace(G,"");if(e._&&e._.called)return Promise.resolve(e);var c=t.getState(),s=(m=a,void 0===(g=c.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));o===q.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(n){var t=c.plugins[n];return e.plugins.includes(n)&&!t.initialized}).map(function(e){return a[e]}));var l=s.map(function(e){return e.name}),f=function(e,n,t){var r=ne(e).map(function(e){return ee(e,n)});return n.reduce(function(t,r){var i=r.name,a=ne(e,i).map(function(e){return ee(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:{}})}(o,s);return Promise.resolve(F({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){function n(){var n=function(){if(o.match(G))return Promise.resolve(F({action:v({},s,{type:u+"End"}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&J(e.meta.rid,{payload:e})})}();return n&&n.then?n.then(function(){return e}):e}if(re(e,l.length))return e;var s,d=function(){if(o!==u)return Promise.resolve(F({action:v({},e,{type:u}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return d&&d.then?d.then(n):n()})}catch(e){return Promise.reject(e)}var m,g,h}(o,n,e,i,t)).then(function(e){return u=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(c):c(E))}catch(e){return Promise.reject(e)}}}}}function se(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 le=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 N.apply(void 0,o)(r)(i)}}}}};function fe(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=de(t.type,"registerPlugin"),a=e()[i];if(!a||!i)return n;var o=t.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},v({},n,r)}if(/^initialize:([^:]*)$/.test(t.type)){var c=de(t.type,q.initialize),s=e()[c];return s&&c?(r[c]=v({},n[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),v({},n,r)):n}if(/^ready:([^:]*)$/.test(t.type))return r[t.name]=v({},n[t.name],{loaded:!0}),v({},n,r);switch(t.type){case q.disablePlugin:return v({},n,pe(t.plugins,!1,n));case q.enablePlugin:return v({},n,pe(t.plugins,!0,n));default:return n}}}function de(e,n){return e.substring(n.length+1,e.length)}function pe(e,n,t){return e.reduce(function(e,r){return e[r]=v({},t[r],{enabled:n}),e},t)}function me(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ge={last:{},history:[]};function he(e,n){void 0===e&&(e=ge);var t=n.options,r=n.meta;if(n.type===q.track){var i=me(v({event:n.event,properties:n.properties},Object.keys(t).length&&{options:t},{meta:r}));return v({},e,{last:i,history:e.history.concat(i)})}return e}var ve={actions:[]};function ye(e,n){void 0===e&&(e=ve);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),v({},e,{actions:r});case"dequeue":return[];default:return e}}var be=/#.*$/;function Ie(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(be,""):"")}var we,Ee,Pe,Se,Ne=function(e){if(void 0===e&&(e={}),!g)return e;var n=document,t=n.title,r=n.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var n=function(){if(g)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(be,"")}(s),f={title:t,url:l,path:Ie(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),v({},f,e)},Oe={last:{},history:[]};function Ae(e,n){void 0===e&&(e=Oe);var t=n.options;if(n.type===q.page){var r=me(v({properties:n.properties,meta:n.meta},Object.keys(t).length&&{options:t}));return v({},e,{last:r,history:e.history.concat(r)})}return e}we=function(){if(!g)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"}(),Ee=g?document.referrer:null,Pe=n(),Se=t();var _e={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:we},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:Se,locale:Pe,campaign:{},referrer:Ee};function xe(e,n){void 0===e&&(e=_e);var t=e.initialized,r=n.campaign;switch(n.type){case q.campaign:return v({},e,{campaign:r});case q.offline:return v({},e,{offline:!0});case q.online:return v({},e,{offline:!1});default:return t?e:v({},_e,e,{initialized:!0})}}var je=["plugins","reducers","storage"];function ke(e,n,t){if(g){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function Te(e){var n=ke.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function ze(){return u("analytics",[]),function(e){return function(n,t,r){var i=e(n,t,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return c[s].analytics.push(e.action||e),a(e)}})}}}function Me(e){return function(){return N(N.apply(null,arguments),ze())}}function qe(e){return e?h(e)?e:[e]:[]}function Ue(n,t,r){void 0===n&&(n={});var i,a,o=e();return t&&(X[o]=(i=t,a=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(d(t[r])){n=t[r];break}return n}(r),function(e){a&&a(e),i(e)})),v({},n,{rid:o,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Ve(n){void 0===n&&(n={});var t=n.reducers||{},c=n.initialUser||{},s=(n.plugins||[]).reduce(function(e,n){if(d(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=Q,r.apply({instance:Q},n)}),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:[]}),f=n.storage?n.storage:{getItem:a,setItem:u,removeItem:o},p=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&l(r)&&r[n]?r[n]:$(e)[n]||a(D(n))||null)}}(f),h=s.plugins,w=s.events.filter(function(e){return!M.includes(e)}).sort(),E=new Set(w.concat(z).filter(function(e){return!M.includes(e)})),_=Array.from(E).sort(),x=function(){return h},j=new le,U=j.addMiddleware,V=j.removeMiddleware,L=j.dynamicMiddlewares,X=function(){throw new Error("Abort disabled inListener")},J=r(),W=$(f),F=v({},W,c,J.an_uid?{userId:J.an_uid}:{},J.an_aid?{anonymousId:J.an_aid}:{});F.anonymousId||(F.anonymousId=e());var G=v({enable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.enablePlugin,plugins:qe(e),_:{originalAction:q.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.disablePlugin,plugins:qe(e),_:{originalAction:q.disablePlugin}},t,[n])})}},s.methods),K=!1,Q={identify:function(e,n,t,r){try{var i=m(e)?e:null,a=l(e)?e:n,o=t||{},c=Q.user();u(D(k),i);var s=i||a.userId||p(k,Q,a);return Promise.resolve(new Promise(function(e){ue.dispatch(v({type:q.identifyStart,userId:s,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[n,t,r])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var a=l(e)?e:n||{},o=l(t)?t:{};return Promise.resolve(new Promise(function(e){ue.dispatch({type:q.trackStart,event:i,properties:a,options:o,userId:p(k,Q,n),anonymousId:p(T,Q,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=l(e)?e:{},i=l(n)?n:{};return Promise.resolve(new Promise(function(a){ue.dispatch({type:q.pageStart,properties:Ne(r),options:i,userId:p(k,Q,r),anonymousId:p(T,Q,r)},a,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===k||"id"===e)return p(k,Q);if(e===T||"anonId"===e)return p(T,Q);var n=Q.getState("user");return e?i(n,e):n},reset:function(e){return new Promise(function(n){ue.dispatch({type:q.resetStart},n,e)})},ready:function(e){return K&&e({plugins:G,instance:Q}),Q.on(q.ready,function(n){e(n),K=!0})},on:function(e,n){if(!e||!d(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:Q,plugins:h}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:Q,plugins:h}),e(r)}}};return U(r,Le),U(i,Ce),function(){V(r,Le),V(i,Ce)}}var a=e.match(t)?Le:Ce,o=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:Q,plugins:h,abort:X}),t(r)}}};return U(o,a),function(){return V(o,a)}},once:function(e,n){if(!e||!d(n))return!1;if(e===q.bootstrap)throw new Error(".once disabled for "+e);var t=Q.on(e,function(e){n({payload:e.payload,instance:Q,plugins:h,abort:X}),t()});return t},getState:function(e){var n=ue.getState();return e?i(n,e):Object.assign({},n)},dispatch:function(e){var n=m(e)?{type:e}:e;if(z.includes(n.type))throw new Error("reserved action "+n.type);var t=v({},n,{_:v({originalAction:n.type},e._||{})});ue.dispatch(t)},enablePlugin:G.enable,disablePlugin:G.disable,plugins:G,storage:{getItem:f.getItem,setItem:function(e,n,t){ue.dispatch({type:q.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ue.dispatch({type:q.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){Q.storage.setItem(A,e,n)},events:{core:z,plugins:w}},Y=s.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ue()),e(n)}}},L(Le),ce(Q,x,{all:_,plugins:w}),se(f),C(Q),B(Q),L(Ce)]),Z={context:xe,user:R(f),page:Ae,track:he,plugins:fe(x),queue:ye},ee=N,ne=N;if(g&&n.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(ee=te({trace:!0,traceLimit:25})),ne=function(){return 0===arguments.length?ze():l(typeof arguments[0])?Me():Me().apply(null,arguments)}}var re,ie=function(e){return Object.keys(e).reduce(function(n,t){return je.includes(t)||(n[t]=e[t]),n},{})}(n),ae=s.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,a=s.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),oe={context:ie,user:F,plugins:ae},ue=P(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===y&&(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:"@@redux/INIT"})===b||typeof t(void 0,{type:I})===b)throw new Error("reducer "+n+" "+b)})}(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===b){var f=S(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(v({},Z,t)),oe,ne(ee(O.apply(void 0,Y))));ue.dispatch=(re=ue.dispatch,function(e,n,t){var r=v({},e,{meta:Ue(e.meta,n,qe(t))});return re.apply(null,[r])});var de=Object.keys(h);ue.dispatch({type:q.bootstrap,plugins:de,config:ie,params:J,user:F,initialUser:c,persistedUser:W});var pe=de.filter(function(e){return s.pluginEnabled[e]}),me=de.filter(function(e){return!s.pluginEnabled[e]});return ue.dispatch({type:q.registerPlugins,plugins:de,enabled:s.pluginEnabled}),s.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&d(t)&&t({instance:Q,config:r,payload:e}),ue.dispatch({type:q.registerPluginType(i),name:i,enabled:s.pluginEnabled[i],plugin:e}),s.pluginsArray.length===n+1&&ue.dispatch({type:q.initializeStart,plugins:pe,disabled:me})}),Te(function(e){ue.dispatch({type:e?q.offline:q.online})}),function(e,n,t){setInterval(function(){return H(e,n,t)},3e3)}(ue,x,Q),Q}var Le="before",Ce="after";export{Ve as Analytics,j as CONSTANTS,q as EVENTS,Ve as default,Ve as init};
import{uuid as e,getBrowserLocale as n,getTimeZone as t,paramsParse as r,dotProp as i}from"analytics-utils";import{get as a,remove as o,set as u,globalContext as c,KEY as s}from"@analytics/global-storage-utils";import{isObject as l,PREFIX as f,isFunction as d,isBoolean as p,isString as m,isBrowser as g,isArray as h}from"@analytics/type-utils";function v(){return v=Object.assign||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},v.apply(this,arguments)}var y="function",b="undefined",I="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */function(){return typeof Symbol===y&&Symbol.observable||"@@observable"}(),E=" != "+y;function P(e,n,t){var r;if(typeof n===y&&typeof t===b&&(t=n,n=void 0),typeof t!==b){if(typeof t!==y)throw new Error("enhancer"+E);return t(P)(e,n)}if(typeof e!==y)throw new Error("reducer"+E);var i=e,a=n,o=[],u=o,c=!1;function s(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==y)throw new Error("Listener"+E);var n=!0;return s(),u.push(e),function(){if(n){n=!1,s();var t=u.indexOf(e);u.splice(t,1)}}}function p(e){if(!l(e))throw new Error("Act != obj");if(typeof e.type===b)throw new Error("ActType "+b);if(c)throw new Error("Dispatch in reducer");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 p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+E);i=e,p({type:"@@redux/INIT"})}})[w]=function(){var e,n=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function t(){e.next&&e.next(f())}return t(),{unsubscribe:n(t)}}})[w]=function(){return this},e},r}function S(e,n){var t=n&&n.type;return"action "+(t&&t.toString()||"?")+"reducer "+e+" returns "+b}function N(){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 O(){var e=arguments;return function(n){return function(t,r,i){var a,o=n(t,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),v({},o,{dispatch:u=N.apply(void 0,a)(o.dispatch)})}}}var A=f+"anon_id",_=f+"user_id",x=f+"user_traits",j={__proto__:null,ANON_ID:A,USER_ID:_,USER_TRAITS:x},k="userId",T="anonymousId",z=["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"],M=["name","EVENTS","config","loaded"],q=z.reduce(function(e,n){return e[n]=n,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),U=/^utm_/,V=/^an_prop_/,L=/^an_trait_/;function C(e){var n=e.storage.setItem;return function(t){return function(r){return function(i){if(i.type===q.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&n(A,o.anonymousId),s||n(_,o.userId),c.traits&&n(x,v({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,n){if(n.match(U)||n.match(/^(d|g)clid/)){var t=n.replace(U,"");e.campaign["campaign"===t?"name":t]=a[n]}return n.match(V)&&(e.props[n.replace(V,"")]=a[n]),n.match(L)&&(e.traits[n.replace(L,"")]=a[n]),e},{campaign:{},props:{},traits:{}});t.dispatch(v({type:q.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&t.dispatch({type:q.campaign,campaign:p.campaign})}}return r(i)}}}}function R(e){return function(n,t){if(void 0===n&&(n={}),void 0===t&&(t={}),t.type===q.setItemEnd){if(t.key===A)return v({},n,{anonymousId:t.value});if(t.key===_)return v({},n,{userId:t.value})}switch(t.type){case q.identify:return Object.assign({},n,{userId:t.userId,traits:v({},n.traits,t.traits)});case q.reset:return[_,A,x].forEach(function(n){e.removeItem(n)}),Object.assign({},n,{userId:null,anonymousId:null,traits:{}});default:return n}}}function $(e){return{userId:e.getItem(_),anonymousId:e.getItem(A),traits:e.getItem(x)}}var D=function(e){return f+"TEMP"+f+e};function B(n){var t=n.storage,r=t.setItem,i=t.removeItem,a=t.getItem;return function(n){return function(t){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===q.reset&&([_,x,A].forEach(function(e){i(e)}),[k,T,"traits"].forEach(function(e){o(D(e))})),u.type===q.identify){a(A)||r(A,e());var f=a(_),d=a(x)||{};f&&f!==c&&n.dispatch({type:q.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(_,c),s&&r(x,v({},d,s))}return t(u)}}}}var X={};function J(e,n){X[e]&&d(X[e])&&(X[e](n),delete X[e])}function W(e,n,t){return new Promise(function(r,i){return n()?r(e):t<1?i(v({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return W(e,n,t-10).then(r,i)})})}function H(e){return{abort:e}}function F(e,n,t){var r={},i=n(),a=e.getState(),o=a.plugins,u=a.queue,c=a.user;if(!a.context.offline&&u&&u.actions&&u.actions.length){var s=u.actions.reduce(function(e,n,t){return o[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(s.processIndex&&s.processIndex.length){s.processIndex.forEach(function(n){var a=u.actions[n],s=a.plugin,f=a.payload.type,p=i[s][f];if(p&&d(p)){var m,g=function(e,n){return void 0===e&&(e={}),void 0===n&&(n={}),[k,T].reduce(function(t,r){return e.hasOwnProperty(r)&&n[r]&&n[r]!==e[r]&&(t[r]=n[r]),t},e)}(a.payload,c),h=r[g.meta.rid];if(!h&&(m=p({payload:g,config:o[s].config,instance:t,abort:H}))&&l(m)&&m.abort)return void(r[g.meta.rid]=!0);if(!h){var y=f+":"+s;e.dispatch(v({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var f=u.actions.filter(function(e,n){return!~s.processIndex.indexOf(n)});u.actions=f}}}var G=function(e){var n=e.data,t=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,c=e.EVENTS;try{var s=i.plugins,f=i.context,p=t.type,m=p.match(K),g=n.exact.map(function(e){return e.pluginName});m&&(g=o.during.map(function(e){return e.pluginName}));var h=function(e,n){return function(t,r,i){var a=r.config,o=r.name,u=o+"."+t.type;i&&(u=i.event);var c=t.type.match(K)?function(e,n,t,r,i){return function(a,o){var u=r?r.name:e,c=o&&ae(o)?o:t;if(r&&(!(c=o&&ae(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+n+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return v({},i,{abort:{reason:a,plugins:c,caller:n,_:u}})}}(o,u,n,i,t):function(e,n){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+n)}}(t,u);return{payload:ce(t),instance:e,config:a||{},abort:c}}}(r,g),y=n.exact.reduce(function(e,n){var t=n.pluginName,r=n.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!s[t].loaded),f.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+t]=i,e},{});return Promise.resolve(n.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(n.namespaced&&n.namespaced[u])return Promise.resolve(n.namespaced[u].reduce(function(e,n,t){try{return Promise.resolve(e).then(function(e){return n.method&&d(n.method)?(function(e,n){var t=ue(e);if(t&&t.name===n){var r=ue(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=u,o=n.pluginName,function(e,n){return v({},t,{abort:{reason:e,plugins:n||[i],caller:p,from:o||i}})}),config:ee(n.pluginName,s,a),plugins:s})).then(function(n){var t=l(n)?n:{};return Promise.resolve(v({},e,t))})):e;var t,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(n){e[u]=n});e[u]=t}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(n.exact.reduce(function(t,i,o){try{var c=n.exact.length===o+1,f=i.pluginName,d=a[f];return Promise.resolve(t).then(function(n){var t=e[f]?e[f]:{};if(m&&(t=n),re(t,f))return Z({data:t,method:p,instance:r,pluginName:f,store:u}),Promise.resolve(n);if(re(n,f))return c&&Z({data:n,method:p,instance:r,store:u}),Promise.resolve(n);if(y.hasOwnProperty(f)&&!0===y[f])return u.dispatch({type:"queue",plugin:f,payload:t,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(n);var i=h(e[f],a[f]);return Promise.resolve(d[p]({abort:i.abort,payload:t,instance:r,config:ee(f,s,a),plugins:s})).then(function(i){var a=l(i)?i:{},o=v({},n,a),c=e[f];if(re(c,f))Z({data:c,method:p,instance:r,pluginName:f,store:u});else{var s=p+":"+f;(s.match(/:/g)||[]).length<2&&!p.match(Q)&&!p.match(Y)&&r.dispatch(v({},m?o:t,{type:s,_:{called:s,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(t))).then(function(e){if(!(p.match(K)||p.match(/^registerPlugin/)||p.match(Y)||p.match(Q)||p.match(/^params/)||p.match(/^userIdChanged/))){if(c.plugins.includes(p),e._&&e._.originalAction===p)return e;var t=v({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ie(e,n.exact.length)&&!p.match(/End$/)&&(t=v({},t,{type:e.type+"Aborted"})),u.dispatch(t)}return e})})}catch(e){return Promise.reject(e)}},K=/Start$/,Q=/^bootstrap/,Y=/^ready/;function Z(e){var n=e.pluginName,t=e.method+"Aborted"+(n?":"+n:"");e.store.dispatch(v({},e.data,{type:t,_:{called:t,from:"abort"}}))}function ee(e,n,t){var r=n[e]||t[e];return r&&r.config?r.config:{}}function ne(e,n){return n.reduce(function(n,t){return t[e]?n.concat({methodName:e,pluginName:t.name,method:t[e]}):n},[])}function te(e,n){var t=e.replace(K,""),r=n?":"+n:"";return[""+e+r,""+t+r,t+"End"+r]}function re(e,n){var t=e.abort;return!!t&&(!0===t||oe(t,n)||t&&oe(t.plugins,n))}function ie(e,n){var t=e.abort;if(!t)return!1;if(!0===t||m(t))return!0;var r=t.plugins;return ae(t)&&t.length===n||ae(r)&&r.length===n}function ae(e){return Array.isArray(e)}function oe(e,n){return!(!e||!ae(e))&&e.includes(n)}function ue(e){var n=e.match(/(.*):(.*)/);return!!n&&{method:n[1],name:n[2]}}function ce(e){return Object.keys(e).reduce(function(n,t){return"type"===t||(n[t]=l(e[t])?Object.assign({},e[t]):e[t]),n},{})}function se(e,n,t){var r={};return function(i){return function(a){return function(o){try{var u,c=function(e){return u?e:a(f)},s=o.type,l=o.plugins,f=o;if(o.abort)return Promise.resolve(a(o));if(s===q.enablePlugin&&i.dispatch({type:q.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),s===q.disablePlugin&&setTimeout(function(){return J(o.meta.rid,{payload:o})},0),s===q.initializeEnd){var m=n(),g=Object.keys(m),h=g.filter(function(e){return l.includes(e)}).map(function(e){return m[e]}),y=[],b=[],I=o.disabled,w=h.map(function(e){var n=e.loaded,t=e.name,a=e.config;return W(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!M.includes(e)})}),r[t]=!0),y=y.concat(t),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(w).then(function(e){var n={plugins:y,failed:b,disabled:I};setTimeout(function(){g.length===w.length+I.length&&i.dispatch(v({},{type:q.ready},n))},0)})}var E=function(){if(s!==q.bootstrap)return/^ready:([^:]*)$/.test(s)&&setTimeout(function(){return F(i,n,e)},0),Promise.resolve(function(e,n,t,r,i){try{var a=d(n)?n():n,o=e.type,u=o.replace(K,"");if(e._&&e._.called)return Promise.resolve(e);var c=t.getState(),s=(m=a,void 0===(g=c.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var n=h.plugins||{};return p(n[e])?n[e]:!1!==n.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));o===q.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(n){var t=c.plugins[n];return e.plugins.includes(n)&&!t.initialized}).map(function(e){return a[e]}));var l=s.map(function(e){return e.name}),f=function(e,n,t){var r=te(e).map(function(e){return ne(e,n)});return n.reduce(function(t,r){var i=r.name,a=te(e,i).map(function(e){return ne(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:{}})}(o,s);return Promise.resolve(G({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){function n(){var n=function(){if(o.match(K))return Promise.resolve(G({action:v({},s,{type:u+"End"}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&J(e.meta.rid,{payload:e})})}();return n&&n.then?n.then(function(){return e}):e}if(ie(e,l.length))return e;var s,d=function(){if(o!==u)return Promise.resolve(G({action:v({},e,{type:u}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:t,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return d&&d.then?d.then(n):n()})}catch(e){return Promise.reject(e)}var m,g,h}(o,n,e,i,t)).then(function(e){return u=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(c):c(E))}catch(e){return Promise.reject(e)}}}}}function le(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 fe=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 N.apply(void 0,o)(r)(i)}}}}};function de(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=pe(t.type,"registerPlugin"),a=e()[i];if(!a||!i)return n;var o=t.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},v({},n,r)}if(/^initialize:([^:]*)$/.test(t.type)){var c=pe(t.type,q.initialize),s=e()[c];return s&&c?(r[c]=v({},n[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),v({},n,r)):n}if(/^ready:([^:]*)$/.test(t.type))return r[t.name]=v({},n[t.name],{loaded:!0}),v({},n,r);switch(t.type){case q.disablePlugin:return v({},n,me(t.plugins,!1,n));case q.enablePlugin:return v({},n,me(t.plugins,!0,n));default:return n}}}function pe(e,n){return e.substring(n.length+1,e.length)}function me(e,n,t){return e.reduce(function(e,r){return e[r]=v({},t[r],{enabled:n}),e},t)}function ge(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var he={last:{},history:[]};function ve(e,n){void 0===e&&(e=he);var t=n.options,r=n.meta;if(n.type===q.track){var i=ge(v({event:n.event,properties:n.properties},Object.keys(t).length&&{options:t},{meta:r}));return v({},e,{last:i,history:e.history.concat(i)})}return e}var ye={actions:[]};function be(e,n){void 0===e&&(e=ye);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),v({},e,{actions:r});case"dequeue":return[];default:return e}}var Ie=/#.*$/;function we(e){var n=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(n&&n[3]?n[3].split("?")[0].replace(Ie,""):"")}var Ee,Pe,Se,Ne,Oe=function(e){if(void 0===e&&(e={}),!g)return e;var n=document,t=n.title,r=n.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var n=function(){if(g)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(Ie,"")}(s),f={title:t,url:l,path:we(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),v({},f,e)},Ae={last:{},history:[]};function _e(e,n){void 0===e&&(e=Ae);var t=n.options;if(n.type===q.page){var r=ge(v({properties:n.properties,meta:n.meta},Object.keys(t).length&&{options:t}));return v({},e,{last:r,history:e.history.concat(r)})}return e}Ee=function(){if(!g)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"}(),Pe=g?document.referrer:null,Se=n(),Ne=t();var xe={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!g&&!navigator.onLine,os:{name:Ee},userAgent:g?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:Ne,locale:Se,campaign:{},referrer:Pe};function je(e,n){void 0===e&&(e=xe);var t=e.initialized,r=n.campaign;switch(n.type){case q.campaign:return v({},e,{campaign:r});case q.offline:return v({},e,{offline:!0});case q.online:return v({},e,{offline:!1});default:return t?e:v({},xe,e,{initialized:!0})}}var ke=["plugins","reducers","storage"];function Te(e,n,t){if(g){var r=window[(t?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){r(e,n)})}}function ze(e){var n=Te.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(e)});return n(!0),function(e){return n(!1)}}function Me(){return u("analytics",[]),function(e){return function(n,t,r){var i=e(n,t,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return c[s].analytics.push(e.action||e),a(e)}})}}}function qe(e){return function(){return N(N.apply(null,arguments),Me())}}function Ue(e){return e?h(e)?e:[e]:[]}function Ve(n,t,r){void 0===n&&(n={});var i,a,o=e();return t&&(X[o]=(i=t,a=function(e){for(var n,t=e||Array.prototype.slice.call(arguments),r=0;r<t.length;r++)if(d(t[r])){n=t[r];break}return n}(r),function(e){a&&a(e),i(e)})),v({},n,{rid:o,ts:(new Date).getTime()},t?{hasCallback:!0}:{})}function Le(n){void 0===n&&(n={});var t=n.reducers||{},c=n.initialUser||{},s=(n.plugins||[]).reduce(function(e,n){if(d(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){var r;return e[t]=(r=n.methods[t],function(){for(var e=Array.prototype.slice.call(arguments),n=new Array(r.length),t=0;t<e.length;t++)n[t]=e[t];return n[n.length]=Q,r.apply({instance:Q},n)}),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:[]}),f=n.storage?n.storage:{getItem:a,setItem:u,removeItem:o},p=function(e){return function(n,t,r){return t.getState("user")[n]||(r&&l(r)&&r[n]?r[n]:$(e)[n]||a(D(n))||null)}}(f),h=s.plugins,w=s.events.filter(function(e){return!M.includes(e)}).sort(),E=new Set(w.concat(z).filter(function(e){return!M.includes(e)})),_=Array.from(E).sort(),x=function(){return h},j=new fe,U=j.addMiddleware,V=j.removeMiddleware,L=j.dynamicMiddlewares,X=function(){throw new Error("Abort disabled inListener")},J=r(),W=$(f),H=v({},W,c,J.an_uid?{userId:J.an_uid}:{},J.an_aid?{anonymousId:J.an_aid}:{});H.anonymousId||(H.anonymousId=e());var G=v({enable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.enablePlugin,plugins:Ue(e),_:{originalAction:q.enablePlugin}},t,[n])})},disable:function(e,n){return new Promise(function(t){ue.dispatch({type:q.disablePlugin,plugins:Ue(e),_:{originalAction:q.disablePlugin}},t,[n])})}},s.methods),K=!1,Q={identify:function(e,n,t,r){try{var i=m(e)?e:null,a=l(e)?e:n,o=t||{},c=Q.user();u(D(k),i);var s=i||a.userId||p(k,Q,a);return Promise.resolve(new Promise(function(e){ue.dispatch(v({type:q.identifyStart,userId:s,traits:a||{},options:o,anonymousId:c.anonymousId},c.id&&c.id!==i&&{previousId:c.id}),e,[n,t,r])}))}catch(e){return Promise.reject(e)}},track:function(e,n,t,r){try{var i=l(e)?e.event:e;if(!i||!m(i))throw new Error("EventMissing");var a=l(e)?e:n||{},o=l(t)?t:{};return Promise.resolve(new Promise(function(e){ue.dispatch({type:q.trackStart,event:i,properties:a,options:o,userId:p(k,Q,n),anonymousId:p(T,Q,n)},e,[n,t,r])}))}catch(e){return Promise.reject(e)}},page:function(e,n,t){try{var r=l(e)?e:{},i=l(n)?n:{};return Promise.resolve(new Promise(function(a){ue.dispatch({type:q.pageStart,properties:Oe(r),options:i,userId:p(k,Q,r),anonymousId:p(T,Q,r)},a,[e,n,t])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===k||"id"===e)return p(k,Q);if(e===T||"anonId"===e)return p(T,Q);var n=Q.getState("user");return e?i(n,e):n},reset:function(e){return new Promise(function(n){ue.dispatch({type:q.resetStart},n,e)})},ready:function(e){return K&&e({plugins:G,instance:Q}),Q.on(q.ready,function(n){e(n),K=!0})},on:function(e,n){if(!e||!d(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:Q,plugins:h}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(t)||n({payload:r,instance:Q,plugins:h}),e(r)}}};return U(r,Ce),U(i,Re),function(){V(r,Ce),V(i,Re)}}var a=e.match(t)?Ce:Re,o=function(t){return function(t){return function(r){return r.type===e&&n({payload:r,instance:Q,plugins:h,abort:X}),t(r)}}};return U(o,a),function(){return V(o,a)}},once:function(e,n){if(!e||!d(n))return!1;if(e===q.bootstrap)throw new Error(".once disabled for "+e);var t=Q.on(e,function(e){n({payload:e.payload,instance:Q,plugins:h,abort:X}),t()});return t},getState:function(e){var n=ue.getState();return e?i(n,e):Object.assign({},n)},dispatch:function(e){var n=m(e)?{type:e}:e;if(z.includes(n.type))throw new Error("reserved action "+n.type);var t=v({},n,{_:v({originalAction:n.type},e._||{})});ue.dispatch(t)},enablePlugin:G.enable,disablePlugin:G.disable,plugins:G,storage:{getItem:f.getItem,setItem:function(e,n,t){ue.dispatch({type:q.setItemStart,key:e,value:n,options:t})},removeItem:function(e,n){ue.dispatch({type:q.removeItemStart,key:e,options:n})}},setAnonymousId:function(e,n){Q.storage.setItem(A,e,n)},events:{core:z,plugins:w}},Y=s.middlewares.concat([function(e){return function(e){return function(n){return n.meta||(n.meta=Ve()),e(n)}}},L(Ce),se(Q,x,{all:_,plugins:w}),le(f),C(Q),B(Q),L(Re)]),Z={context:je,user:R(f),page:_e,track:ve,plugins:de(x),queue:be},ee=N,ne=N;if(g&&n.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(ee=te({trace:!0,traceLimit:25})),ne=function(){return 0===arguments.length?Me():l(typeof arguments[0])?qe():qe().apply(null,arguments)}}var re,ie=function(e){return Object.keys(e).reduce(function(n,t){return ke.includes(t)||(n[t]=e[t]),n},{})}(n),ae=s.pluginsArray.reduce(function(e,n){var t=n.name,r=n.config,i=n.loaded,a=s.pluginEnabled[t];return e[t]={enabled:a,initialized:!!a&&Boolean(!n.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),oe={context:ie,user:H,plugins:ae},ue=P(function(e){for(var n=Object.keys(e),t={},r=0;r<n.length;r++){var i=n[r];typeof e[i]===y&&(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:"@@redux/INIT"})===b||typeof t(void 0,{type:I})===b)throw new Error("reducer "+n+" "+b)})}(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===b){var f=S(c,n);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(v({},Z,t)),oe,ne(ee(O.apply(void 0,Y))));ue.dispatch=(re=ue.dispatch,function(e,n,t){var r=v({},e,{meta:Ve(e.meta,n,Ue(t))});return re.apply(null,[r])});var ce=Object.keys(h);ue.dispatch({type:q.bootstrap,plugins:ce,config:ie,params:J,user:H,initialUser:c,persistedUser:W});var pe=ce.filter(function(e){return s.pluginEnabled[e]}),me=ce.filter(function(e){return!s.pluginEnabled[e]});return ue.dispatch({type:q.registerPlugins,plugins:ce,enabled:s.pluginEnabled}),s.pluginsArray.map(function(e,n){var t=e.bootstrap,r=e.config,i=e.name;t&&d(t)&&t({instance:Q,config:r,payload:e}),ue.dispatch({type:q.registerPluginType(i),name:i,enabled:s.pluginEnabled[i],plugin:e}),s.pluginsArray.length===n+1&&ue.dispatch({type:q.initializeStart,plugins:pe,disabled:me})}),ze(function(e){ue.dispatch({type:e?q.offline:q.online})}),function(e,n,t){setInterval(function(){return F(e,n,t)},3e3)}(ue,x,Q),Q}var Ce="before",Re="after";export{Le as Analytics,j as CONSTANTS,q as EVENTS,Le as default,Le as init};
//# sourceMappingURL=analytics-core.module.js.map

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},w="analytics",I="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function x(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function k(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[I,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function B(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return B(e,t,n-10).then(r,a)})})}function F(e,t,n){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&r.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[I,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:n});var m=f+":"+l;e.dispatch(i({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}var U=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(R),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(R)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&H(u)?u:n;if(r&&(!(s=u&&H(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:Z(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=Y(e);if(n&&n.name===t){var r=Y(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:X(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),J(n,d))return C({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(J(t,d))return l&&C({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:X(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(J(l,d))C({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(L)&&!p.match(V)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(R)||p.match(/^registerPlugin/)||p.match(V)||p.match(L)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});W(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},R=/Start$/,L=/^bootstrap/,V=/^ready/;function C(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function X(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function $(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function D(e,t){var n=e.replace(R,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function J(e,t){var n=e.abort;return!!n&&(!0===n||K(n,t)||n&&K(n.plugins,t))}function W(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return H(n)&&n.length===t||H(i)&&i.length===t}function H(e){return Array.isArray(e)}function K(e,t){return!(!e||!H(e))&&e.includes(t)}function Y(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function Z(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function G(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,w=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return B(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(w).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===w.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var I=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return F(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(R,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=D(e).map(function(e){return $(e,t)});return t.reduce(function(n,r){var i=r.name,a=D(e,i).map(function(e){return $(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(U({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(R))return Promise.resolve(U({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(W(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(U({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(I&&I.then?I.then(l):l(I))}catch(e){return Promise.reject(e)}}}}}function Q(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ee=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function te(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=ne(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=ne(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,re(n.plugins,!1,t));case O.enablePlugin:return i({},t,re(n.plugins,!0,t));default:return t}}}function ne(e,t){return e.substring(t.length+1,e.length)}function re(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function ie(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ae={last:{},history:[]};function oe(e,t){void 0===e&&(e=ae);var n=t.options,r=t.meta;if(t.type===O.track){var a=ie(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var ue={actions:[]};function ce(e,t){void 0===e&&(e=ue);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var se=/#.*$/;function le(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(se,""):"")}var fe,de,pe,me,ge=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(se,"")}(f),p={title:n,url:d,path:le(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},he={last:{},history:[]};function ye(e,t){void 0===e&&(e=he);var n=t.options;if(t.type===O.page){var r=ie(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}fe=function(){if(!r.isBrowser)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"}(),de=r.isBrowser?document.referrer:null,pe=t.getBrowserLocale(),me=t.getTimeZone();var ve={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:fe},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:w,version:"0.12.5"},timezone:me,locale:pe,campaign:{},referrer:de};function be(e,t){void 0===e&&(e=ve);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},ve,e,{initialized:!0})}}var we=["plugins","reducers","storage"];function Ie(e,t,n){if(r.isBrowser){var i=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function Ee(e){var t=Ie.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function Pe(){return n.set(w,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function Se(e){return function(){return m(m.apply(null,arguments),Pe())}}function Oe(e){return e?r.isArray(e)?e:[e]:[]}function je(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ne(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:k(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,w=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(w.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new ee,q=M.addMiddleware,B=M.removeMiddleware,U=M.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=t.paramsParse(),V=k(y),C=i({},V,l,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});C.anonymousId||(C.anonymousId=t.uuid());var X=i({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.enablePlugin,plugins:Oe(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.disablePlugin,plugins:Oe(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),$=!1,D={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=D.user();n.set(T(I),u);var f=u||c.userId||v(I,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(I,D,t),anonymousId:v(E,D,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ae.dispatch({type:O.pageStart,properties:ge(i),options:a,userId:v(I,D,i),anonymousId:v(E,D,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===I||"id"===e)return v(I,D);if(e===E||"anonId"===e)return v(E,D);var n=D.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:O.resetStart},t,e)})},ready:function(e){return $&&e({plugins:X,instance:D}),D.on(O.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:D,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:D,plugins:b}),e(r)}}};return q(i,Ae),q(a,_e),function(){B(i,Ae),B(a,_e)}}var o=e.match(n)?Ae:_e,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:b,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:b,abort:R}),n()});return n},getState:function(e){var n=ae.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ae.dispatch(n)},enablePlugin:X.enable,disablePlugin:X.disable,plugins:X,storage:{getItem:y.getItem,setItem:function(e,t,n){ae.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(h,e,t)},events:{core:P,plugins:w}},J=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=je()),e(t)}}},U(Ae),G(D,A,{all:N,plugins:w}),Q(y),_(D),z(D),U(_e)]),W={context:be,user:x(y),page:ye,track:oe,plugins:te(A),queue:ce},H=m,K=m;if(r.isBrowser&&e.debug){var Y=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Y&&(H=Y({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?Pe():r.isObject(typeof arguments[0])?Se():Se().apply(null,arguments)}}var Z,ne=function(e){return Object.keys(e).reduce(function(t,n){return we.includes(n)||(t[n]=e[n]),t},{})}(e),re=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:ne,user:C,plugins:re},ae=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},W,u)),ie,K(H(g.apply(void 0,J))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var r=i({},e,{meta:je(e.meta,t,Oe(n))});return Z.apply(null,[r])});var ue=Object.keys(b);ae.dispatch({type:O.bootstrap,plugins:ue,config:ne,params:L,user:C,initialUser:l,persistedUser:V});var se=ue.filter(function(e){return f.pluginEnabled[e]}),le=ue.filter(function(e){return!f.pluginEnabled[e]});return ae.dispatch({type:O.registerPlugins,plugins:ue,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:D,config:i,payload:e}),ae.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ae.dispatch({type:O.initializeStart,plugins:se,disabled:le})}),Ee(function(e){ae.dispatch({type:e?O.offline:O.online})}),function(e,t,n){setInterval(function(){return F(e,t,n)},3e3)}(ae,A,D),D}var Ae="before",_e="after";e.Analytics=Ne,e.CONSTANTS=b,e.EVENTS=O,e.default=Ne,e.init=Ne});
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},w="analytics",I="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function x(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function k(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[I,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function B(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return B(e,t,n-10).then(r,a)})})}function F(e){return{abort:e}}function U(e,t,n){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&r.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[I,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:n,abort:F}))&&r.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var y=d+":"+f;e.dispatch(i({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}var R=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(L),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(L)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&K(u)?u:n;if(r&&(!(s=u&&K(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:G(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=Z(e);if(n&&n.name===t){var r=Z(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:$(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),W(n,d))return X({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(W(t,d))return l&&X({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:$(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(W(l,d))X({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(V)&&!p.match(C)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(L)||p.match(/^registerPlugin/)||p.match(C)||p.match(V)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});H(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},L=/Start$/,V=/^bootstrap/,C=/^ready/;function X(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function $(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function D(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function J(e,t){var n=e.replace(L,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function W(e,t){var n=e.abort;return!!n&&(!0===n||Y(n,t)||n&&Y(n.plugins,t))}function H(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return K(n)&&n.length===t||K(i)&&i.length===t}function K(e){return Array.isArray(e)}function Y(e,t){return!(!e||!K(e))&&e.includes(t)}function Z(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function G(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function Q(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,w=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return B(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(w).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===w.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var I=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return U(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(L,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=J(e).map(function(e){return D(e,t)});return t.reduce(function(n,r){var i=r.name,a=J(e,i).map(function(e){return D(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(R({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(L))return Promise.resolve(R({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(H(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(R({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(I&&I.then?I.then(l):l(I))}catch(e){return Promise.reject(e)}}}}}function ee(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var te=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function ne(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=re(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=re(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,ie(n.plugins,!1,t));case O.enablePlugin:return i({},t,ie(n.plugins,!0,t));default:return t}}}function re(e,t){return e.substring(t.length+1,e.length)}function ie(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function ae(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var oe={last:{},history:[]};function ue(e,t){void 0===e&&(e=oe);var n=t.options,r=t.meta;if(t.type===O.track){var a=ae(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var ce={actions:[]};function se(e,t){void 0===e&&(e=ce);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var le=/#.*$/;function fe(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(le,""):"")}var de,pe,me,ge,he=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(le,"")}(f),p={title:n,url:d,path:fe(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},ye={last:{},history:[]};function ve(e,t){void 0===e&&(e=ye);var n=t.options;if(t.type===O.page){var r=ae(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}de=function(){if(!r.isBrowser)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"}(),pe=r.isBrowser?document.referrer:null,me=t.getBrowserLocale(),ge=t.getTimeZone();var be={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:de},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:w,version:"0.12.7"},timezone:ge,locale:me,campaign:{},referrer:pe};function we(e,t){void 0===e&&(e=be);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},be,e,{initialized:!0})}}var Ie=["plugins","reducers","storage"];function Ee(e,t,n){if(r.isBrowser){var i=window[(n?"add":"remove")+"EventListener"];e.split(" ").forEach(function(e){i(e,t)})}}function Pe(e){var t=Ee.bind(null,"online offline",function(t){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(e){return t(!1)}}function Se(){return n.set(w,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function Oe(e){return function(){return m(m.apply(null,arguments),Se())}}function je(e){return e?r.isArray(e)?e:[e]:[]}function Ne(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ae(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:k(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,w=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(w.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new te,q=M.addMiddleware,B=M.removeMiddleware,F=M.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},L=t.paramsParse(),V=k(y),C=i({},V,l,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});C.anonymousId||(C.anonymousId=t.uuid());var X=i({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.enablePlugin,plugins:je(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:O.disablePlugin,plugins:je(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),$=!1,D={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=D.user();n.set(T(I),u);var f=u||c.userId||v(I,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(I,D,t),anonymousId:v(E,D,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ae.dispatch({type:O.pageStart,properties:he(i),options:a,userId:v(I,D,i),anonymousId:v(E,D,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===I||"id"===e)return v(I,D);if(e===E||"anonId"===e)return v(E,D);var n=D.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:O.resetStart},t,e)})},ready:function(e){return $&&e({plugins:X,instance:D}),D.on(O.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:D,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:D,plugins:b}),e(r)}}};return q(i,_e),q(a,xe),function(){B(i,_e),B(a,xe)}}var o=e.match(n)?_e:xe,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:b,abort:R}),n(r)}}};return q(u,o),function(){return B(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:b,abort:R}),n()});return n},getState:function(e){var n=ae.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ae.dispatch(n)},enablePlugin:X.enable,disablePlugin:X.disable,plugins:X,storage:{getItem:y.getItem,setItem:function(e,t,n){ae.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(h,e,t)},events:{core:P,plugins:w}},J=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Ne()),e(t)}}},F(_e),Q(D,A,{all:N,plugins:w}),ee(y),_(D),z(D),F(xe)]),W={context:we,user:x(y),page:ve,track:ue,plugins:ne(A),queue:se},H=m,K=m;if(r.isBrowser&&e.debug){var Y=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Y&&(H=Y({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?Se():r.isObject(typeof arguments[0])?Oe():Oe().apply(null,arguments)}}var Z,G=function(e){return Object.keys(e).reduce(function(t,n){return Ie.includes(n)||(t[n]=e[n]),t},{})}(e),re=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:G,user:C,plugins:re},ae=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},W,u)),ie,K(H(g.apply(void 0,J))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var r=i({},e,{meta:Ne(e.meta,t,je(n))});return Z.apply(null,[r])});var oe=Object.keys(b);ae.dispatch({type:O.bootstrap,plugins:oe,config:G,params:L,user:C,initialUser:l,persistedUser:V});var ce=oe.filter(function(e){return f.pluginEnabled[e]}),le=oe.filter(function(e){return!f.pluginEnabled[e]});return ae.dispatch({type:O.registerPlugins,plugins:oe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:D,config:i,payload:e}),ae.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ae.dispatch({type:O.initializeStart,plugins:ce,disabled:le})}),Pe(function(e){ae.dispatch({type:e?O.offline:O.online})}),function(e,t,n){setInterval(function(){return U(e,t,n)},3e3)}(ae,A,D),D}var _e="before",xe="after";e.Analytics=Ae,e.CONSTANTS=b,e.EVENTS=O,e.default=Ae,e.init=Ae});
//# sourceMappingURL=analytics-core.umd.js.map

@@ -1,2 +0,2 @@

var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var A=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function _(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(A(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var x={};function k(e,t){x[e]&&n.isFunction(x[e])&&(x[e](t),delete x[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}var z=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(M),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(M)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&D(u)?u:n;if(i&&(!(s=u&&D(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:J(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=L(e);if(n&&n.name===t){var r=L(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:B(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),U(i,d))return R({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(U(t,d))return l&&R({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:B(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if(U(l,d))R({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(q)&&!p.match(F)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(M)||p.match(/^registerPlugin/)||p.match(F)||p.match(q)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});$(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},M=/Start$/,q=/^bootstrap/,F=/^ready/;function R(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function B(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function C(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function V(e,t){var n=e.replace(M,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function U(e,t){var n=e.abort;return!!n&&(!0===n||X(n,t)||n&&X(n.plugins,t))}function $(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return D(r)&&r.length===t||D(i)&&i.length===t}function D(e){return Array.isArray(e)}function X(e,t){return!(!e||!D(e))&&e.includes(t)}function L(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function J(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function H(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),b=[],E=[],P=c.disabled,S=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),b=b.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return E=E.concat(e.name),e})});Promise.all(S).then(function(e){var t={plugins:b,failed:E,disabled:P};setTimeout(function(){g.length===S.length+P.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var O=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,i){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&n.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:i});var m=f+":"+l;e.dispatch(r({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(M,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=V(e).map(function(e){return C(e,t)});return t.reduce(function(n,r){var i=r.name,a=V(e,i).map(function(e){return C(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(z({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(M))return Promise.resolve(z({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if($(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(z({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(O&&O.then?O.then(l):l(O))}catch(e){return Promise.reject(e)}}}}}function K(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var W=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function Y(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=G(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=G(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,Q(n.plugins,!1,t));case w.enablePlugin:return r({},t,Q(n.plugins,!0,t));default:return t}}}function G(e,t){return e.substring(t.length+1,e.length)}function Q(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function Z(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ee={last:{},history:[]};function te(e,t){void 0===e&&(e=ee);var n=t.options,i=t.meta;if(t.type===w.track){var a=Z(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var ne={actions:[]};function re(e,t){void 0===e&&(e=ne);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var ie=/#.*$/;function ae(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ie,""):"")}var oe,ue=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ie,"")}(f),p={title:i,url:d,path:ae(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},ce={last:{},history:[]};function se(e,t){void 0===e&&(e=ce);var n=t.options;if(t.type===w.page){var i=Z(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}oe={};var le={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:oe};function fe(e,t){void 0===e&&(e=le);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},le,e,{initialized:!0})}}var de=["plugins","reducers","storage"];function pe(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function me(e){return function(){return f(f.apply(null,arguments),pe())}}function ge(e){return e?n.isArray(e)?e:[e]:[]}function he(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(x[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function ve(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(A(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),x=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(x).sort(),T=function(){return P},z=new W,M=z.addMiddleware,q=z.removeMiddleware,F=z.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},B=e.paramsParse(),C=N(h),V=r({},C,m,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var U=r({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.enablePlugin,plugins:ge(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.disablePlugin,plugins:ge(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),$=!1,D={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=D.user();t.set(A(v),u);var f=u||c.userId||E(v,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,D,t),anonymousId:E(y,D,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){ae.dispatch({type:w.pageStart,properties:ue(i),options:a,userId:E(v,D,i),anonymousId:E(y,D,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,D);if(t===y||"anonId"===t)return E(y,D);var n=D.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:w.resetStart},t,e)})},ready:function(e){return $&&e({plugins:U,instance:D}),D.on(w.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:D,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:D,plugins:P}),e(n)}}};return M(i,ye),M(a,be),function(){q(i,ye),q(a,be)}}var o=e.match(r)?ye:be,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:P,abort:R}),n(r)}}};return M(u,o),function(){return q(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:P,abort:R}),r()});return r},getState:function(t){var n=ae.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});ae.dispatch(i)},enablePlugin:U.enable,disablePlugin:U.disable,plugins:U,storage:{getItem:h.getItem,setItem:function(e,t,n){ae.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(p,e,t)},events:{core:b,plugins:S}},X=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=he()),e(t)}}},F(ye),H(D,T,{all:k,plugins:S}),K(h),O(D),_(D),F(be)]),L={context:fe,user:j(h),page:se,track:te,plugins:Y(T),queue:re},J=f,G=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(J=Q({trace:!0,traceLimit:25})),G=function(){return 0===arguments.length?pe():n.isObject(typeof arguments[0])?me():me().apply(null,arguments)}}var Z,ee=function(e){return Object.keys(e).reduce(function(t,n){return de.includes(n)||(t[n]=e[n]),t},{})}(u),ne=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:ee,user:V,plugins:ne},ae=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},L,c)),ie,G(J(d.apply(void 0,X))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var i=r({},e,{meta:he(e.meta,t,ge(n))});return Z.apply(null,[i])});var oe=Object.keys(P);ae.dispatch({type:w.bootstrap,plugins:oe,config:ee,params:B,user:V,initialUser:m,persistedUser:C});var ce=oe.filter(function(e){return g.pluginEnabled[e]}),le=oe.filter(function(e){return!g.pluginEnabled[e]});return ae.dispatch({type:w.registerPlugins,plugins:oe,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:D,config:i,payload:e}),ae.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&ae.dispatch({type:w.initializeStart,plugins:ce,disabled:le})}),D}var ye="before",be="after";exports.Analytics=ve,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=ve,exports.init=ve;
var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var A=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function _(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(A(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var x={};function k(e,t){x[e]&&n.isFunction(x[e])&&(x[e](t),delete x[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}function z(e){return{abort:e}}var M=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(q),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(q)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&X(u)?u:n;if(i&&(!(s=u&&X(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:H(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=J(e);if(n&&n.name===t){var r=J(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:C(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),$(i,d))return B({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if($(t,d))return l&&B({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:C(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if($(l,d))B({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(F)&&!p.match(R)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(q)||p.match(/^registerPlugin/)||p.match(R)||p.match(F)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});D(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},q=/Start$/,F=/^bootstrap/,R=/^ready/;function B(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function C(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function V(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function U(e,t){var n=e.replace(q,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function $(e,t){var n=e.abort;return!!n&&(!0===n||L(n,t)||n&&L(n.plugins,t))}function D(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return X(r)&&r.length===t||X(i)&&i.length===t}function X(e){return Array.isArray(e)}function L(e,t){return!(!e||!X(e))&&e.includes(t)}function J(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function H(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function K(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),b=[],E=[],P=c.disabled,S=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),b=b.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return E=E.concat(e.name),e})});Promise.all(S).then(function(e){var t={plugins:b,failed:E,disabled:P};setTimeout(function(){g.length===S.length+P.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var O=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,i){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&n.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:i,abort:z}))&&n.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var b=d+":"+f;e.dispatch(r({},g,{type:b,_:{called:b,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(q,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=U(e).map(function(e){return V(e,t)});return t.reduce(function(n,r){var i=r.name,a=U(e,i).map(function(e){return V(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(M({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(q))return Promise.resolve(M({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(D(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(M({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(O&&O.then?O.then(l):l(O))}catch(e){return Promise.reject(e)}}}}}function W(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Y=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function G(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=Q(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=Q(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,Z(n.plugins,!1,t));case w.enablePlugin:return r({},t,Z(n.plugins,!0,t));default:return t}}}function Q(e,t){return e.substring(t.length+1,e.length)}function Z(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function ee(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var te={last:{},history:[]};function ne(e,t){void 0===e&&(e=te);var n=t.options,i=t.meta;if(t.type===w.track){var a=ee(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var re={actions:[]};function ie(e,t){void 0===e&&(e=re);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var ae=/#.*$/;function oe(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ae,""):"")}var ue,ce=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ae,"")}(f),p={title:i,url:d,path:oe(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},se={last:{},history:[]};function le(e,t){void 0===e&&(e=se);var n=t.options;if(t.type===w.page){var i=ee(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}ue={};var fe={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:ue};function de(e,t){void 0===e&&(e=fe);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},fe,e,{initialized:!0})}}var pe=["plugins","reducers","storage"];function me(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function ge(e){return function(){return f(f.apply(null,arguments),me())}}function he(e){return e?n.isArray(e)?e:[e]:[]}function ve(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(x[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function ye(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(A(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),x=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(x).sort(),T=function(){return P},z=new Y,M=z.addMiddleware,q=z.removeMiddleware,F=z.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},B=e.paramsParse(),C=N(h),V=r({},C,m,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var U=r({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.enablePlugin,plugins:he(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.disablePlugin,plugins:he(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),$=!1,D={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=D.user();t.set(A(v),u);var f=u||c.userId||E(v,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,D,t),anonymousId:E(y,D,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){ae.dispatch({type:w.pageStart,properties:ce(i),options:a,userId:E(v,D,i),anonymousId:E(y,D,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,D);if(t===y||"anonId"===t)return E(y,D);var n=D.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:w.resetStart},t,e)})},ready:function(e){return $&&e({plugins:U,instance:D}),D.on(w.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:D,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:D,plugins:P}),e(n)}}};return M(i,be),M(a,Ie),function(){q(i,be),q(a,Ie)}}var o=e.match(r)?be:Ie,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:P,abort:R}),n(r)}}};return M(u,o),function(){return q(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:P,abort:R}),r()});return r},getState:function(t){var n=ae.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});ae.dispatch(i)},enablePlugin:U.enable,disablePlugin:U.disable,plugins:U,storage:{getItem:h.getItem,setItem:function(e,t,n){ae.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(p,e,t)},events:{core:b,plugins:S}},X=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=ve()),e(t)}}},F(be),K(D,T,{all:k,plugins:S}),W(h),O(D),_(D),F(Ie)]),L={context:de,user:j(h),page:le,track:ne,plugins:G(T),queue:ie},J=f,H=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(J=Q({trace:!0,traceLimit:25})),H=function(){return 0===arguments.length?me():n.isObject(typeof arguments[0])?ge():ge().apply(null,arguments)}}var Z,ee=function(e){return Object.keys(e).reduce(function(t,n){return pe.includes(n)||(t[n]=e[n]),t},{})}(u),te=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),re={context:ee,user:V,plugins:te},ae=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},L,c)),re,H(J(d.apply(void 0,X))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var i=r({},e,{meta:ve(e.meta,t,he(n))});return Z.apply(null,[i])});var oe=Object.keys(P);ae.dispatch({type:w.bootstrap,plugins:oe,config:ee,params:B,user:V,initialUser:m,persistedUser:C});var ue=oe.filter(function(e){return g.pluginEnabled[e]}),se=oe.filter(function(e){return!g.pluginEnabled[e]});return ae.dispatch({type:w.registerPlugins,plugins:oe,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:D,config:i,payload:e}),ae.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&ae.dispatch({type:w.initializeStart,plugins:ue,disabled:se})}),D}var be="before",Ie="after";exports.Analytics=ye,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=ye,exports.init=ye;
//# sourceMappingURL=analytics-core.js.map

@@ -1,2 +0,2 @@

import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as s}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as u,isFunction as l,isBoolean as d,isString as p,isBrowser as f,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}const y="function",h="undefined",b="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */(()=>typeof Symbol===y&&Symbol.observable||"@@observable")(),I=" != "+y;function E(e,t,n){if(typeof t===y&&typeof n===h&&(n=t,t=void 0),typeof n!==h){if(typeof n!==y)throw new Error("enhancer"+I);return n(E)(e,t)}if(typeof e!==y)throw new Error("reducer"+I);let r=e,i=t,a=[],o=a,s=!1;function u(){o===a&&(o=a.slice())}function l(){return i}function d(e){if(typeof e!==y)throw new Error("Listener"+I);let t=!0;return u(),o.push(e),function(){if(!t)return;t=!1,u();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===h)throw new Error("ActType "+h);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:l,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+I);r=e,p({type:"@@redux/INIT"})},[w]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(l())}return n(),{unsubscribe:e(n)}},[w](){return this}}}}}function S(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+h}function v(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const P=u+"anon_id",N=u+"user_id",A=u+"user_traits";var _={__proto__:null,ANON_ID:P,USER_ID:N,USER_TRAITS:A};const O="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"];var $=x.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const j=/^utm_/,z=/^an_prop_/,M=/^an_trait_/;function q(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===$.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(P,a.anonymousId),c||t(N,a.userId),s.traits&&t(A,g({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(j)||t.match(/^(d|g)clid/)){const n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(z)&&(e.props[t.replace(z,"")]=r[t]),t.match(M)&&(e.traits[t.replace(M,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:$.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:$.campaign,campaign:a.campaign})}}return r(i)}}function V(e){return function(t={},n={}){if(n.type===$.setItemEnd){if(n.key===P)return g({},t,{anonymousId:n.value});if(n.key===N)return g({},t,{userId:n.value})}switch(n.type){case $.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case $.reset:return[N,P,A].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(N),anonymousId:e.getItem(P),traits:e.getItem(A)}}const U=e=>u+"TEMP"+u+e;function R(t){const{setItem:n,removeItem:r,getItem:a}=t.storage;return t=>o=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===$.reset&&([N,A,P].forEach(e=>{r(e)}),[O,k,"traits"].forEach(e=>{i(U(e))})),s.type===$.identify){a(P)||n(P,e());const r=a(N),i=a(A)||{};r&&r!==c&&t.dispatch({type:$.userIdChanged,old:{userId:r,traits:i},new:{userId:c,traits:u},options:l}),c&&n(N,c),u&&n(A,g({},i,u))}return o(s)}}const D={};function B(e,t){D[e]&&l(D[e])&&(D[e](t),delete D[e])}function L(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>L(e,t,n-10).then(r,i)))}const J=/Start$/,X=/^bootstrap/,H=/^ready/;async function W({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:u,context:d}=r,p=t.type,f=p.match(J);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const y=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(J)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&ee(o)?o:n;if(r&&(c=o&&ee(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return g({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:re(n),instance:e,config:a||{},abort:c}}}(n,m),h=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!u[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,d=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!l(t.method))return a;!function(e,t){const n=ne(e);if(n&&n.name===t){const r=ne(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(d=a,f=s,m=t.pluginName,function(e,t){return g({},d,{abort:{reason:e,plugins:t||[f],caller:p,from:m||f}})}),config:G(t.pluginName,u,i),plugins:u});var d,f,m;const y=c(o)?o:{};return Promise.resolve(g({},a,y))},Promise.resolve(t));d[s]=r}else d[s]=t;return Promise.resolve(d)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:l}=r,d=i[l],m=await t;let w=b[l]?b[l]:{};if(f&&(w=m),Y(w,l))return F({data:w,method:p,instance:n,pluginName:l,store:o}),Promise.resolve(m);if(Y(m,l))return s&&F({data:m,method:p,instance:n,store:o}),Promise.resolve(m);if(h.hasOwnProperty(l)&&!0===h[l])return o.dispatch({type:"queue",plugin:l,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=y(b[l],i[l]),E=await d[p]({abort:I.abort,payload:w,instance:n,config:G(l,u,i),plugins:u}),S=g({},m,c(E)?E:{}),v=b[l];if(Y(v,l))F({data:v,method:p,instance:n,pluginName:l,store:o});else{const e=`${p}:${l}`;(e.match(/:/g)||[]).length<2&&!p.match(X)&&!p.match(H)&&n.dispatch(g({},f?S:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(S)},Promise.resolve(t));if(!(p.match(J)||p.match(/^registerPlugin/)||p.match(H)||p.match(X)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),w._&&w._.originalAction===p)return w;let t=g({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});Z(w,e.exact.length)&&!p.match(/End$/)&&(t=g({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function F({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(g({},e,{type:i,_:{called:i,from:"abort"}}))}function G(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function K(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function Q(e,t){const n=e.replace(J,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function Y({abort:e},t){return!!e&&(!0===e||te(e,t)||e&&te(e.plugins,t))}function Z({abort:e},t){if(!e)return!1;if(!0===e||p(e))return!0;const{plugins:n}=e;return ee(e)&&e.length===t||ee(n)&&n.length===t}function ee(e){return Array.isArray(e)}function te(e,t){return!(!e||!ee(e))&&e.includes(t)}function ne(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function re(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t),{})}function ie(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let p=o;if(c)return a(o);if(s===$.enablePlugin&&i.dispatch({type:$.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===$.disablePlugin&&setTimeout(()=>B(o.meta.rid,{payload:o}),0),s===$.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return L(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:$.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!T.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(g({},{type:$.ready},t))},0)})}if(s!==$.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>function(e,t,n){const r=t(),{plugins:i,context:a,queue:o,user:s}=e.getState();if(!a.offline&&o&&o.actions&&o.actions.length){const t=o.actions.reduce((e,t,n)=>(i[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const a=o.actions[t],c=a.plugin,u=a.payload.type,d=r[c][u];if(d&&l(d)){const t=function(e={},t={}){return[O,k].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(a.payload,s);d({payload:t,config:i[c].config,instance:n});const r=`${u}:${c}`;e.dispatch(g({},t,{type:r,_:{called:r,from:"queueDrain"}}))}});const a=o.actions.filter((e,n)=>!~t.processIndex.indexOf(n));o.actions=a}}}(i,t,e),0);const r=await async function(e,t,n,r,i){const a=l(t)?t():t,o=e.type,s=o.replace(J,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return d(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===$.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const p=u.map(e=>e.name),f=function(e,t,n){const r=Q(e).map(e=>K(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=Q(e,i),[o,s,c]=a.map(e=>K(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await W({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});if(Z(m,p.length))return m;let y;if(y=o===s?m:await W({action:g({},m,{type:s}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i}),o.match(J)){const e=`${s}End`,t=await W({action:g({},y,{type:e}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&B(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(p)}}function ae(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===$.setItem||r===$.removeItem){if(n.abort)return t(n);r===$.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class oe{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return v(...this[e].map(e=>e(i)))(n)(r)}}}function se(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=ce(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=ce(n.type,$.initialize),a=e()[i];return a&&i?(r[i]=g({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case $.disablePlugin:return g({},t,ue(n.plugins,!1,t));case $.enablePlugin:return g({},t,ue(n.plugins,!0,t));default:return t}}}function ce(e,t){return e.substring(t.length+1,e.length)}function ue(e,t,n){return e.reduce((e,r)=>(e[r]=g({},n[r],{enabled:t}),e),n)}function le(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const de={last:{},history:[]};function pe(e=de,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===$.track){const t=le(g({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return g({},e,{last:t,history:e.history.concat(t)})}return e}const fe={actions:[]};function me(e=fe,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===$.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:n});case"dequeue":return[];default:return e}}const ge=/#.*$/;function ye(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ge,""):"")}const he=(e={})=>{if(!f)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!f)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ge,"")}(s),u={title:t,url:c,path:ye(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),g({},u,e)},be={last:{},history:[]};function we(e=be,t){const{properties:n,options:r,meta:i}=t;if(t.type===$.page){const t=le(g({properties:n,meta:i},Object.keys(r).length&&{options:r}));return g({},e,{last:t,history:e.history.concat(t)})}return e}let Ie,Ee;Ie="na",Ee={};const Se={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!f&&!navigator.onLine,os:{name:"na"},userAgent:f?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:Ee};function ve(e=Se,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case $.campaign:return g({},e,{campaign:i});case $.offline:return g({},e,{offline:!0});case $.online:return g({},e,{offline:!1});default:return n?e:g({},Se,e,{initialized:!0})}}const Pe=["plugins","reducers","storage"];function Ne(){return a("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(o[s].analytics.push(e.action||e),a(e))})}}function Ae(e){return function(){return v(v.apply(null,arguments),Ne())}}function _e(e){return e?m(e)?e:[e]:[]}function Oe(t={},n,r){const i=e();var a,o;return n&&(D[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(l(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),g({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function ke(o={}){const s=o.reducers||{},u=o.initialUser||{},d=(o.plugins||[]).reduce((e,t)=>{if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=F,r.apply({instance:F},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},w=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:C(e)[t]||r(U(t))||null)}}(m);let I=d.plugins;const N=d.events.filter(e=>!T.includes(e)).sort(),A=new Set(N.concat(x).filter(e=>!T.includes(e))),_=Array.from(A).sort(),j=()=>I,{addMiddleware:z,removeMiddleware:M,dynamicMiddlewares:D}=new oe,B=()=>{throw new Error("Abort disabled inListener")},L=t(),J=C(m),X=g({},J,u,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});X.anonymousId||(X.anonymousId=e());const H=g({enable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.enablePlugin,plugins:_e(e),_:{originalAction:$.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.disablePlugin,plugins:_e(e),_:{originalAction:$.disablePlugin}},n,[t])})},d.methods);let W=!1;const F={identify:async(e,t,n,r)=>{const i=p(e)?e:null,o=c(e)?e:t,s=n||{},u=F.user();a(U(O),i);const l=i||o.userId||w(O,F,o);return new Promise(e=>{ne.dispatch(g({type:$.identifyStart,userId:l,traits:o||{},options:s,anonymousId:u.anonymousId},u.id&&u.id!==i&&{previousId:u.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=c(e)?e.event:e;if(!i||!p(i))throw new Error("EventMissing");const a=c(e)?e:t||{},o=c(n)?n:{};return new Promise(e=>{ne.dispatch({type:$.trackStart,event:i,properties:a,options:o,userId:w(O,F,t),anonymousId:w(k,F,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=c(e)?e:{},i=c(t)?t:{};return new Promise(a=>{ne.dispatch({type:$.pageStart,properties:he(r),options:i,userId:w(O,F,r),anonymousId:w(k,F,r)},a,[e,t,n])})},user:e=>{if(e===O||"id"===e)return w(O,F);if(e===k||"anonId"===e)return w(k,F);const t=F.getState("user");return e?n(t,e):t},reset:e=>new Promise(t=>{ne.dispatch({type:$.resetStart},t,e)}),ready:e=>(W&&e({plugins:H,instance:F}),F.on($.ready,t=>{e(t),W=!0})),on:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:F,plugins:I}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:F,plugins:I}),e(r));return z(e,xe),z(r,Te),()=>{M(e,xe),M(r,Te)}}const r=e.match(n)?xe:Te,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:F,plugins:I,abort:B}),n(r));return z(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".once disabled for "+e);const n=F.on(e,({payload:e})=>{t({payload:e,instance:F,plugins:I,abort:B}),n()});return n},getState:e=>{const t=ne.getState();return e?n(t,e):Object.assign({},t)},dispatch:e=>{const t=p(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);const n=g({},t,{_:g({originalAction:t.type},e._||{})});ne.dispatch(n)},enablePlugin:H.enable,disablePlugin:H.disable,plugins:H,storage:{getItem:m.getItem,setItem:(e,t,n)=>{ne.dispatch({type:$.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{ne.dispatch({type:$.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{F.storage.setItem(P,e,t)},events:{core:x,plugins:N}},G=d.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=Oe()),e(t)),D(xe),ie(F,j,{all:_,plugins:N}),ae(m),q(F),R(F),D(Te)]),K={context:ve,user:V(m),page:we,track:pe,plugins:se(j),queue:me};let Q=v,Y=v;if(f&&o.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Q=e({trace:!0,traceLimit:25})),Y=function(){return 0===arguments.length?Ne():c(typeof arguments[0])?Ae():Ae().apply(null,arguments)}}const Z=function(e){return Object.keys(e).reduce((t,n)=>(Pe.includes(n)||(t[n]=e[n]),t),{})}(o),ee=d.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=d.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),te={context:Z,user:X,plugins:ee},ne=E(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===y&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===h||typeof n(void 0,{type:b})===h)throw new Error("reducer "+t+" "+h)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===h){const e=S(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(g({},K,s)),te,Y(Q(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=v(...s)(a.dispatch),g({},a,{dispatch:o})}}(...G))));var re;ne.dispatch=(re=ne.dispatch,function(e,t,n){const r=g({},e,{meta:Oe(e.meta,t,_e(n))});return re.apply(null,[r])});const ce=Object.keys(I);ne.dispatch({type:$.bootstrap,plugins:ce,config:Z,params:L,user:X,initialUser:u,persistedUser:J});const ue=ce.filter(e=>d.pluginEnabled[e]),le=ce.filter(e=>!d.pluginEnabled[e]);return ne.dispatch({type:$.registerPlugins,plugins:ce,enabled:d.pluginEnabled}),d.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&l(n)&&n({instance:F,config:r,payload:e}),ne.dispatch({type:$.registerPluginType(i),name:i,enabled:d.pluginEnabled[i],plugin:e}),d.pluginsArray.length===t+1&&ne.dispatch({type:$.initializeStart,plugins:ue,disabled:le})}),F}const xe="before",Te="after";export{ke as Analytics,_ as CONSTANTS,$ as EVENTS,ke as default,ke as init};
import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as s}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as u,isFunction as l,isBoolean as d,isString as p,isBrowser as f,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}const y="function",h="undefined",b="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */(()=>typeof Symbol===y&&Symbol.observable||"@@observable")(),I=" != "+y;function E(e,t,n){if(typeof t===y&&typeof n===h&&(n=t,t=void 0),typeof n!==h){if(typeof n!==y)throw new Error("enhancer"+I);return n(E)(e,t)}if(typeof e!==y)throw new Error("reducer"+I);let r=e,i=t,a=[],o=a,s=!1;function u(){o===a&&(o=a.slice())}function l(){return i}function d(e){if(typeof e!==y)throw new Error("Listener"+I);let t=!0;return u(),o.push(e),function(){if(!t)return;t=!1,u();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===h)throw new Error("ActType "+h);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:l,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+I);r=e,p({type:"@@redux/INIT"})},[w]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(l())}return n(),{unsubscribe:e(n)}},[w](){return this}}}}}function v(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+h}function S(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const P=u+"anon_id",N=u+"user_id",A=u+"user_traits";var _={__proto__:null,ANON_ID:P,USER_ID:N,USER_TRAITS:A};const O="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"];var $=x.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const j=/^utm_/,z=/^an_prop_/,M=/^an_trait_/;function q(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===$.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(P,a.anonymousId),c||t(N,a.userId),s.traits&&t(A,g({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(j)||t.match(/^(d|g)clid/)){const n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(z)&&(e.props[t.replace(z,"")]=r[t]),t.match(M)&&(e.traits[t.replace(M,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:$.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:$.campaign,campaign:a.campaign})}}return r(i)}}function V(e){return function(t={},n={}){if(n.type===$.setItemEnd){if(n.key===P)return g({},t,{anonymousId:n.value});if(n.key===N)return g({},t,{userId:n.value})}switch(n.type){case $.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case $.reset:return[N,P,A].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(N),anonymousId:e.getItem(P),traits:e.getItem(A)}}const U=e=>u+"TEMP"+u+e;function R(t){const{setItem:n,removeItem:r,getItem:a}=t.storage;return t=>o=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===$.reset&&([N,A,P].forEach(e=>{r(e)}),[O,k,"traits"].forEach(e=>{i(U(e))})),s.type===$.identify){a(P)||n(P,e());const r=a(N),i=a(A)||{};r&&r!==c&&t.dispatch({type:$.userIdChanged,old:{userId:r,traits:i},new:{userId:c,traits:u},options:l}),c&&n(N,c),u&&n(A,g({},i,u))}return o(s)}}const D={};function B(e,t){D[e]&&l(D[e])&&(D[e](t),delete D[e])}function L(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>L(e,t,n-10).then(r,i)))}function J(e){return{abort:e}}function X(e,t,n){const r={},i=t(),{plugins:a,context:o,queue:s,user:u}=e.getState();if(!o.offline&&s&&s.actions&&s.actions.length){const t=s.actions.reduce((e,t,n)=>(a[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const o=s.actions[t],d=o.plugin,p=o.payload.type,f=i[d][p];if(f&&l(f)){const t=function(e={},t={}){return[O,k].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(o.payload,u);let i;const s=r[t.meta.rid];if(!s&&(i=f({payload:t,config:a[d].config,instance:n,abort:J}),i&&c(i)&&i.abort))return void(r[t.meta.rid]=!0);if(!s){const n=`${p}:${d}`;e.dispatch(g({},t,{type:n,_:{called:n,from:"queueDrain"}}))}}});const o=s.actions.filter((e,n)=>!~t.processIndex.indexOf(n));s.actions=o}}}const H=/Start$/,W=/^bootstrap/,F=/^ready/;async function G({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:u,context:d}=r,p=t.type,f=p.match(H);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const y=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(H)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&ne(o)?o:n;if(r&&(c=o&&ne(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return g({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:ae(n),instance:e,config:a||{},abort:c}}}(n,m),h=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!u[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,d=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!l(t.method))return a;!function(e,t){const n=ie(e);if(n&&n.name===t){const r=ie(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(d=a,f=s,m=t.pluginName,function(e,t){return g({},d,{abort:{reason:e,plugins:t||[f],caller:p,from:m||f}})}),config:Q(t.pluginName,u,i),plugins:u});var d,f,m;const y=c(o)?o:{};return Promise.resolve(g({},a,y))},Promise.resolve(t));d[s]=r}else d[s]=t;return Promise.resolve(d)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:l}=r,d=i[l],m=await t;let w=b[l]?b[l]:{};if(f&&(w=m),ee(w,l))return K({data:w,method:p,instance:n,pluginName:l,store:o}),Promise.resolve(m);if(ee(m,l))return s&&K({data:m,method:p,instance:n,store:o}),Promise.resolve(m);if(h.hasOwnProperty(l)&&!0===h[l])return o.dispatch({type:"queue",plugin:l,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=y(b[l],i[l]),E=await d[p]({abort:I.abort,payload:w,instance:n,config:Q(l,u,i),plugins:u}),v=g({},m,c(E)?E:{}),S=b[l];if(ee(S,l))K({data:S,method:p,instance:n,pluginName:l,store:o});else{const e=`${p}:${l}`;(e.match(/:/g)||[]).length<2&&!p.match(W)&&!p.match(F)&&n.dispatch(g({},f?v:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(v)},Promise.resolve(t));if(!(p.match(H)||p.match(/^registerPlugin/)||p.match(F)||p.match(W)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),w._&&w._.originalAction===p)return w;let t=g({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});te(w,e.exact.length)&&!p.match(/End$/)&&(t=g({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function K({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(g({},e,{type:i,_:{called:i,from:"abort"}}))}function Q(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function Y(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function Z(e,t){const n=e.replace(H,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function ee({abort:e},t){return!!e&&(!0===e||re(e,t)||e&&re(e.plugins,t))}function te({abort:e},t){if(!e)return!1;if(!0===e||p(e))return!0;const{plugins:n}=e;return ne(e)&&e.length===t||ne(n)&&n.length===t}function ne(e){return Array.isArray(e)}function re(e,t){return!(!e||!ne(e))&&e.includes(t)}function ie(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function ae(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t),{})}function oe(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let p=o;if(c)return a(o);if(s===$.enablePlugin&&i.dispatch({type:$.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===$.disablePlugin&&setTimeout(()=>B(o.meta.rid,{payload:o}),0),s===$.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return L(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:$.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!T.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(g({},{type:$.ready},t))},0)})}if(s!==$.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>X(i,t,e),0);const r=await async function(e,t,n,r,i){const a=l(t)?t():t,o=e.type,s=o.replace(H,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return d(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===$.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const p=u.map(e=>e.name),f=function(e,t,n){const r=Z(e).map(e=>Y(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=Z(e,i),[o,s,c]=a.map(e=>Y(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await G({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});if(te(m,p.length))return m;let y;if(y=o===s?m:await G({action:g({},m,{type:s}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i}),o.match(H)){const e=`${s}End`,t=await G({action:g({},y,{type:e}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&B(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(p)}}function se(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===$.setItem||r===$.removeItem){if(n.abort)return t(n);r===$.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class ce{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return S(...this[e].map(e=>e(i)))(n)(r)}}}function ue(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=le(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=le(n.type,$.initialize),a=e()[i];return a&&i?(r[i]=g({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case $.disablePlugin:return g({},t,de(n.plugins,!1,t));case $.enablePlugin:return g({},t,de(n.plugins,!0,t));default:return t}}}function le(e,t){return e.substring(t.length+1,e.length)}function de(e,t,n){return e.reduce((e,r)=>(e[r]=g({},n[r],{enabled:t}),e),n)}function pe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const fe={last:{},history:[]};function me(e=fe,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===$.track){const t=pe(g({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return g({},e,{last:t,history:e.history.concat(t)})}return e}const ge={actions:[]};function ye(e=ge,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===$.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:n});case"dequeue":return[];default:return e}}const he=/#.*$/;function be(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(he,""):"")}const we=(e={})=>{if(!f)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!f)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(he,"")}(s),u={title:t,url:c,path:be(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),g({},u,e)},Ie={last:{},history:[]};function Ee(e=Ie,t){const{properties:n,options:r,meta:i}=t;if(t.type===$.page){const t=pe(g({properties:n,meta:i},Object.keys(r).length&&{options:r}));return g({},e,{last:t,history:e.history.concat(t)})}return e}let ve,Se;ve="na",Se={};const Pe={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!f&&!navigator.onLine,os:{name:"na"},userAgent:f?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:Se};function Ne(e=Pe,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case $.campaign:return g({},e,{campaign:i});case $.offline:return g({},e,{offline:!0});case $.online:return g({},e,{offline:!1});default:return n?e:g({},Pe,e,{initialized:!0})}}const Ae=["plugins","reducers","storage"];function _e(){return a("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(o[s].analytics.push(e.action||e),a(e))})}}function Oe(e){return function(){return S(S.apply(null,arguments),_e())}}function ke(e){return e?m(e)?e:[e]:[]}function xe(t={},n,r){const i=e();var a,o;return n&&(D[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(l(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),g({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Te(o={}){const s=o.reducers||{},u=o.initialUser||{},d=(o.plugins||[]).reduce((e,t)=>{if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=F,r.apply({instance:F},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},w=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:C(e)[t]||r(U(t))||null)}}(m);let I=d.plugins;const N=d.events.filter(e=>!T.includes(e)).sort(),A=new Set(N.concat(x).filter(e=>!T.includes(e))),_=Array.from(A).sort(),j=()=>I,{addMiddleware:z,removeMiddleware:M,dynamicMiddlewares:D}=new ce,B=()=>{throw new Error("Abort disabled inListener")},L=t(),J=C(m),X=g({},J,u,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});X.anonymousId||(X.anonymousId=e());const H=g({enable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.enablePlugin,plugins:ke(e),_:{originalAction:$.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.disablePlugin,plugins:ke(e),_:{originalAction:$.disablePlugin}},n,[t])})},d.methods);let W=!1;const F={identify:async(e,t,n,r)=>{const i=p(e)?e:null,o=c(e)?e:t,s=n||{},u=F.user();a(U(O),i);const l=i||o.userId||w(O,F,o);return new Promise(e=>{ne.dispatch(g({type:$.identifyStart,userId:l,traits:o||{},options:s,anonymousId:u.anonymousId},u.id&&u.id!==i&&{previousId:u.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=c(e)?e.event:e;if(!i||!p(i))throw new Error("EventMissing");const a=c(e)?e:t||{},o=c(n)?n:{};return new Promise(e=>{ne.dispatch({type:$.trackStart,event:i,properties:a,options:o,userId:w(O,F,t),anonymousId:w(k,F,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=c(e)?e:{},i=c(t)?t:{};return new Promise(a=>{ne.dispatch({type:$.pageStart,properties:we(r),options:i,userId:w(O,F,r),anonymousId:w(k,F,r)},a,[e,t,n])})},user:e=>{if(e===O||"id"===e)return w(O,F);if(e===k||"anonId"===e)return w(k,F);const t=F.getState("user");return e?n(t,e):t},reset:e=>new Promise(t=>{ne.dispatch({type:$.resetStart},t,e)}),ready:e=>(W&&e({plugins:H,instance:F}),F.on($.ready,t=>{e(t),W=!0})),on:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:F,plugins:I}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:F,plugins:I}),e(r));return z(e,$e),z(r,je),()=>{M(e,$e),M(r,je)}}const r=e.match(n)?$e:je,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:F,plugins:I,abort:B}),n(r));return z(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".once disabled for "+e);const n=F.on(e,({payload:e})=>{t({payload:e,instance:F,plugins:I,abort:B}),n()});return n},getState:e=>{const t=ne.getState();return e?n(t,e):Object.assign({},t)},dispatch:e=>{const t=p(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);const n=g({},t,{_:g({originalAction:t.type},e._||{})});ne.dispatch(n)},enablePlugin:H.enable,disablePlugin:H.disable,plugins:H,storage:{getItem:m.getItem,setItem:(e,t,n)=>{ne.dispatch({type:$.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{ne.dispatch({type:$.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{F.storage.setItem(P,e,t)},events:{core:x,plugins:N}},G=d.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=xe()),e(t)),D($e),oe(F,j,{all:_,plugins:N}),se(m),q(F),R(F),D(je)]),K={context:Ne,user:V(m),page:Ee,track:me,plugins:ue(j),queue:ye};let Q=S,Y=S;if(f&&o.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Q=e({trace:!0,traceLimit:25})),Y=function(){return 0===arguments.length?_e():c(typeof arguments[0])?Oe():Oe().apply(null,arguments)}}const Z=function(e){return Object.keys(e).reduce((t,n)=>(Ae.includes(n)||(t[n]=e[n]),t),{})}(o),ee=d.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=d.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),te={context:Z,user:X,plugins:ee},ne=E(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===y&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===h||typeof n(void 0,{type:b})===h)throw new Error("reducer "+t+" "+h)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===h){const e=v(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(g({},K,s)),te,Y(Q(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=S(...s)(a.dispatch),g({},a,{dispatch:o})}}(...G))));var re;ne.dispatch=(re=ne.dispatch,function(e,t,n){const r=g({},e,{meta:xe(e.meta,t,ke(n))});return re.apply(null,[r])});const ie=Object.keys(I);ne.dispatch({type:$.bootstrap,plugins:ie,config:Z,params:L,user:X,initialUser:u,persistedUser:J});const ae=ie.filter(e=>d.pluginEnabled[e]),le=ie.filter(e=>!d.pluginEnabled[e]);return ne.dispatch({type:$.registerPlugins,plugins:ie,enabled:d.pluginEnabled}),d.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&l(n)&&n({instance:F,config:r,payload:e}),ne.dispatch({type:$.registerPluginType(i),name:i,enabled:d.pluginEnabled[i],plugin:e}),d.pluginsArray.length===t+1&&ne.dispatch({type:$.initializeStart,plugins:ae,disabled:le})}),F}const $e="before",je="after";export{Te as Analytics,_ as CONSTANTS,$ as EVENTS,Te as default,Te as init};
//# sourceMappingURL=analytics-core.modern.js.map

@@ -1,2 +0,2 @@

import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as u}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as s,isFunction as l,isBoolean as f,isString as d,isBrowser as p,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}var h="function",v="undefined",y="@@redux/"+Math.random().toString(36),b=/* #__PURE__ */function(){return typeof Symbol===h&&Symbol.observable||"@@observable"}(),I=" != "+h;function w(e,t,n){var r;if(typeof t===h&&typeof n===v&&(n=t,t=void 0),typeof n!==v){if(typeof n!==h)throw new Error("enhancer"+I);return n(w)(e,t)}if(typeof e!==h)throw new Error("reducer"+I);var i=e,a=t,o=[],u=o,s=!1;function l(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==h)throw new Error("Listener"+I);var t=!0;return l(),u.push(e),function(){if(t){t=!1,l();var n=u.indexOf(e);u.splice(n,1)}}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===v)throw new Error("ActType "+v);if(s)throw new Error("Dispatch in reducer");try{s=!0,a=i(a,e)}finally{s=!1}for(var t=o=u,n=0;n<t.length;n++)(0,t[n])();return e}return p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==h)throw new Error("next reducer"+I);i=e,p({type:"@@redux/INIT"})}})[b]=function(){var e,t=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(f())}return n(),{unsubscribe:t(n)}}})[b]=function(){return this},e},r}function E(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+v}function P(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function S(){var e=arguments;return function(t){return function(n,r,i){var a,o=t(n,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),g({},o,{dispatch:u=P.apply(void 0,a)(o.dispatch)})}}}var N=s+"anon_id",A=s+"user_id",_=s+"user_traits",O={__proto__:null,ANON_ID:N,USER_ID:A,USER_TRAITS:_},j="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"],z=x.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),M=/^utm_/,q=/^an_prop_/,V=/^an_trait_/;function C(e){var t=e.storage.setItem;return function(n){return function(r){return function(i){if(i.type===z.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&t(N,o.anonymousId),s||t(A,o.userId),c.traits&&t(_,g({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,t){if(t.match(M)||t.match(/^(d|g)clid/)){var n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=a[t]}return t.match(q)&&(e.props[t.replace(q,"")]=a[t]),t.match(V)&&(e.traits[t.replace(V,"")]=a[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:z.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&n.dispatch({type:z.campaign,campaign:p.campaign})}}return r(i)}}}}function U(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===z.setItemEnd){if(n.key===N)return g({},t,{anonymousId:n.value});if(n.key===A)return g({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case z.reset:return[A,N,_].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function R(e){return{userId:e.getItem(A),anonymousId:e.getItem(N),traits:e.getItem(_)}}var $=function(e){return s+"TEMP"+s+e};function D(t){var n=t.storage,r=n.setItem,a=n.removeItem,o=n.getItem;return function(t){return function(n){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===z.reset&&([A,_,N].forEach(function(e){a(e)}),[j,k,"traits"].forEach(function(e){i($(e))})),u.type===z.identify){o(N)||r(N,e());var f=o(A),d=o(_)||{};f&&f!==c&&t.dispatch({type:z.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(A,c),s&&r(_,g({},d,s))}return n(u)}}}}var B={};function L(e,t){B[e]&&l(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise(function(r,i){return t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return J(e,t,n-10).then(r,i)})})}var X=function(e){var t=e.data,n=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,s=e.EVENTS;try{var f=i.plugins,d=i.context,p=n.type,m=p.match(H),h=t.exact.map(function(e){return e.pluginName});m&&(h=o.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(n,r,i){var a=r.config,o=r.name,u=o+"."+n.type;i&&(u=i.event);var c=n.type.match(H)?function(e,t,n,r,i){return function(a,o){var u=r?r.name:e,c=o&&te(o)?o:n;if(r&&(!(c=o&&te(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return g({},i,{abort:{reason:a,plugins:c,caller:t,_:u}})}}(o,u,t,i,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,u);return{payload:ie(n),instance:e,config:a||{},abort:c}}}(r,h),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(t.namespaced&&t.namespaced[u])return Promise.resolve(t.namespaced[u].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&l(t.method)?(function(e,t){var n=re(e);if(n&&n.name===t){var r=re(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:r,abort:(n=e,i=u,o=t.pluginName,function(e,t){return g({},n,{abort:{reason:e,plugins:t||[i],caller:p,from:o||i}})}),config:K(t.pluginName,f,a),plugins:f})).then(function(t){var n=c(t)?t:{};return Promise.resolve(g({},e,n))})):e;var n,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[u]=t});e[u]=n}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,i,o){try{var s=t.exact.length===o+1,l=i.pluginName,d=a[l];return Promise.resolve(n).then(function(t){var n=e[l]?e[l]:{};if(m&&(n=t),Z(n,l))return G({data:n,method:p,instance:r,pluginName:l,store:u}),Promise.resolve(t);if(Z(t,l))return s&&G({data:t,method:p,instance:r,store:u}),Promise.resolve(t);if(y.hasOwnProperty(l)&&!0===y[l])return u.dispatch({type:"queue",plugin:l,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var i=v(e[l],a[l]);return Promise.resolve(d[p]({abort:i.abort,payload:n,instance:r,config:K(l,f,a),plugins:f})).then(function(i){var a=c(i)?i:{},o=g({},t,a),s=e[l];if(Z(s,l))G({data:s,method:p,instance:r,pluginName:l,store:u});else{var f=p+":"+l;(f.match(/:/g)||[]).length<2&&!p.match(W)&&!p.match(F)&&r.dispatch(g({},m?o:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(H)||p.match(/^registerPlugin/)||p.match(F)||p.match(W)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=g({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ee(e,t.exact.length)&&!p.match(/End$/)&&(n=g({},n,{type:e.type+"Aborted"})),u.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},H=/Start$/,W=/^bootstrap/,F=/^ready/;function G(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(g({},e.data,{type:n,_:{called:n,from:"abort"}}))}function K(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function Q(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function Y(e,t){var n=e.replace(H,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function Z(e,t){var n=e.abort;return!!n&&(!0===n||ne(n,t)||n&&ne(n.plugins,t))}function ee(e,t){var n=e.abort;if(!n)return!1;if(!0===n||d(n))return!0;var r=n.plugins;return te(n)&&n.length===t||te(r)&&r.length===t}function te(e){return Array.isArray(e)}function ne(e,t){return!(!e||!te(e))&&e.includes(t)}function re(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function ie(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t},{})}function ae(e,t,n){var r={};return function(i){return function(a){return function(o){try{var u,c=function(e){return u?e:a(p)},s=o.type,d=o.plugins,p=o;if(o.abort)return Promise.resolve(a(o));if(s===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:o.meta}),s===z.disablePlugin&&setTimeout(function(){return L(o.meta.rid,{payload:o})},0),s===z.initializeEnd){var m=t(),h=Object.keys(m),v=h.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],b=[],I=o.disabled,w=v.map(function(e){var t=e.loaded,n=e.name,a=e.config;return J(e,function(){return t({config:a})},1e4).then(function(t){return r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!T.includes(e)})}),r[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(w).then(function(e){var t={plugins:y,failed:b,disabled:I};setTimeout(function(){h.length===w.length+I.length&&i.dispatch(g({},{type:z.ready},t))},0)})}var E=function(){if(s!==z.bootstrap)return/^ready:([^:]*)$/.test(s)&&setTimeout(function(){return function(e,t,n){var r=t(),i=e.getState(),a=i.plugins,o=i.queue,u=i.user;if(!i.context.offline&&o&&o.actions&&o.actions.length){var c=o.actions.reduce(function(e,t,n){return a[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(c.processIndex&&c.processIndex.length){c.processIndex.forEach(function(t){var i=o.actions[t],c=i.plugin,s=i.payload.type,f=r[c][s];if(f&&l(f)){var d=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[j,k].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(i.payload,u);f({payload:d,config:a[c].config,instance:n});var p=s+":"+c;e.dispatch(g({},d,{type:p,_:{called:p,from:"queueDrain"}}))}});var s=o.actions.filter(function(e,t){return!~c.processIndex.indexOf(t)});o.actions=s}}}(i,t,e)},0),Promise.resolve(function(e,t,n,r,i){try{var a=l(t)?t():t,o=e.type,u=o.replace(H,"");if(e._&&e._.called)return Promise.resolve(e);var c=n.getState(),s=(m=a,void 0===(h=c.plugins)&&(h={}),void 0===(v=e.options)&&(v={}),Object.keys(m).filter(function(e){var t=v.plugins||{};return f(t[e])?t[e]:!1!==t.all&&(!h[e]||!1!==h[e].enabled)}).map(function(e){return m[e]}));o===z.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(t){var n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return a[e]}));var d=s.map(function(e){return e.name}),p=function(e,t,n){var r=Y(e).map(function(e){return Q(e,t)});return t.reduce(function(n,r){var i=r.name,a=Y(e,i).map(function(e){return Q(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,s);return Promise.resolve(X({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){function t(){var t=function(){if(o.match(H))return Promise.resolve(X({action:g({},s,{type:u+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&L(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ee(e,d.length))return e;var s,l=function(){if(o!==u)return Promise.resolve(X({action:g({},e,{type:u}),data:{exact:p.during,namespaced:p.duringNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return l&&l.then?l.then(t):t()})}catch(e){return Promise.reject(e)}var m,h,v}(o,t,e,i,n)).then(function(e){return u=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(c):c(E))}catch(e){return Promise.reject(e)}}}}}function oe(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ue=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return P.apply(void 0,o)(r)(i)}}}}};function ce(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var i=se(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;var o=n.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var c=se(n.type,z.initialize),s=e()[c];return s&&c?(r[c]=g({},t[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case z.disablePlugin:return g({},t,le(n.plugins,!1,t));case z.enablePlugin:return g({},t,le(n.plugins,!0,t));default:return t}}}function se(e,t){return e.substring(t.length+1,e.length)}function le(e,t,n){return e.reduce(function(e,r){return e[r]=g({},n[r],{enabled:t}),e},n)}function fe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var de={last:{},history:[]};function pe(e,t){void 0===e&&(e=de);var n=t.options,r=t.meta;if(t.type===z.track){var i=fe(g({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return g({},e,{last:i,history:e.history.concat(i)})}return e}var me={actions:[]};function ge(e,t){void 0===e&&(e=me);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===z.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:r});case"dequeue":return[];default:return e}}var he=/#.*$/;function ve(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(he,""):"")}var ye,be=function(e){if(void 0===e&&(e={}),!p)return e;var t=document,n=t.title,r=t.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var t=function(){if(p)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(he,"")}(s),f={title:n,url:l,path:ve(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),g({},f,e)},Ie={last:{},history:[]};function we(e,t){void 0===e&&(e=Ie);var n=t.options;if(t.type===z.page){var r=fe(g({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return g({},e,{last:r,history:e.history.concat(r)})}return e}ye={};var Ee={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!p&&!navigator.onLine,os:{name:"na"},userAgent:p?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:ye};function Pe(e,t){void 0===e&&(e=Ee);var n=e.initialized,r=t.campaign;switch(t.type){case z.campaign:return g({},e,{campaign:r});case z.offline:return g({},e,{offline:!0});case z.online:return g({},e,{offline:!1});default:return n?e:g({},Ee,e,{initialized:!0})}}var Se=["plugins","reducers","storage"];function Ne(){return a("analytics",[]),function(e){return function(t,n,r){var i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return o[u].analytics.push(e.action||e),a(e)}})}}}function Ae(e){return function(){return P(P.apply(null,arguments),Ne())}}function _e(e){return e?m(e)?e:[e]:[]}function Oe(t,n,r){void 0===t&&(t={});var i,a,o=e();return n&&(B[o]=(i=n,a=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),r=0;r<n.length;r++)if(l(n[r])){t=n[r];break}return t}(r),function(e){a&&a(e),i(e)})),g({},t,{rid:o,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function je(o){void 0===o&&(o={});var u=o.reducers||{},s=o.initialUser||{},f=(o.plugins||[]).reduce(function(e,t){if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=K,r.apply({instance:K},t)}),e},{}),delete t.methods);var r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},b=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:R(e)[t]||r($(t))||null)}}(m),I=f.plugins,A=f.events.filter(function(e){return!T.includes(e)}).sort(),_=new Set(A.concat(x).filter(function(e){return!T.includes(e)})),O=Array.from(_).sort(),M=function(){return I},q=new ue,V=q.addMiddleware,B=q.removeMiddleware,L=q.dynamicMiddlewares,J=function(){throw new Error("Abort disabled inListener")},X=t(),H=R(m),W=g({},H,s,X.an_uid?{userId:X.an_uid}:{},X.an_aid?{anonymousId:X.an_aid}:{});W.anonymousId||(W.anonymousId=e());var F=g({enable:function(e,t){return new Promise(function(n){le.dispatch({type:z.enablePlugin,plugins:_e(e),_:{originalAction:z.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){le.dispatch({type:z.disablePlugin,plugins:_e(e),_:{originalAction:z.disablePlugin}},n,[t])})}},f.methods),G=!1,K={identify:function(e,t,n,r){try{var i=d(e)?e:null,o=c(e)?e:t,u=n||{},s=K.user();a($(j),i);var l=i||o.userId||b(j,K,o);return Promise.resolve(new Promise(function(e){le.dispatch(g({type:z.identifyStart,userId:l,traits:o||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==i&&{previousId:s.id}),e,[t,n,r])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,r){try{var i=c(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var a=c(e)?e:t||{},o=c(n)?n:{};return Promise.resolve(new Promise(function(e){le.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:b(j,K,t),anonymousId:b(k,K,t)},e,[t,n,r])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var r=c(e)?e:{},i=c(t)?t:{};return Promise.resolve(new Promise(function(a){le.dispatch({type:z.pageStart,properties:be(r),options:i,userId:b(j,K,r),anonymousId:b(k,K,r)},a,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===j||"id"===e)return b(j,K);if(e===k||"anonId"===e)return b(k,K);var t=K.getState("user");return e?n(t,e):t},reset:function(e){return new Promise(function(t){le.dispatch({type:z.resetStart},t,e)})},ready:function(e){return G&&e({plugins:F,instance:K}),K.on(z.ready,function(t){e(t),G=!0})},on:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var r=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:K,plugins:I}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:K,plugins:I}),e(r)}}};return V(r,ke),V(i,xe),function(){B(r,ke),B(i,xe)}}var a=e.match(n)?ke:xe,o=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:K,plugins:I,abort:J}),n(r)}}};return V(o,a),function(){return B(o,a)}},once:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);var n=K.on(e,function(e){t({payload:e.payload,instance:K,plugins:I,abort:J}),n()});return n},getState:function(e){var t=le.getState();return e?n(t,e):Object.assign({},t)},dispatch:function(e){var t=d(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);var n=g({},t,{_:g({originalAction:t.type},e._||{})});le.dispatch(n)},enablePlugin:F.enable,disablePlugin:F.disable,plugins:F,storage:{getItem:m.getItem,setItem:function(e,t,n){le.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){le.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){K.storage.setItem(N,e,t)},events:{core:x,plugins:A}},Q=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Oe()),e(t)}}},L(ke),ae(K,M,{all:O,plugins:A}),oe(m),C(K),D(K),L(xe)]),Y={context:Pe,user:U(m),page:we,track:pe,plugins:ce(M),queue:ge},Z=P,ee=P;if(p&&o.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(Z=te({trace:!0,traceLimit:25})),ee=function(){return 0===arguments.length?Ne():c(typeof arguments[0])?Ae():Ae().apply(null,arguments)}}var ne,re=function(e){return Object.keys(e).reduce(function(t,n){return Se.includes(n)||(t[n]=e[n]),t},{})}(o),ie=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),se={context:re,user:W,plugins:ie},le=w(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===h&&(n[i]=e[i])}var a,o=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===v||typeof n(void 0,{type:y})===v)throw new Error("reducer "+t+" "+v)})}(n)}catch(e){a=e}return function(e,t){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,n[c])(s,t);if(typeof l===v){var f=E(c,t);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(g({},Y,u)),se,ee(Z(S.apply(void 0,Q))));le.dispatch=(ne=le.dispatch,function(e,t,n){var r=g({},e,{meta:Oe(e.meta,t,_e(n))});return ne.apply(null,[r])});var fe=Object.keys(I);le.dispatch({type:z.bootstrap,plugins:fe,config:re,params:X,user:W,initialUser:s,persistedUser:H});var de=fe.filter(function(e){return f.pluginEnabled[e]}),me=fe.filter(function(e){return!f.pluginEnabled[e]});return le.dispatch({type:z.registerPlugins,plugins:fe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,r=e.config,i=e.name;n&&l(n)&&n({instance:K,config:r,payload:e}),le.dispatch({type:z.registerPluginType(i),name:i,enabled:f.pluginEnabled[i],plugin:e}),f.pluginsArray.length===t+1&&le.dispatch({type:z.initializeStart,plugins:de,disabled:me})}),K}var ke="before",xe="after";export{je as Analytics,O as CONSTANTS,z as EVENTS,je as default,je as init};
import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as u}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as s,isFunction as l,isBoolean as f,isString as d,isBrowser as p,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}var h="function",v="undefined",y="@@redux/"+Math.random().toString(36),b=/* #__PURE__ */function(){return typeof Symbol===h&&Symbol.observable||"@@observable"}(),I=" != "+h;function w(e,t,n){var r;if(typeof t===h&&typeof n===v&&(n=t,t=void 0),typeof n!==v){if(typeof n!==h)throw new Error("enhancer"+I);return n(w)(e,t)}if(typeof e!==h)throw new Error("reducer"+I);var i=e,a=t,o=[],u=o,s=!1;function l(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==h)throw new Error("Listener"+I);var t=!0;return l(),u.push(e),function(){if(t){t=!1,l();var n=u.indexOf(e);u.splice(n,1)}}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===v)throw new Error("ActType "+v);if(s)throw new Error("Dispatch in reducer");try{s=!0,a=i(a,e)}finally{s=!1}for(var t=o=u,n=0;n<t.length;n++)(0,t[n])();return e}return p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==h)throw new Error("next reducer"+I);i=e,p({type:"@@redux/INIT"})}})[b]=function(){var e,t=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(f())}return n(),{unsubscribe:t(n)}}})[b]=function(){return this},e},r}function E(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+v}function P(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function S(){var e=arguments;return function(t){return function(n,r,i){var a,o=t(n,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),g({},o,{dispatch:u=P.apply(void 0,a)(o.dispatch)})}}}var N=s+"anon_id",A=s+"user_id",_=s+"user_traits",O={__proto__:null,ANON_ID:N,USER_ID:A,USER_TRAITS:_},j="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"],z=x.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),M=/^utm_/,q=/^an_prop_/,V=/^an_trait_/;function C(e){var t=e.storage.setItem;return function(n){return function(r){return function(i){if(i.type===z.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&t(N,o.anonymousId),s||t(A,o.userId),c.traits&&t(_,g({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,t){if(t.match(M)||t.match(/^(d|g)clid/)){var n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=a[t]}return t.match(q)&&(e.props[t.replace(q,"")]=a[t]),t.match(V)&&(e.traits[t.replace(V,"")]=a[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:z.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&n.dispatch({type:z.campaign,campaign:p.campaign})}}return r(i)}}}}function U(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===z.setItemEnd){if(n.key===N)return g({},t,{anonymousId:n.value});if(n.key===A)return g({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case z.reset:return[A,N,_].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function R(e){return{userId:e.getItem(A),anonymousId:e.getItem(N),traits:e.getItem(_)}}var $=function(e){return s+"TEMP"+s+e};function D(t){var n=t.storage,r=n.setItem,a=n.removeItem,o=n.getItem;return function(t){return function(n){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===z.reset&&([A,_,N].forEach(function(e){a(e)}),[j,k,"traits"].forEach(function(e){i($(e))})),u.type===z.identify){o(N)||r(N,e());var f=o(A),d=o(_)||{};f&&f!==c&&t.dispatch({type:z.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(A,c),s&&r(_,g({},d,s))}return n(u)}}}}var B={};function L(e,t){B[e]&&l(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise(function(r,i){return t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return J(e,t,n-10).then(r,i)})})}function X(e){return{abort:e}}var H=function(e){var t=e.data,n=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,s=e.EVENTS;try{var f=i.plugins,d=i.context,p=n.type,m=p.match(W),h=t.exact.map(function(e){return e.pluginName});m&&(h=o.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(n,r,i){var a=r.config,o=r.name,u=o+"."+n.type;i&&(u=i.event);var c=n.type.match(W)?function(e,t,n,r,i){return function(a,o){var u=r?r.name:e,c=o&&ne(o)?o:n;if(r&&(!(c=o&&ne(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return g({},i,{abort:{reason:a,plugins:c,caller:t,_:u}})}}(o,u,t,i,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,u);return{payload:ae(n),instance:e,config:a||{},abort:c}}}(r,h),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(t.namespaced&&t.namespaced[u])return Promise.resolve(t.namespaced[u].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&l(t.method)?(function(e,t){var n=ie(e);if(n&&n.name===t){var r=ie(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:r,abort:(n=e,i=u,o=t.pluginName,function(e,t){return g({},n,{abort:{reason:e,plugins:t||[i],caller:p,from:o||i}})}),config:Q(t.pluginName,f,a),plugins:f})).then(function(t){var n=c(t)?t:{};return Promise.resolve(g({},e,n))})):e;var n,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[u]=t});e[u]=n}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,i,o){try{var s=t.exact.length===o+1,l=i.pluginName,d=a[l];return Promise.resolve(n).then(function(t){var n=e[l]?e[l]:{};if(m&&(n=t),ee(n,l))return K({data:n,method:p,instance:r,pluginName:l,store:u}),Promise.resolve(t);if(ee(t,l))return s&&K({data:t,method:p,instance:r,store:u}),Promise.resolve(t);if(y.hasOwnProperty(l)&&!0===y[l])return u.dispatch({type:"queue",plugin:l,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var i=v(e[l],a[l]);return Promise.resolve(d[p]({abort:i.abort,payload:n,instance:r,config:Q(l,f,a),plugins:f})).then(function(i){var a=c(i)?i:{},o=g({},t,a),s=e[l];if(ee(s,l))K({data:s,method:p,instance:r,pluginName:l,store:u});else{var f=p+":"+l;(f.match(/:/g)||[]).length<2&&!p.match(F)&&!p.match(G)&&r.dispatch(g({},m?o:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(W)||p.match(/^registerPlugin/)||p.match(G)||p.match(F)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=g({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});te(e,t.exact.length)&&!p.match(/End$/)&&(n=g({},n,{type:e.type+"Aborted"})),u.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},W=/Start$/,F=/^bootstrap/,G=/^ready/;function K(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(g({},e.data,{type:n,_:{called:n,from:"abort"}}))}function Q(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function Y(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function Z(e,t){var n=e.replace(W,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function ee(e,t){var n=e.abort;return!!n&&(!0===n||re(n,t)||n&&re(n.plugins,t))}function te(e,t){var n=e.abort;if(!n)return!1;if(!0===n||d(n))return!0;var r=n.plugins;return ne(n)&&n.length===t||ne(r)&&r.length===t}function ne(e){return Array.isArray(e)}function re(e,t){return!(!e||!ne(e))&&e.includes(t)}function ie(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function ae(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t},{})}function oe(e,t,n){var r={};return function(i){return function(a){return function(o){try{var u,s=function(e){return u?e:a(m)},d=o.type,p=o.plugins,m=o;if(o.abort)return Promise.resolve(a(o));if(d===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:p,disabled:[],fromEnable:!0,meta:o.meta}),d===z.disablePlugin&&setTimeout(function(){return L(o.meta.rid,{payload:o})},0),d===z.initializeEnd){var h=t(),v=Object.keys(h),y=v.filter(function(e){return p.includes(e)}).map(function(e){return h[e]}),b=[],I=[],w=o.disabled,E=y.map(function(e){var t=e.loaded,n=e.name,a=e.config;return J(e,function(){return t({config:a})},1e4).then(function(t){return r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!T.includes(e)})}),r[n]=!0),b=b.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return I=I.concat(e.name),e})});Promise.all(E).then(function(e){var t={plugins:b,failed:I,disabled:w};setTimeout(function(){v.length===E.length+w.length&&i.dispatch(g({},{type:z.ready},t))},0)})}var P=function(){if(d!==z.bootstrap)return/^ready:([^:]*)$/.test(d)&&setTimeout(function(){return function(e,t,n){var r={},i=t(),a=e.getState(),o=a.plugins,u=a.queue,s=a.user;if(!a.context.offline&&u&&u.actions&&u.actions.length){var f=u.actions.reduce(function(e,t,n){return o[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var a=u.actions[t],f=a.plugin,d=a.payload.type,p=i[f][d];if(p&&l(p)){var m,h=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[j,k].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(a.payload,s),v=r[h.meta.rid];if(!v&&(m=p({payload:h,config:o[f].config,instance:n,abort:X}))&&c(m)&&m.abort)return void(r[h.meta.rid]=!0);if(!v){var y=d+":"+f;e.dispatch(g({},h,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=u.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});u.actions=d}}}(i,t,e)},0),Promise.resolve(function(e,t,n,r,i){try{var a=l(t)?t():t,o=e.type,u=o.replace(W,"");if(e._&&e._.called)return Promise.resolve(e);var c=n.getState(),s=(m=a,void 0===(h=c.plugins)&&(h={}),void 0===(v=e.options)&&(v={}),Object.keys(m).filter(function(e){var t=v.plugins||{};return f(t[e])?t[e]:!1!==t.all&&(!h[e]||!1!==h[e].enabled)}).map(function(e){return m[e]}));o===z.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(t){var n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return a[e]}));var d=s.map(function(e){return e.name}),p=function(e,t,n){var r=Z(e).map(function(e){return Y(e,t)});return t.reduce(function(n,r){var i=r.name,a=Z(e,i).map(function(e){return Y(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,s);return Promise.resolve(H({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){function t(){var t=function(){if(o.match(W))return Promise.resolve(H({action:g({},s,{type:u+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&L(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(te(e,d.length))return e;var s,l=function(){if(o!==u)return Promise.resolve(H({action:g({},e,{type:u}),data:{exact:p.during,namespaced:p.duringNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return l&&l.then?l.then(t):t()})}catch(e){return Promise.reject(e)}var m,h,v}(o,t,e,i,n)).then(function(e){return u=1,a(e)})}();return Promise.resolve(P&&P.then?P.then(s):s(P))}catch(e){return Promise.reject(e)}}}}}function ue(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ce=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return P.apply(void 0,o)(r)(i)}}}}};function se(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var i=le(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;var o=n.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var c=le(n.type,z.initialize),s=e()[c];return s&&c?(r[c]=g({},t[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case z.disablePlugin:return g({},t,fe(n.plugins,!1,t));case z.enablePlugin:return g({},t,fe(n.plugins,!0,t));default:return t}}}function le(e,t){return e.substring(t.length+1,e.length)}function fe(e,t,n){return e.reduce(function(e,r){return e[r]=g({},n[r],{enabled:t}),e},n)}function de(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var pe={last:{},history:[]};function me(e,t){void 0===e&&(e=pe);var n=t.options,r=t.meta;if(t.type===z.track){var i=de(g({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return g({},e,{last:i,history:e.history.concat(i)})}return e}var ge={actions:[]};function he(e,t){void 0===e&&(e=ge);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===z.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:r});case"dequeue":return[];default:return e}}var ve=/#.*$/;function ye(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ve,""):"")}var be,Ie=function(e){if(void 0===e&&(e={}),!p)return e;var t=document,n=t.title,r=t.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var t=function(){if(p)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ve,"")}(s),f={title:n,url:l,path:ye(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),g({},f,e)},we={last:{},history:[]};function Ee(e,t){void 0===e&&(e=we);var n=t.options;if(t.type===z.page){var r=de(g({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return g({},e,{last:r,history:e.history.concat(r)})}return e}be={};var Pe={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!p&&!navigator.onLine,os:{name:"na"},userAgent:p?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:be};function Se(e,t){void 0===e&&(e=Pe);var n=e.initialized,r=t.campaign;switch(t.type){case z.campaign:return g({},e,{campaign:r});case z.offline:return g({},e,{offline:!0});case z.online:return g({},e,{offline:!1});default:return n?e:g({},Pe,e,{initialized:!0})}}var Ne=["plugins","reducers","storage"];function Ae(){return a("analytics",[]),function(e){return function(t,n,r){var i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return o[u].analytics.push(e.action||e),a(e)}})}}}function _e(e){return function(){return P(P.apply(null,arguments),Ae())}}function Oe(e){return e?m(e)?e:[e]:[]}function je(t,n,r){void 0===t&&(t={});var i,a,o=e();return n&&(B[o]=(i=n,a=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),r=0;r<n.length;r++)if(l(n[r])){t=n[r];break}return t}(r),function(e){a&&a(e),i(e)})),g({},t,{rid:o,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function ke(o){void 0===o&&(o={});var u=o.reducers||{},s=o.initialUser||{},f=(o.plugins||[]).reduce(function(e,t){if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=K,r.apply({instance:K},t)}),e},{}),delete t.methods);var r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},b=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:R(e)[t]||r($(t))||null)}}(m),I=f.plugins,A=f.events.filter(function(e){return!T.includes(e)}).sort(),_=new Set(A.concat(x).filter(function(e){return!T.includes(e)})),O=Array.from(_).sort(),M=function(){return I},q=new ce,V=q.addMiddleware,B=q.removeMiddleware,L=q.dynamicMiddlewares,J=function(){throw new Error("Abort disabled inListener")},X=t(),H=R(m),W=g({},H,s,X.an_uid?{userId:X.an_uid}:{},X.an_aid?{anonymousId:X.an_aid}:{});W.anonymousId||(W.anonymousId=e());var F=g({enable:function(e,t){return new Promise(function(n){le.dispatch({type:z.enablePlugin,plugins:Oe(e),_:{originalAction:z.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){le.dispatch({type:z.disablePlugin,plugins:Oe(e),_:{originalAction:z.disablePlugin}},n,[t])})}},f.methods),G=!1,K={identify:function(e,t,n,r){try{var i=d(e)?e:null,o=c(e)?e:t,u=n||{},s=K.user();a($(j),i);var l=i||o.userId||b(j,K,o);return Promise.resolve(new Promise(function(e){le.dispatch(g({type:z.identifyStart,userId:l,traits:o||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==i&&{previousId:s.id}),e,[t,n,r])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,r){try{var i=c(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var a=c(e)?e:t||{},o=c(n)?n:{};return Promise.resolve(new Promise(function(e){le.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:b(j,K,t),anonymousId:b(k,K,t)},e,[t,n,r])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var r=c(e)?e:{},i=c(t)?t:{};return Promise.resolve(new Promise(function(a){le.dispatch({type:z.pageStart,properties:Ie(r),options:i,userId:b(j,K,r),anonymousId:b(k,K,r)},a,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===j||"id"===e)return b(j,K);if(e===k||"anonId"===e)return b(k,K);var t=K.getState("user");return e?n(t,e):t},reset:function(e){return new Promise(function(t){le.dispatch({type:z.resetStart},t,e)})},ready:function(e){return G&&e({plugins:F,instance:K}),K.on(z.ready,function(t){e(t),G=!0})},on:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var r=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:K,plugins:I}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:K,plugins:I}),e(r)}}};return V(r,xe),V(i,Te),function(){B(r,xe),B(i,Te)}}var a=e.match(n)?xe:Te,o=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:K,plugins:I,abort:J}),n(r)}}};return V(o,a),function(){return B(o,a)}},once:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);var n=K.on(e,function(e){t({payload:e.payload,instance:K,plugins:I,abort:J}),n()});return n},getState:function(e){var t=le.getState();return e?n(t,e):Object.assign({},t)},dispatch:function(e){var t=d(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);var n=g({},t,{_:g({originalAction:t.type},e._||{})});le.dispatch(n)},enablePlugin:F.enable,disablePlugin:F.disable,plugins:F,storage:{getItem:m.getItem,setItem:function(e,t,n){le.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){le.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){K.storage.setItem(N,e,t)},events:{core:x,plugins:A}},Q=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=je()),e(t)}}},L(xe),oe(K,M,{all:O,plugins:A}),ue(m),C(K),D(K),L(Te)]),Y={context:Se,user:U(m),page:Ee,track:me,plugins:se(M),queue:he},Z=P,ee=P;if(p&&o.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(Z=te({trace:!0,traceLimit:25})),ee=function(){return 0===arguments.length?Ae():c(typeof arguments[0])?_e():_e().apply(null,arguments)}}var ne,re=function(e){return Object.keys(e).reduce(function(t,n){return Ne.includes(n)||(t[n]=e[n]),t},{})}(o),ie=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ae={context:re,user:W,plugins:ie},le=w(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===h&&(n[i]=e[i])}var a,o=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===v||typeof n(void 0,{type:y})===v)throw new Error("reducer "+t+" "+v)})}(n)}catch(e){a=e}return function(e,t){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,n[c])(s,t);if(typeof l===v){var f=E(c,t);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(g({},Y,u)),ae,ee(Z(S.apply(void 0,Q))));le.dispatch=(ne=le.dispatch,function(e,t,n){var r=g({},e,{meta:je(e.meta,t,Oe(n))});return ne.apply(null,[r])});var fe=Object.keys(I);le.dispatch({type:z.bootstrap,plugins:fe,config:re,params:X,user:W,initialUser:s,persistedUser:H});var de=fe.filter(function(e){return f.pluginEnabled[e]}),pe=fe.filter(function(e){return!f.pluginEnabled[e]});return le.dispatch({type:z.registerPlugins,plugins:fe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,r=e.config,i=e.name;n&&l(n)&&n({instance:K,config:r,payload:e}),le.dispatch({type:z.registerPluginType(i),name:i,enabled:f.pluginEnabled[i],plugin:e}),f.pluginsArray.length===t+1&&le.dispatch({type:z.initializeStart,plugins:de,disabled:pe})}),K}var xe="before",Te="after";export{ke as Analytics,O as CONSTANTS,z as EVENTS,ke as default,ke as init};
//# sourceMappingURL=analytics-core.module.js.map

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},I="analytics",w="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function k(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function x(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[w,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function F(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return F(e,t,n-10).then(r,a)})})}var R=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(B),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(B)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&H(u)?u:n;if(r&&(!(s=u&&H(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:Y(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=W(e);if(n&&n.name===t){var r=W(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:$(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),L(n,d))return V({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(L(t,d))return l&&V({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:$(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(L(l,d))V({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(U)&&!p.match(C)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(B)||p.match(/^registerPlugin/)||p.match(C)||p.match(U)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});J(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},B=/Start$/,U=/^bootstrap/,C=/^ready/;function V(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function $(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function D(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function X(e,t){var n=e.replace(B,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function L(e,t){var n=e.abort;return!!n&&(!0===n||K(n,t)||n&&K(n.plugins,t))}function J(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return H(n)&&n.length===t||H(i)&&i.length===t}function H(e){return Array.isArray(e)}function K(e,t){return!(!e||!H(e))&&e.includes(t)}function W(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function Y(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function G(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,I=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return F(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===I.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var P=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,n){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&r.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[w,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:n});var m=f+":"+l;e.dispatch(i({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(B,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=X(e).map(function(e){return D(e,t)});return t.reduce(function(n,r){var i=r.name,a=X(e,i).map(function(e){return D(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(R({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(B))return Promise.resolve(R({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(J(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(R({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function Q(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Z=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function ee(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=te(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=te(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,ne(n.plugins,!1,t));case O.enablePlugin:return i({},t,ne(n.plugins,!0,t));default:return t}}}function te(e,t){return e.substring(t.length+1,e.length)}function ne(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function re(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ie={last:{},history:[]};function ae(e,t){void 0===e&&(e=ie);var n=t.options,r=t.meta;if(t.type===O.track){var a=re(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var oe={actions:[]};function ue(e,t){void 0===e&&(e=oe);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var ce=/#.*$/;function se(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ce,""):"")}var le,fe=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ce,"")}(f),p={title:n,url:d,path:se(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},de={last:{},history:[]};function pe(e,t){void 0===e&&(e=de);var n=t.options;if(t.type===O.page){var r=re(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}le={};var me={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:I,version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:le};function ge(e,t){void 0===e&&(e=me);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},me,e,{initialized:!0})}}var he=["plugins","reducers","storage"];function ye(){return n.set(I,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function ve(e){return function(){return m(m.apply(null,arguments),ye())}}function be(e){return e?r.isArray(e)?e:[e]:[]}function Ie(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function we(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=X,r.apply({instance:X},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:x(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,I=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(I.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new Z,q=M.addMiddleware,F=M.removeMiddleware,R=M.dynamicMiddlewares,B=function(){throw new Error("Abort disabled inListener")},U=t.paramsParse(),C=x(y),V=i({},C,l,U.an_uid?{userId:U.an_uid}:{},U.an_aid?{anonymousId:U.an_aid}:{});V.anonymousId||(V.anonymousId=t.uuid());var $=i({enable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.enablePlugin,plugins:be(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.disablePlugin,plugins:be(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),D=!1,X={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=X.user();n.set(T(w),u);var f=u||c.userId||v(w,X,c);return Promise.resolve(new Promise(function(e){ie.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ie.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(w,X,t),anonymousId:v(E,X,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ie.dispatch({type:O.pageStart,properties:fe(i),options:a,userId:v(w,X,i),anonymousId:v(E,X,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===w||"id"===e)return v(w,X);if(e===E||"anonId"===e)return v(E,X);var n=X.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ie.dispatch({type:O.resetStart},t,e)})},ready:function(e){return D&&e({plugins:$,instance:X}),X.on(O.ready,function(t){e(t),D=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:X,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:X,plugins:b}),e(r)}}};return q(i,Ee),q(a,Pe),function(){F(i,Ee),F(a,Pe)}}var o=e.match(n)?Ee:Pe,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:X,plugins:b,abort:B}),n(r)}}};return q(u,o),function(){return F(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=X.on(e,function(e){t({payload:e.payload,instance:X,plugins:b,abort:B}),n()});return n},getState:function(e){var n=ie.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ie.dispatch(n)},enablePlugin:$.enable,disablePlugin:$.disable,plugins:$,storage:{getItem:y.getItem,setItem:function(e,t,n){ie.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ie.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){X.storage.setItem(h,e,t)},events:{core:P,plugins:I}},L=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Ie()),e(t)}}},R(Ee),G(X,A,{all:N,plugins:I}),Q(y),_(X),z(X),R(Pe)]),J={context:ge,user:k(y),page:pe,track:ae,plugins:ee(A),queue:ue},H=m,K=m;if(r.isBrowser&&e.debug){var W=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;W&&(H=W({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?ye():r.isObject(typeof arguments[0])?ve():ve().apply(null,arguments)}}var Y,te=function(e){return Object.keys(e).reduce(function(t,n){return he.includes(n)||(t[n]=e[n]),t},{})}(e),ne=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),re={context:te,user:V,plugins:ne},ie=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},J,u)),re,K(H(g.apply(void 0,L))));ie.dispatch=(Y=ie.dispatch,function(e,t,n){var r=i({},e,{meta:Ie(e.meta,t,be(n))});return Y.apply(null,[r])});var oe=Object.keys(b);ie.dispatch({type:O.bootstrap,plugins:oe,config:te,params:U,user:V,initialUser:l,persistedUser:C});var ce=oe.filter(function(e){return f.pluginEnabled[e]}),se=oe.filter(function(e){return!f.pluginEnabled[e]});return ie.dispatch({type:O.registerPlugins,plugins:oe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:X,config:i,payload:e}),ie.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ie.dispatch({type:O.initializeStart,plugins:ce,disabled:se})}),X}var Ee="before",Pe="after";e.Analytics=we,e.CONSTANTS=b,e.EVENTS=O,e.default=we,e.init=we});
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},I="analytics",w="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function k(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function x(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[w,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function F(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return F(e,t,n-10).then(r,a)})})}function R(e){return{abort:e}}var B=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(U),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(U)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&K(u)?u:n;if(r&&(!(s=u&&K(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:G(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=Y(e);if(n&&n.name===t){var r=Y(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:D(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),J(n,d))return $({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(J(t,d))return l&&$({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:D(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(J(l,d))$({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(C)&&!p.match(V)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(U)||p.match(/^registerPlugin/)||p.match(V)||p.match(C)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});H(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},U=/Start$/,C=/^bootstrap/,V=/^ready/;function $(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function D(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function X(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function L(e,t){var n=e.replace(U,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function J(e,t){var n=e.abort;return!!n&&(!0===n||W(n,t)||n&&W(n.plugins,t))}function H(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return K(n)&&n.length===t||K(i)&&i.length===t}function K(e){return Array.isArray(e)}function W(e,t){return!(!e||!K(e))&&e.includes(t)}function Y(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function G(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function Q(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,I=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return F(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===I.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var P=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,n){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&r.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[w,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:n,abort:R}))&&r.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var y=d+":"+f;e.dispatch(i({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(U,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=L(e).map(function(e){return X(e,t)});return t.reduce(function(n,r){var i=r.name,a=L(e,i).map(function(e){return X(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(B({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(U))return Promise.resolve(B({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(H(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(B({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function Z(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ee=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function te(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=ne(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=ne(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,re(n.plugins,!1,t));case O.enablePlugin:return i({},t,re(n.plugins,!0,t));default:return t}}}function ne(e,t){return e.substring(t.length+1,e.length)}function re(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function ie(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ae={last:{},history:[]};function oe(e,t){void 0===e&&(e=ae);var n=t.options,r=t.meta;if(t.type===O.track){var a=ie(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var ue={actions:[]};function ce(e,t){void 0===e&&(e=ue);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var se=/#.*$/;function le(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(se,""):"")}var fe,de=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(se,"")}(f),p={title:n,url:d,path:le(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},pe={last:{},history:[]};function me(e,t){void 0===e&&(e=pe);var n=t.options;if(t.type===O.page){var r=ie(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}fe={};var ge={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:I,version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:fe};function he(e,t){void 0===e&&(e=ge);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},ge,e,{initialized:!0})}}var ye=["plugins","reducers","storage"];function ve(){return n.set(I,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function be(e){return function(){return m(m.apply(null,arguments),ve())}}function Ie(e){return e?r.isArray(e)?e:[e]:[]}function we(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ee(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=X,r.apply({instance:X},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:x(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,I=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(I.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new ee,q=M.addMiddleware,F=M.removeMiddleware,R=M.dynamicMiddlewares,B=function(){throw new Error("Abort disabled inListener")},U=t.paramsParse(),C=x(y),V=i({},C,l,U.an_uid?{userId:U.an_uid}:{},U.an_aid?{anonymousId:U.an_aid}:{});V.anonymousId||(V.anonymousId=t.uuid());var $=i({enable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.enablePlugin,plugins:Ie(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.disablePlugin,plugins:Ie(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),D=!1,X={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=X.user();n.set(T(w),u);var f=u||c.userId||v(w,X,c);return Promise.resolve(new Promise(function(e){ie.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ie.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(w,X,t),anonymousId:v(E,X,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ie.dispatch({type:O.pageStart,properties:de(i),options:a,userId:v(w,X,i),anonymousId:v(E,X,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===w||"id"===e)return v(w,X);if(e===E||"anonId"===e)return v(E,X);var n=X.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ie.dispatch({type:O.resetStart},t,e)})},ready:function(e){return D&&e({plugins:$,instance:X}),X.on(O.ready,function(t){e(t),D=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:X,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:X,plugins:b}),e(r)}}};return q(i,Pe),q(a,Se),function(){F(i,Pe),F(a,Se)}}var o=e.match(n)?Pe:Se,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:X,plugins:b,abort:B}),n(r)}}};return q(u,o),function(){return F(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=X.on(e,function(e){t({payload:e.payload,instance:X,plugins:b,abort:B}),n()});return n},getState:function(e){var n=ie.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ie.dispatch(n)},enablePlugin:$.enable,disablePlugin:$.disable,plugins:$,storage:{getItem:y.getItem,setItem:function(e,t,n){ie.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ie.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){X.storage.setItem(h,e,t)},events:{core:P,plugins:I}},L=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=we()),e(t)}}},R(Pe),Q(X,A,{all:N,plugins:I}),Z(y),_(X),z(X),R(Se)]),J={context:he,user:k(y),page:me,track:oe,plugins:te(A),queue:ce},H=m,K=m;if(r.isBrowser&&e.debug){var W=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;W&&(H=W({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?ve():r.isObject(typeof arguments[0])?be():be().apply(null,arguments)}}var Y,G=function(e){return Object.keys(e).reduce(function(t,n){return ye.includes(n)||(t[n]=e[n]),t},{})}(e),ne=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),re={context:G,user:V,plugins:ne},ie=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},J,u)),re,K(H(g.apply(void 0,L))));ie.dispatch=(Y=ie.dispatch,function(e,t,n){var r=i({},e,{meta:we(e.meta,t,Ie(n))});return Y.apply(null,[r])});var ae=Object.keys(b);ie.dispatch({type:O.bootstrap,plugins:ae,config:G,params:U,user:V,initialUser:l,persistedUser:C});var ue=ae.filter(function(e){return f.pluginEnabled[e]}),se=ae.filter(function(e){return!f.pluginEnabled[e]});return ie.dispatch({type:O.registerPlugins,plugins:ae,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:X,config:i,payload:e}),ie.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ie.dispatch({type:O.initializeStart,plugins:ue,disabled:se})}),X}var Pe="before",Se="after";e.Analytics=Ee,e.CONSTANTS=b,e.EVENTS=O,e.default=Ee,e.init=Ee});
//# sourceMappingURL=analytics-core.umd.js.map
{
"name": "@analytics/core",
"version": "0.12.7",
"version": "0.12.9",
"description": "Lightweight analytics library for tracking events, page views, & identifying users. Works with any third party analytics provider via an extendable plugin system.",

@@ -98,4 +98,3 @@ "keywords": [

"sinon": "7.2.3"
},
"gitHead": "935e9cbc2c8662395f560deaa84b95702e82c0af"
}
}

@@ -714,7 +714,7 @@ # Analytics Core

|:---------------------------|:---------------:|:-----------:|
| **[@analytics/activity-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-activity)** <br/> User activity listener utilities | <a href="https://www.npmjs.com/package/@analytics/activity-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/activity-utils.svg"></a> | **0.1.15** |
| **[@analytics/activity-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-activity)** <br/> User activity listener utilities | <a href="https://www.npmjs.com/package/@analytics/activity-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/activity-utils.svg"></a> | **0.1.16** |
| **[@analytics/amplitude](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-amplitude)** <br/> Amplitude integration for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/amplitude"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/amplitude.svg"></a> | **0.1.3** |
| **[@analytics/aws-pinpoint](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-aws-pinpoint)** <br/> AWS Pinpoint integration for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/aws-pinpoint"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/aws-pinpoint.svg"></a> | **0.7.9** |
| **[@analytics/aws-pinpoint](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-aws-pinpoint)** <br/> AWS Pinpoint integration for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/aws-pinpoint"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/aws-pinpoint.svg"></a> | **0.7.11** |
| **[@analytics/cookie-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-storage-cookie)** <br/> Tiny cookie utility library | <a href="https://www.npmjs.com/package/@analytics/cookie-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/cookie-utils.svg"></a> | **0.2.12** |
| **[@analytics/core](https://github.com/DavidWells/analytics/tree/master/packages/analytics-core)** <br/> Lightweight analytics library for tracking events, page views, & identifying users. Works with any third party analytics provider via an extendable plugin system. | <a href="https://www.npmjs.com/package/@analytics/core"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/core.svg"></a> | **0.12.5** |
| **[@analytics/core](https://github.com/DavidWells/analytics/tree/master/packages/analytics-core)** <br/> Lightweight analytics library for tracking events, page views, & identifying users. Works with any third party analytics provider via an extendable plugin system. | <a href="https://www.npmjs.com/package/@analytics/core"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/core.svg"></a> | **0.12.7** |
| **[@analytics/countly](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-countly)** <br/> Countly plugin for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/countly"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/countly.svg"></a> | **0.21.12** |

@@ -728,3 +728,3 @@ | **[@analytics/crazy-egg](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-crazy-egg)** <br/> Crazy Egg integration for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/crazy-egg"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/crazy-egg.svg"></a> | **0.1.2** |

| **[@analytics/google-analytics](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-google-analytics)** <br/> Google analytics v4 plugin for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/google-analytics"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/google-analytics.svg"></a> | **1.0.7** |
| **[@analytics/google-tag-manager](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-google-tag-manager)** <br/> Google tag manager plugin for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/google-tag-manager"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/google-tag-manager.svg"></a> | **0.5.4** |
| **[@analytics/google-tag-manager](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-google-tag-manager)** <br/> Google tag manager plugin for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/google-tag-manager"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/google-tag-manager.svg"></a> | **0.5.5** |
| **[@analytics/google-analytics-v3](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-google-analytics-v3)** <br/> Google analytics v3 plugin for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/google-analytics-v3"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/google-analytics-v3.svg"></a> | **0.6.1** |

@@ -734,3 +734,3 @@ | **[@analytics/gosquared](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-gosquared)** <br/> GoSquared integration for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/gosquared"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/gosquared.svg"></a> | **0.1.3** |

| **[@analytics/intercom](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-intercom)** <br/> Intercom integration for 'analytics' module for browser & node | <a href="https://www.npmjs.com/package/@analytics/intercom"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/intercom.svg"></a> | **1.0.2** |
| **[@analytics/listener-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-listener)** <br/> Backward compatible event listener library for attaching & detaching event handlers | <a href="https://www.npmjs.com/package/@analytics/listener-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/listener-utils.svg"></a> | **0.3.2** |
| **[@analytics/listener-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-listener)** <br/> Backward compatible event listener library for attaching & detaching event handlers | <a href="https://www.npmjs.com/package/@analytics/listener-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/listener-utils.svg"></a> | **0.4.0** |
| **[@analytics/localstorage-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-storage-local)** <br/> Tiny LocalStorage utility library | <a href="https://www.npmjs.com/package/@analytics/localstorage-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/localstorage-utils.svg"></a> | **0.1.10** |

@@ -746,6 +746,6 @@ | **[@analytics/mixpanel](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-mixpanel)** <br/> Mixpanel plugin for 'analytics' module | <a href="https://www.npmjs.com/package/@analytics/mixpanel"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/mixpanel.svg"></a> | **0.4.0** |

| **[@analytics/scroll-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-scroll)** <br/> Scroll utility library to fire events on scroll | <a href="https://www.npmjs.com/package/@analytics/scroll-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/scroll-utils.svg"></a> | **0.1.22** |
| **[@analytics/segment](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-segment)** <br/> Segment integration for 'analytics' module for browser & node | <a href="https://www.npmjs.com/package/@analytics/segment"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/segment.svg"></a> | **1.1.4** |
| **[@analytics/segment](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-segment)** <br/> Segment integration for 'analytics' module for browser & node | <a href="https://www.npmjs.com/package/@analytics/segment"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/segment.svg"></a> | **2.1.0** |
| **[@analytics/session-storage-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-storage-session)** <br/> Tiny SessionStorage utility library | <a href="https://www.npmjs.com/package/@analytics/session-storage-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/session-storage-utils.svg"></a> | **0.0.7** |
| **[@analytics/session-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-session)** <br/> Tiny session utility library | <a href="https://www.npmjs.com/package/@analytics/session-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/session-utils.svg"></a> | **0.1.19** |
| **[@analytics/simple-analytics](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-simple-analytics)** <br/> Simple analytics plugin for 'analytics' module for browser | <a href="https://www.npmjs.com/package/@analytics/simple-analytics"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/simple-analytics.svg"></a> | **0.3.4** |
| **[@analytics/simple-analytics](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-simple-analytics)** <br/> Simple analytics plugin for 'analytics' module for browser | <a href="https://www.npmjs.com/package/@analytics/simple-analytics"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/simple-analytics.svg"></a> | **0.4.0** |
| **[@analytics/snowplow](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-snowplow)** <br/> Snowplow integration for 'analytics' module for browser & node | <a href="https://www.npmjs.com/package/@analytics/snowplow"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/snowplow.svg"></a> | **0.3.3** |

@@ -762,3 +762,3 @@ | **[@analytics/storage-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-storage)** <br/> Storage utility with fallbacks | <a href="https://www.npmjs.com/package/@analytics/storage-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/@analytics/storage-utils.svg"></a> | **0.4.2** |

| **[analytics-plugin-tab-events](https://github.com/DavidWells/analytics/tree/master/packages/analytics-plugin-tab-events)** <br/> Expose tab visibility events plugin for 'analytics' module | <a href="https://www.npmjs.com/package/analytics-plugin-tab-events"><img width="360" height="22" src="https://img.shields.io/npm/dm/analytics-plugin-tab-events.svg"></a> | **0.2.1** |
| **[use-analytics](https://github.com/DavidWells/analytics/tree/master/packages/use-analytics)** <br/> Analytics hooks for React | <a href="https://www.npmjs.com/package/use-analytics"><img width="360" height="22" src="https://img.shields.io/npm/dm/use-analytics.svg"></a> | **1.0.0** |
| **[use-analytics](https://github.com/DavidWells/analytics/tree/master/packages/use-analytics)** <br/> Analytics hooks for React | <a href="https://www.npmjs.com/package/use-analytics"><img width="360" height="22" src="https://img.shields.io/npm/dm/use-analytics.svg"></a> | **1.1.0** |
| **[analytics-util-params](https://github.com/DavidWells/analytics/tree/master/packages/analytics-util-params)** <br/> Url Parameter helper functions | <a href="https://www.npmjs.com/package/analytics-util-params"><img width="360" height="22" src="https://img.shields.io/npm/dm/analytics-util-params.svg"></a> | **0.1.2** |

@@ -781,4 +781,6 @@ | **[analytics-utils](https://github.com/DavidWells/analytics/tree/master/packages/analytics-utils)** <br/> Analytics utility functions used by 'analytics' module | <a href="https://www.npmjs.com/package/analytics-utils"><img width="360" height="22" src="https://img.shields.io/npm/dm/analytics-utils.svg"></a> | **1.0.12** |

- [Logrocket](https://www.npmjs.com/package/analytics-plugin-logrocket) Adds Analytics support for LogRocket
- [Planhat](https://www.npmjs.com/package/analytics-plugin-planhat) Adds Analytics support for Planhat
- [Plausible](https://www.npmjs.com/package/analytics-plugin-plausible) Adds Analytics support for Plausible
- [PostHog](https://www.npmjs.com/package/@metro-fs/analytics-plugin-posthog) Adds Analytics support for PostHog
- [PostHog](https://www.npmjs.com/package/@metro-fs/analytics-plugin-posthog) Adds Analytics support for PostHog by @metro-fs
- [PostHog](https://www.npmjs.com/package/analytics-plugin-posthog) Adds Analytics support for PostHog by deevus
- [ProfitWell](https://github.com/deevus/analytics-plugin-profitwell) Adds Analytics support for ProfitWell

@@ -785,0 +787,0 @@ - [Reddit Pixel](https://www.npmjs.com/package/analytics-plugin-reddit-pixel) Adds Analytics support for Reddit Pixel

@@ -1,2 +0,2 @@

var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var A=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function _(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(A(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var x={};function k(e,t){x[e]&&n.isFunction(x[e])&&(x[e](t),delete x[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}var z=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(M),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(M)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&D(u)?u:n;if(i&&(!(s=u&&D(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:J(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=L(e);if(n&&n.name===t){var r=L(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:B(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),U(i,d))return R({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(U(t,d))return l&&R({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:B(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if(U(l,d))R({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(q)&&!p.match(F)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(M)||p.match(/^registerPlugin/)||p.match(F)||p.match(q)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});$(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},M=/Start$/,q=/^bootstrap/,F=/^ready/;function R(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function B(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function C(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function V(e,t){var n=e.replace(M,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function U(e,t){var n=e.abort;return!!n&&(!0===n||X(n,t)||n&&X(n.plugins,t))}function $(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return D(r)&&r.length===t||D(i)&&i.length===t}function D(e){return Array.isArray(e)}function X(e,t){return!(!e||!D(e))&&e.includes(t)}function L(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function J(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function H(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),b=[],E=[],P=c.disabled,S=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),b=b.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return E=E.concat(e.name),e})});Promise.all(S).then(function(e){var t={plugins:b,failed:E,disabled:P};setTimeout(function(){g.length===S.length+P.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var O=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,i){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&n.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:i});var m=f+":"+l;e.dispatch(r({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(M,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=V(e).map(function(e){return C(e,t)});return t.reduce(function(n,r){var i=r.name,a=V(e,i).map(function(e){return C(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(z({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(M))return Promise.resolve(z({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if($(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(z({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(O&&O.then?O.then(l):l(O))}catch(e){return Promise.reject(e)}}}}}function K(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var W=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function Y(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=G(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=G(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,Q(n.plugins,!1,t));case w.enablePlugin:return r({},t,Q(n.plugins,!0,t));default:return t}}}function G(e,t){return e.substring(t.length+1,e.length)}function Q(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function Z(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ee={last:{},history:[]};function te(e,t){void 0===e&&(e=ee);var n=t.options,i=t.meta;if(t.type===w.track){var a=Z(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var ne={actions:[]};function re(e,t){void 0===e&&(e=ne);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var ie=/#.*$/;function ae(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ie,""):"")}var oe,ue=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ie,"")}(f),p={title:i,url:d,path:ae(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},ce={last:{},history:[]};function se(e,t){void 0===e&&(e=ce);var n=t.options;if(t.type===w.page){var i=Z(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}oe={};var le={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:oe};function fe(e,t){void 0===e&&(e=le);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},le,e,{initialized:!0})}}var de=["plugins","reducers","storage"];function pe(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function me(e){return function(){return f(f.apply(null,arguments),pe())}}function ge(e){return e?n.isArray(e)?e:[e]:[]}function he(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(x[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function ve(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(A(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),x=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(x).sort(),T=function(){return P},z=new W,M=z.addMiddleware,q=z.removeMiddleware,F=z.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},B=e.paramsParse(),C=N(h),V=r({},C,m,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var U=r({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.enablePlugin,plugins:ge(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.disablePlugin,plugins:ge(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),$=!1,D={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=D.user();t.set(A(v),u);var f=u||c.userId||E(v,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,D,t),anonymousId:E(y,D,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){ae.dispatch({type:w.pageStart,properties:ue(i),options:a,userId:E(v,D,i),anonymousId:E(y,D,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,D);if(t===y||"anonId"===t)return E(y,D);var n=D.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:w.resetStart},t,e)})},ready:function(e){return $&&e({plugins:U,instance:D}),D.on(w.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:D,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:D,plugins:P}),e(n)}}};return M(i,ye),M(a,be),function(){q(i,ye),q(a,be)}}var o=e.match(r)?ye:be,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:P,abort:R}),n(r)}}};return M(u,o),function(){return q(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:P,abort:R}),r()});return r},getState:function(t){var n=ae.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});ae.dispatch(i)},enablePlugin:U.enable,disablePlugin:U.disable,plugins:U,storage:{getItem:h.getItem,setItem:function(e,t,n){ae.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(p,e,t)},events:{core:b,plugins:S}},X=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=he()),e(t)}}},F(ye),H(D,T,{all:k,plugins:S}),K(h),O(D),_(D),F(be)]),L={context:fe,user:j(h),page:se,track:te,plugins:Y(T),queue:re},J=f,G=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(J=Q({trace:!0,traceLimit:25})),G=function(){return 0===arguments.length?pe():n.isObject(typeof arguments[0])?me():me().apply(null,arguments)}}var Z,ee=function(e){return Object.keys(e).reduce(function(t,n){return de.includes(n)||(t[n]=e[n]),t},{})}(u),ne=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ie={context:ee,user:V,plugins:ne},ae=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},L,c)),ie,G(J(d.apply(void 0,X))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var i=r({},e,{meta:he(e.meta,t,ge(n))});return Z.apply(null,[i])});var oe=Object.keys(P);ae.dispatch({type:w.bootstrap,plugins:oe,config:ee,params:B,user:V,initialUser:m,persistedUser:C});var ce=oe.filter(function(e){return g.pluginEnabled[e]}),le=oe.filter(function(e){return!g.pluginEnabled[e]});return ae.dispatch({type:w.registerPlugins,plugins:oe,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:D,config:i,payload:e}),ae.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&ae.dispatch({type:w.initializeStart,plugins:ce,disabled:le})}),D}var ye="before",be="after";exports.Analytics=ve,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=ve,exports.init=ve;
var e=require("analytics-utils"),t=require("@analytics/global-storage-utils"),n=require("@analytics/type-utils");function r(){return r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var i="function",a="undefined",o="@@redux/"+Math.random().toString(36),u=/* #__PURE__ */function(){return typeof Symbol===i&&Symbol.observable||"@@observable"}(),c=" != "+i;function s(e,t,r){var o;if(typeof t===i&&typeof r===a&&(r=t,t=void 0),typeof r!==a){if(typeof r!==i)throw new Error("enhancer"+c);return r(s)(e,t)}if(typeof e!==i)throw new Error("reducer"+c);var l=e,f=t,d=[],p=d,m=!1;function g(){p===d&&(p=d.slice())}function h(){return f}function v(e){if(typeof e!==i)throw new Error("Listener"+c);var t=!0;return g(),p.push(e),function(){if(t){t=!1,g();var n=p.indexOf(e);p.splice(n,1)}}}function y(e){if(!n.isObject(e))throw new Error("Act != obj");if(typeof e.type===a)throw new Error("ActType "+a);if(m)throw new Error("Dispatch in reducer");try{m=!0,f=l(f,e)}finally{m=!1}for(var t=d=p,r=0;r<t.length;r++)(0,t[r])();return e}return y({type:"@@redux/INIT"}),(o={dispatch:y,subscribe:v,getState:h,replaceReducer:function(e){if(typeof e!==i)throw new Error("next reducer"+c);l=e,y({type:"@@redux/INIT"})}})[u]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(h())}return n(),{unsubscribe:t(n)}}})[u]=function(){return this},e},o}function l(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+a}function f(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function d(){var e=arguments;return function(t){return function(n,i,a){var o,u=t(n,i,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),r({},u,{dispatch:c=f.apply(void 0,o)(u.dispatch)})}}}var p=n.PREFIX+"anon_id",m=n.PREFIX+"user_id",g=n.PREFIX+"user_traits",h={__proto__:null,ANON_ID:p,USER_ID:m,USER_TRAITS:g},v="userId",y="anonymousId",b=["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"],I=["name","EVENTS","config","loaded"],w=b.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),E=/^utm_/,P=/^an_prop_/,S=/^an_trait_/;function O(e){var t=e.storage.setItem;return function(n){return function(i){return function(a){if(a.type===w.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(p,u.anonymousId),l||t(m,u.userId),s.traits&&t(g,r({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,h=o.an_event,v=f.reduce(function(e,t){if(t.match(E)||t.match(/^(d|g)clid/)){var n=t.replace(E,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(P)&&(e.props[t.replace(P,"")]=o[t]),t.match(S)&&(e.traits[t.replace(S,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(r({type:w.params,raw:o},v,d?{userId:d}:{})),d&&setTimeout(function(){return e.identify(d,v.traits)},0),h&&setTimeout(function(){return e.track(h,v.props)},0),Object.keys(v.campaign).length&&n.dispatch({type:w.campaign,campaign:v.campaign})}}return i(a)}}}}function j(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===w.setItemEnd){if(n.key===p)return r({},t,{anonymousId:n.value});if(n.key===m)return r({},t,{userId:n.value})}switch(n.type){case w.identify:return Object.assign({},t,{userId:n.userId,traits:r({},t.traits,n.traits)});case w.reset:return[m,p,g].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function N(e){return{userId:e.getItem(m),anonymousId:e.getItem(p),traits:e.getItem(g)}}var A=function(e){return n.PREFIX+"TEMP"+n.PREFIX+e};function _(n){var i=n.storage,a=i.setItem,o=i.removeItem,u=i.getItem;return function(n){return function(i){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===w.reset&&([m,g,p].forEach(function(e){o(e)}),[v,y,"traits"].forEach(function(e){t.remove(A(e))})),c.type===w.identify){u(p)||a(p,e.uuid());var d=u(m),h=u(g)||{};d&&d!==s&&n.dispatch({type:w.userIdChanged,old:{userId:d,traits:h},new:{userId:s,traits:l},options:f}),s&&a(m,s),l&&a(g,r({},h,l))}return i(c)}}}}var x={};function k(e,t){x[e]&&n.isFunction(x[e])&&(x[e](t),delete x[e])}function T(e,t,n){return new Promise(function(i,a){return t()?i(e):n<1?a(r({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(r){return T(e,t,n-10).then(i,a)})})}function z(e){return{abort:e}}var M=function(e){var t=e.data,i=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=i.type,m=p.match(q),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,i,a){var o=i.config,u=i.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(q)?function(e,t,n,i,a){return function(o,u){var c=i?i.name:e,s=u&&X(u)?u:n;if(i&&(!(s=u&&X(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return r({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:H(n),instance:e,config:o||{},abort:s}}}(a,g),v=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,i){try{return Promise.resolve(e).then(function(e){return t.method&&n.isFunction(t.method)?(function(e,t){var n=J(e);if(n&&n.name===t){var r=J(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(i=e,o=s,c=t.pluginName,function(e,t){return r({},i,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:C(t.pluginName,f,u),plugins:f})).then(function(t){var i=n.isObject(t)?t:{};return Promise.resolve(r({},e,i))})):e;var i,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(t){e[s]=t});e[s]=i}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(i,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(i).then(function(t){var i=e[d]?e[d]:{};if(m&&(i=t),$(i,d))return B({data:i,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if($(t,d))return l&&B({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(v.hasOwnProperty(d)&&!0===v[d])return s.dispatch({type:"queue",plugin:d,payload:i,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:i,instance:a,config:C(d,f,u),plugins:f})).then(function(o){var u=n.isObject(o)?o:{},c=r({},t,u),l=e[d];if($(l,d))B({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(F)&&!p.match(R)&&a.dispatch(r({},m?c:i,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(i))).then(function(e){if(!(p.match(q)||p.match(/^registerPlugin/)||p.match(R)||p.match(F)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=r({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});D(e,t.exact.length)&&!p.match(/End$/)&&(n=r({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},q=/Start$/,F=/^bootstrap/,R=/^ready/;function B(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(r({},e.data,{type:n,_:{called:n,from:"abort"}}))}function C(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function V(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function U(e,t){var n=e.replace(q,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function $(e,t){var n=e.abort;return!!n&&(!0===n||L(n,t)||n&&L(n.plugins,t))}function D(e,t){var r=e.abort;if(!r)return!1;if(!0===r||n.isString(r))return!0;var i=r.plugins;return X(r)&&r.length===t||X(i)&&i.length===t}function X(e){return Array.isArray(e)}function L(e,t){return!(!e||!X(e))&&e.includes(t)}function J(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function H(e){return Object.keys(e).reduce(function(t,r){return"type"===r||(t[r]=n.isObject(e[r])?Object.assign({},e[r]):e[r]),t},{})}function K(e,t,i){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===w.enablePlugin&&o.dispatch({type:w.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===w.disablePlugin&&setTimeout(function(){return k(c.meta.rid,{payload:c})},0),f===w.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),b=[],E=[],P=c.disabled,S=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return T(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:w.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!I.includes(e)})}),a[n]=!0),b=b.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return E=E.concat(e.name),e})});Promise.all(S).then(function(e){var t={plugins:b,failed:E,disabled:P};setTimeout(function(){g.length===S.length+P.length&&o.dispatch(r({},{type:w.ready},t))},0)})}var O=function(){if(f!==w.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,i){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&n.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[v,y].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:i,abort:z}))&&n.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var b=d+":"+f;e.dispatch(r({},g,{type:b,_:{called:b,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}(o,t,e)},0),Promise.resolve(function(e,t,i,a,o){try{var u=n.isFunction(t)?t():t,c=e.type,s=c.replace(q,"");if(e._&&e._.called)return Promise.resolve(e);var l=i.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return n.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===w.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=U(e).map(function(e){return V(e,t)});return t.reduce(function(n,r){var i=r.name,a=U(e,i).map(function(e){return V(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(M({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(q))return Promise.resolve(M({action:r({},n,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&k(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(D(e,d.length))return e;var n,f=function(){if(c!==s)return Promise.resolve(M({action:r({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:i,store:a,EVENTS:o})).then(function(e){n=e});n=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,i)).then(function(e){return s=1,u(e)})}();return Promise.resolve(O&&O.then?O.then(l):l(O))}catch(e){return Promise.reject(e)}}}}}function W(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===w.setItem||r===w.removeItem){if(n.abort)return t(n);r===w.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Y=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return f.apply(void 0,o)(r)(i)}}}}};function G(e){return function(t,n){void 0===t&&(t={});var i={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=Q(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return i[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},r({},t,i)}if(/^initialize:([^:]*)$/.test(n.type)){var s=Q(n.type,w.initialize),l=e()[s];return l&&s?(i[s]=r({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),r({},t,i)):t}if(/^ready:([^:]*)$/.test(n.type))return i[n.name]=r({},t[n.name],{loaded:!0}),r({},t,i);switch(n.type){case w.disablePlugin:return r({},t,Z(n.plugins,!1,t));case w.enablePlugin:return r({},t,Z(n.plugins,!0,t));default:return t}}}function Q(e,t){return e.substring(t.length+1,e.length)}function Z(e,t,n){return e.reduce(function(e,i){return e[i]=r({},n[i],{enabled:t}),e},n)}function ee(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var te={last:{},history:[]};function ne(e,t){void 0===e&&(e=te);var n=t.options,i=t.meta;if(t.type===w.track){var a=ee(r({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:i}));return r({},e,{last:a,history:e.history.concat(a)})}return e}var re={actions:[]};function ie(e,t){void 0===e&&(e=re);var n=t.payload;switch(t.type){case"queue":var i;return i=n&&n.type&&n.type===w.identify?[t].concat(e.actions):e.actions.concat(t),r({},e,{actions:i});case"dequeue":return[];default:return e}}var ae=/#.*$/;function oe(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ae,""):"")}var ue,ce=function(e){if(void 0===e&&(e={}),!n.isBrowser)return e;var t=document,i=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(n.isBrowser)for(var e,t=document.getElementsByTagName("link"),r=0;e=t[r];r++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ae,"")}(f),p={title:i,url:d,path:oe(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),r({},p,e)},se={last:{},history:[]};function le(e,t){void 0===e&&(e=se);var n=t.options;if(t.type===w.page){var i=ee(r({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return r({},e,{last:i,history:e.history.concat(i)})}return e}ue={};var fe={initialized:!1,sessionId:e.uuid(),app:null,version:null,debug:!1,offline:!!n.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:n.isBrowser?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:ue};function de(e,t){void 0===e&&(e=fe);var n=e.initialized,i=t.campaign;switch(t.type){case w.campaign:return r({},e,{campaign:i});case w.offline:return r({},e,{offline:!0});case w.online:return r({},e,{offline:!1});default:return n?e:r({},fe,e,{initialized:!0})}}var pe=["plugins","reducers","storage"];function me(){return t.set("analytics",[]),function(e){return function(n,r,i){var a=e(n,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return t.globalContext[t.KEY].analytics.push(e.action||e),o(e)}})}}}function ge(e){return function(){return f(f.apply(null,arguments),me())}}function he(e){return e?n.isArray(e)?e:[e]:[]}function ve(t,i,a){void 0===t&&(t={});var o,u,c=e.uuid();return i&&(x[c]=(o=i,u=function(e){for(var t,r=e||Array.prototype.slice.call(arguments),i=0;i<r.length;i++)if(n.isFunction(r[i])){t=r[i];break}return t}(a),function(e){u&&u(e),o(e)})),r({},t,{rid:c,ts:(new Date).getTime()},i?{hasCallback:!0}:{})}function ye(u){void 0===u&&(u={});var c=u.reducers||{},m=u.initialUser||{},g=(u.plugins||[]).reduce(function(e,t){if(n.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var r=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=D,r.apply({instance:D},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(r),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),h=u.storage?u.storage:{getItem:t.get,setItem:t.set,removeItem:t.remove},E=function(e){return function(r,i,a){return i.getState("user")[r]||(a&&n.isObject(a)&&a[r]?a[r]:N(e)[r]||t.get(A(r))||null)}}(h),P=g.plugins,S=g.events.filter(function(e){return!I.includes(e)}).sort(),x=new Set(S.concat(b).filter(function(e){return!I.includes(e)})),k=Array.from(x).sort(),T=function(){return P},z=new Y,M=z.addMiddleware,q=z.removeMiddleware,F=z.dynamicMiddlewares,R=function(){throw new Error("Abort disabled inListener")},B=e.paramsParse(),C=N(h),V=r({},C,m,B.an_uid?{userId:B.an_uid}:{},B.an_aid?{anonymousId:B.an_aid}:{});V.anonymousId||(V.anonymousId=e.uuid());var U=r({enable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.enablePlugin,plugins:he(e),_:{originalAction:w.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ae.dispatch({type:w.disablePlugin,plugins:he(e),_:{originalAction:w.disablePlugin}},n,[t])})}},g.methods),$=!1,D={identify:function(e,i,a,o){try{var u=n.isString(e)?e:null,c=n.isObject(e)?e:i,s=a||{},l=D.user();t.set(A(v),u);var f=u||c.userId||E(v,D,c);return Promise.resolve(new Promise(function(e){ae.dispatch(r({type:w.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[i,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,r,i){try{var a=n.isObject(e)?e.event:e;if(!a||!n.isString(a))throw new Error("EventMissing");var o=n.isObject(e)?e:t||{},u=n.isObject(r)?r:{};return Promise.resolve(new Promise(function(e){ae.dispatch({type:w.trackStart,event:a,properties:o,options:u,userId:E(v,D,t),anonymousId:E(y,D,t)},e,[t,r,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,r){try{var i=n.isObject(e)?e:{},a=n.isObject(t)?t:{};return Promise.resolve(new Promise(function(n){ae.dispatch({type:w.pageStart,properties:ce(i),options:a,userId:E(v,D,i),anonymousId:E(y,D,i)},n,[e,t,r])}))}catch(e){return Promise.reject(e)}},user:function(t){if(t===v||"id"===t)return E(v,D);if(t===y||"anonId"===t)return E(y,D);var n=D.getState("user");return t?e.dotProp(n,t):n},reset:function(e){return new Promise(function(t){ae.dispatch({type:w.resetStart},t,e)})},ready:function(e){return $&&e({plugins:U,instance:D}),D.on(w.ready,function(t){e(t),$=!0})},on:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".on disabled for "+e);var r=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(n){return n.type.match(r)&&t({payload:n,instance:D,plugins:P}),e(n)}}},a=function(e){return function(e){return function(n){return n.type.match(r)||t({payload:n,instance:D,plugins:P}),e(n)}}};return M(i,be),M(a,Ie),function(){q(i,be),q(a,Ie)}}var o=e.match(r)?be:Ie,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:D,plugins:P,abort:R}),n(r)}}};return M(u,o),function(){return q(u,o)}},once:function(e,t){if(!e||!n.isFunction(t))return!1;if(e===w.bootstrap)throw new Error(".once disabled for "+e);var r=D.on(e,function(e){t({payload:e.payload,instance:D,plugins:P,abort:R}),r()});return r},getState:function(t){var n=ae.getState();return t?e.dotProp(n,t):Object.assign({},n)},dispatch:function(e){var t=n.isString(e)?{type:e}:e;if(b.includes(t.type))throw new Error("reserved action "+t.type);var i=r({},t,{_:r({originalAction:t.type},e._||{})});ae.dispatch(i)},enablePlugin:U.enable,disablePlugin:U.disable,plugins:U,storage:{getItem:h.getItem,setItem:function(e,t,n){ae.dispatch({type:w.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ae.dispatch({type:w.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){D.storage.setItem(p,e,t)},events:{core:b,plugins:S}},X=g.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=ve()),e(t)}}},F(be),K(D,T,{all:k,plugins:S}),W(h),O(D),_(D),F(Ie)]),L={context:de,user:j(h),page:le,track:ne,plugins:G(T),queue:ie},J=f,H=f;if(n.isBrowser&&u.debug){var Q=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;Q&&(J=Q({trace:!0,traceLimit:25})),H=function(){return 0===arguments.length?me():n.isObject(typeof arguments[0])?ge():ge().apply(null,arguments)}}var Z,ee=function(e){return Object.keys(e).reduce(function(t,n){return pe.includes(n)||(t[n]=e[n]),t},{})}(u),te=g.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=g.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),re={context:ee,user:V,plugins:te},ae=s(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var u=t[r];typeof e[u]===i&&(n[u]=e[u])}var c,s=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===a||typeof n(void 0,{type:o})===a)throw new Error("reducer "+t+" "+a)})}(n)}catch(e){c=e}return function(e,t){if(void 0===e&&(e={}),c)throw c;for(var r=!1,i={},o=0;o<s.length;o++){var u=s[o],f=e[u],d=(0,n[u])(f,t);if(typeof d===a){var p=l(u,t);throw new Error(p)}i[u]=d,r=r||d!==f}return r?i:e}}(r({},L,c)),re,H(J(d.apply(void 0,X))));ae.dispatch=(Z=ae.dispatch,function(e,t,n){var i=r({},e,{meta:ve(e.meta,t,he(n))});return Z.apply(null,[i])});var oe=Object.keys(P);ae.dispatch({type:w.bootstrap,plugins:oe,config:ee,params:B,user:V,initialUser:m,persistedUser:C});var ue=oe.filter(function(e){return g.pluginEnabled[e]}),se=oe.filter(function(e){return!g.pluginEnabled[e]});return ae.dispatch({type:w.registerPlugins,plugins:oe,enabled:g.pluginEnabled}),g.pluginsArray.map(function(e,t){var r=e.bootstrap,i=e.config,a=e.name;r&&n.isFunction(r)&&r({instance:D,config:i,payload:e}),ae.dispatch({type:w.registerPluginType(a),name:a,enabled:g.pluginEnabled[a],plugin:e}),g.pluginsArray.length===t+1&&ae.dispatch({type:w.initializeStart,plugins:ue,disabled:se})}),D}var be="before",Ie="after";exports.Analytics=ye,exports.CONSTANTS=h,exports.EVENTS=w,exports.default=ye,exports.init=ye;
//# sourceMappingURL=analytics-core.js.map

@@ -1,2 +0,2 @@

import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as s}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as u,isFunction as l,isBoolean as d,isString as p,isBrowser as f,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}const y="function",h="undefined",b="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */(()=>typeof Symbol===y&&Symbol.observable||"@@observable")(),I=" != "+y;function E(e,t,n){if(typeof t===y&&typeof n===h&&(n=t,t=void 0),typeof n!==h){if(typeof n!==y)throw new Error("enhancer"+I);return n(E)(e,t)}if(typeof e!==y)throw new Error("reducer"+I);let r=e,i=t,a=[],o=a,s=!1;function u(){o===a&&(o=a.slice())}function l(){return i}function d(e){if(typeof e!==y)throw new Error("Listener"+I);let t=!0;return u(),o.push(e),function(){if(!t)return;t=!1,u();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===h)throw new Error("ActType "+h);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:l,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+I);r=e,p({type:"@@redux/INIT"})},[w]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(l())}return n(),{unsubscribe:e(n)}},[w](){return this}}}}}function S(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+h}function v(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const P=u+"anon_id",N=u+"user_id",A=u+"user_traits";var _={__proto__:null,ANON_ID:P,USER_ID:N,USER_TRAITS:A};const O="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"];var $=x.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const j=/^utm_/,z=/^an_prop_/,M=/^an_trait_/;function q(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===$.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(P,a.anonymousId),c||t(N,a.userId),s.traits&&t(A,g({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(j)||t.match(/^(d|g)clid/)){const n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(z)&&(e.props[t.replace(z,"")]=r[t]),t.match(M)&&(e.traits[t.replace(M,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:$.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:$.campaign,campaign:a.campaign})}}return r(i)}}function V(e){return function(t={},n={}){if(n.type===$.setItemEnd){if(n.key===P)return g({},t,{anonymousId:n.value});if(n.key===N)return g({},t,{userId:n.value})}switch(n.type){case $.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case $.reset:return[N,P,A].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(N),anonymousId:e.getItem(P),traits:e.getItem(A)}}const U=e=>u+"TEMP"+u+e;function R(t){const{setItem:n,removeItem:r,getItem:a}=t.storage;return t=>o=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===$.reset&&([N,A,P].forEach(e=>{r(e)}),[O,k,"traits"].forEach(e=>{i(U(e))})),s.type===$.identify){a(P)||n(P,e());const r=a(N),i=a(A)||{};r&&r!==c&&t.dispatch({type:$.userIdChanged,old:{userId:r,traits:i},new:{userId:c,traits:u},options:l}),c&&n(N,c),u&&n(A,g({},i,u))}return o(s)}}const D={};function B(e,t){D[e]&&l(D[e])&&(D[e](t),delete D[e])}function L(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>L(e,t,n-10).then(r,i)))}const J=/Start$/,X=/^bootstrap/,H=/^ready/;async function W({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:u,context:d}=r,p=t.type,f=p.match(J);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const y=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(J)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&ee(o)?o:n;if(r&&(c=o&&ee(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return g({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:re(n),instance:e,config:a||{},abort:c}}}(n,m),h=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!u[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,d=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!l(t.method))return a;!function(e,t){const n=ne(e);if(n&&n.name===t){const r=ne(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(d=a,f=s,m=t.pluginName,function(e,t){return g({},d,{abort:{reason:e,plugins:t||[f],caller:p,from:m||f}})}),config:G(t.pluginName,u,i),plugins:u});var d,f,m;const y=c(o)?o:{};return Promise.resolve(g({},a,y))},Promise.resolve(t));d[s]=r}else d[s]=t;return Promise.resolve(d)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:l}=r,d=i[l],m=await t;let w=b[l]?b[l]:{};if(f&&(w=m),Y(w,l))return F({data:w,method:p,instance:n,pluginName:l,store:o}),Promise.resolve(m);if(Y(m,l))return s&&F({data:m,method:p,instance:n,store:o}),Promise.resolve(m);if(h.hasOwnProperty(l)&&!0===h[l])return o.dispatch({type:"queue",plugin:l,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=y(b[l],i[l]),E=await d[p]({abort:I.abort,payload:w,instance:n,config:G(l,u,i),plugins:u}),S=g({},m,c(E)?E:{}),v=b[l];if(Y(v,l))F({data:v,method:p,instance:n,pluginName:l,store:o});else{const e=`${p}:${l}`;(e.match(/:/g)||[]).length<2&&!p.match(X)&&!p.match(H)&&n.dispatch(g({},f?S:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(S)},Promise.resolve(t));if(!(p.match(J)||p.match(/^registerPlugin/)||p.match(H)||p.match(X)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),w._&&w._.originalAction===p)return w;let t=g({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});Z(w,e.exact.length)&&!p.match(/End$/)&&(t=g({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function F({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(g({},e,{type:i,_:{called:i,from:"abort"}}))}function G(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function K(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function Q(e,t){const n=e.replace(J,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function Y({abort:e},t){return!!e&&(!0===e||te(e,t)||e&&te(e.plugins,t))}function Z({abort:e},t){if(!e)return!1;if(!0===e||p(e))return!0;const{plugins:n}=e;return ee(e)&&e.length===t||ee(n)&&n.length===t}function ee(e){return Array.isArray(e)}function te(e,t){return!(!e||!ee(e))&&e.includes(t)}function ne(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function re(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t),{})}function ie(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let p=o;if(c)return a(o);if(s===$.enablePlugin&&i.dispatch({type:$.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===$.disablePlugin&&setTimeout(()=>B(o.meta.rid,{payload:o}),0),s===$.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return L(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:$.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!T.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(g({},{type:$.ready},t))},0)})}if(s!==$.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>function(e,t,n){const r=t(),{plugins:i,context:a,queue:o,user:s}=e.getState();if(!a.offline&&o&&o.actions&&o.actions.length){const t=o.actions.reduce((e,t,n)=>(i[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const a=o.actions[t],c=a.plugin,u=a.payload.type,d=r[c][u];if(d&&l(d)){const t=function(e={},t={}){return[O,k].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(a.payload,s);d({payload:t,config:i[c].config,instance:n});const r=`${u}:${c}`;e.dispatch(g({},t,{type:r,_:{called:r,from:"queueDrain"}}))}});const a=o.actions.filter((e,n)=>!~t.processIndex.indexOf(n));o.actions=a}}}(i,t,e),0);const r=await async function(e,t,n,r,i){const a=l(t)?t():t,o=e.type,s=o.replace(J,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return d(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===$.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const p=u.map(e=>e.name),f=function(e,t,n){const r=Q(e).map(e=>K(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=Q(e,i),[o,s,c]=a.map(e=>K(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await W({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});if(Z(m,p.length))return m;let y;if(y=o===s?m:await W({action:g({},m,{type:s}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i}),o.match(J)){const e=`${s}End`,t=await W({action:g({},y,{type:e}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&B(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(p)}}function ae(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===$.setItem||r===$.removeItem){if(n.abort)return t(n);r===$.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class oe{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return v(...this[e].map(e=>e(i)))(n)(r)}}}function se(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=ce(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=ce(n.type,$.initialize),a=e()[i];return a&&i?(r[i]=g({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case $.disablePlugin:return g({},t,ue(n.plugins,!1,t));case $.enablePlugin:return g({},t,ue(n.plugins,!0,t));default:return t}}}function ce(e,t){return e.substring(t.length+1,e.length)}function ue(e,t,n){return e.reduce((e,r)=>(e[r]=g({},n[r],{enabled:t}),e),n)}function le(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const de={last:{},history:[]};function pe(e=de,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===$.track){const t=le(g({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return g({},e,{last:t,history:e.history.concat(t)})}return e}const fe={actions:[]};function me(e=fe,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===$.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:n});case"dequeue":return[];default:return e}}const ge=/#.*$/;function ye(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ge,""):"")}const he=(e={})=>{if(!f)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!f)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ge,"")}(s),u={title:t,url:c,path:ye(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),g({},u,e)},be={last:{},history:[]};function we(e=be,t){const{properties:n,options:r,meta:i}=t;if(t.type===$.page){const t=le(g({properties:n,meta:i},Object.keys(r).length&&{options:r}));return g({},e,{last:t,history:e.history.concat(t)})}return e}let Ie,Ee;Ie="na",Ee={};const Se={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!f&&!navigator.onLine,os:{name:"na"},userAgent:f?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:Ee};function ve(e=Se,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case $.campaign:return g({},e,{campaign:i});case $.offline:return g({},e,{offline:!0});case $.online:return g({},e,{offline:!1});default:return n?e:g({},Se,e,{initialized:!0})}}const Pe=["plugins","reducers","storage"];function Ne(){return a("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(o[s].analytics.push(e.action||e),a(e))})}}function Ae(e){return function(){return v(v.apply(null,arguments),Ne())}}function _e(e){return e?m(e)?e:[e]:[]}function Oe(t={},n,r){const i=e();var a,o;return n&&(D[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(l(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),g({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function ke(o={}){const s=o.reducers||{},u=o.initialUser||{},d=(o.plugins||[]).reduce((e,t)=>{if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=F,r.apply({instance:F},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},w=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:C(e)[t]||r(U(t))||null)}}(m);let I=d.plugins;const N=d.events.filter(e=>!T.includes(e)).sort(),A=new Set(N.concat(x).filter(e=>!T.includes(e))),_=Array.from(A).sort(),j=()=>I,{addMiddleware:z,removeMiddleware:M,dynamicMiddlewares:D}=new oe,B=()=>{throw new Error("Abort disabled inListener")},L=t(),J=C(m),X=g({},J,u,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});X.anonymousId||(X.anonymousId=e());const H=g({enable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.enablePlugin,plugins:_e(e),_:{originalAction:$.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.disablePlugin,plugins:_e(e),_:{originalAction:$.disablePlugin}},n,[t])})},d.methods);let W=!1;const F={identify:async(e,t,n,r)=>{const i=p(e)?e:null,o=c(e)?e:t,s=n||{},u=F.user();a(U(O),i);const l=i||o.userId||w(O,F,o);return new Promise(e=>{ne.dispatch(g({type:$.identifyStart,userId:l,traits:o||{},options:s,anonymousId:u.anonymousId},u.id&&u.id!==i&&{previousId:u.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=c(e)?e.event:e;if(!i||!p(i))throw new Error("EventMissing");const a=c(e)?e:t||{},o=c(n)?n:{};return new Promise(e=>{ne.dispatch({type:$.trackStart,event:i,properties:a,options:o,userId:w(O,F,t),anonymousId:w(k,F,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=c(e)?e:{},i=c(t)?t:{};return new Promise(a=>{ne.dispatch({type:$.pageStart,properties:he(r),options:i,userId:w(O,F,r),anonymousId:w(k,F,r)},a,[e,t,n])})},user:e=>{if(e===O||"id"===e)return w(O,F);if(e===k||"anonId"===e)return w(k,F);const t=F.getState("user");return e?n(t,e):t},reset:e=>new Promise(t=>{ne.dispatch({type:$.resetStart},t,e)}),ready:e=>(W&&e({plugins:H,instance:F}),F.on($.ready,t=>{e(t),W=!0})),on:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:F,plugins:I}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:F,plugins:I}),e(r));return z(e,xe),z(r,Te),()=>{M(e,xe),M(r,Te)}}const r=e.match(n)?xe:Te,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:F,plugins:I,abort:B}),n(r));return z(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".once disabled for "+e);const n=F.on(e,({payload:e})=>{t({payload:e,instance:F,plugins:I,abort:B}),n()});return n},getState:e=>{const t=ne.getState();return e?n(t,e):Object.assign({},t)},dispatch:e=>{const t=p(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);const n=g({},t,{_:g({originalAction:t.type},e._||{})});ne.dispatch(n)},enablePlugin:H.enable,disablePlugin:H.disable,plugins:H,storage:{getItem:m.getItem,setItem:(e,t,n)=>{ne.dispatch({type:$.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{ne.dispatch({type:$.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{F.storage.setItem(P,e,t)},events:{core:x,plugins:N}},G=d.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=Oe()),e(t)),D(xe),ie(F,j,{all:_,plugins:N}),ae(m),q(F),R(F),D(Te)]),K={context:ve,user:V(m),page:we,track:pe,plugins:se(j),queue:me};let Q=v,Y=v;if(f&&o.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Q=e({trace:!0,traceLimit:25})),Y=function(){return 0===arguments.length?Ne():c(typeof arguments[0])?Ae():Ae().apply(null,arguments)}}const Z=function(e){return Object.keys(e).reduce((t,n)=>(Pe.includes(n)||(t[n]=e[n]),t),{})}(o),ee=d.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=d.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),te={context:Z,user:X,plugins:ee},ne=E(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===y&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===h||typeof n(void 0,{type:b})===h)throw new Error("reducer "+t+" "+h)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===h){const e=S(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(g({},K,s)),te,Y(Q(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=v(...s)(a.dispatch),g({},a,{dispatch:o})}}(...G))));var re;ne.dispatch=(re=ne.dispatch,function(e,t,n){const r=g({},e,{meta:Oe(e.meta,t,_e(n))});return re.apply(null,[r])});const ce=Object.keys(I);ne.dispatch({type:$.bootstrap,plugins:ce,config:Z,params:L,user:X,initialUser:u,persistedUser:J});const ue=ce.filter(e=>d.pluginEnabled[e]),le=ce.filter(e=>!d.pluginEnabled[e]);return ne.dispatch({type:$.registerPlugins,plugins:ce,enabled:d.pluginEnabled}),d.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&l(n)&&n({instance:F,config:r,payload:e}),ne.dispatch({type:$.registerPluginType(i),name:i,enabled:d.pluginEnabled[i],plugin:e}),d.pluginsArray.length===t+1&&ne.dispatch({type:$.initializeStart,plugins:ue,disabled:le})}),F}const xe="before",Te="after";export{ke as Analytics,_ as CONSTANTS,$ as EVENTS,ke as default,ke as init};
import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as s}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as u,isFunction as l,isBoolean as d,isString as p,isBrowser as f,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}const y="function",h="undefined",b="@@redux/"+Math.random().toString(36),w=/* #__PURE__ */(()=>typeof Symbol===y&&Symbol.observable||"@@observable")(),I=" != "+y;function E(e,t,n){if(typeof t===y&&typeof n===h&&(n=t,t=void 0),typeof n!==h){if(typeof n!==y)throw new Error("enhancer"+I);return n(E)(e,t)}if(typeof e!==y)throw new Error("reducer"+I);let r=e,i=t,a=[],o=a,s=!1;function u(){o===a&&(o=a.slice())}function l(){return i}function d(e){if(typeof e!==y)throw new Error("Listener"+I);let t=!0;return u(),o.push(e),function(){if(!t)return;t=!1,u();const n=o.indexOf(e);o.splice(n,1)}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===h)throw new Error("ActType "+h);if(s)throw new Error("Dispatch in reducer");try{s=!0,i=r(i,e)}finally{s=!1}const t=a=o;for(let e=0;e<t.length;e++)(0,t[e])();return e}return p({type:"@@redux/INIT"}),{dispatch:p,subscribe:d,getState:l,replaceReducer:function(e){if(typeof e!==y)throw new Error("next reducer"+I);r=e,p({type:"@@redux/INIT"})},[w]:function(){const e=d;return{subscribe(t){if("object"!=typeof t)throw new TypeError("Observer != obj");function n(){t.next&&t.next(l())}return n(),{unsubscribe:e(n)}},[w](){return this}}}}}function v(e,t){const n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+h}function S(...e){return 0===e.length?e=>e:1===e.length?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}const P=u+"anon_id",N=u+"user_id",A=u+"user_traits";var _={__proto__:null,ANON_ID:P,USER_ID:N,USER_TRAITS:A};const O="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"];var $=x.reduce((e,t)=>(e[t]=t,e),{registerPluginType:e=>`registerPlugin:${e}`,pluginReadyType:e=>`ready:${e}`});const j=/^utm_/,z=/^an_prop_/,M=/^an_trait_/;function q(e){const{setItem:t}=e.storage;return n=>r=>i=>{if(i.type===$.bootstrap){const{params:r,user:a,persistedUser:o,initialUser:s}=i,c=o.userId===a.userId;o.anonymousId!==a.anonymousId&&t(P,a.anonymousId),c||t(N,a.userId),s.traits&&t(A,g({},c&&o.traits?o.traits:{},s.traits));const u=Object.keys(i.params);if(u.length){const{an_uid:t,an_event:i}=r,a=u.reduce((e,t)=>{if(t.match(j)||t.match(/^(d|g)clid/)){const n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=r[t]}return t.match(z)&&(e.props[t.replace(z,"")]=r[t]),t.match(M)&&(e.traits[t.replace(M,"")]=r[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:$.params,raw:r},a,t?{userId:t}:{})),t&&setTimeout(()=>e.identify(t,a.traits),0),i&&setTimeout(()=>e.track(i,a.props),0),Object.keys(a.campaign).length&&n.dispatch({type:$.campaign,campaign:a.campaign})}}return r(i)}}function V(e){return function(t={},n={}){if(n.type===$.setItemEnd){if(n.key===P)return g({},t,{anonymousId:n.value});if(n.key===N)return g({},t,{userId:n.value})}switch(n.type){case $.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case $.reset:return[N,P,A].forEach(t=>{e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function C(e){return{userId:e.getItem(N),anonymousId:e.getItem(P),traits:e.getItem(A)}}const U=e=>u+"TEMP"+u+e;function R(t){const{setItem:n,removeItem:r,getItem:a}=t.storage;return t=>o=>s=>{const{userId:c,traits:u,options:l}=s;if(s.type===$.reset&&([N,A,P].forEach(e=>{r(e)}),[O,k,"traits"].forEach(e=>{i(U(e))})),s.type===$.identify){a(P)||n(P,e());const r=a(N),i=a(A)||{};r&&r!==c&&t.dispatch({type:$.userIdChanged,old:{userId:r,traits:i},new:{userId:c,traits:u},options:l}),c&&n(N,c),u&&n(A,g({},i,u))}return o(s)}}const D={};function B(e,t){D[e]&&l(D[e])&&(D[e](t),delete D[e])}function L(e,t,n){return new Promise((r,i)=>t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(e=>setTimeout(e,10)).then(a=>L(e,t,n-10).then(r,i)))}function J(e){return{abort:e}}function X(e,t,n){const r={},i=t(),{plugins:a,context:o,queue:s,user:u}=e.getState();if(!o.offline&&s&&s.actions&&s.actions.length){const t=s.actions.reduce((e,t,n)=>(a[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e),{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(t.processIndex&&t.processIndex.length){t.processIndex.forEach(t=>{const o=s.actions[t],d=o.plugin,p=o.payload.type,f=i[d][p];if(f&&l(f)){const t=function(e={},t={}){return[O,k].reduce((n,r)=>(e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n),e)}(o.payload,u);let i;const s=r[t.meta.rid];if(!s&&(i=f({payload:t,config:a[d].config,instance:n,abort:J}),i&&c(i)&&i.abort))return void(r[t.meta.rid]=!0);if(!s){const n=`${p}:${d}`;e.dispatch(g({},t,{type:n,_:{called:n,from:"queueDrain"}}))}}});const o=s.actions.filter((e,n)=>!~t.processIndex.indexOf(n));s.actions=o}}}const H=/Start$/,W=/^bootstrap/,F=/^ready/;async function G({data:e,action:t,instance:n,state:r,allPlugins:i,allMatches:a,store:o,EVENTS:s}){const{plugins:u,context:d}=r,p=t.type,f=p.match(H);let m=e.exact.map(e=>e.pluginName);f&&(m=a.during.map(e=>e.pluginName));const y=function(e,t){return function(n,r,i){const{config:a,name:o}=r;let s=`${o}.${n.type}`;i&&(s=i.event);const c=n.type.match(H)?function(e,t,n,r,i){return function(a,o){const s=r?r.name:e;let c=o&&ne(o)?o:n;if(r&&(c=o&&ne(o)?o:[e],!c.includes(e)||1!==c.length))throw new Error(`Method ${t} can only abort ${e} plugin. ${JSON.stringify(c)} input valid`);return g({},i,{abort:{reason:a,plugins:c,caller:t,_:s}})}}(o,s,t,i,n):function(e,t){return()=>{throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,s);return{payload:ae(n),instance:e,config:a||{},abort:c}}}(n,m),h=e.exact.reduce((e,t)=>{const{pluginName:n,methodName:r}=t;let i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!u[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[`${n}`]=i,e},{}),b=await e.exact.reduce(async(r,a,o)=>{const{pluginName:s}=a,d=await r;if(e.namespaced&&e.namespaced[s]){const r=await e.namespaced[s].reduce(async(e,t,r)=>{const a=await e;if(!t.method||!l(t.method))return a;!function(e,t){const n=ie(e);if(n&&n.name===t){const r=ie(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self",`Use ${n.method} ${r?"or "+r.method:""} in ${t} plugin insteadof ${e}`].join("\n"))}}(t.methodName,t.pluginName);const o=await t.method({payload:a,instance:n,abort:(d=a,f=s,m=t.pluginName,function(e,t){return g({},d,{abort:{reason:e,plugins:t||[f],caller:p,from:m||f}})}),config:Q(t.pluginName,u,i),plugins:u});var d,f,m;const y=c(o)?o:{};return Promise.resolve(g({},a,y))},Promise.resolve(t));d[s]=r}else d[s]=t;return Promise.resolve(d)},Promise.resolve({})),w=await e.exact.reduce(async(t,r,a)=>{const s=e.exact.length===a+1,{pluginName:l}=r,d=i[l],m=await t;let w=b[l]?b[l]:{};if(f&&(w=m),ee(w,l))return K({data:w,method:p,instance:n,pluginName:l,store:o}),Promise.resolve(m);if(ee(m,l))return s&&K({data:m,method:p,instance:n,store:o}),Promise.resolve(m);if(h.hasOwnProperty(l)&&!0===h[l])return o.dispatch({type:"queue",plugin:l,payload:w,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(m);const I=y(b[l],i[l]),E=await d[p]({abort:I.abort,payload:w,instance:n,config:Q(l,u,i),plugins:u}),v=g({},m,c(E)?E:{}),S=b[l];if(ee(S,l))K({data:S,method:p,instance:n,pluginName:l,store:o});else{const e=`${p}:${l}`;(e.match(/:/g)||[]).length<2&&!p.match(W)&&!p.match(F)&&n.dispatch(g({},f?v:w,{type:e,_:{called:e,from:"submethod"}}))}return Promise.resolve(v)},Promise.resolve(t));if(!(p.match(H)||p.match(/^registerPlugin/)||p.match(F)||p.match(W)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),w._&&w._.originalAction===p)return w;let t=g({},w,{_:{originalAction:w.type,called:w.type,from:"engineEnd"}});te(w,e.exact.length)&&!p.match(/End$/)&&(t=g({},t,{type:w.type+"Aborted"})),o.dispatch(t)}return w}function K({data:e,method:t,pluginName:n,store:r}){const i=t+"Aborted"+(n?":"+n:"");r.dispatch(g({},e,{type:i,_:{called:i,from:"abort"}}))}function Q(e,t,n){const r=t[e]||n[e];return r&&r.config?r.config:{}}function Y(e,t){return t.reduce((t,n)=>n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t,[])}function Z(e,t){const n=e.replace(H,""),r=t?`:${t}`:"";return[`${e}${r}`,`${n}${r}`,`${n}End${r}`]}function ee({abort:e},t){return!!e&&(!0===e||re(e,t)||e&&re(e.plugins,t))}function te({abort:e},t){if(!e)return!1;if(!0===e||p(e))return!0;const{plugins:n}=e;return ne(e)&&e.length===t||ne(n)&&n.length===t}function ne(e){return Array.isArray(e)}function re(e,t){return!(!e||!ne(e))&&e.includes(t)}function ie(e){const t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function ae(e){return Object.keys(e).reduce((t,n)=>("type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t),{})}function oe(e,t,n){const r={};return i=>a=>async o=>{const{type:s,abort:c,plugins:u}=o;let p=o;if(c)return a(o);if(s===$.enablePlugin&&i.dispatch({type:$.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:o.meta}),s===$.disablePlugin&&setTimeout(()=>B(o.meta.rid,{payload:o}),0),s===$.initializeEnd){const e=t(),n=Object.keys(e),a=n.filter(e=>u.includes(e)).map(t=>e[t]);let s=[],c=[],l=o.disabled;const d=a.map(e=>{const{loaded:t,name:n,config:a}=e;return L(e,()=>t({config:a}),1e4).then(t=>(r[n]||(i.dispatch({type:$.pluginReadyType(n),name:n,events:Object.keys(e).filter(e=>!T.includes(e))}),r[n]=!0),s=s.concat(n),e)).catch(e=>{if(e instanceof Error)throw new Error(e);return c=c.concat(e.name),e})});Promise.all(d).then(e=>{const t={plugins:s,failed:c,disabled:l};setTimeout(()=>{n.length===d.length+l.length&&i.dispatch(g({},{type:$.ready},t))},0)})}if(s!==$.bootstrap){/^ready:([^:]*)$/.test(s)&&setTimeout(()=>X(i,t,e),0);const r=await async function(e,t,n,r,i){const a=l(t)?t():t,o=e.type,s=o.replace(H,"");if(e._&&e._.called)return e;const c=n.getState();let u=function(e,t={},n={}){return Object.keys(e).filter(e=>{const r=n.plugins||{};return d(r[e])?r[e]:!1!==r.all&&(!t[e]||!1!==t[e].enabled)}).map(t=>e[t])}(a,c.plugins,e.options);o===$.initializeStart&&e.fromEnable&&(u=Object.keys(c.plugins).filter(t=>{const n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(e=>a[e]));const p=u.map(e=>e.name),f=function(e,t,n){const r=Z(e).map(e=>Y(e,t));return t.reduce((n,r)=>{const{name:i}=r,a=Z(e,i),[o,s,c]=a.map(e=>Y(e,t));return o.length&&(n.beforeNS[i]=o),s.length&&(n.duringNS[i]=s),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,u),m=await G({action:e,data:{exact:f.before,namespaced:f.beforeNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});if(te(m,p.length))return m;let y;if(y=o===s?m:await G({action:g({},m,{type:s}),data:{exact:f.during,namespaced:f.duringNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i}),o.match(H)){const e=`${s}End`,t=await G({action:g({},y,{type:e}),data:{exact:f.after,namespaced:f.afterNS},state:c,allPlugins:a,allMatches:f,instance:n,store:r,EVENTS:i});t.meta&&t.meta.hasCallback&&B(t.meta.rid,{payload:t})}return m}(o,t,e,i,n);return a(r)}return a(p)}}function se(e){return t=>t=>n=>{const{type:r,key:i,value:a,options:o}=n;if(r===$.setItem||r===$.removeItem){if(n.abort)return t(n);r===$.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}class ce{constructor(){this.before=[],this.after=[],this.addMiddleware=(e,t)=>{this[t]=this[t].concat(e)},this.removeMiddleware=(e,t)=>{const n=this[t].findIndex(t=>t===e);-1!==n&&(this[t]=[...this[t].slice(0,n),...this[t].slice(n+1)])},this.dynamicMiddlewares=e=>t=>n=>r=>{const i={getState:t.getState,dispatch:e=>t.dispatch(e)};return S(...this[e].map(e=>e(i)))(n)(r)}}}function ue(e){return function(t={},n){let r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){const i=le(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;const o=n.enabled,s=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:s})),config:s},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){const i=le(n.type,$.initialize),a=e()[i];return a&&i?(r[i]=g({},t[i],{initialized:!0,loaded:Boolean(a.loaded({config:a.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case $.disablePlugin:return g({},t,de(n.plugins,!1,t));case $.enablePlugin:return g({},t,de(n.plugins,!0,t));default:return t}}}function le(e,t){return e.substring(t.length+1,e.length)}function de(e,t,n){return e.reduce((e,r)=>(e[r]=g({},n[r],{enabled:t}),e),n)}function pe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}const fe={last:{},history:[]};function me(e=fe,t){const{type:n,event:r,properties:i,options:a,meta:o}=t;if(n===$.track){const t=pe(g({event:r,properties:i},Object.keys(a).length&&{options:a},{meta:o}));return g({},e,{last:t,history:e.history.concat(t)})}return e}const ge={actions:[]};function ye(e=ge,t){const{type:n,payload:r}=t;switch(n){case"queue":let n;return n=r&&r.type&&r.type===$.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:n});case"dequeue":return[];default:return e}}const he=/#.*$/;function be(e){const t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(he,""):"")}const we=(e={})=>{if(!f)return e;const{title:t,referrer:n}=document,{location:r,innerWidth:i,innerHeight:a}=window,{hash:o,search:s}=r,c=function(e){const t=function(){if(!f)return;const e=document.getElementsByTagName("link");for(var t,n=0;t=e[n];n++)if("canonical"===t.getAttribute("rel"))return t.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(he,"")}(s),u={title:t,url:c,path:be(c),hash:o,search:s,width:i,height:a};return n&&""!==n&&(u.referrer=n),g({},u,e)},Ie={last:{},history:[]};function Ee(e=Ie,t){const{properties:n,options:r,meta:i}=t;if(t.type===$.page){const t=pe(g({properties:n,meta:i},Object.keys(r).length&&{options:r}));return g({},e,{last:t,history:e.history.concat(t)})}return e}let ve,Se;ve="na",Se={};const Pe={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!f&&!navigator.onLine,os:{name:"na"},userAgent:f?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:Se};function Ne(e=Pe,t){const{initialized:n}=e,{type:r,campaign:i}=t;switch(r){case $.campaign:return g({},e,{campaign:i});case $.offline:return g({},e,{offline:!0});case $.online:return g({},e,{offline:!1});default:return n?e:g({},Pe,e,{initialized:!0})}}const Ae=["plugins","reducers","storage"];function _e(){return a("analytics",[]),e=>(t,n,r)=>{const i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:e=>(o[s].analytics.push(e.action||e),a(e))})}}function Oe(e){return function(){return S(S.apply(null,arguments),_e())}}function ke(e){return e?m(e)?e:[e]:[]}function xe(t={},n,r){const i=e();var a,o;return n&&(D[i]=(a=n,o=function(e){const t=e||Array.prototype.slice.call(arguments);let n;for(let e=0;e<t.length;e++)if(l(t[e])){n=t[e];break}return n}(r),e=>{o&&o(e),a(e)})),g({},t,{rid:i,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Te(o={}){const s=o.reducers||{},u=o.initialUser||{},d=(o.plugins||[]).reduce((e,t)=>{if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});const n=t.EVENTS?Object.keys(t.EVENTS).map(e=>t.EVENTS[e]):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce((e,n)=>{var r;return e[n]=(r=t.methods[n],function(){const e=Array.prototype.slice.call(arguments);let t=new Array(r.length);for(let n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=F,r.apply({instance:F},t)}),e},{}),delete t.methods);const r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=()=>!0),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},w=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:C(e)[t]||r(U(t))||null)}}(m);let I=d.plugins;const N=d.events.filter(e=>!T.includes(e)).sort(),A=new Set(N.concat(x).filter(e=>!T.includes(e))),_=Array.from(A).sort(),j=()=>I,{addMiddleware:z,removeMiddleware:M,dynamicMiddlewares:D}=new ce,B=()=>{throw new Error("Abort disabled inListener")},L=t(),J=C(m),X=g({},J,u,L.an_uid?{userId:L.an_uid}:{},L.an_aid?{anonymousId:L.an_aid}:{});X.anonymousId||(X.anonymousId=e());const H=g({enable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.enablePlugin,plugins:ke(e),_:{originalAction:$.enablePlugin}},n,[t])}),disable:(e,t)=>new Promise(n=>{ne.dispatch({type:$.disablePlugin,plugins:ke(e),_:{originalAction:$.disablePlugin}},n,[t])})},d.methods);let W=!1;const F={identify:async(e,t,n,r)=>{const i=p(e)?e:null,o=c(e)?e:t,s=n||{},u=F.user();a(U(O),i);const l=i||o.userId||w(O,F,o);return new Promise(e=>{ne.dispatch(g({type:$.identifyStart,userId:l,traits:o||{},options:s,anonymousId:u.anonymousId},u.id&&u.id!==i&&{previousId:u.id}),e,[t,n,r])})},track:async(e,t,n,r)=>{const i=c(e)?e.event:e;if(!i||!p(i))throw new Error("EventMissing");const a=c(e)?e:t||{},o=c(n)?n:{};return new Promise(e=>{ne.dispatch({type:$.trackStart,event:i,properties:a,options:o,userId:w(O,F,t),anonymousId:w(k,F,t)},e,[t,n,r])})},page:async(e,t,n)=>{const r=c(e)?e:{},i=c(t)?t:{};return new Promise(a=>{ne.dispatch({type:$.pageStart,properties:we(r),options:i,userId:w(O,F,r),anonymousId:w(k,F,r)},a,[e,t,n])})},user:e=>{if(e===O||"id"===e)return w(O,F);if(e===k||"anonId"===e)return w(k,F);const t=F.getState("user");return e?n(t,e):t},reset:e=>new Promise(t=>{ne.dispatch({type:$.resetStart},t,e)}),ready:e=>(W&&e({plugins:H,instance:F}),F.on($.ready,t=>{e(t),W=!0})),on:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".on disabled for "+e);const n=/Start$|Start:/;if("*"===e){const e=e=>e=>r=>(r.type.match(n)&&t({payload:r,instance:F,plugins:I}),e(r)),r=e=>e=>r=>(r.type.match(n)||t({payload:r,instance:F,plugins:I}),e(r));return z(e,$e),z(r,je),()=>{M(e,$e),M(r,je)}}const r=e.match(n)?$e:je,i=n=>n=>r=>(r.type===e&&t({payload:r,instance:F,plugins:I,abort:B}),n(r));return z(i,r),()=>M(i,r)},once:(e,t)=>{if(!e||!l(t))return!1;if(e===$.bootstrap)throw new Error(".once disabled for "+e);const n=F.on(e,({payload:e})=>{t({payload:e,instance:F,plugins:I,abort:B}),n()});return n},getState:e=>{const t=ne.getState();return e?n(t,e):Object.assign({},t)},dispatch:e=>{const t=p(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);const n=g({},t,{_:g({originalAction:t.type},e._||{})});ne.dispatch(n)},enablePlugin:H.enable,disablePlugin:H.disable,plugins:H,storage:{getItem:m.getItem,setItem:(e,t,n)=>{ne.dispatch({type:$.setItemStart,key:e,value:t,options:n})},removeItem:(e,t)=>{ne.dispatch({type:$.removeItemStart,key:e,options:t})}},setAnonymousId:(e,t)=>{F.storage.setItem(P,e,t)},events:{core:x,plugins:N}},G=d.middlewares.concat([e=>e=>t=>(t.meta||(t.meta=xe()),e(t)),D($e),oe(F,j,{all:_,plugins:N}),se(m),q(F),R(F),D(je)]),K={context:Ne,user:V(m),page:Ee,track:me,plugins:ue(j),queue:ye};let Q=S,Y=S;if(f&&o.debug){const e=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;e&&(Q=e({trace:!0,traceLimit:25})),Y=function(){return 0===arguments.length?_e():c(typeof arguments[0])?Oe():Oe().apply(null,arguments)}}const Z=function(e){return Object.keys(e).reduce((t,n)=>(Ae.includes(n)||(t[n]=e[n]),t),{})}(o),ee=d.pluginsArray.reduce((e,t)=>{const{name:n,config:r,loaded:i}=t,a=d.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),te={context:Z,user:X,plugins:ee},ne=E(function(e){const t=Object.keys(e),n={};for(let r=0;r<t.length;r++){const i=t[r];typeof e[i]===y&&(n[i]=e[i])}const r=Object.keys(n);let i;try{!function(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===h||typeof n(void 0,{type:b})===h)throw new Error("reducer "+t+" "+h)})}(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1;const o={};for(let i=0;i<r.length;i++){const s=r[i],c=e[s],u=(0,n[s])(c,t);if(typeof u===h){const e=v(s,t);throw new Error(e)}o[s]=u,a=a||u!==c}return a?o:e}}(g({},K,s)),te,Y(Q(function(...e){return t=>(n,r,i)=>{const a=t(n,r,i);let o=a.dispatch,s=[];const c={getState:a.getState,dispatch:e=>o(e)};return s=e.map(e=>e(c)),o=S(...s)(a.dispatch),g({},a,{dispatch:o})}}(...G))));var re;ne.dispatch=(re=ne.dispatch,function(e,t,n){const r=g({},e,{meta:xe(e.meta,t,ke(n))});return re.apply(null,[r])});const ie=Object.keys(I);ne.dispatch({type:$.bootstrap,plugins:ie,config:Z,params:L,user:X,initialUser:u,persistedUser:J});const ae=ie.filter(e=>d.pluginEnabled[e]),le=ie.filter(e=>!d.pluginEnabled[e]);return ne.dispatch({type:$.registerPlugins,plugins:ie,enabled:d.pluginEnabled}),d.pluginsArray.map((e,t)=>{const{bootstrap:n,config:r,name:i}=e;n&&l(n)&&n({instance:F,config:r,payload:e}),ne.dispatch({type:$.registerPluginType(i),name:i,enabled:d.pluginEnabled[i],plugin:e}),d.pluginsArray.length===t+1&&ne.dispatch({type:$.initializeStart,plugins:ae,disabled:le})}),F}const $e="before",je="after";export{Te as Analytics,_ as CONSTANTS,$ as EVENTS,Te as default,Te as init};
//# sourceMappingURL=analytics-core.modern.js.map

@@ -1,2 +0,2 @@

import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as u}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as s,isFunction as l,isBoolean as f,isString as d,isBrowser as p,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}var h="function",v="undefined",y="@@redux/"+Math.random().toString(36),b=/* #__PURE__ */function(){return typeof Symbol===h&&Symbol.observable||"@@observable"}(),I=" != "+h;function w(e,t,n){var r;if(typeof t===h&&typeof n===v&&(n=t,t=void 0),typeof n!==v){if(typeof n!==h)throw new Error("enhancer"+I);return n(w)(e,t)}if(typeof e!==h)throw new Error("reducer"+I);var i=e,a=t,o=[],u=o,s=!1;function l(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==h)throw new Error("Listener"+I);var t=!0;return l(),u.push(e),function(){if(t){t=!1,l();var n=u.indexOf(e);u.splice(n,1)}}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===v)throw new Error("ActType "+v);if(s)throw new Error("Dispatch in reducer");try{s=!0,a=i(a,e)}finally{s=!1}for(var t=o=u,n=0;n<t.length;n++)(0,t[n])();return e}return p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==h)throw new Error("next reducer"+I);i=e,p({type:"@@redux/INIT"})}})[b]=function(){var e,t=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(f())}return n(),{unsubscribe:t(n)}}})[b]=function(){return this},e},r}function E(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+v}function P(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function S(){var e=arguments;return function(t){return function(n,r,i){var a,o=t(n,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),g({},o,{dispatch:u=P.apply(void 0,a)(o.dispatch)})}}}var N=s+"anon_id",A=s+"user_id",_=s+"user_traits",O={__proto__:null,ANON_ID:N,USER_ID:A,USER_TRAITS:_},j="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"],z=x.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),M=/^utm_/,q=/^an_prop_/,V=/^an_trait_/;function C(e){var t=e.storage.setItem;return function(n){return function(r){return function(i){if(i.type===z.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&t(N,o.anonymousId),s||t(A,o.userId),c.traits&&t(_,g({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,t){if(t.match(M)||t.match(/^(d|g)clid/)){var n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=a[t]}return t.match(q)&&(e.props[t.replace(q,"")]=a[t]),t.match(V)&&(e.traits[t.replace(V,"")]=a[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:z.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&n.dispatch({type:z.campaign,campaign:p.campaign})}}return r(i)}}}}function U(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===z.setItemEnd){if(n.key===N)return g({},t,{anonymousId:n.value});if(n.key===A)return g({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case z.reset:return[A,N,_].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function R(e){return{userId:e.getItem(A),anonymousId:e.getItem(N),traits:e.getItem(_)}}var $=function(e){return s+"TEMP"+s+e};function D(t){var n=t.storage,r=n.setItem,a=n.removeItem,o=n.getItem;return function(t){return function(n){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===z.reset&&([A,_,N].forEach(function(e){a(e)}),[j,k,"traits"].forEach(function(e){i($(e))})),u.type===z.identify){o(N)||r(N,e());var f=o(A),d=o(_)||{};f&&f!==c&&t.dispatch({type:z.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(A,c),s&&r(_,g({},d,s))}return n(u)}}}}var B={};function L(e,t){B[e]&&l(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise(function(r,i){return t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return J(e,t,n-10).then(r,i)})})}var X=function(e){var t=e.data,n=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,s=e.EVENTS;try{var f=i.plugins,d=i.context,p=n.type,m=p.match(H),h=t.exact.map(function(e){return e.pluginName});m&&(h=o.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(n,r,i){var a=r.config,o=r.name,u=o+"."+n.type;i&&(u=i.event);var c=n.type.match(H)?function(e,t,n,r,i){return function(a,o){var u=r?r.name:e,c=o&&te(o)?o:n;if(r&&(!(c=o&&te(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return g({},i,{abort:{reason:a,plugins:c,caller:t,_:u}})}}(o,u,t,i,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,u);return{payload:ie(n),instance:e,config:a||{},abort:c}}}(r,h),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(t.namespaced&&t.namespaced[u])return Promise.resolve(t.namespaced[u].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&l(t.method)?(function(e,t){var n=re(e);if(n&&n.name===t){var r=re(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:r,abort:(n=e,i=u,o=t.pluginName,function(e,t){return g({},n,{abort:{reason:e,plugins:t||[i],caller:p,from:o||i}})}),config:K(t.pluginName,f,a),plugins:f})).then(function(t){var n=c(t)?t:{};return Promise.resolve(g({},e,n))})):e;var n,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[u]=t});e[u]=n}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,i,o){try{var s=t.exact.length===o+1,l=i.pluginName,d=a[l];return Promise.resolve(n).then(function(t){var n=e[l]?e[l]:{};if(m&&(n=t),Z(n,l))return G({data:n,method:p,instance:r,pluginName:l,store:u}),Promise.resolve(t);if(Z(t,l))return s&&G({data:t,method:p,instance:r,store:u}),Promise.resolve(t);if(y.hasOwnProperty(l)&&!0===y[l])return u.dispatch({type:"queue",plugin:l,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var i=v(e[l],a[l]);return Promise.resolve(d[p]({abort:i.abort,payload:n,instance:r,config:K(l,f,a),plugins:f})).then(function(i){var a=c(i)?i:{},o=g({},t,a),s=e[l];if(Z(s,l))G({data:s,method:p,instance:r,pluginName:l,store:u});else{var f=p+":"+l;(f.match(/:/g)||[]).length<2&&!p.match(W)&&!p.match(F)&&r.dispatch(g({},m?o:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(H)||p.match(/^registerPlugin/)||p.match(F)||p.match(W)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=g({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});ee(e,t.exact.length)&&!p.match(/End$/)&&(n=g({},n,{type:e.type+"Aborted"})),u.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},H=/Start$/,W=/^bootstrap/,F=/^ready/;function G(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(g({},e.data,{type:n,_:{called:n,from:"abort"}}))}function K(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function Q(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function Y(e,t){var n=e.replace(H,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function Z(e,t){var n=e.abort;return!!n&&(!0===n||ne(n,t)||n&&ne(n.plugins,t))}function ee(e,t){var n=e.abort;if(!n)return!1;if(!0===n||d(n))return!0;var r=n.plugins;return te(n)&&n.length===t||te(r)&&r.length===t}function te(e){return Array.isArray(e)}function ne(e,t){return!(!e||!te(e))&&e.includes(t)}function re(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function ie(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t},{})}function ae(e,t,n){var r={};return function(i){return function(a){return function(o){try{var u,c=function(e){return u?e:a(p)},s=o.type,d=o.plugins,p=o;if(o.abort)return Promise.resolve(a(o));if(s===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:o.meta}),s===z.disablePlugin&&setTimeout(function(){return L(o.meta.rid,{payload:o})},0),s===z.initializeEnd){var m=t(),h=Object.keys(m),v=h.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],b=[],I=o.disabled,w=v.map(function(e){var t=e.loaded,n=e.name,a=e.config;return J(e,function(){return t({config:a})},1e4).then(function(t){return r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!T.includes(e)})}),r[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return b=b.concat(e.name),e})});Promise.all(w).then(function(e){var t={plugins:y,failed:b,disabled:I};setTimeout(function(){h.length===w.length+I.length&&i.dispatch(g({},{type:z.ready},t))},0)})}var E=function(){if(s!==z.bootstrap)return/^ready:([^:]*)$/.test(s)&&setTimeout(function(){return function(e,t,n){var r=t(),i=e.getState(),a=i.plugins,o=i.queue,u=i.user;if(!i.context.offline&&o&&o.actions&&o.actions.length){var c=o.actions.reduce(function(e,t,n){return a[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(c.processIndex&&c.processIndex.length){c.processIndex.forEach(function(t){var i=o.actions[t],c=i.plugin,s=i.payload.type,f=r[c][s];if(f&&l(f)){var d=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[j,k].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(i.payload,u);f({payload:d,config:a[c].config,instance:n});var p=s+":"+c;e.dispatch(g({},d,{type:p,_:{called:p,from:"queueDrain"}}))}});var s=o.actions.filter(function(e,t){return!~c.processIndex.indexOf(t)});o.actions=s}}}(i,t,e)},0),Promise.resolve(function(e,t,n,r,i){try{var a=l(t)?t():t,o=e.type,u=o.replace(H,"");if(e._&&e._.called)return Promise.resolve(e);var c=n.getState(),s=(m=a,void 0===(h=c.plugins)&&(h={}),void 0===(v=e.options)&&(v={}),Object.keys(m).filter(function(e){var t=v.plugins||{};return f(t[e])?t[e]:!1!==t.all&&(!h[e]||!1!==h[e].enabled)}).map(function(e){return m[e]}));o===z.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(t){var n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return a[e]}));var d=s.map(function(e){return e.name}),p=function(e,t,n){var r=Y(e).map(function(e){return Q(e,t)});return t.reduce(function(n,r){var i=r.name,a=Y(e,i).map(function(e){return Q(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,s);return Promise.resolve(X({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){function t(){var t=function(){if(o.match(H))return Promise.resolve(X({action:g({},s,{type:u+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&L(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(ee(e,d.length))return e;var s,l=function(){if(o!==u)return Promise.resolve(X({action:g({},e,{type:u}),data:{exact:p.during,namespaced:p.duringNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return l&&l.then?l.then(t):t()})}catch(e){return Promise.reject(e)}var m,h,v}(o,t,e,i,n)).then(function(e){return u=1,a(e)})}();return Promise.resolve(E&&E.then?E.then(c):c(E))}catch(e){return Promise.reject(e)}}}}}function oe(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ue=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return P.apply(void 0,o)(r)(i)}}}}};function ce(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var i=se(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;var o=n.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var c=se(n.type,z.initialize),s=e()[c];return s&&c?(r[c]=g({},t[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case z.disablePlugin:return g({},t,le(n.plugins,!1,t));case z.enablePlugin:return g({},t,le(n.plugins,!0,t));default:return t}}}function se(e,t){return e.substring(t.length+1,e.length)}function le(e,t,n){return e.reduce(function(e,r){return e[r]=g({},n[r],{enabled:t}),e},n)}function fe(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var de={last:{},history:[]};function pe(e,t){void 0===e&&(e=de);var n=t.options,r=t.meta;if(t.type===z.track){var i=fe(g({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return g({},e,{last:i,history:e.history.concat(i)})}return e}var me={actions:[]};function ge(e,t){void 0===e&&(e=me);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===z.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:r});case"dequeue":return[];default:return e}}var he=/#.*$/;function ve(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(he,""):"")}var ye,be=function(e){if(void 0===e&&(e={}),!p)return e;var t=document,n=t.title,r=t.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var t=function(){if(p)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(he,"")}(s),f={title:n,url:l,path:ve(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),g({},f,e)},Ie={last:{},history:[]};function we(e,t){void 0===e&&(e=Ie);var n=t.options;if(t.type===z.page){var r=fe(g({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return g({},e,{last:r,history:e.history.concat(r)})}return e}ye={};var Ee={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!p&&!navigator.onLine,os:{name:"na"},userAgent:p?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:ye};function Pe(e,t){void 0===e&&(e=Ee);var n=e.initialized,r=t.campaign;switch(t.type){case z.campaign:return g({},e,{campaign:r});case z.offline:return g({},e,{offline:!0});case z.online:return g({},e,{offline:!1});default:return n?e:g({},Ee,e,{initialized:!0})}}var Se=["plugins","reducers","storage"];function Ne(){return a("analytics",[]),function(e){return function(t,n,r){var i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return o[u].analytics.push(e.action||e),a(e)}})}}}function Ae(e){return function(){return P(P.apply(null,arguments),Ne())}}function _e(e){return e?m(e)?e:[e]:[]}function Oe(t,n,r){void 0===t&&(t={});var i,a,o=e();return n&&(B[o]=(i=n,a=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),r=0;r<n.length;r++)if(l(n[r])){t=n[r];break}return t}(r),function(e){a&&a(e),i(e)})),g({},t,{rid:o,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function je(o){void 0===o&&(o={});var u=o.reducers||{},s=o.initialUser||{},f=(o.plugins||[]).reduce(function(e,t){if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=K,r.apply({instance:K},t)}),e},{}),delete t.methods);var r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},b=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:R(e)[t]||r($(t))||null)}}(m),I=f.plugins,A=f.events.filter(function(e){return!T.includes(e)}).sort(),_=new Set(A.concat(x).filter(function(e){return!T.includes(e)})),O=Array.from(_).sort(),M=function(){return I},q=new ue,V=q.addMiddleware,B=q.removeMiddleware,L=q.dynamicMiddlewares,J=function(){throw new Error("Abort disabled inListener")},X=t(),H=R(m),W=g({},H,s,X.an_uid?{userId:X.an_uid}:{},X.an_aid?{anonymousId:X.an_aid}:{});W.anonymousId||(W.anonymousId=e());var F=g({enable:function(e,t){return new Promise(function(n){le.dispatch({type:z.enablePlugin,plugins:_e(e),_:{originalAction:z.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){le.dispatch({type:z.disablePlugin,plugins:_e(e),_:{originalAction:z.disablePlugin}},n,[t])})}},f.methods),G=!1,K={identify:function(e,t,n,r){try{var i=d(e)?e:null,o=c(e)?e:t,u=n||{},s=K.user();a($(j),i);var l=i||o.userId||b(j,K,o);return Promise.resolve(new Promise(function(e){le.dispatch(g({type:z.identifyStart,userId:l,traits:o||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==i&&{previousId:s.id}),e,[t,n,r])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,r){try{var i=c(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var a=c(e)?e:t||{},o=c(n)?n:{};return Promise.resolve(new Promise(function(e){le.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:b(j,K,t),anonymousId:b(k,K,t)},e,[t,n,r])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var r=c(e)?e:{},i=c(t)?t:{};return Promise.resolve(new Promise(function(a){le.dispatch({type:z.pageStart,properties:be(r),options:i,userId:b(j,K,r),anonymousId:b(k,K,r)},a,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===j||"id"===e)return b(j,K);if(e===k||"anonId"===e)return b(k,K);var t=K.getState("user");return e?n(t,e):t},reset:function(e){return new Promise(function(t){le.dispatch({type:z.resetStart},t,e)})},ready:function(e){return G&&e({plugins:F,instance:K}),K.on(z.ready,function(t){e(t),G=!0})},on:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var r=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:K,plugins:I}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:K,plugins:I}),e(r)}}};return V(r,ke),V(i,xe),function(){B(r,ke),B(i,xe)}}var a=e.match(n)?ke:xe,o=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:K,plugins:I,abort:J}),n(r)}}};return V(o,a),function(){return B(o,a)}},once:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);var n=K.on(e,function(e){t({payload:e.payload,instance:K,plugins:I,abort:J}),n()});return n},getState:function(e){var t=le.getState();return e?n(t,e):Object.assign({},t)},dispatch:function(e){var t=d(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);var n=g({},t,{_:g({originalAction:t.type},e._||{})});le.dispatch(n)},enablePlugin:F.enable,disablePlugin:F.disable,plugins:F,storage:{getItem:m.getItem,setItem:function(e,t,n){le.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){le.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){K.storage.setItem(N,e,t)},events:{core:x,plugins:A}},Q=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Oe()),e(t)}}},L(ke),ae(K,M,{all:O,plugins:A}),oe(m),C(K),D(K),L(xe)]),Y={context:Pe,user:U(m),page:we,track:pe,plugins:ce(M),queue:ge},Z=P,ee=P;if(p&&o.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(Z=te({trace:!0,traceLimit:25})),ee=function(){return 0===arguments.length?Ne():c(typeof arguments[0])?Ae():Ae().apply(null,arguments)}}var ne,re=function(e){return Object.keys(e).reduce(function(t,n){return Se.includes(n)||(t[n]=e[n]),t},{})}(o),ie=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),se={context:re,user:W,plugins:ie},le=w(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===h&&(n[i]=e[i])}var a,o=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===v||typeof n(void 0,{type:y})===v)throw new Error("reducer "+t+" "+v)})}(n)}catch(e){a=e}return function(e,t){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,n[c])(s,t);if(typeof l===v){var f=E(c,t);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(g({},Y,u)),se,ee(Z(S.apply(void 0,Q))));le.dispatch=(ne=le.dispatch,function(e,t,n){var r=g({},e,{meta:Oe(e.meta,t,_e(n))});return ne.apply(null,[r])});var fe=Object.keys(I);le.dispatch({type:z.bootstrap,plugins:fe,config:re,params:X,user:W,initialUser:s,persistedUser:H});var de=fe.filter(function(e){return f.pluginEnabled[e]}),me=fe.filter(function(e){return!f.pluginEnabled[e]});return le.dispatch({type:z.registerPlugins,plugins:fe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,r=e.config,i=e.name;n&&l(n)&&n({instance:K,config:r,payload:e}),le.dispatch({type:z.registerPluginType(i),name:i,enabled:f.pluginEnabled[i],plugin:e}),f.pluginsArray.length===t+1&&le.dispatch({type:z.initializeStart,plugins:de,disabled:me})}),K}var ke="before",xe="after";export{je as Analytics,O as CONSTANTS,z as EVENTS,je as default,je as init};
import{uuid as e,paramsParse as t,dotProp as n}from"analytics-utils";import{get as r,remove as i,set as a,globalContext as o,KEY as u}from"@analytics/global-storage-utils";import{isObject as c,PREFIX as s,isFunction as l,isBoolean as f,isString as d,isBrowser as p,isArray as m}from"@analytics/type-utils";function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},g.apply(this,arguments)}var h="function",v="undefined",y="@@redux/"+Math.random().toString(36),b=/* #__PURE__ */function(){return typeof Symbol===h&&Symbol.observable||"@@observable"}(),I=" != "+h;function w(e,t,n){var r;if(typeof t===h&&typeof n===v&&(n=t,t=void 0),typeof n!==v){if(typeof n!==h)throw new Error("enhancer"+I);return n(w)(e,t)}if(typeof e!==h)throw new Error("reducer"+I);var i=e,a=t,o=[],u=o,s=!1;function l(){u===o&&(u=o.slice())}function f(){return a}function d(e){if(typeof e!==h)throw new Error("Listener"+I);var t=!0;return l(),u.push(e),function(){if(t){t=!1,l();var n=u.indexOf(e);u.splice(n,1)}}}function p(e){if(!c(e))throw new Error("Act != obj");if(typeof e.type===v)throw new Error("ActType "+v);if(s)throw new Error("Dispatch in reducer");try{s=!0,a=i(a,e)}finally{s=!1}for(var t=o=u,n=0;n<t.length;n++)(0,t[n])();return e}return p({type:"@@redux/INIT"}),(r={dispatch:p,subscribe:d,getState:f,replaceReducer:function(e){if(typeof e!==h)throw new Error("next reducer"+I);i=e,p({type:"@@redux/INIT"})}})[b]=function(){var e,t=d;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(f())}return n(),{unsubscribe:t(n)}}})[b]=function(){return this},e},r}function E(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+v}function P(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function S(){var e=arguments;return function(t){return function(n,r,i){var a,o=t(n,r,i),u=o.dispatch,c={getState:o.getState,dispatch:function(e){return u(e)}};return a=[].slice.call(e).map(function(e){return e(c)}),g({},o,{dispatch:u=P.apply(void 0,a)(o.dispatch)})}}}var N=s+"anon_id",A=s+"user_id",_=s+"user_traits",O={__proto__:null,ANON_ID:N,USER_ID:A,USER_TRAITS:_},j="userId",k="anonymousId",x=["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"],T=["name","EVENTS","config","loaded"],z=x.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),M=/^utm_/,q=/^an_prop_/,V=/^an_trait_/;function C(e){var t=e.storage.setItem;return function(n){return function(r){return function(i){if(i.type===z.bootstrap){var a=i.params,o=i.user,u=i.persistedUser,c=i.initialUser,s=u.userId===o.userId;u.anonymousId!==o.anonymousId&&t(N,o.anonymousId),s||t(A,o.userId),c.traits&&t(_,g({},s&&u.traits?u.traits:{},c.traits));var l=Object.keys(i.params);if(l.length){var f=a.an_uid,d=a.an_event,p=l.reduce(function(e,t){if(t.match(M)||t.match(/^(d|g)clid/)){var n=t.replace(M,"");e.campaign["campaign"===n?"name":n]=a[t]}return t.match(q)&&(e.props[t.replace(q,"")]=a[t]),t.match(V)&&(e.traits[t.replace(V,"")]=a[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(g({type:z.params,raw:a},p,f?{userId:f}:{})),f&&setTimeout(function(){return e.identify(f,p.traits)},0),d&&setTimeout(function(){return e.track(d,p.props)},0),Object.keys(p.campaign).length&&n.dispatch({type:z.campaign,campaign:p.campaign})}}return r(i)}}}}function U(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===z.setItemEnd){if(n.key===N)return g({},t,{anonymousId:n.value});if(n.key===A)return g({},t,{userId:n.value})}switch(n.type){case z.identify:return Object.assign({},t,{userId:n.userId,traits:g({},t.traits,n.traits)});case z.reset:return[A,N,_].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function R(e){return{userId:e.getItem(A),anonymousId:e.getItem(N),traits:e.getItem(_)}}var $=function(e){return s+"TEMP"+s+e};function D(t){var n=t.storage,r=n.setItem,a=n.removeItem,o=n.getItem;return function(t){return function(n){return function(u){var c=u.userId,s=u.traits,l=u.options;if(u.type===z.reset&&([A,_,N].forEach(function(e){a(e)}),[j,k,"traits"].forEach(function(e){i($(e))})),u.type===z.identify){o(N)||r(N,e());var f=o(A),d=o(_)||{};f&&f!==c&&t.dispatch({type:z.userIdChanged,old:{userId:f,traits:d},new:{userId:c,traits:s},options:l}),c&&r(A,c),s&&r(_,g({},d,s))}return n(u)}}}}var B={};function L(e,t){B[e]&&l(B[e])&&(B[e](t),delete B[e])}function J(e,t,n){return new Promise(function(r,i){return t()?r(e):n<1?i(g({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(a){return J(e,t,n-10).then(r,i)})})}function X(e){return{abort:e}}var H=function(e){var t=e.data,n=e.action,r=e.instance,i=e.state,a=e.allPlugins,o=e.allMatches,u=e.store,s=e.EVENTS;try{var f=i.plugins,d=i.context,p=n.type,m=p.match(W),h=t.exact.map(function(e){return e.pluginName});m&&(h=o.during.map(function(e){return e.pluginName}));var v=function(e,t){return function(n,r,i){var a=r.config,o=r.name,u=o+"."+n.type;i&&(u=i.event);var c=n.type.match(W)?function(e,t,n,r,i){return function(a,o){var u=r?r.name:e,c=o&&ne(o)?o:n;if(r&&(!(c=o&&ne(o)?o:[e]).includes(e)||1!==c.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(c)+" input valid");return g({},i,{abort:{reason:a,plugins:c,caller:t,_:u}})}}(o,u,t,i,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,u);return{payload:ae(n),instance:e,config:a||{},abort:c}}}(r,h),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,i,o){try{var u=i.pluginName;return Promise.resolve(e).then(function(e){function i(){return Promise.resolve(e)}var o=function(){if(t.namespaced&&t.namespaced[u])return Promise.resolve(t.namespaced[u].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&l(t.method)?(function(e,t){var n=ie(e);if(n&&n.name===t){var r=ie(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:r,abort:(n=e,i=u,o=t.pluginName,function(e,t){return g({},n,{abort:{reason:e,plugins:t||[i],caller:p,from:o||i}})}),config:Q(t.pluginName,f,a),plugins:f})).then(function(t){var n=c(t)?t:{};return Promise.resolve(g({},e,n))})):e;var n,i,o})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[u]=t});e[u]=n}();return o&&o.then?o.then(i):i()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,i,o){try{var s=t.exact.length===o+1,l=i.pluginName,d=a[l];return Promise.resolve(n).then(function(t){var n=e[l]?e[l]:{};if(m&&(n=t),ee(n,l))return K({data:n,method:p,instance:r,pluginName:l,store:u}),Promise.resolve(t);if(ee(t,l))return s&&K({data:t,method:p,instance:r,store:u}),Promise.resolve(t);if(y.hasOwnProperty(l)&&!0===y[l])return u.dispatch({type:"queue",plugin:l,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var i=v(e[l],a[l]);return Promise.resolve(d[p]({abort:i.abort,payload:n,instance:r,config:Q(l,f,a),plugins:f})).then(function(i){var a=c(i)?i:{},o=g({},t,a),s=e[l];if(ee(s,l))K({data:s,method:p,instance:r,pluginName:l,store:u});else{var f=p+":"+l;(f.match(/:/g)||[]).length<2&&!p.match(F)&&!p.match(G)&&r.dispatch(g({},m?o:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(o)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(W)||p.match(/^registerPlugin/)||p.match(G)||p.match(F)||p.match(/^params/)||p.match(/^userIdChanged/))){if(s.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=g({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});te(e,t.exact.length)&&!p.match(/End$/)&&(n=g({},n,{type:e.type+"Aborted"})),u.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},W=/Start$/,F=/^bootstrap/,G=/^ready/;function K(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(g({},e.data,{type:n,_:{called:n,from:"abort"}}))}function Q(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function Y(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function Z(e,t){var n=e.replace(W,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function ee(e,t){var n=e.abort;return!!n&&(!0===n||re(n,t)||n&&re(n.plugins,t))}function te(e,t){var n=e.abort;if(!n)return!1;if(!0===n||d(n))return!0;var r=n.plugins;return ne(n)&&n.length===t||ne(r)&&r.length===t}function ne(e){return Array.isArray(e)}function re(e,t){return!(!e||!ne(e))&&e.includes(t)}function ie(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function ae(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=c(e[n])?Object.assign({},e[n]):e[n]),t},{})}function oe(e,t,n){var r={};return function(i){return function(a){return function(o){try{var u,s=function(e){return u?e:a(m)},d=o.type,p=o.plugins,m=o;if(o.abort)return Promise.resolve(a(o));if(d===z.enablePlugin&&i.dispatch({type:z.initializeStart,plugins:p,disabled:[],fromEnable:!0,meta:o.meta}),d===z.disablePlugin&&setTimeout(function(){return L(o.meta.rid,{payload:o})},0),d===z.initializeEnd){var h=t(),v=Object.keys(h),y=v.filter(function(e){return p.includes(e)}).map(function(e){return h[e]}),b=[],I=[],w=o.disabled,E=y.map(function(e){var t=e.loaded,n=e.name,a=e.config;return J(e,function(){return t({config:a})},1e4).then(function(t){return r[n]||(i.dispatch({type:z.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!T.includes(e)})}),r[n]=!0),b=b.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return I=I.concat(e.name),e})});Promise.all(E).then(function(e){var t={plugins:b,failed:I,disabled:w};setTimeout(function(){v.length===E.length+w.length&&i.dispatch(g({},{type:z.ready},t))},0)})}var P=function(){if(d!==z.bootstrap)return/^ready:([^:]*)$/.test(d)&&setTimeout(function(){return function(e,t,n){var r={},i=t(),a=e.getState(),o=a.plugins,u=a.queue,s=a.user;if(!a.context.offline&&u&&u.actions&&u.actions.length){var f=u.actions.reduce(function(e,t,n){return o[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var a=u.actions[t],f=a.plugin,d=a.payload.type,p=i[f][d];if(p&&l(p)){var m,h=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[j,k].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(a.payload,s),v=r[h.meta.rid];if(!v&&(m=p({payload:h,config:o[f].config,instance:n,abort:X}))&&c(m)&&m.abort)return void(r[h.meta.rid]=!0);if(!v){var y=d+":"+f;e.dispatch(g({},h,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=u.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});u.actions=d}}}(i,t,e)},0),Promise.resolve(function(e,t,n,r,i){try{var a=l(t)?t():t,o=e.type,u=o.replace(W,"");if(e._&&e._.called)return Promise.resolve(e);var c=n.getState(),s=(m=a,void 0===(h=c.plugins)&&(h={}),void 0===(v=e.options)&&(v={}),Object.keys(m).filter(function(e){var t=v.plugins||{};return f(t[e])?t[e]:!1!==t.all&&(!h[e]||!1!==h[e].enabled)}).map(function(e){return m[e]}));o===z.initializeStart&&e.fromEnable&&(s=Object.keys(c.plugins).filter(function(t){var n=c.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return a[e]}));var d=s.map(function(e){return e.name}),p=function(e,t,n){var r=Z(e).map(function(e){return Y(e,t)});return t.reduce(function(n,r){var i=r.name,a=Z(e,i).map(function(e){return Y(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(o,s);return Promise.resolve(H({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){function t(){var t=function(){if(o.match(W))return Promise.resolve(H({action:g({},s,{type:u+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){e.meta&&e.meta.hasCallback&&L(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(te(e,d.length))return e;var s,l=function(){if(o!==u)return Promise.resolve(H({action:g({},e,{type:u}),data:{exact:p.during,namespaced:p.duringNS},state:c,allPlugins:a,allMatches:p,instance:n,store:r,EVENTS:i})).then(function(e){s=e});s=e}();return l&&l.then?l.then(t):t()})}catch(e){return Promise.reject(e)}var m,h,v}(o,t,e,i,n)).then(function(e){return u=1,a(e)})}();return Promise.resolve(P&&P.then?P.then(s):s(P))}catch(e){return Promise.reject(e)}}}}}function ue(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===z.setItem||r===z.removeItem){if(n.abort)return t(n);r===z.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ce=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return P.apply(void 0,o)(r)(i)}}}}};function se(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var i=le(n.type,"registerPlugin"),a=e()[i];if(!a||!i)return t;var o=n.enabled,u=a.config;return r[i]={enabled:o,initialized:!!o&&Boolean(!a.initialize),loaded:!!o&&Boolean(a.loaded({config:u})),config:u},g({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var c=le(n.type,z.initialize),s=e()[c];return s&&c?(r[c]=g({},t[c],{initialized:!0,loaded:Boolean(s.loaded({config:s.config}))}),g({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=g({},t[n.name],{loaded:!0}),g({},t,r);switch(n.type){case z.disablePlugin:return g({},t,fe(n.plugins,!1,t));case z.enablePlugin:return g({},t,fe(n.plugins,!0,t));default:return t}}}function le(e,t){return e.substring(t.length+1,e.length)}function fe(e,t,n){return e.reduce(function(e,r){return e[r]=g({},n[r],{enabled:t}),e},n)}function de(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var pe={last:{},history:[]};function me(e,t){void 0===e&&(e=pe);var n=t.options,r=t.meta;if(t.type===z.track){var i=de(g({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return g({},e,{last:i,history:e.history.concat(i)})}return e}var ge={actions:[]};function he(e,t){void 0===e&&(e=ge);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===z.identify?[t].concat(e.actions):e.actions.concat(t),g({},e,{actions:r});case"dequeue":return[];default:return e}}var ve=/#.*$/;function ye(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ve,""):"")}var be,Ie=function(e){if(void 0===e&&(e={}),!p)return e;var t=document,n=t.title,r=t.referrer,i=window,a=i.location,o=i.innerWidth,u=i.innerHeight,c=a.hash,s=a.search,l=function(e){var t=function(){if(p)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ve,"")}(s),f={title:n,url:l,path:ye(l),hash:c,search:s,width:o,height:u};return r&&""!==r&&(f.referrer=r),g({},f,e)},we={last:{},history:[]};function Ee(e,t){void 0===e&&(e=we);var n=t.options;if(t.type===z.page){var r=de(g({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return g({},e,{last:r,history:e.history.concat(r)})}return e}be={};var Pe={initialized:!1,sessionId:e(),app:null,version:null,debug:!1,offline:!!p&&!navigator.onLine,os:{name:"na"},userAgent:p?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:be};function Se(e,t){void 0===e&&(e=Pe);var n=e.initialized,r=t.campaign;switch(t.type){case z.campaign:return g({},e,{campaign:r});case z.offline:return g({},e,{offline:!0});case z.online:return g({},e,{offline:!1});default:return n?e:g({},Pe,e,{initialized:!0})}}var Ne=["plugins","reducers","storage"];function Ae(){return a("analytics",[]),function(e){return function(t,n,r){var i=e(t,n,r),a=i.dispatch;return Object.assign(i,{dispatch:function(e){return o[u].analytics.push(e.action||e),a(e)}})}}}function _e(e){return function(){return P(P.apply(null,arguments),Ae())}}function Oe(e){return e?m(e)?e:[e]:[]}function je(t,n,r){void 0===t&&(t={});var i,a,o=e();return n&&(B[o]=(i=n,a=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),r=0;r<n.length;r++)if(l(n[r])){t=n[r];break}return t}(r),function(e){a&&a(e),i(e)})),g({},t,{rid:o,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function ke(o){void 0===o&&(o={});var u=o.reducers||{},s=o.initialUser||{},f=(o.plugins||[]).reduce(function(e,t){if(l(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=K,r.apply({instance:K},t)}),e},{}),delete t.methods);var r=Object.keys(t).concat(n),i=new Set(e.events.concat(r));if(e.events=Array.from(i),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),m=o.storage?o.storage:{getItem:r,setItem:a,removeItem:i},b=function(e){return function(t,n,i){return n.getState("user")[t]||(i&&c(i)&&i[t]?i[t]:R(e)[t]||r($(t))||null)}}(m),I=f.plugins,A=f.events.filter(function(e){return!T.includes(e)}).sort(),_=new Set(A.concat(x).filter(function(e){return!T.includes(e)})),O=Array.from(_).sort(),M=function(){return I},q=new ce,V=q.addMiddleware,B=q.removeMiddleware,L=q.dynamicMiddlewares,J=function(){throw new Error("Abort disabled inListener")},X=t(),H=R(m),W=g({},H,s,X.an_uid?{userId:X.an_uid}:{},X.an_aid?{anonymousId:X.an_aid}:{});W.anonymousId||(W.anonymousId=e());var F=g({enable:function(e,t){return new Promise(function(n){le.dispatch({type:z.enablePlugin,plugins:Oe(e),_:{originalAction:z.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){le.dispatch({type:z.disablePlugin,plugins:Oe(e),_:{originalAction:z.disablePlugin}},n,[t])})}},f.methods),G=!1,K={identify:function(e,t,n,r){try{var i=d(e)?e:null,o=c(e)?e:t,u=n||{},s=K.user();a($(j),i);var l=i||o.userId||b(j,K,o);return Promise.resolve(new Promise(function(e){le.dispatch(g({type:z.identifyStart,userId:l,traits:o||{},options:u,anonymousId:s.anonymousId},s.id&&s.id!==i&&{previousId:s.id}),e,[t,n,r])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,r){try{var i=c(e)?e.event:e;if(!i||!d(i))throw new Error("EventMissing");var a=c(e)?e:t||{},o=c(n)?n:{};return Promise.resolve(new Promise(function(e){le.dispatch({type:z.trackStart,event:i,properties:a,options:o,userId:b(j,K,t),anonymousId:b(k,K,t)},e,[t,n,r])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var r=c(e)?e:{},i=c(t)?t:{};return Promise.resolve(new Promise(function(a){le.dispatch({type:z.pageStart,properties:Ie(r),options:i,userId:b(j,K,r),anonymousId:b(k,K,r)},a,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===j||"id"===e)return b(j,K);if(e===k||"anonId"===e)return b(k,K);var t=K.getState("user");return e?n(t,e):t},reset:function(e){return new Promise(function(t){le.dispatch({type:z.resetStart},t,e)})},ready:function(e){return G&&e({plugins:F,instance:K}),K.on(z.ready,function(t){e(t),G=!0})},on:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var r=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:K,plugins:I}),e(r)}}},i=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:K,plugins:I}),e(r)}}};return V(r,xe),V(i,Te),function(){B(r,xe),B(i,Te)}}var a=e.match(n)?xe:Te,o=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:K,plugins:I,abort:J}),n(r)}}};return V(o,a),function(){return B(o,a)}},once:function(e,t){if(!e||!l(t))return!1;if(e===z.bootstrap)throw new Error(".once disabled for "+e);var n=K.on(e,function(e){t({payload:e.payload,instance:K,plugins:I,abort:J}),n()});return n},getState:function(e){var t=le.getState();return e?n(t,e):Object.assign({},t)},dispatch:function(e){var t=d(e)?{type:e}:e;if(x.includes(t.type))throw new Error("reserved action "+t.type);var n=g({},t,{_:g({originalAction:t.type},e._||{})});le.dispatch(n)},enablePlugin:F.enable,disablePlugin:F.disable,plugins:F,storage:{getItem:m.getItem,setItem:function(e,t,n){le.dispatch({type:z.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){le.dispatch({type:z.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){K.storage.setItem(N,e,t)},events:{core:x,plugins:A}},Q=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=je()),e(t)}}},L(xe),oe(K,M,{all:O,plugins:A}),ue(m),C(K),D(K),L(Te)]),Y={context:Se,user:U(m),page:Ee,track:me,plugins:se(M),queue:he},Z=P,ee=P;if(p&&o.debug){var te=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;te&&(Z=te({trace:!0,traceLimit:25})),ee=function(){return 0===arguments.length?Ae():c(typeof arguments[0])?_e():_e().apply(null,arguments)}}var ne,re=function(e){return Object.keys(e).reduce(function(t,n){return Ne.includes(n)||(t[n]=e[n]),t},{})}(o),ie=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),ae={context:re,user:W,plugins:ie},le=w(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===h&&(n[i]=e[i])}var a,o=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:"@@redux/INIT"})===v||typeof n(void 0,{type:y})===v)throw new Error("reducer "+t+" "+v)})}(n)}catch(e){a=e}return function(e,t){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,n[c])(s,t);if(typeof l===v){var f=E(c,t);throw new Error(f)}i[c]=l,r=r||l!==s}return r?i:e}}(g({},Y,u)),ae,ee(Z(S.apply(void 0,Q))));le.dispatch=(ne=le.dispatch,function(e,t,n){var r=g({},e,{meta:je(e.meta,t,Oe(n))});return ne.apply(null,[r])});var fe=Object.keys(I);le.dispatch({type:z.bootstrap,plugins:fe,config:re,params:X,user:W,initialUser:s,persistedUser:H});var de=fe.filter(function(e){return f.pluginEnabled[e]}),pe=fe.filter(function(e){return!f.pluginEnabled[e]});return le.dispatch({type:z.registerPlugins,plugins:fe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,r=e.config,i=e.name;n&&l(n)&&n({instance:K,config:r,payload:e}),le.dispatch({type:z.registerPluginType(i),name:i,enabled:f.pluginEnabled[i],plugin:e}),f.pluginsArray.length===t+1&&le.dispatch({type:z.initializeStart,plugins:de,disabled:pe})}),K}var xe="before",Te="after";export{ke as Analytics,O as CONSTANTS,z as EVENTS,ke as default,ke as init};
//# sourceMappingURL=analytics-core.module.js.map

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},I="analytics",w="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function k(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function x(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[w,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function F(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return F(e,t,n-10).then(r,a)})})}var R=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(B),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(B)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&H(u)?u:n;if(r&&(!(s=u&&H(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:Y(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=W(e);if(n&&n.name===t){var r=W(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:$(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),L(n,d))return V({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(L(t,d))return l&&V({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:$(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(L(l,d))V({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(U)&&!p.match(C)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(B)||p.match(/^registerPlugin/)||p.match(C)||p.match(U)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});J(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},B=/Start$/,U=/^bootstrap/,C=/^ready/;function V(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function $(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function D(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function X(e,t){var n=e.replace(B,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function L(e,t){var n=e.abort;return!!n&&(!0===n||K(n,t)||n&&K(n.plugins,t))}function J(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return H(n)&&n.length===t||H(i)&&i.length===t}function H(e){return Array.isArray(e)}function K(e,t){return!(!e||!H(e))&&e.includes(t)}function W(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function Y(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function G(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,I=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return F(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===I.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var P=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,n){var a=t(),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,t,n){return u[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(l.processIndex&&l.processIndex.length){l.processIndex.forEach(function(t){var o=c.actions[t],l=o.plugin,f=o.payload.type,d=a[l][f];if(d&&r.isFunction(d)){var p=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[w,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(o.payload,s);d({payload:p,config:u[l].config,instance:n});var m=f+":"+l;e.dispatch(i({},p,{type:m,_:{called:m,from:"queueDrain"}}))}});var f=c.actions.filter(function(e,t){return!~l.processIndex.indexOf(t)});c.actions=f}}}(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(B,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=X(e).map(function(e){return D(e,t)});return t.reduce(function(n,r){var i=r.name,a=X(e,i).map(function(e){return D(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(R({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(B))return Promise.resolve(R({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(J(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(R({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function Q(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var Z=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function ee(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=te(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=te(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,ne(n.plugins,!1,t));case O.enablePlugin:return i({},t,ne(n.plugins,!0,t));default:return t}}}function te(e,t){return e.substring(t.length+1,e.length)}function ne(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function re(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ie={last:{},history:[]};function ae(e,t){void 0===e&&(e=ie);var n=t.options,r=t.meta;if(t.type===O.track){var a=re(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var oe={actions:[]};function ue(e,t){void 0===e&&(e=oe);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var ce=/#.*$/;function se(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ce,""):"")}var le,fe=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(ce,"")}(f),p={title:n,url:d,path:se(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},de={last:{},history:[]};function pe(e,t){void 0===e&&(e=de);var n=t.options;if(t.type===O.page){var r=re(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}le={};var me={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:I,version:"0.12.5"},timezone:void 0,locale:void 0,campaign:{},referrer:le};function ge(e,t){void 0===e&&(e=me);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},me,e,{initialized:!0})}}var he=["plugins","reducers","storage"];function ye(){return n.set(I,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function ve(e){return function(){return m(m.apply(null,arguments),ye())}}function be(e){return e?r.isArray(e)?e:[e]:[]}function Ie(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function we(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=X,r.apply({instance:X},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:x(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,I=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(I.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new Z,q=M.addMiddleware,F=M.removeMiddleware,R=M.dynamicMiddlewares,B=function(){throw new Error("Abort disabled inListener")},U=t.paramsParse(),C=x(y),V=i({},C,l,U.an_uid?{userId:U.an_uid}:{},U.an_aid?{anonymousId:U.an_aid}:{});V.anonymousId||(V.anonymousId=t.uuid());var $=i({enable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.enablePlugin,plugins:be(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.disablePlugin,plugins:be(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),D=!1,X={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=X.user();n.set(T(w),u);var f=u||c.userId||v(w,X,c);return Promise.resolve(new Promise(function(e){ie.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ie.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(w,X,t),anonymousId:v(E,X,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ie.dispatch({type:O.pageStart,properties:fe(i),options:a,userId:v(w,X,i),anonymousId:v(E,X,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===w||"id"===e)return v(w,X);if(e===E||"anonId"===e)return v(E,X);var n=X.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ie.dispatch({type:O.resetStart},t,e)})},ready:function(e){return D&&e({plugins:$,instance:X}),X.on(O.ready,function(t){e(t),D=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:X,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:X,plugins:b}),e(r)}}};return q(i,Ee),q(a,Pe),function(){F(i,Ee),F(a,Pe)}}var o=e.match(n)?Ee:Pe,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:X,plugins:b,abort:B}),n(r)}}};return q(u,o),function(){return F(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=X.on(e,function(e){t({payload:e.payload,instance:X,plugins:b,abort:B}),n()});return n},getState:function(e){var n=ie.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ie.dispatch(n)},enablePlugin:$.enable,disablePlugin:$.disable,plugins:$,storage:{getItem:y.getItem,setItem:function(e,t,n){ie.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ie.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){X.storage.setItem(h,e,t)},events:{core:P,plugins:I}},L=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=Ie()),e(t)}}},R(Ee),G(X,A,{all:N,plugins:I}),Q(y),_(X),z(X),R(Pe)]),J={context:ge,user:k(y),page:pe,track:ae,plugins:ee(A),queue:ue},H=m,K=m;if(r.isBrowser&&e.debug){var W=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;W&&(H=W({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?ye():r.isObject(typeof arguments[0])?ve():ve().apply(null,arguments)}}var Y,te=function(e){return Object.keys(e).reduce(function(t,n){return he.includes(n)||(t[n]=e[n]),t},{})}(e),ne=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),re={context:te,user:V,plugins:ne},ie=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},J,u)),re,K(H(g.apply(void 0,L))));ie.dispatch=(Y=ie.dispatch,function(e,t,n){var r=i({},e,{meta:Ie(e.meta,t,be(n))});return Y.apply(null,[r])});var oe=Object.keys(b);ie.dispatch({type:O.bootstrap,plugins:oe,config:te,params:U,user:V,initialUser:l,persistedUser:C});var ce=oe.filter(function(e){return f.pluginEnabled[e]}),se=oe.filter(function(e){return!f.pluginEnabled[e]});return ie.dispatch({type:O.registerPlugins,plugins:oe,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:X,config:i,payload:e}),ie.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ie.dispatch({type:O.initializeStart,plugins:ce,disabled:se})}),X}var Ee="before",Pe="after";e.Analytics=we,e.CONSTANTS=b,e.EVENTS=O,e.default=we,e.init=we});
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("analytics-utils"),require("@analytics/global-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","analytics-utils","@analytics/global-storage-utils","@analytics/type-utils"],t):t((e||self)._analytics={},e.analyticsUtils,e.globalStorageUtils,e.typeUtils)}(this,function(e,t,n,r){function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var a="function",o="undefined",u="@@redux/",c=u+"INIT",s=u+Math.random().toString(36),l=/* #__PURE__ */function(){return typeof Symbol===a&&Symbol.observable||"@@observable"}(),f=" != "+a;function d(e,t,n){var i;if(typeof t===a&&typeof n===o&&(n=t,t=void 0),typeof n!==o){if(typeof n!==a)throw new Error("enhancer"+f);return n(d)(e,t)}if(typeof e!==a)throw new Error("reducer"+f);var u=e,s=t,p=[],m=p,g=!1;function h(){m===p&&(m=p.slice())}function y(){return s}function v(e){if(typeof e!==a)throw new Error("Listener"+f);var t=!0;return h(),m.push(e),function(){if(t){t=!1,h();var n=m.indexOf(e);m.splice(n,1)}}}function b(e){if(!r.isObject(e))throw new Error("Act != obj");if(typeof e.type===o)throw new Error("ActType "+o);if(g)throw new Error("Dispatch in reducer");try{g=!0,s=u(s,e)}finally{g=!1}for(var t=p=m,n=0;n<t.length;n++)(0,t[n])();return e}return b({type:c}),(i={dispatch:b,subscribe:v,getState:y,replaceReducer:function(e){if(typeof e!==a)throw new Error("next reducer"+f);u=e,b({type:c})}})[l]=function(){var e,t=v;return(e={subscribe:function(e){if("object"!=typeof e)throw new TypeError("Observer != obj");function n(){e.next&&e.next(y())}return n(),{unsubscribe:t(n)}}})[l]=function(){return this},e},i}function p(e,t){var n=t&&t.type;return"action "+(n&&n.toString()||"?")+"reducer "+e+" returns "+o}function m(){var e=[].slice.call(arguments);return 0===e.length?function(e){return e}:1===e.length?e[0]:e.reduce(function(e,t){return function(){return e(t.apply(void 0,[].slice.call(arguments)))}})}function g(){var e=arguments;return function(t){return function(n,r,a){var o,u=t(n,r,a),c=u.dispatch,s={getState:u.getState,dispatch:function(e){return c(e)}};return o=[].slice.call(e).map(function(e){return e(s)}),i({},u,{dispatch:c=m.apply(void 0,o)(u.dispatch)})}}}var h=r.PREFIX+"anon_id",y=r.PREFIX+"user_id",v=r.PREFIX+"user_traits",b={__proto__:null,ANON_ID:h,USER_ID:y,USER_TRAITS:v},I="analytics",w="userId",E="anonymousId",P=["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"],S=["name","EVENTS","config","loaded"],O=P.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),j=/^utm_/,N=/^an_prop_/,A=/^an_trait_/;function _(e){var t=e.storage.setItem;return function(n){return function(r){return function(a){if(a.type===O.bootstrap){var o=a.params,u=a.user,c=a.persistedUser,s=a.initialUser,l=c.userId===u.userId;c.anonymousId!==u.anonymousId&&t(h,u.anonymousId),l||t(y,u.userId),s.traits&&t(v,i({},l&&c.traits?c.traits:{},s.traits));var f=Object.keys(a.params);if(f.length){var d=o.an_uid,p=o.an_event,m=f.reduce(function(e,t){if(t.match(j)||t.match(/^(d|g)clid/)){var n=t.replace(j,"");e.campaign["campaign"===n?"name":n]=o[t]}return t.match(N)&&(e.props[t.replace(N,"")]=o[t]),t.match(A)&&(e.traits[t.replace(A,"")]=o[t]),e},{campaign:{},props:{},traits:{}});n.dispatch(i({type:O.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&&n.dispatch({type:O.campaign,campaign:m.campaign})}}return r(a)}}}}function k(e){return function(t,n){if(void 0===t&&(t={}),void 0===n&&(n={}),n.type===O.setItemEnd){if(n.key===h)return i({},t,{anonymousId:n.value});if(n.key===y)return i({},t,{userId:n.value})}switch(n.type){case O.identify:return Object.assign({},t,{userId:n.userId,traits:i({},t.traits,n.traits)});case O.reset:return[y,h,v].forEach(function(t){e.removeItem(t)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function x(e){return{userId:e.getItem(y),anonymousId:e.getItem(h),traits:e.getItem(v)}}var T=function(e){return r.PREFIX+"TEMP"+r.PREFIX+e};function z(e){var r=e.storage,a=r.setItem,o=r.removeItem,u=r.getItem;return function(e){return function(r){return function(c){var s=c.userId,l=c.traits,f=c.options;if(c.type===O.reset&&([y,v,h].forEach(function(e){o(e)}),[w,E,"traits"].forEach(function(e){n.remove(T(e))})),c.type===O.identify){u(h)||a(h,t.uuid());var d=u(y),p=u(v)||{};d&&d!==s&&e.dispatch({type:O.userIdChanged,old:{userId:d,traits:p},new:{userId:s,traits:l},options:f}),s&&a(y,s),l&&a(v,i({},p,l))}return r(c)}}}}var M={};function q(e,t){M[e]&&r.isFunction(M[e])&&(M[e](t),delete M[e])}function F(e,t,n){return new Promise(function(r,a){return t()?r(e):n<1?a(i({},e,{queue:!0})):new Promise(function(e){return setTimeout(e,10)}).then(function(i){return F(e,t,n-10).then(r,a)})})}function R(e){return{abort:e}}var B=function(e){var t=e.data,n=e.action,a=e.instance,o=e.state,u=e.allPlugins,c=e.allMatches,s=e.store,l=e.EVENTS;try{var f=o.plugins,d=o.context,p=n.type,m=p.match(U),g=t.exact.map(function(e){return e.pluginName});m&&(g=c.during.map(function(e){return e.pluginName}));var h=function(e,t){return function(n,r,a){var o=r.config,u=r.name,c=u+"."+n.type;a&&(c=a.event);var s=n.type.match(U)?function(e,t,n,r,a){return function(o,u){var c=r?r.name:e,s=u&&K(u)?u:n;if(r&&(!(s=u&&K(u)?u:[e]).includes(e)||1!==s.length))throw new Error("Method "+t+" can only abort "+e+" plugin. "+JSON.stringify(s)+" input valid");return i({},a,{abort:{reason:o,plugins:s,caller:t,_:c}})}}(u,c,t,a,n):function(e,t){return function(){throw new Error(e.type+" action not cancellable. Remove abort in "+t)}}(n,c);return{payload:G(n),instance:e,config:o||{},abort:s}}}(a,g),y=t.exact.reduce(function(e,t){var n=t.pluginName,r=t.methodName,i=!1;return r.match(/^initialize/)||r.match(/^reset/)||(i=!f[n].loaded),d.offline&&r.match(/^(page|track|identify)/)&&(i=!0),e[""+n]=i,e},{});return Promise.resolve(t.exact.reduce(function(e,o,c){try{var s=o.pluginName;return Promise.resolve(e).then(function(e){function o(){return Promise.resolve(e)}var c=function(){if(t.namespaced&&t.namespaced[s])return Promise.resolve(t.namespaced[s].reduce(function(e,t,n){try{return Promise.resolve(e).then(function(e){return t.method&&r.isFunction(t.method)?(function(e,t){var n=Y(e);if(n&&n.name===t){var r=Y(n.method);throw new Error([t+" plugin is calling method "+e,"Plugins cant call self","Use "+n.method+" "+(r?"or "+r.method:"")+" in "+t+" plugin insteadof "+e].join("\n"))}}(t.methodName,t.pluginName),Promise.resolve(t.method({payload:e,instance:a,abort:(n=e,o=s,c=t.pluginName,function(e,t){return i({},n,{abort:{reason:e,plugins:t||[o],caller:p,from:c||o}})}),config:D(t.pluginName,f,u),plugins:f})).then(function(t){var n=r.isObject(t)?t:{};return Promise.resolve(i({},e,n))})):e;var n,o,c})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(t){e[s]=t});e[s]=n}();return c&&c.then?c.then(o):o()})}catch(e){return Promise.reject(e)}},Promise.resolve({}))).then(function(e){return Promise.resolve(t.exact.reduce(function(n,o,c){try{var l=t.exact.length===c+1,d=o.pluginName,g=u[d];return Promise.resolve(n).then(function(t){var n=e[d]?e[d]:{};if(m&&(n=t),J(n,d))return $({data:n,method:p,instance:a,pluginName:d,store:s}),Promise.resolve(t);if(J(t,d))return l&&$({data:t,method:p,instance:a,store:s}),Promise.resolve(t);if(y.hasOwnProperty(d)&&!0===y[d])return s.dispatch({type:"queue",plugin:d,payload:n,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(t);var o=h(e[d],u[d]);return Promise.resolve(g[p]({abort:o.abort,payload:n,instance:a,config:D(d,f,u),plugins:f})).then(function(o){var u=r.isObject(o)?o:{},c=i({},t,u),l=e[d];if(J(l,d))$({data:l,method:p,instance:a,pluginName:d,store:s});else{var f=p+":"+d;(f.match(/:/g)||[]).length<2&&!p.match(C)&&!p.match(V)&&a.dispatch(i({},m?c:n,{type:f,_:{called:f,from:"submethod"}}))}return Promise.resolve(c)})})}catch(e){return Promise.reject(e)}},Promise.resolve(n))).then(function(e){if(!(p.match(U)||p.match(/^registerPlugin/)||p.match(V)||p.match(C)||p.match(/^params/)||p.match(/^userIdChanged/))){if(l.plugins.includes(p),e._&&e._.originalAction===p)return e;var n=i({},e,{_:{originalAction:e.type,called:e.type,from:"engineEnd"}});H(e,t.exact.length)&&!p.match(/End$/)&&(n=i({},n,{type:e.type+"Aborted"})),s.dispatch(n)}return e})})}catch(e){return Promise.reject(e)}},U=/Start$/,C=/^bootstrap/,V=/^ready/;function $(e){var t=e.pluginName,n=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(i({},e.data,{type:n,_:{called:n,from:"abort"}}))}function D(e,t,n){var r=t[e]||n[e];return r&&r.config?r.config:{}}function X(e,t){return t.reduce(function(t,n){return n[e]?t.concat({methodName:e,pluginName:n.name,method:n[e]}):t},[])}function L(e,t){var n=e.replace(U,""),r=t?":"+t:"";return[""+e+r,""+n+r,n+"End"+r]}function J(e,t){var n=e.abort;return!!n&&(!0===n||W(n,t)||n&&W(n.plugins,t))}function H(e,t){var n=e.abort;if(!n)return!1;if(!0===n||r.isString(n))return!0;var i=n.plugins;return K(n)&&n.length===t||K(i)&&i.length===t}function K(e){return Array.isArray(e)}function W(e,t){return!(!e||!K(e))&&e.includes(t)}function Y(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function G(e){return Object.keys(e).reduce(function(t,n){return"type"===n||(t[n]=r.isObject(e[n])?Object.assign({},e[n]):e[n]),t},{})}function Q(e,t,n){var a={};return function(o){return function(u){return function(c){try{var s,l=function(e){return s?e:u(p)},f=c.type,d=c.plugins,p=c;if(c.abort)return Promise.resolve(u(c));if(f===O.enablePlugin&&o.dispatch({type:O.initializeStart,plugins:d,disabled:[],fromEnable:!0,meta:c.meta}),f===O.disablePlugin&&setTimeout(function(){return q(c.meta.rid,{payload:c})},0),f===O.initializeEnd){var m=t(),g=Object.keys(m),h=g.filter(function(e){return d.includes(e)}).map(function(e){return m[e]}),y=[],v=[],b=c.disabled,I=h.map(function(e){var t=e.loaded,n=e.name,r=e.config;return F(e,function(){return t({config:r})},1e4).then(function(t){return a[n]||(o.dispatch({type:O.pluginReadyType(n),name:n,events:Object.keys(e).filter(function(e){return!S.includes(e)})}),a[n]=!0),y=y.concat(n),e}).catch(function(e){if(e instanceof Error)throw new Error(e);return v=v.concat(e.name),e})});Promise.all(I).then(function(e){var t={plugins:y,failed:v,disabled:b};setTimeout(function(){g.length===I.length+b.length&&o.dispatch(i({},{type:O.ready},t))},0)})}var P=function(){if(f!==O.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return function(e,t,n){var a={},o=t(),u=e.getState(),c=u.plugins,s=u.queue,l=u.user;if(!u.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(e,t,n){return c[t.plugin].loaded?(e.process.push(t),e.processIndex.push(n)):(e.requeue.push(t),e.requeueIndex.push(n)),e},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(t){var u=s.actions[t],f=u.plugin,d=u.payload.type,p=o[f][d];if(p&&r.isFunction(p)){var m,g=function(e,t){return void 0===e&&(e={}),void 0===t&&(t={}),[w,E].reduce(function(n,r){return e.hasOwnProperty(r)&&t[r]&&t[r]!==e[r]&&(n[r]=t[r]),n},e)}(u.payload,l),h=a[g.meta.rid];if(!h&&(m=p({payload:g,config:c[f].config,instance:n,abort:R}))&&r.isObject(m)&&m.abort)return void(a[g.meta.rid]=!0);if(!h){var y=d+":"+f;e.dispatch(i({},g,{type:y,_:{called:y,from:"queueDrain"}}))}}});var d=s.actions.filter(function(e,t){return!~f.processIndex.indexOf(t)});s.actions=d}}}(o,t,e)},0),Promise.resolve(function(e,t,n,a,o){try{var u=r.isFunction(t)?t():t,c=e.type,s=c.replace(U,"");if(e._&&e._.called)return Promise.resolve(e);var l=n.getState(),f=(m=u,void 0===(g=l.plugins)&&(g={}),void 0===(h=e.options)&&(h={}),Object.keys(m).filter(function(e){var t=h.plugins||{};return r.isBoolean(t[e])?t[e]:!1!==t.all&&(!g[e]||!1!==g[e].enabled)}).map(function(e){return m[e]}));c===O.initializeStart&&e.fromEnable&&(f=Object.keys(l.plugins).filter(function(t){var n=l.plugins[t];return e.plugins.includes(t)&&!n.initialized}).map(function(e){return u[e]}));var d=f.map(function(e){return e.name}),p=function(e,t,n){var r=L(e).map(function(e){return X(e,t)});return t.reduce(function(n,r){var i=r.name,a=L(e,i).map(function(e){return X(e,t)}),o=a[0],u=a[1],c=a[2];return o.length&&(n.beforeNS[i]=o),u.length&&(n.duringNS[i]=u),c.length&&(n.afterNS[i]=c),n},{before:r[0],beforeNS:{},during:r[1],duringNS:{},after:r[2],afterNS:{}})}(c,f);return Promise.resolve(B({action:e,data:{exact:p.before,namespaced:p.beforeNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){function t(){var t=function(){if(c.match(U))return Promise.resolve(B({action:i({},r,{type:s+"End"}),data:{exact:p.after,namespaced:p.afterNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){e.meta&&e.meta.hasCallback&&q(e.meta.rid,{payload:e})})}();return t&&t.then?t.then(function(){return e}):e}if(H(e,d.length))return e;var r,f=function(){if(c!==s)return Promise.resolve(B({action:i({},e,{type:s}),data:{exact:p.during,namespaced:p.duringNS},state:l,allPlugins:u,allMatches:p,instance:n,store:a,EVENTS:o})).then(function(e){r=e});r=e}();return f&&f.then?f.then(t):t()})}catch(e){return Promise.reject(e)}var m,g,h}(c,t,e,o,n)).then(function(e){return s=1,u(e)})}();return Promise.resolve(P&&P.then?P.then(l):l(P))}catch(e){return Promise.reject(e)}}}}}function Z(e){return function(t){return function(t){return function(n){var r=n.type,i=n.key,a=n.value,o=n.options;if(r===O.setItem||r===O.removeItem){if(n.abort)return t(n);r===O.setItem?e.setItem(i,a,o):e.removeItem(i,o)}return t(n)}}}}var ee=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,n){e[n]=e[n].concat(t)},this.removeMiddleware=function(t,n){var r=e[n].findIndex(function(e){return e===t});-1!==r&&(e[n]=[].concat(e[n].slice(0,r),e[n].slice(r+1)))},this.dynamicMiddlewares=function(t){return function(n){return function(r){return function(i){var a={getState:n.getState,dispatch:function(e){return n.dispatch(e)}},o=e[t].map(function(e){return e(a)});return m.apply(void 0,o)(r)(i)}}}}};function te(e){return function(t,n){void 0===t&&(t={});var r={};if("initialize:aborted"===n.type)return t;if(/^registerPlugin:([^:]*)$/.test(n.type)){var a=ne(n.type,"registerPlugin"),o=e()[a];if(!o||!a)return t;var u=n.enabled,c=o.config;return r[a]={enabled:u,initialized:!!u&&Boolean(!o.initialize),loaded:!!u&&Boolean(o.loaded({config:c})),config:c},i({},t,r)}if(/^initialize:([^:]*)$/.test(n.type)){var s=ne(n.type,O.initialize),l=e()[s];return l&&s?(r[s]=i({},t[s],{initialized:!0,loaded:Boolean(l.loaded({config:l.config}))}),i({},t,r)):t}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=i({},t[n.name],{loaded:!0}),i({},t,r);switch(n.type){case O.disablePlugin:return i({},t,re(n.plugins,!1,t));case O.enablePlugin:return i({},t,re(n.plugins,!0,t));default:return t}}}function ne(e,t){return e.substring(t.length+1,e.length)}function re(e,t,n){return e.reduce(function(e,r){return e[r]=i({},n[r],{enabled:t}),e},n)}function ie(e){try{return JSON.parse(JSON.stringify(e))}catch(e){}return e}var ae={last:{},history:[]};function oe(e,t){void 0===e&&(e=ae);var n=t.options,r=t.meta;if(t.type===O.track){var a=ie(i({event:t.event,properties:t.properties},Object.keys(n).length&&{options:n},{meta:r}));return i({},e,{last:a,history:e.history.concat(a)})}return e}var ue={actions:[]};function ce(e,t){void 0===e&&(e=ue);var n=t.payload;switch(t.type){case"queue":var r;return r=n&&n.type&&n.type===O.identify?[t].concat(e.actions):e.actions.concat(t),i({},e,{actions:r});case"dequeue":return[];default:return e}}var se=/#.*$/;function le(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(se,""):"")}var fe,de=function(e){if(void 0===e&&(e={}),!r.isBrowser)return e;var t=document,n=t.title,a=t.referrer,o=window,u=o.location,c=o.innerWidth,s=o.innerHeight,l=u.hash,f=u.search,d=function(e){var t=function(){if(r.isBrowser)for(var e,t=document.getElementsByTagName("link"),n=0;e=t[n];n++)if("canonical"===e.getAttribute("rel"))return e.getAttribute("href")}();return t?t.match(/\?/)?t:t+e:window.location.href.replace(se,"")}(f),p={title:n,url:d,path:le(d),hash:l,search:f,width:c,height:s};return a&&""!==a&&(p.referrer=a),i({},p,e)},pe={last:{},history:[]};function me(e,t){void 0===e&&(e=pe);var n=t.options;if(t.type===O.page){var r=ie(i({properties:t.properties,meta:t.meta},Object.keys(n).length&&{options:n}));return i({},e,{last:r,history:e.history.concat(r)})}return e}fe={};var ge={initialized:!1,sessionId:t.uuid(),app:null,version:null,debug:!1,offline:!!r.isBrowser&&!navigator.onLine,os:{name:"na"},userAgent:r.isBrowser?navigator.userAgent:"node",library:{name:I,version:"0.12.7"},timezone:void 0,locale:void 0,campaign:{},referrer:fe};function he(e,t){void 0===e&&(e=ge);var n=e.initialized,r=t.campaign;switch(t.type){case O.campaign:return i({},e,{campaign:r});case O.offline:return i({},e,{offline:!0});case O.online:return i({},e,{offline:!1});default:return n?e:i({},ge,e,{initialized:!0})}}var ye=["plugins","reducers","storage"];function ve(){return n.set(I,[]),function(e){return function(t,r,i){var a=e(t,r,i),o=a.dispatch;return Object.assign(a,{dispatch:function(e){return n.globalContext[n.KEY].analytics.push(e.action||e),o(e)}})}}}function be(e){return function(){return m(m.apply(null,arguments),ve())}}function Ie(e){return e?r.isArray(e)?e:[e]:[]}function we(e,n,a){void 0===e&&(e={});var o,u,c=t.uuid();return n&&(M[c]=(o=n,u=function(e){for(var t,n=e||Array.prototype.slice.call(arguments),i=0;i<n.length;i++)if(r.isFunction(n[i])){t=n[i];break}return t}(a),function(e){u&&u(e),o(e)})),i({},e,{rid:c,ts:(new Date).getTime()},n?{hasCallback:!0}:{})}function Ee(e){void 0===e&&(e={});var u=e.reducers||{},l=e.initialUser||{},f=(e.plugins||[]).reduce(function(e,t){if(r.isFunction(t))return e.middlewares=e.middlewares.concat(t),e;if(t.NAMESPACE&&(t.name=t.NAMESPACE),!t.name)throw new Error("https://lytics.dev/errors/1");t.config||(t.config={});var n=t.EVENTS?Object.keys(t.EVENTS).map(function(e){return t.EVENTS[e]}):[];e.pluginEnabled[t.name]=!(!1===t.enabled||!1===t.config.enabled),delete t.enabled,t.methods&&(e.methods[t.name]=Object.keys(t.methods).reduce(function(e,n){var r;return e[n]=(r=t.methods[n],function(){for(var e=Array.prototype.slice.call(arguments),t=new Array(r.length),n=0;n<e.length;n++)t[n]=e[n];return t[t.length]=X,r.apply({instance:X},t)}),e},{}),delete t.methods);var i=Object.keys(t).concat(n),a=new Set(e.events.concat(i));if(e.events=Array.from(a),e.pluginsArray=e.pluginsArray.concat(t),e.plugins[t.name])throw new Error(t.name+"AlreadyLoaded");return e.plugins[t.name]=t,e.plugins[t.name].loaded||(e.plugins[t.name].loaded=function(){return!0}),e},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),y=e.storage?e.storage:{getItem:n.get,setItem:n.set,removeItem:n.remove},v=function(e){return function(t,i,a){return i.getState("user")[t]||(a&&r.isObject(a)&&a[t]?a[t]:x(e)[t]||n.get(T(t))||null)}}(y),b=f.plugins,I=f.events.filter(function(e){return!S.includes(e)}).sort(),j=new Set(I.concat(P).filter(function(e){return!S.includes(e)})),N=Array.from(j).sort(),A=function(){return b},M=new ee,q=M.addMiddleware,F=M.removeMiddleware,R=M.dynamicMiddlewares,B=function(){throw new Error("Abort disabled inListener")},U=t.paramsParse(),C=x(y),V=i({},C,l,U.an_uid?{userId:U.an_uid}:{},U.an_aid?{anonymousId:U.an_aid}:{});V.anonymousId||(V.anonymousId=t.uuid());var $=i({enable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.enablePlugin,plugins:Ie(e),_:{originalAction:O.enablePlugin}},n,[t])})},disable:function(e,t){return new Promise(function(n){ie.dispatch({type:O.disablePlugin,plugins:Ie(e),_:{originalAction:O.disablePlugin}},n,[t])})}},f.methods),D=!1,X={identify:function(e,t,a,o){try{var u=r.isString(e)?e:null,c=r.isObject(e)?e:t,s=a||{},l=X.user();n.set(T(w),u);var f=u||c.userId||v(w,X,c);return Promise.resolve(new Promise(function(e){ie.dispatch(i({type:O.identifyStart,userId:f,traits:c||{},options:s,anonymousId:l.anonymousId},l.id&&l.id!==u&&{previousId:l.id}),e,[t,a,o])}))}catch(e){return Promise.reject(e)}},track:function(e,t,n,i){try{var a=r.isObject(e)?e.event:e;if(!a||!r.isString(a))throw new Error("EventMissing");var o=r.isObject(e)?e:t||{},u=r.isObject(n)?n:{};return Promise.resolve(new Promise(function(e){ie.dispatch({type:O.trackStart,event:a,properties:o,options:u,userId:v(w,X,t),anonymousId:v(E,X,t)},e,[t,n,i])}))}catch(e){return Promise.reject(e)}},page:function(e,t,n){try{var i=r.isObject(e)?e:{},a=r.isObject(t)?t:{};return Promise.resolve(new Promise(function(r){ie.dispatch({type:O.pageStart,properties:de(i),options:a,userId:v(w,X,i),anonymousId:v(E,X,i)},r,[e,t,n])}))}catch(e){return Promise.reject(e)}},user:function(e){if(e===w||"id"===e)return v(w,X);if(e===E||"anonId"===e)return v(E,X);var n=X.getState("user");return e?t.dotProp(n,e):n},reset:function(e){return new Promise(function(t){ie.dispatch({type:O.resetStart},t,e)})},ready:function(e){return D&&e({plugins:$,instance:X}),X.on(O.ready,function(t){e(t),D=!0})},on:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".on disabled for "+e);var n=/Start$|Start:/;if("*"===e){var i=function(e){return function(e){return function(r){return r.type.match(n)&&t({payload:r,instance:X,plugins:b}),e(r)}}},a=function(e){return function(e){return function(r){return r.type.match(n)||t({payload:r,instance:X,plugins:b}),e(r)}}};return q(i,Pe),q(a,Se),function(){F(i,Pe),F(a,Se)}}var o=e.match(n)?Pe:Se,u=function(n){return function(n){return function(r){return r.type===e&&t({payload:r,instance:X,plugins:b,abort:B}),n(r)}}};return q(u,o),function(){return F(u,o)}},once:function(e,t){if(!e||!r.isFunction(t))return!1;if(e===O.bootstrap)throw new Error(".once disabled for "+e);var n=X.on(e,function(e){t({payload:e.payload,instance:X,plugins:b,abort:B}),n()});return n},getState:function(e){var n=ie.getState();return e?t.dotProp(n,e):Object.assign({},n)},dispatch:function(e){var t=r.isString(e)?{type:e}:e;if(P.includes(t.type))throw new Error("reserved action "+t.type);var n=i({},t,{_:i({originalAction:t.type},e._||{})});ie.dispatch(n)},enablePlugin:$.enable,disablePlugin:$.disable,plugins:$,storage:{getItem:y.getItem,setItem:function(e,t,n){ie.dispatch({type:O.setItemStart,key:e,value:t,options:n})},removeItem:function(e,t){ie.dispatch({type:O.removeItemStart,key:e,options:t})}},setAnonymousId:function(e,t){X.storage.setItem(h,e,t)},events:{core:P,plugins:I}},L=f.middlewares.concat([function(e){return function(e){return function(t){return t.meta||(t.meta=we()),e(t)}}},R(Pe),Q(X,A,{all:N,plugins:I}),Z(y),_(X),z(X),R(Se)]),J={context:he,user:k(y),page:me,track:oe,plugins:te(A),queue:ce},H=m,K=m;if(r.isBrowser&&e.debug){var W=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;W&&(H=W({trace:!0,traceLimit:25})),K=function(){return 0===arguments.length?ve():r.isObject(typeof arguments[0])?be():be().apply(null,arguments)}}var Y,G=function(e){return Object.keys(e).reduce(function(t,n){return ye.includes(n)||(t[n]=e[n]),t},{})}(e),ne=f.pluginsArray.reduce(function(e,t){var n=t.name,r=t.config,i=t.loaded,a=f.pluginEnabled[n];return e[n]={enabled:a,initialized:!!a&&Boolean(!t.initialize),loaded:Boolean(i({config:r})),config:r},e},{}),re={context:G,user:V,plugins:ne},ie=d(function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++){var i=t[r];typeof e[i]===a&&(n[i]=e[i])}var u,l=Object.keys(n);try{!function(e){Object.keys(e).forEach(function(t){var n=e[t];if(typeof n(void 0,{type:c})===o||typeof n(void 0,{type:s})===o)throw new Error("reducer "+t+" "+o)})}(n)}catch(e){u=e}return function(e,t){if(void 0===e&&(e={}),u)throw u;for(var r=!1,i={},a=0;a<l.length;a++){var c=l[a],s=e[c],f=(0,n[c])(s,t);if(typeof f===o){var d=p(c,t);throw new Error(d)}i[c]=f,r=r||f!==s}return r?i:e}}(i({},J,u)),re,K(H(g.apply(void 0,L))));ie.dispatch=(Y=ie.dispatch,function(e,t,n){var r=i({},e,{meta:we(e.meta,t,Ie(n))});return Y.apply(null,[r])});var ae=Object.keys(b);ie.dispatch({type:O.bootstrap,plugins:ae,config:G,params:U,user:V,initialUser:l,persistedUser:C});var ue=ae.filter(function(e){return f.pluginEnabled[e]}),se=ae.filter(function(e){return!f.pluginEnabled[e]});return ie.dispatch({type:O.registerPlugins,plugins:ae,enabled:f.pluginEnabled}),f.pluginsArray.map(function(e,t){var n=e.bootstrap,i=e.config,a=e.name;n&&r.isFunction(n)&&n({instance:X,config:i,payload:e}),ie.dispatch({type:O.registerPluginType(a),name:a,enabled:f.pluginEnabled[a],plugin:e}),f.pluginsArray.length===t+1&&ie.dispatch({type:O.initializeStart,plugins:ue,disabled:se})}),X}var Pe="before",Se="after";e.Analytics=Ee,e.CONSTANTS=b,e.EVENTS=O,e.default=Ee,e.init=Ee});
//# sourceMappingURL=analytics-core.umd.js.map

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc