@walkeros/web-source-datalayer 4.0.1-next-1778284185788 → 4.0.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:()=>Me,default:()=>Ne,env:()=>X,sourceDataLayer:()=>Ue,step:()=>ne,trigger:()=>Ce});var i=Object.defineProperty;((e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})})({},{Level:()=>c});var a,c=((a=c||{})[a.ERROR=0]="ERROR",a[a.WARN=1]="WARN",a[a.INFO=2]="INFO",a[a.DEBUG=3]="DEBUG",a);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 v(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function y(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(!v(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,event:e=>({entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,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(){let e="";for(let t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}function O(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 _(e,t=1e3,n=!1){let o,r=null,s=!1;return(...i)=>new Promise(a=>{const c=n&&!s;r&&clearTimeout(r),r=setTimeout(()=>{r=null,n&&!s||(o=e(...i),a(o))},t),c&&(s=!0,o=e(...i),a(o))})}function A(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function S(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=A(e)):n=e,void 0!==t&&(t instanceof Error?o.error=A(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=A(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,i=0===e?console.error:1===e?console.warn:console.log;s?i(r,t,n):i(r,t)};function q(e={}){return E({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(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=t){const t=S(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=S(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=>E({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function $(e){return function(e){return"boolean"==typeof e}(e)||y(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!g(e)||d(e)&&e.every($)||v(e)&&Object.values(e).every($)}function L(e){return $(e)?e:void 0}function D(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 R(e,t={},n={}){var o,r;if(!g(e))return;const s=v(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),i=null!=(r=n.event)?r:v(e)?e:{};if(!n.collector)throw new Error("getMappingValue: context.collector is required");const a={event:i,mapping:t,collector:n.collector,logger:n.collector.logger,consent:s},c=d(t)?t:[t];for(const t of c){const n=await P(I)(e,t,{...a,mapping:t});if(g(n))return n}}async function I(e,t,n){return(d(t)?t:[t]).reduce(async(t,o)=>{const r=await t;if(r)return r;const s=y(o)?{key:o}:o;if(!Object.keys(s).length)return;const{condition:i,consent:a,fn:c,key:u,loop:l,map:f,set:p,validate:v,value:m}=s,b={...n,mapping:o};if(i&&!await P(i)(e,b))return;if(a&&!k(a,b.consent))return m;let w=g(m)?m:e;if(c&&(w=await P(c)(e,b)),u&&(w=h(e,u,m)),l){const[t,n]=l,o="this"===t?[e]:await R(e,t,b);d(o)&&(w=(await Promise.all(o.map(e=>R(e,n,b)))).filter(g))}else f?w=await Object.entries(f).reduce(async(t,[n,o])=>{const r=await t,s=await R(e,o,b);return g(s)&&(r[n]=s),r},Promise.resolve({})):p&&(w=await Promise.all(p.map(t=>I(e,t,b))));v&&!await P(v)(w,b)&&(w=void 0);const j=L(w);return g(j)?j:L(m)},Promise.resolve(void 0))}async function T(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await R(e,o,{collector:n,event:e});e=b(e,t,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,t,n){var o;const[r,s]=(e.name||"").split(" ");if(!t||!r||!s)return{};let i,a="",c=r,u=s;const l=t=>{if(t)return(d(t)?t:[t]).find(t=>{if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));const o={event:e,mapping:t,collector:n,logger:n.logger,consent:v(e)&&e.consent||n.consent};return Boolean(t.condition(e,o))})};t[c]||(c="*");const f=t[c];return f&&(f[u]||(u="*"),i=l(f[u])),i||(c="*",u="*",i=l(null==(o=t[c])?void 0:o[u])),i&&(a=`${c} ${u}`),{eventMapping:i,mappingKey:a}}(e,t.mapping,n);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([t,o])=>{const r=await R(e,o,{collector:n,event:e});e=b(e,t,r)}));let i=t.data&&await R(e,t.data,{collector:n,event:e});const a=Boolean(null==r?void 0:r.silent);if(r){if(r.ignore)return{event:e,data:i,mapping:r,mappingKey:s,ignore:!0,silent:a};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await R(e,r.data,{collector:n,event:e});i=v(i)&&v(t)?f(i,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(v(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&&(i=v(i)?f(t,i):null!=i?i:t)}return{event:e,data:i,mapping:r,mappingKey:s,ignore:!1,silent:a}}function M(e,t,n,o){return function(...r){let s;const i="pre"+t,a="post"+t,c=n[i],u=n[a],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(i)} 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(a)} failed, keeping original result`,e)}return s}}function C(e){if("*"===e)return()=>!0;if("and"in e){const t=e.and.map(C);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(C);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 U(e){return Array.isArray(e)&&e.length>0&&"object"==typeof e[0]&&null!==e[0]&&"match"in e[0]}function N(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;return U(e)?{type:"routes",routes:e.map(e=>({match:C(e.match),next:N(e.next)}))}:{type:"chain",value:e}}}}function H(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 H(n.next,t)}}function K(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function B(e){var t;return{full:null!=(t=e.full)&&t,storeId:e.store,rules:e.rules.map(e=>({match:C(e.match),key:e.key,ttl:e.ttl,update:e.update}))}}function G(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 i=`${o}:${s.join(":")}`,a=t.get(i);return void 0!==a?{status:"HIT",key:i,value:a,rule:r}:{status:"MISS",key:i,rule:r}}function W(e,t,n,o){e.set(t,n,1e3*o)}async function F(e,t,n,o){if(!t)return e;let r=e;for(const[e,s]of Object.entries(t))r=b(r,e,await R(n,s,{collector:o}));return r}var V=!1;function z(e,t={},n){if(t.filter){if(!0===D(()=>t.filter(n),()=>!1)())return}const o=function(e){if(v(e)&&y(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,...i}=o,a={name:r,data:i};D(()=>e(a),()=>{})()}function J(e){const[t,n,o]=e;if(!y(t))return null;let r,s={};switch(t){case"consent":if(!y(n)||e.length<3)return null;if("default"!==n&&"update"!==n)return null;if(!v(o)||null===o)return null;r=`${t} ${n}`,s={...o};break;case"event":if(!y(n))return null;r=n,v(o)&&(s={...o});break;case"config":if(!y(n))return null;r=`${t} ${n}`,v(o)&&(s={...o});break;case"set":if(y(n))r=`${t} ${n}`,v(o)&&(s={...o});else{if(!v(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:()=>ae,gtagAddToCart:()=>se,gtagPurchase:()=>oe,gtagViewItem:()=>ie});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}]}}]]},ie={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}]}}]]},ae={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&&!U(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:ye(t.config.env)};r.debug("init");const i=await M(t.init,"TransformerInit",e.hooks,e.logger)(s);if(!1===i)return!1;t.config={...i||t.config,env:(null==i?void 0:i.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function pe(e,t,n,o,r,s){const i=t.type||"unknown",a=e.logger.scope(`transformer:${i}`),c={collector:e,logger:a,id:n,ingest:r,config:t.config,env:{...ye(t.config.env),...s?{respond:s}:{}}};a.debug("push",{event:o.name});const u=await M(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),u}async function ve(e,t,n,o,r,s,i){var a,c,l,f,d,g;i&&(null==r?void 0:r._meta)&&(r._meta.chainPath=i);let p=o,v=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:v};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:v};if(i&&void 0!==(null==(c=null==(a=s.config)?void 0:a.chainMocks)?void 0:c[i])){const t=s.config.chainMocks[i];e.logger.scope(`transformer:${s.type||"unknown"}`).debug("chainMock",{chain:i}),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 y=null==(d=s.config)?void 0:d.cache,m=y?B(y):void 0,h=m?ue(m,e):void 0;let b;if(m&&h){const e=G(m,h,K(r,p),`t:${o}`);if("HIT"===(null==e?void 0:e.status)&&e.value){if(p=e.value,m.full)return{event:p,respond:v};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)&&!U(w)?w:H(N(w),K(r,p))||void 0,le(t));if(n.length>0){const o=await ve(e,t,n,p,r,v,i);if(null===o.event)return{event:null,respond:null!=(g=o.respond)?g:v};o.respond&&(v=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,v);if(!1===k)return{event:null,respond:v};if(Array.isArray(k)){const s=n.slice(n.indexOf(o)+1),a=await Promise.all(k.map(async n=>{const o=n.event||p,a=r?{...r,_meta:{...r._meta,path:[...r._meta.path]}}:u("unknown");if(n.next){let r=n.next;if(U(n.next)){r=H(N(n.next),K(a,o))}if(r){const n=de(r,le(t));if(n.length>0)return ve(e,t,n,o,a,v,i)}return{event:o,respond:v}}return s.length>0?ve(e,t,s,o,a,v,i):{event:o,respond:v}}));let c=v;const l=[];for(const e of a.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&&(v=o),s){let o=s;if(U(s)){if(o=H(N(s),K(r,p)),!o){n&&(p=n);continue}}const a=de(o,le(t));return a.length>0?ve(e,t,a,n||p,r,v,i):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:v})}n&&(p=n)}if(b&&h&&W(h,b.key,p,b.ttl),(!k||"object"==typeof k&&!k.next)&&s.config.next&&U(s.config.next)){const n=H(N(s.config.next),K(r,p));if(n){const o=de(n,le(t));if(o.length>0)return ve(e,t,o,p,r,v,i)}return{event:p,respond:v}}}return{event:p,respond:v}}function ye(e){return e&&v(e)?e:{}}async function me(e,t){var n;if(!t.on||!(null==(n=t.queueOn)?void 0:n.length))return;const o=t.queueOn;t.queueOn=[];for(const{type:e,data:n}of o)await P(t.on)(e,n)}function he(e){var t;return Boolean(e.config.init)&&!(null==(t=e.config.require)?void 0:t.length)}async function be(e,t,n){var o;const{code:r,config:s={},env:i={},primary:a,next:c,before:l,cache:f}=n;let d,g=u(t);const p=f?B({...f,full:null==(o=f.full)||o}):void 0,v=N(c),y=Array.isArray(c)&&U(c)||!v?void 0:de(H(v),le(e.transformers)),m=N(l),h=Array.isArray(l)&&U(l)||!m?void 0:de(H(m),le(e.transformers)),b=e.logger.scope("source").scope(t),w={push:async(n,o={})=>{let r,i=n;const a=null!=h?h:m?de(H(m,K(g)),le(e.transformers)):[];if(a.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ve(e,e.transformers,a,i,g,d,`source.${t}.before`);if(null===n.event)return{ok:!0};n.respond&&(d=n.respond),i=Array.isArray(n.event)?n.event[0]:n.event}if(p){const n=ue(p,e);if(n){const o=K(g),s=G(p,n,o,`s:${t}`);if(s){if("HIT"===s.status&&void 0!==s.value&&p.full){let t=s.value;return s.rule.update&&(t=await F(t,s.rule.update,{...o,cache:{status:"HIT"}},e)),null==d||d(t),{ok:!0}}if("MISS"===s.status&&p.full&&d){const t=d,i=s.rule.update,a={...o,cache:{status:"MISS"}},c=s.key,u=s.rule.ttl;d=o=>{W(n,c,o,u),i?r=(async()=>{const n=await F(o,i,a,e);t(n)})():t(o)}}"MISS"!==s.status||p.full||W(n,s.key,!0,s.rule.ttl)}}}const c=null!=y?y:v?de(H(v,K(g)),le(e.transformers)):[],u=await e.push(i,{...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,...i},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 R(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=_,a&&(j.config={...j.config,primary:a}),j}function we(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}}function ke(e,t,n,o,r){if(!t.on)return;const s=t.type||"unknown",i=e.logger.scope(s).scope("on").scope(o),a={collector:e,logger:i,id:n,config:t.config,data:r,env:$e(t.env,t.config.env)};D(t.on)(o,a)}function je(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,r=we(e,ce.Consent);t.forEach(e=>{Object.keys(o).filter(t=>t in e).forEach(t=>{D(e[t])(o,r)})})}(e,n,o);break;case ce.Ready:!function(e,t){if(!e.allowed)return;const n=we(e,ce.Ready);t.forEach(e=>{D(e)(void 0,n)})}(e,n);break;case ce.Run:!function(e,t){if(!e.allowed)return;const n=we(e,ce.Run);t.forEach(e=>{D(e)(void 0,n)})}(e,n);break;case ce.Session:!function(e,t){if(!e.session)return;const n=we(e,ce.Session);t.forEach(t=>{D(t)(e.session,n)})}(e,n);break;default:{const o=we(e,t);n.forEach(e=>{"function"==typeof e&&D(e)(r,o)});break}}}function Oe(e,t,n,o){if(!e)return[];if(t){const e=H(t,K(o));return e?de(e,le(n)):[]}return de(e,le(n))}async function _e(e,t,n){const{code:o,config:r={},env:s={},before:i,next:a,cache:c}=t;if(!p(o.push))return qe({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const u=n||r||{init:!1};let l=i?{...u,before:i}:{...u};a&&(l={...l,next:a}),c&&(l={...l,cache:c});const f={...o,config:l,env:$e(o.env,s)};let d=f.config.id;if(!d)do{d=O(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),Ae(e,void 0,{},{[d]:f})}async function Ae(e,t,n={},o){const{allowed:r,consent:s,globals:i,user:a}=e;if(!r)return qe({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)){let t=!1;try{t=await Se(e,r,o)}catch(t){const n=r.type||"unknown";e.logger.scope(n).error("Destination init threw",{error:t instanceof Error?t.message:String(t)})}return{id:o,destination:r,skipped:!t}}const v=[],y=g.filter(e=>{const t=k(r.config.consent,s,e.consent);return!t||(e.consent=t,v.push(e),!1)});if(r.queuePush.push(...y),!v.length)return{id:o,destination:r,queue:g};let h,b,w=!1;try{w=await Se(e,r,o)}catch(t){const n=r.type||"unknown";e.logger.scope(n).error("Destination init threw",{error:t instanceof Error?t.message:String(t)})}if(!w)return{id:o,destination:r,queue:g};r.dlq||(r.dlq=[]);const j=r.config.before,O=Oe(j,j&&U(j)?N(j):void 0,e.transformers,p),_=r.config.next,A=_&&U(_)?N(_):void 0,S=null==(d=r.config)?void 0:d.cache,x=S?B(S):void 0,q=x?ue(x,e):void 0;let E=0;return await Promise.all(v.map(async t=>{let s;if(t.globals=f(i,t.globals),t.user=f(a,t.user),(null==x?void 0:x.full)&&q){const e=K(p,t),n=G(x,q,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(O.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await ve(e,e.transformers,O,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&&q){const e=K(p,c),n=G(x,q,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(xe,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(E+=Date.now()-l,s&&q&&void 0===r.config.mock&&W(q,s.key,null==g||g,s.ttl),void 0!==g&&(b=g),!d&&_){void 0!==g&&(p._response=g);const t=Oe(_,A,e.transformers,p);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ve(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:E}})),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 qe({event:t,...Object.keys(l).length&&{done:l},...Object.keys(d).length&&{queued:d},...Object.keys(g).length&&{failed:g}})}async function Se(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",s=e.logger.scope(r),i={collector:e,logger:s,id:n,config:t.config,env:$e(t.env,t.config.env)};s.debug("init");const a=await M(t.init,"DestinationInit",e.hooks,e.logger)(i);if(!1===a)return a;if(t.config={...a||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)ke(e,t,n,r,s)}s.debug("init done")}return!0}async function xe(e,t,n,o,r,s){const{config:i}=t,a=await T(o,i,e);if(a.ignore)return!1;const c=t.type||"unknown",u=e.logger.scope(c),l={collector:e,logger:u,id:n,config:i,data:a.data,rule:a.mapping,ingest:r,env:{...$e(t.env,i.env),...s?{respond:s}:{}}};if(void 0!==i.mock)return u.debug("mock",{event:a.event.name}),i.mock;const f=a.mapping,d=a.mappingKey||"* *";if(!(null==f?void 0:f.batch)||!t.pushBatch||void 0!==i.mock){u.debug("push",{event:a.event.name});const n=await M(t.push,"DestinationPush",e.hooks,e.logger)(a.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:_(()=>{const o=t.batches[d].batched,a={collector:e,logger:u,id:n,config:i,data:void 0,rule:f,ingest:r,env:{...$e(t.env,i.env),...s?{respond:s}:{}}};u.debug("push batch",{events:o.events.length}),M(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(o,a),u.debug("push batch done"),o.events=[],o.data=[]},f.batch)}}const o=t.batches[d];o.batched.events.push(a.event),g(a.data)&&o.batched.data.push(a.data),o.batchFn()}return!0}function qe(e){return{ok:!(null==e?void 0:e.failed),...e}}function Ee(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:s}=fe(e,"before"),{config:i}=fe({...e,config:s},"next"),a={...t.config,...n,...i};r&&(a.cache=r);const c=$e(t.env,o);return{...t,config:a,env:c}}function $e(e,t){return e||t?t?e&&v(e)&&v(t)?{...e,...t}:t:e:{}}async function Le(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const s=o.destroy;if(!s)return;const i=o.type||"unknown",a=n.scope(i),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:a};try{await Promise.race([s(c),new Promise((n,o)=>setTimeout(()=>o(new Error(`${t} '${e}' destroy timed out`)),5e3))])}catch(n){a.error(`${t} '${e}' destroy failed: ${n}`)}});await Promise.allSettled(o)}async function De(e,t,n,o){let r,s,i=!1;switch(t){case ce.Config:v(n)&&(f(e.config,n,{shallow:!1}),s=n,i=!0);break;case ce.Consent:if(v(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,i=!0}break;case ce.Custom:v(n)&&(e.custom=f(e.custom,n),s=n,i=!0);break;case ce.Destination:v(n)&&("code"in n&&v(n.code)?r=await _e(e,n,o):p(n.push)&&(r=await _e(e,{code:n},o)));break;case ce.Globals:v(n)&&(e.globals=f(e.globals,n),s=n,i=!0);break;case ce.On:y(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,je(e,t,s)}(e,n,o);break;case ce.Ready:i=!0;break;case ce.Run:r=await async function(e,t){return e.allowed=!0,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 Ae(e)}(e,n),i=!0;break;case ce.Session:i=!0;break;case ce.Shutdown:await async function(e){const t=e.logger;await Le(e.sources,"source",t),await Le(e.destinations,"destination",t),await Le(e.transformers,"transformer",t),await Le(e.stores,"store",t)}(e);break;case ce.User:v(n)&&(f(e.user,n,{shallow:!1}),s=n,i=!0)}return i&&(await async function(e,t,n,o){var r,s;let i,a=n||[];switch(n||(a=e.on[t]||[]),t){case ce.Consent:i=o||e.consent;break;case ce.Session:i=e.session;break;case ce.User:i=o||e.user;break;case ce.Custom:i=o||e.custom;break;case ce.Globals:i=o||e.globals;break;case ce.Config:i=o||e.config;break;case ce.Ready:case ce.Run:default:i=void 0}let c=!1;for(const n of Object.values(e.sources)){if(null==(r=n.config.require)?void 0:r.length){const e=n.config.require.indexOf(t);-1!==e&&n.config.require.splice(e,1)}n.on&&(he(n)?!1===await P(n.on)(t,i)&&(c=!0):(n.queueOn=n.queueOn||[],n.queueOn.push({type:t,data:i})))}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:i});ke(e,o,n,t,i)}});for(const t of Object.values(e.sources))he(t)&&(null==(s=t.queueOn)?void 0:s.length)&&await me(0,t);return Object.keys(e.pending.destinations).length>0&&await async function(e,t){var n;for(const[o,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[o]||e.destinations[o])continue;const s=null==(n=r.config)?void 0:n.require;if(!s)continue;const i=s.indexOf(t);if(-1===i)continue;if(s.splice(i,1),s.length>0)continue;delete e.pending.destinations[o];const a=Ee(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,t),je(e,t,a,o),!c}(e,t,void 0,s),r=await Ae(e)),r||qe({ok:!0})}function Pe(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");const{timestamp:r=Date.now(),name:s=`${n} ${o}`,data:i={},context:a={},globals:c=e.globals,custom:u={},user:l=e.user,nested:f=[],consent:d=e.consent,id:g=j(),trigger:p="",entity:v=n,action:y=o,timing:m=0,source:h={type:"collector",schema:"4"}}=t;return{name:s,data:i,context:a,globals:c,custom:u,user:l,nested:f,consent:d,id:g,trigger:p,entity:v,action:y,timestamp:r,timing:m,source:h}}async function Re(e){var t,n;const o=f({globalsStatic:{},sessionStatic:{},run:!0},e,{merge:!1,extend:!1}),r=q({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),s={...o.globalsStatic,...e.globals},i={allowed:!1,config:o,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:s,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||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var a,c;i.push=function(e,t){return M(async(n,o={})=>await P(async()=>{var r;const s=Date.now(),{id:i,ingest:a,respond:c,mapping:l,preChain:f,include:d,exclude:g}=o;let p=c,v=n;const y=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!=a?a:u(i||"unknown");if(l){const t=await T(v,l,e);if(t.ignore)return qe({ok:!0});if(l.consent&&!k(l.consent,e.consent,t.event.consent))return qe({ok:!0});v=t.event}if((null==f?void 0:f.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ve(e,e.transformers,f,v,m,p,i?`source.${i}.next`:void 0);if(null===n.event)return qe({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=Pe(e,o);return Ae(e,r,{id:i,ingest:m,respond:p},y)}));if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const t=e.status.sources[i];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-s}return null!=(r=o[0])?r:qe({ok:!0})}v=n.event}const h=t(v),b=Pe(e,h),w=await Ae(e,b,{id:i,ingest:m,respond:p},y);if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const t=e.status.sources[i];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-s}return w},()=>qe({ok:!1}))(),"Push",e.hooks,e.logger)}(i,e=>({timing:Math.round((Date.now()-i.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.0.1-next-1778284185788"},...e})),i.command=(c=De,M(async(e,t,n)=>await P(async()=>await c(a,e,t,n),()=>qe({ok:!1}))(),"Command",(a=i).hooks,a.logger));const l=e.stores||{};if(i.stores=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,config:s={},env:i={}}=r,a=e.logger.scope("store").scope(o),c={collector:e,logger:a,id:o,config:s,env:i},u=await t(c),l=u.get,f=u.set,d=u.delete;u.get=M(l,"StoreGet",e.hooks,e.logger),u.set=M(f,"StoreSet",e.hooks,e.logger),u.delete=M(d,"StoreDelete",e.hooks,e.logger),n[o]=u}return n}(i,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,i.stores,e),!i.stores.__cache){const e=new Map;i.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 i.destinations=await async function(e,t={}){var n,o;const r={};for(const[s,i]of Object.entries(t))(null==(o=null==(n=i.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[s]=i:r[s]=Ee(i);return r}(i,e.destinations||{}),i.transformers=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,env:s={}}=r,{config:i}=fe(r,"before"),{config:a}=fe({...r,config:i},"next"),c=Object.keys(s).length>0?{...a,env:s}:a,{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}(i,e.transformers||{}),i}async function Ie(e){e=e||{};const t=await Re(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,s,i)=>{if("string"==typeof e&&e.startsWith("walker ")){const r=e.replace("walker ","");return o.command(r,t,n)}let a;if("string"==typeof e)a={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(a.data=t);else{if(!e||"object"!=typeof e)return qe({ok:!1});a=e,t&&"object"==typeof t&&!Array.isArray(t)&&(a.data={...a.data||{},...t})}return r&&"object"==typeof r&&(a.context=r),s&&Array.isArray(s)&&(a.nested=s),i&&"object"==typeof i&&(a.custom=i),o.push(a)}});var o;t.sources.elb=n,await async function(e,t={}){var n;const o={};for(const[r,s]of Object.entries(t)){const t=await be(e,r,s);if(!t)continue;const i=null==(n=s.config)?void 0:n.require;t.config={...t.config,init:!1,...i?{require:[...i]}:{}},o[r]=t}Object.assign(e.sources,o);for(const t of Object.keys(o)){const n=e.sources[t];n.init&&await P(n.init.bind(n))(),n.config.init=!0,he(n)&&await me(0,n)}return o}(t,e.sources||{});const{consent:r,user:s,globals:i,custom:a}=e;r&&await t.command("consent",r),s&&await t.command("user",s),i&&Object.assign(t.globals,i),a&&Object.assign(t.custom,a),t.config.run&&await t.command("run");let c=n.push;const u=Object.values(t.sources).filter(e=>"elb"!==e.type),l=u.find(e=>e.config.primary);return l?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c}}var Te,Me=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 Ie({...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)}}},Ce=(e,t)=>{const n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},Ue=async e=>{const{config:t,env:n}=e,{elb:o,window:r}=n,s={name:"dataLayer",prefix:"dataLayer",...null==t?void 0:t.settings},i={settings:s};let a=0;return{type:"dataLayer",config:i,push:o,on:async e=>{if("run"===e&&r&&a>0){!function(e,t,n,o=globalThis.window){const r=t.settings,s=o[(null==r?void 0:r.name)||"dataLayer"];if(Array.isArray(s)&&!V){V=!0;try{const t=null!=n?n:s.length;for(let n=0;n<t;n++)z(e,r,s[n])}finally{V=!1}}}(o,i,a,r),a=0}},init:()=>{if(!r)return;const e=s.name||"dataLayer",t=r[e];a=Array.isArray(t)?t.length:0;!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 i=s.push.bind(s);s.push=function(...t){if(V)return i(...t);V=!0;try{for(const n of t)z(e,o,n)}finally{V=!1}return i(...t)}}(o,i,r)},destroy:async()=>{const e=s.name||"dataLayer";r&&r[e]&&Array.isArray(r[e])}}},Ne=Ue;return Te=s,((r,s,i,a)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let c of n(s))o.call(r,c)||c===i||e(r,c,{get:()=>s[c],enumerable:!(a=t(s,c))||a.enumerable});return r})(e({},"__esModule",{value:!0}),Te)})();
|
|
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:()=>Ce,default:()=>He,env:()=>X,sourceDataLayer:()=>Ne,step:()=>ne,trigger:()=>Ue});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 v(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function y(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(!v(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,event:e=>({entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,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(){let e="";for(let t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}function O(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 _(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 A(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function S(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=A(e)):n=e,void 0!==t&&(t instanceof Error?o.error=A(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=A(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 q(e={}){return E({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(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=t){const t=S(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=S(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=>E({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function $(e){return function(e){return"boolean"==typeof e}(e)||y(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!g(e)||d(e)&&e.every($)||v(e)&&Object.values(e).every($)}function L(e){return $(e)?e:void 0}function D(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 R(e,t={},n={}){var o,r;if(!g(e))return;const s=v(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),a=null!=(r=n.event)?r:v(e)?e:{};if(!n.collector)throw new Error("getMappingValue: context.collector is required");const i={event:a,mapping:t,collector:n.collector,logger:n.collector.logger,consent:s},c=d(t)?t:[t];for(const t of c){const n=await P(I)(e,t,{...i,mapping:t});if(g(n))return n}}async function I(e,t,n){return(d(t)?t:[t]).reduce(async(t,o)=>{const r=await t;if(r)return r;const s=y(o)?{key:o}:o;if(!Object.keys(s).length)return;const{condition:a,consent:i,fn:c,key:u,loop:l,map:f,set:p,validate:v,value:m}=s,b={...n,mapping:o};if(a&&!await P(a)(e,b))return;if(i&&!k(i,b.consent))return m;let w=g(m)?m:e;if(c&&(w=await P(c)(e,b)),u&&(w=h(e,u,m)),l){const[t,n]=l,o="this"===t?[e]:await R(e,t,b);d(o)&&(w=(await Promise.all(o.map(e=>R(e,n,b)))).filter(g))}else f?w=await Object.entries(f).reduce(async(t,[n,o])=>{const r=await t,s=await R(e,o,b);return g(s)&&(r[n]=s),r},Promise.resolve({})):p&&(w=await Promise.all(p.map(t=>I(e,t,b))));v&&!await P(v)(w,b)&&(w=void 0);const j=L(w);return g(j)?j:L(m)},Promise.resolve(void 0))}async function T(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await R(e,o,{collector:n,event:e});e=b(e,t,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,t,n){var o;const[r,s]=(e.name||"").split(" ");if(!t||!r||!s)return{};let a,i="",c=r,u=s;const l=t=>{if(t)return(d(t)?t:[t]).find(t=>{if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));const o={event:e,mapping:t,collector:n,logger:n.logger,consent:v(e)&&e.consent||n.consent};return Boolean(t.condition(e,o))})};t[c]||(c="*");const f=t[c];return f&&(f[u]||(u="*"),a=l(f[u])),a||(c="*",u="*",a=l(null==(o=t[c])?void 0:o[u])),a&&(i=`${c} ${u}`),{eventMapping:a,mappingKey:i}}(e,t.mapping,n);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([t,o])=>{const r=await R(e,o,{collector:n,event:e});e=b(e,t,r)}));let a=t.data&&await R(e,t.data,{collector:n,event:e});const i=Boolean(null==r?void 0:r.silent);if(r){if(r.ignore)return{event:e,data:a,mapping:r,mappingKey:s,ignore:!0,silent:i};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await R(e,r.data,{collector:n,event:e});a=v(a)&&v(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(v(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=v(a)?f(t,a):null!=a?a:t)}return{event:e,data:a,mapping:r,mappingKey:s,ignore:!1,silent:i}}function M(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 C(e){if("*"===e)return()=>!0;if("and"in e){const t=e.and.map(C);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(C);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 U(e){return Array.isArray(e)&&e.length>0&&"object"==typeof e[0]&&null!==e[0]&&"match"in e[0]}function N(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;return U(e)?{type:"routes",routes:e.map(e=>({match:C(e.match),next:N(e.next)}))}:{type:"chain",value:e}}}}function H(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 H(n.next,t)}}function K(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function B(e){var t;return{full:null!=(t=e.full)&&t,storeId:e.store,rules:e.rules.map(e=>({match:C(e.match),key:e.key,ttl:e.ttl,update:e.update}))}}function G(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 W(e,t,n,o){e.set(t,n,1e3*o)}async function F(e,t,n,o){if(!t)return e;let r=e;for(const[e,s]of Object.entries(t))r=b(r,e,await R(n,s,{collector:o}));return r}var V=!1;function z(e,t={},n){if(t.filter){if(!0===D(()=>t.filter(n),()=>!1)())return}const o=function(e){if(v(e)&&y(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};D(()=>e(i),()=>{})()}function J(e){const[t,n,o]=e;if(!y(t))return null;let r,s={};switch(t){case"consent":if(!y(n)||e.length<3)return null;if("default"!==n&&"update"!==n)return null;if(!v(o)||null===o)return null;r=`${t} ${n}`,s={...o};break;case"event":if(!y(n))return null;r=n,v(o)&&(s={...o});break;case"config":if(!y(n))return null;r=`${t} ${n}`,v(o)&&(s={...o});break;case"set":if(y(n))r=`${t} ${n}`,v(o)&&(s={...o});else{if(!v(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&&!U(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:me(t.config.env)};r.debug("init");const a=await M(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:{...me(t.config.env),...s?{respond:s}:{}}};i.debug("push",{event:o.name});const u=await M(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return i.debug("push done"),u}function ve(e,t){var n;if(e)return"string"==typeof e||Array.isArray(e)&&!U(e)?e:null!=(n=H(N(e),t))?n:void 0}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,v=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:v};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:v};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 y=null==(d=s.config)?void 0:d.cache,m=y?B(y):void 0,h=m?ue(m,e):void 0;let b;if(m&&h){const e=G(m,h,K(r,p),`t:${o}`);if("HIT"===(null==e?void 0:e.status)&&e.value){if(p=e.value,m.full)return{event:p,respond:v};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(ve(w,K(r,p)),le(t));if(n.length>0){const o=await ye(e,t,n,p,r,v,a);if(null===o.event)return{event:null,respond:null!=(g=o.respond)?g:v};o.respond&&(v=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,v);if(!1===k)return{event:null,respond:v};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){const r=ve(n.next,K(i,o));if(r){const n=de(r,le(t));if(n.length>0)return ye(e,t,n,o,i,v,a)}return{event:o,respond:v}}return s.length>0?ye(e,t,s,o,i,v,a):{event:o,respond:v}}));let c=v;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&&(v=o),s){const o=ve(s,K(r,p));if(!o){n&&(p=n);continue}const i=de(o,le(t));return i.length>0?ye(e,t,i,n||p,r,v,a):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:v})}n&&(p=n)}if(b&&h&&W(h,b.key,p,b.ttl),(!k||"object"==typeof k&&!k.next)&&s.config.next&&U(s.config.next)){const n=H(N(s.config.next),K(r,p));if(n){const o=de(n,le(t));if(o.length>0)return ye(e,t,o,p,r,v,a)}return{event:p,respond:v}}}return{event:p,respond:v}}function me(e){return e&&v(e)?e:{}}async function he(e,t){var n;if(!t.on||!(null==(n=t.queueOn)?void 0:n.length))return;const o=t.queueOn;t.queueOn=[];for(const{type:e,data:n}of o)await P(t.on)(e,n)}function be(e){var t;return Boolean(e.config.init)&&!(null==(t=e.config.require)?void 0:t.length)}async function we(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?B({...f,full:null==(o=f.full)||o}):void 0,v=N(c),y=Array.isArray(c)&&U(c)||!v?void 0:de(H(v),le(e.transformers)),m=N(l),h=Array.isArray(l)&&U(l)||!m?void 0:de(H(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(H(m,K(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 o=K(g),s=G(p,n,o,`s:${t}`);if(s){if("HIT"===s.status&&void 0!==s.value&&p.full){let t=s.value;return s.rule.update&&(t=await F(t,s.rule.update,{...o,cache:{status:"HIT"}},e)),null==d||d(t),{ok:!0}}if("MISS"===s.status&&p.full&&d){const t=d,a=s.rule.update,i={...o,cache:{status:"MISS"}},c=s.key,u=s.rule.ttl;d=o=>{W(n,c,o,u),a?r=(async()=>{const n=await F(o,a,i,e);t(n)})():t(o)}}"MISS"!==s.status||p.full||W(n,s.key,!0,s.rule.ttl)}}}const c=null!=y?y:v?de(H(v,K(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 R(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 ke(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}}function je(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:Le(t.env,t.config.env)};D(t.on)(o,i)}function Oe(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,r=ke(e,ce.Consent);t.forEach(e=>{Object.keys(o).filter(t=>t in e).forEach(t=>{D(e[t])(o,r)})})}(e,n,o);break;case ce.Ready:!function(e,t){if(!e.allowed)return;const n=ke(e,ce.Ready);t.forEach(e=>{D(e)(void 0,n)})}(e,n);break;case ce.Run:!function(e,t){if(!e.allowed)return;const n=ke(e,ce.Run);t.forEach(e=>{D(e)(void 0,n)})}(e,n);break;case ce.Session:!function(e,t){if(!e.session)return;const n=ke(e,ce.Session);t.forEach(t=>{D(t)(e.session,n)})}(e,n);break;default:{const o=ke(e,t);n.forEach(e=>{"function"==typeof e&&D(e)(r,o)});break}}}function _e(e,t,n,o){if(!e)return[];if(t){const e=H(t,K(o));return e?de(e,n):[]}return U(e)?[]:de(e,n)}async function Ae(e,t,n){const{code:o,config:r={},env:s={},before:a,next:i,cache:c}=t;if(!p(o.push))return Ee({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:Le(o.env,s)};let d=f.config.id;if(!d)do{d=O(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),Se(e,void 0,{},{[d]:f})}async function Se(e,t,n={},o){const{allowed:r,consent:s,globals:a,user:i}=e;if(!r)return Ee({ok:!1});t&&(e.queue.push(t),e.status.in++),o||(o=e.destinations);const c=e.transformers?le(e.transformers):{},l=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var l,d,g;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let p=(r.queuePush||[]).map(e=>({...e,consent:s}));r.queuePush=[],t&&p.push(m(t));const v=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:u("unknown");if(!p.length&&!(null==(l=r.queueOn)?void 0:l.length))return{id:o,destination:r,skipped:!0};if(!p.length&&(null==(d=r.queueOn)?void 0:d.length)){let t=!1;try{t=await xe(e,r,o)}catch(t){const n=r.type||"unknown";e.logger.scope(n).error("Destination init threw",{error:t instanceof Error?t.message:String(t)})}return{id:o,destination:r,skipped:!t}}const y=[],h=p.filter(e=>{const t=k(r.config.consent,s,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(r.queuePush.push(...h),!y.length)return{id:o,destination:r,queue:p};let b,w,j=!1;try{j=await xe(e,r,o)}catch(t){const n=r.type||"unknown";e.logger.scope(n).error("Destination init threw",{error:t instanceof Error?t.message:String(t)})}if(!j)return{id:o,destination:r,queue:p};r.dlq||(r.dlq=[]);const O=r.config.before,_=_e(O,O&&U(O)?N(O):void 0,c,v),A=r.config.next,S=A&&U(A)?N(A):void 0,x=null==(g=r.config)?void 0:g.cache,q=x?B(x):void 0,E=q?ue(q,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==q?void 0:q.full)&&E){const e=K(v,t),n=G(q,E,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 u=t,l=n.respond;if(_.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await ye(e,e.transformers,_,t,v,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(l=r.respond),u=Array.isArray(r.event)?r.event[0]:r.event}if(q&&!q.full&&E){const e=K(v,u),n=G(q,E,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 d=Date.now();let g=!1;const p=await P(qe,t=>{const n=r.type||"unknown";e.logger.scope(n).error("Push failed",{error:t,event:u.name}),b=t,g=!0,r.dlq.push([u,t])})(e,r,o,u,v,l);if($+=Date.now()-d,s&&E&&void 0===r.config.mock&&W(E,s.key,null==p||p,s.ttl),void 0!==p&&(w=p),!g&&A){void 0!==p&&(v._response=p);const t=_e(A,S,c,v);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,t,u,v,l,`destination.${o}.next`);n.respond&&(l=n.respond)}}return t})),{id:o,destination:r,error:b,response:w,totalDuration:$}})),d={},g={},p={};for(const t of l){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,p[t.id]=n,o.failed++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.failed++):t.queue&&t.queue.length?g[t.id]=n:(d[t.id]=n,o.count++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.out++)}return Ee({event:t,...Object.keys(d).length&&{done:d},...Object.keys(g).length&&{queued:g},...Object.keys(p).length&&{failed:p}})}async function xe(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:Le(t.env,t.config.env)};s.debug("init");const i=await M(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)je(e,t,n,r,s)}s.debug("init done")}return!0}async function qe(e,t,n,o,r,s){const{config:a}=t,i=await T(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:{...Le(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 M(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:_(()=>{const o=t.batches[d].batched,i={collector:e,logger:u,id:n,config:a,data:void 0,rule:f,ingest:r,env:{...Le(t.env,a.env),...s?{respond:s}:{}}};u.debug("push batch",{events:o.events.length}),M(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 Ee(e){return{ok:!(null==e?void 0:e.failed),...e}}function $e(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=Le(t.env,o);return{...t,config:i,env:c}}function Le(e,t){return e||t?t?e&&v(e)&&v(t)?{...e,...t}:t:e:{}}async function De(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 Pe(e,t,n,o){let r,s,a=!1;switch(t){case ce.Config:v(n)&&(f(e.config,n,{shallow:!1}),s=n,a=!0);break;case ce.Consent:if(v(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:v(n)&&(e.custom=f(e.custom,n),s=n,a=!0);break;case ce.Destination:v(n)&&("code"in n&&v(n.code)?r=await Ae(e,n,o):p(n.push)&&(r=await Ae(e,{code:n},o)));break;case ce.Globals:v(n)&&(e.globals=f(e.globals,n),s=n,a=!0);break;case ce.On:y(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,Oe(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.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 Se(e)}(e,n),a=!0;break;case ce.Session:a=!0;break;case ce.Shutdown:await async function(e){const t=e.logger;await De(e.sources,"source",t),await De(e.destinations,"destination",t),await De(e.transformers,"transformer",t),await De(e.stores,"store",t)}(e);break;case ce.User:v(n)&&(f(e.user,n,{shallow:!1}),s=n,a=!0)}return a&&(await async function(e,t,n,o){var r,s;let a,i=n||[];switch(n||(i=e.on[t]||[]),t){case ce.Consent:a=o||e.consent;break;case ce.Session:a=e.session;break;case ce.User:a=o||e.user;break;case ce.Custom:a=o||e.custom;break;case ce.Globals:a=o||e.globals;break;case ce.Config:a=o||e.config;break;case ce.Ready:case ce.Run:default:a=void 0}let c=!1;for(const n of Object.values(e.sources)){if(null==(r=n.config.require)?void 0:r.length){const e=n.config.require.indexOf(t);-1!==e&&n.config.require.splice(e,1)}n.on&&(be(n)?!1===await P(n.on)(t,a)&&(c=!0):(n.queueOn=n.queueOn||[],n.queueOn.push({type:t,data:a})))}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:a});je(e,o,n,t,a)}});for(const t of Object.values(e.sources))be(t)&&(null==(s=t.queueOn)?void 0:s.length)&&await he(0,t);return Object.keys(e.pending.destinations).length>0&&await async function(e,t){var n;for(const[o,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[o]||e.destinations[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.destinations[o];const i=$e(r);!1!==i.config.queue&&(i.queuePush=[...e.queue]),e.destinations[o]=i}}(e,t),Oe(e,t,i,o),!c}(e,t,void 0,s),r=await Se(e)),r||Ee({ok:!0})}function Re(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");const{timestamp:r=Date.now(),name:s=`${n} ${o}`,data:a={},context:i={},globals:c=e.globals,custom:u={},user:l=e.user,nested:f=[],consent:d=e.consent,id:g=j(),trigger:p="",entity:v=n,action:y=o,timing:m=0,source:h={type:"collector",schema:"4"}}=t;return{name:s,data:a,context:i,globals:c,custom:u,user:l,nested:f,consent:d,id:g,trigger:p,entity:v,action:y,timestamp:r,timing:m,source:h}}async function Ie(e){var t,n;const o=f({globalsStatic:{},sessionStatic:{},run:!0},e,{merge:!1,extend:!1}),r=q({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||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:s,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||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var i,c;a.push=function(e,t){return M(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,v=n;const y=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 T(v,l,e);if(t.ignore)return Ee({ok:!0});if(l.consent&&!k(l.consent,e.consent,t.event.consent))return Ee({ok:!0});v=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,v,m,p,a?`source.${a}.next`:void 0);if(null===n.event)return Ee({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=Re(e,o);return Se(e,r,{id:a,ingest:m,respond:p},y)}));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:Ee({ok:!0})}v=n.event}const h=t(v),b=Re(e,h),w=await Se(e,b,{id:a,ingest:m,respond:p},y);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},()=>Ee({ok:!1}))(),"Push",e.hooks,e.logger)}(a,e=>({timing:Math.round((Date.now()-a.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.0.2"},...e})),a.command=(c=Pe,M(async(e,t,n)=>await P(async()=>await c(i,e,t,n),()=>Ee({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=M(l,"StoreGet",e.hooks,e.logger),u.set=M(f,"StoreSet",e.hooks,e.logger),u.delete=M(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]=$e(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 Te(e){e=e||{};const t=await Ie(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 Ee({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,await async function(e,t={}){var n;const o={};for(const[r,s]of Object.entries(t)){const t=await we(e,r,s);if(!t)continue;const a=null==(n=s.config)?void 0:n.require;t.config={...t.config,init:!1,...a?{require:[...a]}:{}},o[r]=t}Object.assign(e.sources,o);for(const t of Object.keys(o)){const n=e.sources[t];n.init&&await P(n.init.bind(n))(),n.config.init=!0,be(n)&&await he(0,n)}return o}(t,e.sources||{});const{consent:r,user:s,globals:a,custom:i}=e;r&&await t.command("consent",r),s&&await t.command("user",s),a&&Object.assign(t.globals,a),i&&Object.assign(t.custom,i),t.config.run&&await t.command("run");let c=n.push;const u=Object.values(t.sources).filter(e=>"elb"!==e.type),l=u.find(e=>e.config.primary);return l?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c}}var Me,Ce=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 Te({...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)}}},Ue=(e,t)=>{const n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},Ne=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;return{type:"dataLayer",config:a,push:o,on:async e=>{if("run"===e&&r&&i>0){!function(e,t,n,o=globalThis.window){const r=t.settings,s=o[(null==r?void 0:r.name)||"dataLayer"];if(Array.isArray(s)&&!V){V=!0;try{const t=null!=n?n:s.length;for(let n=0;n<t;n++)z(e,r,s[n])}finally{V=!1}}}(o,a,i,r),i=0}},init:()=>{if(!r)return;const e=s.name||"dataLayer",t=r[e];i=Array.isArray(t)?t.length:0;!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(V)return a(...t);V=!0;try{for(const n of t)z(e,o,n)}finally{V=!1}return a(...t)}}(o,a,r)},destroy:async()=>{const e=s.name||"dataLayer";r&&r[e]&&Array.isArray(r[e])}}},He=Ne;return Me=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}),Me)})();
|
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({},ye,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=be(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 je({level:void 0!==t.level?(e=t.level,"string"==typeof e?pe[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},v=function(e){return ke(e)?e:void 0},g=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()}}},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];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,r){return _async_to_generator(function(){var o,s,i,c,u,l,f,d,_,v;return _ts_generator(this,function(g){return s=_sliced_to_array((e.name||"").split(" "),2),i=s[0],c=s[1],t&&i&&c?(l="",d=c,_=function(t){if(t)return(n(t)?t:[t]).find(function(t){if(!t.condition)return!0;if(!r)return Boolean(t.condition(e,void 0));var n={event:e,mapping:t,collector:r,logger:r.logger,consent:a(e)&&e.consent||r.consent};return Boolean(t.condition(e,n))})},t[f=i]||(f="*"),[2,((v=t[f])&&(v[d]||(d="*"),u=_(v[d])),u||(f="*",d="*",u=_(null===(o=t[f])||void 0===o?void 0:o[d])),u&&(l="".concat(f," ").concat(d)),{eventMapping:u,mappingKey:l})]):[2,{}]})})()},b=function(e){return _async_to_generator(function(e){var t,o,s,i,c,u,l,f,d,_,v,g,y,b,h,m,w=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:if(t=w.length>1&&void 0!==w[1]?w[1]:{},o=w.length>2&&void 0!==w[2]?w[2]:{},!r(e))return[2];if(c=a(e)&&e.consent||o.consent||(null===(i=o.collector)||void 0===i?void 0:i.consent),u=null!==(s=o.event)&&void 0!==s?s:a(e)?e:{},!o.collector)throw new Error("getMappingValue: context.collector is required");l={event:u,mapping:t,collector:o.collector,logger:o.collector.logger,consent:c},f=n(t)?t:[t],d=!0,_=!1,v=void 0,j.label=1;case 1:j.trys.push([1,6,7,8]),g=f[Symbol.iterator](),j.label=2;case 2:return(d=(y=g.next()).done)?[3,5]:(b=y.value,[4,p(Oe)(e,b,_object_spread_props(_object_spread({},l),{mapping:b}))]);case 3:if(h=j.sent(),r(h))return[2,h];j.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return m=j.sent(),_=!0,v=m,[3,8];case 7:try{d||null==g.return||g.return()}finally{if(_)throw v}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,_,v,g,p;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,event:e})];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,r)];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,event:e})];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,event:e})]:[3,7];case 6:f=h.sent(),h.label=7;case 7:return l=f,d=Boolean(null==c?void 0:c.silent),c?c.ignore?[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!0,silent:d}]:(c.name&&(e.name=c.name),c.data?(v=c.data)?[4,b(e,c.data,{collector:r,event:e})]:[3,9]:[3,10]):[3,10];case 8:v=h.sent(),h.label=9;case 9:_=v,l=a(l)&&a(_)?t(l,_):_,h.label=10;case 10:return(g=null!==(o=null==c?void 0:c.include)&&void 0!==o?o:n.include)&&g.length>0&&(p=function(e,t){var n={},r=t.includes("all")?Object.keys(me):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=me[l];if(f){var d=f(e),_=!0,v=!1,g=void 0;if(a(d))try{for(var p,y=Object.entries(d)[Symbol.iterator]();!(_=(p=y.next()).done);_=!0){var b=_sliced_to_array(p.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){v=!0,g=e}finally{try{_||null==y.return||y.return()}finally{if(v)throw g}}}}}catch(e){s=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(s)throw i}}return n}(e,g),Object.keys(p).length>0&&(l=a(l)?t(p,l):null!=l?l:p)),[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!1,silent: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:Se(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=he(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,r){return _async_to_generator(function(){var o,a,s,c,u,l,f,d,_,v,g;return _ts_generator(this,function(p){switch(p.label){case 0:if(!t)return[2,e];o=e,a=!0,s=!1,c=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),u=Object.entries(t)[Symbol.iterator](),p.label=2;case 2:return(a=(l=u.next()).done)?[3,5]:(f=_sliced_to_array(l.value,2),d=f[0],_=f[1],v=[o,d],[4,b(n,_,{collector:r})]);case 3:o=i.apply(void 0,v.concat([p.sent()])),p.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return g=p.sent(),s=!0,c=g,[3,8];case 7:try{a||null==u.return||u.return()}finally{if(s)throw c}return[7];case 8:return[2,o]}})})()},A=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===g(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"])});g(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 P(e);if(E(e)){var t=Array.from(e);return P(t)}return null},P=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)},E=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length&&e.length>0},q=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},D=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},L=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}},I=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},R=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:M(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]}})})()},T=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({},M(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)]}})})()},M=function(e){return e&&a(e)?e:{}},U=function(e,t){return _async_to_generator(function(){var e,n,r,o,a,s,i,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:if(!t.on||!(null===(e=t.queueOn)||void 0===e?void 0:e.length))return[2];n=t.queueOn,t.queueOn=[],r=!0,o=!1,a=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=n[Symbol.iterator](),d.label=2;case 2:return(r=(i=s.next()).done)?[3,5]:(c=i.value,u=c.type,l=c.data,[4,p(t.on)(u,l)]);case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return f=d.sent(),o=!0,a=f,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2]}})})()},K=function(e){var t;return Boolean(e.config.init)&&!(null===(t=e.config.require)||void 0===t?void 0:t.length)},N=function(t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,v,g,y,h,m,A,C,P,E,L,R,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,g=e(n),y=_?k(_object_spread_props(_object_spread({},_),{full:null===(o=_.full)||void 0===o||o})):void 0,h=xe(f),m=Array.isArray(f)&&w(f)||!h?void 0:I(Ae(h),D(t.transformers)),A=xe(d),C=Array.isArray(d)&&w(d)||!A?void 0:I(Ae(A),D(t.transformers)),P=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,_,p,b,w,k,P,E;return _ts_generator(this,function(L){switch(L.label){case 0:return a=e,(s=null!=C?C:A?I(Ae(A,j(g)),D(t.transformers)):[]).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Ge(t,t.transformers,s,a,g,v,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(c=L.sent()).event)return[2,{ok:!0}];c.respond&&(v=c.respond),a=Array.isArray(c.event)?c.event[0]:c.event,L.label=2;case 2:return y&&(u=q(y,t))?(l=j(g),(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"}}),t)]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=L.sent(),L.label=4;case 4:return[2,(null==v||v(d),{ok:!0})];case 5:"MISS"===f.status&&y.full&&v&&(_=v,p=f.rule.update,b=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),w=f.key,k=f.rule.ttl,v=function(e){S(u,w,e,k),p?o=_async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,x(e,p,b,t)];case 1:return n=r.sent(),_(n),[2]}})})():_(e)}),"MISS"!==f.status||y.full||S(u,f.key,!0,f.rule.ttl),L.label=6;case 6:return P=null!=m?m:h?I(Ae(h,j(g)),D(t.transformers)):[],[4,t.push(a,_object_spread_props(_object_spread({},r),{id:n,ingest:g,respond:v,mapping:i,preChain:P}))];case 7:return E=L.sent(),o?[4,o]:[3,9];case 8:L.sent(),L.label=9;case 9:return[2,E]}})})()},command:t.command,sources:t.sources,elb:t.sources.elb.push,logger:P},u),L={collector:t,logger:P,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(g=e(n))];case 1:return o=s.sent(),a=e(n),g=_object_spread_props(_object_spread({},a,o),{_meta:a._meta}),[2]}})})()},setRespond:function(e){v=e}},[4,p(a)(L)];case 1:return(R=U.sent())?(T=R.type||"unknown",M=t.logger.scope(T).scope(n),[2,(E.logger=M,l&&(R.config=_object_spread_props(_object_spread({},R.config),{primary:l})),R)]):[2]}})})()},H=function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_,v,g,y,b,h,m,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],[4,N(e,u,l)]);case 3:if(!(d=O.sent()))return[3,4];_=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),_?{require:_to_consumable_array(_)}:{}),n[u]=d,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:Object.assign(e.sources,n),v=!0,g=!1,y=void 0,O.label=9;case 9:O.trys.push([9,17,18,19]),b=Object.keys(n)[Symbol.iterator](),O.label=10;case 10:return(v=(h=b.next()).done)?[3,16]:(m=h.value,w=e.sources[m],w.init?[4,p(w.init.bind(w))()]:[3,12]);case 11:O.sent(),O.label=12;case 12:return w.config.init=!0,K(w)?[4,U(0,w)]:[3,14];case 13:O.sent(),O.label=14;case 14:O.label=15;case 15:return v=!0,[3,10];case 16:return[3,19];case 17:return j=O.sent(),g=!0,y=j,[3,19];case 18:try{v||null==b.return||b.return()}finally{if(g)throw y}return[7];case 19:return[2,n]}})}).apply(this,arguments)},G=function(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}},B=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,F(e,t,s),[2]})})()},W=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:te(t.env,t.config.env)};g(t.on)(r,i)}},F=function(e,t,n,r){var o,a,s,i,c;switch(t){case He.Commands.Consent:o=r||e.consent;break;case He.Commands.Session:o=e.session;break;case He.Commands.User:o=r||e.user;break;case He.Commands.Custom:o=r||e.custom;break;case He.Commands.Globals:o=r||e.globals;break;case He.Commands.Config:o=r||e.config;break;case He.Commands.Ready:case He.Commands.Run:default:o=void 0}if(n.length)switch(t){case He.Commands.Consent:a=e,s=n,i=r||a.consent,c=G(a,He.Commands.Consent),s.forEach(function(e){Object.keys(i).filter(function(t){return t in e}).forEach(function(t){g(e[t])(i,c)})});break;case He.Commands.Ready:!function(e,t){if(e.allowed){var n=G(e,He.Commands.Ready);t.forEach(function(e){g(e)(void 0,n)})}}(e,n);break;case He.Commands.Run:!function(e,t){if(e.allowed){var n=G(e,He.Commands.Run);t.forEach(function(e){g(e)(void 0,n)})}}(e,n);break;case He.Commands.Session:!function(e,t){if(e.session){var n=G(e,He.Commands.Session);t.forEach(function(t){g(t)(e.session,n)})}}(e,n);break;default:var u=G(e,t);n.forEach(function(e){"function"==typeof e&&g(e)(o,u)})}},V=function(e,t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,v,g,y,b,h,m,w,j,k,O;return _ts_generator(this,function(S){switch(S.label){case 0:switch(s=n||[],n||(s=e.on[t]||[]),t){case He.Commands.Consent:a=r||e.consent;break;case He.Commands.Session:a=e.session;break;case He.Commands.User:a=r||e.user;break;case He.Commands.Custom:a=r||e.custom;break;case He.Commands.Globals:a=r||e.globals;break;case He.Commands.Config:a=r||e.config;break;case He.Commands.Ready:case He.Commands.Run:default:a=void 0}i=!1,c=!0,u=!1,l=void 0,S.label=1;case 1:S.trys.push([1,7,8,9]),f=Object.values(e.sources)[Symbol.iterator](),S.label=2;case 2:return(c=(d=f.next()).done)?[3,6]:(_=d.value,(null===(v=_.config.require)||void 0===v?void 0:v.length)&&-1!==(g=_.config.require.indexOf(t))&&_.config.require.splice(g,1),_.on?K(_)?(y=!1,[4,p(_.on)(t,a)]):[3,4]:[3,5]);case 3:return y===S.sent()&&(i=!0),[3,5];case 4:_.queueOn=_.queueOn||[],_.queueOn.push({type:t,data:a}),S.label=5;case 5:return c=!0,[3,2];case 6:return[3,9];case 7:return O=S.sent(),u=!0,l=O,[3,9];case 8:try{c||null==f.return||f.return()}finally{if(u)throw l}return[7];case 9:Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],s=r[1];if(s.on){if(!s.config.init)return s.queueOn=s.queueOn||[],void s.queueOn.push({type:t,data:a});W(e,s,o,t,a)}}),b=!0,h=!1,m=void 0,S.label=10;case 10:S.trys.push([10,16,17,18]),w=Object.values(e.sources)[Symbol.iterator](),S.label=11;case 11:return(b=(j=w.next()).done)?[3,15]:(k=j.value,K(k)&&(null===(o=k.queueOn)||void 0===o?void 0:o.length)?[4,U(0,k)]:[3,13]);case 12:S.sent(),S.label=13;case 13:S.label=14;case 14:return b=!0,[3,11];case 15:return[3,18];case 16:return O=S.sent(),h=!0,m=O,[3,18];case 17:try{b||null==w.return||w.return()}finally{if(h)throw m}return[7];case 18:return Object.keys(e.pending.destinations).length>0?[4,function(e,t){return _async_to_generator(function(){var n,r,o,a,s,i,c,u,l,f,d,_;return _ts_generator(this,function(v){n=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(n=(s=a.next()).done);n=!0)i=_sliced_to_array(s.value,2),c=i[0],u=i[1],e.pending.destinations[c]&&!e.destinations[c]&&(f=null===(l=u.config)||void 0===l?void 0:l.require)&&-1!==(d=f.indexOf(t))&&(f.splice(d,1),f.length>0||(delete e.pending.destinations[c],!1!==(_=Z(u)).config.queue&&(_.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=_))}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,t)]:[3,20];case 19:S.sent(),S.label=20;case 20:return[2,(F(e,t,s,r),!i)]}})})()},z=function(e,t,n,r){if(!e)return[];if(t){var o=Ae(t,j(r));return o?I(o,D(n)):[]}return I(e,D(n))},J=function(e,t,n){return _async_to_generator(function(){var r,a,s,i,c,l,f,d,_,v,g,p;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,Y({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(_=n||s||{init:!1},v=l?_object_spread_props(_object_spread({},_),{before:l}):_object_spread({},_),f&&(v=_object_spread_props(_object_spread({},v),{next:f})),d&&(v=_object_spread_props(_object_spread({},v),{cache:d})),g=_object_spread_props(_object_spread({},r),{config:v,env:te(r.env,c)}),!(p=g.config.id))do{p=u(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[p]);return[2,(e.destinations[p]=g,!1!==g.config.queue&&(g.queuePush=_to_consumable_array(e.queue)),$(e,void 0,{},_define_property({},p,g)))]})})()},$=function(n,r,o){return _async_to_generator(function(n,r){var o,a,s,i,u,l,f,d,_,v,g,y,b,h,m,x,A,C,P,E=arguments;return _ts_generator(this,function(D){switch(D.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,_,v,g,y,b,h,m,x,A,C,P,E,D,L,I,R,T,M,U,K,N,H;return _ts_generator(this,function(G){switch(G.label){case 0:if(d.config.disabled)return[2,{id:f,destination:d,skipped:!0}];if(g=(d.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:i})}),d.queuePush=[],r&&g.push(be(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"),!g.length&&!(null===(s=d.queueOn)||void 0===s?void 0:s.length))return[2,{id:f,destination:d,skipped:!0}];if(g.length||!(null===(_=d.queueOn)||void 0===_?void 0:_.length))return[3,5];b=!1,G.label=1;case 1:return G.trys.push([1,3,,4]),[4,Q(n,d,f)];case 2:return b=G.sent(),[3,4];case 3:return h=G.sent(),m=d.type||"unknown",n.logger.scope(m).error("Destination init threw",{error:_instanceof(h,Error)?h.message:String(h)}),[3,4];case 4:return[2,{id:f,destination:d,skipped:!b}];case 5:if(x=[],A=g.filter(function(e){var t=c(d.config.consent,i,e.consent);return!t||(e.consent=t,x.push(e),!1)}),(a=d.queuePush).push.apply(a,_to_consumable_array(A)),!x.length)return[2,{id:f,destination:d,queue:g}];E=!1,G.label=6;case 6:return G.trys.push([6,8,,9]),[4,Q(n,d,f)];case 7:return E=G.sent(),[3,9];case 8:return D=G.sent(),L=d.type||"unknown",n.logger.scope(L).error("Destination init threw",{error:_instanceof(D,Error)?D.message:String(D)}),[3,9];case 9:return E?(d.dlq||(d.dlq=[]),I=d.config.before,R=z(I,I&&w(I)?xe(I):void 0,n.transformers,y),T=d.config.next,M=T&&w(T)?xe(T):void 0,U=null===(v=d.config)||void 0===v?void 0:v.cache,K=U?k(U):void 0,N=K?q(K,n):void 0,H=0,[4,Promise.all(x.map(function(e){return _async_to_generator(function(){var r,a,s,i,c,_,v,g,b,h,m,w,k;return _ts_generator(this,function(x){switch(x.label){case 0:if(e.globals=t(u,e.globals),e.user=t(l,e.user),(null==K?void 0:K.full)&&N){if(a=j(y,e),"HIT"===(null==(s=O(K,N,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,R.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Ge(n,n.transformers,R,e,y,o.respond,"destination.".concat(f,".before"))]:[3,2];case 1:if(null===(_=x.sent()).event)return[2,e];_.respond&&(c=_.respond),i=Array.isArray(_.event)?_.event[0]:_.event,x.label=2;case 2:if(K&&!K.full&&N){if(v=j(y,i),"HIT"===(null==(g=O(K,N,v,"d:".concat(f)))?void 0:g.status))return[2,e];"MISS"===(null==g?void 0:g.status)&&(r={key:g.key,ttl:g.rule.ttl})}return b=Date.now(),h=!1,[4,p(X,function(e){var t=d.type||"unknown";n.logger.scope(t).error("Push failed",{error:e,event:i.name}),C=e,h=!0,d.dlq.push([i,e])})(n,d,f,i,y,c)];case 3:return m=x.sent(),H+=Date.now()-b,r&&N&&void 0===d.config.mock&&S(N,r.key,null==m||m,r.ttl),void 0!==m&&(P=m),h||!T?[3,5]:(void 0!==m&&(y._response=m),(w=z(T,M,n.transformers,y)).length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Ge(n,n.transformers,w,i,y,c,"destination.".concat(f,".next"))]:[3,5]);case 4:(k=x.sent()).respond&&(c=k.respond),x.label=5;case 5:return[2,e]}})})()}))]):[2,{id:f,destination:d,queue:g}];case 10:return[2,(G.sent(),{id:f,destination:d,error:C,response:P,totalDuration:H})]}})})()}))]):[2,Y({ok:!1})];case 1:f=D.sent(),d={},_={},v={},g=!0,y=!1,b=void 0;try{for(h=f[Symbol.iterator]();!(g=(m=h.next()).done);g=!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}),C=n.status.destinations[x.id],P=Date.now(),x.error?(A.error=x.error,v[x.id]=A,C.failed++,C.lastAt=P,C.duration+=x.totalDuration||0,n.status.failed++):x.queue&&x.queue.length?_[x.id]=A:(d[x.id]=A,C.count++,C.lastAt=P,C.duration+=x.totalDuration||0,n.status.out++))}catch(e){y=!0,b=e}finally{try{g||null==h.return||h.return()}finally{if(y)throw b}}return[2,Y(_object_spread({event:r},Object.keys(d).length&&{done:d},Object.keys(_).length&&{queued:_},Object.keys(v).length&&{failed:v}))]}})}).apply(this,arguments)},Q=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d,_,v,g,p;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:te(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)v=_.value,g=v.type,p=v.data,W(e,t,n,g,p)}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]}})})()},X=function(e,t,n,o,a,s){return _async_to_generator(function(){var i,c,u,f,d,_,v,g,p,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({},te(t.env,i.env),s?{respond:s}:{})},void 0!==i.mock?[2,(f.debug("mock",{event:c.event.name}),i.mock)]:(_=c.mapping,v=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 g=b.sent(),[2,(f.debug("push done"),g)];case 3:return t.batches=t.batches||{},t.batches[v]||(p={key:v,events:[],data:[]},t.batches[v]={batched:p,batchFn:l(function(){var r=t.batches[v].batched,o={collector:e,logger:f,id:n,config:i,data:void 0,rule:_,ingest:a,env:_object_spread({},te(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[v]).batched.events.push(c.event),r(c.data)&&y.batched.data.push(c.data),y.batchFn(),[2,!0]}})})()},Y=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},Z=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=L(e,"before").config,c=L(_object_spread_props(_object_spread({},e),{config:i}),"next").config,u=_object_spread({},t.config,r,c);s&&(u.cache=s);var l=te(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},ee=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(v){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]=Z(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)},te=function(e,t){return e||t?t?e&&a(e)&&a(t)?_object_spread({},e,t):t:e:{}},ne=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]}})})()},re=function(e,n,r,i){return _async_to_generator(function(){var c,u,l,f,d,_,v;return _ts_generator(this,function(g){switch(g.label){case 0:switch(l=!1,n){case He.Commands.Config:return[3,1];case He.Commands.Consent:return[3,2];case He.Commands.Custom:return[3,3];case He.Commands.Destination:return[3,4];case He.Commands.Globals:return[3,11];case He.Commands.On:return[3,12];case He.Commands.Ready:return[3,15];case He.Commands.Run:return[3,16];case He.Commands.Session:return[3,18];case He.Commands.Shutdown:return[3,19];case He.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,J(e,r,i)]:[3,6]:[3,10];case 5:return _=c=g.sent(),[3,9];case 6:return(v=o(r.push))?[4,J(e,{code:r},i)]:[3,8];case 7:v=c=g.sent(),g.label=8;case 8:_=v,g.label=9;case 9:g.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,B(e,r,i)]:[3,14];case 13:g.sent(),g.label=14;case 14:return[3,22];case 15:return l=!0,[3,22];case 16:return[4,ae(e,r)];case 17:return c=g.sent(),l=!0,[3,22];case 18:return l=!0,[3,22];case 19:return[4,(p=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=p.logger,[4,ne(p.sources,"source",e)];case 1:return t.sent(),[4,ne(p.destinations,"destination",e)];case 2:return t.sent(),[4,ne(p.transformers,"transformer",e)];case 3:return t.sent(),[4,ne(p.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 20:return g.sent(),[3,22];case 21:a(r)&&(t(e.user,r,{shallow:!1}),u=r,l=!0),g.label=22;case 22:return l?[4,V(e,n,void 0,u)]:[3,25];case 23:return g.sent(),[4,$(e)];case 24:c=g.sent(),g.label=25;case 25:return[2,c||Y({ok:!0})]}var p})})()},oe=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");var a=t.timestamp,s=void 0===a?Date.now():a,i=t.name,c=void 0===i?"".concat(r," ").concat(o):i,u=t.data,l=void 0===u?{}:u,f=t.context,d=void 0===f?{}:f,_=t.globals,v=void 0===_?e.globals:_,g=t.custom,p=void 0===g?{}:g,y=t.user,b=void 0===y?e.user:y,h=t.nested,m=void 0===h?[]:h,w=t.consent,j=void 0===w?e.consent:w,k=t.id,O=void 0===k?function(){for(var e="",t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}():k,S=t.trigger,x=void 0===S?"":S,A=t.entity,C=void 0===A?r:A,P=t.action,E=void 0===P?o:P,q=t.timing,D=void 0===q?0:q,L=t.source;return{name:c,data:l,context:d,globals:v,custom:p,user:b,nested:m,consent:j,id:O,trigger:x,entity:C,action:E,timestamp:s,timing:D,source:void 0===L?{type:"collector",schema:"4"}:L}},ae=function(e,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return e.allowed=!0,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,$(e)];case 1:return[2,r.sent()]}})})()},se=function(n){return _async_to_generator(function(){var r,o,a,s,i,u,l,f,d;return _ts_generator(this,function(v){switch(v.label){case 0:return a=t({globalsStatic:{},sessionStatic:{},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||{},custom:n.custom||{},destinations:{},transformers:{},stores:{},globals:u,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||{},sources:{},pending:{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,p(function(){return _async_to_generator(function(){var a,s,i,u,l,f,d,_,v,g,p,y,b,m,w,j,k,O,S,x,A;return _ts_generator(this,function(C){switch(C.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,v=u,g=r,p=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(g,l,t)]:[3,2];case 1:if((b=C.sent()).ignore)return[2,Y({ok:!0})];if(l.consent&&!c(l.consent,t.consent,b.event.consent))return[2,Y({ok:!0})];g=b.event,C.label=2;case 2:return(null==f?void 0:f.length)&&t.transformers&&Object.keys(t.transformers).length>0?[4,Ge(t,t.transformers,f,g,y,v,s?"source.".concat(s,".next"):void 0)]:[3,6];case 3:return null===(m=C.sent()).event?[2,Y({ok:!0})]:(m.respond&&(v=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=oe(t,r),[2,$(t,o,{id:s,ingest:y,respond:v},p)]})})()}))]:[3,5]);case 4:return j=C.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:Y({ok:!0})];case 5:g=m.event,C.label=6;case 6:return O=n(g),S=oe(t,O),[4,$(t,S,{id:s,ingest:y,respond:v},p)];case 7:return x=C.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 Y({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",schema:"4",version:"4.0.1-next-1778284185788"}},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,p(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 Y({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(l,re),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,_,v,g,p,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,v=l.env,g=void 0===v?{}:v,p=e.logger.scope("store").scope(u),[4,f({collector:e,logger:p,id:u,config:_,env:g})]);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=v.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,v=void 0,g=0,p=[n.transformers,n.destinations,n.sources];g<p.length;g++){var y=p[g];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,v=e}finally{try{d||null==h.return||h.return()}finally{if(_)throw v}}}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,ee(l,n.destinations||{})];case 2:return l.destinations=v.sent(),[4,function(t){return _async_to_generator(function(t){var n,r,o,a,s,i,c,u,l,f,d,_,v,g,p,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,v=void 0===_?{}:_,g=L(f,"before"),p=g.config,y=L(_object_spread_props(_object_spread({},f),{config:p}),"next"),b=y.config,h=Object.keys(v).length>0?_object_spread_props(_object_spread({},b),{env:v}):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:v},[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=v.sent(),l)]}})})()},ie=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,se(e=e||{})];case 1:return t=f.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,Y({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,H(t,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,s=e.globals,i=e.custom,o?[4,t.command("consent",o)]:[3,4];case 3:f.sent(),f.label=4;case 4:return a?[4,t.command("user",a)]:[3,6];case 5:f.sent(),f.label=6;case 6:return s&&Object.assign(t.globals,s),i&&Object.assign(t.custom,i),t.config.run?[4,t.command("run")]:[3,8];case 7:f.sent(),f.label=8;case 8:return c=n.push,u=Object.values(t.sources).filter(function(e){return"elb"!==e.type}),[2,((l=u.find(function(e){return e.config.primary}))?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c})]}})})()},ce=Object.defineProperty,ue=Object.getOwnPropertyDescriptor,le=Object.getOwnPropertyNames,fe=Object.prototype.hasOwnProperty,de=function(e,t){for(var n in t)ce(e,n,{get:t[n],enumerable:!0})},_e={};de(_e,{SourceDataLayer:function(){return Pe},createTrigger:function(){return We},default:function(){return ze},env:function(){return Ee},sourceDataLayer:function(){return Ve},step:function(){return Re},trigger:function(){return Fe}});var ve=Object.defineProperty;!function(e,t){for(var n in t)ve(e,n,{get:t[n],enumerable:!0})}({},{Level:function(){return pe}});var ge,pe=((ge=pe||{})[ge.ERROR=0]="ERROR",ge[ge.WARN=1]="WARN",ge[ge.INFO=2]="INFO",ge[ge.DEBUG=3]="DEBUG",ge),ye={merge:!0,shallow:!0,extend:!0};function be(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]=be(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(be(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 he(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 _,v=a[Symbol.iterator]();!(l=(_=v.next()).done);l=!0){var g=he(_.value,c,t);u.push(g)}}catch(e){f=!0,d=e}finally{try{l||null==v.return||v.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 me={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},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing}}},we=function(e,t,n,r){var o="".concat(pe[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 je(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,we):we(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,we):we(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 je({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function ke(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(ke)||a(e)&&Object.values(e).every(ke)}function Oe(e,t,o){return _async_to_generator(function(){return _ts_generator(this,function(a){return[2,(n(t)?t:[t]).reduce(function(t,a){return _async_to_generator(function(){var i,u,l,f,d,_,g,y,h,m,w,j,k,O,S,x,A,C,P,E,q,D;return _ts_generator(this,function(L){switch(L.label){case 0:return[4,t];case 1:return(i=L.sent())?[2,i]:(u=s(a)?{key:a}:a,Object.keys(u).length?(l=u.condition,f=u.consent,d=u.fn,_=u.key,g=u.loop,y=u.map,h=u.set,m=u.validate,w=u.value,j=_object_spread_props(_object_spread({},o),{mapping:a}),(k=l)?[4,p(l)(e,j)]:[3,3]):[2]);case 2:k=!L.sent(),L.label=3;case 3:return k?[2]:f&&!c(f,j.consent)?[2,w]:(O=r(w)?w:e,d?[4,p(d)(e,j)]:[3,5]);case 4:O=L.sent(),L.label=5;case 5:return _&&(O=he(e,_,w)),g?(S=_sliced_to_array(g,2),x=S[0],A=S[1],"this"!==x?[3,6]:(P=[e],[3,8])):[3,11];case 6:return[4,b(e,x,j)];case 7:P=L.sent(),L.label=8;case 8:return n(C=P)?[4,Promise.all(C.map(function(e){return b(e,A,j)}))]:[3,10];case 9:O=L.sent().filter(r),L.label=10;case 10:return[3,17];case 11:return y?[4,Object.entries(y).reduce(function(t,n){var o=_sliced_to_array(n,2),a=o[0],s=o[1];return _async_to_generator(function(){var n,o;return _ts_generator(this,function(i){switch(i.label){case 0:return[4,t];case 1:return n=i.sent(),[4,b(e,s,j)];case 2:return o=i.sent(),[2,(r(o)&&(n[a]=o),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=L.sent(),[3,16];case 13:return(E=h)?[4,Promise.all(h.map(function(t){return Oe(e,t,j)}))]:[3,15];case 14:E=O=L.sent(),L.label=15;case 15:L.label=16;case 16:L.label=17;case 17:return(q=m)?[4,p(m)(O,j)]:[3,19];case 18:q=!L.sent(),L.label=19;case 19:return q&&(O=void 0),D=v(O),[2,r(D)?D:v(w)]}})})()},Promise.resolve(void 0))]})})()}function Se(e){if("*"===e)return function(){return!0};if("and"in e){var t=e.and.map(Se);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(Se);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=he(e,t),r=a(n);return o?!r:r}}(e)}function xe(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:Se(e.match),next:xe(e.next)}})}:{type:"chain",value:e}}}}function Ae(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 Ae(i.next,t)}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}}}var Ce=!1,Pe={},Ee={};de(Ee,{push:function(){return Ie}});var qe=function(){},De=function(){return function(){return Promise.resolve({ok:!0})}},Le={error:qe,warn:qe,info:qe,debug:qe,throw:function(e){throw"string"==typeof e?new Error(e):e},json:qe,scope:function(){return Le}},Ie={get push(){return De()},get command(){return De()},get elb(){return De()},get window(){return{dataLayer:[],addEventListener:qe,removeEventListener:qe}},logger:Le},Re={};de(Re,{consentUpdate:function(){return Me},directEvent:function(){return Ne},gtagAddToCart:function(){return Ue},gtagPurchase:function(){return Te},gtagViewItem:function(){return Ke}});var Te={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}]}}]]},Me={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"}}]]},Ue={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}]}}]]},Ke={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}]}}]]},Ne={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"}}]]},He={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 Ge(t,n,r,o,a,s,i){return _async_to_generator(function(){var c,u,l,f,d,_,v,g,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,_,v,y,b,h,m,x,A,C,P,E,L,M,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=g.value,(v=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,p(R)(t,v,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=v.config)||void 0===l||null===(s=l.chainMocks)||void 0===s?void 0:s[i]))return y=v.config.chainMocks[i],t.logger.scope("transformer:".concat(v.type||"unknown")).debug("chainMock",{chain:i}),c=y,[2,"continue"];if(void 0!==(null===(f=v.config)||void 0===f?void 0:f.mock))return t.logger.scope("transformer:".concat(v.type||"unknown")).debug("mock"),c=v.config.mock,[2,"continue"];if(null===(d=v.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(b=null===(_=v.config)||void 0===_?void 0:_.cache,h=b?k(b):void 0,m=h?q(h,t):void 0,x=void 0,h&&m){if(A=j(a,c),"HIT"===(null==(C=O(h,m,A,"t:".concat(o)))?void 0:C.status)&&C.value)return c=C.value,h.full?[2,{v:{event:c,respond:u}}]:[2,"continue"];"MISS"===(null==C?void 0:C.status)&&(x={key:C.key,ttl:C.rule.ttl})}return(P=v.config.before)&&(E=I("string"==typeof P||Array.isArray(P)&&!w(P)?P:Ae(xe(P),j(a,c))||void 0,D(n))).length>0?[4,Ge(t,n,E,c,a,u,i)]:[3,3];case 2:if(null===(M=ie.sent()).event)return[2,{v:{event:null,respond:null!==(L=M.respond)&&void 0!==L?L:u}}];M.respond&&(u=M.respond),c=Array.isArray(M.event)?M.event[0]:M.event,ie.label=3;case 3:return[4,p(T,function(e){return t.logger.scope("transformer:".concat(v.type||"unknown")).error("Push failed",{error:e}),!1})(t,v,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=xe(r.next),l=Ae(f,j(s,o))),l&&(d=I(l,D(n))).length>0?[2,Ge(t,n,d,o,s,u,i)]:[2,{event:o,respond:u}]):[2,K.length>0?Ge(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=xe(Z),ee=Ae(te,j(a,c)))?[2,{v:(ne=I(ee,D(n))).length>0?Ge(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)&&v.config.next&&w(v.config.next)?(re=v.config.next,oe=xe(re),(ae=Ae(oe,j(a,c)))&&(se=I(ae,D(n))).length>0?[2,{v:Ge(t,n,se,c,a,u,i)}]:[2,{v:{event:c,respond:u}}]):[2]}})},v=r[Symbol.iterator](),h.label=2;case 2:return(l=(g=v.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==v.return||v.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var Be,We=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,_,v,g;return _ts_generator(this,function(p){switch(p.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,ie(_object_spread_props(_object_spread({},o),{run:null===(r=o.run)||void 0===r||r}))];case 1:v=p.sent(),t={collector:v.collector,elb:v.elb},p.label=2;case 2:return(g=window).dataLayer||(g.dataLayer=[]),g.dataLayer.push(n),[2]}})})()}},[2,{get flow(){return t},trigger:n}]})})()},Fe=function(e,t){var n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},Ve=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u;return _ts_generator(this,function(l){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),i=0,c=function(){if(o){var e=a.name||"dataLayer",t=o[e];i=Array.isArray(t)?t.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(Ce)return s.apply(void 0,_to_consumable_array(n));Ce=!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;A(e,r,f)}}catch(e){i=!0,c=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw c}}}finally{Ce=!1}return s.apply(void 0,_to_consumable_array(n))}}}(r,s,o)}},u=function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){return"run"===e&&o&&i>0&&(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)&&!Ce){Ce=!0;try{for(var s=null!=n?n:a.length,i=0;i<s;i++)A(e,o,a[i])}finally{Ce=!1}}}(r,s,i,o),i=0),[2]})})()},[2,{type:"dataLayer",config:s={settings:a},push:r,on:u,init:c,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]})})()}}]})})()},ze=Ve;return Be=_e,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;fe.call(e,o)||o===n||ce(e,o,{get:function(){return t[o]},enumerable:!(r=ue(t,o))||r.enumerable})},u=le(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}(ce({},"__esModule",{value:!0}),Be)}();
|
|
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({},be,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=he(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 ke({level:void 0!==t.level?(e=t.level,"string"==typeof e?ye[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},v=function(e){return Oe(e)?e:void 0},g=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()}}},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];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,r){return _async_to_generator(function(){var o,s,i,c,u,l,f,d,_,v;return _ts_generator(this,function(g){return s=_sliced_to_array((e.name||"").split(" "),2),i=s[0],c=s[1],t&&i&&c?(l="",d=c,_=function(t){if(t)return(n(t)?t:[t]).find(function(t){if(!t.condition)return!0;if(!r)return Boolean(t.condition(e,void 0));var n={event:e,mapping:t,collector:r,logger:r.logger,consent:a(e)&&e.consent||r.consent};return Boolean(t.condition(e,n))})},t[f=i]||(f="*"),[2,((v=t[f])&&(v[d]||(d="*"),u=_(v[d])),u||(f="*",d="*",u=_(null===(o=t[f])||void 0===o?void 0:o[d])),u&&(l="".concat(f," ").concat(d)),{eventMapping:u,mappingKey:l})]):[2,{}]})})()},b=function(e){return _async_to_generator(function(e){var t,o,s,i,c,u,l,f,d,_,v,g,y,b,h,m,w=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:if(t=w.length>1&&void 0!==w[1]?w[1]:{},o=w.length>2&&void 0!==w[2]?w[2]:{},!r(e))return[2];if(c=a(e)&&e.consent||o.consent||(null===(i=o.collector)||void 0===i?void 0:i.consent),u=null!==(s=o.event)&&void 0!==s?s:a(e)?e:{},!o.collector)throw new Error("getMappingValue: context.collector is required");l={event:u,mapping:t,collector:o.collector,logger:o.collector.logger,consent:c},f=n(t)?t:[t],d=!0,_=!1,v=void 0,j.label=1;case 1:j.trys.push([1,6,7,8]),g=f[Symbol.iterator](),j.label=2;case 2:return(d=(y=g.next()).done)?[3,5]:(b=y.value,[4,p(Se)(e,b,_object_spread_props(_object_spread({},l),{mapping:b}))]);case 3:if(h=j.sent(),r(h))return[2,h];j.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return m=j.sent(),_=!0,v=m,[3,8];case 7:try{d||null==g.return||g.return()}finally{if(_)throw v}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,_,v,g,p;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,event:e})];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,r)];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,event:e})];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,event:e})]:[3,7];case 6:f=h.sent(),h.label=7;case 7:return l=f,d=Boolean(null==c?void 0:c.silent),c?c.ignore?[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!0,silent:d}]:(c.name&&(e.name=c.name),c.data?(v=c.data)?[4,b(e,c.data,{collector:r,event:e})]:[3,9]:[3,10]):[3,10];case 8:v=h.sent(),h.label=9;case 9:_=v,l=a(l)&&a(_)?t(l,_):_,h.label=10;case 10:return(g=null!==(o=null==c?void 0:c.include)&&void 0!==o?o:n.include)&&g.length>0&&(p=function(e,t){var n={},r=t.includes("all")?Object.keys(we):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=we[l];if(f){var d=f(e),_=!0,v=!1,g=void 0;if(a(d))try{for(var p,y=Object.entries(d)[Symbol.iterator]();!(_=(p=y.next()).done);_=!0){var b=_sliced_to_array(p.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){v=!0,g=e}finally{try{_||null==y.return||y.return()}finally{if(v)throw g}}}}}catch(e){s=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(s)throw i}}return n}(e,g),Object.keys(p).length>0&&(l=a(l)?t(p,l):null!=l?l:p)),[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!1,silent: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:xe(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=me(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,r){return _async_to_generator(function(){var o,a,s,c,u,l,f,d,_,v,g;return _ts_generator(this,function(p){switch(p.label){case 0:if(!t)return[2,e];o=e,a=!0,s=!1,c=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),u=Object.entries(t)[Symbol.iterator](),p.label=2;case 2:return(a=(l=u.next()).done)?[3,5]:(f=_sliced_to_array(l.value,2),d=f[0],_=f[1],v=[o,d],[4,b(n,_,{collector:r})]);case 3:o=i.apply(void 0,v.concat([p.sent()])),p.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return g=p.sent(),s=!0,c=g,[3,8];case 7:try{a||null==u.return||u.return()}finally{if(s)throw c}return[7];case 8:return[2,o]}})})()},A=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===g(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"])});g(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 P(e);if(E(e)){var t=Array.from(e);return P(t)}return null},P=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)},E=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length&&e.length>0},q=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},D=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},L=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}},I=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},R=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]}})})()},T=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)]}})})()},M=function(e,t){var n;if(e)return"string"==typeof e||Array.isArray(e)&&!w(e)?e:null!==(n=Ce(Ae(e),t))&&void 0!==n?n:void 0},U=function(e){return e&&a(e)?e:{}},K=function(e,t){return _async_to_generator(function(){var e,n,r,o,a,s,i,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:if(!t.on||!(null===(e=t.queueOn)||void 0===e?void 0:e.length))return[2];n=t.queueOn,t.queueOn=[],r=!0,o=!1,a=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=n[Symbol.iterator](),d.label=2;case 2:return(r=(i=s.next()).done)?[3,5]:(c=i.value,u=c.type,l=c.data,[4,p(t.on)(u,l)]);case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return f=d.sent(),o=!0,a=f,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2]}})})()},N=function(e){var t;return Boolean(e.config.init)&&!(null===(t=e.config.require)||void 0===t?void 0:t.length)},H=function(t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,v,g,y,h,m,A,C,P,E,L,R,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,g=e(n),y=_?k(_object_spread_props(_object_spread({},_),{full:null===(o=_.full)||void 0===o||o})):void 0,h=Ae(f),m=Array.isArray(f)&&w(f)||!h?void 0:I(Ce(h),D(t.transformers)),A=Ae(d),C=Array.isArray(d)&&w(d)||!A?void 0:I(Ce(A),D(t.transformers)),P=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,_,p,b,w,k,P,E;return _ts_generator(this,function(L){switch(L.label){case 0:return a=e,(s=null!=C?C:A?I(Ce(A,j(g)),D(t.transformers)):[]).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Be(t,t.transformers,s,a,g,v,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(c=L.sent()).event)return[2,{ok:!0}];c.respond&&(v=c.respond),a=Array.isArray(c.event)?c.event[0]:c.event,L.label=2;case 2:return y&&(u=q(y,t))?(l=j(g),(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"}}),t)]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=L.sent(),L.label=4;case 4:return[2,(null==v||v(d),{ok:!0})];case 5:"MISS"===f.status&&y.full&&v&&(_=v,p=f.rule.update,b=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),w=f.key,k=f.rule.ttl,v=function(e){S(u,w,e,k),p?o=_async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,x(e,p,b,t)];case 1:return n=r.sent(),_(n),[2]}})})():_(e)}),"MISS"!==f.status||y.full||S(u,f.key,!0,f.rule.ttl),L.label=6;case 6:return P=null!=m?m:h?I(Ce(h,j(g)),D(t.transformers)):[],[4,t.push(a,_object_spread_props(_object_spread({},r),{id:n,ingest:g,respond:v,mapping:i,preChain:P}))];case 7:return E=L.sent(),o?[4,o]:[3,9];case 8:L.sent(),L.label=9;case 9:return[2,E]}})})()},command:t.command,sources:t.sources,elb:t.sources.elb.push,logger:P},u),L={collector:t,logger:P,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(g=e(n))];case 1:return o=s.sent(),a=e(n),g=_object_spread_props(_object_spread({},a,o),{_meta:a._meta}),[2]}})})()},setRespond:function(e){v=e}},[4,p(a)(L)];case 1:return(R=U.sent())?(T=R.type||"unknown",M=t.logger.scope(T).scope(n),[2,(E.logger=M,l&&(R.config=_object_spread_props(_object_spread({},R.config),{primary:l})),R)]):[2]}})})()},G=function(e){return _async_to_generator(function(e){var t,n,r,o,a,s,i,c,u,l,f,d,_,v,g,y,b,h,m,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],[4,H(e,u,l)]);case 3:if(!(d=O.sent()))return[3,4];_=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),_?{require:_to_consumable_array(_)}:{}),n[u]=d,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:Object.assign(e.sources,n),v=!0,g=!1,y=void 0,O.label=9;case 9:O.trys.push([9,17,18,19]),b=Object.keys(n)[Symbol.iterator](),O.label=10;case 10:return(v=(h=b.next()).done)?[3,16]:(m=h.value,w=e.sources[m],w.init?[4,p(w.init.bind(w))()]:[3,12]);case 11:O.sent(),O.label=12;case 12:return w.config.init=!0,N(w)?[4,K(0,w)]:[3,14];case 13:O.sent(),O.label=14;case 14:O.label=15;case 15:return v=!0,[3,10];case 16:return[3,19];case 17:return j=O.sent(),g=!0,y=j,[3,19];case 18:try{v||null==b.return||b.return()}finally{if(g)throw y}return[7];case 19:return[2,n]}})}).apply(this,arguments)},B=function(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}},W=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,V(e,t,s),[2]})})()},F=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:ne(t.env,t.config.env)};g(t.on)(r,i)}},V=function(e,t,n,r){var o,a,s,i,c;switch(t){case Ge.Commands.Consent:o=r||e.consent;break;case Ge.Commands.Session:o=e.session;break;case Ge.Commands.User:o=r||e.user;break;case Ge.Commands.Custom:o=r||e.custom;break;case Ge.Commands.Globals:o=r||e.globals;break;case Ge.Commands.Config:o=r||e.config;break;case Ge.Commands.Ready:case Ge.Commands.Run:default:o=void 0}if(n.length)switch(t){case Ge.Commands.Consent:a=e,s=n,i=r||a.consent,c=B(a,Ge.Commands.Consent),s.forEach(function(e){Object.keys(i).filter(function(t){return t in e}).forEach(function(t){g(e[t])(i,c)})});break;case Ge.Commands.Ready:!function(e,t){if(e.allowed){var n=B(e,Ge.Commands.Ready);t.forEach(function(e){g(e)(void 0,n)})}}(e,n);break;case Ge.Commands.Run:!function(e,t){if(e.allowed){var n=B(e,Ge.Commands.Run);t.forEach(function(e){g(e)(void 0,n)})}}(e,n);break;case Ge.Commands.Session:!function(e,t){if(e.session){var n=B(e,Ge.Commands.Session);t.forEach(function(t){g(t)(e.session,n)})}}(e,n);break;default:var u=B(e,t);n.forEach(function(e){"function"==typeof e&&g(e)(o,u)})}},z=function(e,t,n,r){return _async_to_generator(function(){var o,a,s,i,c,u,l,f,d,_,v,g,y,b,h,m,w,j,k,O;return _ts_generator(this,function(S){switch(S.label){case 0:switch(s=n||[],n||(s=e.on[t]||[]),t){case Ge.Commands.Consent:a=r||e.consent;break;case Ge.Commands.Session:a=e.session;break;case Ge.Commands.User:a=r||e.user;break;case Ge.Commands.Custom:a=r||e.custom;break;case Ge.Commands.Globals:a=r||e.globals;break;case Ge.Commands.Config:a=r||e.config;break;case Ge.Commands.Ready:case Ge.Commands.Run:default:a=void 0}i=!1,c=!0,u=!1,l=void 0,S.label=1;case 1:S.trys.push([1,7,8,9]),f=Object.values(e.sources)[Symbol.iterator](),S.label=2;case 2:return(c=(d=f.next()).done)?[3,6]:(_=d.value,(null===(v=_.config.require)||void 0===v?void 0:v.length)&&-1!==(g=_.config.require.indexOf(t))&&_.config.require.splice(g,1),_.on?N(_)?(y=!1,[4,p(_.on)(t,a)]):[3,4]:[3,5]);case 3:return y===S.sent()&&(i=!0),[3,5];case 4:_.queueOn=_.queueOn||[],_.queueOn.push({type:t,data:a}),S.label=5;case 5:return c=!0,[3,2];case 6:return[3,9];case 7:return O=S.sent(),u=!0,l=O,[3,9];case 8:try{c||null==f.return||f.return()}finally{if(u)throw l}return[7];case 9:Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],s=r[1];if(s.on){if(!s.config.init)return s.queueOn=s.queueOn||[],void s.queueOn.push({type:t,data:a});F(e,s,o,t,a)}}),b=!0,h=!1,m=void 0,S.label=10;case 10:S.trys.push([10,16,17,18]),w=Object.values(e.sources)[Symbol.iterator](),S.label=11;case 11:return(b=(j=w.next()).done)?[3,15]:(k=j.value,N(k)&&(null===(o=k.queueOn)||void 0===o?void 0:o.length)?[4,K(0,k)]:[3,13]);case 12:S.sent(),S.label=13;case 13:S.label=14;case 14:return b=!0,[3,11];case 15:return[3,18];case 16:return O=S.sent(),h=!0,m=O,[3,18];case 17:try{b||null==w.return||w.return()}finally{if(h)throw m}return[7];case 18:return Object.keys(e.pending.destinations).length>0?[4,function(e,t){return _async_to_generator(function(){var n,r,o,a,s,i,c,u,l,f,d,_;return _ts_generator(this,function(v){n=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(n=(s=a.next()).done);n=!0)i=_sliced_to_array(s.value,2),c=i[0],u=i[1],e.pending.destinations[c]&&!e.destinations[c]&&(f=null===(l=u.config)||void 0===l?void 0:l.require)&&-1!==(d=f.indexOf(t))&&(f.splice(d,1),f.length>0||(delete e.pending.destinations[c],!1!==(_=ee(u)).config.queue&&(_.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=_))}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,t)]:[3,20];case 19:S.sent(),S.label=20;case 20:return[2,(V(e,t,s,r),!i)]}})})()},J=function(e,t,n,r){if(!e)return[];if(t){var o=Ce(t,j(r));return o?I(o,n):[]}return w(e)?[]:I(e,n)},$=function(e,t,n){return _async_to_generator(function(){var r,a,s,i,c,l,f,d,_,v,g,p;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,Z({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(_=n||s||{init:!1},v=l?_object_spread_props(_object_spread({},_),{before:l}):_object_spread({},_),f&&(v=_object_spread_props(_object_spread({},v),{next:f})),d&&(v=_object_spread_props(_object_spread({},v),{cache:d})),g=_object_spread_props(_object_spread({},r),{config:v,env:ne(r.env,c)}),!(p=g.config.id))do{p=u(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[p]);return[2,(e.destinations[p]=g,!1!==g.config.queue&&(g.queuePush=_to_consumable_array(e.queue)),Q(e,void 0,{},_define_property({},p,g)))]})})()},Q=function(n,r,o){return _async_to_generator(function(n,r){var o,a,s,i,u,l,f,d,_,v,g,y,b,h,m,x,A,C,P,E,L=arguments;return _ts_generator(this,function(I){switch(I.label){case 0:return o=L.length>2&&void 0!==L[2]?L[2]:{},a=L.length>3?L[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),f=n.transformers?D(n.transformers):{},[4,Promise.all(Object.entries(a||{}).map(function(a){var s=_sliced_to_array(a,2),d=s[0],_=s[1];return _async_to_generator(function(){var a,s,v,g,y,b,h,m,x,A,C,P,E,D,L,I,R,T,M,U,K,N,H,G;return _ts_generator(this,function(B){switch(B.label){case 0:if(_.config.disabled)return[2,{id:d,destination:_,skipped:!0}];if(y=(_.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:i})}),_.queuePush=[],r&&y.push(he(r)),b=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"),!y.length&&!(null===(s=_.queueOn)||void 0===s?void 0:s.length))return[2,{id:d,destination:_,skipped:!0}];if(y.length||!(null===(v=_.queueOn)||void 0===v?void 0:v.length))return[3,5];h=!1,B.label=1;case 1:return B.trys.push([1,3,,4]),[4,X(n,_,d)];case 2:return h=B.sent(),[3,4];case 3:return m=B.sent(),x=_.type||"unknown",n.logger.scope(x).error("Destination init threw",{error:_instanceof(m,Error)?m.message:String(m)}),[3,4];case 4:return[2,{id:d,destination:_,skipped:!h}];case 5:if(A=[],C=y.filter(function(e){var t=c(_.config.consent,i,e.consent);return!t||(e.consent=t,A.push(e),!1)}),(a=_.queuePush).push.apply(a,_to_consumable_array(C)),!A.length)return[2,{id:d,destination:_,queue:y}];D=!1,B.label=6;case 6:return B.trys.push([6,8,,9]),[4,X(n,_,d)];case 7:return D=B.sent(),[3,9];case 8:return L=B.sent(),I=_.type||"unknown",n.logger.scope(I).error("Destination init threw",{error:_instanceof(L,Error)?L.message:String(L)}),[3,9];case 9:return D?(_.dlq||(_.dlq=[]),R=_.config.before,T=J(R,R&&w(R)?Ae(R):void 0,f,b),M=_.config.next,U=M&&w(M)?Ae(M):void 0,K=null===(g=_.config)||void 0===g?void 0:g.cache,N=K?k(K):void 0,H=N?q(N,n):void 0,G=0,[4,Promise.all(A.map(function(e){return _async_to_generator(function(){var r,a,s,i,c,v,g,y,h,m,w,k,x;return _ts_generator(this,function(A){switch(A.label){case 0:if(e.globals=t(u,e.globals),e.user=t(l,e.user),(null==N?void 0:N.full)&&H){if(a=j(b,e),"HIT"===(null==(s=O(N,H,a,"d:".concat(d)))?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,T.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Be(n,n.transformers,T,e,b,o.respond,"destination.".concat(d,".before"))]:[3,2];case 1:if(null===(v=A.sent()).event)return[2,e];v.respond&&(c=v.respond),i=Array.isArray(v.event)?v.event[0]:v.event,A.label=2;case 2:if(N&&!N.full&&H){if(g=j(b,i),"HIT"===(null==(y=O(N,H,g,"d:".concat(d)))?void 0:y.status))return[2,e];"MISS"===(null==y?void 0:y.status)&&(r={key:y.key,ttl:y.rule.ttl})}return h=Date.now(),m=!1,[4,p(Y,function(e){var t=_.type||"unknown";n.logger.scope(t).error("Push failed",{error:e,event:i.name}),P=e,m=!0,_.dlq.push([i,e])})(n,_,d,i,b,c)];case 3:return w=A.sent(),G+=Date.now()-h,r&&H&&void 0===_.config.mock&&S(H,r.key,null==w||w,r.ttl),void 0!==w&&(E=w),m||!M?[3,5]:(void 0!==w&&(b._response=w),(k=J(M,U,f,b)).length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Be(n,n.transformers,k,i,b,c,"destination.".concat(d,".next"))]:[3,5]);case 4:(x=A.sent()).respond&&(c=x.respond),A.label=5;case 5:return[2,e]}})})()}))]):[2,{id:d,destination:_,queue:y}];case 10:return[2,(B.sent(),{id:d,destination:_,error:P,response:E,totalDuration:G})]}})})()}))]):[2,Z({ok:!1})];case 1:d=I.sent(),_={},v={},g={},y=!0,b=!1,h=void 0;try{for(m=d[Symbol.iterator]();!(y=(x=m.next()).done);y=!0)(A=x.value).skipped||(C={type:A.destination.type||"unknown",data:A.response},n.status.destinations[A.id]||(n.status.destinations[A.id]={count:0,failed:0,duration:0}),P=n.status.destinations[A.id],E=Date.now(),A.error?(C.error=A.error,g[A.id]=C,P.failed++,P.lastAt=E,P.duration+=A.totalDuration||0,n.status.failed++):A.queue&&A.queue.length?v[A.id]=C:(_[A.id]=C,P.count++,P.lastAt=E,P.duration+=A.totalDuration||0,n.status.out++))}catch(e){b=!0,h=e}finally{try{y||null==m.return||m.return()}finally{if(b)throw h}}return[2,Z(_object_spread({event:r},Object.keys(_).length&&{done:_},Object.keys(v).length&&{queued:v},Object.keys(g).length&&{failed:g}))]}})}).apply(this,arguments)},X=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,i,c,u,l,f,d,_,v,g,p;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:ne(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)v=_.value,g=v.type,p=v.data,F(e,t,n,g,p)}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]}})})()},Y=function(e,t,n,o,a,s){return _async_to_generator(function(){var i,c,u,f,d,_,v,g,p,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({},ne(t.env,i.env),s?{respond:s}:{})},void 0!==i.mock?[2,(f.debug("mock",{event:c.event.name}),i.mock)]:(_=c.mapping,v=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 g=b.sent(),[2,(f.debug("push done"),g)];case 3:return t.batches=t.batches||{},t.batches[v]||(p={key:v,events:[],data:[]},t.batches[v]={batched:p,batchFn:l(function(){var r=t.batches[v].batched,o={collector:e,logger:f,id:n,config:i,data:void 0,rule:_,ingest:a,env:_object_spread({},ne(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[v]).batched.events.push(c.event),r(c.data)&&y.batched.data.push(c.data),y.batchFn(),[2,!0]}})})()},Z=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},ee=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=L(e,"before").config,c=L(_object_spread_props(_object_spread({},e),{config:i}),"next").config,u=_object_spread({},t.config,r,c);s&&(u.cache=s);var l=ne(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},te=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(v){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]=ee(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)},ne=function(e,t){return e||t?t?e&&a(e)&&a(t)?_object_spread({},e,t):t:e:{}},re=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]}})})()},oe=function(e,n,r,i){return _async_to_generator(function(){var c,u,l,f,d,_,v;return _ts_generator(this,function(g){switch(g.label){case 0:switch(l=!1,n){case Ge.Commands.Config:return[3,1];case Ge.Commands.Consent:return[3,2];case Ge.Commands.Custom:return[3,3];case Ge.Commands.Destination:return[3,4];case Ge.Commands.Globals:return[3,11];case Ge.Commands.On:return[3,12];case Ge.Commands.Ready:return[3,15];case Ge.Commands.Run:return[3,16];case Ge.Commands.Session:return[3,18];case Ge.Commands.Shutdown:return[3,19];case Ge.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,$(e,r,i)]:[3,6]:[3,10];case 5:return _=c=g.sent(),[3,9];case 6:return(v=o(r.push))?[4,$(e,{code:r},i)]:[3,8];case 7:v=c=g.sent(),g.label=8;case 8:_=v,g.label=9;case 9:g.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,W(e,r,i)]:[3,14];case 13:g.sent(),g.label=14;case 14:return[3,22];case 15:return l=!0,[3,22];case 16:return[4,se(e,r)];case 17:return c=g.sent(),l=!0,[3,22];case 18:return l=!0,[3,22];case 19:return[4,(p=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=p.logger,[4,re(p.sources,"source",e)];case 1:return t.sent(),[4,re(p.destinations,"destination",e)];case 2:return t.sent(),[4,re(p.transformers,"transformer",e)];case 3:return t.sent(),[4,re(p.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 20:return g.sent(),[3,22];case 21:a(r)&&(t(e.user,r,{shallow:!1}),u=r,l=!0),g.label=22;case 22:return l?[4,z(e,n,void 0,u)]:[3,25];case 23:return g.sent(),[4,Q(e)];case 24:c=g.sent(),g.label=25;case 25:return[2,c||Z({ok:!0})]}var p})})()},ae=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");var a=t.timestamp,s=void 0===a?Date.now():a,i=t.name,c=void 0===i?"".concat(r," ").concat(o):i,u=t.data,l=void 0===u?{}:u,f=t.context,d=void 0===f?{}:f,_=t.globals,v=void 0===_?e.globals:_,g=t.custom,p=void 0===g?{}:g,y=t.user,b=void 0===y?e.user:y,h=t.nested,m=void 0===h?[]:h,w=t.consent,j=void 0===w?e.consent:w,k=t.id,O=void 0===k?function(){for(var e="",t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}():k,S=t.trigger,x=void 0===S?"":S,A=t.entity,C=void 0===A?r:A,P=t.action,E=void 0===P?o:P,q=t.timing,D=void 0===q?0:q,L=t.source;return{name:c,data:l,context:d,globals:v,custom:p,user:b,nested:m,consent:j,id:O,trigger:x,entity:C,action:E,timestamp:s,timing:D,source:void 0===L?{type:"collector",schema:"4"}:L}},se=function(e,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return e.allowed=!0,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,Q(e)];case 1:return[2,r.sent()]}})})()},ie=function(n){return _async_to_generator(function(){var r,o,a,s,i,u,l,f,d;return _ts_generator(this,function(v){switch(v.label){case 0:return a=t({globalsStatic:{},sessionStatic:{},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||{},custom:n.custom||{},destinations:{},transformers:{},stores:{},globals:u,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||{},sources:{},pending:{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,p(function(){return _async_to_generator(function(){var a,s,i,u,l,f,d,_,v,g,p,y,b,m,w,j,k,O,S,x,A;return _ts_generator(this,function(C){switch(C.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,v=u,g=r,p=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(g,l,t)]:[3,2];case 1:if((b=C.sent()).ignore)return[2,Z({ok:!0})];if(l.consent&&!c(l.consent,t.consent,b.event.consent))return[2,Z({ok:!0})];g=b.event,C.label=2;case 2:return(null==f?void 0:f.length)&&t.transformers&&Object.keys(t.transformers).length>0?[4,Be(t,t.transformers,f,g,y,v,s?"source.".concat(s,".next"):void 0)]:[3,6];case 3:return null===(m=C.sent()).event?[2,Z({ok:!0})]:(m.respond&&(v=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=ae(t,r),[2,Q(t,o,{id:s,ingest:y,respond:v},p)]})})()}))]:[3,5]);case 4:return j=C.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:Z({ok:!0})];case 5:g=m.event,C.label=6;case 6:return O=n(g),S=ae(t,O),[4,Q(t,S,{id:s,ingest:y,respond:v},p)];case 7:return x=C.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 Z({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",schema:"4",version:"4.0.2"}},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,p(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 Z({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(l,oe),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,_,v,g,p,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,v=l.env,g=void 0===v?{}:v,p=e.logger.scope("store").scope(u),[4,f({collector:e,logger:p,id:u,config:_,env:g})]);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=v.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,v=void 0,g=0,p=[n.transformers,n.destinations,n.sources];g<p.length;g++){var y=p[g];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,v=e}finally{try{d||null==h.return||h.return()}finally{if(_)throw v}}}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,te(l,n.destinations||{})];case 2:return l.destinations=v.sent(),[4,function(t){return _async_to_generator(function(t){var n,r,o,a,s,i,c,u,l,f,d,_,v,g,p,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,v=void 0===_?{}:_,g=L(f,"before"),p=g.config,y=L(_object_spread_props(_object_spread({},f),{config:p}),"next"),b=y.config,h=Object.keys(v).length>0?_object_spread_props(_object_spread({},b),{env:v}):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:v},[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=v.sent(),l)]}})})()},ce=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,ie(e=e||{})];case 1:return t=f.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,Z({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,G(t,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,s=e.globals,i=e.custom,o?[4,t.command("consent",o)]:[3,4];case 3:f.sent(),f.label=4;case 4:return a?[4,t.command("user",a)]:[3,6];case 5:f.sent(),f.label=6;case 6:return s&&Object.assign(t.globals,s),i&&Object.assign(t.custom,i),t.config.run?[4,t.command("run")]:[3,8];case 7:f.sent(),f.label=8;case 8:return c=n.push,u=Object.values(t.sources).filter(function(e){return"elb"!==e.type}),[2,((l=u.find(function(e){return e.config.primary}))?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c})]}})})()},ue=Object.defineProperty,le=Object.getOwnPropertyDescriptor,fe=Object.getOwnPropertyNames,de=Object.prototype.hasOwnProperty,_e=function(e,t){for(var n in t)ue(e,n,{get:t[n],enumerable:!0})},ve={};_e(ve,{SourceDataLayer:function(){return Ee},createTrigger:function(){return Fe},default:function(){return Je},env:function(){return qe},sourceDataLayer:function(){return ze},step:function(){return Te},trigger:function(){return Ve}});var ge=Object.defineProperty;!function(e,t){for(var n in t)ge(e,n,{get:t[n],enumerable:!0})}({},{Level:function(){return ye}});var pe,ye=((pe=ye||{})[pe.ERROR=0]="ERROR",pe[pe.WARN=1]="WARN",pe[pe.INFO=2]="INFO",pe[pe.DEBUG=3]="DEBUG",pe),be={merge:!0,shallow:!0,extend:!0};function he(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]=he(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(he(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 me(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 _,v=a[Symbol.iterator]();!(l=(_=v.next()).done);l=!0){var g=me(_.value,c,t);u.push(g)}}catch(e){f=!0,d=e}finally{try{l||null==v.return||v.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 we={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},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing}}},je=function(e,t,n,r){var o="".concat(ye[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 ke(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,je):je(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,je):je(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 ke({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function Oe(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(Oe)||a(e)&&Object.values(e).every(Oe)}function Se(e,t,o){return _async_to_generator(function(){return _ts_generator(this,function(a){return[2,(n(t)?t:[t]).reduce(function(t,a){return _async_to_generator(function(){var i,u,l,f,d,_,g,y,h,m,w,j,k,O,S,x,A,C,P,E,q,D;return _ts_generator(this,function(L){switch(L.label){case 0:return[4,t];case 1:return(i=L.sent())?[2,i]:(u=s(a)?{key:a}:a,Object.keys(u).length?(l=u.condition,f=u.consent,d=u.fn,_=u.key,g=u.loop,y=u.map,h=u.set,m=u.validate,w=u.value,j=_object_spread_props(_object_spread({},o),{mapping:a}),(k=l)?[4,p(l)(e,j)]:[3,3]):[2]);case 2:k=!L.sent(),L.label=3;case 3:return k?[2]:f&&!c(f,j.consent)?[2,w]:(O=r(w)?w:e,d?[4,p(d)(e,j)]:[3,5]);case 4:O=L.sent(),L.label=5;case 5:return _&&(O=me(e,_,w)),g?(S=_sliced_to_array(g,2),x=S[0],A=S[1],"this"!==x?[3,6]:(P=[e],[3,8])):[3,11];case 6:return[4,b(e,x,j)];case 7:P=L.sent(),L.label=8;case 8:return n(C=P)?[4,Promise.all(C.map(function(e){return b(e,A,j)}))]:[3,10];case 9:O=L.sent().filter(r),L.label=10;case 10:return[3,17];case 11:return y?[4,Object.entries(y).reduce(function(t,n){var o=_sliced_to_array(n,2),a=o[0],s=o[1];return _async_to_generator(function(){var n,o;return _ts_generator(this,function(i){switch(i.label){case 0:return[4,t];case 1:return n=i.sent(),[4,b(e,s,j)];case 2:return o=i.sent(),[2,(r(o)&&(n[a]=o),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=L.sent(),[3,16];case 13:return(E=h)?[4,Promise.all(h.map(function(t){return Se(e,t,j)}))]:[3,15];case 14:E=O=L.sent(),L.label=15;case 15:L.label=16;case 16:L.label=17;case 17:return(q=m)?[4,p(m)(O,j)]:[3,19];case 18:q=!L.sent(),L.label=19;case 19:return q&&(O=void 0),D=v(O),[2,r(D)?D:v(w)]}})})()},Promise.resolve(void 0))]})})()}function xe(e){if("*"===e)return function(){return!0};if("and"in e){var t=e.and.map(xe);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(xe);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=me(e,t),r=a(n);return o?!r:r}}(e)}function Ae(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:xe(e.match),next:Ae(e.next)}})}:{type:"chain",value:e}}}}function Ce(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 Ce(i.next,t)}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}}}var Pe=!1,Ee={},qe={};_e(qe,{push:function(){return Re}});var De=function(){},Le=function(){return function(){return Promise.resolve({ok:!0})}},Ie={error:De,warn:De,info:De,debug:De,throw:function(e){throw"string"==typeof e?new Error(e):e},json:De,scope:function(){return Ie}},Re={get push(){return Le()},get command(){return Le()},get elb(){return Le()},get window(){return{dataLayer:[],addEventListener:De,removeEventListener:De}},logger:Ie},Te={};_e(Te,{consentUpdate:function(){return Ue},directEvent:function(){return He},gtagAddToCart:function(){return Ke},gtagPurchase:function(){return Me},gtagViewItem:function(){return Ne}});var Me={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}]}}]]},Ue={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"}}]]},Ke={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}]}}]]},Ne={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}]}}]]},He={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"}}]]},Ge={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 Be(t,n,r,o,a,s,i){return _async_to_generator(function(){var c,u,l,f,d,_,v,g,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,_,v,y,b,h,m,x,A,C,P,E,L,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=g.value,(v=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,p(R)(t,v,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=v.config)||void 0===l||null===(s=l.chainMocks)||void 0===s?void 0:s[i]))return y=v.config.chainMocks[i],t.logger.scope("transformer:".concat(v.type||"unknown")).debug("chainMock",{chain:i}),c=y,[2,"continue"];if(void 0!==(null===(f=v.config)||void 0===f?void 0:f.mock))return t.logger.scope("transformer:".concat(v.type||"unknown")).debug("mock"),c=v.config.mock,[2,"continue"];if(null===(d=v.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(b=null===(_=v.config)||void 0===_?void 0:_.cache,h=b?k(b):void 0,m=h?q(h,t):void 0,x=void 0,h&&m){if(A=j(a,c),"HIT"===(null==(C=O(h,m,A,"t:".concat(o)))?void 0:C.status)&&C.value)return c=C.value,h.full?[2,{v:{event:c,respond:u}}]:[2,"continue"];"MISS"===(null==C?void 0:C.status)&&(x={key:C.key,ttl:C.rule.ttl})}return(P=v.config.before)&&(E=I(M(P,j(a,c)),D(n))).length>0?[4,Be(t,n,E,c,a,u,i)]:[3,3];case 2:if(null===(U=ie.sent()).event)return[2,{v:{event:null,respond:null!==(L=U.respond)&&void 0!==L?L:u}}];U.respond&&(u=U.respond),c=Array.isArray(U.event)?U.event[0]:U.event,ie.label=3;case 3:return[4,p(T,function(e){return t.logger.scope("transformer:".concat(v.type||"unknown")).error("Push failed",{error:e}),!1})(t,v,o,c,a,u)];case 4:return!1===(K=ie.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(K)?(N=r.slice(r.indexOf(o)+1),[4,Promise.all(K.map(function(r){return _async_to_generator(function(){var o,s,l,f;return _ts_generator(this,function(d){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=M(r.next,j(s,o)))&&(f=I(l,D(n))).length>0?[2,Be(t,n,f,o,s,u,i)]:[2,{event:o,respond:u}]:[2,N.length>0?Be(t,n,N,o,s,u,i):{event:o,respond:u}]})})()}))]):[3,6];case 5:H=ie.sent(),G=u,B=[],W=!0,F=!1,V=void 0;try{for(z=H.flat()[Symbol.iterator]();!(W=(J=z.next()).done);W=!0)if(null!==($=J.value))if($&&"object"==(void 0===$?"undefined":_type_of($))&&"event"in $){if((X=$).respond&&(G=X.respond),null===X.event)continue;Array.isArray(X.event)?(Q=B).push.apply(Q,_to_consumable_array(X.event)):B.push(X.event)}else B.push($)}catch(e){F=!0,V=e}finally{try{W||null==z.return||z.return()}finally{if(F)throw V}}return[2,{v:0===B.length?{event:null,respond:G}:1===B.length?{event:B[0],respond:G}:{event:B,respond:G}}];case 6:if(K&&"object"==(void 0===K?"undefined":_type_of(K))){if(Y=K.event,Z=K.respond,ee=K.next,Z&&(u=Z),ee)return(te=M(ee,j(a,c)))?[2,{v:(ne=I(te,D(n))).length>0?Be(t,n,ne,Y||c,a,u,i):(t.logger.warn("Branch target not found: ".concat(JSON.stringify(ee))),{event:null,respond:u})}]:(Y&&(c=Y),[2,"continue"]);Y&&(c=Y)}return x&&m&&S(m,x.key,c,x.ttl),(!K||"object"==(void 0===K?"undefined":_type_of(K))&&!K.next)&&v.config.next&&w(v.config.next)?(re=v.config.next,oe=Ae(re),(ae=Ce(oe,j(a,c)))&&(se=I(ae,D(n))).length>0?[2,{v:Be(t,n,se,c,a,u,i)}]:[2,{v:{event:c,respond:u}}]):[2]}})},v=r[Symbol.iterator](),h.label=2;case 2:return(l=(g=v.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==v.return||v.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var We,Fe=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,_,v,g;return _ts_generator(this,function(p){switch(p.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,ce(_object_spread_props(_object_spread({},o),{run:null===(r=o.run)||void 0===r||r}))];case 1:v=p.sent(),t={collector:v.collector,elb:v.elb},p.label=2;case 2:return(g=window).dataLayer||(g.dataLayer=[]),g.dataLayer.push(n),[2]}})})()}},[2,{get flow(){return t},trigger:n}]})})()},Ve=function(e,t){var n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},ze=function(e){return _async_to_generator(function(){var t,n,r,o,a,s,i,c,u;return _ts_generator(this,function(l){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),i=0,c=function(){if(o){var e=a.name||"dataLayer",t=o[e];i=Array.isArray(t)?t.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(Pe)return s.apply(void 0,_to_consumable_array(n));Pe=!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;A(e,r,f)}}catch(e){i=!0,c=e}finally{try{a||null==l.return||l.return()}finally{if(i)throw c}}}finally{Pe=!1}return s.apply(void 0,_to_consumable_array(n))}}}(r,s,o)}},u=function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){return"run"===e&&o&&i>0&&(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)&&!Pe){Pe=!0;try{for(var s=null!=n?n:a.length,i=0;i<s;i++)A(e,o,a[i])}finally{Pe=!1}}}(r,s,i,o),i=0),[2]})})()},[2,{type:"dataLayer",config:s={settings:a},push:r,on:u,init:c,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]})})()}}]})})()},Je=ze;return We=ve,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;de.call(e,o)||o===n||ue(e,o,{get:function(){return t[o]},enumerable:!(r=le(t,o))||r.enumerable})},u=fe(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}(ue({},"__esModule",{value:!0}),We)}();
|
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": "4.0.
|
|
4
|
+
"version": "4.0.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": "4.0.
|
|
41
|
-
"@walkeros/collector": "4.0.
|
|
40
|
+
"@walkeros/core": "4.0.2",
|
|
41
|
+
"@walkeros/collector": "4.0.2"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@types/gtag.js": "^0.0.20"
|