@walkeros/web-source-datalayer 3.4.1-next-1776790594143 → 3.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.browser.js +1 -1
- package/dist/index.es5.js +1 -1
- package/dist/walkerOS.json +1 -1
- package/package.json +3 -3
package/dist/index.browser.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Destination=(()=>{var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,r=(t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})},s={};r(s,{SourceDataLayer:()=>Q,createTrigger:()=>Re,default:()=>Me,env:()=>X,sourceDataLayer:()=>Te,step:()=>ne,trigger:()=>Ie});var a=Object.defineProperty;((e,t)=>{for(var n in t)a(e,n,{get:t[n],enumerable:!0})})({},{Level:()=>c});var i,c=((i=c||{})[i.ERROR=0]="ERROR",i[i.WARN=1]="WARN",i[i.INFO=2]="INFO",i[i.DEBUG=3]="DEBUG",i);function u(e){return{_meta:{hops:0,path:[e]}}}var l={merge:!0,shallow:!0,extend:!0};function f(e,t={},n={}){n={...l,...n};const o=Object.entries(t).reduce((t,[o,r])=>{const s=e[o];return n.merge&&Array.isArray(s)&&Array.isArray(r)?t[o]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...s]):(n.extend||o in e)&&(t[o]=r),t},{});return n.shallow?{...e,...o}:(Object.assign(e,o),e)}function d(e){return Array.isArray(e)}function g(e){return void 0!==e}function p(e){return"function"==typeof e}function y(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function v(e){return"string"==typeof e}function m(e,t=new WeakMap){if("object"!=typeof e||null===e)return e;if(t.has(e))return t.get(e);const n=Object.prototype.toString.call(e);if("[object Object]"===n){const n={};t.set(e,n);for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=m(e[o],t));return n}if("[object Array]"===n){const n=[];return t.set(e,n),e.forEach(e=>{n.push(m(e,t))}),n}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){const t=e;return new RegExp(t.source,t.flags)}return e}function h(e,t="",n){const o=t.split(".");let r=e;for(let e=0;e<o.length;e++){const t=o[e];if("*"===t&&d(r)){const t=o.slice(e+1).join("."),s=[];for(const e of r){const o=h(e,t,n);s.push(o)}return s}if(r=r instanceof Object?r[t]:void 0,void 0===r)break}return g(r)?r:n}function b(e,t,n){if(!y(e))return e;const o=m(e),r=t.split(".");let s=o;for(let e=0;e<r.length;e++){const t=r[e];e===r.length-1?s[t]=n:(t in s&&"object"==typeof s[t]&&null!==s[t]||(s[t]={}),s=s[t])}return o}var w={data:e=>e.data,globals:e=>e.globals,context:e=>e.context,user:e=>e.user,source:e=>e.source,version:e=>e.version,event:e=>({entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,group:e.group,count:e.count,timing:e.timing})};function k(e,t={},n={}){const o={...t,...n},r={};let s=!e||0===Object.keys(e).length;return Object.keys(o).forEach(t=>{o[t]&&(r[t]=!0,e&&e[t]&&(s=!0))}),!!s&&r}function j(e=6,t){if(t){const n=t.length;let o="";for(let r=0;r<e;r++)o+=t[Math.random()*n|0];return o}let n="";for(let t=36;n.length<e;)n+=(Math.random()*t|0).toString(t);return n}function O(e,t=1e3,n=!1){let o,r=null,s=!1;return(...a)=>new Promise(i=>{const c=n&&!s;r&&clearTimeout(r),r=setTimeout(()=>{r=null,n&&!s||(o=e(...a),i(o))},t),c&&(s=!0,o=e(...a),i(o))})}function _(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function A(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=_(e)):n=e,void 0!==t&&(t instanceof Error?o.error=_(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=_(o.error))):o.value=t),{message:n,context:o}}var x=(e,t,n,o)=>{const r=`${c[e]}${o.length>0?` [${o.join(":")}]`:""}`,s=Object.keys(n).length>0,a=0===e?console.error:1===e?console.warn:console.log;s?a(r,t,n):a(r,t)};function S(e={}){return $({level:void 0!==e.level?(t=e.level,"string"==typeof t?c[t]:t):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var t}function $(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=t){const t=A(o,s);n?n(e,t.message,t.context,r,x):x(e,t.message,t.context,r)}};return{error:(e,t)=>s(0,e,t),warn:(e,t)=>s(1,e,t),info:(e,t)=>s(2,e,t),debug:(e,t)=>s(3,e,t),throw:(e,t)=>{const o=A(e,t);throw n?n(0,o.message,o.context,r,x):x(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>$({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function q(e){return function(e){return"boolean"==typeof e}(e)||v(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!g(e)||d(e)&&e.every(q)||y(e)&&Object.values(e).every(q)}function E(e){return q(e)?e:void 0}function L(e,t,n){return function(...o){try{return e(...o)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function P(e,t,n){return async function(...o){try{return await e(...o)}catch(e){if(!t)return;return await t(e)}finally{await(null==n?void 0:n())}}}async function D(e,t={},n={}){var o;if(!g(e))return;const r=y(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),s=d(t)?t:[t];for(const t of s){const o=await P(R)(e,t,{...n,consent:r});if(g(o))return o}}async function R(e,t,n={}){const{collector:o,consent:r}=n;return(d(t)?t:[t]).reduce(async(t,s)=>{const a=await t;if(a)return a;const i=v(s)?{key:s}:s;if(!Object.keys(i).length)return;const{condition:c,consent:u,fn:l,key:f,loop:p,map:y,set:m,validate:b,value:w}=i;if(c&&!await P(c)(e,s,o))return;if(u&&!k(u,r))return w;let j=g(w)?w:e;if(l&&(j=await P(l)(e,s,n)),f&&(j=h(e,f,w)),p){const[t,o]=p,r="this"===t?[e]:await D(e,t,n);d(r)&&(j=(await Promise.all(r.map(e=>D(e,o,n)))).filter(g))}else y?j=await Object.entries(y).reduce(async(t,[o,r])=>{const s=await t,a=await D(e,r,n);return g(a)&&(s[o]=a),s},Promise.resolve({})):m&&(j=await Promise.all(m.map(t=>R(e,t,n))));b&&!await P(b)(j)&&(j=void 0);const O=E(j);return g(O)?O:E(w)},Promise.resolve(void 0))}async function I(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await D(e,o,{collector:n});e=b(e,t,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,t){var n;const[o,r]=(e.name||"").split(" ");if(!t||!o||!r)return{};let s,a="",i=o,c=r;const u=t=>{if(t)return(t=d(t)?t:[t]).find(t=>!t.condition||t.condition(e))};t[i]||(i="*");const l=t[i];return l&&(l[c]||(c="*"),s=u(l[c])),s||(i="*",c="*",s=u(null==(n=t[i])?void 0:n[c])),s&&(a=`${i} ${c}`),{eventMapping:s,mappingKey:a}}(e,t.mapping);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([t,o])=>{const r=await D(e,o,{collector:n});e=b(e,t,r)}));let a=t.data&&await D(e,t.data,{collector:n});const i=Boolean(null==r?void 0:r.skip);if(r){if(r.ignore)return{event:e,data:a,mapping:r,mappingKey:s,ignore:!0,skip:i};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await D(e,r.data,{collector:n});a=y(a)&&y(t)?f(a,t):t}}const c=null!=(o=null==r?void 0:r.include)?o:t.include;if(c&&c.length>0){const t=function(e,t){const n={},o=t.includes("all")?Object.keys(w):t;for(const t of o){const o=w[t];if(!o)continue;const r=o(e);if(y(r))for(const[e,o]of Object.entries(r)){if(void 0===o)continue;const r="context"===t&&Array.isArray(o)?o[0]:o;n[`${t}_${e}`]=r}}return n}(e,c);Object.keys(t).length>0&&(a=y(a)?f(t,a):null!=a?a:t)}return{event:e,data:a,mapping:r,mappingKey:s,ignore:!1,skip:i}}function T(e,t,n,o){return function(...r){let s;const a="pre"+t,i="post"+t,c=n[a],u=n[i],l=(e,t)=>{o?o.warn(e,{error:t}):console.warn(e,t)};if(c)try{s=c({fn:e},...r)}catch(t){l(`Hook ${String(a)} failed, falling back to original function`,t),s=e(...r)}else s=e(...r);if(u)try{s=u({fn:e,result:s},...r)}catch(e){l(`Hook ${String(i)} failed, keeping original result`,e)}return s}}function M(e){if("*"===e)return()=>!0;if("and"in e){const t=e.and.map(M);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(M);return e=>t.some(t=>t(e))}return function(e){const{key:t,operator:n,value:o,not:r}=e,s=function(e,t){switch(e){case"eq":return e=>String(null!=e?e:"")===t;case"contains":return e=>String(null!=e?e:"").includes(t);case"prefix":return e=>String(null!=e?e:"").startsWith(t);case"suffix":return e=>String(null!=e?e:"").endsWith(t);case"regex":{const e=new RegExp(t);return t=>e.test(String(null!=t?t:""))}case"gt":{const e=Number(t);return t=>Number(t)>e}case"lt":{const e=Number(t);return t=>Number(t)<e}case"exists":return e=>null!=e}}(n,o);return e=>{const n=h(e,t),o=s(n);return r?!o:o}}(e)}function C(e){return Array.isArray(e)&&e.length>0&&"object"==typeof e[0]&&null!==e[0]&&"match"in e[0]}function U(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;return C(e)?{type:"routes",routes:e.map(e=>({match:M(e.match),next:U(e.next)}))}:{type:"chain",value:e}}}}function N(e,t={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;for(const n of e.routes)if(n.match(t))return N(n.next,t)}}function H(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function K(e){var t;return{full:null!=(t=e.full)&&t,storeId:e.store,rules:e.rules.map(e=>({match:M(e.match),key:e.key,ttl:e.ttl,update:e.update}))}}function B(e,t,n,o){const r=e.rules.find(e=>e.match(n));if(!r)return null;const s=r.key.map(e=>{var t;return String(null!=(t=h(n,e))?t:"")});if(s.every(e=>""===e))return null;const a=`${o}:${s.join(":")}`,i=t.get(a);return void 0!==i?{status:"HIT",key:a,value:i,rule:r}:{status:"MISS",key:a,rule:r}}function G(e,t,n,o){e.set(t,n,1e3*o)}async function W(e,t,n){if(!t)return e;let o=e;for(const[e,r]of Object.entries(t))o=b(o,e,await D(n,r));return o}var F=!1;function V(e,t,n,o=globalThis.window){const r=t.settings,s=o[(null==r?void 0:r.name)||"dataLayer"];if(Array.isArray(s)&&!F){F=!0;try{const t=null!=n?n:s.length;for(let n=0;n<t;n++)z(e,r,s[n])}finally{F=!1}}}function z(e,t={},n){if(t.filter){if(!0===L(()=>t.filter(n),()=>!1)())return}const o=function(e){if(y(e)&&v(e.event)){const{event:t,...n}=e;return{name:t,...n}}if(d(e)&&e.length>=2)return J(e);if(t=e,null!=t&&"object"==typeof t&&"length"in t&&"number"==typeof t.length&&t.length>0){return J(Array.from(e))}var t;return null}(n);if(!o)return;const r=`${t.prefix||"dataLayer"} ${o.name}`,{name:s,...a}=o,i={name:r,data:a};L(()=>e(i),()=>{})()}function J(e){const[t,n,o]=e;if(!v(t))return null;let r,s={};switch(t){case"consent":if(!v(n)||e.length<3)return null;if("default"!==n&&"update"!==n)return null;if(!y(o)||null===o)return null;r=`${t} ${n}`,s={...o};break;case"event":if(!v(n))return null;r=n,y(o)&&(s={...o});break;case"config":if(!v(n))return null;r=`${t} ${n}`,y(o)&&(s={...o});break;case"set":if(v(n))r=`${t} ${n}`,y(o)&&(s={...o});else{if(!y(n))return null;r=`${t} custom`,s={...n}}break;default:return null}return{name:r,...s}}var Q={},X={};r(X,{push:()=>te});var Y=()=>{},Z=()=>()=>Promise.resolve({ok:!0}),ee={error:Y,warn:Y,info:Y,debug:Y,throw:e=>{throw"string"==typeof e?new Error(e):e},json:Y,scope:()=>ee},te={get push(){return Z()},get command(){return Z()},get elb(){return Z()},get window(){return{dataLayer:[],addEventListener:Y,removeEventListener:Y}},logger:ee},ne={};r(ne,{consentUpdate:()=>re,directEvent:()=>ie,gtagAddToCart:()=>se,gtagPurchase:()=>oe,gtagViewItem:()=>ae});var oe={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},re={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},se={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},ae={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},ie={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},ce={Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"};function ue(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache}function le(e){var t;const n={};for(const[o,r]of Object.entries(e)){const e=null==(t=r.config)?void 0:t.next;e&&!C(e)?n[o]={next:e}:n[o]={}}return n}function fe(e,t){const n=e.config||{},o=e[t];return void 0!==o?{config:{...n,[t]:o},chainValue:o}:{config:n,chainValue:void 0}}function de(e,t={}){if(!e)return[];if(Array.isArray(e))return e;const n=[],o=new Set;let r=e;for(;r&&t[r]&&!o.has(r);){o.add(r),n.push(r);const e=t[r].next;if(Array.isArray(e)){n.push(...e);break}r=e}return n}async function ge(e,t,n){if(t.init&&!t.config.init){const o=t.type||"unknown",r=e.logger.scope(`transformer:${o}`),s={collector:e,logger:r,id:n,ingest:u(n),config:t.config,env:ve(t.config.env)};r.debug("init");const a=await T(t.init,"TransformerInit",e.hooks,e.logger)(s);if(!1===a)return!1;t.config={...a||t.config,env:(null==a?void 0:a.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function pe(e,t,n,o,r,s){const a=t.type||"unknown",i=e.logger.scope(`transformer:${a}`),c={collector:e,logger:i,id:n,ingest:r,config:t.config,env:{...ve(t.config.env),...s?{respond:s}:{}}};i.debug("push",{event:o.name});const u=await T(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return i.debug("push done"),u}async function ye(e,t,n,o,r,s,a){var i,c,l,f,d,g;a&&(null==r?void 0:r._meta)&&(r._meta.chainPath=a);let p=o,y=s;for(const o of n){const s=t[o];if(!s){e.logger.warn(`Transformer not found: ${o}`);continue}if(r&&r._meta&&r._meta.path.length>256)return e.logger.error(`Max path length exceeded at ${o}`),{event:null,respond:y};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await P(ge)(e,s,o))return e.logger.error(`Transformer init failed: ${o}`),{event:null,respond:y};if(a&&void 0!==(null==(c=null==(i=s.config)?void 0:i.chainMocks)?void 0:c[a])){const t=s.config.chainMocks[a];e.logger.scope(`transformer:${s.type||"unknown"}`).debug("chainMock",{chain:a}),p=t;continue}if(void 0!==(null==(l=s.config)?void 0:l.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),p=s.config.mock;continue}if(null==(f=s.config)?void 0:f.disabled)continue;const v=null==(d=s.config)?void 0:d.cache,m=v?K(v):void 0,h=m?ue(m,e):void 0;let b;if(m&&h){const e=B(m,h,H(r,p),`t:${o}`);if("HIT"===(null==e?void 0:e.status)&&e.value){if(p=e.value,m.full)return{event:p,respond:y};continue}"MISS"===(null==e?void 0:e.status)&&(b={key:e.key,ttl:e.rule.ttl})}const w=s.config.before;if(w){const n=de("string"==typeof w||Array.isArray(w)&&!C(w)?w:N(U(w),H(r,p))||void 0,le(t));if(n.length>0){const o=await ye(e,t,n,p,r,y,a);if(null===o.event)return{event:null,respond:null!=(g=o.respond)?g:y};o.respond&&(y=o.respond),p=Array.isArray(o.event)?o.event[0]:o.event}}const k=await P(pe,t=>(e.logger.scope(`transformer:${s.type||"unknown"}`).error("Push failed",{error:t}),!1))(e,s,o,p,r,y);if(!1===k)return{event:null,respond:y};if(Array.isArray(k)){const s=n.slice(n.indexOf(o)+1),i=await Promise.all(k.map(async n=>{const o=n.event||p,i=r?{...r,_meta:{...r._meta,path:[...r._meta.path]}}:u("unknown");if(n.next){let r=n.next;if(C(n.next)){r=N(U(n.next),H(i,o))}if(r){const n=de(r,le(t));if(n.length>0)return ye(e,t,n,o,i,y,a)}return{event:o,respond:y}}return s.length>0?ye(e,t,s,o,i,y,a):{event:o,respond:y}}));let c=y;const l=[];for(const e of i.flat())if(null!==e)if(e&&"object"==typeof e&&"event"in e){const t=e;if(t.respond&&(c=t.respond),null===t.event)continue;Array.isArray(t.event)?l.push(...t.event):l.push(t.event)}else l.push(e);return 0===l.length?{event:null,respond:c}:1===l.length?{event:l[0],respond:c}:{event:l,respond:c}}if(k&&"object"==typeof k){const{event:n,respond:o,next:s}=k;if(o&&(y=o),s){let o=s;if(C(s)){if(o=N(U(s),H(r,p)),!o){n&&(p=n);continue}}const i=de(o,le(t));return i.length>0?ye(e,t,i,n||p,r,y,a):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:y})}n&&(p=n)}if(b&&h&&G(h,b.key,p,b.ttl),(!k||"object"==typeof k&&!k.next)&&s.config.next&&C(s.config.next)){const n=N(U(s.config.next),H(r,p));if(n){const o=de(n,le(t));if(o.length>0)return ye(e,t,o,p,r,y,a)}return{event:p,respond:y}}}return{event:p,respond:y}}function ve(e){return e&&y(e)?e:{}}async function me(e,t,n){var o;const{code:r,config:s={},env:a={},primary:i,next:c,before:l,cache:f}=n;let d,g=u(t);const p=f?K({...f,full:null==(o=f.full)||o}):void 0,y=U(c),v=Array.isArray(c)&&C(c)||!y?void 0:de(N(y),le(e.transformers)),m=U(l),h=Array.isArray(l)&&C(l)||!m?void 0:de(N(m),le(e.transformers)),b=e.logger.scope("source").scope(t),w={push:async(n,o={})=>{let r,a=n;const i=null!=h?h:m?de(N(m,H(g)),le(e.transformers)):[];if(i.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,i,a,g,d,`source.${t}.before`);if(null===n.event)return{ok:!0};n.respond&&(d=n.respond),a=Array.isArray(n.event)?n.event[0]:n.event}if(p){const n=ue(p,e);if(n){const e=H(g),o=B(p,n,e,`s:${t}`);if(o){if("HIT"===o.status&&void 0!==o.value&&p.full){let t=o.value;return o.rule.update&&(t=await W(t,o.rule.update,{...e,cache:{status:"HIT"}})),null==d||d(t),{ok:!0}}if("MISS"===o.status&&p.full&&d){const t=d,s=o.rule.update,a={...e,cache:{status:"MISS"}},i=o.key,c=o.rule.ttl;d=e=>{G(n,i,e,c),s?r=(async()=>{const n=await W(e,s,a);t(n)})():t(e)}}"MISS"!==o.status||p.full||G(n,o.key,!0,o.rule.ttl)}}}const c=null!=v?v:y?de(N(y,H(g)),le(e.transformers)):[],u=await e.push(a,{...o,id:t,ingest:g,respond:d,mapping:s,preChain:c});return r&&await r,u},command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:b,...a},k={collector:e,logger:b,id:t,config:s,env:w,setIngest:async n=>{if(!s.ingest)return void(g=u(t));const o=await D(n,s.ingest,{collector:e}),r=u(t);g={...r,...o,_meta:r._meta}},setRespond:e=>{d=e}},j=await P(r)(k);if(!j)return;const O=j.type||"unknown",_=e.logger.scope(O).scope(t);return w.logger=_,i&&(j.config={...j.config,primary:i}),j}function he(e,t,n,o,r){if(!t.on)return;const s=t.type||"unknown",a=e.logger.scope(s).scope("on").scope(o),i={collector:e,logger:a,id:n,config:t.config,data:r,env:Se(t.env,t.config.env)};L(t.on)(o,i)}function be(e,t,n,o){let r;switch(t){case ce.Consent:r=o||e.consent;break;case ce.Session:r=e.session;break;case ce.User:r=o||e.user;break;case ce.Custom:r=o||e.custom;break;case ce.Globals:r=o||e.globals;break;case ce.Config:r=o||e.config;break;case ce.Ready:case ce.Run:default:r=void 0}if(n.length)switch(t){case ce.Consent:!function(e,t,n){const o=n||e.consent;t.forEach(t=>{Object.keys(o).filter(e=>e in t).forEach(n=>{L(t[n])(e,o)})})}(e,n,o);break;case ce.Ready:case ce.Run:a=n,(s=e).allowed&&a.forEach(e=>{L(e)(s)});break;case ce.Session:!function(e,t){e.session&&t.forEach(t=>{L(t)(e,e.session)})}(e,n);break;default:n.forEach(t=>{"function"==typeof t&&L(t)(e,r)})}var s,a}function we(e,t,n,o){if(!e)return[];if(t){const e=N(t,H(o));return e?de(e,le(n)):[]}return de(e,le(n))}async function ke(e,t,n){const{code:o,config:r={},env:s={},before:a,next:i,cache:c}=t;if(!p(o.push))return Ae({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const u=n||r||{init:!1};let l=a?{...u,before:a}:{...u};i&&(l={...l,next:i}),c&&(l={...l,cache:c});const f={...o,config:l,env:Se(o.env,s)};let d=f.config.id;if(!d)do{d=j(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),je(e,void 0,{},{[d]:f})}async function je(e,t,n={},o){const{allowed:r,consent:s,globals:a,user:i}=e;if(!r)return Ae({ok:!1});t&&(e.queue.push(t),e.status.in++),o||(o=e.destinations);const c=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var c,l,d;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let g=(r.queuePush||[]).map(e=>({...e,consent:s}));r.queuePush=[],t&&g.push(m(t));const p=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:u("unknown");if(!g.length&&!(null==(c=r.queueOn)?void 0:c.length))return{id:o,destination:r,skipped:!0};if(!g.length&&(null==(l=r.queueOn)?void 0:l.length)){const t=await P(Oe)(e,r,o);return{id:o,destination:r,skipped:!t}}const y=[],v=g.filter(e=>{const t=k(r.config.consent,s,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(r.queuePush.push(...v),!y.length)return{id:o,destination:r,queue:g};if(!await P(Oe)(e,r,o))return{id:o,destination:r,queue:g};let h,b;r.dlq||(r.dlq=[]);const w=r.config.before,j=we(w,w&&C(w)?U(w):void 0,e.transformers,p),O=r.config.next,_=O&&C(O)?U(O):void 0,A=null==(d=r.config)?void 0:d.cache,x=A?K(A):void 0,S=x?ue(x,e):void 0;let $=0;return await Promise.all(y.map(async t=>{let s;if(t.globals=f(a,t.globals),t.user=f(i,t.user),(null==x?void 0:x.full)&&S){const e=H(p,t),n=B(x,S,e,`d:${o}`);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(s={key:n.key,ttl:n.rule.ttl})}let c=t,u=n.respond;if(j.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await ye(e,e.transformers,j,t,p,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(u=r.respond),c=Array.isArray(r.event)?r.event[0]:r.event}if(x&&!x.full&&S){const e=H(p,c),n=B(x,S,e,`d:${o}`);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(s={key:n.key,ttl:n.rule.ttl})}const l=Date.now();let d=!1;const g=await P(_e,t=>{const n=r.type||"unknown";e.logger.scope(n).error("Push failed",{error:t,event:c.name}),h=t,d=!0,r.dlq.push([c,t])})(e,r,o,c,p,u);if($+=Date.now()-l,s&&S&&void 0===r.config.mock&&G(S,s.key,null==g||g,s.ttl),void 0!==g&&(b=g),!d&&O){void 0!==g&&(p._response=g);const t=we(O,_,e.transformers,p);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,t,c,p,u,`destination.${o}.next`);n.respond&&(u=n.respond)}}return t})),{id:o,destination:r,error:h,response:b,totalDuration:$}})),l={},d={},g={};for(const t of c){if(t.skipped)continue;const n={type:t.destination.type||"unknown",data:t.response};e.status.destinations[t.id]||(e.status.destinations[t.id]={count:0,failed:0,duration:0});const o=e.status.destinations[t.id],r=Date.now();t.error?(n.error=t.error,g[t.id]=n,o.failed++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.failed++):t.queue&&t.queue.length?d[t.id]=n:(l[t.id]=n,o.count++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.out++)}return Ae({event:t,...Object.keys(l).length&&{done:l},...Object.keys(d).length&&{queued:d},...Object.keys(g).length&&{failed:g}})}async function Oe(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",s=e.logger.scope(r),a={collector:e,logger:s,id:n,config:t.config,env:Se(t.env,t.config.env)};s.debug("init");const i=await T(t.init,"DestinationInit",e.hooks,e.logger)(a);if(!1===i)return i;if(t.config={...i||t.config,init:!0},null==(o=t.queueOn)?void 0:o.length){const o=t.queueOn;t.queueOn=[];for(const{type:r,data:s}of o)he(e,t,n,r,s)}s.debug("init done")}return!0}async function _e(e,t,n,o,r,s){const{config:a}=t,i=await I(o,a,e);if(i.ignore)return!1;const c=t.type||"unknown",u=e.logger.scope(c),l={collector:e,logger:u,id:n,config:a,data:i.data,rule:i.mapping,ingest:r,env:{...Se(t.env,a.env),...s?{respond:s}:{}}};if(void 0!==a.mock)return u.debug("mock",{event:i.event.name}),a.mock;const f=i.mapping,d=i.mappingKey||"* *";if(!(null==f?void 0:f.batch)||!t.pushBatch||void 0!==a.mock){u.debug("push",{event:i.event.name});const n=await T(t.push,"DestinationPush",e.hooks,e.logger)(i.event,l);return u.debug("push done"),n}{if(t.batches=t.batches||{},!t.batches[d]){const o={key:d,events:[],data:[]};t.batches[d]={batched:o,batchFn:O(()=>{const o=t.batches[d].batched,i={collector:e,logger:u,id:n,config:a,data:void 0,rule:f,ingest:r,env:{...Se(t.env,a.env),...s?{respond:s}:{}}};u.debug("push batch",{events:o.events.length}),T(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(o,i),u.debug("push batch done"),o.events=[],o.data=[]},f.batch)}}const o=t.batches[d];o.batched.events.push(i.event),g(i.data)&&o.batched.data.push(i.data),o.batchFn()}return!0}function Ae(e){return{ok:!(null==e?void 0:e.failed),...e}}function xe(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:s}=fe(e,"before"),{config:a}=fe({...e,config:s},"next"),i={...t.config,...n,...a};r&&(i.cache=r);const c=Se(t.env,o);return{...t,config:i,env:c}}function Se(e,t){return e||t?t?e&&y(e)&&y(t)?{...e,...t}:t:e:{}}async function $e(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const s=o.destroy;if(!s)return;const a=o.type||"unknown",i=n.scope(a),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:i};try{await Promise.race([s(c),new Promise((n,o)=>setTimeout(()=>o(new Error(`${t} '${e}' destroy timed out`)),5e3))])}catch(n){i.error(`${t} '${e}' destroy failed: ${n}`)}});await Promise.allSettled(o)}async function qe(e,t,n,o){let r,s,a=!1;switch(t){case ce.Config:y(n)&&(f(e.config,n,{shallow:!1}),s=n,a=!0);break;case ce.Consent:if(y(n)){const{update:t}=function(e,t){const n={};return Object.entries(t).forEach(([e,t])=>{n[e]=!!t}),e.consent=f(e.consent,n),{update:n}}(e,n);s=t,a=!0}break;case ce.Custom:y(n)&&(e.custom=f(e.custom,n),s=n,a=!0);break;case ce.Destination:y(n)&&("code"in n&&y(n.code)?r=await ke(e,n,o):p(n.push)&&(r=await ke(e,{code:n},o)));break;case ce.Globals:y(n)&&(e.globals=f(e.globals,n),s=n,a=!0);break;case ce.On:v(n)&&await async function(e,t,n){const o=e.on,r=o[t]||[],s=d(n)?n:[n];s.forEach(e=>{r.push(e)}),o[t]=r,be(e,t,s)}(e,n,o);break;case ce.Ready:a=!0;break;case ce.Run:r=await async function(e,t){return e.allowed=!0,e.count=0,e.group=j(),e.timing=Date.now(),t&&(t.consent&&(e.consent=f(e.consent,t.consent)),t.user&&(e.user=f(e.user,t.user)),t.globals&&(e.globals=f(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=f(e.custom,t.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await je(e)}(e,n),a=!0;break;case ce.Session:a=!0;break;case ce.Shutdown:await async function(e){const t=e.logger;await $e(e.sources,"source",t),await $e(e.destinations,"destination",t),await $e(e.transformers,"transformer",t),await $e(e.stores,"store",t)}(e);break;case ce.User:y(n)&&(f(e.user,n,{shallow:!1}),s=n,a=!0)}return a&&(await async function(e,t,n,o){let r,s=n||[];switch(n||(s=e.on[t]||[]),t){case ce.Consent:r=o||e.consent;break;case ce.Session:r=e.session;break;case ce.User:r=o||e.user;break;case ce.Custom:r=o||e.custom;break;case ce.Globals:r=o||e.globals;break;case ce.Config:r=o||e.config;break;case ce.Ready:case ce.Run:default:r=void 0}let a=!1;for(const n of Object.values(e.sources))n.on&&!1===await P(n.on)(t,r)&&(a=!0);return Object.entries(e.destinations).forEach(([n,o])=>{if(o.on){if(!o.config.init)return o.queueOn=o.queueOn||[],void o.queueOn.push({type:t,data:r});he(e,o,n,t,r)}}),(Object.keys(e.pending.sources).length>0||Object.keys(e.pending.destinations).length>0)&&await async function(e,t){var n,o;for(const[o,r]of Object.entries(e.pending.sources)){if(!e.pending.sources[o]||e.sources[o])continue;const s=null==(n=r.config)?void 0:n.require;if(!s)continue;const a=s.indexOf(t);if(-1===a)continue;if(s.splice(a,1),s.length>0)continue;delete e.pending.sources[o];const i=await me(e,o,r);i&&(e.sources[o]=i)}for(const[n,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[n]||e.destinations[n])continue;const s=null==(o=r.config)?void 0:o.require;if(!s)continue;const a=s.indexOf(t);if(-1===a)continue;if(s.splice(a,1),s.length>0)continue;delete e.pending.destinations[n];const i=xe(r);!1!==i.config.queue&&(i.queuePush=[...e.queue]),e.destinations[n]=i}}(e,t),be(e,t,s,o),!a}(e,t,void 0,s),r=await je(e)),r||Ae({ok:!0})}function Ee(e,t){if(!t.name)throw new Error("Event name is required");const[n,o]=t.name.split(" ");if(!n||!o)throw new Error("Event name is invalid");++e.count;const{timestamp:r=Date.now(),group:s=e.group,count:a=e.count}=t,{name:i=`${n} ${o}`,data:c={},context:u={},globals:l=e.globals,custom:f={},user:d=e.user,nested:g=[],consent:p=e.consent,id:y=`${r}-${s}-${a}`,trigger:v="",entity:m=n,action:h=o,timing:b=0,version:w={source:e.version,tagging:e.config.tagging||0},source:k={type:"collector",id:"",previous_id:""}}=t;return{name:i,data:c,context:u,globals:l,custom:f,user:d,nested:g,consent:p,id:y,trigger:v,entity:m,action:h,timestamp:r,timing:b,group:s,count:a,version:w,source:k}}async function Le(e){var t,n;const o=f({globalsStatic:{},sessionStatic:{},tagging:0,run:!0},e,{merge:!1,extend:!1}),r=S({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),s={...o.globalsStatic,...e.globals},a={allowed:!1,config:o,consent:e.consent||{},count:0,custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:s,group:"",hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:e.user||{},version:"3.4.1-next-1776790594143",sources:{},pending:{sources:{},destinations:{}},push:void 0,command:void 0};var i,c;a.push=function(e,t){return T(async(n,o={})=>await P(async()=>{var r;const s=Date.now(),{id:a,ingest:i,respond:c,mapping:l,preChain:f,include:d,exclude:g}=o;let p=c,y=n;const v=d||g?function(e,t,n){let o=e;return t&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>t.includes(e)))),n&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>!n.includes(e)))),o}(e.destinations,d,g):void 0,m=null!=i?i:u(a||"unknown");if(l){const t=await I(y,l,e);if(t.ignore)return Ae({ok:!0});if(l.consent&&!k(l.consent,e.consent,t.event.consent))return Ae({ok:!0});y=t.event}if((null==f?void 0:f.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,f,y,m,p,a?`source.${a}.next`:void 0);if(null===n.event)return Ae({ok:!0});if(n.respond&&(p=n.respond),Array.isArray(n.event)){const o=await Promise.all(n.event.map(async n=>{const o=t(n),r=Ee(e,o);return je(e,r,{id:a,ingest:m,respond:p},v)}));if(a){e.status.sources[a]||(e.status.sources[a]={count:0,duration:0});const t=e.status.sources[a];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-s}return null!=(r=o[0])?r:Ae({ok:!0})}y=n.event}const h=t(y),b=Ee(e,h),w=await je(e,b,{id:a,ingest:m,respond:p},v);if(a){e.status.sources[a]||(e.status.sources[a]={count:0,duration:0});const t=e.status.sources[a];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-s}return w},()=>Ae({ok:!1}))(),"Push",e.hooks,e.logger)}(a,e=>({timing:Math.round((Date.now()-a.timing)/10)/100,source:{type:"collector",id:"",previous_id:""},...e})),a.command=(c=qe,T(async(e,t,n)=>await P(async()=>await c(i,e,t,n),()=>Ae({ok:!1}))(),"Command",(i=a).hooks,i.logger));const l=e.stores||{};if(a.stores=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,config:s={},env:a={}}=r,i=e.logger.scope("store").scope(o),c={collector:e,logger:i,id:o,config:s,env:a},u=await t(c),l=u.get,f=u.set,d=u.delete;u.get=T(l,"StoreGet",e.hooks,e.logger),u.set=T(f,"StoreSet",e.hooks,e.logger),u.delete=T(d,"StoreDelete",e.hooks,e.logger),n[o]=u}return n}(a,l),function(e,t,n){const o=new Map;for(const[n,r]of Object.entries(e))t[n]&&o.set(r,t[n]);if(0!==o.size)for(const e of[n.transformers,n.destinations,n.sources])if(e)for(const t of Object.values(e))r(t.env);function r(e){if(e)for(const[t,n]of Object.entries(e))if("object"==typeof n&&null!==n){const r=o.get(n);r&&(e[t]=r)}}}(l,a.stores,e),!a.stores.__cache){const e=new Map;a.stores.__cache={type:"memory",config:{},get:t=>{const n=e.get(t);if(n){if(!(n.expires&&Date.now()>n.expires))return n.value;e.delete(t)}},set:(t,n,o)=>{e.set(t,{value:n,expires:o?Date.now()+o:void 0})},delete:t=>{e.delete(t)}}}return a.destinations=await async function(e,t={}){var n,o;const r={};for(const[s,a]of Object.entries(t))(null==(o=null==(n=a.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[s]=a:r[s]=xe(a);return r}(a,e.destinations||{}),a.transformers=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,env:s={}}=r,{config:a}=fe(r,"before"),{config:i}=fe({...r,config:a},"next"),c=Object.keys(s).length>0?{...i,env:s}:i,{cache:l}=r,f=l?{...c,cache:l}:c,d=e.logger.scope("transformer").scope(o),g={collector:e,logger:d,id:o,ingest:u(o),config:f,env:s},p=await t(g);n[o]=p}return n}(a,e.transformers||{}),a}async function Pe(e){e=e||{};const t=await Le(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,s,a)=>{if("string"==typeof e&&e.startsWith("walker ")){const r=e.replace("walker ","");return o.command(r,t,n)}let i;if("string"==typeof e)i={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(i.data=t);else{if(!e||"object"!=typeof e)return Ae({ok:!1});i=e,t&&"object"==typeof t&&!Array.isArray(t)&&(i.data={...i.data||{},...t})}return r&&"object"==typeof r&&(i.context=r),s&&Array.isArray(s)&&(i.nested=s),a&&"object"==typeof a&&(i.custom=a),o.push(i)}});var o;t.sources.elb=n;const r=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{config:t={}}=r;if(t.require&&t.require.length>0){e.pending.sources[o]=r;continue}const s=await me(e,o,r);s&&(n[o]=s)}return n}(t,e.sources||{});Object.assign(t.sources,r);const{consent:s,user:a,globals:i,custom:c}=e;s&&await t.command("consent",s),a&&await t.command("user",a),i&&Object.assign(t.globals,i),c&&Object.assign(t.custom,c),t.config.run&&await t.command("run");let u=n.push;const l=Object.values(t.sources).filter(e=>"elb"!==e.type),f=l.find(e=>e.config.primary);return f?u=f.push:l.length>0&&(u=l[0].push),{collector:t,elb:u}}var De,Re=async e=>{let t;return{get flow(){return t},trigger:()=>async n=>{var o,r;if(!t){const n={...e};if(n.sources){n.sources={...n.sources};for(const[e,t]of Object.entries(n.sources))(null==(o=t.env)?void 0:o.window)||(n.sources[e]={...t,env:{...t.env,window:window}})}const s=await Pe({...n,run:null==(r=n.run)||r});t={collector:s.collector,elb:s.elb}}const s=window;s.dataLayer||(s.dataLayer=[]),s.dataLayer.push(n)}}},Ie=(e,t)=>{const n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},Te=async e=>{const{config:t,env:n}=e,{elb:o,window:r}=n,s={name:"dataLayer",prefix:"dataLayer",...null==t?void 0:t.settings},a={settings:s};let i=0;if(r){const t=s.name||"dataLayer",n=r[t];i=Array.isArray(n)?n.length:0;const c=r;!function(e,t,n=globalThis.window){const o=t.settings,r=(null==o?void 0:o.name)||"dataLayer";n[r]||(n[r]=[]);const s=n[r];if(!Array.isArray(s))return;const a=s.push.bind(s);s.push=function(...t){if(F)return a(...t);F=!0;try{for(const n of t)z(e,o,n)}finally{F=!1}return a(...t)}}(o,a,c),e.collector.allowed&&i>0&&(V(o,a,i,c),i=0)}return{type:"dataLayer",config:a,push:o,on:async e=>{if("run"===e&&r&&i>0){V(o,a,i,r),i=0}},destroy:async()=>{const e=s.name||"dataLayer";r&&r[e]&&Array.isArray(r[e])}}},Me=Te;return De=s,((r,s,a,i)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let c of n(s))o.call(r,c)||c===a||e(r,c,{get:()=>s[c],enumerable:!(i=t(s,c))||i.enumerable});return r})(e({},"__esModule",{value:!0}),De)})();
|
|
1
|
+
"use strict";var Destination=(()=>{var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,r=(t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})},s={};r(s,{SourceDataLayer:()=>Q,createTrigger:()=>Re,default:()=>Me,env:()=>X,sourceDataLayer:()=>Te,step:()=>ne,trigger:()=>Ie});var a=Object.defineProperty;((e,t)=>{for(var n in t)a(e,n,{get:t[n],enumerable:!0})})({},{Level:()=>c});var i,c=((i=c||{})[i.ERROR=0]="ERROR",i[i.WARN=1]="WARN",i[i.INFO=2]="INFO",i[i.DEBUG=3]="DEBUG",i);function u(e){return{_meta:{hops:0,path:[e]}}}var l={merge:!0,shallow:!0,extend:!0};function f(e,t={},n={}){n={...l,...n};const o=Object.entries(t).reduce((t,[o,r])=>{const s=e[o];return n.merge&&Array.isArray(s)&&Array.isArray(r)?t[o]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...s]):(n.extend||o in e)&&(t[o]=r),t},{});return n.shallow?{...e,...o}:(Object.assign(e,o),e)}function d(e){return Array.isArray(e)}function g(e){return void 0!==e}function p(e){return"function"==typeof e}function y(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function v(e){return"string"==typeof e}function m(e,t=new WeakMap){if("object"!=typeof e||null===e)return e;if(t.has(e))return t.get(e);const n=Object.prototype.toString.call(e);if("[object Object]"===n){const n={};t.set(e,n);for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=m(e[o],t));return n}if("[object Array]"===n){const n=[];return t.set(e,n),e.forEach(e=>{n.push(m(e,t))}),n}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){const t=e;return new RegExp(t.source,t.flags)}return e}function h(e,t="",n){const o=t.split(".");let r=e;for(let e=0;e<o.length;e++){const t=o[e];if("*"===t&&d(r)){const t=o.slice(e+1).join("."),s=[];for(const e of r){const o=h(e,t,n);s.push(o)}return s}if(r=r instanceof Object?r[t]:void 0,void 0===r)break}return g(r)?r:n}function b(e,t,n){if(!y(e))return e;const o=m(e),r=t.split(".");let s=o;for(let e=0;e<r.length;e++){const t=r[e];e===r.length-1?s[t]=n:(t in s&&"object"==typeof s[t]&&null!==s[t]||(s[t]={}),s=s[t])}return o}var w={data:e=>e.data,globals:e=>e.globals,context:e=>e.context,user:e=>e.user,source:e=>e.source,version:e=>e.version,event:e=>({entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,group:e.group,count:e.count,timing:e.timing})};function k(e,t={},n={}){const o={...t,...n},r={};let s=!e||0===Object.keys(e).length;return Object.keys(o).forEach(t=>{o[t]&&(r[t]=!0,e&&e[t]&&(s=!0))}),!!s&&r}function j(e=6,t){if(t){const n=t.length;let o="";for(let r=0;r<e;r++)o+=t[Math.random()*n|0];return o}let n="";for(let t=36;n.length<e;)n+=(Math.random()*t|0).toString(t);return n}function O(e,t=1e3,n=!1){let o,r=null,s=!1;return(...a)=>new Promise(i=>{const c=n&&!s;r&&clearTimeout(r),r=setTimeout(()=>{r=null,n&&!s||(o=e(...a),i(o))},t),c&&(s=!0,o=e(...a),i(o))})}function _(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function A(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=_(e)):n=e,void 0!==t&&(t instanceof Error?o.error=_(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=_(o.error))):o.value=t),{message:n,context:o}}var x=(e,t,n,o)=>{const r=`${c[e]}${o.length>0?` [${o.join(":")}]`:""}`,s=Object.keys(n).length>0,a=0===e?console.error:1===e?console.warn:console.log;s?a(r,t,n):a(r,t)};function S(e={}){return $({level:void 0!==e.level?(t=e.level,"string"==typeof t?c[t]:t):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var t}function $(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=t){const t=A(o,s);n?n(e,t.message,t.context,r,x):x(e,t.message,t.context,r)}};return{error:(e,t)=>s(0,e,t),warn:(e,t)=>s(1,e,t),info:(e,t)=>s(2,e,t),debug:(e,t)=>s(3,e,t),throw:(e,t)=>{const o=A(e,t);throw n?n(0,o.message,o.context,r,x):x(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>$({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function q(e){return function(e){return"boolean"==typeof e}(e)||v(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!g(e)||d(e)&&e.every(q)||y(e)&&Object.values(e).every(q)}function E(e){return q(e)?e:void 0}function L(e,t,n){return function(...o){try{return e(...o)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function P(e,t,n){return async function(...o){try{return await e(...o)}catch(e){if(!t)return;return await t(e)}finally{await(null==n?void 0:n())}}}async function D(e,t={},n={}){var o;if(!g(e))return;const r=y(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),s=d(t)?t:[t];for(const t of s){const o=await P(R)(e,t,{...n,consent:r});if(g(o))return o}}async function R(e,t,n={}){const{collector:o,consent:r}=n;return(d(t)?t:[t]).reduce(async(t,s)=>{const a=await t;if(a)return a;const i=v(s)?{key:s}:s;if(!Object.keys(i).length)return;const{condition:c,consent:u,fn:l,key:f,loop:p,map:y,set:m,validate:b,value:w}=i;if(c&&!await P(c)(e,s,o))return;if(u&&!k(u,r))return w;let j=g(w)?w:e;if(l&&(j=await P(l)(e,s,n)),f&&(j=h(e,f,w)),p){const[t,o]=p,r="this"===t?[e]:await D(e,t,n);d(r)&&(j=(await Promise.all(r.map(e=>D(e,o,n)))).filter(g))}else y?j=await Object.entries(y).reduce(async(t,[o,r])=>{const s=await t,a=await D(e,r,n);return g(a)&&(s[o]=a),s},Promise.resolve({})):m&&(j=await Promise.all(m.map(t=>R(e,t,n))));b&&!await P(b)(j)&&(j=void 0);const O=E(j);return g(O)?O:E(w)},Promise.resolve(void 0))}async function I(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await D(e,o,{collector:n});e=b(e,t,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,t){var n;const[o,r]=(e.name||"").split(" ");if(!t||!o||!r)return{};let s,a="",i=o,c=r;const u=t=>{if(t)return(t=d(t)?t:[t]).find(t=>!t.condition||t.condition(e))};t[i]||(i="*");const l=t[i];return l&&(l[c]||(c="*"),s=u(l[c])),s||(i="*",c="*",s=u(null==(n=t[i])?void 0:n[c])),s&&(a=`${i} ${c}`),{eventMapping:s,mappingKey:a}}(e,t.mapping);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([t,o])=>{const r=await D(e,o,{collector:n});e=b(e,t,r)}));let a=t.data&&await D(e,t.data,{collector:n});const i=Boolean(null==r?void 0:r.skip);if(r){if(r.ignore)return{event:e,data:a,mapping:r,mappingKey:s,ignore:!0,skip:i};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await D(e,r.data,{collector:n});a=y(a)&&y(t)?f(a,t):t}}const c=null!=(o=null==r?void 0:r.include)?o:t.include;if(c&&c.length>0){const t=function(e,t){const n={},o=t.includes("all")?Object.keys(w):t;for(const t of o){const o=w[t];if(!o)continue;const r=o(e);if(y(r))for(const[e,o]of Object.entries(r)){if(void 0===o)continue;const r="context"===t&&Array.isArray(o)?o[0]:o;n[`${t}_${e}`]=r}}return n}(e,c);Object.keys(t).length>0&&(a=y(a)?f(t,a):null!=a?a:t)}return{event:e,data:a,mapping:r,mappingKey:s,ignore:!1,skip:i}}function T(e,t,n,o){return function(...r){let s;const a="pre"+t,i="post"+t,c=n[a],u=n[i],l=(e,t)=>{o?o.warn(e,{error:t}):console.warn(e,t)};if(c)try{s=c({fn:e},...r)}catch(t){l(`Hook ${String(a)} failed, falling back to original function`,t),s=e(...r)}else s=e(...r);if(u)try{s=u({fn:e,result:s},...r)}catch(e){l(`Hook ${String(i)} failed, keeping original result`,e)}return s}}function M(e){if("*"===e)return()=>!0;if("and"in e){const t=e.and.map(M);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(M);return e=>t.some(t=>t(e))}return function(e){const{key:t,operator:n,value:o,not:r}=e,s=function(e,t){switch(e){case"eq":return e=>String(null!=e?e:"")===t;case"contains":return e=>String(null!=e?e:"").includes(t);case"prefix":return e=>String(null!=e?e:"").startsWith(t);case"suffix":return e=>String(null!=e?e:"").endsWith(t);case"regex":{const e=new RegExp(t);return t=>e.test(String(null!=t?t:""))}case"gt":{const e=Number(t);return t=>Number(t)>e}case"lt":{const e=Number(t);return t=>Number(t)<e}case"exists":return e=>null!=e}}(n,o);return e=>{const n=h(e,t),o=s(n);return r?!o:o}}(e)}function C(e){return Array.isArray(e)&&e.length>0&&"object"==typeof e[0]&&null!==e[0]&&"match"in e[0]}function U(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;return C(e)?{type:"routes",routes:e.map(e=>({match:M(e.match),next:U(e.next)}))}:{type:"chain",value:e}}}}function N(e,t={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;for(const n of e.routes)if(n.match(t))return N(n.next,t)}}function H(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function K(e){var t;return{full:null!=(t=e.full)&&t,storeId:e.store,rules:e.rules.map(e=>({match:M(e.match),key:e.key,ttl:e.ttl,update:e.update}))}}function B(e,t,n,o){const r=e.rules.find(e=>e.match(n));if(!r)return null;const s=r.key.map(e=>{var t;return String(null!=(t=h(n,e))?t:"")});if(s.every(e=>""===e))return null;const a=`${o}:${s.join(":")}`,i=t.get(a);return void 0!==i?{status:"HIT",key:a,value:i,rule:r}:{status:"MISS",key:a,rule:r}}function G(e,t,n,o){e.set(t,n,1e3*o)}async function W(e,t,n){if(!t)return e;let o=e;for(const[e,r]of Object.entries(t))o=b(o,e,await D(n,r));return o}var F=!1;function V(e,t,n,o=globalThis.window){const r=t.settings,s=o[(null==r?void 0:r.name)||"dataLayer"];if(Array.isArray(s)&&!F){F=!0;try{const t=null!=n?n:s.length;for(let n=0;n<t;n++)z(e,r,s[n])}finally{F=!1}}}function z(e,t={},n){if(t.filter){if(!0===L(()=>t.filter(n),()=>!1)())return}const o=function(e){if(y(e)&&v(e.event)){const{event:t,...n}=e;return{name:t,...n}}if(d(e)&&e.length>=2)return J(e);if(t=e,null!=t&&"object"==typeof t&&"length"in t&&"number"==typeof t.length&&t.length>0){return J(Array.from(e))}var t;return null}(n);if(!o)return;const r=`${t.prefix||"dataLayer"} ${o.name}`,{name:s,...a}=o,i={name:r,data:a};L(()=>e(i),()=>{})()}function J(e){const[t,n,o]=e;if(!v(t))return null;let r,s={};switch(t){case"consent":if(!v(n)||e.length<3)return null;if("default"!==n&&"update"!==n)return null;if(!y(o)||null===o)return null;r=`${t} ${n}`,s={...o};break;case"event":if(!v(n))return null;r=n,y(o)&&(s={...o});break;case"config":if(!v(n))return null;r=`${t} ${n}`,y(o)&&(s={...o});break;case"set":if(v(n))r=`${t} ${n}`,y(o)&&(s={...o});else{if(!y(n))return null;r=`${t} custom`,s={...n}}break;default:return null}return{name:r,...s}}var Q={},X={};r(X,{push:()=>te});var Y=()=>{},Z=()=>()=>Promise.resolve({ok:!0}),ee={error:Y,warn:Y,info:Y,debug:Y,throw:e=>{throw"string"==typeof e?new Error(e):e},json:Y,scope:()=>ee},te={get push(){return Z()},get command(){return Z()},get elb(){return Z()},get window(){return{dataLayer:[],addEventListener:Y,removeEventListener:Y}},logger:ee},ne={};r(ne,{consentUpdate:()=>re,directEvent:()=>ie,gtagAddToCart:()=>se,gtagPurchase:()=>oe,gtagViewItem:()=>ae});var oe={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},re={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},se={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},ae={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},ie={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},ce={Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"};function ue(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache}function le(e){var t;const n={};for(const[o,r]of Object.entries(e)){const e=null==(t=r.config)?void 0:t.next;e&&!C(e)?n[o]={next:e}:n[o]={}}return n}function fe(e,t){const n=e.config||{},o=e[t];return void 0!==o?{config:{...n,[t]:o},chainValue:o}:{config:n,chainValue:void 0}}function de(e,t={}){if(!e)return[];if(Array.isArray(e))return e;const n=[],o=new Set;let r=e;for(;r&&t[r]&&!o.has(r);){o.add(r),n.push(r);const e=t[r].next;if(Array.isArray(e)){n.push(...e);break}r=e}return n}async function ge(e,t,n){if(t.init&&!t.config.init){const o=t.type||"unknown",r=e.logger.scope(`transformer:${o}`),s={collector:e,logger:r,id:n,ingest:u(n),config:t.config,env:ve(t.config.env)};r.debug("init");const a=await T(t.init,"TransformerInit",e.hooks,e.logger)(s);if(!1===a)return!1;t.config={...a||t.config,env:(null==a?void 0:a.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function pe(e,t,n,o,r,s){const a=t.type||"unknown",i=e.logger.scope(`transformer:${a}`),c={collector:e,logger:i,id:n,ingest:r,config:t.config,env:{...ve(t.config.env),...s?{respond:s}:{}}};i.debug("push",{event:o.name});const u=await T(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return i.debug("push done"),u}async function ye(e,t,n,o,r,s,a){var i,c,l,f,d,g;a&&(null==r?void 0:r._meta)&&(r._meta.chainPath=a);let p=o,y=s;for(const o of n){const s=t[o];if(!s){e.logger.warn(`Transformer not found: ${o}`);continue}if(r&&r._meta&&r._meta.path.length>256)return e.logger.error(`Max path length exceeded at ${o}`),{event:null,respond:y};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await P(ge)(e,s,o))return e.logger.error(`Transformer init failed: ${o}`),{event:null,respond:y};if(a&&void 0!==(null==(c=null==(i=s.config)?void 0:i.chainMocks)?void 0:c[a])){const t=s.config.chainMocks[a];e.logger.scope(`transformer:${s.type||"unknown"}`).debug("chainMock",{chain:a}),p=t;continue}if(void 0!==(null==(l=s.config)?void 0:l.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),p=s.config.mock;continue}if(null==(f=s.config)?void 0:f.disabled)continue;const v=null==(d=s.config)?void 0:d.cache,m=v?K(v):void 0,h=m?ue(m,e):void 0;let b;if(m&&h){const e=B(m,h,H(r,p),`t:${o}`);if("HIT"===(null==e?void 0:e.status)&&e.value){if(p=e.value,m.full)return{event:p,respond:y};continue}"MISS"===(null==e?void 0:e.status)&&(b={key:e.key,ttl:e.rule.ttl})}const w=s.config.before;if(w){const n=de("string"==typeof w||Array.isArray(w)&&!C(w)?w:N(U(w),H(r,p))||void 0,le(t));if(n.length>0){const o=await ye(e,t,n,p,r,y,a);if(null===o.event)return{event:null,respond:null!=(g=o.respond)?g:y};o.respond&&(y=o.respond),p=Array.isArray(o.event)?o.event[0]:o.event}}const k=await P(pe,t=>(e.logger.scope(`transformer:${s.type||"unknown"}`).error("Push failed",{error:t}),!1))(e,s,o,p,r,y);if(!1===k)return{event:null,respond:y};if(Array.isArray(k)){const s=n.slice(n.indexOf(o)+1),i=await Promise.all(k.map(async n=>{const o=n.event||p,i=r?{...r,_meta:{...r._meta,path:[...r._meta.path]}}:u("unknown");if(n.next){let r=n.next;if(C(n.next)){r=N(U(n.next),H(i,o))}if(r){const n=de(r,le(t));if(n.length>0)return ye(e,t,n,o,i,y,a)}return{event:o,respond:y}}return s.length>0?ye(e,t,s,o,i,y,a):{event:o,respond:y}}));let c=y;const l=[];for(const e of i.flat())if(null!==e)if(e&&"object"==typeof e&&"event"in e){const t=e;if(t.respond&&(c=t.respond),null===t.event)continue;Array.isArray(t.event)?l.push(...t.event):l.push(t.event)}else l.push(e);return 0===l.length?{event:null,respond:c}:1===l.length?{event:l[0],respond:c}:{event:l,respond:c}}if(k&&"object"==typeof k){const{event:n,respond:o,next:s}=k;if(o&&(y=o),s){let o=s;if(C(s)){if(o=N(U(s),H(r,p)),!o){n&&(p=n);continue}}const i=de(o,le(t));return i.length>0?ye(e,t,i,n||p,r,y,a):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:y})}n&&(p=n)}if(b&&h&&G(h,b.key,p,b.ttl),(!k||"object"==typeof k&&!k.next)&&s.config.next&&C(s.config.next)){const n=N(U(s.config.next),H(r,p));if(n){const o=de(n,le(t));if(o.length>0)return ye(e,t,o,p,r,y,a)}return{event:p,respond:y}}}return{event:p,respond:y}}function ve(e){return e&&y(e)?e:{}}async function me(e,t,n){var o;const{code:r,config:s={},env:a={},primary:i,next:c,before:l,cache:f}=n;let d,g=u(t);const p=f?K({...f,full:null==(o=f.full)||o}):void 0,y=U(c),v=Array.isArray(c)&&C(c)||!y?void 0:de(N(y),le(e.transformers)),m=U(l),h=Array.isArray(l)&&C(l)||!m?void 0:de(N(m),le(e.transformers)),b=e.logger.scope("source").scope(t),w={push:async(n,o={})=>{let r,a=n;const i=null!=h?h:m?de(N(m,H(g)),le(e.transformers)):[];if(i.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,i,a,g,d,`source.${t}.before`);if(null===n.event)return{ok:!0};n.respond&&(d=n.respond),a=Array.isArray(n.event)?n.event[0]:n.event}if(p){const n=ue(p,e);if(n){const e=H(g),o=B(p,n,e,`s:${t}`);if(o){if("HIT"===o.status&&void 0!==o.value&&p.full){let t=o.value;return o.rule.update&&(t=await W(t,o.rule.update,{...e,cache:{status:"HIT"}})),null==d||d(t),{ok:!0}}if("MISS"===o.status&&p.full&&d){const t=d,s=o.rule.update,a={...e,cache:{status:"MISS"}},i=o.key,c=o.rule.ttl;d=e=>{G(n,i,e,c),s?r=(async()=>{const n=await W(e,s,a);t(n)})():t(e)}}"MISS"!==o.status||p.full||G(n,o.key,!0,o.rule.ttl)}}}const c=null!=v?v:y?de(N(y,H(g)),le(e.transformers)):[],u=await e.push(a,{...o,id:t,ingest:g,respond:d,mapping:s,preChain:c});return r&&await r,u},command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:b,...a},k={collector:e,logger:b,id:t,config:s,env:w,setIngest:async n=>{if(!s.ingest)return void(g=u(t));const o=await D(n,s.ingest,{collector:e}),r=u(t);g={...r,...o,_meta:r._meta}},setRespond:e=>{d=e}},j=await P(r)(k);if(!j)return;const O=j.type||"unknown",_=e.logger.scope(O).scope(t);return w.logger=_,i&&(j.config={...j.config,primary:i}),j}function he(e,t,n,o,r){if(!t.on)return;const s=t.type||"unknown",a=e.logger.scope(s).scope("on").scope(o),i={collector:e,logger:a,id:n,config:t.config,data:r,env:Se(t.env,t.config.env)};L(t.on)(o,i)}function be(e,t,n,o){let r;switch(t){case ce.Consent:r=o||e.consent;break;case ce.Session:r=e.session;break;case ce.User:r=o||e.user;break;case ce.Custom:r=o||e.custom;break;case ce.Globals:r=o||e.globals;break;case ce.Config:r=o||e.config;break;case ce.Ready:case ce.Run:default:r=void 0}if(n.length)switch(t){case ce.Consent:!function(e,t,n){const o=n||e.consent;t.forEach(t=>{Object.keys(o).filter(e=>e in t).forEach(n=>{L(t[n])(e,o)})})}(e,n,o);break;case ce.Ready:case ce.Run:a=n,(s=e).allowed&&a.forEach(e=>{L(e)(s)});break;case ce.Session:!function(e,t){e.session&&t.forEach(t=>{L(t)(e,e.session)})}(e,n);break;default:n.forEach(t=>{"function"==typeof t&&L(t)(e,r)})}var s,a}function we(e,t,n,o){if(!e)return[];if(t){const e=N(t,H(o));return e?de(e,le(n)):[]}return de(e,le(n))}async function ke(e,t,n){const{code:o,config:r={},env:s={},before:a,next:i,cache:c}=t;if(!p(o.push))return Ae({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const u=n||r||{init:!1};let l=a?{...u,before:a}:{...u};i&&(l={...l,next:i}),c&&(l={...l,cache:c});const f={...o,config:l,env:Se(o.env,s)};let d=f.config.id;if(!d)do{d=j(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),je(e,void 0,{},{[d]:f})}async function je(e,t,n={},o){const{allowed:r,consent:s,globals:a,user:i}=e;if(!r)return Ae({ok:!1});t&&(e.queue.push(t),e.status.in++),o||(o=e.destinations);const c=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var c,l,d;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let g=(r.queuePush||[]).map(e=>({...e,consent:s}));r.queuePush=[],t&&g.push(m(t));const p=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:u("unknown");if(!g.length&&!(null==(c=r.queueOn)?void 0:c.length))return{id:o,destination:r,skipped:!0};if(!g.length&&(null==(l=r.queueOn)?void 0:l.length)){const t=await P(Oe)(e,r,o);return{id:o,destination:r,skipped:!t}}const y=[],v=g.filter(e=>{const t=k(r.config.consent,s,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(r.queuePush.push(...v),!y.length)return{id:o,destination:r,queue:g};if(!await P(Oe)(e,r,o))return{id:o,destination:r,queue:g};let h,b;r.dlq||(r.dlq=[]);const w=r.config.before,j=we(w,w&&C(w)?U(w):void 0,e.transformers,p),O=r.config.next,_=O&&C(O)?U(O):void 0,A=null==(d=r.config)?void 0:d.cache,x=A?K(A):void 0,S=x?ue(x,e):void 0;let $=0;return await Promise.all(y.map(async t=>{let s;if(t.globals=f(a,t.globals),t.user=f(i,t.user),(null==x?void 0:x.full)&&S){const e=H(p,t),n=B(x,S,e,`d:${o}`);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(s={key:n.key,ttl:n.rule.ttl})}let c=t,u=n.respond;if(j.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await ye(e,e.transformers,j,t,p,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(u=r.respond),c=Array.isArray(r.event)?r.event[0]:r.event}if(x&&!x.full&&S){const e=H(p,c),n=B(x,S,e,`d:${o}`);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(s={key:n.key,ttl:n.rule.ttl})}const l=Date.now();let d=!1;const g=await P(_e,t=>{const n=r.type||"unknown";e.logger.scope(n).error("Push failed",{error:t,event:c.name}),h=t,d=!0,r.dlq.push([c,t])})(e,r,o,c,p,u);if($+=Date.now()-l,s&&S&&void 0===r.config.mock&&G(S,s.key,null==g||g,s.ttl),void 0!==g&&(b=g),!d&&O){void 0!==g&&(p._response=g);const t=we(O,_,e.transformers,p);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,t,c,p,u,`destination.${o}.next`);n.respond&&(u=n.respond)}}return t})),{id:o,destination:r,error:h,response:b,totalDuration:$}})),l={},d={},g={};for(const t of c){if(t.skipped)continue;const n={type:t.destination.type||"unknown",data:t.response};e.status.destinations[t.id]||(e.status.destinations[t.id]={count:0,failed:0,duration:0});const o=e.status.destinations[t.id],r=Date.now();t.error?(n.error=t.error,g[t.id]=n,o.failed++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.failed++):t.queue&&t.queue.length?d[t.id]=n:(l[t.id]=n,o.count++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.out++)}return Ae({event:t,...Object.keys(l).length&&{done:l},...Object.keys(d).length&&{queued:d},...Object.keys(g).length&&{failed:g}})}async function Oe(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",s=e.logger.scope(r),a={collector:e,logger:s,id:n,config:t.config,env:Se(t.env,t.config.env)};s.debug("init");const i=await T(t.init,"DestinationInit",e.hooks,e.logger)(a);if(!1===i)return i;if(t.config={...i||t.config,init:!0},null==(o=t.queueOn)?void 0:o.length){const o=t.queueOn;t.queueOn=[];for(const{type:r,data:s}of o)he(e,t,n,r,s)}s.debug("init done")}return!0}async function _e(e,t,n,o,r,s){const{config:a}=t,i=await I(o,a,e);if(i.ignore)return!1;const c=t.type||"unknown",u=e.logger.scope(c),l={collector:e,logger:u,id:n,config:a,data:i.data,rule:i.mapping,ingest:r,env:{...Se(t.env,a.env),...s?{respond:s}:{}}};if(void 0!==a.mock)return u.debug("mock",{event:i.event.name}),a.mock;const f=i.mapping,d=i.mappingKey||"* *";if(!(null==f?void 0:f.batch)||!t.pushBatch||void 0!==a.mock){u.debug("push",{event:i.event.name});const n=await T(t.push,"DestinationPush",e.hooks,e.logger)(i.event,l);return u.debug("push done"),n}{if(t.batches=t.batches||{},!t.batches[d]){const o={key:d,events:[],data:[]};t.batches[d]={batched:o,batchFn:O(()=>{const o=t.batches[d].batched,i={collector:e,logger:u,id:n,config:a,data:void 0,rule:f,ingest:r,env:{...Se(t.env,a.env),...s?{respond:s}:{}}};u.debug("push batch",{events:o.events.length}),T(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(o,i),u.debug("push batch done"),o.events=[],o.data=[]},f.batch)}}const o=t.batches[d];o.batched.events.push(i.event),g(i.data)&&o.batched.data.push(i.data),o.batchFn()}return!0}function Ae(e){return{ok:!(null==e?void 0:e.failed),...e}}function xe(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:s}=fe(e,"before"),{config:a}=fe({...e,config:s},"next"),i={...t.config,...n,...a};r&&(i.cache=r);const c=Se(t.env,o);return{...t,config:i,env:c}}function Se(e,t){return e||t?t?e&&y(e)&&y(t)?{...e,...t}:t:e:{}}async function $e(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const s=o.destroy;if(!s)return;const a=o.type||"unknown",i=n.scope(a),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:i};try{await Promise.race([s(c),new Promise((n,o)=>setTimeout(()=>o(new Error(`${t} '${e}' destroy timed out`)),5e3))])}catch(n){i.error(`${t} '${e}' destroy failed: ${n}`)}});await Promise.allSettled(o)}async function qe(e,t,n,o){let r,s,a=!1;switch(t){case ce.Config:y(n)&&(f(e.config,n,{shallow:!1}),s=n,a=!0);break;case ce.Consent:if(y(n)){const{update:t}=function(e,t){const n={};return Object.entries(t).forEach(([e,t])=>{n[e]=!!t}),e.consent=f(e.consent,n),{update:n}}(e,n);s=t,a=!0}break;case ce.Custom:y(n)&&(e.custom=f(e.custom,n),s=n,a=!0);break;case ce.Destination:y(n)&&("code"in n&&y(n.code)?r=await ke(e,n,o):p(n.push)&&(r=await ke(e,{code:n},o)));break;case ce.Globals:y(n)&&(e.globals=f(e.globals,n),s=n,a=!0);break;case ce.On:v(n)&&await async function(e,t,n){const o=e.on,r=o[t]||[],s=d(n)?n:[n];s.forEach(e=>{r.push(e)}),o[t]=r,be(e,t,s)}(e,n,o);break;case ce.Ready:a=!0;break;case ce.Run:r=await async function(e,t){return e.allowed=!0,e.count=0,e.group=j(),e.timing=Date.now(),t&&(t.consent&&(e.consent=f(e.consent,t.consent)),t.user&&(e.user=f(e.user,t.user)),t.globals&&(e.globals=f(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=f(e.custom,t.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await je(e)}(e,n),a=!0;break;case ce.Session:a=!0;break;case ce.Shutdown:await async function(e){const t=e.logger;await $e(e.sources,"source",t),await $e(e.destinations,"destination",t),await $e(e.transformers,"transformer",t),await $e(e.stores,"store",t)}(e);break;case ce.User:y(n)&&(f(e.user,n,{shallow:!1}),s=n,a=!0)}return a&&(await async function(e,t,n,o){let r,s=n||[];switch(n||(s=e.on[t]||[]),t){case ce.Consent:r=o||e.consent;break;case ce.Session:r=e.session;break;case ce.User:r=o||e.user;break;case ce.Custom:r=o||e.custom;break;case ce.Globals:r=o||e.globals;break;case ce.Config:r=o||e.config;break;case ce.Ready:case ce.Run:default:r=void 0}let a=!1;for(const n of Object.values(e.sources))n.on&&!1===await P(n.on)(t,r)&&(a=!0);return Object.entries(e.destinations).forEach(([n,o])=>{if(o.on){if(!o.config.init)return o.queueOn=o.queueOn||[],void o.queueOn.push({type:t,data:r});he(e,o,n,t,r)}}),(Object.keys(e.pending.sources).length>0||Object.keys(e.pending.destinations).length>0)&&await async function(e,t){var n,o;for(const[o,r]of Object.entries(e.pending.sources)){if(!e.pending.sources[o]||e.sources[o])continue;const s=null==(n=r.config)?void 0:n.require;if(!s)continue;const a=s.indexOf(t);if(-1===a)continue;if(s.splice(a,1),s.length>0)continue;delete e.pending.sources[o];const i=await me(e,o,r);i&&(e.sources[o]=i)}for(const[n,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[n]||e.destinations[n])continue;const s=null==(o=r.config)?void 0:o.require;if(!s)continue;const a=s.indexOf(t);if(-1===a)continue;if(s.splice(a,1),s.length>0)continue;delete e.pending.destinations[n];const i=xe(r);!1!==i.config.queue&&(i.queuePush=[...e.queue]),e.destinations[n]=i}}(e,t),be(e,t,s,o),!a}(e,t,void 0,s),r=await je(e)),r||Ae({ok:!0})}function Ee(e,t){if(!t.name)throw new Error("Event name is required");const[n,o]=t.name.split(" ");if(!n||!o)throw new Error("Event name is invalid");++e.count;const{timestamp:r=Date.now(),group:s=e.group,count:a=e.count}=t,{name:i=`${n} ${o}`,data:c={},context:u={},globals:l=e.globals,custom:f={},user:d=e.user,nested:g=[],consent:p=e.consent,id:y=`${r}-${s}-${a}`,trigger:v="",entity:m=n,action:h=o,timing:b=0,version:w={source:e.version,tagging:e.config.tagging||0},source:k={type:"collector",id:"",previous_id:""}}=t;return{name:i,data:c,context:u,globals:l,custom:f,user:d,nested:g,consent:p,id:y,trigger:v,entity:m,action:h,timestamp:r,timing:b,group:s,count:a,version:w,source:k}}async function Le(e){var t,n;const o=f({globalsStatic:{},sessionStatic:{},tagging:0,run:!0},e,{merge:!1,extend:!1}),r=S({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),s={...o.globalsStatic,...e.globals},a={allowed:!1,config:o,consent:e.consent||{},count:0,custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:s,group:"",hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:e.user||{},version:"3.4.2",sources:{},pending:{sources:{},destinations:{}},push:void 0,command:void 0};var i,c;a.push=function(e,t){return T(async(n,o={})=>await P(async()=>{var r;const s=Date.now(),{id:a,ingest:i,respond:c,mapping:l,preChain:f,include:d,exclude:g}=o;let p=c,y=n;const v=d||g?function(e,t,n){let o=e;return t&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>t.includes(e)))),n&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>!n.includes(e)))),o}(e.destinations,d,g):void 0,m=null!=i?i:u(a||"unknown");if(l){const t=await I(y,l,e);if(t.ignore)return Ae({ok:!0});if(l.consent&&!k(l.consent,e.consent,t.event.consent))return Ae({ok:!0});y=t.event}if((null==f?void 0:f.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,f,y,m,p,a?`source.${a}.next`:void 0);if(null===n.event)return Ae({ok:!0});if(n.respond&&(p=n.respond),Array.isArray(n.event)){const o=await Promise.all(n.event.map(async n=>{const o=t(n),r=Ee(e,o);return je(e,r,{id:a,ingest:m,respond:p},v)}));if(a){e.status.sources[a]||(e.status.sources[a]={count:0,duration:0});const t=e.status.sources[a];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-s}return null!=(r=o[0])?r:Ae({ok:!0})}y=n.event}const h=t(y),b=Ee(e,h),w=await je(e,b,{id:a,ingest:m,respond:p},v);if(a){e.status.sources[a]||(e.status.sources[a]={count:0,duration:0});const t=e.status.sources[a];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-s}return w},()=>Ae({ok:!1}))(),"Push",e.hooks,e.logger)}(a,e=>({timing:Math.round((Date.now()-a.timing)/10)/100,source:{type:"collector",id:"",previous_id:""},...e})),a.command=(c=qe,T(async(e,t,n)=>await P(async()=>await c(i,e,t,n),()=>Ae({ok:!1}))(),"Command",(i=a).hooks,i.logger));const l=e.stores||{};if(a.stores=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,config:s={},env:a={}}=r,i=e.logger.scope("store").scope(o),c={collector:e,logger:i,id:o,config:s,env:a},u=await t(c),l=u.get,f=u.set,d=u.delete;u.get=T(l,"StoreGet",e.hooks,e.logger),u.set=T(f,"StoreSet",e.hooks,e.logger),u.delete=T(d,"StoreDelete",e.hooks,e.logger),n[o]=u}return n}(a,l),function(e,t,n){const o=new Map;for(const[n,r]of Object.entries(e))t[n]&&o.set(r,t[n]);if(0!==o.size)for(const e of[n.transformers,n.destinations,n.sources])if(e)for(const t of Object.values(e))r(t.env);function r(e){if(e)for(const[t,n]of Object.entries(e))if("object"==typeof n&&null!==n){const r=o.get(n);r&&(e[t]=r)}}}(l,a.stores,e),!a.stores.__cache){const e=new Map;a.stores.__cache={type:"memory",config:{},get:t=>{const n=e.get(t);if(n){if(!(n.expires&&Date.now()>n.expires))return n.value;e.delete(t)}},set:(t,n,o)=>{e.set(t,{value:n,expires:o?Date.now()+o:void 0})},delete:t=>{e.delete(t)}}}return a.destinations=await async function(e,t={}){var n,o;const r={};for(const[s,a]of Object.entries(t))(null==(o=null==(n=a.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[s]=a:r[s]=xe(a);return r}(a,e.destinations||{}),a.transformers=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,env:s={}}=r,{config:a}=fe(r,"before"),{config:i}=fe({...r,config:a},"next"),c=Object.keys(s).length>0?{...i,env:s}:i,{cache:l}=r,f=l?{...c,cache:l}:c,d=e.logger.scope("transformer").scope(o),g={collector:e,logger:d,id:o,ingest:u(o),config:f,env:s},p=await t(g);n[o]=p}return n}(a,e.transformers||{}),a}async function Pe(e){e=e||{};const t=await Le(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,s,a)=>{if("string"==typeof e&&e.startsWith("walker ")){const r=e.replace("walker ","");return o.command(r,t,n)}let i;if("string"==typeof e)i={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(i.data=t);else{if(!e||"object"!=typeof e)return Ae({ok:!1});i=e,t&&"object"==typeof t&&!Array.isArray(t)&&(i.data={...i.data||{},...t})}return r&&"object"==typeof r&&(i.context=r),s&&Array.isArray(s)&&(i.nested=s),a&&"object"==typeof a&&(i.custom=a),o.push(i)}});var o;t.sources.elb=n;const r=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{config:t={}}=r;if(t.require&&t.require.length>0){e.pending.sources[o]=r;continue}const s=await me(e,o,r);s&&(n[o]=s)}return n}(t,e.sources||{});Object.assign(t.sources,r);const{consent:s,user:a,globals:i,custom:c}=e;s&&await t.command("consent",s),a&&await t.command("user",a),i&&Object.assign(t.globals,i),c&&Object.assign(t.custom,c),t.config.run&&await t.command("run");let u=n.push;const l=Object.values(t.sources).filter(e=>"elb"!==e.type),f=l.find(e=>e.config.primary);return f?u=f.push:l.length>0&&(u=l[0].push),{collector:t,elb:u}}var De,Re=async e=>{let t;return{get flow(){return t},trigger:()=>async n=>{var o,r;if(!t){const n={...e};if(n.sources){n.sources={...n.sources};for(const[e,t]of Object.entries(n.sources))(null==(o=t.env)?void 0:o.window)||(n.sources[e]={...t,env:{...t.env,window:window}})}const s=await Pe({...n,run:null==(r=n.run)||r});t={collector:s.collector,elb:s.elb}}const s=window;s.dataLayer||(s.dataLayer=[]),s.dataLayer.push(n)}}},Ie=(e,t)=>{const n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},Te=async e=>{const{config:t,env:n}=e,{elb:o,window:r}=n,s={name:"dataLayer",prefix:"dataLayer",...null==t?void 0:t.settings},a={settings:s};let i=0;if(r){const t=s.name||"dataLayer",n=r[t];i=Array.isArray(n)?n.length:0;const c=r;!function(e,t,n=globalThis.window){const o=t.settings,r=(null==o?void 0:o.name)||"dataLayer";n[r]||(n[r]=[]);const s=n[r];if(!Array.isArray(s))return;const a=s.push.bind(s);s.push=function(...t){if(F)return a(...t);F=!0;try{for(const n of t)z(e,o,n)}finally{F=!1}return a(...t)}}(o,a,c),e.collector.allowed&&i>0&&(V(o,a,i,c),i=0)}return{type:"dataLayer",config:a,push:o,on:async e=>{if("run"===e&&r&&i>0){V(o,a,i,r),i=0}},destroy:async()=>{const e=s.name||"dataLayer";r&&r[e]&&Array.isArray(r[e])}}},Me=Te;return De=s,((r,s,a,i)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let c of n(s))o.call(r,c)||c===a||e(r,c,{get:()=>s[c],enumerable:!(i=t(s,c))||i.enumerable});return r})(e({},"__esModule",{value:!0}),De)})();
|
package/dist/index.es5.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function _array_like_to_array(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _array_with_holes(e){if(Array.isArray(e))return e}function _array_without_holes(e){if(Array.isArray(e))return _array_like_to_array(e)}function asyncGeneratorStep(e,t,n,r,o,a,s){try{var i=e[a](s),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,o)}function _async_to_generator(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function s(e){asyncGeneratorStep(a,r,o,s,i,"next",e)}function i(e){asyncGeneratorStep(a,r,o,s,i,"throw",e)}s(void 0)})}}function _define_property(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _iterable_to_array(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterable_to_array_limit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],s=!0,i=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);s=!0);}catch(e){i=!0,o=e}finally{try{s||null==n.return||n.return()}finally{if(i)throw o}}return a}}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _non_iterable_spread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){_define_property(e,t,n[t])})}return e}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function _object_spread_props(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function _object_without_properties(e,t){if(null==e)return{};var n,r,o,a={};if("undefined"!=typeof Reflect&&Reflect.ownKeys){for(n=Reflect.ownKeys(Object(e)),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=_object_without_properties_loose(e,t),Object.getOwnPropertySymbols)for(n=Object.getOwnPropertySymbols(e),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}function _object_without_properties_loose(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}function _sliced_to_array(e,t){return _array_with_holes(e)||_iterable_to_array_limit(e,t)||_unsupported_iterable_to_array(e,t)||_non_iterable_rest()}function _to_consumable_array(e){return _array_without_holes(e)||_iterable_to_array(e)||_unsupported_iterable_to_array(e)||_non_iterable_spread()}function _type_of(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function _unsupported_iterable_to_array(e,t){if(e){if("string"==typeof e)return _array_like_to_array(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_array_like_to_array(e,t):void 0}}function _ts_generator(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(s,"next",{value:c(0)}),i(s,"throw",{value:c(1)}),i(s,"return",{value:c(2)}),"function"==typeof Symbol&&i(s,Symbol.iterator,{value:function(){return this}}),s;function c(i){return function(c){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,i[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,c])}}}function _ts_values(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}var Destination=function(){var e=function(e){return{_meta:{hops:0,path:[e]}}},t=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n=_object_spread({},pe,n);var r=Object.entries(t).reduce(function(t,r){var o=_sliced_to_array(r,2),a=o[0],s=o[1],i=e[a];return n.merge&&Array.isArray(i)&&Array.isArray(s)?t[a]=s.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(i)):(n.extend||a in e)&&(t[a]=s),t},{});return n.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},n=function(e){return Array.isArray(e)},r=function(e){return void 0!==e},o=function(e){return"function"==typeof e},a=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!n(e)&&"[object Object]"===Object.prototype.toString.call(e)},s=function(e){return"string"==typeof e},i=function(e,t,n){if(!a(e))return e;for(var r=ve(e),o=t.split("."),s=r,i=0;i<o.length;i++){var c=o[i];i===o.length-1?s[c]=n:(c in s&&"object"==_type_of(s[c])&&null!==s[c]||(s[c]={}),s=s[c])}return r},c=function(e){var t=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),n={},r=!e||0===Object.keys(e).length;return Object.keys(t).forEach(function(o){t[o]&&(n[o]=!0,e&&e[o]&&(r=!0))}),!!r&&n},u=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,t=arguments.length>1?arguments[1]:void 0;if(t){for(var n=t.length,r="",o=0;o<e;o++)r+=t[Math.random()*n|0];return r}for(var a="";a.length<e;)a+=(36*Math.random()|0).toString(36);return a},l=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=null,a=!1;return function(){for(var s=arguments.length,i=new Array(s),c=0;c<s;c++)i[c]=arguments[c];return new Promise(function(s){var c=r&&!a;o&&clearTimeout(o),o=setTimeout(function(){o=null,r&&!a||(t=e.apply(void 0,_to_consumable_array(i)),s(t))},n),c&&(a=!0,t=e.apply(void 0,_to_consumable_array(i)),s(t))})}},f=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},d=function(e,t){var n,r={};return _instanceof(e,Error)?(n=e.message,r.error=f(e)):n=e,void 0!==t&&(_instanceof(t,Error)?r.error=f(t):"object"==(void 0===t?"undefined":_type_of(t))&&null!==t?"error"in(r=_object_spread({},r,t))&&_instanceof(r.error,Error)&&(r.error=f(r.error)):r.value=t),{message:n,context:r}},_=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return me({level:void 0!==t.level?(e=t.level,"string"==typeof e?ge[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},g=function(e){return we(e)?e:void 0},p=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}},v=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return _async_to_generator(function(){var r;return _ts_generator(this,function(a){switch(a.label){case 0:return a.trys.push([0,2,4,6]),[4,e.apply(void 0,_to_consumable_array(o))];case 1:case 3:return[2,a.sent()];case 2:return r=a.sent(),t?[4,t(r)]:[2];case 4:return[4,null==n?void 0:n()];case 5:return a.sent(),[7];case 6:return[2]}})})()}},y=function(e,t){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d;return _ts_generator(this,function(_){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],s=o[1],t&&a&&s?(c="",l=s,f=function(t){if(t)return(t=n(t)?t:[t]).find(function(t){return!t.condition||t.condition(e)})},t[u=a]||(u="*"),[2,((d=t[u])&&(d[l]||(l="*"),i=f(d[l])),i||(u="*",l="*",i=f(null===(r=t[u])||void 0===r?void 0:r[l])),i&&(c="".concat(u," ").concat(l)),{eventMapping:i,mappingKey:c})]):[2,{}]})})()},b=function(e){return _async_to_generator(function(e){var t,o,s,i,c,u,l,f,d,_,g,p,y,b=arguments;return _ts_generator(this,function(h){switch(h.label){case 0:if(t=b.length>1&&void 0!==b[1]?b[1]:{},o=b.length>2&&void 0!==b[2]?b[2]:{},!r(e))return[2];i=a(e)&&e.consent||o.consent||(null===(s=o.collector)||void 0===s?void 0:s.consent),c=n(t)?t:[t],u=!0,l=!1,f=void 0,h.label=1;case 1:h.trys.push([1,6,7,8]),d=c[Symbol.iterator](),h.label=2;case 2:return(u=(_=d.next()).done)?[3,5]:(g=_.value,[4,v(je)(e,g,_object_spread_props(_object_spread({},o),{consent:i}))]);case 3:if(p=h.sent(),r(p))return[2,p];h.label=4;case 4:return u=!0,[3,2];case 5:return[3,8];case 6:return y=h.sent(),l=!0,f=y,[3,8];case 7:try{u||null==d.return||d.return()}finally{if(l)throw f}return[7];case 8:return[2]}})}).apply(this,arguments)},h=function(e,n,r){return _async_to_generator(function(){var o,s,c,u,l,f,d,_,g,p,v;return _ts_generator(this,function(h){switch(h.label){case 0:return n.policy?[4,Promise.all(Object.entries(n.policy).map(function(t){var n=_sliced_to_array(t,2),o=n[0],a=n[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,b(e,a,{collector:r})];case 1:return t=n.sent(),e=i(e,o,t),[2]}})})()}))]:[3,2];case 1:h.sent(),h.label=2;case 2:return[4,y(e,n.mapping)];case 3:return s=h.sent(),c=s.eventMapping,u=s.mappingKey,(null==c?void 0:c.policy)?[4,Promise.all(Object.entries(c.policy).map(function(t){var n=_sliced_to_array(t,2),o=n[0],a=n[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,b(e,a,{collector:r})];case 1:return t=n.sent(),e=i(e,o,t),[2]}})})()}))]:[3,5];case 4:h.sent(),h.label=5;case 5:return(f=n.data)?[4,b(e,n.data,{collector:r})]:[3,7];case 6:f=h.sent(),h.label=7;case 7:return l=f,d=Boolean(null==c?void 0:c.skip),c?c.ignore?[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!0,skip:d}]:(c.name&&(e.name=c.name),c.data?(g=c.data)?[4,b(e,c.data,{collector:r})]:[3,9]:[3,10]):[3,10];case 8:g=h.sent(),h.label=9;case 9:_=g,l=a(l)&&a(_)?t(l,_):_,h.label=10;case 10:return(p=null!==(o=null==c?void 0:c.include)&&void 0!==o?o:n.include)&&p.length>0&&(v=function(e,t){var n={},r=t.includes("all")?Object.keys(be):t,o=!0,s=!1,i=void 0;try{for(var c,u=r[Symbol.iterator]();!(o=(c=u.next()).done);o=!0){var l=c.value,f=be[l];if(f){var d=f(e),_=!0,g=!1,p=void 0;if(a(d))try{for(var v,y=Object.entries(d)[Symbol.iterator]();!(_=(v=y.next()).done);_=!0){var b=_sliced_to_array(v.value,2),h=b[0],m=b[1];if(void 0!==m){var w="context"===l&&Array.isArray(m)?m[0]:m;n["".concat(l,"_").concat(h)]=w}}}catch(e){g=!0,p=e}finally{try{_||null==y.return||y.return()}finally{if(g)throw p}}}}}catch(e){s=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(s)throw i}}return n}(e,p),Object.keys(v).length>0&&(l=a(l)?t(v,l):null!=l?l:v)),[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!1,skip:d}]}})})()},m=function(e,t,n,r){return function(){for(var o=arguments.length,a=new Array(o),s=0;s<o;s++)a[s]=arguments[s];var i,c="pre"+t,u="post"+t,l=n[c],f=n[u],d=function(e,t){r?r.warn(e,{error:t}):console.warn(e,t)};if(l)try{i=l.apply(void 0,[{fn:e}].concat(_to_consumable_array(a)))}catch(t){d("Hook ".concat(String(c)," failed, falling back to original function"),t),i=e.apply(void 0,_to_consumable_array(a))}else i=e.apply(void 0,_to_consumable_array(a));if(f)try{i=f.apply(void 0,[{fn:e,result:i}].concat(_to_consumable_array(a)))}catch(e){d("Hook ".concat(String(u)," failed, keeping original result"),e)}return i}},w=function(e){return Array.isArray(e)&&e.length>0&&"object"==_type_of(e[0])&&null!==e[0]&&"match"in e[0]},j=function(e,t){var n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n},k=function(e){var t;return{full:null!==(t=e.full)&&void 0!==t&&t,storeId:e.store,rules:e.rules.map(function(e){return{match:ke(e.match),key:e.key,ttl:e.ttl,update:e.update}})}},O=function(e,t,n,r){var o=e.rules.find(function(e){return e.match(n)});if(!o)return null;var a=o.key.map(function(e){var t;return String(null!==(t=ye(n,e))&&void 0!==t?t:"")});if(a.every(function(e){return""===e}))return null;var s="".concat(r,":").concat(a.join(":")),i=t.get(s);return void 0!==i?{status:"HIT",key:s,value:i,rule:o}:{status:"MISS",key:s,rule:o}},S=function(e,t,n,r){e.set(t,n,1e3*r)},x=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,l,f,d,_,g;return _ts_generator(this,function(p){switch(p.label){case 0:if(!t)return[2,e];r=e,o=!0,a=!1,s=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),c=Object.entries(t)[Symbol.iterator](),p.label=2;case 2:return(o=(u=c.next()).done)?[3,5]:(l=_sliced_to_array(u.value,2),f=l[0],d=l[1],_=[r,f],[4,b(n,d)]);case 3:r=i.apply(void 0,_.concat([p.sent()])),p.label=4;case 4:return o=!0,[3,2];case 5:return[3,8];case 6:return g=p.sent(),a=!0,s=g,[3,8];case 7:try{o||null==c.return||c.return()}finally{if(a)throw s}return[7];case 8:return[2,r]}})})()},A=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:globalThis.window,o=t.settings,a=r[(null==o?void 0:o.name)||"dataLayer"];if(Array.isArray(a)&&!xe){xe=!0;try{for(var s=null!=n?n:a.length,i=0;i<s;i++)P(e,o,a[i])}finally{xe=!1}}},P=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;if(t.filter&&!0===p(function(){return t.filter(n)},function(){return!1})())return;var r=C(n);if(r){var o=t.prefix||"dataLayer",a="".concat(o," ").concat(r.name),s=(r.name,{name:a,data:_object_without_properties(r,["name"])});p(function(){return e(s)},function(){})()}},C=function(e){if(a(e)&&s(e.event))return _object_spread({name:e.event},_object_without_properties(e,["event"]));if(n(e)&&e.length>=2)return E(e);if(q(e)){var t=Array.from(e);return E(t)}return null},E=function(e){var t,n=_sliced_to_array(e,3),r=n[0],o=n[1],i=n[2];if(!s(r))return null;var c={};switch(r){case"consent":if(!s(o)||e.length<3)return null;if("default"!==o&&"update"!==o)return null;if(!a(i)||null===i)return null;t="".concat(r," ").concat(o),c=_object_spread({},i);break;case"event":if(!s(o))return null;t=o,a(i)&&(c=_object_spread({},i));break;case"config":if(!s(o))return null;t="".concat(r," ").concat(o),a(i)&&(c=_object_spread({},i));break;case"set":if(s(o))t="".concat(r," ").concat(o),a(i)&&(c=_object_spread({},i));else{if(!a(o))return null;t="".concat(r," custom"),c=_object_spread({},o)}break;default:return null}return _object_spread({name:t},c)},q=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length&&e.length>0},D=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},L=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,s=Object.entries(e)[Symbol.iterator]();!(n=(a=s.next()).done);n=!0){var i,c=_sliced_to_array(a.value,2),u=c[0],l=null===(i=c[1].config)||void 0===i?void 0:i.next;l&&!w(l)?t[u]={next:l}:t[u]={}}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return t},I=function(e,t){var n=e.config||{},r=e[t];return void 0!==r?{config:_object_spread_props(_object_spread({},n),_define_property({},t,r)),chainValue:r}:{config:n,chainValue:void 0}},R=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return[];if(Array.isArray(e))return e;for(var n=[],r=new Set,o=e;o&&t[o]&&!r.has(o);){r.add(o),n.push(o);var a=t[o].next;if(Array.isArray(a)){var s;(s=n).push.apply(s,_to_consumable_array(a));break}o=a}return n},T=function(t,n,r){return _async_to_generator(function(){var o,a,s,i;return _ts_generator(this,function(c){switch(c.label){case 0:return!n.init||n.config.init?[3,2]:(o=n.type||"unknown",a=t.logger.scope("transformer:".concat(o)),s={collector:t,logger:a,id:r,ingest:e(r),config:n.config,env:U(n.config.env)},a.debug("init"),[4,m(n.init,"TransformerInit",t.hooks,t.logger)(s)]);case 1:if(!1===(i=c.sent()))return[2,!1];n.config=_object_spread_props(_object_spread({},i||n.config),{env:(null==i?void 0:i.env)||n.config.env,init:!0}),a.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},M=function(e,t,n,r,o,a){return _async_to_generator(function(){var s,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return s=t.type||"unknown",i=e.logger.scope("transformer:".concat(s)),c={collector:e,logger:i,id:n,ingest:o,config:t.config,env:_object_spread({},U(t.config.env),a?{respond:a}:{})},i.debug("push",{event:r.name}),[4,m(t.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(i.debug("push done"),u)]}})})()},U=function(e){return e&&a(e)?e:{}},K=function(t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,g,p,y,h,m,A,P,C,E,q,I,T,M;return _ts_generator(this,function(U){switch(U.label){case 0:return a=r.code,s=r.config,i=void 0===s?{}:s,c=r.env,u=void 0===c?{}:c,l=r.primary,f=r.next,d=r.before,_=r.cache,p=e(n),y=_?k(_object_spread_props(_object_spread({},_),{full:null===(o=_.full)||void 0===o||o})):void 0,h=Oe(f),m=Array.isArray(f)&&w(f)||!h?void 0:R(Se(h),L(t.transformers)),A=Oe(d),P=Array.isArray(d)&&w(d)||!A?void 0:R(Se(A),L(t.transformers)),C=t.logger.scope("source").scope(n),E=_object_spread({push:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){var o,a,s,c,u,l,f,d,_,v,b,w,k,C,E;return _ts_generator(this,function(q){switch(q.label){case 0:return a=e,(s=null!=P?P:A?R(Se(A,j(p)),L(t.transformers)):[]).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Ne(t,t.transformers,s,a,p,g,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(c=q.sent()).event)return[2,{ok:!0}];c.respond&&(g=c.respond),a=Array.isArray(c.event)?c.event[0]:c.event,q.label=2;case 2:return y&&(u=D(y,t))?(l=j(p),(f=O(y,u,l,"s:".concat(n)))?"HIT"===f.status&&void 0!==f.value&&y.full?(d=f.value,f.rule.update?[4,x(d,f.rule.update,_object_spread_props(_object_spread({},l),{cache:{status:"HIT"}}))]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=q.sent(),q.label=4;case 4:return[2,(null==g||g(d),{ok:!0})];case 5:"MISS"===f.status&&y.full&&g&&(_=g,v=f.rule.update,b=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),w=f.key,k=f.rule.ttl,g=function(e){S(u,w,e,k),v?o=_async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,x(e,v,b)];case 1:return t=n.sent(),_(t),[2]}})})():_(e)}),"MISS"!==f.status||y.full||S(u,f.key,!0,f.rule.ttl),q.label=6;case 6:return C=null!=m?m:h?R(Se(h,j(p)),L(t.transformers)):[],[4,t.push(a,_object_spread_props(_object_spread({},r),{id:n,ingest:p,respond:g,mapping:i,preChain:C}))];case 7:return E=q.sent(),o?[4,o]:[3,9];case 8:q.sent(),q.label=9;case 9:return[2,E]}})})()},command:t.command,sources:t.sources,elb:t.sources.elb.push,logger:C},u),q={collector:t,logger:C,id:n,config:i,env:E,setIngest:function(r){return _async_to_generator(function(){var o,a;return _ts_generator(this,function(s){switch(s.label){case 0:return i.ingest?[4,b(r,i.ingest,{collector:t})]:[2,void(p=e(n))];case 1:return o=s.sent(),a=e(n),p=_object_spread_props(_object_spread({},a,o),{_meta:a._meta}),[2]}})})()},setRespond:function(e){g=e}},[4,v(a)(q)];case 1:return(I=U.sent())?(T=I.type||"unknown",M=t.logger.scope(T).scope(n),[2,(E.logger=M,l&&(I.config=_object_spread_props(_object_spread({},I.config),{primary:l})),I)]):[2]}})})()},N=function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_,g,p=arguments;return _ts_generator(this,function(v){switch(v.label){case 0:t=p.length>1&&void 0!==p[1]?p[1]:{},n={},r=!0,o=!1,a=void 0,v.label=1;case 1:v.trys.push([1,6,7,8]),s=Object.entries(t)[Symbol.iterator](),v.label=2;case 2:return(r=(i=s.next()).done)?[3,5]:(c=_sliced_to_array(i.value,2),u=c[0],l=c[1],f=l.config,(d=void 0===f?{}:f).require&&d.require.length>0?(e.pending.sources[u]=l,[3,4]):[4,K(e,u,l)]);case 3:(_=v.sent())&&(n[u]=_),v.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return g=v.sent(),o=!0,a=g,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2,n]}})}).apply(this,arguments)},H=function(e,t,r){return _async_to_generator(function(){var o,a,s;return _ts_generator(this,function(i){return o=e.on,a=o[t]||[],(s=n(r)?r:[r]).forEach(function(e){a.push(e)}),o[t]=a,B(e,t,s),[2]})})()},G=function(e,t,n,r,o){if(t.on){var a=t.type||"unknown",s=e.logger.scope(a).scope("on").scope(r),i={collector:e,logger:s,id:n,config:t.config,data:o,env:Z(t.env,t.config.env)};p(t.on)(r,i)}},B=function(e,t,n,r){var o,a,s,i;switch(t){case Ke.Commands.Consent:o=r||e.consent;break;case Ke.Commands.Session:o=e.session;break;case Ke.Commands.User:o=r||e.user;break;case Ke.Commands.Custom:o=r||e.custom;break;case Ke.Commands.Globals:o=r||e.globals;break;case Ke.Commands.Config:o=r||e.config;break;case Ke.Commands.Ready:case Ke.Commands.Run:default:o=void 0}if(n.length)switch(t){case Ke.Commands.Consent:a=e,s=n,i=r||a.consent,s.forEach(function(e){Object.keys(i).filter(function(t){return t in e}).forEach(function(t){p(e[t])(a,i)})});break;case Ke.Commands.Ready:case Ke.Commands.Run:!function(e,t){e.allowed&&t.forEach(function(t){p(t)(e)})}(e,n);break;case Ke.Commands.Session:!function(e,t){e.session&&t.forEach(function(t){p(t)(e,e.session)})}(e,n);break;default:n.forEach(function(t){"function"==typeof t&&p(t)(e,o)})}},W=function(e,t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,g;return _ts_generator(this,function(p){switch(p.label){case 0:switch(a=n||[],n||(a=e.on[t]||[]),t){case Ke.Commands.Consent:o=r||e.consent;break;case Ke.Commands.Session:o=e.session;break;case Ke.Commands.User:o=r||e.user;break;case Ke.Commands.Custom:o=r||e.custom;break;case Ke.Commands.Globals:o=r||e.globals;break;case Ke.Commands.Config:o=r||e.config;break;case Ke.Commands.Ready:case Ke.Commands.Run:default:o=void 0}s=!1,i=!0,c=!1,u=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),l=Object.values(e.sources)[Symbol.iterator](),p.label=2;case 2:return(i=(f=l.next()).done)?[3,5]:(d=f.value).on?(_=!1,[4,v(d.on)(t,o)]):[3,4];case 3:_===p.sent()&&(s=!0),p.label=4;case 4:return i=!0,[3,2];case 5:return[3,8];case 6:return g=p.sent(),c=!0,u=g,[3,8];case 7:try{i||null==l.return||l.return()}finally{if(c)throw u}return[7];case 8:return Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),a=r[0],s=r[1];if(s.on){if(!s.config.init)return s.queueOn=s.queueOn||[],void s.queueOn.push({type:t,data:o});G(e,s,a,t,o)}}),Object.keys(e.pending.sources).length>0||Object.keys(e.pending.destinations).length>0?[4,(y=e,b=t,_async_to_generator(function(){var e,t,n,r,o,a,s,i,c,u,l,f,d,_,g,p,v,h,m,w,j,k,O,S,x;return _ts_generator(this,function(A){switch(A.label){case 0:e=!0,t=!1,n=void 0,A.label=1;case 1:A.trys.push([1,6,7,8]),r=Object.entries(y.pending.sources)[Symbol.iterator](),A.label=2;case 2:return(e=(o=r.next()).done)?[3,5]:(a=_sliced_to_array(o.value,2),s=a[0],i=a[1],!y.pending.sources[s]||y.sources[s]?[3,4]:(u=null===(c=i.config)||void 0===c?void 0:c.require)?-1===(l=u.indexOf(b))?[3,4]:(u.splice(l,1),u.length>0?[3,4]:(delete y.pending.sources[s],[4,K(y,s,i)])):[3,4]);case 3:(f=A.sent())&&(y.sources[s]=f),A.label=4;case 4:return e=!0,[3,2];case 5:return[3,8];case 6:return d=A.sent(),t=!0,n=d,[3,8];case 7:try{e||null==r.return||r.return()}finally{if(t)throw n}return[7];case 8:_=!0,g=!1,p=void 0;try{for(v=Object.entries(y.pending.destinations)[Symbol.iterator]();!(_=(h=v.next()).done);_=!0)m=_sliced_to_array(h.value,2),w=m[0],j=m[1],y.pending.destinations[w]&&!y.destinations[w]&&(O=null===(k=j.config)||void 0===k?void 0:k.require)&&-1!==(S=O.indexOf(b))&&(O.splice(S,1),O.length>0||(delete y.pending.destinations[w],!1!==(x=X(j)).config.queue&&(x.queuePush=_to_consumable_array(y.queue)),y.destinations[w]=x))}catch(e){g=!0,p=e}finally{try{_||null==v.return||v.return()}finally{if(g)throw p}}return[2]}})})())]:[3,10];case 9:p.sent(),p.label=10;case 10:return[2,(B(e,t,a,r),!s)]}var y,b})})()},F=function(e,t,n,r){if(!e)return[];if(t){var o=Se(t,j(r));return o?R(o,L(n)):[]}return R(e,L(n))},V=function(e,t,n){return _async_to_generator(function(){var r,a,s,i,c,l,f,d,_,g,p,v;return _ts_generator(this,function(y){if(r=t.code,a=t.config,s=void 0===a?{}:a,i=t.env,c=void 0===i?{}:i,l=t.before,f=t.next,d=t.cache,!o(r.push))return[2,Q({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(_=n||s||{init:!1},g=l?_object_spread_props(_object_spread({},_),{before:l}):_object_spread({},_),f&&(g=_object_spread_props(_object_spread({},g),{next:f})),d&&(g=_object_spread_props(_object_spread({},g),{cache:d})),p=_object_spread_props(_object_spread({},r),{config:g,env:Z(r.env,c)}),!(v=p.config.id))do{v=u(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[v]);return[2,(e.destinations[v]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),z(e,void 0,{},_define_property({},v,p)))]})})()},z=function(n,r,o){return _async_to_generator(function(n,r){var o,a,s,i,u,l,f,d,_,g,p,y,b,h,m,x,A,P,C,E=arguments;return _ts_generator(this,function(q){switch(q.label){case 0:return o=E.length>2&&void 0!==E[2]?E[2]:{},a=E.length>3?E[3]:void 0,s=n.allowed,i=n.consent,u=n.globals,l=n.user,s?(r&&(n.queue.push(r),n.status.in++),a||(a=n.destinations),[4,Promise.all(Object.entries(a||{}).map(function(a){var s=_sliced_to_array(a,2),f=s[0],d=s[1];return _async_to_generator(function(){var a,s,_,g,p,y,b,h,m,x,A,P,C,E,q,L,I,R,T;return _ts_generator(this,function(M){switch(M.label){case 0:return d.config.disabled?[2,{id:f,destination:d,skipped:!0}]:(p=(d.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:i})}),d.queuePush=[],r&&p.push(ve(r)),y=o.ingest?_object_spread_props(_object_spread({},o.ingest),{_meta:_object_spread_props(_object_spread({},o.ingest._meta),{path:_to_consumable_array(o.ingest._meta.path)})}):e("unknown"),p.length||(null===(s=d.queueOn)||void 0===s?void 0:s.length)?p.length||!(null===(_=d.queueOn)||void 0===_?void 0:_.length)?[3,2]:[4,v(J)(n,d,f)]:[2,{id:f,destination:d,skipped:!0}]);case 1:return b=M.sent(),[2,{id:f,destination:d,skipped:!b}];case 2:return h=[],m=p.filter(function(e){var t=c(d.config.consent,i,e.consent);return!t||(e.consent=t,h.push(e),!1)}),(a=d.queuePush).push.apply(a,_to_consumable_array(m)),h.length?[4,v(J)(n,d,f)]:[2,{id:f,destination:d,queue:p}];case 3:return M.sent()?(d.dlq||(d.dlq=[]),P=d.config.before,C=F(P,P&&w(P)?Oe(P):void 0,n.transformers,y),E=d.config.next,q=E&&w(E)?Oe(E):void 0,L=null===(g=d.config)||void 0===g?void 0:g.cache,I=L?k(L):void 0,R=I?D(I,n):void 0,T=0,[4,Promise.all(h.map(function(e){return _async_to_generator(function(){var r,a,s,i,c,_,g,p,b,h,m,w,k;return _ts_generator(this,function(P){switch(P.label){case 0:if(e.globals=t(u,e.globals),e.user=t(l,e.user),(null==I?void 0:I.full)&&R){if(a=j(y,e),"HIT"===(null==(s=O(I,R,a,"d:".concat(f)))?void 0:s.status))return[2,e];"MISS"===(null==s?void 0:s.status)&&(r={key:s.key,ttl:s.rule.ttl})}return i=e,c=o.respond,C.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Ne(n,n.transformers,C,e,y,o.respond,"destination.".concat(f,".before"))]:[3,2];case 1:if(null===(_=P.sent()).event)return[2,e];_.respond&&(c=_.respond),i=Array.isArray(_.event)?_.event[0]:_.event,P.label=2;case 2:if(I&&!I.full&&R){if(g=j(y,i),"HIT"===(null==(p=O(I,R,g,"d:".concat(f)))?void 0:p.status))return[2,e];"MISS"===(null==p?void 0:p.status)&&(r={key:p.key,ttl:p.rule.ttl})}return b=Date.now(),h=!1,[4,v($,function(e){var t=d.type||"unknown";n.logger.scope(t).error("Push failed",{error:e,event:i.name}),x=e,h=!0,d.dlq.push([i,e])})(n,d,f,i,y,c)];case 3:return m=P.sent(),T+=Date.now()-b,r&&R&&void 0===d.config.mock&&S(R,r.key,null==m||m,r.ttl),void 0!==m&&(A=m),h||!E?[3,5]:(void 0!==m&&(y._response=m),(w=F(E,q,n.transformers,y)).length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Ne(n,n.transformers,w,i,y,c,"destination.".concat(f,".next"))]:[3,5]);case 4:(k=P.sent()).respond&&(c=k.respond),P.label=5;case 5:return[2,e]}})})()}))]):[2,{id:f,destination:d,queue:p}];case 4:return[2,(M.sent(),{id:f,destination:d,error:x,response:A,totalDuration:T})]}})})()}))]):[2,Q({ok:!1})];case 1:f=q.sent(),d={},_={},g={},p=!0,y=!1,b=void 0;try{for(h=f[Symbol.iterator]();!(p=(m=h.next()).done);p=!0)(x=m.value).skipped||(A={type:x.destination.type||"unknown",data:x.response},n.status.destinations[x.id]||(n.status.destinations[x.id]={count:0,failed:0,duration:0}),P=n.status.destinations[x.id],C=Date.now(),x.error?(A.error=x.error,g[x.id]=A,P.failed++,P.lastAt=C,P.duration+=x.totalDuration||0,n.status.failed++):x.queue&&x.queue.length?_[x.id]=A:(d[x.id]=A,P.count++,P.lastAt=C,P.duration+=x.totalDuration||0,n.status.out++))}catch(e){y=!0,b=e}finally{try{p||null==h.return||h.return()}finally{if(y)throw b}}return[2,Q(_object_spread({event:r},Object.keys(d).length&&{done:d},Object.keys(_).length&&{queued:_},Object.keys(g).length&&{failed:g}))]}})}).apply(this,arguments)},J=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d,_,g,p,v;return _ts_generator(this,function(y){switch(y.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=e.logger.scope(o),s={collector:e,logger:a,id:n,config:t.config,env:Z(t.env,t.config.env)},a.debug("init"),[4,m(t.init,"DestinationInit",e.hooks,e.logger)(s)]);case 1:if(!1===(i=y.sent()))return[2,i];if(t.config=_object_spread_props(_object_spread({},i||t.config),{init:!0}),null===(r=t.queueOn)||void 0===r?void 0:r.length){c=t.queueOn,t.queueOn=[],u=!0,l=!1,f=void 0;try{for(d=c[Symbol.iterator]();!(u=(_=d.next()).done);u=!0)g=_.value,p=g.type,v=g.data,G(e,t,n,p,v)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),y.label=2;case 2:return[2,!0]}})})()},$=function(e,t,n,o,a,s){return _async_to_generator(function(){var i,c,u,f,d,_,g,p,v,y;return _ts_generator(this,function(b){switch(b.label){case 0:return i=t.config,[4,h(o,i,e)];case 1:return(c=b.sent()).ignore?[2,!1]:(u=t.type||"unknown",f=e.logger.scope(u),d={collector:e,logger:f,id:n,config:i,data:c.data,rule:c.mapping,ingest:a,env:_object_spread({},Z(t.env,i.env),s?{respond:s}:{})},void 0!==i.mock?[2,(f.debug("mock",{event:c.event.name}),i.mock)]:(_=c.mapping,g=c.mappingKey||"* *",(null==_?void 0:_.batch)&&t.pushBatch&&void 0===i.mock?[3,3]:(f.debug("push",{event:c.event.name}),[4,m(t.push,"DestinationPush",e.hooks,e.logger)(c.event,d)])));case 2:return p=b.sent(),[2,(f.debug("push done"),p)];case 3:return t.batches=t.batches||{},t.batches[g]||(v={key:g,events:[],data:[]},t.batches[g]={batched:v,batchFn:l(function(){var r=t.batches[g].batched,o={collector:e,logger:f,id:n,config:i,data:void 0,rule:_,ingest:a,env:_object_spread({},Z(t.env,i.env),s?{respond:s}:{})};f.debug("push batch",{events:r.events.length}),m(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(r,o),f.debug("push batch done"),r.events=[],r.data=[]},_.batch)}),(y=t.batches[g]).batched.events.push(c.event),r(c.data)&&y.batched.data.push(c.data),y.batchFn(),[2,!0]}})})()},Q=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},X=function(e){var t=e.code,n=e.config,r=void 0===n?{}:n,o=e.env,a=void 0===o?{}:o,s=e.cache,i=I(e,"before").config,c=I(_object_spread_props(_object_spread({},e),{config:i}),"next").config,u=_object_spread({},t.config,r,c);s&&(u.cache=s);var l=Z(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},Y=function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_=arguments;return _ts_generator(this,function(g){t=_.length>1&&void 0!==_[1]?_[1]:{},o={},a=!0,s=!1,i=void 0;try{for(c=Object.entries(t)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(r=d.config)||void 0===r||null===(n=r.require)||void 0===n?void 0:n.length)?e.pending.destinations[f]=d:o[f]=X(d)}catch(e){s=!0,i=e}finally{try{a||null==c.return||c.return()}finally{if(s)throw i}}return[2,o]})}).apply(this,arguments)},Z=function(e,t){return e||t?t?e&&a(e)&&a(t)?_object_spread({},e,t):t:e:{}},ee=function(e,t,n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return r=Object.entries(e).map(function(e){var r=_sliced_to_array(e,2),o=r[0],a=r[1];return _async_to_generator(function(){var e,r,s,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:if(!(r=a.destroy))return[2];s=a.type||"unknown",i=n.scope(s),c={id:o,config:a.config,env:null!==(e=a.env)&&void 0!==e?e:{},logger:i},l.label=1;case 1:return l.trys.push([1,3,,4]),[4,Promise.race([r(c),new Promise(function(e,n){return setTimeout(function(){return n(new Error("".concat(t," '").concat(o,"' destroy timed out")))},5e3)})])];case 2:return l.sent(),[3,4];case 3:return u=l.sent(),i.error("".concat(t," '").concat(o,"' destroy failed: ").concat(u)),[3,4];case 4:return[2]}})})()}),[4,Promise.allSettled(r)];case 1:return o.sent(),[2]}})})()},te=function(e,n,r,i){return _async_to_generator(function(){var c,u,l,f,d,_,g;return _ts_generator(this,function(p){switch(p.label){case 0:switch(l=!1,n){case Ke.Commands.Config:return[3,1];case Ke.Commands.Consent:return[3,2];case Ke.Commands.Custom:return[3,3];case Ke.Commands.Destination:return[3,4];case Ke.Commands.Globals:return[3,11];case Ke.Commands.On:return[3,12];case Ke.Commands.Ready:return[3,15];case Ke.Commands.Run:return[3,16];case Ke.Commands.Session:return[3,18];case Ke.Commands.Shutdown:return[3,19];case Ke.Commands.User:return[3,21]}return[3,22];case 1:return a(r)&&(t(e.config,r,{shallow:!1}),u=r,l=!0),[3,22];case 2:return a(r)&&(f=function(e,n){var r={};return Object.entries(n).forEach(function(e){var t=_sliced_to_array(e,2),n=t[0],o=t[1];r[n]=!!o}),e.consent=t(e.consent,r),{update:r}}(e,r),d=f.update,u=d,l=!0),[3,22];case 3:return a(r)&&(e.custom=t(e.custom,r),u=r,l=!0),[3,22];case 4:return a(r)?"code"in r&&a(r.code)?[4,V(e,r,i)]:[3,6]:[3,10];case 5:return _=c=p.sent(),[3,9];case 6:return(g=o(r.push))?[4,V(e,{code:r},i)]:[3,8];case 7:g=c=p.sent(),p.label=8;case 8:_=g,p.label=9;case 9:p.label=10;case 10:return[3,22];case 11:return a(r)&&(e.globals=t(e.globals,r),u=r,l=!0),[3,22];case 12:return s(r)?[4,H(e,r,i)]:[3,14];case 13:p.sent(),p.label=14;case 14:return[3,22];case 15:return l=!0,[3,22];case 16:return[4,re(e,r)];case 17:return c=p.sent(),l=!0,[3,22];case 18:return l=!0,[3,22];case 19:return[4,(v=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=v.logger,[4,ee(v.sources,"source",e)];case 1:return t.sent(),[4,ee(v.destinations,"destination",e)];case 2:return t.sent(),[4,ee(v.transformers,"transformer",e)];case 3:return t.sent(),[4,ee(v.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 20:return p.sent(),[3,22];case 21:a(r)&&(t(e.user,r,{shallow:!1}),u=r,l=!0),p.label=22;case 22:return l?[4,W(e,n,void 0,u)]:[3,25];case 23:return p.sent(),[4,z(e)];case 24:c=p.sent(),p.label=25;case 25:return[2,c||Q({ok:!0})]}var v})})()},ne=function(e,t){if(!t.name)throw new Error("Event name is required");var n=_sliced_to_array(t.name.split(" "),2),r=n[0],o=n[1];if(!r||!o)throw new Error("Event name is invalid");++e.count;var a=t.timestamp,s=void 0===a?Date.now():a,i=t.group,c=void 0===i?e.group:i,u=t.count,l=void 0===u?e.count:u,f=t.name,d=void 0===f?"".concat(r," ").concat(o):f,_=t.data,g=void 0===_?{}:_,p=t.context,v=void 0===p?{}:p,y=t.globals,b=void 0===y?e.globals:y,h=t.custom,m=void 0===h?{}:h,w=t.user,j=void 0===w?e.user:w,k=t.nested,O=void 0===k?[]:k,S=t.consent,x=void 0===S?e.consent:S,A=t.id,P=void 0===A?"".concat(s,"-").concat(c,"-").concat(l):A,C=t.trigger,E=void 0===C?"":C,q=t.entity,D=void 0===q?r:q,L=t.action,I=void 0===L?o:L,R=t.timing,T=void 0===R?0:R,M=t.version,U=void 0===M?{source:e.version,tagging:e.config.tagging||0}:M,K=t.source;return{name:d,data:g,context:v,globals:b,custom:m,user:j,nested:O,consent:x,id:P,trigger:E,entity:D,action:I,timestamp:s,timing:T,group:c,count:l,version:U,source:void 0===K?{type:"collector",id:"",previous_id:""}:K}},re=function(e,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return e.allowed=!0,e.count=0,e.group=u(),e.timing=Date.now(),n&&(n.consent&&(e.consent=t(e.consent,n.consent)),n.user&&(e.user=t(e.user,n.user)),n.globals&&(e.globals=t(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=t(e.custom,n.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,z(e)];case 1:return[2,r.sent()]}})})()},oe=function(n){return _async_to_generator(function(){var r,o,a,s,i,u,l,f,d;return _ts_generator(this,function(g){switch(g.label){case 0:return a=t({globalsStatic:{},sessionStatic:{},tagging:0,run:!0},n,{merge:!1,extend:!1}),s={level:null===(r=n.logger)||void 0===r?void 0:r.level,handler:null===(o=n.logger)||void 0===o?void 0:o.handler},i=_(s),u=_object_spread({},a.globalsStatic,n.globals),(l={allowed:!1,config:a,consent:n.consent||{},count:0,custom:n.custom||{},destinations:{},transformers:{},stores:{},globals:u,group:"",hooks:n.hooks||{},logger:i,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:n.user||{},version:"3.4.1-next-1776790594143",sources:{},pending:{sources:{},destinations:{}},push:void 0,command:void 0}).push=function(t,n){return m(function(r){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,v(function(){return _async_to_generator(function(){var a,s,i,u,l,f,d,_,g,p,v,y,b,m,w,j,k,O,S,x,A;return _ts_generator(this,function(P){switch(P.label){case 0:return a=Date.now(),s=o.id,i=o.ingest,u=o.respond,l=o.mapping,f=o.preChain,d=o.include,_=o.exclude,g=u,p=r,v=d||_?function(e,t,n){var r=e;return t&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var n=_sliced_to_array(e,1)[0];return t.includes(n)}))),n&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var t=_sliced_to_array(e,1)[0];return!n.includes(t)}))),r}(t.destinations,d,_):void 0,y=null!=i?i:e(s||"unknown"),l?[4,h(p,l,t)]:[3,2];case 1:if((b=P.sent()).ignore)return[2,Q({ok:!0})];if(l.consent&&!c(l.consent,t.consent,b.event.consent))return[2,Q({ok:!0})];p=b.event,P.label=2;case 2:return(null==f?void 0:f.length)&&t.transformers&&Object.keys(t.transformers).length>0?[4,Ne(t,t.transformers,f,p,y,g,s?"source.".concat(s,".next"):void 0)]:[3,6];case 3:return null===(m=P.sent()).event?[2,Q({ok:!0})]:(m.respond&&(g=m.respond),Array.isArray(m.event)?[4,Promise.all(m.event.map(function(e){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=n(e),o=ne(t,r),[2,z(t,o,{id:s,ingest:y,respond:g},v)]})})()}))]:[3,5]);case 4:return j=P.sent(),s&&(t.status.sources[s]||(t.status.sources[s]={count:0,duration:0}),(k=t.status.sources[s]).count+=m.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-a),[2,null!==(w=j[0])&&void 0!==w?w:Q({ok:!0})];case 5:p=m.event,P.label=6;case 6:return O=n(p),S=ne(t,O),[4,z(t,S,{id:s,ingest:y,respond:g},v)];case 7:return x=P.sent(),s&&(t.status.sources[s]||(t.status.sources[s]={count:0,duration:0}),(A=t.status.sources[s]).count++,A.lastAt=Date.now(),A.duration+=Date.now()-a),[2,x]}})})()},function(){return Q({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Push",t.hooks,t.logger)}(l,function(e){return _object_spread({timing:Math.round((Date.now()-l.timing)/10)/100,source:{type:"collector",id:"",previous_id:""}},e)}),l.command=function(e,t){return m(function(n,r,o){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,v(function(){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,t(e,n,r,o)];case 1:return[2,a.sent()]}})})()},function(){return Q({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(l,te),f=n.stores||{},[4,function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_,g,p,v,y,b,h,w,j,k=arguments;return _ts_generator(this,function(O){switch(O.label){case 0:t=k.length>1&&void 0!==k[1]?k[1]:{},n={},r=!0,o=!1,a=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),s=Object.entries(t)[Symbol.iterator](),O.label=2;case 2:return(r=(i=s.next()).done)?[3,5]:(c=_sliced_to_array(i.value,2),u=c[0],l=c[1],f=l.code,d=l.config,_=void 0===d?{}:d,g=l.env,p=void 0===g?{}:g,v=e.logger.scope("store").scope(u),[4,f({collector:e,logger:v,id:u,config:_,env:p})]);case 3:y=O.sent(),b=y.get,h=y.set,w=y.delete,y.get=m(b,"StoreGet",e.hooks,e.logger),y.set=m(h,"StoreSet",e.hooks,e.logger),y.delete=m(w,"StoreDelete",e.hooks,e.logger),n[u]=y,O.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return j=O.sent(),o=!0,a=j,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2,n]}})}).apply(this,arguments)}(l,f)];case 1:return l.stores=g.sent(),function(e,t,n){var r=new Map,o=!0,a=!1,s=void 0;try{for(var i,c=Object.entries(e)[Symbol.iterator]();!(o=(i=c.next()).done);o=!0){var u=_sliced_to_array(i.value,2),l=u[0],f=u[1];t[l]&&r.set(f,t[l])}}catch(e){a=!0,s=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw s}}if(0!==r.size)for(var d=!0,_=!1,g=void 0,p=0,v=[n.transformers,n.destinations,n.sources];p<v.length;p++){var y=v[p];if(y)try{for(var b,h=Object.values(y)[Symbol.iterator]();!(d=(b=h.next()).done);d=!0){m(b.value.env)}}catch(e){_=!0,g=e}finally{try{d||null==h.return||h.return()}finally{if(_)throw g}}}function m(e){if(e){var t=!0,n=!1,o=void 0;try{for(var a,s=Object.entries(e)[Symbol.iterator]();!(t=(a=s.next()).done);t=!0){var i=_sliced_to_array(a.value,2),c=i[0],u=i[1];if("object"==(void 0===u?"undefined":_type_of(u))&&null!==u){var l=r.get(u);l&&(e[c]=l)}}}catch(e){n=!0,o=e}finally{try{t||null==s.return||s.return()}finally{if(n)throw o}}}}}(f,l.stores,n),l.stores.__cache||(d=new Map,l.stores.__cache={type:"memory",config:{},get:function(e){var t=d.get(e);if(t){if(!(t.expires&&Date.now()>t.expires))return t.value;d.delete(e)}},set:function(e,t,n){d.set(e,{value:t,expires:n?Date.now()+n:void 0})},delete:function(e){d.delete(e)}}),[4,Y(l,n.destinations||{})];case 2:return l.destinations=g.sent(),[4,function(t){return _async_to_generator(function(t){var n,r,o,a,s,i,c,u,l,f,d,_,g,p,v,y,b,h,m,w,j,k,O,S,x=arguments;return _ts_generator(this,function(A){switch(A.label){case 0:n=x.length>1&&void 0!==x[1]?x[1]:{},r={},o=!0,a=!1,s=void 0,A.label=1;case 1:A.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),A.label=2;case 2:return(o=(c=i.next()).done)?[3,5]:(u=_sliced_to_array(c.value,2),l=u[0],f=u[1],d=f.code,_=f.env,g=void 0===_?{}:_,p=I(f,"before"),v=p.config,y=I(_object_spread_props(_object_spread({},f),{config:v}),"next"),b=y.config,h=Object.keys(g).length>0?_object_spread_props(_object_spread({},b),{env:g}):b,m=f.cache,w=m?_object_spread_props(_object_spread({},h),{cache:m}):h,j=t.logger.scope("transformer").scope(l),k={collector:t,logger:j,id:l,ingest:e(l),config:w,env:g},[4,d(k)]);case 3:O=A.sent(),r[l]=O,A.label=4;case 4:return o=!0,[3,2];case 5:return[3,8];case 6:return S=A.sent(),a=!0,s=S,[3,8];case 7:try{o||null==i.return||i.return()}finally{if(a)throw s}return[7];case 8:return[2,r]}})}).apply(this,arguments)}(l,n.transformers||{})];case 3:return[2,(l.transformers=g.sent(),l)]}})})()},ae=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:return[4,oe(e=e||{})];case 1:return t=d.sent(),r=t,n={type:"elb",config:{},push:function(e,t,n,o,a,s){return _async_to_generator(function(){var i,c;return _ts_generator(this,function(u){if("string"==typeof e&&e.startsWith("walker "))return i=e.replace("walker ",""),[2,r.command(i,t,n)];if("string"==typeof e)c={name:e},t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(c.data=t);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,Q({ok:!1})];c=e,t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(c.data=_object_spread({},c.data||{},t))}return[2,(o&&"object"==(void 0===o?"undefined":_type_of(o))&&(c.context=o),a&&Array.isArray(a)&&(c.nested=a),s&&"object"==(void 0===s?"undefined":_type_of(s))&&(c.custom=s),r.push(c))]})})()}},t.sources.elb=n,[4,N(t,e.sources||{})];case 2:return o=d.sent(),Object.assign(t.sources,o),a=e.consent,s=e.user,i=e.globals,c=e.custom,a?[4,t.command("consent",a)]:[3,4];case 3:d.sent(),d.label=4;case 4:return s?[4,t.command("user",s)]:[3,6];case 5:d.sent(),d.label=6;case 6:return i&&Object.assign(t.globals,i),c&&Object.assign(t.custom,c),t.config.run?[4,t.command("run")]:[3,8];case 7:d.sent(),d.label=8;case 8:return u=n.push,l=Object.values(t.sources).filter(function(e){return"elb"!==e.type}),[2,((f=l.find(function(e){return e.config.primary}))?u=f.push:l.length>0&&(u=l[0].push),{collector:t,elb:u})]}})})()},se=Object.defineProperty,ie=Object.getOwnPropertyDescriptor,ce=Object.getOwnPropertyNames,ue=Object.prototype.hasOwnProperty,le=function(e,t){for(var n in t)se(e,n,{get:t[n],enumerable:!0})},fe={};le(fe,{SourceDataLayer:function(){return Ae},createTrigger:function(){return Ge},default:function(){return Fe},env:function(){return Pe},sourceDataLayer:function(){return We},step:function(){return Le},trigger:function(){return Be}});var de=Object.defineProperty;!function(e,t){for(var n in t)de(e,n,{get:t[n],enumerable:!0})}({},{Level:function(){return ge}});var _e,ge=((_e=ge||{})[_e.ERROR=0]="ERROR",_e[_e.WARN=1]="WARN",_e[_e.INFO=2]="INFO",_e[_e.DEBUG=3]="DEBUG",_e),pe={merge:!0,shallow:!0,extend:!0};function ve(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if("object"!=(void 0===e?"undefined":_type_of(e))||null===e)return e;if(t.has(e))return t.get(e);var n=Object.prototype.toString.call(e);if("[object Object]"===n){var r={};for(var o in t.set(e,r),e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=ve(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(ve(e,t))}),a}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){var s=e;return new RegExp(s.source,s.flags)}return e}function ye(e){for(var t=arguments.length>2?arguments[2]:void 0,o=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),a=e,s=0;s<o.length;s++){var i=o[s];if("*"===i&&n(a)){var c=o.slice(s+1).join("."),u=[],l=!0,f=!1,d=void 0;try{for(var _,g=a[Symbol.iterator]();!(l=(_=g.next()).done);l=!0){var p=ye(_.value,c,t);u.push(p)}}catch(e){f=!0,d=e}finally{try{l||null==g.return||g.return()}finally{if(f)throw d}}return u}if(void 0===(a=_instanceof(a,Object)?a[i]:void 0))break}return r(a)?a:t}var be={data:function(e){return e.data},globals:function(e){return e.globals},context:function(e){return e.context},user:function(e){return e.user},source:function(e){return e.source},version:function(e){return e.version},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,group:e.group,count:e.count,timing:e.timing}}},he=function(e,t,n,r){var o="".concat(ge[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(n).length>0,s=0===e?console.error:1===e?console.warn:console.log;a?s(o,t,n):s(o,t)};function me(e){var t=e.level,n=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=t){var s=d(r,a);n?n(e,s.message,s.context,o,he):he(e,s.message,s.context,o)}};return{error:function(e,t){return a(0,e,t)},warn:function(e,t){return a(1,e,t)},info:function(e,t){return a(2,e,t)},debug:function(e,t){return a(3,e,t)},throw:function(e,t){var r=d(e,t);throw n?n(0,r.message,r.context,o,he):he(0,r.message,r.context,o),new Error(r.message)},json:function(e){r?r(e):console.log(JSON.stringify(e,null,2))},scope:function(e){return me({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function we(e){return function(e){return"boolean"==typeof e}(e)||s(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!r(e)||n(e)&&e.every(we)||a(e)&&Object.values(e).every(we)}function je(e,t){return _async_to_generator(function(e,t){var o,a,i,u=arguments;return _ts_generator(this,function(l){return a=(o=u.length>2&&void 0!==u[2]?u[2]:{}).collector,i=o.consent,[2,(n(t)?t:[t]).reduce(function(t,u){return _async_to_generator(function(){var l,f,d,_,p,y,h,m,w,j,k,O,S,x,A,P,C,E,q,D,L;return _ts_generator(this,function(I){switch(I.label){case 0:return[4,t];case 1:return(l=I.sent())?[2,l]:(f=s(u)?{key:u}:u,Object.keys(f).length?(d=f.condition,_=f.consent,p=f.fn,y=f.key,h=f.loop,m=f.map,w=f.set,j=f.validate,k=f.value,(O=d)?[4,v(d)(e,u,a)]:[3,3]):[2]);case 2:O=!I.sent(),I.label=3;case 3:return O?[2]:_&&!c(_,i)?[2,k]:(S=r(k)?k:e,p?[4,v(p)(e,u,o)]:[3,5]);case 4:S=I.sent(),I.label=5;case 5:return y&&(S=ye(e,y,k)),h?(x=_sliced_to_array(h,2),A=x[0],P=x[1],"this"!==A?[3,6]:(E=[e],[3,8])):[3,11];case 6:return[4,b(e,A,o)];case 7:E=I.sent(),I.label=8;case 8:return n(C=E)?[4,Promise.all(C.map(function(e){return b(e,P,o)}))]:[3,10];case 9:S=I.sent().filter(r),I.label=10;case 10:return[3,17];case 11:return m?[4,Object.entries(m).reduce(function(t,n){var a=_sliced_to_array(n,2),s=a[0],i=a[1];return _async_to_generator(function(){var n,a;return _ts_generator(this,function(c){switch(c.label){case 0:return[4,t];case 1:return n=c.sent(),[4,b(e,i,o)];case 2:return a=c.sent(),[2,(r(a)&&(n[s]=a),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return S=I.sent(),[3,16];case 13:return(q=w)?[4,Promise.all(w.map(function(t){return je(e,t,o)}))]:[3,15];case 14:q=S=I.sent(),I.label=15;case 15:I.label=16;case 16:I.label=17;case 17:return(D=j)?[4,v(j)(S)]:[3,19];case 18:D=!I.sent(),I.label=19;case 19:return D&&(S=void 0),L=g(S),[2,r(L)?L:g(k)]}})})()},Promise.resolve(void 0))]})}).apply(this,arguments)}function ke(e){if("*"===e)return function(){return!0};if("and"in e){var t=e.and.map(ke);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(ke);return function(e){return n.some(function(t){return t(e)})}}return function(e){var t=e.key,n=e.operator,r=e.value,o=e.not,a=function(e,t){switch(e){case"eq":return function(e){return String(null!=e?e:"")===t};case"contains":return function(e){return String(null!=e?e:"").includes(t)};case"prefix":return function(e){return String(null!=e?e:"").startsWith(t)};case"suffix":return function(e){return String(null!=e?e:"").endsWith(t)};case"regex":var n=new RegExp(t);return function(e){return n.test(String(null!=e?e:""))};case"gt":var r=Number(t);return function(e){return Number(e)>r};case"lt":var o=Number(t);return function(e){return Number(e)<o};case"exists":return function(e){return null!=e}}}(n,r);return function(e){var n=ye(e,t),r=a(n);return o?!r:r}}(e)}function Oe(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;return w(e)?{type:"routes",routes:e.map(function(e){return{match:ke(e.match),next:Oe(e.next)}})}:{type:"chain",value:e}}}}function Se(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;var n=!0,r=!1,o=void 0;try{for(var a,s=e.routes[Symbol.iterator]();!(n=(a=s.next()).done);n=!0){var i=a.value;if(i.match(t))return Se(i.next,t)}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}}}var xe=!1,Ae={},Pe={};le(Pe,{push:function(){return De}});var Ce=function(){},Ee=function(){return function(){return Promise.resolve({ok:!0})}},qe={error:Ce,warn:Ce,info:Ce,debug:Ce,throw:function(e){throw"string"==typeof e?new Error(e):e},json:Ce,scope:function(){return qe}},De={get push(){return Ee()},get command(){return Ee()},get elb(){return Ee()},get window(){return{dataLayer:[],addEventListener:Ce,removeEventListener:Ce}},logger:qe},Le={};le(Le,{consentUpdate:function(){return Re},directEvent:function(){return Ue},gtagAddToCart:function(){return Te},gtagPurchase:function(){return Ie},gtagViewItem:function(){return Me}});var Ie={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},Re={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},Te={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},Me={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},Ue={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},Ke={Commands:{Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}};function Ne(t,n,r,o,a,s,i){return _async_to_generator(function(){var c,u,l,f,d,_,g,p,y,b;return _ts_generator(this,function(h){switch(h.label){case 0:i&&(null==a?void 0:a._meta)&&(a._meta.chainPath=i),c=o,u=s,l=!0,f=!1,d=void 0,h.label=1;case 1:h.trys.push([1,6,7,8]),_=function(){var o,s,l,f,d,_,g,y,b,h,m,x,A,P,C,E,q,I,U,K,N,H,G,B,W,F,V,z,J,$,Q,X,Y,Z,ee,te,ne,re,oe,ae,se;return _ts_generator(this,function(ie){switch(ie.label){case 0:return o=p.value,(g=n[o])?a&&a._meta&&a._meta.path.length>256?[2,{v:(t.logger.error("Max path length exceeded at ".concat(o)),{event:null,respond:u})}]:(a&&a._meta&&(a._meta.hops++,a._meta.path.push(o)),[4,v(T)(t,g,o)]):(t.logger.warn("Transformer not found: ".concat(o)),[2,"continue"]);case 1:if(!ie.sent())return[2,{v:(t.logger.error("Transformer init failed: ".concat(o)),{event:null,respond:u})}];if(i&&void 0!==(null===(l=g.config)||void 0===l||null===(s=l.chainMocks)||void 0===s?void 0:s[i]))return y=g.config.chainMocks[i],t.logger.scope("transformer:".concat(g.type||"unknown")).debug("chainMock",{chain:i}),c=y,[2,"continue"];if(void 0!==(null===(f=g.config)||void 0===f?void 0:f.mock))return t.logger.scope("transformer:".concat(g.type||"unknown")).debug("mock"),c=g.config.mock,[2,"continue"];if(null===(d=g.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(b=null===(_=g.config)||void 0===_?void 0:_.cache,h=b?k(b):void 0,m=h?D(h,t):void 0,x=void 0,h&&m){if(A=j(a,c),"HIT"===(null==(P=O(h,m,A,"t:".concat(o)))?void 0:P.status)&&P.value)return c=P.value,h.full?[2,{v:{event:c,respond:u}}]:[2,"continue"];"MISS"===(null==P?void 0:P.status)&&(x={key:P.key,ttl:P.rule.ttl})}return(C=g.config.before)&&(E=R("string"==typeof C||Array.isArray(C)&&!w(C)?C:Se(Oe(C),j(a,c))||void 0,L(n))).length>0?[4,Ne(t,n,E,c,a,u,i)]:[3,3];case 2:if(null===(I=ie.sent()).event)return[2,{v:{event:null,respond:null!==(q=I.respond)&&void 0!==q?q:u}}];I.respond&&(u=I.respond),c=Array.isArray(I.event)?I.event[0]:I.event,ie.label=3;case 3:return[4,v(M,function(e){return t.logger.scope("transformer:".concat(g.type||"unknown")).error("Push failed",{error:e}),!1})(t,g,o,c,a,u)];case 4:return!1===(U=ie.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(U)?(K=r.slice(r.indexOf(o)+1),[4,Promise.all(U.map(function(r){return _async_to_generator(function(){var o,s,l,f,d;return _ts_generator(this,function(_){return o=r.event||c,s=a?_object_spread_props(_object_spread({},a),{_meta:_object_spread_props(_object_spread({},a._meta),{path:_to_consumable_array(a._meta.path)})}):e("unknown"),r.next?(l=r.next,w(r.next)&&(f=Oe(r.next),l=Se(f,j(s,o))),l&&(d=R(l,L(n))).length>0?[2,Ne(t,n,d,o,s,u,i)]:[2,{event:o,respond:u}]):[2,K.length>0?Ne(t,n,K,o,s,u,i):{event:o,respond:u}]})})()}))]):[3,6];case 5:N=ie.sent(),H=u,G=[],B=!0,W=!1,F=void 0;try{for(V=N.flat()[Symbol.iterator]();!(B=(z=V.next()).done);B=!0)if(null!==(J=z.value))if(J&&"object"==(void 0===J?"undefined":_type_of(J))&&"event"in J){if((Q=J).respond&&(H=Q.respond),null===Q.event)continue;Array.isArray(Q.event)?($=G).push.apply($,_to_consumable_array(Q.event)):G.push(Q.event)}else G.push(J)}catch(e){W=!0,F=e}finally{try{B||null==V.return||V.return()}finally{if(W)throw F}}return[2,{v:0===G.length?{event:null,respond:H}:1===G.length?{event:G[0],respond:H}:{event:G,respond:H}}];case 6:if(U&&"object"==(void 0===U?"undefined":_type_of(U))){if(X=U.event,Y=U.respond,Z=U.next,Y&&(u=Y),Z)return ee=Z,!w(Z)||(te=Oe(Z),ee=Se(te,j(a,c)))?[2,{v:(ne=R(ee,L(n))).length>0?Ne(t,n,ne,X||c,a,u,i):(t.logger.warn("Branch target not found: ".concat(JSON.stringify(Z))),{event:null,respond:u})}]:(X&&(c=X),[2,"continue"]);X&&(c=X)}return x&&m&&S(m,x.key,c,x.ttl),(!U||"object"==(void 0===U?"undefined":_type_of(U))&&!U.next)&&g.config.next&&w(g.config.next)?(re=g.config.next,oe=Oe(re),(ae=Se(oe,j(a,c)))&&(se=R(ae,L(n))).length>0?[2,{v:Ne(t,n,se,c,a,u,i)}]:[2,{v:{event:c,respond:u}}]):[2]}})},g=r[Symbol.iterator](),h.label=2;case 2:return(l=(p=g.next()).done)?[3,5]:[5,_ts_values(_())];case 3:if("object"===_type_of(y=h.sent()))return[2,y.v];h.label=4;case 4:return l=!0,[3,2];case 5:return[3,8];case 6:return b=h.sent(),f=!0,d=b,[3,8];case 7:try{l||null==g.return||g.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var He,Ge=function(e){return _async_to_generator(function(){var t,n;return _ts_generator(this,function(r){return n=function(){return function(n){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d,_,g,p;return _ts_generator(this,function(v){switch(v.label){case 0:if(t)return[3,2];if((o=_object_spread({},e)).sources){o.sources=_object_spread({},o.sources),a=!0,s=!1,i=void 0;try{for(c=Object.entries(o.sources)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(_=d.env)||void 0===_?void 0:_.window)||(o.sources[f]=_object_spread_props(_object_spread({},d),{env:_object_spread_props(_object_spread({},d.env),{window:window})}))}catch(e){s=!0,i=e}finally{try{a||null==c.return||c.return()}finally{if(s)throw i}}}return[4,ae(_object_spread_props(_object_spread({},o),{run:null===(r=o.run)||void 0===r||r}))];case 1:g=v.sent(),t={collector:g.collector,elb:g.elb},v.label=2;case 2:return(p=window).dataLayer||(p.dataLayer=[]),p.dataLayer.push(n),[2]}})})()}},[2,{get flow(){return t},trigger:n}]})})()},Be=function(e,t){var n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},We=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u,l;return _ts_generator(this,function(f){return t=e.config,n=e.env,r=n.elb,o=n.window,a=_object_spread({name:"dataLayer",prefix:"dataLayer"},null==t?void 0:t.settings),s={settings:a},i=0,o&&(c=a.name||"dataLayer",u=o[c],i=Array.isArray(u)?u.length:0,function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:globalThis.window,r=t.settings,o=(null==r?void 0:r.name)||"dataLayer";n[o]||(n[o]=[]);var a=n[o];if(Array.isArray(a)){var s=a.push.bind(a);a.push=function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];if(xe)return s.apply(void 0,_to_consumable_array(n));xe=!0;try{var a=!0,i=!1,c=void 0;try{for(var u,l=n[Symbol.iterator]();!(a=(u=l.next()).done);a=!0){var f=u.value;P(e,r,f)}}catch(e){i=!0,c=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw c}}}finally{xe=!1}return s.apply(void 0,_to_consumable_array(n))}}}(r,s,l=o),e.collector.allowed&&i>0&&(A(r,s,i,l),i=0)),[2,{type:"dataLayer",config:s,push:r,on:function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){return"run"===e&&o&&i>0&&(A(r,s,i,o),i=0),[2]})})()},destroy:function(){return _async_to_generator(function(){var e;return _ts_generator(this,function(t){return e=a.name||"dataLayer",o&&o[e]&&Array.isArray(o[e]),[2]})})()}}]})})()},Fe=We;return He=fe,function(e,t,n,r){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,a=!1,s=void 0;try{for(var i,c=function(){var o=i.value;ue.call(e,o)||o===n||se(e,o,{get:function(){return t[o]},enumerable:!(r=ie(t,o))||r.enumerable})},u=ce(t)[Symbol.iterator]();!(o=(i=u.next()).done);o=!0)c()}catch(e){a=!0,s=e}finally{try{o||null==u.return||u.return()}finally{if(a)throw s}}}return e}(se({},"__esModule",{value:!0}),He)}();
|
|
1
|
+
"use strict";function _array_like_to_array(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _array_with_holes(e){if(Array.isArray(e))return e}function _array_without_holes(e){if(Array.isArray(e))return _array_like_to_array(e)}function asyncGeneratorStep(e,t,n,r,o,a,s){try{var i=e[a](s),c=i.value}catch(e){return void n(e)}i.done?t(c):Promise.resolve(c).then(r,o)}function _async_to_generator(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function s(e){asyncGeneratorStep(a,r,o,s,i,"next",e)}function i(e){asyncGeneratorStep(a,r,o,s,i,"throw",e)}s(void 0)})}}function _define_property(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _iterable_to_array(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterable_to_array_limit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],s=!0,i=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);s=!0);}catch(e){i=!0,o=e}finally{try{s||null==n.return||n.return()}finally{if(i)throw o}}return a}}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _non_iterable_spread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){_define_property(e,t,n[t])})}return e}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function _object_spread_props(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function _object_without_properties(e,t){if(null==e)return{};var n,r,o,a={};if("undefined"!=typeof Reflect&&Reflect.ownKeys){for(n=Reflect.ownKeys(Object(e)),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=_object_without_properties_loose(e,t),Object.getOwnPropertySymbols)for(n=Object.getOwnPropertySymbols(e),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}function _object_without_properties_loose(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}function _sliced_to_array(e,t){return _array_with_holes(e)||_iterable_to_array_limit(e,t)||_unsupported_iterable_to_array(e,t)||_non_iterable_rest()}function _to_consumable_array(e){return _array_without_holes(e)||_iterable_to_array(e)||_unsupported_iterable_to_array(e)||_non_iterable_spread()}function _type_of(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function _unsupported_iterable_to_array(e,t){if(e){if("string"==typeof e)return _array_like_to_array(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_array_like_to_array(e,t):void 0}}function _ts_generator(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(s,"next",{value:c(0)}),i(s,"throw",{value:c(1)}),i(s,"return",{value:c(2)}),"function"==typeof Symbol&&i(s,Symbol.iterator,{value:function(){return this}}),s;function c(i){return function(c){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,i[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,c])}}}function _ts_values(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}var Destination=function(){var e=function(e){return{_meta:{hops:0,path:[e]}}},t=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n=_object_spread({},pe,n);var r=Object.entries(t).reduce(function(t,r){var o=_sliced_to_array(r,2),a=o[0],s=o[1],i=e[a];return n.merge&&Array.isArray(i)&&Array.isArray(s)?t[a]=s.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(i)):(n.extend||a in e)&&(t[a]=s),t},{});return n.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},n=function(e){return Array.isArray(e)},r=function(e){return void 0!==e},o=function(e){return"function"==typeof e},a=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!n(e)&&"[object Object]"===Object.prototype.toString.call(e)},s=function(e){return"string"==typeof e},i=function(e,t,n){if(!a(e))return e;for(var r=ve(e),o=t.split("."),s=r,i=0;i<o.length;i++){var c=o[i];i===o.length-1?s[c]=n:(c in s&&"object"==_type_of(s[c])&&null!==s[c]||(s[c]={}),s=s[c])}return r},c=function(e){var t=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),n={},r=!e||0===Object.keys(e).length;return Object.keys(t).forEach(function(o){t[o]&&(n[o]=!0,e&&e[o]&&(r=!0))}),!!r&&n},u=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,t=arguments.length>1?arguments[1]:void 0;if(t){for(var n=t.length,r="",o=0;o<e;o++)r+=t[Math.random()*n|0];return r}for(var a="";a.length<e;)a+=(36*Math.random()|0).toString(36);return a},l=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=null,a=!1;return function(){for(var s=arguments.length,i=new Array(s),c=0;c<s;c++)i[c]=arguments[c];return new Promise(function(s){var c=r&&!a;o&&clearTimeout(o),o=setTimeout(function(){o=null,r&&!a||(t=e.apply(void 0,_to_consumable_array(i)),s(t))},n),c&&(a=!0,t=e.apply(void 0,_to_consumable_array(i)),s(t))})}},f=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},d=function(e,t){var n,r={};return _instanceof(e,Error)?(n=e.message,r.error=f(e)):n=e,void 0!==t&&(_instanceof(t,Error)?r.error=f(t):"object"==(void 0===t?"undefined":_type_of(t))&&null!==t?"error"in(r=_object_spread({},r,t))&&_instanceof(r.error,Error)&&(r.error=f(r.error)):r.value=t),{message:n,context:r}},_=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return me({level:void 0!==t.level?(e=t.level,"string"==typeof e?ge[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},g=function(e){return we(e)?e:void 0},p=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}},v=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return _async_to_generator(function(){var r;return _ts_generator(this,function(a){switch(a.label){case 0:return a.trys.push([0,2,4,6]),[4,e.apply(void 0,_to_consumable_array(o))];case 1:case 3:return[2,a.sent()];case 2:return r=a.sent(),t?[4,t(r)]:[2];case 4:return[4,null==n?void 0:n()];case 5:return a.sent(),[7];case 6:return[2]}})})()}},y=function(e,t){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d;return _ts_generator(this,function(_){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],s=o[1],t&&a&&s?(c="",l=s,f=function(t){if(t)return(t=n(t)?t:[t]).find(function(t){return!t.condition||t.condition(e)})},t[u=a]||(u="*"),[2,((d=t[u])&&(d[l]||(l="*"),i=f(d[l])),i||(u="*",l="*",i=f(null===(r=t[u])||void 0===r?void 0:r[l])),i&&(c="".concat(u," ").concat(l)),{eventMapping:i,mappingKey:c})]):[2,{}]})})()},b=function(e){return _async_to_generator(function(e){var t,o,s,i,c,u,l,f,d,_,g,p,y,b=arguments;return _ts_generator(this,function(h){switch(h.label){case 0:if(t=b.length>1&&void 0!==b[1]?b[1]:{},o=b.length>2&&void 0!==b[2]?b[2]:{},!r(e))return[2];i=a(e)&&e.consent||o.consent||(null===(s=o.collector)||void 0===s?void 0:s.consent),c=n(t)?t:[t],u=!0,l=!1,f=void 0,h.label=1;case 1:h.trys.push([1,6,7,8]),d=c[Symbol.iterator](),h.label=2;case 2:return(u=(_=d.next()).done)?[3,5]:(g=_.value,[4,v(je)(e,g,_object_spread_props(_object_spread({},o),{consent:i}))]);case 3:if(p=h.sent(),r(p))return[2,p];h.label=4;case 4:return u=!0,[3,2];case 5:return[3,8];case 6:return y=h.sent(),l=!0,f=y,[3,8];case 7:try{u||null==d.return||d.return()}finally{if(l)throw f}return[7];case 8:return[2]}})}).apply(this,arguments)},h=function(e,n,r){return _async_to_generator(function(){var o,s,c,u,l,f,d,_,g,p,v;return _ts_generator(this,function(h){switch(h.label){case 0:return n.policy?[4,Promise.all(Object.entries(n.policy).map(function(t){var n=_sliced_to_array(t,2),o=n[0],a=n[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,b(e,a,{collector:r})];case 1:return t=n.sent(),e=i(e,o,t),[2]}})})()}))]:[3,2];case 1:h.sent(),h.label=2;case 2:return[4,y(e,n.mapping)];case 3:return s=h.sent(),c=s.eventMapping,u=s.mappingKey,(null==c?void 0:c.policy)?[4,Promise.all(Object.entries(c.policy).map(function(t){var n=_sliced_to_array(t,2),o=n[0],a=n[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,b(e,a,{collector:r})];case 1:return t=n.sent(),e=i(e,o,t),[2]}})})()}))]:[3,5];case 4:h.sent(),h.label=5;case 5:return(f=n.data)?[4,b(e,n.data,{collector:r})]:[3,7];case 6:f=h.sent(),h.label=7;case 7:return l=f,d=Boolean(null==c?void 0:c.skip),c?c.ignore?[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!0,skip:d}]:(c.name&&(e.name=c.name),c.data?(g=c.data)?[4,b(e,c.data,{collector:r})]:[3,9]:[3,10]):[3,10];case 8:g=h.sent(),h.label=9;case 9:_=g,l=a(l)&&a(_)?t(l,_):_,h.label=10;case 10:return(p=null!==(o=null==c?void 0:c.include)&&void 0!==o?o:n.include)&&p.length>0&&(v=function(e,t){var n={},r=t.includes("all")?Object.keys(be):t,o=!0,s=!1,i=void 0;try{for(var c,u=r[Symbol.iterator]();!(o=(c=u.next()).done);o=!0){var l=c.value,f=be[l];if(f){var d=f(e),_=!0,g=!1,p=void 0;if(a(d))try{for(var v,y=Object.entries(d)[Symbol.iterator]();!(_=(v=y.next()).done);_=!0){var b=_sliced_to_array(v.value,2),h=b[0],m=b[1];if(void 0!==m){var w="context"===l&&Array.isArray(m)?m[0]:m;n["".concat(l,"_").concat(h)]=w}}}catch(e){g=!0,p=e}finally{try{_||null==y.return||y.return()}finally{if(g)throw p}}}}}catch(e){s=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(s)throw i}}return n}(e,p),Object.keys(v).length>0&&(l=a(l)?t(v,l):null!=l?l:v)),[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!1,skip:d}]}})})()},m=function(e,t,n,r){return function(){for(var o=arguments.length,a=new Array(o),s=0;s<o;s++)a[s]=arguments[s];var i,c="pre"+t,u="post"+t,l=n[c],f=n[u],d=function(e,t){r?r.warn(e,{error:t}):console.warn(e,t)};if(l)try{i=l.apply(void 0,[{fn:e}].concat(_to_consumable_array(a)))}catch(t){d("Hook ".concat(String(c)," failed, falling back to original function"),t),i=e.apply(void 0,_to_consumable_array(a))}else i=e.apply(void 0,_to_consumable_array(a));if(f)try{i=f.apply(void 0,[{fn:e,result:i}].concat(_to_consumable_array(a)))}catch(e){d("Hook ".concat(String(u)," failed, keeping original result"),e)}return i}},w=function(e){return Array.isArray(e)&&e.length>0&&"object"==_type_of(e[0])&&null!==e[0]&&"match"in e[0]},j=function(e,t){var n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n},k=function(e){var t;return{full:null!==(t=e.full)&&void 0!==t&&t,storeId:e.store,rules:e.rules.map(function(e){return{match:ke(e.match),key:e.key,ttl:e.ttl,update:e.update}})}},O=function(e,t,n,r){var o=e.rules.find(function(e){return e.match(n)});if(!o)return null;var a=o.key.map(function(e){var t;return String(null!==(t=ye(n,e))&&void 0!==t?t:"")});if(a.every(function(e){return""===e}))return null;var s="".concat(r,":").concat(a.join(":")),i=t.get(s);return void 0!==i?{status:"HIT",key:s,value:i,rule:o}:{status:"MISS",key:s,rule:o}},S=function(e,t,n,r){e.set(t,n,1e3*r)},x=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,l,f,d,_,g;return _ts_generator(this,function(p){switch(p.label){case 0:if(!t)return[2,e];r=e,o=!0,a=!1,s=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),c=Object.entries(t)[Symbol.iterator](),p.label=2;case 2:return(o=(u=c.next()).done)?[3,5]:(l=_sliced_to_array(u.value,2),f=l[0],d=l[1],_=[r,f],[4,b(n,d)]);case 3:r=i.apply(void 0,_.concat([p.sent()])),p.label=4;case 4:return o=!0,[3,2];case 5:return[3,8];case 6:return g=p.sent(),a=!0,s=g,[3,8];case 7:try{o||null==c.return||c.return()}finally{if(a)throw s}return[7];case 8:return[2,r]}})})()},A=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:globalThis.window,o=t.settings,a=r[(null==o?void 0:o.name)||"dataLayer"];if(Array.isArray(a)&&!xe){xe=!0;try{for(var s=null!=n?n:a.length,i=0;i<s;i++)P(e,o,a[i])}finally{xe=!1}}},P=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;if(t.filter&&!0===p(function(){return t.filter(n)},function(){return!1})())return;var r=C(n);if(r){var o=t.prefix||"dataLayer",a="".concat(o," ").concat(r.name),s=(r.name,{name:a,data:_object_without_properties(r,["name"])});p(function(){return e(s)},function(){})()}},C=function(e){if(a(e)&&s(e.event))return _object_spread({name:e.event},_object_without_properties(e,["event"]));if(n(e)&&e.length>=2)return E(e);if(q(e)){var t=Array.from(e);return E(t)}return null},E=function(e){var t,n=_sliced_to_array(e,3),r=n[0],o=n[1],i=n[2];if(!s(r))return null;var c={};switch(r){case"consent":if(!s(o)||e.length<3)return null;if("default"!==o&&"update"!==o)return null;if(!a(i)||null===i)return null;t="".concat(r," ").concat(o),c=_object_spread({},i);break;case"event":if(!s(o))return null;t=o,a(i)&&(c=_object_spread({},i));break;case"config":if(!s(o))return null;t="".concat(r," ").concat(o),a(i)&&(c=_object_spread({},i));break;case"set":if(s(o))t="".concat(r," ").concat(o),a(i)&&(c=_object_spread({},i));else{if(!a(o))return null;t="".concat(r," custom"),c=_object_spread({},o)}break;default:return null}return _object_spread({name:t},c)},q=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length&&e.length>0},D=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},L=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,s=Object.entries(e)[Symbol.iterator]();!(n=(a=s.next()).done);n=!0){var i,c=_sliced_to_array(a.value,2),u=c[0],l=null===(i=c[1].config)||void 0===i?void 0:i.next;l&&!w(l)?t[u]={next:l}:t[u]={}}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}return t},I=function(e,t){var n=e.config||{},r=e[t];return void 0!==r?{config:_object_spread_props(_object_spread({},n),_define_property({},t,r)),chainValue:r}:{config:n,chainValue:void 0}},R=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return[];if(Array.isArray(e))return e;for(var n=[],r=new Set,o=e;o&&t[o]&&!r.has(o);){r.add(o),n.push(o);var a=t[o].next;if(Array.isArray(a)){var s;(s=n).push.apply(s,_to_consumable_array(a));break}o=a}return n},T=function(t,n,r){return _async_to_generator(function(){var o,a,s,i;return _ts_generator(this,function(c){switch(c.label){case 0:return!n.init||n.config.init?[3,2]:(o=n.type||"unknown",a=t.logger.scope("transformer:".concat(o)),s={collector:t,logger:a,id:r,ingest:e(r),config:n.config,env:U(n.config.env)},a.debug("init"),[4,m(n.init,"TransformerInit",t.hooks,t.logger)(s)]);case 1:if(!1===(i=c.sent()))return[2,!1];n.config=_object_spread_props(_object_spread({},i||n.config),{env:(null==i?void 0:i.env)||n.config.env,init:!0}),a.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},M=function(e,t,n,r,o,a){return _async_to_generator(function(){var s,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return s=t.type||"unknown",i=e.logger.scope("transformer:".concat(s)),c={collector:e,logger:i,id:n,ingest:o,config:t.config,env:_object_spread({},U(t.config.env),a?{respond:a}:{})},i.debug("push",{event:r.name}),[4,m(t.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(i.debug("push done"),u)]}})})()},U=function(e){return e&&a(e)?e:{}},K=function(t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,g,p,y,h,m,A,P,C,E,q,I,T,M;return _ts_generator(this,function(U){switch(U.label){case 0:return a=r.code,s=r.config,i=void 0===s?{}:s,c=r.env,u=void 0===c?{}:c,l=r.primary,f=r.next,d=r.before,_=r.cache,p=e(n),y=_?k(_object_spread_props(_object_spread({},_),{full:null===(o=_.full)||void 0===o||o})):void 0,h=Oe(f),m=Array.isArray(f)&&w(f)||!h?void 0:R(Se(h),L(t.transformers)),A=Oe(d),P=Array.isArray(d)&&w(d)||!A?void 0:R(Se(A),L(t.transformers)),C=t.logger.scope("source").scope(n),E=_object_spread({push:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){var o,a,s,c,u,l,f,d,_,v,b,w,k,C,E;return _ts_generator(this,function(q){switch(q.label){case 0:return a=e,(s=null!=P?P:A?R(Se(A,j(p)),L(t.transformers)):[]).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Ne(t,t.transformers,s,a,p,g,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(c=q.sent()).event)return[2,{ok:!0}];c.respond&&(g=c.respond),a=Array.isArray(c.event)?c.event[0]:c.event,q.label=2;case 2:return y&&(u=D(y,t))?(l=j(p),(f=O(y,u,l,"s:".concat(n)))?"HIT"===f.status&&void 0!==f.value&&y.full?(d=f.value,f.rule.update?[4,x(d,f.rule.update,_object_spread_props(_object_spread({},l),{cache:{status:"HIT"}}))]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=q.sent(),q.label=4;case 4:return[2,(null==g||g(d),{ok:!0})];case 5:"MISS"===f.status&&y.full&&g&&(_=g,v=f.rule.update,b=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),w=f.key,k=f.rule.ttl,g=function(e){S(u,w,e,k),v?o=_async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,x(e,v,b)];case 1:return t=n.sent(),_(t),[2]}})})():_(e)}),"MISS"!==f.status||y.full||S(u,f.key,!0,f.rule.ttl),q.label=6;case 6:return C=null!=m?m:h?R(Se(h,j(p)),L(t.transformers)):[],[4,t.push(a,_object_spread_props(_object_spread({},r),{id:n,ingest:p,respond:g,mapping:i,preChain:C}))];case 7:return E=q.sent(),o?[4,o]:[3,9];case 8:q.sent(),q.label=9;case 9:return[2,E]}})})()},command:t.command,sources:t.sources,elb:t.sources.elb.push,logger:C},u),q={collector:t,logger:C,id:n,config:i,env:E,setIngest:function(r){return _async_to_generator(function(){var o,a;return _ts_generator(this,function(s){switch(s.label){case 0:return i.ingest?[4,b(r,i.ingest,{collector:t})]:[2,void(p=e(n))];case 1:return o=s.sent(),a=e(n),p=_object_spread_props(_object_spread({},a,o),{_meta:a._meta}),[2]}})})()},setRespond:function(e){g=e}},[4,v(a)(q)];case 1:return(I=U.sent())?(T=I.type||"unknown",M=t.logger.scope(T).scope(n),[2,(E.logger=M,l&&(I.config=_object_spread_props(_object_spread({},I.config),{primary:l})),I)]):[2]}})})()},N=function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_,g,p=arguments;return _ts_generator(this,function(v){switch(v.label){case 0:t=p.length>1&&void 0!==p[1]?p[1]:{},n={},r=!0,o=!1,a=void 0,v.label=1;case 1:v.trys.push([1,6,7,8]),s=Object.entries(t)[Symbol.iterator](),v.label=2;case 2:return(r=(i=s.next()).done)?[3,5]:(c=_sliced_to_array(i.value,2),u=c[0],l=c[1],f=l.config,(d=void 0===f?{}:f).require&&d.require.length>0?(e.pending.sources[u]=l,[3,4]):[4,K(e,u,l)]);case 3:(_=v.sent())&&(n[u]=_),v.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return g=v.sent(),o=!0,a=g,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2,n]}})}).apply(this,arguments)},H=function(e,t,r){return _async_to_generator(function(){var o,a,s;return _ts_generator(this,function(i){return o=e.on,a=o[t]||[],(s=n(r)?r:[r]).forEach(function(e){a.push(e)}),o[t]=a,B(e,t,s),[2]})})()},G=function(e,t,n,r,o){if(t.on){var a=t.type||"unknown",s=e.logger.scope(a).scope("on").scope(r),i={collector:e,logger:s,id:n,config:t.config,data:o,env:Z(t.env,t.config.env)};p(t.on)(r,i)}},B=function(e,t,n,r){var o,a,s,i;switch(t){case Ke.Commands.Consent:o=r||e.consent;break;case Ke.Commands.Session:o=e.session;break;case Ke.Commands.User:o=r||e.user;break;case Ke.Commands.Custom:o=r||e.custom;break;case Ke.Commands.Globals:o=r||e.globals;break;case Ke.Commands.Config:o=r||e.config;break;case Ke.Commands.Ready:case Ke.Commands.Run:default:o=void 0}if(n.length)switch(t){case Ke.Commands.Consent:a=e,s=n,i=r||a.consent,s.forEach(function(e){Object.keys(i).filter(function(t){return t in e}).forEach(function(t){p(e[t])(a,i)})});break;case Ke.Commands.Ready:case Ke.Commands.Run:!function(e,t){e.allowed&&t.forEach(function(t){p(t)(e)})}(e,n);break;case Ke.Commands.Session:!function(e,t){e.session&&t.forEach(function(t){p(t)(e,e.session)})}(e,n);break;default:n.forEach(function(t){"function"==typeof t&&p(t)(e,o)})}},W=function(e,t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,g;return _ts_generator(this,function(p){switch(p.label){case 0:switch(a=n||[],n||(a=e.on[t]||[]),t){case Ke.Commands.Consent:o=r||e.consent;break;case Ke.Commands.Session:o=e.session;break;case Ke.Commands.User:o=r||e.user;break;case Ke.Commands.Custom:o=r||e.custom;break;case Ke.Commands.Globals:o=r||e.globals;break;case Ke.Commands.Config:o=r||e.config;break;case Ke.Commands.Ready:case Ke.Commands.Run:default:o=void 0}s=!1,i=!0,c=!1,u=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),l=Object.values(e.sources)[Symbol.iterator](),p.label=2;case 2:return(i=(f=l.next()).done)?[3,5]:(d=f.value).on?(_=!1,[4,v(d.on)(t,o)]):[3,4];case 3:_===p.sent()&&(s=!0),p.label=4;case 4:return i=!0,[3,2];case 5:return[3,8];case 6:return g=p.sent(),c=!0,u=g,[3,8];case 7:try{i||null==l.return||l.return()}finally{if(c)throw u}return[7];case 8:return Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),a=r[0],s=r[1];if(s.on){if(!s.config.init)return s.queueOn=s.queueOn||[],void s.queueOn.push({type:t,data:o});G(e,s,a,t,o)}}),Object.keys(e.pending.sources).length>0||Object.keys(e.pending.destinations).length>0?[4,(y=e,b=t,_async_to_generator(function(){var e,t,n,r,o,a,s,i,c,u,l,f,d,_,g,p,v,h,m,w,j,k,O,S,x;return _ts_generator(this,function(A){switch(A.label){case 0:e=!0,t=!1,n=void 0,A.label=1;case 1:A.trys.push([1,6,7,8]),r=Object.entries(y.pending.sources)[Symbol.iterator](),A.label=2;case 2:return(e=(o=r.next()).done)?[3,5]:(a=_sliced_to_array(o.value,2),s=a[0],i=a[1],!y.pending.sources[s]||y.sources[s]?[3,4]:(u=null===(c=i.config)||void 0===c?void 0:c.require)?-1===(l=u.indexOf(b))?[3,4]:(u.splice(l,1),u.length>0?[3,4]:(delete y.pending.sources[s],[4,K(y,s,i)])):[3,4]);case 3:(f=A.sent())&&(y.sources[s]=f),A.label=4;case 4:return e=!0,[3,2];case 5:return[3,8];case 6:return d=A.sent(),t=!0,n=d,[3,8];case 7:try{e||null==r.return||r.return()}finally{if(t)throw n}return[7];case 8:_=!0,g=!1,p=void 0;try{for(v=Object.entries(y.pending.destinations)[Symbol.iterator]();!(_=(h=v.next()).done);_=!0)m=_sliced_to_array(h.value,2),w=m[0],j=m[1],y.pending.destinations[w]&&!y.destinations[w]&&(O=null===(k=j.config)||void 0===k?void 0:k.require)&&-1!==(S=O.indexOf(b))&&(O.splice(S,1),O.length>0||(delete y.pending.destinations[w],!1!==(x=X(j)).config.queue&&(x.queuePush=_to_consumable_array(y.queue)),y.destinations[w]=x))}catch(e){g=!0,p=e}finally{try{_||null==v.return||v.return()}finally{if(g)throw p}}return[2]}})})())]:[3,10];case 9:p.sent(),p.label=10;case 10:return[2,(B(e,t,a,r),!s)]}var y,b})})()},F=function(e,t,n,r){if(!e)return[];if(t){var o=Se(t,j(r));return o?R(o,L(n)):[]}return R(e,L(n))},V=function(e,t,n){return _async_to_generator(function(){var r,a,s,i,c,l,f,d,_,g,p,v;return _ts_generator(this,function(y){if(r=t.code,a=t.config,s=void 0===a?{}:a,i=t.env,c=void 0===i?{}:i,l=t.before,f=t.next,d=t.cache,!o(r.push))return[2,Q({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(_=n||s||{init:!1},g=l?_object_spread_props(_object_spread({},_),{before:l}):_object_spread({},_),f&&(g=_object_spread_props(_object_spread({},g),{next:f})),d&&(g=_object_spread_props(_object_spread({},g),{cache:d})),p=_object_spread_props(_object_spread({},r),{config:g,env:Z(r.env,c)}),!(v=p.config.id))do{v=u(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[v]);return[2,(e.destinations[v]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),z(e,void 0,{},_define_property({},v,p)))]})})()},z=function(n,r,o){return _async_to_generator(function(n,r){var o,a,s,i,u,l,f,d,_,g,p,y,b,h,m,x,A,P,C,E=arguments;return _ts_generator(this,function(q){switch(q.label){case 0:return o=E.length>2&&void 0!==E[2]?E[2]:{},a=E.length>3?E[3]:void 0,s=n.allowed,i=n.consent,u=n.globals,l=n.user,s?(r&&(n.queue.push(r),n.status.in++),a||(a=n.destinations),[4,Promise.all(Object.entries(a||{}).map(function(a){var s=_sliced_to_array(a,2),f=s[0],d=s[1];return _async_to_generator(function(){var a,s,_,g,p,y,b,h,m,x,A,P,C,E,q,L,I,R,T;return _ts_generator(this,function(M){switch(M.label){case 0:return d.config.disabled?[2,{id:f,destination:d,skipped:!0}]:(p=(d.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:i})}),d.queuePush=[],r&&p.push(ve(r)),y=o.ingest?_object_spread_props(_object_spread({},o.ingest),{_meta:_object_spread_props(_object_spread({},o.ingest._meta),{path:_to_consumable_array(o.ingest._meta.path)})}):e("unknown"),p.length||(null===(s=d.queueOn)||void 0===s?void 0:s.length)?p.length||!(null===(_=d.queueOn)||void 0===_?void 0:_.length)?[3,2]:[4,v(J)(n,d,f)]:[2,{id:f,destination:d,skipped:!0}]);case 1:return b=M.sent(),[2,{id:f,destination:d,skipped:!b}];case 2:return h=[],m=p.filter(function(e){var t=c(d.config.consent,i,e.consent);return!t||(e.consent=t,h.push(e),!1)}),(a=d.queuePush).push.apply(a,_to_consumable_array(m)),h.length?[4,v(J)(n,d,f)]:[2,{id:f,destination:d,queue:p}];case 3:return M.sent()?(d.dlq||(d.dlq=[]),P=d.config.before,C=F(P,P&&w(P)?Oe(P):void 0,n.transformers,y),E=d.config.next,q=E&&w(E)?Oe(E):void 0,L=null===(g=d.config)||void 0===g?void 0:g.cache,I=L?k(L):void 0,R=I?D(I,n):void 0,T=0,[4,Promise.all(h.map(function(e){return _async_to_generator(function(){var r,a,s,i,c,_,g,p,b,h,m,w,k;return _ts_generator(this,function(P){switch(P.label){case 0:if(e.globals=t(u,e.globals),e.user=t(l,e.user),(null==I?void 0:I.full)&&R){if(a=j(y,e),"HIT"===(null==(s=O(I,R,a,"d:".concat(f)))?void 0:s.status))return[2,e];"MISS"===(null==s?void 0:s.status)&&(r={key:s.key,ttl:s.rule.ttl})}return i=e,c=o.respond,C.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Ne(n,n.transformers,C,e,y,o.respond,"destination.".concat(f,".before"))]:[3,2];case 1:if(null===(_=P.sent()).event)return[2,e];_.respond&&(c=_.respond),i=Array.isArray(_.event)?_.event[0]:_.event,P.label=2;case 2:if(I&&!I.full&&R){if(g=j(y,i),"HIT"===(null==(p=O(I,R,g,"d:".concat(f)))?void 0:p.status))return[2,e];"MISS"===(null==p?void 0:p.status)&&(r={key:p.key,ttl:p.rule.ttl})}return b=Date.now(),h=!1,[4,v($,function(e){var t=d.type||"unknown";n.logger.scope(t).error("Push failed",{error:e,event:i.name}),x=e,h=!0,d.dlq.push([i,e])})(n,d,f,i,y,c)];case 3:return m=P.sent(),T+=Date.now()-b,r&&R&&void 0===d.config.mock&&S(R,r.key,null==m||m,r.ttl),void 0!==m&&(A=m),h||!E?[3,5]:(void 0!==m&&(y._response=m),(w=F(E,q,n.transformers,y)).length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Ne(n,n.transformers,w,i,y,c,"destination.".concat(f,".next"))]:[3,5]);case 4:(k=P.sent()).respond&&(c=k.respond),P.label=5;case 5:return[2,e]}})})()}))]):[2,{id:f,destination:d,queue:p}];case 4:return[2,(M.sent(),{id:f,destination:d,error:x,response:A,totalDuration:T})]}})})()}))]):[2,Q({ok:!1})];case 1:f=q.sent(),d={},_={},g={},p=!0,y=!1,b=void 0;try{for(h=f[Symbol.iterator]();!(p=(m=h.next()).done);p=!0)(x=m.value).skipped||(A={type:x.destination.type||"unknown",data:x.response},n.status.destinations[x.id]||(n.status.destinations[x.id]={count:0,failed:0,duration:0}),P=n.status.destinations[x.id],C=Date.now(),x.error?(A.error=x.error,g[x.id]=A,P.failed++,P.lastAt=C,P.duration+=x.totalDuration||0,n.status.failed++):x.queue&&x.queue.length?_[x.id]=A:(d[x.id]=A,P.count++,P.lastAt=C,P.duration+=x.totalDuration||0,n.status.out++))}catch(e){y=!0,b=e}finally{try{p||null==h.return||h.return()}finally{if(y)throw b}}return[2,Q(_object_spread({event:r},Object.keys(d).length&&{done:d},Object.keys(_).length&&{queued:_},Object.keys(g).length&&{failed:g}))]}})}).apply(this,arguments)},J=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d,_,g,p,v;return _ts_generator(this,function(y){switch(y.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=e.logger.scope(o),s={collector:e,logger:a,id:n,config:t.config,env:Z(t.env,t.config.env)},a.debug("init"),[4,m(t.init,"DestinationInit",e.hooks,e.logger)(s)]);case 1:if(!1===(i=y.sent()))return[2,i];if(t.config=_object_spread_props(_object_spread({},i||t.config),{init:!0}),null===(r=t.queueOn)||void 0===r?void 0:r.length){c=t.queueOn,t.queueOn=[],u=!0,l=!1,f=void 0;try{for(d=c[Symbol.iterator]();!(u=(_=d.next()).done);u=!0)g=_.value,p=g.type,v=g.data,G(e,t,n,p,v)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),y.label=2;case 2:return[2,!0]}})})()},$=function(e,t,n,o,a,s){return _async_to_generator(function(){var i,c,u,f,d,_,g,p,v,y;return _ts_generator(this,function(b){switch(b.label){case 0:return i=t.config,[4,h(o,i,e)];case 1:return(c=b.sent()).ignore?[2,!1]:(u=t.type||"unknown",f=e.logger.scope(u),d={collector:e,logger:f,id:n,config:i,data:c.data,rule:c.mapping,ingest:a,env:_object_spread({},Z(t.env,i.env),s?{respond:s}:{})},void 0!==i.mock?[2,(f.debug("mock",{event:c.event.name}),i.mock)]:(_=c.mapping,g=c.mappingKey||"* *",(null==_?void 0:_.batch)&&t.pushBatch&&void 0===i.mock?[3,3]:(f.debug("push",{event:c.event.name}),[4,m(t.push,"DestinationPush",e.hooks,e.logger)(c.event,d)])));case 2:return p=b.sent(),[2,(f.debug("push done"),p)];case 3:return t.batches=t.batches||{},t.batches[g]||(v={key:g,events:[],data:[]},t.batches[g]={batched:v,batchFn:l(function(){var r=t.batches[g].batched,o={collector:e,logger:f,id:n,config:i,data:void 0,rule:_,ingest:a,env:_object_spread({},Z(t.env,i.env),s?{respond:s}:{})};f.debug("push batch",{events:r.events.length}),m(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(r,o),f.debug("push batch done"),r.events=[],r.data=[]},_.batch)}),(y=t.batches[g]).batched.events.push(c.event),r(c.data)&&y.batched.data.push(c.data),y.batchFn(),[2,!0]}})})()},Q=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},X=function(e){var t=e.code,n=e.config,r=void 0===n?{}:n,o=e.env,a=void 0===o?{}:o,s=e.cache,i=I(e,"before").config,c=I(_object_spread_props(_object_spread({},e),{config:i}),"next").config,u=_object_spread({},t.config,r,c);s&&(u.cache=s);var l=Z(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},Y=function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_=arguments;return _ts_generator(this,function(g){t=_.length>1&&void 0!==_[1]?_[1]:{},o={},a=!0,s=!1,i=void 0;try{for(c=Object.entries(t)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(r=d.config)||void 0===r||null===(n=r.require)||void 0===n?void 0:n.length)?e.pending.destinations[f]=d:o[f]=X(d)}catch(e){s=!0,i=e}finally{try{a||null==c.return||c.return()}finally{if(s)throw i}}return[2,o]})}).apply(this,arguments)},Z=function(e,t){return e||t?t?e&&a(e)&&a(t)?_object_spread({},e,t):t:e:{}},ee=function(e,t,n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return r=Object.entries(e).map(function(e){var r=_sliced_to_array(e,2),o=r[0],a=r[1];return _async_to_generator(function(){var e,r,s,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:if(!(r=a.destroy))return[2];s=a.type||"unknown",i=n.scope(s),c={id:o,config:a.config,env:null!==(e=a.env)&&void 0!==e?e:{},logger:i},l.label=1;case 1:return l.trys.push([1,3,,4]),[4,Promise.race([r(c),new Promise(function(e,n){return setTimeout(function(){return n(new Error("".concat(t," '").concat(o,"' destroy timed out")))},5e3)})])];case 2:return l.sent(),[3,4];case 3:return u=l.sent(),i.error("".concat(t," '").concat(o,"' destroy failed: ").concat(u)),[3,4];case 4:return[2]}})})()}),[4,Promise.allSettled(r)];case 1:return o.sent(),[2]}})})()},te=function(e,n,r,i){return _async_to_generator(function(){var c,u,l,f,d,_,g;return _ts_generator(this,function(p){switch(p.label){case 0:switch(l=!1,n){case Ke.Commands.Config:return[3,1];case Ke.Commands.Consent:return[3,2];case Ke.Commands.Custom:return[3,3];case Ke.Commands.Destination:return[3,4];case Ke.Commands.Globals:return[3,11];case Ke.Commands.On:return[3,12];case Ke.Commands.Ready:return[3,15];case Ke.Commands.Run:return[3,16];case Ke.Commands.Session:return[3,18];case Ke.Commands.Shutdown:return[3,19];case Ke.Commands.User:return[3,21]}return[3,22];case 1:return a(r)&&(t(e.config,r,{shallow:!1}),u=r,l=!0),[3,22];case 2:return a(r)&&(f=function(e,n){var r={};return Object.entries(n).forEach(function(e){var t=_sliced_to_array(e,2),n=t[0],o=t[1];r[n]=!!o}),e.consent=t(e.consent,r),{update:r}}(e,r),d=f.update,u=d,l=!0),[3,22];case 3:return a(r)&&(e.custom=t(e.custom,r),u=r,l=!0),[3,22];case 4:return a(r)?"code"in r&&a(r.code)?[4,V(e,r,i)]:[3,6]:[3,10];case 5:return _=c=p.sent(),[3,9];case 6:return(g=o(r.push))?[4,V(e,{code:r},i)]:[3,8];case 7:g=c=p.sent(),p.label=8;case 8:_=g,p.label=9;case 9:p.label=10;case 10:return[3,22];case 11:return a(r)&&(e.globals=t(e.globals,r),u=r,l=!0),[3,22];case 12:return s(r)?[4,H(e,r,i)]:[3,14];case 13:p.sent(),p.label=14;case 14:return[3,22];case 15:return l=!0,[3,22];case 16:return[4,re(e,r)];case 17:return c=p.sent(),l=!0,[3,22];case 18:return l=!0,[3,22];case 19:return[4,(v=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=v.logger,[4,ee(v.sources,"source",e)];case 1:return t.sent(),[4,ee(v.destinations,"destination",e)];case 2:return t.sent(),[4,ee(v.transformers,"transformer",e)];case 3:return t.sent(),[4,ee(v.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 20:return p.sent(),[3,22];case 21:a(r)&&(t(e.user,r,{shallow:!1}),u=r,l=!0),p.label=22;case 22:return l?[4,W(e,n,void 0,u)]:[3,25];case 23:return p.sent(),[4,z(e)];case 24:c=p.sent(),p.label=25;case 25:return[2,c||Q({ok:!0})]}var v})})()},ne=function(e,t){if(!t.name)throw new Error("Event name is required");var n=_sliced_to_array(t.name.split(" "),2),r=n[0],o=n[1];if(!r||!o)throw new Error("Event name is invalid");++e.count;var a=t.timestamp,s=void 0===a?Date.now():a,i=t.group,c=void 0===i?e.group:i,u=t.count,l=void 0===u?e.count:u,f=t.name,d=void 0===f?"".concat(r," ").concat(o):f,_=t.data,g=void 0===_?{}:_,p=t.context,v=void 0===p?{}:p,y=t.globals,b=void 0===y?e.globals:y,h=t.custom,m=void 0===h?{}:h,w=t.user,j=void 0===w?e.user:w,k=t.nested,O=void 0===k?[]:k,S=t.consent,x=void 0===S?e.consent:S,A=t.id,P=void 0===A?"".concat(s,"-").concat(c,"-").concat(l):A,C=t.trigger,E=void 0===C?"":C,q=t.entity,D=void 0===q?r:q,L=t.action,I=void 0===L?o:L,R=t.timing,T=void 0===R?0:R,M=t.version,U=void 0===M?{source:e.version,tagging:e.config.tagging||0}:M,K=t.source;return{name:d,data:g,context:v,globals:b,custom:m,user:j,nested:O,consent:x,id:P,trigger:E,entity:D,action:I,timestamp:s,timing:T,group:c,count:l,version:U,source:void 0===K?{type:"collector",id:"",previous_id:""}:K}},re=function(e,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return e.allowed=!0,e.count=0,e.group=u(),e.timing=Date.now(),n&&(n.consent&&(e.consent=t(e.consent,n.consent)),n.user&&(e.user=t(e.user,n.user)),n.globals&&(e.globals=t(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=t(e.custom,n.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,z(e)];case 1:return[2,r.sent()]}})})()},oe=function(n){return _async_to_generator(function(){var r,o,a,s,i,u,l,f,d;return _ts_generator(this,function(g){switch(g.label){case 0:return a=t({globalsStatic:{},sessionStatic:{},tagging:0,run:!0},n,{merge:!1,extend:!1}),s={level:null===(r=n.logger)||void 0===r?void 0:r.level,handler:null===(o=n.logger)||void 0===o?void 0:o.handler},i=_(s),u=_object_spread({},a.globalsStatic,n.globals),(l={allowed:!1,config:a,consent:n.consent||{},count:0,custom:n.custom||{},destinations:{},transformers:{},stores:{},globals:u,group:"",hooks:n.hooks||{},logger:i,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:n.user||{},version:"3.4.2",sources:{},pending:{sources:{},destinations:{}},push:void 0,command:void 0}).push=function(t,n){return m(function(r){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,v(function(){return _async_to_generator(function(){var a,s,i,u,l,f,d,_,g,p,v,y,b,m,w,j,k,O,S,x,A;return _ts_generator(this,function(P){switch(P.label){case 0:return a=Date.now(),s=o.id,i=o.ingest,u=o.respond,l=o.mapping,f=o.preChain,d=o.include,_=o.exclude,g=u,p=r,v=d||_?function(e,t,n){var r=e;return t&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var n=_sliced_to_array(e,1)[0];return t.includes(n)}))),n&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var t=_sliced_to_array(e,1)[0];return!n.includes(t)}))),r}(t.destinations,d,_):void 0,y=null!=i?i:e(s||"unknown"),l?[4,h(p,l,t)]:[3,2];case 1:if((b=P.sent()).ignore)return[2,Q({ok:!0})];if(l.consent&&!c(l.consent,t.consent,b.event.consent))return[2,Q({ok:!0})];p=b.event,P.label=2;case 2:return(null==f?void 0:f.length)&&t.transformers&&Object.keys(t.transformers).length>0?[4,Ne(t,t.transformers,f,p,y,g,s?"source.".concat(s,".next"):void 0)]:[3,6];case 3:return null===(m=P.sent()).event?[2,Q({ok:!0})]:(m.respond&&(g=m.respond),Array.isArray(m.event)?[4,Promise.all(m.event.map(function(e){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=n(e),o=ne(t,r),[2,z(t,o,{id:s,ingest:y,respond:g},v)]})})()}))]:[3,5]);case 4:return j=P.sent(),s&&(t.status.sources[s]||(t.status.sources[s]={count:0,duration:0}),(k=t.status.sources[s]).count+=m.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-a),[2,null!==(w=j[0])&&void 0!==w?w:Q({ok:!0})];case 5:p=m.event,P.label=6;case 6:return O=n(p),S=ne(t,O),[4,z(t,S,{id:s,ingest:y,respond:g},v)];case 7:return x=P.sent(),s&&(t.status.sources[s]||(t.status.sources[s]={count:0,duration:0}),(A=t.status.sources[s]).count++,A.lastAt=Date.now(),A.duration+=Date.now()-a),[2,x]}})})()},function(){return Q({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Push",t.hooks,t.logger)}(l,function(e){return _object_spread({timing:Math.round((Date.now()-l.timing)/10)/100,source:{type:"collector",id:"",previous_id:""}},e)}),l.command=function(e,t){return m(function(n,r,o){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,v(function(){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,t(e,n,r,o)];case 1:return[2,a.sent()]}})})()},function(){return Q({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(l,te),f=n.stores||{},[4,function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_,g,p,v,y,b,h,w,j,k=arguments;return _ts_generator(this,function(O){switch(O.label){case 0:t=k.length>1&&void 0!==k[1]?k[1]:{},n={},r=!0,o=!1,a=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),s=Object.entries(t)[Symbol.iterator](),O.label=2;case 2:return(r=(i=s.next()).done)?[3,5]:(c=_sliced_to_array(i.value,2),u=c[0],l=c[1],f=l.code,d=l.config,_=void 0===d?{}:d,g=l.env,p=void 0===g?{}:g,v=e.logger.scope("store").scope(u),[4,f({collector:e,logger:v,id:u,config:_,env:p})]);case 3:y=O.sent(),b=y.get,h=y.set,w=y.delete,y.get=m(b,"StoreGet",e.hooks,e.logger),y.set=m(h,"StoreSet",e.hooks,e.logger),y.delete=m(w,"StoreDelete",e.hooks,e.logger),n[u]=y,O.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return j=O.sent(),o=!0,a=j,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2,n]}})}).apply(this,arguments)}(l,f)];case 1:return l.stores=g.sent(),function(e,t,n){var r=new Map,o=!0,a=!1,s=void 0;try{for(var i,c=Object.entries(e)[Symbol.iterator]();!(o=(i=c.next()).done);o=!0){var u=_sliced_to_array(i.value,2),l=u[0],f=u[1];t[l]&&r.set(f,t[l])}}catch(e){a=!0,s=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw s}}if(0!==r.size)for(var d=!0,_=!1,g=void 0,p=0,v=[n.transformers,n.destinations,n.sources];p<v.length;p++){var y=v[p];if(y)try{for(var b,h=Object.values(y)[Symbol.iterator]();!(d=(b=h.next()).done);d=!0){m(b.value.env)}}catch(e){_=!0,g=e}finally{try{d||null==h.return||h.return()}finally{if(_)throw g}}}function m(e){if(e){var t=!0,n=!1,o=void 0;try{for(var a,s=Object.entries(e)[Symbol.iterator]();!(t=(a=s.next()).done);t=!0){var i=_sliced_to_array(a.value,2),c=i[0],u=i[1];if("object"==(void 0===u?"undefined":_type_of(u))&&null!==u){var l=r.get(u);l&&(e[c]=l)}}}catch(e){n=!0,o=e}finally{try{t||null==s.return||s.return()}finally{if(n)throw o}}}}}(f,l.stores,n),l.stores.__cache||(d=new Map,l.stores.__cache={type:"memory",config:{},get:function(e){var t=d.get(e);if(t){if(!(t.expires&&Date.now()>t.expires))return t.value;d.delete(e)}},set:function(e,t,n){d.set(e,{value:t,expires:n?Date.now()+n:void 0})},delete:function(e){d.delete(e)}}),[4,Y(l,n.destinations||{})];case 2:return l.destinations=g.sent(),[4,function(t){return _async_to_generator(function(t){var n,r,o,a,s,i,c,u,l,f,d,_,g,p,v,y,b,h,m,w,j,k,O,S,x=arguments;return _ts_generator(this,function(A){switch(A.label){case 0:n=x.length>1&&void 0!==x[1]?x[1]:{},r={},o=!0,a=!1,s=void 0,A.label=1;case 1:A.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),A.label=2;case 2:return(o=(c=i.next()).done)?[3,5]:(u=_sliced_to_array(c.value,2),l=u[0],f=u[1],d=f.code,_=f.env,g=void 0===_?{}:_,p=I(f,"before"),v=p.config,y=I(_object_spread_props(_object_spread({},f),{config:v}),"next"),b=y.config,h=Object.keys(g).length>0?_object_spread_props(_object_spread({},b),{env:g}):b,m=f.cache,w=m?_object_spread_props(_object_spread({},h),{cache:m}):h,j=t.logger.scope("transformer").scope(l),k={collector:t,logger:j,id:l,ingest:e(l),config:w,env:g},[4,d(k)]);case 3:O=A.sent(),r[l]=O,A.label=4;case 4:return o=!0,[3,2];case 5:return[3,8];case 6:return S=A.sent(),a=!0,s=S,[3,8];case 7:try{o||null==i.return||i.return()}finally{if(a)throw s}return[7];case 8:return[2,r]}})}).apply(this,arguments)}(l,n.transformers||{})];case 3:return[2,(l.transformers=g.sent(),l)]}})})()},ae=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:return[4,oe(e=e||{})];case 1:return t=d.sent(),r=t,n={type:"elb",config:{},push:function(e,t,n,o,a,s){return _async_to_generator(function(){var i,c;return _ts_generator(this,function(u){if("string"==typeof e&&e.startsWith("walker "))return i=e.replace("walker ",""),[2,r.command(i,t,n)];if("string"==typeof e)c={name:e},t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(c.data=t);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,Q({ok:!1})];c=e,t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(c.data=_object_spread({},c.data||{},t))}return[2,(o&&"object"==(void 0===o?"undefined":_type_of(o))&&(c.context=o),a&&Array.isArray(a)&&(c.nested=a),s&&"object"==(void 0===s?"undefined":_type_of(s))&&(c.custom=s),r.push(c))]})})()}},t.sources.elb=n,[4,N(t,e.sources||{})];case 2:return o=d.sent(),Object.assign(t.sources,o),a=e.consent,s=e.user,i=e.globals,c=e.custom,a?[4,t.command("consent",a)]:[3,4];case 3:d.sent(),d.label=4;case 4:return s?[4,t.command("user",s)]:[3,6];case 5:d.sent(),d.label=6;case 6:return i&&Object.assign(t.globals,i),c&&Object.assign(t.custom,c),t.config.run?[4,t.command("run")]:[3,8];case 7:d.sent(),d.label=8;case 8:return u=n.push,l=Object.values(t.sources).filter(function(e){return"elb"!==e.type}),[2,((f=l.find(function(e){return e.config.primary}))?u=f.push:l.length>0&&(u=l[0].push),{collector:t,elb:u})]}})})()},se=Object.defineProperty,ie=Object.getOwnPropertyDescriptor,ce=Object.getOwnPropertyNames,ue=Object.prototype.hasOwnProperty,le=function(e,t){for(var n in t)se(e,n,{get:t[n],enumerable:!0})},fe={};le(fe,{SourceDataLayer:function(){return Ae},createTrigger:function(){return Ge},default:function(){return Fe},env:function(){return Pe},sourceDataLayer:function(){return We},step:function(){return Le},trigger:function(){return Be}});var de=Object.defineProperty;!function(e,t){for(var n in t)de(e,n,{get:t[n],enumerable:!0})}({},{Level:function(){return ge}});var _e,ge=((_e=ge||{})[_e.ERROR=0]="ERROR",_e[_e.WARN=1]="WARN",_e[_e.INFO=2]="INFO",_e[_e.DEBUG=3]="DEBUG",_e),pe={merge:!0,shallow:!0,extend:!0};function ve(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if("object"!=(void 0===e?"undefined":_type_of(e))||null===e)return e;if(t.has(e))return t.get(e);var n=Object.prototype.toString.call(e);if("[object Object]"===n){var r={};for(var o in t.set(e,r),e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=ve(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(ve(e,t))}),a}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){var s=e;return new RegExp(s.source,s.flags)}return e}function ye(e){for(var t=arguments.length>2?arguments[2]:void 0,o=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),a=e,s=0;s<o.length;s++){var i=o[s];if("*"===i&&n(a)){var c=o.slice(s+1).join("."),u=[],l=!0,f=!1,d=void 0;try{for(var _,g=a[Symbol.iterator]();!(l=(_=g.next()).done);l=!0){var p=ye(_.value,c,t);u.push(p)}}catch(e){f=!0,d=e}finally{try{l||null==g.return||g.return()}finally{if(f)throw d}}return u}if(void 0===(a=_instanceof(a,Object)?a[i]:void 0))break}return r(a)?a:t}var be={data:function(e){return e.data},globals:function(e){return e.globals},context:function(e){return e.context},user:function(e){return e.user},source:function(e){return e.source},version:function(e){return e.version},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,group:e.group,count:e.count,timing:e.timing}}},he=function(e,t,n,r){var o="".concat(ge[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(n).length>0,s=0===e?console.error:1===e?console.warn:console.log;a?s(o,t,n):s(o,t)};function me(e){var t=e.level,n=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=t){var s=d(r,a);n?n(e,s.message,s.context,o,he):he(e,s.message,s.context,o)}};return{error:function(e,t){return a(0,e,t)},warn:function(e,t){return a(1,e,t)},info:function(e,t){return a(2,e,t)},debug:function(e,t){return a(3,e,t)},throw:function(e,t){var r=d(e,t);throw n?n(0,r.message,r.context,o,he):he(0,r.message,r.context,o),new Error(r.message)},json:function(e){r?r(e):console.log(JSON.stringify(e,null,2))},scope:function(e){return me({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function we(e){return function(e){return"boolean"==typeof e}(e)||s(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!r(e)||n(e)&&e.every(we)||a(e)&&Object.values(e).every(we)}function je(e,t){return _async_to_generator(function(e,t){var o,a,i,u=arguments;return _ts_generator(this,function(l){return a=(o=u.length>2&&void 0!==u[2]?u[2]:{}).collector,i=o.consent,[2,(n(t)?t:[t]).reduce(function(t,u){return _async_to_generator(function(){var l,f,d,_,p,y,h,m,w,j,k,O,S,x,A,P,C,E,q,D,L;return _ts_generator(this,function(I){switch(I.label){case 0:return[4,t];case 1:return(l=I.sent())?[2,l]:(f=s(u)?{key:u}:u,Object.keys(f).length?(d=f.condition,_=f.consent,p=f.fn,y=f.key,h=f.loop,m=f.map,w=f.set,j=f.validate,k=f.value,(O=d)?[4,v(d)(e,u,a)]:[3,3]):[2]);case 2:O=!I.sent(),I.label=3;case 3:return O?[2]:_&&!c(_,i)?[2,k]:(S=r(k)?k:e,p?[4,v(p)(e,u,o)]:[3,5]);case 4:S=I.sent(),I.label=5;case 5:return y&&(S=ye(e,y,k)),h?(x=_sliced_to_array(h,2),A=x[0],P=x[1],"this"!==A?[3,6]:(E=[e],[3,8])):[3,11];case 6:return[4,b(e,A,o)];case 7:E=I.sent(),I.label=8;case 8:return n(C=E)?[4,Promise.all(C.map(function(e){return b(e,P,o)}))]:[3,10];case 9:S=I.sent().filter(r),I.label=10;case 10:return[3,17];case 11:return m?[4,Object.entries(m).reduce(function(t,n){var a=_sliced_to_array(n,2),s=a[0],i=a[1];return _async_to_generator(function(){var n,a;return _ts_generator(this,function(c){switch(c.label){case 0:return[4,t];case 1:return n=c.sent(),[4,b(e,i,o)];case 2:return a=c.sent(),[2,(r(a)&&(n[s]=a),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return S=I.sent(),[3,16];case 13:return(q=w)?[4,Promise.all(w.map(function(t){return je(e,t,o)}))]:[3,15];case 14:q=S=I.sent(),I.label=15;case 15:I.label=16;case 16:I.label=17;case 17:return(D=j)?[4,v(j)(S)]:[3,19];case 18:D=!I.sent(),I.label=19;case 19:return D&&(S=void 0),L=g(S),[2,r(L)?L:g(k)]}})})()},Promise.resolve(void 0))]})}).apply(this,arguments)}function ke(e){if("*"===e)return function(){return!0};if("and"in e){var t=e.and.map(ke);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(ke);return function(e){return n.some(function(t){return t(e)})}}return function(e){var t=e.key,n=e.operator,r=e.value,o=e.not,a=function(e,t){switch(e){case"eq":return function(e){return String(null!=e?e:"")===t};case"contains":return function(e){return String(null!=e?e:"").includes(t)};case"prefix":return function(e){return String(null!=e?e:"").startsWith(t)};case"suffix":return function(e){return String(null!=e?e:"").endsWith(t)};case"regex":var n=new RegExp(t);return function(e){return n.test(String(null!=e?e:""))};case"gt":var r=Number(t);return function(e){return Number(e)>r};case"lt":var o=Number(t);return function(e){return Number(e)<o};case"exists":return function(e){return null!=e}}}(n,r);return function(e){var n=ye(e,t),r=a(n);return o?!r:r}}(e)}function Oe(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;return w(e)?{type:"routes",routes:e.map(function(e){return{match:ke(e.match),next:Oe(e.next)}})}:{type:"chain",value:e}}}}function Se(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;var n=!0,r=!1,o=void 0;try{for(var a,s=e.routes[Symbol.iterator]();!(n=(a=s.next()).done);n=!0){var i=a.value;if(i.match(t))return Se(i.next,t)}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}}}var xe=!1,Ae={},Pe={};le(Pe,{push:function(){return De}});var Ce=function(){},Ee=function(){return function(){return Promise.resolve({ok:!0})}},qe={error:Ce,warn:Ce,info:Ce,debug:Ce,throw:function(e){throw"string"==typeof e?new Error(e):e},json:Ce,scope:function(){return qe}},De={get push(){return Ee()},get command(){return Ee()},get elb(){return Ee()},get window(){return{dataLayer:[],addEventListener:Ce,removeEventListener:Ce}},logger:qe},Le={};le(Le,{consentUpdate:function(){return Re},directEvent:function(){return Ue},gtagAddToCart:function(){return Te},gtagPurchase:function(){return Ie},gtagViewItem:function(){return Me}});var Ie={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},Re={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},Te={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},Me={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},Ue={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},Ke={Commands:{Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}};function Ne(t,n,r,o,a,s,i){return _async_to_generator(function(){var c,u,l,f,d,_,g,p,y,b;return _ts_generator(this,function(h){switch(h.label){case 0:i&&(null==a?void 0:a._meta)&&(a._meta.chainPath=i),c=o,u=s,l=!0,f=!1,d=void 0,h.label=1;case 1:h.trys.push([1,6,7,8]),_=function(){var o,s,l,f,d,_,g,y,b,h,m,x,A,P,C,E,q,I,U,K,N,H,G,B,W,F,V,z,J,$,Q,X,Y,Z,ee,te,ne,re,oe,ae,se;return _ts_generator(this,function(ie){switch(ie.label){case 0:return o=p.value,(g=n[o])?a&&a._meta&&a._meta.path.length>256?[2,{v:(t.logger.error("Max path length exceeded at ".concat(o)),{event:null,respond:u})}]:(a&&a._meta&&(a._meta.hops++,a._meta.path.push(o)),[4,v(T)(t,g,o)]):(t.logger.warn("Transformer not found: ".concat(o)),[2,"continue"]);case 1:if(!ie.sent())return[2,{v:(t.logger.error("Transformer init failed: ".concat(o)),{event:null,respond:u})}];if(i&&void 0!==(null===(l=g.config)||void 0===l||null===(s=l.chainMocks)||void 0===s?void 0:s[i]))return y=g.config.chainMocks[i],t.logger.scope("transformer:".concat(g.type||"unknown")).debug("chainMock",{chain:i}),c=y,[2,"continue"];if(void 0!==(null===(f=g.config)||void 0===f?void 0:f.mock))return t.logger.scope("transformer:".concat(g.type||"unknown")).debug("mock"),c=g.config.mock,[2,"continue"];if(null===(d=g.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(b=null===(_=g.config)||void 0===_?void 0:_.cache,h=b?k(b):void 0,m=h?D(h,t):void 0,x=void 0,h&&m){if(A=j(a,c),"HIT"===(null==(P=O(h,m,A,"t:".concat(o)))?void 0:P.status)&&P.value)return c=P.value,h.full?[2,{v:{event:c,respond:u}}]:[2,"continue"];"MISS"===(null==P?void 0:P.status)&&(x={key:P.key,ttl:P.rule.ttl})}return(C=g.config.before)&&(E=R("string"==typeof C||Array.isArray(C)&&!w(C)?C:Se(Oe(C),j(a,c))||void 0,L(n))).length>0?[4,Ne(t,n,E,c,a,u,i)]:[3,3];case 2:if(null===(I=ie.sent()).event)return[2,{v:{event:null,respond:null!==(q=I.respond)&&void 0!==q?q:u}}];I.respond&&(u=I.respond),c=Array.isArray(I.event)?I.event[0]:I.event,ie.label=3;case 3:return[4,v(M,function(e){return t.logger.scope("transformer:".concat(g.type||"unknown")).error("Push failed",{error:e}),!1})(t,g,o,c,a,u)];case 4:return!1===(U=ie.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(U)?(K=r.slice(r.indexOf(o)+1),[4,Promise.all(U.map(function(r){return _async_to_generator(function(){var o,s,l,f,d;return _ts_generator(this,function(_){return o=r.event||c,s=a?_object_spread_props(_object_spread({},a),{_meta:_object_spread_props(_object_spread({},a._meta),{path:_to_consumable_array(a._meta.path)})}):e("unknown"),r.next?(l=r.next,w(r.next)&&(f=Oe(r.next),l=Se(f,j(s,o))),l&&(d=R(l,L(n))).length>0?[2,Ne(t,n,d,o,s,u,i)]:[2,{event:o,respond:u}]):[2,K.length>0?Ne(t,n,K,o,s,u,i):{event:o,respond:u}]})})()}))]):[3,6];case 5:N=ie.sent(),H=u,G=[],B=!0,W=!1,F=void 0;try{for(V=N.flat()[Symbol.iterator]();!(B=(z=V.next()).done);B=!0)if(null!==(J=z.value))if(J&&"object"==(void 0===J?"undefined":_type_of(J))&&"event"in J){if((Q=J).respond&&(H=Q.respond),null===Q.event)continue;Array.isArray(Q.event)?($=G).push.apply($,_to_consumable_array(Q.event)):G.push(Q.event)}else G.push(J)}catch(e){W=!0,F=e}finally{try{B||null==V.return||V.return()}finally{if(W)throw F}}return[2,{v:0===G.length?{event:null,respond:H}:1===G.length?{event:G[0],respond:H}:{event:G,respond:H}}];case 6:if(U&&"object"==(void 0===U?"undefined":_type_of(U))){if(X=U.event,Y=U.respond,Z=U.next,Y&&(u=Y),Z)return ee=Z,!w(Z)||(te=Oe(Z),ee=Se(te,j(a,c)))?[2,{v:(ne=R(ee,L(n))).length>0?Ne(t,n,ne,X||c,a,u,i):(t.logger.warn("Branch target not found: ".concat(JSON.stringify(Z))),{event:null,respond:u})}]:(X&&(c=X),[2,"continue"]);X&&(c=X)}return x&&m&&S(m,x.key,c,x.ttl),(!U||"object"==(void 0===U?"undefined":_type_of(U))&&!U.next)&&g.config.next&&w(g.config.next)?(re=g.config.next,oe=Oe(re),(ae=Se(oe,j(a,c)))&&(se=R(ae,L(n))).length>0?[2,{v:Ne(t,n,se,c,a,u,i)}]:[2,{v:{event:c,respond:u}}]):[2]}})},g=r[Symbol.iterator](),h.label=2;case 2:return(l=(p=g.next()).done)?[3,5]:[5,_ts_values(_())];case 3:if("object"===_type_of(y=h.sent()))return[2,y.v];h.label=4;case 4:return l=!0,[3,2];case 5:return[3,8];case 6:return b=h.sent(),f=!0,d=b,[3,8];case 7:try{l||null==g.return||g.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var He,Ge=function(e){return _async_to_generator(function(){var t,n;return _ts_generator(this,function(r){return n=function(){return function(n){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d,_,g,p;return _ts_generator(this,function(v){switch(v.label){case 0:if(t)return[3,2];if((o=_object_spread({},e)).sources){o.sources=_object_spread({},o.sources),a=!0,s=!1,i=void 0;try{for(c=Object.entries(o.sources)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(_=d.env)||void 0===_?void 0:_.window)||(o.sources[f]=_object_spread_props(_object_spread({},d),{env:_object_spread_props(_object_spread({},d.env),{window:window})}))}catch(e){s=!0,i=e}finally{try{a||null==c.return||c.return()}finally{if(s)throw i}}}return[4,ae(_object_spread_props(_object_spread({},o),{run:null===(r=o.run)||void 0===r||r}))];case 1:g=v.sent(),t={collector:g.collector,elb:g.elb},v.label=2;case 2:return(p=window).dataLayer||(p.dataLayer=[]),p.dataLayer.push(n),[2]}})})()}},[2,{get flow(){return t},trigger:n}]})})()},Be=function(e,t){var n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},We=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u,l;return _ts_generator(this,function(f){return t=e.config,n=e.env,r=n.elb,o=n.window,a=_object_spread({name:"dataLayer",prefix:"dataLayer"},null==t?void 0:t.settings),s={settings:a},i=0,o&&(c=a.name||"dataLayer",u=o[c],i=Array.isArray(u)?u.length:0,function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:globalThis.window,r=t.settings,o=(null==r?void 0:r.name)||"dataLayer";n[o]||(n[o]=[]);var a=n[o];if(Array.isArray(a)){var s=a.push.bind(a);a.push=function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];if(xe)return s.apply(void 0,_to_consumable_array(n));xe=!0;try{var a=!0,i=!1,c=void 0;try{for(var u,l=n[Symbol.iterator]();!(a=(u=l.next()).done);a=!0){var f=u.value;P(e,r,f)}}catch(e){i=!0,c=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw c}}}finally{xe=!1}return s.apply(void 0,_to_consumable_array(n))}}}(r,s,l=o),e.collector.allowed&&i>0&&(A(r,s,i,l),i=0)),[2,{type:"dataLayer",config:s,push:r,on:function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){return"run"===e&&o&&i>0&&(A(r,s,i,o),i=0),[2]})})()},destroy:function(){return _async_to_generator(function(){var e;return _ts_generator(this,function(t){return e=a.name||"dataLayer",o&&o[e]&&Array.isArray(o[e]),[2]})})()}}]})})()},Fe=We;return He=fe,function(e,t,n,r){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,a=!1,s=void 0;try{for(var i,c=function(){var o=i.value;ue.call(e,o)||o===n||se(e,o,{get:function(){return t[o]},enumerable:!(r=ie(t,o))||r.enumerable})},u=ce(t)[Symbol.iterator]();!(o=(i=u.next()).done);o=!0)c()}catch(e){a=!0,s=e}finally{try{o||null==u.return||u.return()}finally{if(a)throw s}}}return e}(se({},"__esModule",{value:!0}),He)}();
|
package/dist/walkerOS.json
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walkeros/web-source-datalayer",
|
|
3
3
|
"description": "DataLayer source for walkerOS",
|
|
4
|
-
"version": "3.4.
|
|
4
|
+
"version": "3.4.2",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"module": "./dist/index.mjs",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"update": "npx npm-check-updates -u && npm update"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@walkeros/core": "3.4.
|
|
41
|
-
"@walkeros/collector": "3.4.
|
|
40
|
+
"@walkeros/core": "3.4.2",
|
|
41
|
+
"@walkeros/collector": "3.4.2"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@types/gtag.js": "^0.0.20"
|