@walkeros/web-source-browser 4.1.0-next-1779362268386 → 4.1.0
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/CHANGELOG.md +4 -4
- package/dist/index.browser.js +1 -1
- package/dist/index.es5.js +1 -1
- package/dist/walkerOS.json +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @walkeros/web-source-browser
|
|
2
2
|
|
|
3
|
-
## 4.1.0
|
|
3
|
+
## 4.1.0
|
|
4
4
|
|
|
5
5
|
### Minor Changes
|
|
6
6
|
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
- Updated dependencies [058f7ed]
|
|
32
32
|
- Updated dependencies [28a8ac2]
|
|
33
33
|
- Updated dependencies [fd6076e]
|
|
34
|
-
- @walkeros/core@4.1.0
|
|
35
|
-
- @walkeros/collector@4.1.0
|
|
36
|
-
- @walkeros/web-core@4.1.0
|
|
34
|
+
- @walkeros/core@4.1.0
|
|
35
|
+
- @walkeros/collector@4.1.0
|
|
36
|
+
- @walkeros/web-core@4.1.0
|
|
37
37
|
|
|
38
38
|
## 4.0.2
|
|
39
39
|
|
package/dist/index.browser.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Source=(()=>{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})},i={};r(i,{SourceBrowser:()=>Gt,createTagger:()=>un,default:()=>gn,examples:()=>Ft,getAllEvents:()=>nt,getElbAttributeName:()=>et,getElbValues:()=>tt,getEvents:()=>ot,getGlobals:()=>rt,sourceBrowser:()=>fn});var s=Object.defineProperty,a=(e,t)=>{for(var n in t)s(e,n,{get:t[n],enumerable:!0})};function c(e,t){if("collector"===e)return"collector";if(!t)throw new Error(`stepId(${e}) requires an id`);return`${e}.${t}`}a({},{stepId:()=>c});function l(e,t){const n=e.destinations[t];if(!n)throw new Error(`Destination not found: ${t}`);return n}a({},{getDestination:()=>l});a({},{Level:()=>d});var u,d=((u=d||{})[u.ERROR=0]="ERROR",u[u.WARN=1]="WARN",u[u.INFO=2]="INFO",u[u.DEBUG=3]="DEBUG",u);function f(e,t){const n=e.transformers[t];if(!n)throw new Error(`Transformer not found: ${t}`);return n}a({},{getTransformer:()=>f});function g(e,t){const n=e.sources[t];if(!n)throw new Error(`Source not found: ${t}`);return n}a({},{getSource:()=>g});function p(e,t){const n=e.stores[t];if(!n)throw new Error(`Store not found: ${t}`);return n}function m(e){return{_meta:{hops:0,path:[e]}}}a({},{getStore:()=>p});var h={merge:!0,shallow:!0,extend:!0};function v(e,t={},n={}){n={...h,...n};const o=Object.entries(t).reduce((t,[o,r])=>{const i=e[o];return n.merge&&Array.isArray(i)&&Array.isArray(r)?t[o]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...i]):(n.extend||o in e)&&(t[o]=r),t},{});return n.shallow?{...e,...o}:(Object.assign(e,o),e)}function y(e){return Array.isArray(e)}function b(e){return void 0!==e}function w(e){return!(!e||"object"!=typeof e)&&("body"in e||"tagName"in e)}function k(e){return"function"==typeof e}function x(e){return"object"==typeof e&&null!==e&&!y(e)&&"[object Object]"===Object.prototype.toString.call(e)}function O(e){return"string"==typeof e}function j(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]=j(e[o],t));return n}if("[object Array]"===n){const n=[];return t.set(e,n),e.forEach(e=>{n.push(j(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 C(e,t="",n){const o=t.split(".");let r=e;for(let e=0;e<o.length;e++){const t=o[e];if("*"===t&&y(r)){const t=o.slice(e+1).join("."),i=[];for(const e of r){const o=C(e,t,n);i.push(o)}return i}if(r=x(r)||y(r)?r[t]:void 0,void 0===r)break}return b(r)?r:n}function E(e,t,n){if(!x(e))return e;const o=j(e),r=t.split(".");let i=o;for(let e=0;e<r.length;e++){const t=r[e];e===r.length-1?i[t]=n:(t in i&&"object"==typeof i[t]&&null!==i[t]||(i[t]={}),i=i[t])}return o}var A={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 S(e){if("true"===e)return!0;if("false"===e)return!1;const t=Number(e);return e==t&&""!==e?t:String(e)}function $(e,t={},n={}){const o={...t,...n},r={};let i=!e||0===Object.keys(e).length;return Object.keys(o).forEach(t=>{o[t]&&(r[t]=!0,e&&e[t]&&(i=!0))}),!!i&&r}function q(){let e="";for(let t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}function P(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 D(e,t){var n;return"number"==typeof e?{wait:e}:e?{wait:null!=(n=e.wait)?n:t,size:e.size,age:e.age}:{wait:t}}function I(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function _(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=I(e)):n=e,void 0!==t&&(t instanceof Error?o.error=I(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=I(o.error))):o.value=t),{message:n,context:o}}var T=(e,t,n,o)=>{const r=`${d[e]}${o.length>0?` [${o.join(":")}]`:""}`,i=Object.keys(n).length>0,s=0===e?console.error:1===e?console.warn:console.log;i?s(r,t,n):s(r,t)};function M(e={}){return L({level:void 0!==e.level?(t=e.level,"string"==typeof t?d[t]:t):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var t}function L(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,i=(e,o,i)=>{if(e<=t){const t=_(o,i);n?n(e,t.message,t.context,r,T):T(e,t.message,t.context,r)}};return{error:(e,t)=>i(0,e,t),warn:(e,t)=>i(1,e,t),info:(e,t)=>i(2,e,t),debug:(e,t)=>i(3,e,t),throw:(e,t)=>{const o=_(e,t);throw n?n(0,o.message,o.context,r,T):T(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>L({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function N(e){return function(e){return"boolean"==typeof e}(e)||O(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!b(e)||y(e)&&e.every(N)||x(e)&&Object.values(e).every(N)}function R(e){return N(e)?e:void 0}function W(e,t,n){return function(...o){try{return e(...o)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function z(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())}}}var H=class e extends Error{constructor(t,n){super(t,n),this.name="FatalError",Object.setPrototypeOf(this,e.prototype)}};async function B(e,t={},n={}){var o,r;if(!b(e))return;const i=x(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),s=null!=(r=n.event)?r:x(e)?e:{};if(!n.collector)throw new Error("getMappingValue: context.collector is required");const a={event:s,mapping:t,collector:n.collector,logger:n.collector.logger,consent:i},c=y(t)?t:[t];for(const t of c){const o=await z(U,e=>{if(e instanceof H)throw e;n.collector&&n.collector.status.failed++,a.logger.error("mapping processing failed",{event:s,error:e})})(e,t,{...a,mapping:t});if(b(o))return o}}async function U(e,t,n){return(y(t)?t:[t]).reduce(async(t,o)=>{const r=await t;if(r)return r;const i=O(o)?{key:o}:o;if(!Object.keys(i).length)return;const{condition:s,consent:a,fn:c,key:l,loop:u,map:d,set:f,validate:g,value:p}=i,m={...n,mapping:o};if(s&&!await z(s,e=>{if(e instanceof H)throw e;return m.logger.error("mapping condition failed",{event:m.event,error:e}),!1})(e,m))return;if(a&&!$(a,m.consent))return p;let h=b(p)?p:e;if(c&&(h=await z(c,e=>{if(e instanceof H)throw e;m.logger.error("mapping fn failed",{event:m.event,error:e})})(e,m)),l&&(h=C(e,l,p)),u){const[t,n]=u,o="this"===t?[e]:await B(e,t,m);y(o)&&(h=(await Promise.all(o.map(e=>B(e,n,m)))).filter(b))}else d?h=await Object.entries(d).reduce(async(t,[n,o])=>{const r=await t,i=await B(e,o,m);return b(i)&&(r[n]=i),r},Promise.resolve({})):f&&(h=await Promise.all(f.map(t=>U(e,t,m))));g&&!await z(g,e=>{if(e instanceof H)throw e;return m.logger.error("mapping validate failed",{event:m.event,error:e}),!1})(h,m)&&(h=void 0);const v=R(h);return b(v)?v:R(p)},Promise.resolve(void 0))}async function V(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await B(e,o,{collector:n,event:e});e=E(e,t,r)}));const{eventMapping:r,mappingKey:i}=await async function(e,t,n){var o;const[r,i]=(e.name||"").split(" ");if(!t||!r||!i)return{};let s,a="",c=r,l=i;const u=t=>{if(t)return(y(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:x(e)&&e.consent||n.consent};return Boolean(t.condition(e,o))})};t[c]||(c="*");const d=t[c];return d&&(d[l]||(l="*"),s=u(d[l])),s||(c="*",l="*",s=u(null==(o=t[c])?void 0:o[l])),s&&(a=`${c} ${l}`),{eventMapping:s,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 B(e,o,{collector:n,event:e});e=E(e,t,r)}));let s=t.data&&await B(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:s,mapping:r,mappingKey:i,ignore:!0,silent:a};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await B(e,r.data,{collector:n,event:e});s=x(s)&&x(t)?v(s,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(A):t;for(const t of o){const o=A[t];if(!o)continue;const r=o(e);if(x(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&&(s=x(s)?v(t,s):null!=s?s:t)}return{event:e,data:s,mapping:r,mappingKey:i,ignore:!1,silent:a}}function G(e){return e?e.trim().replace(/^'|'$/g,"").trim():""}function F(e,t,n,o){return function(...r){let i;const s="pre"+t,a="post"+t,c=n[s],l=n[a],u=(e,t)=>{o?o.warn(e,{error:t}):console.warn(e,t)};if(c)try{i=c({fn:e},...r)}catch(t){u(`Hook ${String(s)} failed, falling back to original function`,t),i=e(...r)}else i=e(...r);if(l)try{i=l({fn:e,result:i},...r)}catch(e){u(`Hook ${String(a)} failed, keeping original result`,e)}return i}}function K(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const t=e.and.map(K);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(K);return e=>t.some(t=>t(e))}return function(e){const{key:t,operator:n,value:o,not:r}=e,i=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=C(e,t),o=i(n);return r?!o:o}}(e)}function Y(e){return e.map(e=>{var t,n;if("string"==typeof e)return{match:()=>!0,next:{type:"static",value:e}};if(Array.isArray(e))return{match:()=>!0,next:null!=(t=J(e))?t:{type:"chain",value:[]}};const o=e;return{match:o.match?K(o.match):()=>!0,next:null!=(n=J(o))?n:{type:"chain",value:[]}}})}function J(e){if(null==e)return;if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(e=>{return"object"==typeof(t=e)&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"one"in t||"many"in t);var t})}(e))return J({one:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const t=[];for(const n of e){const e=J(n);void 0!==e&&t.push(e)}if(0===t.length)return;return{type:"sequence",value:t}}const t=e;if("next"in t&&void 0!==t.next)return t.match?{type:"gate",match:K(t.match),next:J(t.next)}:J(t.next);if("one"in t&&t.one){const e=Y(t.one);return t.match?{type:"gate",match:K(t.match),next:{type:"one",routes:e}}:{type:"one",routes:e}}if("many"in t&&t.many){const e=Y(t.many);return t.match?{type:"gate",match:K(t.match),next:{type:"many",routes:e}}:{type:"many",routes:e}}return t.match?{type:"gate",match:K(t.match)}:void 0}var X=new WeakMap;function Z(e,t={}){if(null==e)return[];let n;if("object"==typeof e){const t=X.get(e);t?n=t:(n=J(e),n&&X.set(e,n))}else n=J(e);if(!n)return[];const o=Q(n,t);return void 0===o?[]:Array.isArray(o)?o:[o]}function Q(e,t={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(t))return;return Q(e.next,t)}if("sequence"===e.type){const n=[];for(const o of e.value){const e=Q(o,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}if("many"===e.type){const n=[];for(const o of e.routes){if(!o.match(t))continue;const e=Q(o.next,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}for(const n of e.routes)if(n.match(t))return Q(n.next,t)}}function ee(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function te(e){var t;return{stop:null!=(t=e.stop)&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?K(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}async function ne(e,t,n,o){const r=e.rules.find(e=>e.match(n));if(!r)return null;const i=r.key.map(e=>{var t;return String(null!=(t=C(n,e))?t:"")});if(i.every(e=>""===e))return null;const s=i.join(":"),a=null!=o?o:e.namespace,c=a?`${a}:${s}`:s,l=await t.get(c);return void 0!==l?{status:"HIT",key:c,value:l,rule:r}:{status:"MISS",key:c,rule:r}}function oe(e,t,n,o){e.set(t,n,1e3*o)}async function re(e,t,n,o){if(!t)return e;let r=e;for(const[e,i]of Object.entries(t))r=E(r,e,await B(n,i,{collector:o}));return r}var ie={Source:["code","package","import","before","next","cache"],Transformer:["code","package","import","before","next","cache","mapping"],Destination:["code","package","import","before","next","cache"],Store:["code","package","import","cache"]},se=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],ae={Source:["primary"],Transformer:[],Destination:[],Store:[]},ce=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function le(e,t){const n=(o=t,new Set([...ie[o],...se,...ae[o]]));var o;for(const o of Object.keys(e))if(!n.has(o))return{ok:!1,code:"UNKNOWN_KEY",key:o,reason:`Unknown key "${o}" on ${t}. Allowed: ${[...n].sort().join(", ")}.`};const r=void 0!==e.package,i=void 0!==e.import,s=void 0!==e.code;return s&&"string"==typeof e.code?{ok:!1,code:"OBSOLETE_CODE_STRING",key:"code",reason:`code: "<name>" is no longer supported. Use import: "${e.code}" with the package field instead.`}:s&&("object"!=typeof e.code&&"function"!=typeof e.code||null===e.code||Array.isArray(e.code))?{ok:!1,code:"INVALID_CODE_SHAPE",key:"code",reason:"code must be an object ({ push, type?, init? }) or a resolved function value."}:s&&r?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:s&&i?{ok:!1,code:"CONFLICT",key:"import",reason:"Cannot specify both `code` and `import`."}:i&&!r?{ok:!1,code:"MISSING_PACKAGE",key:"import",reason:"`import` requires `package` to be set."}:!i||"string"==typeof e.import&&ce.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:`import must match ${ce.source}. Got: ${JSON.stringify(e.import)}.`}}var ue={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 de(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache}function fe(e){var t;const n={};for(const[o,r]of Object.entries(e)){const e=null==(t=r.config)?void 0:t.next;"string"==typeof e||Array.isArray(e)&&e.every(e=>"string"==typeof e)?n[o]={next:e}:n[o]={}}return n}function ge(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 pe(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 me(e,t,n){if(t.init&&!t.config.init){const o=t.type||"unknown",r=e.logger.scope(`transformer:${o}`),i={collector:e,logger:r,id:n,ingest:m(n),config:t.config,env:be(t.config.env)};r.debug("init");const s=await F(t.init,"TransformerInit",e.hooks,e.logger)(i);if(!1===s)return!1;t.config={...s||t.config,env:(null==s?void 0:s.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function he(e,t,n,o,r,i){const s=t.type||"unknown",a=e.logger.scope(`transformer:${s}`),c={collector:e,logger:a,id:n,ingest:r,config:t.config,env:{...be(t.config.env),...i?{respond:i}:{}}};a.debug("push",{event:o.name});const l=await F(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),l}function ve(e,t){return e?{...e,_meta:{...e._meta,path:[...e._meta.path]}}:m(t)}async function ye(e,t,n,o,r,i,s){var a,c,l,u,d,f,g,p;r||(r=m(null!=(a=n[0])?a:"chain")),s&&r._meta&&(r._meta.chainPath=s);let h=o,v=i;for(const o of n){const i=t[o];if(!i){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 z(me,t=>{if(t instanceof H)throw t;return e.status.failed++,e.logger.scope(`transformer:${i.type||"unknown"}`).error("transformer init failed",{transformer:o,error:t}),!1})(e,i,o))return{event:null,respond:v};if(s&&void 0!==(null==(l=null==(c=i.config)?void 0:c.chainMocks)?void 0:l[s])){const t=i.config.chainMocks[s];e.logger.scope(`transformer:${i.type||"unknown"}`).debug("chainMock",{chain:s}),h=t;continue}if(void 0!==(null==(u=i.config)?void 0:u.mock)){e.logger.scope(`transformer:${i.type||"unknown"}`).debug("mock"),h=i.config.mock;continue}if(null==(d=i.config)?void 0:d.disabled)continue;const a=null==(f=i.config)?void 0:f.cache,m=a?te(a):void 0,y=m?de(m,e):void 0;let b;if(m&&y){const e=ee(r,h),t=await ne(m,y,e);if("HIT"===(null==t?void 0:t.status)&&t.value){if(h=t.value,m.stop)return{event:h,respond:v,stopped:!0};continue}"MISS"===(null==t?void 0:t.status)&&(b={key:t.key,ttl:t.rule.ttl})}const w=i.config.before;if(w){const n=Z(w,ee(r,h));if(1===n.length){const o=pe(n[0],fe(t));if(o.length>0){const n=await ye(e,t,o,h,r,v,s);if(null===n.event)return{event:null,respond:null!=(g=n.respond)?g:v};if(n.stopped)return{event:Array.isArray(n.event)?n.event[0]:n.event,respond:null!=(p=n.respond)?p:v,stopped:!0};n.respond&&(v=n.respond),h=Array.isArray(n.event)?n.event[0]:n.event}}else n.length>1&&await Promise.all(n.map(n=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(n,fe(t)),h,ve(r,n),void 0,s)))}const k=await z(he,t=>(e.logger.scope(`transformer:${i.type||"unknown"}`).error("Push failed",{error:t}),!1))(e,i,o,h,r,v);if(!1===k)return{event:null,respond:v};if(Array.isArray(k)){const i=n.slice(n.indexOf(o)+1),a=await Promise.all(k.map(async n=>{const o=n.event||h,a=ve(r,"unknown");if(n.next){const r=Z(n.next,ee(a,o));if(0===r.length)return{event:o,respond:v};if(1===r.length){const n=pe(r[0],fe(t));return n.length>0?ye(e,t,n,o,a,v,s):{event:o,respond:v}}return(await Promise.all(r.map(n=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(n,fe(t)),o,ve(a,n),void 0,s)))).map(e=>({event:e.event,respond:void 0}))}return i.length>0?ye(e,t,i,o,a,v,s):{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:i}=k;if(o&&(v=o),void 0!==i){const o=Z(i,ee(r,h));if(0===o.length){n&&(h=n);continue}if(1===o.length){const a=pe(o[0],fe(t));return a.length>0?ye(e,t,a,n||h,r,v,s):(e.logger.warn(`Branch target not found: ${JSON.stringify(i)}`),{event:null,respond:v})}return await Promise.all(o.map(o=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${o} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(o,fe(t)),n||h,ve(r,o),void 0,s))),{event:null,respond:void 0}}n&&(h=n)}b&&y&&oe(y,b.key,h,b.ttl);const x=i.config.next,O="string"==typeof x||Array.isArray(x)&&x.every(e=>"string"==typeof e),j=void 0!==x&&!O;if((!k||"object"==typeof k&&!k.next)&&j){const n=Z(i.config.next,ee(r,h));if(1===n.length){const o=pe(n[0],fe(t));return o.length>0?ye(e,t,o,h,r,v,s):{event:h,respond:v}}return n.length>1?(await Promise.all(n.map(n=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(n,fe(t)),h,ve(r,n),void 0,s))),{event:null,respond:void 0}):{event:h,respond:v}}}return{event:h,respond:v}}function be(e){return e&&x(e)?e:{}}function we(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(e=>"string"==typeof e))}async function ke(e,t,n){var o,r;if(!t.on||!(null==(o=t.queueOn)?void 0:o.length))return;const i=t.queueOn;t.queueOn=[];const s=n||(null==(r=t.config)?void 0:r.id)||"unknown";for(const{type:n,data:o}of i)await z(t.on,t=>{if(t instanceof H)throw t;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:s,type:n,error:t})})(n,o)}function xe(e){var t;return Boolean(e.config.init)&&!(null==(t=e.config.require)?void 0:t.length)}async function Oe(e,t,n){var o;const{code:r,config:i={},env:s={},primary:a,next:c,before:l,cache:u}=n,d=u,f=d?te({...d,stop:null==(o=d.stop)||o}):void 0,g=we(c)?pe(c,fe(e.transformers)):void 0,p=we(l)?pe(l,fe(e.transformers)):void 0,h=s.push,v=null!=h?h:e.push,y=Boolean(h),b=async(n,o,r)=>{var s;let a;const u=null!=p?p:void 0!==l?(()=>{const t=Z(l,ee(r.ingest));return 0===t.length?[]:pe(1===t.length?t[0]:t,fe(e.transformers))})():[];let d=[n];if(u.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await ye(e,e.transformers,u,n,r.ingest,r.respond,`source.${t}.before`);if(null===o.event)return{ok:!0};if(o.stopped)return o.respond&&(r.respond=o.respond),{ok:!0};o.respond&&(r.respond=o.respond),d=Array.isArray(o.event)?o.event:[o.event]}if(f){const t=de(f,e);if(t){const n=ee(r.ingest),o=await ne(f,t,n);if(o){if("HIT"===o.status&&void 0!==o.value&&f.stop){let t=o.value;return o.rule.update&&(t=await re(t,o.rule.update,{...n,cache:{status:"HIT"}},e)),null==(s=r.respond)||s.call(r,t),{ok:!0}}if("MISS"===o.status&&f.stop&&r.respond){const i=r.respond,s=o.rule.update,c={...n,cache:{status:"MISS"}},l=o.key,u=o.rule.ttl,d=n=>{oe(t,l,n,u),s?a=(async()=>{const t=await re(n,s,c,e);i(t)})():i(n)};r.respond=d}"MISS"!==o.status||f.stop||oe(t,o.key,!0,o.rule.ttl)}}}const m=g?{kind:"single",preChain:g}:void 0!==c?(()=>{const t=Z(c,ee(r.ingest));return 0===t.length?{kind:"single",preChain:[]}:1===t.length?{kind:"single",preChain:pe(t[0],fe(e.transformers))}:{kind:"many",branches:t.map(t=>pe(t,fe(e.transformers)))}})():{kind:"single",preChain:[]};let h={ok:!0};for(const n of d)"many"===m.kind?(await Promise.all(m.branches.map((s,a)=>z(async()=>y?v(n):v(n,{...o,id:t,ingest:ve(r.ingest,`${t}.${a}`),respond:void 0,mapping:i,preChain:s}),t=>(e.logger.scope("source:many").error(`many branch ${a} failed`,{error:t}),{ok:!0}))())),h={ok:!0}):h=y?await v(n):await v(n,{...o,id:t,ingest:r.ingest,respond:r.respond,mapping:i,preChain:m.preChain});return a&&await a,h},w=async n=>{const o=m(t);if(!i.ingest||void 0===n)return o;const r=await B(n,i.ingest,{collector:e});return{...o,...r,_meta:o._meta}},k=e.logger.scope("source").scope(t),x={command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:k,...s,push:async(e,n={})=>{const o={ingest:m(t),respond:void 0};return b(e,n,o)}},O={collector:e,logger:k,id:t,config:i,env:x,withScope:async(e,t,n)=>{const o={ingest:await w(e),respond:t};return n({...x,push:(e,t={})=>b(e,t,o),ingest:o.ingest,respond:o.respond})}},j=await z(r,n=>{if(n instanceof H)throw n;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:t,error:n})})(O);if(!j)return;const C=j.type||"unknown",E=e.logger.scope(C).scope(t);return x.logger=E,a&&(j.config={...j.config,primary:a}),j}function je(e,t,n,o){if(n instanceof H)throw n;e.logger.scope("on").error("on callback failed",{kind:t,...o,error:n})}function Ce(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}}function Ee(e,t,n,o,r){if(!t.on)return;const i=t.type||"unknown",s=e.logger.scope(i).scope("on").scope(o),a={collector:e,logger:s,id:n,config:t.config,data:r,env:Be(t.env,t.config.env)};W(t.on,t=>je(e,"destination",t,{destId:n,type:o}))(o,a)}function Ae(e,t,n,o){let r;switch(t){case ue.Commands.Consent:r=o||e.consent;break;case ue.Commands.Session:r=e.session;break;case ue.Commands.User:r=o||e.user;break;case ue.Commands.Custom:r=o||e.custom;break;case ue.Commands.Globals:r=o||e.globals;break;case ue.Commands.Config:r=o||e.config;break;case ue.Commands.Ready:case ue.Commands.Run:default:r=void 0}if(n.length)switch(t){case ue.Commands.Consent:!function(e,t,n){const o=n||e.consent,r=Ce(e,ue.Commands.Consent);t.forEach(t=>{Object.keys(o).filter(e=>e in t).forEach(n=>{W(t[n],t=>je(e,"consent",t,{key:n}))(o,r)})})}(e,n,o);break;case ue.Commands.Ready:!function(e,t){if(!e.allowed)return;const n=Ce(e,ue.Commands.Ready);t.forEach(t=>{W(t,t=>je(e,"ready",t))(void 0,n)})}(e,n);break;case ue.Commands.Run:!function(e,t){if(!e.allowed)return;const n=Ce(e,ue.Commands.Run);t.forEach(t=>{W(t,t=>je(e,"run",t))(void 0,n)})}(e,n);break;case ue.Commands.Session:!function(e,t){if(!e.session)return;const n=Ce(e,ue.Commands.Session);t.forEach(t=>{W(t,t=>je(e,"session",t))(e.session,n)})}(e,n);break;default:{const o=Ce(e,t);n.forEach(n=>{"function"==typeof n&&W(n,n=>je(e,"generic",n,{type:t}))(r,o)});break}}}function Se(e,t,n,o){var r;if(!Number.isFinite(n.max)||n.max<=0)throw new Error(`pushBounded: max must be > 0 (got ${n.max})`);if("dropNewest"===(null!=(r=n.onOverflow)?r:"dropOldest"))return e.length>=n.max?(o&&o([t]),{appended:!1,dropped:1}):(e.push(t),{appended:!0,dropped:0});const i=[];for(;e.length>=n.max;)i.push(e.shift());return e.push(t),i.length>0&&o&&o(i),{appended:!0,dropped:i.length}}var $e=new WeakMap;function qe(e,t,n,o){$e.get(e)||($e.set(e,!0),t.warn(n,o))}function Pe(e){$e.delete(e)}var De=Object.freeze({batched:!0});function Ie(e){return e===De}function _e(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}}function Te(e,t){return e.status.destinations[t]||(e.status.destinations[t]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[t]}function Me(e,t,n,o){var r;e.dropped[t]||(e.dropped[t]={});const i=e.dropped[t];return i[n]=(null!=(r=i[n])?r:0)+o,i[n]}function Le(e,t,n){if(!e)return[];if(Array.isArray(e)&&e.every(e=>"string"==typeof e))return pe(e,t);if("string"==typeof e)return pe(e,t);const o=Z(e,ee(n));return 0===o.length?[]:1===o.length?pe(o[0],t):pe(o,t)}async function Ne(e,t,n={},o){var r,i,s,a,l,u;const{allowed:d,consent:f,globals:g,user:p}=e;if(!d)return ze({ok:!1});if(t){const n=e.config.queueMax;if(void 0===n)throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");const o=Se(e.queue,t,{max:n});if(o.dropped>0){const t=Me(e.status,c("collector"),"queue",o.dropped);qe(e.queue,e.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:n,droppedCount:t})}else e.queue.length<n&&Pe(e.queue);e.status.in++}o||(o=e.destinations);const h=e.transformers?fe(e.transformers):{},y=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var i,s,a,l;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let u=(r.queuePush||[]).map(e=>({...e,consent:f}));r.queuePush=[],t&&u.push(j(t));const d=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:m("unknown");if(!u.length&&!(null==(i=r.queueOn)?void 0:i.length))return{id:o,destination:r,skipped:!0};if(!u.length&&(null==(s=r.queueOn)?void 0:s.length)){let t=!1;try{t=await Re(e,r,o)}catch(t){e.status.failed++;const n=r.type||"unknown";e.logger.scope(n).error("destination init failed",{error:t instanceof Error?t.message:String(t)})}return{id:o,destination:r,skipped:!t}}const y=[],b=u.filter(e=>{const t=$(r.config.consent,f,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(b.length>0){const t=r.queuePush,n=r.config.id||o,i={max:null!=(a=r.config.queueMax)?a:1e3};let s=0;for(const e of b)s+=Se(t,e,i).dropped;if(s>0){Te(e,n);const o=Me(e.status,c("destination",n),"queue",s);qe(t,e.logger.scope(r.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:n,cap:i.max,droppedCount:o})}else t.length<i.max&&Pe(t)}if(!y.length)return{id:o,destination:r,queue:u};let w,k,x=!1;try{x=await Re(e,r,o)}catch(t){e.status.failed++;const n=r.type||"unknown";e.logger.scope(n).error("destination init failed",{error:t instanceof Error?t.message:String(t)})}if(!x)return{id:o,destination:r,queue:u};r.dlq||(r.dlq=[]);const O=Le(r.config.before,h,d),C=r.config.next,E=null==(l=r.config)?void 0:l.cache,A=E?te(E):void 0,S=A?de(A,e):void 0;let q=0,P=0;return await Promise.all(y.map(async t=>{let i;if(t.globals=v(g,t.globals),t.user=v(p,t.user),(null==A?void 0:A.stop)&&S){const e=ee(d,t),n=await ne(A,S,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(i={key:n.key,ttl:n.rule.ttl})}let s=t,a=n.respond;if(O.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await ye(e,e.transformers,O,t,d,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(a=r.respond),s=Array.isArray(r.event)?r.event[0]:r.event}if(A&&!A.stop&&S){const e=ee(d,s),n=await ne(A,S,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(i={key:n.key,ttl:n.rule.ttl})}const l=Date.now();let u=!1;const f=await z(We,t=>{var n;const i=r.type||"unknown";e.logger.scope(i).error("Push failed",{error:t,event:s.name}),w=t,u=!0;const a=r.dlq,l=r.config.id||o,d={max:null!=(n=r.config.dlqMax)?n:100},f=Se(a,[s,t],d);if(f.dropped>0){Te(e,l);const t=Me(e.status,c("destination",l),"dlq",f.dropped);qe(a,e.logger.scope(r.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:d.max,droppedCount:t})}else a.length<d.max&&Pe(a)})(e,r,o,s,d,a);if(q+=Date.now()-l,i&&S&&void 0===r.config.mock&&oe(S,i.key,null==f||f,i.ttl),void 0===f||Ie(f)||(k=f),Ie(f)&&P++,!u&&C){void 0!==f&&(d._response=f);const t=Le(C,h,d);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,t,s,d,a,`destination.${o}.next`);n.respond&&(a=n.respond)}}return t})),{id:o,destination:r,error:w,response:k,totalDuration:q,batchedCount:P,allowedCount:y.length}})),b={},w={},k={};for(const t of y){if(t.skipped)continue;const n=t.destination,o={type:n.type||"unknown",data:t.response};Te(e,t.id);const c=e.status.destinations[t.id],d=Date.now();if(c.queuePushSize=null!=(i=null==(r=n.queuePush)?void 0:r.length)?i:0,c.dlqSize=null!=(a=null==(s=n.dlq)?void 0:s.length)?a:0,t.error)o.error=t.error,k[t.id]=o,c.failed++,c.lastAt=d,c.duration+=t.totalDuration||0,e.status.failed++;else if(t.queue&&t.queue.length)w[t.id]=o;else{const n=null!=(l=t.batchedCount)?l:0,r=null!=(u=t.allowedCount)?u:0;(Math.max(0,r-n)>0||0===r)&&(b[t.id]=o,c.count++,c.lastAt=d,c.duration+=t.totalDuration||0,e.status.out++)}}return ze({event:t,...Object.keys(b).length&&{done:b},...Object.keys(w).length&&{queued:w},...Object.keys(k).length&&{failed:k}})}async function Re(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",i=e.logger.scope(r),s={collector:e,logger:i,id:n,config:t.config,env:Be(t.env,t.config.env)};i.debug("init");const a=await F(t.init,"DestinationInit",e.hooks,e.logger)(s);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:i}of o)Ee(e,t,n,r,i)}i.debug("init done")}return!0}async function We(e,t,n,o,r,i){var s,a,l,u,d,f,g;const{config:p}=t,m=await V(o,p,e);if(m.ignore)return!1;const h=t.type||"unknown",v=e.logger.scope(h),y={collector:e,logger:v,id:n,config:p,data:m.data,rule:m.mapping,ingest:r,env:{...Be(t.env,p.env),...i?{respond:i}:{}}};if(void 0!==p.mock)return v.debug("mock",{event:m.event.name}),p.mock;const w=m.mapping,k=m.mappingKey||"* *";if((null==w?void 0:w.batch)&&t.pushBatch&&void 0===p.mock){if(t.batches=t.batches||{},!t.batches[k]){const o={key:k,entries:[],events:[],data:[]},r=_e(w.batch),i=_e(p.batch),g=null!=(a=null!=(s=r.wait)?s:i.wait)?a:3e4,m=null!=(u=null!=(l=r.size)?l:i.size)?u:1e3,h=null!=(f=null!=(d=r.age)?d:i.age)?f:3e4,y=Be(t.env,p.env),b=function(e,t=1e3,n=!1){const{wait:o,size:r,age:i}=D(t,1e3);let s,a,c=null,l=null,u=!1,d=[],f=0;const g=()=>{c&&(clearTimeout(c),c=null),l&&(clearTimeout(l),l=null),f=0,a=void 0},p=()=>{const t=a,n=d;if(g(),d=[],t)return s=e(...t),n.forEach(e=>e(s)),s;n.forEach(e=>e(void 0))},m=(...t)=>new Promise(g=>{const m=n&&!u;if(a=t,f+=1,d.push(g),c&&clearTimeout(c),c=setTimeout(()=>{c=null,n&&!u||p()},o),void 0===i||l||(l=setTimeout(()=>{l=null,p()},i)),void 0!==r&&f>=r)p();else if(m){u=!0,s=e(...t);const n=d;d=[],n.forEach(e=>e(s))}});return m.flush=()=>a||0!==d.length?new Promise(e=>{d.push(e),p()}):Promise.resolve(void 0),m.cancel=()=>{const e=d;d=[],g(),e.forEach(e=>e(void 0))},m.size=()=>f,m}(async()=>{var o;const r=t.batches[k].batched;if(0===r.entries.length)return;const i={key:r.key,entries:r.entries,events:r.events,data:r.data};r.entries=[],r.events=[],r.data=[];const s=i.entries[0],a={collector:e,logger:v,id:n,config:p,data:void 0,rule:s.rule,ingest:s.ingest,env:{...y,...s.respond?{respond:s.respond}:{}}};v.debug("push batch",{events:i.entries.length});const l=t.config.id||n,u=Te(e,l);let d=!0;await z(F(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger),n=>{var o;d=!1;const r=t.dlq=t.dlq||[],s={max:null!=(o=t.config.dlqMax)?o:100};let a=0;for(const e of i.entries)a+=Se(r,[e.event,n],s).dropped;if(a>0){const t=Me(e.status,c("destination",l),"dlq",a);qe(r,v,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:s.max,droppedCount:t})}else r.length<s.max&&Pe(r);u.failed+=i.entries.length,u.dlqSize=r.length,e.status.failed+=i.entries.length,v.error("Push batch failed",{error:n instanceof Error?n.message:String(n),entries:i.entries.length})})(i,a),v.debug("push batch done"),u.inFlightBatch=Math.max(0,(null!=(o=u.inFlightBatch)?o:0)-i.entries.length),d&&(u.count+=i.entries.length,u.lastAt=Date.now(),e.status.out+=i.entries.length)},{wait:g,size:m,age:h});t.batches[k]={batched:o,batchFn:()=>{b()},flush:async()=>{await b.flush()}}}const o=t.batches[k];o.batched.entries.push({event:m.event,ingest:r,respond:i,rule:w,data:m.data}),o.batched.events.push(m.event),b(m.data)&&o.batched.data.push(m.data);const h=t.config.id||n,y=Te(e,h);return y.inFlightBatch=(null!=(g=y.inFlightBatch)?g:0)+1,o.batchFn(),De}{v.debug("push",{event:m.event.name});const n=await F(t.push,"DestinationPush",e.hooks,e.logger)(m.event,y);return v.debug("push done"),n}}function ze(e){return{ok:!(null==e?void 0:e.failed),...e}}function He(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:i}=ge(e,"before"),{config:s}=ge({...e,config:i},"next"),a={...t.config,...n,...s};r&&(a.cache=r);const c=Be(t.env,o);return{...t,config:a,env:c}}function Be(e,t){return e||t?t?e&&x(e)&&x(t)?{...e,...t}:t:e:{}}async function Ue(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const i=o.destroy;if(!i)return;const s=o.type||"unknown",a=n.scope(s),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:a};try{await Promise.race([i(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 Ve(e,t,n){let o,r,i=!1;switch(t){case ue.Commands.Config:x(n)&&(v(e.config,n,{shallow:!1}),r=n,i=!0);break;case ue.Commands.Consent:if(x(n)){const{update:t}=function(e,t){const n={};return Object.entries(t).forEach(([e,t])=>{n[e]=!!t}),e.consent=v(e.consent,n),{update:n}}(e,n);r=t,i=!0}break;case ue.Commands.Custom:x(n)&&(e.custom=v(e.custom,n),r=n,i=!0);break;case ue.Commands.Destination:x(n)&&"code"in n&&x(n.code)&&(o=await async function(e,t){const{code:n,config:o={},env:r={},before:i,next:s,cache:a}=t;if(!k(n.push))return ze({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const c=o||{init:!1};let l=i?{...c,before:i}:{...c};s&&(l={...l,next:s}),a&&(l={...l,cache:a});const u={...n,config:l,env:Be(n.env,r)};let d=u.config.id;if(!d)do{d=P(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=u,!1!==u.config.queue&&(u.queuePush=[...e.queue]),Ne(e,void 0,{},{[d]:u})}(e,n));break;case ue.Commands.Globals:x(n)&&(e.globals=v(e.globals,n),r=n,i=!0);break;case ue.Commands.Hook:if(x(n)&&O(n.name)&&k(n.fn)){const{name:t,fn:o}=n;e.hooks[t]=o,r=n,i=!0}break;case ue.Commands.On:if(x(n)&&O(n.type)){const{type:t,rules:o}=n;await async function(e,t,n){const o=e.on,r=o[t]||[],i=y(n)?n:[n];i.forEach(e=>{r.push(e)}),o[t]=r,Ae(e,t,i)}(e,t,o)}break;case ue.Commands.Ready:i=!0;break;case ue.Commands.Run:o=await async function(e,t){return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=v(e.consent,t.consent)),t.user&&(e.user=v(e.user,t.user)),t.globals&&(e.globals=v(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=v(e.custom,t.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await Ne(e)}(e,n),i=!0;break;case ue.Commands.Session:i=!0;break;case ue.Commands.Shutdown:await async function(e){const t=e.logger;await Ue(e.sources,"source",t),await Ue(e.destinations,"destination",t),await Ue(e.transformers,"transformer",t),await Ue(e.stores,"store",t)}(e);break;case ue.Commands.User:x(n)&&(v(e.user,n,{shallow:!1}),r=n,i=!0)}return i&&(await async function(e,t,n,o){var r,i;let s,a=n||[];switch(n||(a=e.on[t]||[]),t){case ue.Commands.Consent:s=o||e.consent;break;case ue.Commands.Session:s=e.session;break;case ue.Commands.User:s=o||e.user;break;case ue.Commands.Custom:s=o||e.custom;break;case ue.Commands.Globals:s=o||e.globals;break;case ue.Commands.Config:s=o||e.config;break;case ue.Commands.Ready:case ue.Commands.Run:default:s=void 0}let c=!1;for(const[n,o]of Object.entries(e.sources)){if(null==(r=o.config.require)?void 0:r.length){const e=o.config.require.indexOf(t);-1!==e&&o.config.require.splice(e,1)}o.on&&(xe(o)?!1===await z(o.on,o=>je(e,"source",o,{sourceId:n,type:t}))(t,s)&&(c=!0):(o.queueOn=o.queueOn||[],o.queueOn.push({type:t,data:s})))}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:s});Ee(e,o,n,t,s)}});for(const[t,n]of Object.entries(e.sources))xe(n)&&(null==(i=n.queueOn)?void 0:i.length)&&await ke(e,n,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 i=null==(n=r.config)?void 0:n.require;if(!i)continue;const s=i.indexOf(t);if(-1===s)continue;if(i.splice(s,1),i.length>0)continue;delete e.pending.destinations[o];const a=He(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,t),Ae(e,t,a,o),!c}(e,t,void 0,r),o=await Ne(e)),o||ze({ok:!0})}function Ge(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:i=`${n} ${o}`,data:s={},context:a={},globals:c=e.globals,custom:l={},user:u=e.user,nested:d=[],consent:f=e.consent,id:g=q(),trigger:p="",entity:m=n,action:h=o,timing:v=0,source:y={type:"collector",schema:"4"}}=t;return{name:i,data:s,context:a,globals:c,custom:l,user:u,nested:d,consent:f,id:g,trigger:p,entity:m,action:h,timestamp:r,timing:v,source:y}}function Fe(e={}){var t,n,o;const r=null!=(t=e.maxEntries)?t:1e4,i=null!=(n=e.lowWaterMark)?n:.8,s=null!=(o=e.sweepIntervalMs)?o:6e4,a=Math.floor(r*i),c=new Map,l={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};let u;return s>0&&(u=setInterval(function(){const e=Date.now();let t=0;for(const[n,o]of c)void 0!==o.expires&&o.expires<=e&&(c.delete(n),t++);l.evictions_ttl+=t},s),u&&"function"==typeof u.unref&&u.unref()),{type:"memory",config:{},get(e){const t=c.get(e);if(t)return void 0!==t.expires&&t.expires<=Date.now()?(c.delete(e),l.evictions_ttl++,void l.misses++):(c.delete(e),c.set(e,t),l.hits++,t.value);l.misses++},set(e,t,n){const o=!c.has(e);o||c.delete(e),c.set(e,{value:t,expires:void 0!==n?Date.now()+n:void 0}),l.writes++,o&&l.populates++,c.size>r&&function(){if(c.size<=r)return;const e=c.size-a;let t=0;for(const n of c.keys()){if(t>=e)break;c.delete(n),t++}l.evictions_entries+=t}()},delete(e){c.delete(e)&&l.deletes++},get counters(){return{...l}},destroy(){void 0!==u&&(clearInterval(u),u=void 0),c.clear()}}}function Ke(e,t){const{cacheConfig:n,cacheStore:o,namespace:r,logger:i,storeId:s}=t,a={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=n.rules.map(e=>({match:e.match?K(e.match):()=>!0,ttl:e.ttl})),l=e=>`${r}:${e}`;function u(e,t){const n=void 0===t?{key:e}:{key:e,value:t};return c.find(e=>e.match(n))}const d=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return{...a}},async get(t){const n=l(t),r=await o.get(n);if(void 0!==r)return a.hits++,r;const i=d.get(n);if(i)return a.inflight_dedups++,i;a.misses++;const s=(async()=>{try{const r=await e.get(t);if(void 0===r)return;const i=u(t,r);if(i)try{await o.set(n,r,1e3*i.ttl),a.populates++}catch(e){f("set",t,e)}return r}finally{d.delete(n)}})();return d.set(n,s),s},async set(t,n,r){a.writes++,await e.set(t,n,r);const i=u(t,n);if(i)try{await o.set(l(t),n,1e3*i.ttl)}catch(e){f("set",t,e)}},async delete(t){a.deletes++,await e.delete(t);try{await o.delete(l(t))}catch(e){f("delete",t,e)}}};function f(e,t,n){const o=`store-cache(${s}): cache ${e} failed for "${t}"; backing succeeded, continuing`;i?i.warn(o,{error:n}):console.warn(o,n)}}function Ye(e,t){const n=t.get,o=t.set,r=t.delete;t.get=F(n,"StoreGet",e.hooks,e.logger),t.set=F(o,"StoreSet",e.hooks,e.logger),t.delete=F(r,"StoreDelete",e.hooks,e.logger)}async function Je(e){var t,n;const o=v({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),r=M({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),i={...o.globalsStatic,...e.globals},s={allowed:!1,config:o,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:i,hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{},dropped:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var a,c;s.push=function(e,t){return F(async(n,o={})=>await z(async()=>{var r;const i=Date.now(),{id:s,ingest:a,respond:c,mapping:l,preChain:u,include:d,exclude:f}=o;let g=c,p=n;const h=d||f?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,f):void 0,v=null!=a?a:m(s||"unknown");if(l){const t=await V(p,l,e);if(t.ignore)return ze({ok:!0});if(l.consent&&!$(l.consent,e.consent,t.event.consent))return ze({ok:!0});p=t.event}if((null==u?void 0:u.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,u,p,v,g,s?`source.${s}.next`:void 0);if(null===n.event)return ze({ok:!0});if(n.stopped)return n.respond&&(g=n.respond),ze({ok:!0});if(n.respond&&(g=n.respond),Array.isArray(n.event)){const o=await Promise.all(n.event.map(async n=>{const o=t(n),r=Ge(e,o);return Ne(e,r,{id:s,ingest:v,respond:g},h)}));if(s){e.status.sources[s]||(e.status.sources[s]={count:0,duration:0});const t=e.status.sources[s];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-i}return null!=(r=o[0])?r:ze({ok:!0})}p=n.event}const y=t(p),b=Ge(e,y),w=await Ne(e,b,{id:s,ingest:v,respond:g},h);if(s){e.status.sources[s]||(e.status.sources[s]={count:0,duration:0});const t=e.status.sources[s];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-i}return w},t=>{if(t instanceof H)throw t;return e.status.failed++,e.logger.error("push failed",{event:n,ingest:o.ingest,error:t}),ze({ok:!1})})(),"Push",e.hooks,e.logger)}(s,e=>({timing:Math.round((Date.now()-s.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0-next-1779362268386"},...e})),s.command=(c=Ve,F(async(e,t,n)=>await z(async()=>await c(a,e,t,n),n=>{if(n instanceof H)throw n;return a.status.failed++,a.logger.error("command failed",{command:e,data:t,error:n}),ze({ok:!1})})(),"Command",(a=s).hooks,a.logger));const l=e.stores||{};return s.stores=await async function(e,t={}){var n;const o={};for(const[n,r]of Object.entries(t)){const{code:t,config:i={},env:s={}}=r,a=e.logger.scope("store").scope(n),c={collector:e,logger:a,id:n,config:i,env:s},l=await t(c);o[n]=l}const r=t,i=function(e){const t={};for(const n of Object.keys(e))t[n]="WHITE";const n=[],o=[];function r(i){var s;const a=t[i];if("BLACK"===a)return;if("GRAY"===a){const e=o.indexOf(i),t=o.slice(-1===e?0:e).concat(i).join(" -> ");throw new Error(`Cycle in cache.store chain: ${t}`)}t[i]="GRAY",o.push(i);const c=null==(s=e[i].cache)?void 0:s.store;if(void 0!==c){if(!(c in e))throw new Error(`Store "${i}" cache.store references "${c}", which is not declared in flow.stores`);r(c)}o.pop(),t[i]="BLACK",n.push(i)}for(const n of Object.keys(e))"WHITE"===t[n]&&r(n);return n}(r);for(const t of i){const i=r[t].cache;if(!i)continue;let s,a;void 0!==i.store?(s=o[i.store],a=i.store):(o.__cache||(o.__cache=Fe()),s=o.__cache,a="__cache");const c=null!=(n=i.namespace)?n:t;e.logger.scope("store-cache").scope(t).info(`store "${t}" caches with namespace "${c}:" via ${a}`),o[t]=Ke(o[t],{storeId:t,cacheConfig:i,cacheStore:s,namespace:c,logger:e.logger.scope("store-cache").scope(t)})}for(const[t,n]of Object.entries(o))"__cache"!==t&&Ye(e,n);return o}(s,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,s.stores,e),s.stores.__cache||(s.stores.__cache=Fe()),s.destinations=await async function(e,t={}){var n,o;const r={};for(const[i,s]of Object.entries(t))(null==(o=null==(n=s.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[i]=s:r[i]=He(s);return r}(s,e.destinations||{}),s.transformers=await async function(e,t={}){var n,o,r,i;const s={};for(const[a,c]of Object.entries(t)){const{code:t,env:l={}}=c,u=le(c,"Transformer");if(!u.ok){e.logger.warn(`Transformer ${a} invalid (${u.code}): ${u.reason}. Skipping.`);continue}const{config:d}=ge(c,"before"),{config:f}=ge({...c,config:d},"next"),g=Object.keys(l).length>0?{...f,env:l}:f,{cache:p}=c,h=p?{...g,cache:p}:g,v=e.logger.scope("transformer").scope(a),y={collector:e,logger:v,id:a,ingest:m(a),config:h,env:l},b=null!=t?t:e=>{const t=c.mapping;if(t){const n=[];if(void 0!==t.data&&n.push("data"),t.mapping)for(const[e,o]of Object.entries(t.mapping))if("object"==typeof o&&null!==o)for(const[t,r]of Object.entries(o)){if("object"!=typeof r||null===r)continue;const o=r;void 0!==o.data&&n.push(`mapping[${e}][${t}].data`),void 0!==o.silent&&n.push(`mapping[${e}][${t}].silent`)}return n.length>0&&e.collector.logger.warn(`Transformer ${a}: \`${n.join(", ")}\` ignored at transformer position (only event-mutating fields apply).`),{type:"pass",config:e.config,push:async n=>{const o=await V(n,t,e.collector);return!o.ignore&&{event:o.event}}}}return{type:"pass",config:e.config,push:e=>({event:e})}},w=await b(y);void 0!==c.before&&void 0===(null==(n=w.config)?void 0:n.before)&&(w.config={...null!=(o=w.config)?o:{},before:c.before}),void 0!==c.next&&void 0===(null==(r=w.config)?void 0:r.next)&&(w.config={...null!=(i=w.config)?i:{},next:c.next}),s[a]=w}return s}(s,e.transformers||{}),s}async function Xe(e){e=e||{};const t=await Je(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,i)=>{if("string"==typeof e&&e.startsWith("walker ")){const n=e.replace("walker ","");return o.command(n,t)}let s;if("string"==typeof e)s={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(s.data=t);else{if(!e||"object"!=typeof e)return ze({ok:!1});s=e,t&&"object"==typeof t&&!Array.isArray(t)&&(s.data={...s.data||{},...t})}return n&&"object"==typeof n&&(s.context=n),r&&Array.isArray(r)&&(s.nested=r),i&&"object"==typeof i&&(s.custom=i),o.push(s)}});var o;t.sources.elb=n,await async function(e,t={}){var n;const o={};for(const[r,i]of Object.entries(t)){const t=await Oe(e,r,i);if(!t)continue;const s=null==(n=i.config)?void 0:n.require;t.config={...t.config,init:!1,...s?{require:[...s]}:{}},o[r]=t}Object.assign(e.sources,o);for(const t of Object.keys(o)){const n=e.sources[t];let o=!1;n.init&&await z(n.init.bind(n),n=>{if(n instanceof H)throw n;o=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:t,error:n})})(),o||(n.config.init=!0,xe(n)&&await ke(e,n,t))}return o}(t,e.sources||{});const{consent:r,user:i,globals:s,custom:a}=e;r&&await t.command("consent",r),i&&await t.command("user",i),s&&Object.assign(t.globals,s),a&&Object.assign(t.custom,a),t.config.run&&await t.command("run");let c=n.push;const l=Object.values(t.sources).filter(e=>"elb"!==e.type),u=l.find(e=>e.config.primary);return u?c=u.push:l.length>0&&(c=l[0].push),{collector:t,elb:c}}function Ze(e,t){return(e.getAttribute(t)||"").trim()}function Qe(e,t,n){const o=t.getComputedStyle(e);if("none"===o.display)return!1;if("visible"!==o.visibility)return!1;if(o.opacity&&Number(o.opacity)<.1)return!1;let r;const i=t.innerHeight,s=e.getBoundingClientRect(),a=s.height,c=s.y,l=c+a,u={x:s.x+e.offsetWidth/2,y:s.y+e.offsetHeight/2};if(a<=i){if(e.offsetWidth+s.width===0||e.offsetHeight+s.height===0)return!1;if(u.x<0)return!1;if(u.x>(n.documentElement.clientWidth||t.innerWidth))return!1;if(u.y<0)return!1;if(u.y>(n.documentElement.clientHeight||t.innerHeight))return!1;r=n.elementFromPoint(u.x,u.y)}else{const e=i/2;if(c<0&&l<e)return!1;if(l>i&&c>e)return!1;r=n.elementFromPoint(u.x,i/2)}if(r)do{if(r===e)return!0}while(r=r.parentElement);return!1}function et(e,t,n=!0){return e+(t=null!=t?(n?"-":"")+t:"")}function tt(e,t,n,o=!0){return ft(Ze(t,et(e,n,o))||"").reduce((e,n)=>{let[o,r]=gt(n);if(!o)return e;if(r||(o.endsWith(":")&&(o=o.slice(0,-1)),r=""),r.startsWith("#")){r=r.slice(1);try{let e=t[r];e||"selected"!==r||(e=t.options[t.selectedIndex].text),r=String(e)}catch(e){r=""}}return o.endsWith("[]")?(o=o.slice(0,-2),y(e[o])||(e[o]=[]),e[o].push(S(r))):e[o]=S(r),e},{})}function nt(e,t=ue.Commands.Prefix){var n;const o=e;if(!o)return[];let r=[];const i=ue.Commands.Action,s=`[${et(t,i,!1)}]`,a=e=>{Object.keys(tt(t,e,i,!1)).forEach(n=>{r=r.concat(ot(e,n,t))})};return o!==(o.ownerDocument||o)&&(null==(n=o.matches)?void 0:n.call(o,s))&&a(o),dt(o,s,a),r}function ot(e,t,n=ue.Commands.Prefix){const o=[],{actions:r,nearestOnly:i}=function(e,t,n){let o=t;for(;o;){const t=Ze(o,et(e,ue.Commands.Actions,!1));if(t){const e=it(t);if(e[n])return{actions:e[n],nearestOnly:!1}}const r=Ze(o,et(e,ue.Commands.Action,!1));if(r){const e=it(r);if(e[n]||"click"!==n)return{actions:e[n]||[],nearestOnly:!0}}o=ct(e,o)}return{actions:[],nearestOnly:!1}}(n,e,t);return r.length?(r.forEach(r=>{const s=ft(r.actionParams||"",",").reduce((e,t)=>(e[G(t)]=!0,e),{}),a=st(n,e,s,i);if(!a.length){const t="page",o=`[${et(n,t)}]`,[r,i]=lt(e,o,n,t);a.push({entity:t,data:r,nested:[],context:i})}a.forEach(e=>{var n;o.push({entity:e.entity,action:r.action,data:e.data,trigger:t,context:e.context,nested:null!=(n=e.nested)?n:[]})})}),o):o}function rt(e=ue.Commands.Prefix,t){if(!t)return{};const n=et(e,ue.Commands.Globals,!1);let o={};return ut(t,`[${n}]`,t=>{o=v(o,tt(e,t,ue.Commands.Globals,!1))}),o}function it(e){const t={};return ft(e).forEach(e=>{const[n,o]=gt(e),[r,i]=pt(n);if(!r)return;let[s,a]=pt(o||"");s=s||r,t[r]||(t[r]=[]),t[r].push({trigger:r,triggerParams:i,action:s,actionParams:a})}),t}function st(e,t,n,o=!1){const r=[];let i=t;for(n=0!==Object.keys(n||{}).length?n:void 0;i;){const s=at(e,i,t,n);if(s&&(r.push(s),o))break;i=ct(e,i)}return r}function at(e,t,n,o){const r=Ze(t,et(e));if(!r||o&&!o[r])return null;const i=[t],s=`[${et(e,r)}],[${et(e,"")}]`,a=et(e,ue.Commands.Link,!1);let c={};const l=[],[u,d]=lt(n||t,s,e,r);dt(t,`[${a}]`,n=>{const[o,r]=gt(Ze(n,a));"parent"===r&&dt(t.ownerDocument.body,`[${a}="${o}:child"]`,t=>{i.push(t);const n=at(e,t);n&&l.push(n)})});const f=[];i.forEach(e=>{e.matches(s)&&f.push(e),dt(e,s,e=>f.push(e))});let g={};return f.forEach(t=>{g=v(g,tt(e,t,"")),c=v(c,tt(e,t,r))}),c=v(v(g,c),u),i.forEach(t=>{dt(t,`[${et(e)}]`,t=>{const n=at(e,t);n&&l.push(n)})}),{entity:r,data:c,context:d,nested:l}}function ct(e,t){const n=et(e,ue.Commands.Link,!1);if(t.matches(`[${n}]`)){const[e,o]=gt(Ze(t,n));if("child"===o){const o=t.ownerDocument;let r=null;return ut(o,`[${n}="${e}:parent"]`,e=>{r||(r=e)}),r}}const o=t.ownerDocument.defaultView;return!t.parentElement&&t.getRootNode&&t.getRootNode()instanceof o.ShadowRoot?t.getRootNode().host:t.parentElement}function lt(e,t,n,o){let r={};const i={};let s=e;const a=`[${et(n,ue.Commands.Context,!1)}]`;let c=0;for(;s;)s.matches(t)&&(r=v(tt(n,s,""),r),r=v(tt(n,s,o),r)),s.matches(a)&&(Object.entries(tt(n,s,ue.Commands.Context,!1)).forEach(([e,t])=>{t&&!i[e]&&(i[e]=[t,c])}),++c),s=ct(n,s);return[r,i]}function ut(e,t,n){e.querySelectorAll(t).forEach(n)}function dt(e,t,n){e.querySelectorAll(t).forEach(n);e instanceof(e.ownerDocument||e).defaultView.Element&&e.shadowRoot&&dt(e.shadowRoot,t,n),e.querySelectorAll("*").forEach(e=>{e.shadowRoot&&dt(e.shadowRoot,t,n)})}function ft(e,t=";"){if(!e)return[];const n=new RegExp(`(?:[^${t}']+|'[^']*')+`,"ig");return e.match(n)||[]}function gt(e){const[t,n]=e.split(/:(.+)/,2);return[G(t),G(n)]}function pt(e){const[t,n]=e.split("(",2);return[t,n?n.slice(0,-1):""]}var mt=new WeakMap,ht=new WeakMap,vt=new WeakMap;function yt(e){const t=Date.now();let n=ht.get(e);if(!n||t-n.lastChecked>500){n={isVisible:Qe(e,e.ownerDocument.defaultView,e.ownerDocument),lastChecked:t},ht.set(e,n)}return n.isVisible}function bt(e){const t=(e.ownerDocument||e).defaultView;if(t&&t.IntersectionObserver)return W(()=>new t.IntersectionObserver(t=>{t.forEach(t=>{!function(e,t){var n,o;const r=t.target,i=vt.get(e);if(!i)return;const s=i.timers.get(r);if(t.intersectionRatio>0){const o=Date.now();let a=mt.get(r);if(!a||o-a.lastChecked>1e3){const e=r.ownerDocument.defaultView;a={isLarge:r.offsetHeight>e.innerHeight,lastChecked:o},mt.set(r,a)}if(t.intersectionRatio>=.5||a.isLarge&&yt(r)){const t=null==(n=i.elementConfigs)?void 0:n.get(r);if((null==t?void 0:t.multiple)&&t.blocked)return;if(!s){const t=r.ownerDocument.defaultView.setTimeout(async()=>{var t,n;if(yt(r)){const o=null==(t=i.elementConfigs)?void 0:t.get(r);(null==o?void 0:o.context)&&await Lt(o.context,r,o.trigger);const s=null==(n=i.elementConfigs)?void 0:n.get(r);(null==s?void 0:s.multiple)?s.blocked=!0:function(e,t){const n=vt.get(e);if(!n)return;n.observer&&n.observer.unobserve(t);const o=n.timers.get(t);o&&(clearTimeout(o),n.timers.delete(t)),mt.delete(t),ht.delete(t)}(e,r)}},i.duration);i.timers.set(r,t)}return}}s&&(clearTimeout(s),i.timers.delete(r));const a=null==(o=i.elementConfigs)?void 0:o.get(r);(null==a?void 0:a.multiple)&&(a.blocked=!1)}(e,t)})},{rootMargin:"0px",threshold:[0,.5]}),()=>{})()}function wt(e,t,n={multiple:!1}){var o;const r=e.settings.scope;if(!r)return;const i=vt.get(r);(null==i?void 0:i.observer)&&t&&(i.elementConfigs||(i.elementConfigs=new WeakMap),i.elementConfigs.set(t,{multiple:null!=(o=n.multiple)&&o,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),i.observer.observe(t))}function kt(e){if(!e)return;const t=vt.get(e);t&&(t.observer&&t.observer.disconnect(),vt.delete(e))}function xt(e,t,n,o,r,i,s){const{elb:a,settings:c}=e;if(O(t)&&t.startsWith("walker "))return a(t,n);if(x(t)){const e=t;if(!e.source&&c.scope){const t=c.scope.ownerDocument||c.scope,n=t.defaultView;e.source=Ot(n,t)}return!e.globals&&c.scope&&(e.globals=rt(c.prefix,c.scope)),a(e)}const[l]=String(x(t)?t.name:t).split(" ");let u,d=x(n)?n:{},f={},g=!1;if(w(n)&&(u=n,g=!0),w(r)?u=r:x(r)&&Object.keys(r).length&&(f=r),u){const e=st(c.prefix||"data-elb",u).find(e=>e.entity===l);e&&(g&&(d=e.data),e.context&&(f=e.context))}const p=c.scope?c.scope.ownerDocument||c.scope:void 0,m=null==p?void 0:p.defaultView;"page"===l&&m&&(d.id=d.id||m.location.pathname);const h=rt(c.prefix,c.scope);return a({name:String(t||""),data:d,context:f,globals:h,nested:i,custom:s,trigger:O(o)?o:"",source:m&&p?Ot(m,p):void 0})}function Ot(e,t){return{type:"browser",platform:"web",url:e.location.href,referrer:t.referrer}}var jt,Ct=[],Et="click",At="hover",St="load",$t="pulse",qt="scroll",Pt="submit",Dt="impression",It="visible",_t="wait";function Tt(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;if(!n)return;n.addEventListener("click",W(function(t){Wt.call(this,e,t)})),n.addEventListener("submit",W(function(t){zt.call(this,e,t)}))}(e,t)}function Mt(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;Ct=[];const o=n;if(!o)return;kt(o),function(e,t=1e3){vt.has(e)||vt.set(e,{observer:bt(e),timers:new WeakMap,duration:t})}(o,1e3);const r=et(t.prefix,ue.Commands.Action,!1),i=o.ownerDocument||o;o!==i&&Nt(e,o,r,t);dt(o,`[${r}]`,n=>{Nt(e,n,r,t)}),Ct.length&&function(e,t){const n=t.ownerDocument||t,o=n.defaultView,r=(e,t)=>e.filter(([e,n])=>{const r=o.scrollY+o.innerHeight,i=e.offsetTop;if(r<i)return!0;const s=e.clientHeight;return!(100*(1-(i+s-r)/(s||1))>=n)||(Lt(t,e,qt),!1)});jt||(jt=function(e,t=1e3){const{wait:n}=D(t,1e3);let o=null;return function(...t){if(null===o)return o=setTimeout(()=>{o=null},n),e(...t)}}(function(){Ct=r.call(t,Ct,e)}),t.addEventListener("scroll",jt))}(e,o)}(e,t)}async function Lt(e,t,n){const o=ot(t,n,e.settings.prefix);return Promise.all(o.map(t=>xt(e,{name:`${t.entity} ${t.action}`,...t,trigger:n})))}function Nt(e,t,n,o){const r=Ze(t,n);r&&Object.values(it(r)).forEach(n=>n.forEach(n=>{switch(n.trigger){case At:!function(e,t){t.addEventListener("mouseenter",W(function(t){const n=Rt(t);n&&Lt(e,n,At)}))}(e,t);break;case St:!function(e,t){Lt(e,t,St)}(e,t);break;case $t:!function(e,t,n=""){const o=t.ownerDocument;setInterval(()=>{o.hidden||Lt(e,t,$t)},parseInt(n||"")||15e3)}(e,t,n.triggerParams);break;case qt:!function(e,t=""){const n=parseInt(t||"")||50;if(n<0||n>100)return;Ct.push([e,n])}(t,n.triggerParams);break;case Dt:wt(e,t);break;case It:wt(e,t,{multiple:!0});break;case _t:!function(e,t,n=""){setTimeout(()=>Lt(e,t,_t),parseInt(n||"")||15e3)}(e,t,n.triggerParams)}}))}function Rt(e){var t;const n=null==(t=e.composedPath)?void 0:t.call(e),o=(null==n?void 0:n.length)?n[0]:e.target;if(o&&"object"==typeof o&&"tagName"in o)return o}function Wt(e,t){const n=Rt(t);n&&Lt(e,n,Et)}function zt(e,t){const n=Rt(t);n&&Lt(e,n,Pt)}function Ht(e,t={}){var n;const o=t.name||"elbLayer",r=t.window,i=t.logger;if(!r)return;const s=r;s[o]||(s[o]=[]);const a=s[o],c=r.document;null==i||i.debug("initElbLayer enter",{layerName:o,queuedItems:a.length}),a.push=function(...n){if(Vt(n[0])){const o=[...Array.from(n[0])],r=Array.prototype.push.apply(this,[o]);return Ut(e,t.prefix,o,c,i),r}const o=Array.prototype.push.apply(this,n);return n.forEach(n=>{Ut(e,t.prefix,n,c,i)}),o},Array.isArray(a)&&a.length>0&&(null==i||i.debug("initElbLayer drain walker commands",{count:a.length}),function(e,t,n,o,r){const i="walker ",s=[...n],a=new Set;s.forEach((n,s)=>{const c=Bt(n);if(!c)return;const l=c[0];!x(l)&&O(l)&&l.startsWith(i)&&(a.add(s),Ut(e,t,c,o,r))});const c=[...a].sort((e,t)=>t-e);for(const e of c)n.splice(e,1);null==r||r.debug("drainWalkerCommands done",{consumed:a.size,remaining:n.length})}(e,null!=(n=t.prefix)?n:"data-elb",a,c,i))}function Bt(e){const t=Vt(e)?[...Array.from(e)]:null!=(n=e)&&"object"==typeof n&&"length"in n&&"number"==typeof n.length?Array.from(e):[e];var n;if(!Array.isArray(t)||0===t.length)return null;if(1===t.length&&!t[0])return null;const o=t[0];return x(o)&&0===Object.keys(o).length||!x(o)&&O(o)&&""===o.trim()?null:t}function Ut(e,t="data-elb",n,o,r){W(()=>{if(Array.isArray(n)){const[i,...s]=n;if(!i||O(i)&&""===i.trim())return void(null==r||r.debug("pushCommand skipped (empty/invalid action)",{item:n}));if(O(i)&&i.startsWith("walker "))return null==r||r.debug("pushCommand walker command",{action:i,data:s[0]}),void e(i,s[0]);null==r||r.debug("pushCommand event (translated)",{action:i,rest:s}),xt({elb:e,settings:{prefix:t,scope:o,pageview:!1,elb:"",elbLayer:!1}},i,...s)}else if(n&&"object"==typeof n){if(0===Object.keys(n).length)return void(null==r||r.debug("pushCommand skipped (empty object)"));null==r||r.debug("pushCommand object event",{item:n}),e(n)}},e=>{null==r||r.warn("pushCommand failed",{error:e,item:n})})()}function Vt(e){return null!=e&&"object"==typeof e&&"[object Arguments]"===Object.prototype.toString.call(e)}var Gt={},Ft={};r(Ft,{createTrigger:()=>cn,env:()=>Kt,step:()=>Qt,trigger:()=>ln});var Kt={};r(Kt,{push:()=>Zt});var Yt=()=>{},Jt=()=>()=>Promise.resolve({ok:!0}),Xt={error:Yt,warn:Yt,info:Yt,debug:Yt,throw:e=>{throw"string"==typeof e?new Error(e):e},json:Yt,scope:()=>Xt},Zt={get push(){return Jt()},get command(){return Jt()},get elb(){return Jt()},get window(){return{addEventListener:Yt,removeEventListener:Yt,location:{href:"https://example.com/page",pathname:"/page",search:"?query=test",hash:"#section",host:"example.com",hostname:"example.com",origin:"https://example.com",protocol:"https:"},document:{},navigator:{language:"en-US",userAgent:"Mozilla/5.0 (Test)"},screen:{width:1920,height:1080},innerWidth:1920,innerHeight:1080,pageXOffset:0,pageYOffset:0,scrollX:0,scrollY:0}},get document(){return{addEventListener:Yt,removeEventListener:Yt,querySelector:Yt,querySelectorAll:()=>[],getElementById:Yt,getElementsByClassName:()=>[],getElementsByTagName:()=>[],createElement:()=>({setAttribute:Yt,getAttribute:Yt,addEventListener:Yt,removeEventListener:Yt}),body:{appendChild:Yt,removeChild:Yt},documentElement:{scrollTop:0,scrollLeft:0},readyState:"complete",title:"Test Page",referrer:"",cookie:""}},logger:Xt},Qt={};r(Qt,{clickEvent:()=>tn,contextAndGlobals:()=>an,dataAttributeTypes:()=>sn,impressionEvent:()=>on,nestedEntities:()=>rn,pageView:()=>en,submitEvent:()=>nn});var en={title:"Page view",description:"A page load trigger captures the current URL, title, and referrer as a walker page view event.",trigger:{type:"load",options:{url:"https://example.com/docs",title:"Documentation",referrer:"https://example.com/"}},in:"",out:[["elb",{name:"page view",data:{domain:"example.com",title:"Documentation",referrer:"https://example.com/",id:"/docs"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/docs",referrer:"https://example.com/"}}]]},tn={title:"Click event",description:"A button click with walker data attributes is captured as an entity action event with the mapped label data.",trigger:{type:"click",options:"button"},in:'<button data-elb="cta" data-elb-cta="label:Sign Up" data-elbaction="click:click">Sign Up</button>',out:[["elb",{name:"cta click",entity:"cta",action:"click",data:{label:"Sign Up"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},nn={title:"Submit event",description:"A form submit with walker data attributes produces a signup complete event carrying the selected plan.",trigger:{type:"submit",options:"form"},in:'<form data-elb="signup" data-elb-signup="plan:premium" data-elbaction="submit:complete"></form>',out:[["elb",{name:"signup complete",entity:"signup",action:"complete",data:{plan:"premium"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"submit"}]]},on={title:"Impression event",description:"An intersection observer impression on a div with walker attributes emits a banner view event.",trigger:{type:"impression",options:"div"},in:'<div data-elb="banner" data-elb-banner="type:promotional;position:sidebar" data-elbaction="impression:view"></div>',out:[["elb",{name:"banner view",entity:"banner",action:"view",data:{type:"promotional",position:"sidebar"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"impression"}]]},rn={title:"Nested entities",description:"A page load produces a page view plus a product view whose nested size entity is captured on the product event.",trigger:{type:"load"},in:'<div data-elb="product" data-elb-product="id:SKU-42;name:Sneakers" data-elbaction="load:view"><div data-elb="size" data-elb-size="selected:large;inStock:true"></div></div>',out:[["elb",{name:"page view",data:{domain:"example.com",title:"",referrer:"",id:"/"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""}}],["elb",{name:"product view",entity:"product",action:"view",data:{id:"SKU-42",name:"Sneakers"},context:{},globals:{},nested:[{entity:"size",data:{selected:"large",inStock:!0},context:{},nested:[]}],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"load"}]]},sn={title:"Data attribute types",description:"Walker data attributes parse scalar, boolean, and array values into typed fields on the emitted event.",trigger:{type:"click",options:"div"},in:'<div data-elb="product" data-elb-product="price:99.99;available:true;colors[]:red;colors[]:blue" data-elbaction="click:select"></div>',out:[["elb",{name:"product select",entity:"product",action:"select",data:{price:99.99,available:!0,colors:["red","blue"]},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},an={title:"Context and globals",description:"Walker context and globals attributes attach ambient metadata to events emitted by the browser source.",trigger:{type:"click",options:'[data-elb="cta"]'},in:'<div data-elbcontext="test:engagement_flow" data-elbglobals="language:en;plan:premium"><div data-elb="cta" data-elb-cta="label:Try Now" data-elbaction="click:signup">Try Now</div></div>',out:[["elb",{name:"cta signup",entity:"cta",action:"signup",data:{label:"Try Now"},context:{test:["engagement_flow",0]},globals:{language:"en",plan:"premium"},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},cn=async(e,t)=>{const n=(null==t?void 0:t.sourceId)||"browser";let o;const r=document,i=window;return{get flow(){return o},trigger:(t,s)=>async a=>{var c;if("load"===t||!t){const e="object"==typeof s&&null!==s?s:{};if(e.url){const t=new URL(e.url);i.history.replaceState({},"",t.pathname)}e.title&&(r.title=e.title),e.referrer&&Object.defineProperty(r,"referrer",{value:e.referrer,configurable:!0})}if(a&&(r.body.innerHTML=a),!o){const t=await Xe({...e,run:null==(c=e.run)||c});o={collector:t.collector,elb:t.elb}}if(!t||"load"===t)return;const l="string"==typeof s?s:void 0,u=l?r.querySelector(l):null;if(!u)return void console.warn(`Trigger: element not found for selector "${l}"`);const d=o.collector.sources[n];if(!d)return void console.warn(`Trigger: source "${n}" not found in collector`);const f={elb:o.elb,settings:d.config.settings};await Lt(f,u,t)}}},ln=(e,t)=>{if(!e||"object"!=typeof e)return;const n=e,o=t.document,r=t.window,i=()=>{var e,t;if(!n.attributes)return;const r=(null==(t=null==(e=n.element)?void 0:e.match(/^(\w+)/))?void 0:t[1])||"div",i=o.createElement(r);for(const[e,t]of Object.entries(n.attributes))i.setAttribute(e,t);if(n.children)for(const e of n.children){const t=o.createElement("div");for(const[n,o]of Object.entries(e))t.setAttribute(n,o);i.appendChild(t)}return o.body.appendChild(i),i};if(!n.trigger||"load"===n.trigger){if(n.url){const e=new URL(n.url);r.history.replaceState({},"",e.pathname)}return n.title&&(o.title=n.title),n.referrer&&Object.defineProperty(o,"referrer",{value:n.referrer}),void i()}return()=>{const e=i();if(e)switch(n.trigger){case"click":e.dispatchEvent(new MouseEvent("click",{bubbles:!0}));break;case"submit":e.dispatchEvent(new Event("submit",{bubbles:!0}));break;case"hover":e.dispatchEvent(new MouseEvent("mouseenter",{bubbles:!0}));break;case"scroll":r.dispatchEvent(new Event("scroll"))}}};function un(e={}){const t=e.prefix||"data-elb";return function(e){let n,o=e;const r={},i={},s={},a={},c={},l={};function u(e){return Object.entries(e).map(([e,t])=>`${e}:${function(e){if(!b(e)||null===e)return"undefined";let t=String(e);return t=t.replace(/\\/g,"\\\\"),t=t.replace(/;/g,"\\;"),t=t.replace(/:/g,"\\:"),t=t.replace(/'/g,"\\'"),t}(t)}`).join(";")}const d={entity:e=>(n=e,o=e,d),data(e,t){const n=null!=o?o:"";return r[n]||(r[n]={}),O(e)?r[n][e]=t:Object.assign(r[n],e),d},action(e,t){if(O(e))if(b(t))i[e]=t;else if(e.includes(":")){const[t,n]=e.split(":",2);i[t]=n}else i[e]=e;else Object.assign(i,e);return d},actions(e,t){if(O(e))if(b(t))s[e]=t;else if(e.includes(":")){const[t,n]=e.split(":",2);s[t]=n}else s[e]=e;else Object.assign(s,e);return d},context:(e,t)=>(O(e)?a[e]=t:Object.assign(a,e),d),globals:(e,t)=>(O(e)?c[e]=t:Object.assign(c,e),d),link:(e,t)=>(O(e)?l[e]=t:Object.assign(l,e),d),get(){const e={};return n&&(e[t]=n),Object.entries(r).forEach(([n,o])=>{if(Object.keys(o).length>0){e[n?`${t}-${n}`:`${t}-`]=u(o)}}),Object.keys(i).length>0&&(e[`${t}action`]=u(i)),Object.keys(s).length>0&&(e[`${t}actions`]=u(s)),Object.keys(a).length>0&&(e[`${t}context`]=u(a)),Object.keys(c).length>0&&(e[`${t}globals`]=u(c)),Object.keys(l).length>0&&(e[`${t}link`]=u(l)),e}};return d}}var dn,fn=async e=>{const{config:t,env:n,logger:o}=e,{elb:r,command:i,window:s,document:a}=n,c=(null==t?void 0:t.settings)||{},l=s||(void 0!==globalThis.window?globalThis.window:void 0),u=a||(void 0!==globalThis.document?globalThis.document:void 0),d=function(e={},t){return{prefix:"data-elb",pageview:!0,elb:"elb",elbLayer:"elbLayer",scope:t||void 0,...e}}(c,u),f={elb:r,settings:d},g=e=>{if(!e.pageview)return;const[t,n]=function(e,t){const n=t.ownerDocument||t,o=n.defaultView.location,r="page",i="body"in t?t.body:t,[s,a]=lt(i,`[${et(e,r)}]`,e,r);return s.domain=o.hostname,s.title=n.title,s.referrer=n.referrer,o.search&&(s.search=o.search),o.hash&&(s.hash=o.hash),[s,a]}(e.prefix||"data-elb",e.scope);xt(f,"page view",t,"load",n)};return{type:"browser",config:{settings:d},push:(...e)=>{const[t,n,o,r,i,s]=e;return xt(f,t,n,o,r,i,s)},on:async e=>{if("run"===e)u&&l&&(Mt(f,d),function(e,t,n,o){const r=O(t.elbLayer)?t.elbLayer:"elbLayer",i=t.prefix||"data-elb",s=n[r];if(!Array.isArray(s))return;const a=n.document;let c=-1;s.forEach((e,t)=>{const n=Bt(e);n&&O(n[0])&&"walker run"===n[0]&&(c=t)});const l=[];for(let e=c+1;e<s.length;e++){const t=Bt(s[e]);t&&l.push(t)}s.length=c+1,null==o||o.debug("drainNonWalkerEvents",{anchor:c,drained:l.length}),l.forEach(t=>Ut(e,i,t,a,o))}(r,d,l,o),g(d))},init:async()=>{l&&u&&(!1!==d.elbLayer&&r&&Ht(r,{name:O(d.elbLayer)?d.elbLayer:"elbLayer",prefix:d.prefix,window:l,logger:o}),await async function(e,t,n){const o=()=>{e(t,n)},r=n.scope;if(!r)return void o();const i=r.ownerDocument||r;"loading"!==i.readyState?o():i.addEventListener("DOMContentLoaded",o)}(Tt,f,d),O(d.elb)&&d.elb&&(l[d.elb]=(...e)=>{const[t,n,o,r,i,s]=e;return xt(f,t,n,o,r,i,s)}))},destroy:async()=>{u&&kt(d.scope||u)}}},gn=fn;return dn=i,((r,i,s,a)=>{if(i&&"object"==typeof i||"function"==typeof i)for(let c of n(i))o.call(r,c)||c===s||e(r,c,{get:()=>i[c],enumerable:!(a=t(i,c))||a.enumerable});return r})(e({},"__esModule",{value:!0}),dn)})();
|
|
1
|
+
"use strict";var Source=(()=>{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})},i={};r(i,{SourceBrowser:()=>Gt,createTagger:()=>un,default:()=>gn,examples:()=>Ft,getAllEvents:()=>nt,getElbAttributeName:()=>et,getElbValues:()=>tt,getEvents:()=>ot,getGlobals:()=>rt,sourceBrowser:()=>fn});var s=Object.defineProperty,a=(e,t)=>{for(var n in t)s(e,n,{get:t[n],enumerable:!0})};function c(e,t){if("collector"===e)return"collector";if(!t)throw new Error(`stepId(${e}) requires an id`);return`${e}.${t}`}a({},{stepId:()=>c});function l(e,t){const n=e.destinations[t];if(!n)throw new Error(`Destination not found: ${t}`);return n}a({},{getDestination:()=>l});a({},{Level:()=>d});var u,d=((u=d||{})[u.ERROR=0]="ERROR",u[u.WARN=1]="WARN",u[u.INFO=2]="INFO",u[u.DEBUG=3]="DEBUG",u);function f(e,t){const n=e.transformers[t];if(!n)throw new Error(`Transformer not found: ${t}`);return n}a({},{getTransformer:()=>f});function g(e,t){const n=e.sources[t];if(!n)throw new Error(`Source not found: ${t}`);return n}a({},{getSource:()=>g});function p(e,t){const n=e.stores[t];if(!n)throw new Error(`Store not found: ${t}`);return n}function m(e){return{_meta:{hops:0,path:[e]}}}a({},{getStore:()=>p});var h={merge:!0,shallow:!0,extend:!0};function v(e,t={},n={}){n={...h,...n};const o=Object.entries(t).reduce((t,[o,r])=>{const i=e[o];return n.merge&&Array.isArray(i)&&Array.isArray(r)?t[o]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...i]):(n.extend||o in e)&&(t[o]=r),t},{});return n.shallow?{...e,...o}:(Object.assign(e,o),e)}function y(e){return Array.isArray(e)}function b(e){return void 0!==e}function w(e){return!(!e||"object"!=typeof e)&&("body"in e||"tagName"in e)}function k(e){return"function"==typeof e}function x(e){return"object"==typeof e&&null!==e&&!y(e)&&"[object Object]"===Object.prototype.toString.call(e)}function O(e){return"string"==typeof e}function j(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]=j(e[o],t));return n}if("[object Array]"===n){const n=[];return t.set(e,n),e.forEach(e=>{n.push(j(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 C(e,t="",n){const o=t.split(".");let r=e;for(let e=0;e<o.length;e++){const t=o[e];if("*"===t&&y(r)){const t=o.slice(e+1).join("."),i=[];for(const e of r){const o=C(e,t,n);i.push(o)}return i}if(r=x(r)||y(r)?r[t]:void 0,void 0===r)break}return b(r)?r:n}function E(e,t,n){if(!x(e))return e;const o=j(e),r=t.split(".");let i=o;for(let e=0;e<r.length;e++){const t=r[e];e===r.length-1?i[t]=n:(t in i&&"object"==typeof i[t]&&null!==i[t]||(i[t]={}),i=i[t])}return o}var A={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 S(e){if("true"===e)return!0;if("false"===e)return!1;const t=Number(e);return e==t&&""!==e?t:String(e)}function $(e,t={},n={}){const o={...t,...n},r={};let i=!e||0===Object.keys(e).length;return Object.keys(o).forEach(t=>{o[t]&&(r[t]=!0,e&&e[t]&&(i=!0))}),!!i&&r}function q(){let e="";for(let t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}function P(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 D(e,t){var n;return"number"==typeof e?{wait:e}:e?{wait:null!=(n=e.wait)?n:t,size:e.size,age:e.age}:{wait:t}}function I(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function _(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=I(e)):n=e,void 0!==t&&(t instanceof Error?o.error=I(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=I(o.error))):o.value=t),{message:n,context:o}}var T=(e,t,n,o)=>{const r=`${d[e]}${o.length>0?` [${o.join(":")}]`:""}`,i=Object.keys(n).length>0,s=0===e?console.error:1===e?console.warn:console.log;i?s(r,t,n):s(r,t)};function M(e={}){return L({level:void 0!==e.level?(t=e.level,"string"==typeof t?d[t]:t):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var t}function L(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,i=(e,o,i)=>{if(e<=t){const t=_(o,i);n?n(e,t.message,t.context,r,T):T(e,t.message,t.context,r)}};return{error:(e,t)=>i(0,e,t),warn:(e,t)=>i(1,e,t),info:(e,t)=>i(2,e,t),debug:(e,t)=>i(3,e,t),throw:(e,t)=>{const o=_(e,t);throw n?n(0,o.message,o.context,r,T):T(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>L({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function N(e){return function(e){return"boolean"==typeof e}(e)||O(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!b(e)||y(e)&&e.every(N)||x(e)&&Object.values(e).every(N)}function R(e){return N(e)?e:void 0}function W(e,t,n){return function(...o){try{return e(...o)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function z(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())}}}var H=class e extends Error{constructor(t,n){super(t,n),this.name="FatalError",Object.setPrototypeOf(this,e.prototype)}};async function B(e,t={},n={}){var o,r;if(!b(e))return;const i=x(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),s=null!=(r=n.event)?r:x(e)?e:{};if(!n.collector)throw new Error("getMappingValue: context.collector is required");const a={event:s,mapping:t,collector:n.collector,logger:n.collector.logger,consent:i},c=y(t)?t:[t];for(const t of c){const o=await z(U,e=>{if(e instanceof H)throw e;n.collector&&n.collector.status.failed++,a.logger.error("mapping processing failed",{event:s,error:e})})(e,t,{...a,mapping:t});if(b(o))return o}}async function U(e,t,n){return(y(t)?t:[t]).reduce(async(t,o)=>{const r=await t;if(r)return r;const i=O(o)?{key:o}:o;if(!Object.keys(i).length)return;const{condition:s,consent:a,fn:c,key:l,loop:u,map:d,set:f,validate:g,value:p}=i,m={...n,mapping:o};if(s&&!await z(s,e=>{if(e instanceof H)throw e;return m.logger.error("mapping condition failed",{event:m.event,error:e}),!1})(e,m))return;if(a&&!$(a,m.consent))return p;let h=b(p)?p:e;if(c&&(h=await z(c,e=>{if(e instanceof H)throw e;m.logger.error("mapping fn failed",{event:m.event,error:e})})(e,m)),l&&(h=C(e,l,p)),u){const[t,n]=u,o="this"===t?[e]:await B(e,t,m);y(o)&&(h=(await Promise.all(o.map(e=>B(e,n,m)))).filter(b))}else d?h=await Object.entries(d).reduce(async(t,[n,o])=>{const r=await t,i=await B(e,o,m);return b(i)&&(r[n]=i),r},Promise.resolve({})):f&&(h=await Promise.all(f.map(t=>U(e,t,m))));g&&!await z(g,e=>{if(e instanceof H)throw e;return m.logger.error("mapping validate failed",{event:m.event,error:e}),!1})(h,m)&&(h=void 0);const v=R(h);return b(v)?v:R(p)},Promise.resolve(void 0))}async function V(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await B(e,o,{collector:n,event:e});e=E(e,t,r)}));const{eventMapping:r,mappingKey:i}=await async function(e,t,n){var o;const[r,i]=(e.name||"").split(" ");if(!t||!r||!i)return{};let s,a="",c=r,l=i;const u=t=>{if(t)return(y(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:x(e)&&e.consent||n.consent};return Boolean(t.condition(e,o))})};t[c]||(c="*");const d=t[c];return d&&(d[l]||(l="*"),s=u(d[l])),s||(c="*",l="*",s=u(null==(o=t[c])?void 0:o[l])),s&&(a=`${c} ${l}`),{eventMapping:s,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 B(e,o,{collector:n,event:e});e=E(e,t,r)}));let s=t.data&&await B(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:s,mapping:r,mappingKey:i,ignore:!0,silent:a};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await B(e,r.data,{collector:n,event:e});s=x(s)&&x(t)?v(s,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(A):t;for(const t of o){const o=A[t];if(!o)continue;const r=o(e);if(x(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&&(s=x(s)?v(t,s):null!=s?s:t)}return{event:e,data:s,mapping:r,mappingKey:i,ignore:!1,silent:a}}function G(e){return e?e.trim().replace(/^'|'$/g,"").trim():""}function F(e,t,n,o){return function(...r){let i;const s="pre"+t,a="post"+t,c=n[s],l=n[a],u=(e,t)=>{o?o.warn(e,{error:t}):console.warn(e,t)};if(c)try{i=c({fn:e},...r)}catch(t){u(`Hook ${String(s)} failed, falling back to original function`,t),i=e(...r)}else i=e(...r);if(l)try{i=l({fn:e,result:i},...r)}catch(e){u(`Hook ${String(a)} failed, keeping original result`,e)}return i}}function K(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const t=e.and.map(K);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(K);return e=>t.some(t=>t(e))}return function(e){const{key:t,operator:n,value:o,not:r}=e,i=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=C(e,t),o=i(n);return r?!o:o}}(e)}function Y(e){return e.map(e=>{var t,n;if("string"==typeof e)return{match:()=>!0,next:{type:"static",value:e}};if(Array.isArray(e))return{match:()=>!0,next:null!=(t=J(e))?t:{type:"chain",value:[]}};const o=e;return{match:o.match?K(o.match):()=>!0,next:null!=(n=J(o))?n:{type:"chain",value:[]}}})}function J(e){if(null==e)return;if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(e=>{return"object"==typeof(t=e)&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"one"in t||"many"in t);var t})}(e))return J({one:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const t=[];for(const n of e){const e=J(n);void 0!==e&&t.push(e)}if(0===t.length)return;return{type:"sequence",value:t}}const t=e;if("next"in t&&void 0!==t.next)return t.match?{type:"gate",match:K(t.match),next:J(t.next)}:J(t.next);if("one"in t&&t.one){const e=Y(t.one);return t.match?{type:"gate",match:K(t.match),next:{type:"one",routes:e}}:{type:"one",routes:e}}if("many"in t&&t.many){const e=Y(t.many);return t.match?{type:"gate",match:K(t.match),next:{type:"many",routes:e}}:{type:"many",routes:e}}return t.match?{type:"gate",match:K(t.match)}:void 0}var X=new WeakMap;function Z(e,t={}){if(null==e)return[];let n;if("object"==typeof e){const t=X.get(e);t?n=t:(n=J(e),n&&X.set(e,n))}else n=J(e);if(!n)return[];const o=Q(n,t);return void 0===o?[]:Array.isArray(o)?o:[o]}function Q(e,t={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(t))return;return Q(e.next,t)}if("sequence"===e.type){const n=[];for(const o of e.value){const e=Q(o,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}if("many"===e.type){const n=[];for(const o of e.routes){if(!o.match(t))continue;const e=Q(o.next,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}for(const n of e.routes)if(n.match(t))return Q(n.next,t)}}function ee(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function te(e){var t;return{stop:null!=(t=e.stop)&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?K(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}async function ne(e,t,n,o){const r=e.rules.find(e=>e.match(n));if(!r)return null;const i=r.key.map(e=>{var t;return String(null!=(t=C(n,e))?t:"")});if(i.every(e=>""===e))return null;const s=i.join(":"),a=null!=o?o:e.namespace,c=a?`${a}:${s}`:s,l=await t.get(c);return void 0!==l?{status:"HIT",key:c,value:l,rule:r}:{status:"MISS",key:c,rule:r}}function oe(e,t,n,o){e.set(t,n,1e3*o)}async function re(e,t,n,o){if(!t)return e;let r=e;for(const[e,i]of Object.entries(t))r=E(r,e,await B(n,i,{collector:o}));return r}var ie={Source:["code","package","import","before","next","cache"],Transformer:["code","package","import","before","next","cache","mapping"],Destination:["code","package","import","before","next","cache"],Store:["code","package","import","cache"]},se=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],ae={Source:["primary"],Transformer:[],Destination:[],Store:[]},ce=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function le(e,t){const n=(o=t,new Set([...ie[o],...se,...ae[o]]));var o;for(const o of Object.keys(e))if(!n.has(o))return{ok:!1,code:"UNKNOWN_KEY",key:o,reason:`Unknown key "${o}" on ${t}. Allowed: ${[...n].sort().join(", ")}.`};const r=void 0!==e.package,i=void 0!==e.import,s=void 0!==e.code;return s&&"string"==typeof e.code?{ok:!1,code:"OBSOLETE_CODE_STRING",key:"code",reason:`code: "<name>" is no longer supported. Use import: "${e.code}" with the package field instead.`}:s&&("object"!=typeof e.code&&"function"!=typeof e.code||null===e.code||Array.isArray(e.code))?{ok:!1,code:"INVALID_CODE_SHAPE",key:"code",reason:"code must be an object ({ push, type?, init? }) or a resolved function value."}:s&&r?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:s&&i?{ok:!1,code:"CONFLICT",key:"import",reason:"Cannot specify both `code` and `import`."}:i&&!r?{ok:!1,code:"MISSING_PACKAGE",key:"import",reason:"`import` requires `package` to be set."}:!i||"string"==typeof e.import&&ce.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:`import must match ${ce.source}. Got: ${JSON.stringify(e.import)}.`}}var ue={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 de(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache}function fe(e){var t;const n={};for(const[o,r]of Object.entries(e)){const e=null==(t=r.config)?void 0:t.next;"string"==typeof e||Array.isArray(e)&&e.every(e=>"string"==typeof e)?n[o]={next:e}:n[o]={}}return n}function ge(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 pe(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 me(e,t,n){if(t.init&&!t.config.init){const o=t.type||"unknown",r=e.logger.scope(`transformer:${o}`),i={collector:e,logger:r,id:n,ingest:m(n),config:t.config,env:be(t.config.env)};r.debug("init");const s=await F(t.init,"TransformerInit",e.hooks,e.logger)(i);if(!1===s)return!1;t.config={...s||t.config,env:(null==s?void 0:s.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function he(e,t,n,o,r,i){const s=t.type||"unknown",a=e.logger.scope(`transformer:${s}`),c={collector:e,logger:a,id:n,ingest:r,config:t.config,env:{...be(t.config.env),...i?{respond:i}:{}}};a.debug("push",{event:o.name});const l=await F(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),l}function ve(e,t){return e?{...e,_meta:{...e._meta,path:[...e._meta.path]}}:m(t)}async function ye(e,t,n,o,r,i,s){var a,c,l,u,d,f,g,p;r||(r=m(null!=(a=n[0])?a:"chain")),s&&r._meta&&(r._meta.chainPath=s);let h=o,v=i;for(const o of n){const i=t[o];if(!i){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 z(me,t=>{if(t instanceof H)throw t;return e.status.failed++,e.logger.scope(`transformer:${i.type||"unknown"}`).error("transformer init failed",{transformer:o,error:t}),!1})(e,i,o))return{event:null,respond:v};if(s&&void 0!==(null==(l=null==(c=i.config)?void 0:c.chainMocks)?void 0:l[s])){const t=i.config.chainMocks[s];e.logger.scope(`transformer:${i.type||"unknown"}`).debug("chainMock",{chain:s}),h=t;continue}if(void 0!==(null==(u=i.config)?void 0:u.mock)){e.logger.scope(`transformer:${i.type||"unknown"}`).debug("mock"),h=i.config.mock;continue}if(null==(d=i.config)?void 0:d.disabled)continue;const a=null==(f=i.config)?void 0:f.cache,m=a?te(a):void 0,y=m?de(m,e):void 0;let b;if(m&&y){const e=ee(r,h),t=await ne(m,y,e);if("HIT"===(null==t?void 0:t.status)&&t.value){if(h=t.value,m.stop)return{event:h,respond:v,stopped:!0};continue}"MISS"===(null==t?void 0:t.status)&&(b={key:t.key,ttl:t.rule.ttl})}const w=i.config.before;if(w){const n=Z(w,ee(r,h));if(1===n.length){const o=pe(n[0],fe(t));if(o.length>0){const n=await ye(e,t,o,h,r,v,s);if(null===n.event)return{event:null,respond:null!=(g=n.respond)?g:v};if(n.stopped)return{event:Array.isArray(n.event)?n.event[0]:n.event,respond:null!=(p=n.respond)?p:v,stopped:!0};n.respond&&(v=n.respond),h=Array.isArray(n.event)?n.event[0]:n.event}}else n.length>1&&await Promise.all(n.map(n=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(n,fe(t)),h,ve(r,n),void 0,s)))}const k=await z(he,t=>(e.logger.scope(`transformer:${i.type||"unknown"}`).error("Push failed",{error:t}),!1))(e,i,o,h,r,v);if(!1===k)return{event:null,respond:v};if(Array.isArray(k)){const i=n.slice(n.indexOf(o)+1),a=await Promise.all(k.map(async n=>{const o=n.event||h,a=ve(r,"unknown");if(n.next){const r=Z(n.next,ee(a,o));if(0===r.length)return{event:o,respond:v};if(1===r.length){const n=pe(r[0],fe(t));return n.length>0?ye(e,t,n,o,a,v,s):{event:o,respond:v}}return(await Promise.all(r.map(n=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(n,fe(t)),o,ve(a,n),void 0,s)))).map(e=>({event:e.event,respond:void 0}))}return i.length>0?ye(e,t,i,o,a,v,s):{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:i}=k;if(o&&(v=o),void 0!==i){const o=Z(i,ee(r,h));if(0===o.length){n&&(h=n);continue}if(1===o.length){const a=pe(o[0],fe(t));return a.length>0?ye(e,t,a,n||h,r,v,s):(e.logger.warn(`Branch target not found: ${JSON.stringify(i)}`),{event:null,respond:v})}return await Promise.all(o.map(o=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${o} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(o,fe(t)),n||h,ve(r,o),void 0,s))),{event:null,respond:void 0}}n&&(h=n)}b&&y&&oe(y,b.key,h,b.ttl);const x=i.config.next,O="string"==typeof x||Array.isArray(x)&&x.every(e=>"string"==typeof e),j=void 0!==x&&!O;if((!k||"object"==typeof k&&!k.next)&&j){const n=Z(i.config.next,ee(r,h));if(1===n.length){const o=pe(n[0],fe(t));return o.length>0?ye(e,t,o,h,r,v,s):{event:h,respond:v}}return n.length>1?(await Promise.all(n.map(n=>z(ye,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,pe(n,fe(t)),h,ve(r,n),void 0,s))),{event:null,respond:void 0}):{event:h,respond:v}}}return{event:h,respond:v}}function be(e){return e&&x(e)?e:{}}function we(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(e=>"string"==typeof e))}async function ke(e,t,n){var o,r;if(!t.on||!(null==(o=t.queueOn)?void 0:o.length))return;const i=t.queueOn;t.queueOn=[];const s=n||(null==(r=t.config)?void 0:r.id)||"unknown";for(const{type:n,data:o}of i)await z(t.on,t=>{if(t instanceof H)throw t;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:s,type:n,error:t})})(n,o)}function xe(e){var t;return Boolean(e.config.init)&&!(null==(t=e.config.require)?void 0:t.length)}async function Oe(e,t,n){var o;const{code:r,config:i={},env:s={},primary:a,next:c,before:l,cache:u}=n,d=u,f=d?te({...d,stop:null==(o=d.stop)||o}):void 0,g=we(c)?pe(c,fe(e.transformers)):void 0,p=we(l)?pe(l,fe(e.transformers)):void 0,h=s.push,v=null!=h?h:e.push,y=Boolean(h),b=async(n,o,r)=>{var s;let a;const u=null!=p?p:void 0!==l?(()=>{const t=Z(l,ee(r.ingest));return 0===t.length?[]:pe(1===t.length?t[0]:t,fe(e.transformers))})():[];let d=[n];if(u.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await ye(e,e.transformers,u,n,r.ingest,r.respond,`source.${t}.before`);if(null===o.event)return{ok:!0};if(o.stopped)return o.respond&&(r.respond=o.respond),{ok:!0};o.respond&&(r.respond=o.respond),d=Array.isArray(o.event)?o.event:[o.event]}if(f){const t=de(f,e);if(t){const n=ee(r.ingest),o=await ne(f,t,n);if(o){if("HIT"===o.status&&void 0!==o.value&&f.stop){let t=o.value;return o.rule.update&&(t=await re(t,o.rule.update,{...n,cache:{status:"HIT"}},e)),null==(s=r.respond)||s.call(r,t),{ok:!0}}if("MISS"===o.status&&f.stop&&r.respond){const i=r.respond,s=o.rule.update,c={...n,cache:{status:"MISS"}},l=o.key,u=o.rule.ttl,d=n=>{oe(t,l,n,u),s?a=(async()=>{const t=await re(n,s,c,e);i(t)})():i(n)};r.respond=d}"MISS"!==o.status||f.stop||oe(t,o.key,!0,o.rule.ttl)}}}const m=g?{kind:"single",preChain:g}:void 0!==c?(()=>{const t=Z(c,ee(r.ingest));return 0===t.length?{kind:"single",preChain:[]}:1===t.length?{kind:"single",preChain:pe(t[0],fe(e.transformers))}:{kind:"many",branches:t.map(t=>pe(t,fe(e.transformers)))}})():{kind:"single",preChain:[]};let h={ok:!0};for(const n of d)"many"===m.kind?(await Promise.all(m.branches.map((s,a)=>z(async()=>y?v(n):v(n,{...o,id:t,ingest:ve(r.ingest,`${t}.${a}`),respond:void 0,mapping:i,preChain:s}),t=>(e.logger.scope("source:many").error(`many branch ${a} failed`,{error:t}),{ok:!0}))())),h={ok:!0}):h=y?await v(n):await v(n,{...o,id:t,ingest:r.ingest,respond:r.respond,mapping:i,preChain:m.preChain});return a&&await a,h},w=async n=>{const o=m(t);if(!i.ingest||void 0===n)return o;const r=await B(n,i.ingest,{collector:e});return{...o,...r,_meta:o._meta}},k=e.logger.scope("source").scope(t),x={command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:k,...s,push:async(e,n={})=>{const o={ingest:m(t),respond:void 0};return b(e,n,o)}},O={collector:e,logger:k,id:t,config:i,env:x,withScope:async(e,t,n)=>{const o={ingest:await w(e),respond:t};return n({...x,push:(e,t={})=>b(e,t,o),ingest:o.ingest,respond:o.respond})}},j=await z(r,n=>{if(n instanceof H)throw n;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:t,error:n})})(O);if(!j)return;const C=j.type||"unknown",E=e.logger.scope(C).scope(t);return x.logger=E,a&&(j.config={...j.config,primary:a}),j}function je(e,t,n,o){if(n instanceof H)throw n;e.logger.scope("on").error("on callback failed",{kind:t,...o,error:n})}function Ce(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}}function Ee(e,t,n,o,r){if(!t.on)return;const i=t.type||"unknown",s=e.logger.scope(i).scope("on").scope(o),a={collector:e,logger:s,id:n,config:t.config,data:r,env:Be(t.env,t.config.env)};W(t.on,t=>je(e,"destination",t,{destId:n,type:o}))(o,a)}function Ae(e,t,n,o){let r;switch(t){case ue.Commands.Consent:r=o||e.consent;break;case ue.Commands.Session:r=e.session;break;case ue.Commands.User:r=o||e.user;break;case ue.Commands.Custom:r=o||e.custom;break;case ue.Commands.Globals:r=o||e.globals;break;case ue.Commands.Config:r=o||e.config;break;case ue.Commands.Ready:case ue.Commands.Run:default:r=void 0}if(n.length)switch(t){case ue.Commands.Consent:!function(e,t,n){const o=n||e.consent,r=Ce(e,ue.Commands.Consent);t.forEach(t=>{Object.keys(o).filter(e=>e in t).forEach(n=>{W(t[n],t=>je(e,"consent",t,{key:n}))(o,r)})})}(e,n,o);break;case ue.Commands.Ready:!function(e,t){if(!e.allowed)return;const n=Ce(e,ue.Commands.Ready);t.forEach(t=>{W(t,t=>je(e,"ready",t))(void 0,n)})}(e,n);break;case ue.Commands.Run:!function(e,t){if(!e.allowed)return;const n=Ce(e,ue.Commands.Run);t.forEach(t=>{W(t,t=>je(e,"run",t))(void 0,n)})}(e,n);break;case ue.Commands.Session:!function(e,t){if(!e.session)return;const n=Ce(e,ue.Commands.Session);t.forEach(t=>{W(t,t=>je(e,"session",t))(e.session,n)})}(e,n);break;default:{const o=Ce(e,t);n.forEach(n=>{"function"==typeof n&&W(n,n=>je(e,"generic",n,{type:t}))(r,o)});break}}}function Se(e,t,n,o){var r;if(!Number.isFinite(n.max)||n.max<=0)throw new Error(`pushBounded: max must be > 0 (got ${n.max})`);if("dropNewest"===(null!=(r=n.onOverflow)?r:"dropOldest"))return e.length>=n.max?(o&&o([t]),{appended:!1,dropped:1}):(e.push(t),{appended:!0,dropped:0});const i=[];for(;e.length>=n.max;)i.push(e.shift());return e.push(t),i.length>0&&o&&o(i),{appended:!0,dropped:i.length}}var $e=new WeakMap;function qe(e,t,n,o){$e.get(e)||($e.set(e,!0),t.warn(n,o))}function Pe(e){$e.delete(e)}var De=Object.freeze({batched:!0});function Ie(e){return e===De}function _e(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}}function Te(e,t){return e.status.destinations[t]||(e.status.destinations[t]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[t]}function Me(e,t,n,o){var r;e.dropped[t]||(e.dropped[t]={});const i=e.dropped[t];return i[n]=(null!=(r=i[n])?r:0)+o,i[n]}function Le(e,t,n){if(!e)return[];if(Array.isArray(e)&&e.every(e=>"string"==typeof e))return pe(e,t);if("string"==typeof e)return pe(e,t);const o=Z(e,ee(n));return 0===o.length?[]:1===o.length?pe(o[0],t):pe(o,t)}async function Ne(e,t,n={},o){var r,i,s,a,l,u;const{allowed:d,consent:f,globals:g,user:p}=e;if(!d)return ze({ok:!1});if(t){const n=e.config.queueMax;if(void 0===n)throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");const o=Se(e.queue,t,{max:n});if(o.dropped>0){const t=Me(e.status,c("collector"),"queue",o.dropped);qe(e.queue,e.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:n,droppedCount:t})}else e.queue.length<n&&Pe(e.queue);e.status.in++}o||(o=e.destinations);const h=e.transformers?fe(e.transformers):{},y=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var i,s,a,l;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let u=(r.queuePush||[]).map(e=>({...e,consent:f}));r.queuePush=[],t&&u.push(j(t));const d=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:m("unknown");if(!u.length&&!(null==(i=r.queueOn)?void 0:i.length))return{id:o,destination:r,skipped:!0};if(!u.length&&(null==(s=r.queueOn)?void 0:s.length)){let t=!1;try{t=await Re(e,r,o)}catch(t){e.status.failed++;const n=r.type||"unknown";e.logger.scope(n).error("destination init failed",{error:t instanceof Error?t.message:String(t)})}return{id:o,destination:r,skipped:!t}}const y=[],b=u.filter(e=>{const t=$(r.config.consent,f,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(b.length>0){const t=r.queuePush,n=r.config.id||o,i={max:null!=(a=r.config.queueMax)?a:1e3};let s=0;for(const e of b)s+=Se(t,e,i).dropped;if(s>0){Te(e,n);const o=Me(e.status,c("destination",n),"queue",s);qe(t,e.logger.scope(r.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:n,cap:i.max,droppedCount:o})}else t.length<i.max&&Pe(t)}if(!y.length)return{id:o,destination:r,queue:u};let w,k,x=!1;try{x=await Re(e,r,o)}catch(t){e.status.failed++;const n=r.type||"unknown";e.logger.scope(n).error("destination init failed",{error:t instanceof Error?t.message:String(t)})}if(!x)return{id:o,destination:r,queue:u};r.dlq||(r.dlq=[]);const O=Le(r.config.before,h,d),C=r.config.next,E=null==(l=r.config)?void 0:l.cache,A=E?te(E):void 0,S=A?de(A,e):void 0;let q=0,P=0;return await Promise.all(y.map(async t=>{let i;if(t.globals=v(g,t.globals),t.user=v(p,t.user),(null==A?void 0:A.stop)&&S){const e=ee(d,t),n=await ne(A,S,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(i={key:n.key,ttl:n.rule.ttl})}let s=t,a=n.respond;if(O.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await ye(e,e.transformers,O,t,d,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(a=r.respond),s=Array.isArray(r.event)?r.event[0]:r.event}if(A&&!A.stop&&S){const e=ee(d,s),n=await ne(A,S,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(i={key:n.key,ttl:n.rule.ttl})}const l=Date.now();let u=!1;const f=await z(We,t=>{var n;const i=r.type||"unknown";e.logger.scope(i).error("Push failed",{error:t,event:s.name}),w=t,u=!0;const a=r.dlq,l=r.config.id||o,d={max:null!=(n=r.config.dlqMax)?n:100},f=Se(a,[s,t],d);if(f.dropped>0){Te(e,l);const t=Me(e.status,c("destination",l),"dlq",f.dropped);qe(a,e.logger.scope(r.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:d.max,droppedCount:t})}else a.length<d.max&&Pe(a)})(e,r,o,s,d,a);if(q+=Date.now()-l,i&&S&&void 0===r.config.mock&&oe(S,i.key,null==f||f,i.ttl),void 0===f||Ie(f)||(k=f),Ie(f)&&P++,!u&&C){void 0!==f&&(d._response=f);const t=Le(C,h,d);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,t,s,d,a,`destination.${o}.next`);n.respond&&(a=n.respond)}}return t})),{id:o,destination:r,error:w,response:k,totalDuration:q,batchedCount:P,allowedCount:y.length}})),b={},w={},k={};for(const t of y){if(t.skipped)continue;const n=t.destination,o={type:n.type||"unknown",data:t.response};Te(e,t.id);const c=e.status.destinations[t.id],d=Date.now();if(c.queuePushSize=null!=(i=null==(r=n.queuePush)?void 0:r.length)?i:0,c.dlqSize=null!=(a=null==(s=n.dlq)?void 0:s.length)?a:0,t.error)o.error=t.error,k[t.id]=o,c.failed++,c.lastAt=d,c.duration+=t.totalDuration||0,e.status.failed++;else if(t.queue&&t.queue.length)w[t.id]=o;else{const n=null!=(l=t.batchedCount)?l:0,r=null!=(u=t.allowedCount)?u:0;(Math.max(0,r-n)>0||0===r)&&(b[t.id]=o,c.count++,c.lastAt=d,c.duration+=t.totalDuration||0,e.status.out++)}}return ze({event:t,...Object.keys(b).length&&{done:b},...Object.keys(w).length&&{queued:w},...Object.keys(k).length&&{failed:k}})}async function Re(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",i=e.logger.scope(r),s={collector:e,logger:i,id:n,config:t.config,env:Be(t.env,t.config.env)};i.debug("init");const a=await F(t.init,"DestinationInit",e.hooks,e.logger)(s);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:i}of o)Ee(e,t,n,r,i)}i.debug("init done")}return!0}async function We(e,t,n,o,r,i){var s,a,l,u,d,f,g;const{config:p}=t,m=await V(o,p,e);if(m.ignore)return!1;const h=t.type||"unknown",v=e.logger.scope(h),y={collector:e,logger:v,id:n,config:p,data:m.data,rule:m.mapping,ingest:r,env:{...Be(t.env,p.env),...i?{respond:i}:{}}};if(void 0!==p.mock)return v.debug("mock",{event:m.event.name}),p.mock;const w=m.mapping,k=m.mappingKey||"* *";if((null==w?void 0:w.batch)&&t.pushBatch&&void 0===p.mock){if(t.batches=t.batches||{},!t.batches[k]){const o={key:k,entries:[],events:[],data:[]},r=_e(w.batch),i=_e(p.batch),g=null!=(a=null!=(s=r.wait)?s:i.wait)?a:3e4,m=null!=(u=null!=(l=r.size)?l:i.size)?u:1e3,h=null!=(f=null!=(d=r.age)?d:i.age)?f:3e4,y=Be(t.env,p.env),b=function(e,t=1e3,n=!1){const{wait:o,size:r,age:i}=D(t,1e3);let s,a,c=null,l=null,u=!1,d=[],f=0;const g=()=>{c&&(clearTimeout(c),c=null),l&&(clearTimeout(l),l=null),f=0,a=void 0},p=()=>{const t=a,n=d;if(g(),d=[],t)return s=e(...t),n.forEach(e=>e(s)),s;n.forEach(e=>e(void 0))},m=(...t)=>new Promise(g=>{const m=n&&!u;if(a=t,f+=1,d.push(g),c&&clearTimeout(c),c=setTimeout(()=>{c=null,n&&!u||p()},o),void 0===i||l||(l=setTimeout(()=>{l=null,p()},i)),void 0!==r&&f>=r)p();else if(m){u=!0,s=e(...t);const n=d;d=[],n.forEach(e=>e(s))}});return m.flush=()=>a||0!==d.length?new Promise(e=>{d.push(e),p()}):Promise.resolve(void 0),m.cancel=()=>{const e=d;d=[],g(),e.forEach(e=>e(void 0))},m.size=()=>f,m}(async()=>{var o;const r=t.batches[k].batched;if(0===r.entries.length)return;const i={key:r.key,entries:r.entries,events:r.events,data:r.data};r.entries=[],r.events=[],r.data=[];const s=i.entries[0],a={collector:e,logger:v,id:n,config:p,data:void 0,rule:s.rule,ingest:s.ingest,env:{...y,...s.respond?{respond:s.respond}:{}}};v.debug("push batch",{events:i.entries.length});const l=t.config.id||n,u=Te(e,l);let d=!0;await z(F(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger),n=>{var o;d=!1;const r=t.dlq=t.dlq||[],s={max:null!=(o=t.config.dlqMax)?o:100};let a=0;for(const e of i.entries)a+=Se(r,[e.event,n],s).dropped;if(a>0){const t=Me(e.status,c("destination",l),"dlq",a);qe(r,v,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:s.max,droppedCount:t})}else r.length<s.max&&Pe(r);u.failed+=i.entries.length,u.dlqSize=r.length,e.status.failed+=i.entries.length,v.error("Push batch failed",{error:n instanceof Error?n.message:String(n),entries:i.entries.length})})(i,a),v.debug("push batch done"),u.inFlightBatch=Math.max(0,(null!=(o=u.inFlightBatch)?o:0)-i.entries.length),d&&(u.count+=i.entries.length,u.lastAt=Date.now(),e.status.out+=i.entries.length)},{wait:g,size:m,age:h});t.batches[k]={batched:o,batchFn:()=>{b()},flush:async()=>{await b.flush()}}}const o=t.batches[k];o.batched.entries.push({event:m.event,ingest:r,respond:i,rule:w,data:m.data}),o.batched.events.push(m.event),b(m.data)&&o.batched.data.push(m.data);const h=t.config.id||n,y=Te(e,h);return y.inFlightBatch=(null!=(g=y.inFlightBatch)?g:0)+1,o.batchFn(),De}{v.debug("push",{event:m.event.name});const n=await F(t.push,"DestinationPush",e.hooks,e.logger)(m.event,y);return v.debug("push done"),n}}function ze(e){return{ok:!(null==e?void 0:e.failed),...e}}function He(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:i}=ge(e,"before"),{config:s}=ge({...e,config:i},"next"),a={...t.config,...n,...s};r&&(a.cache=r);const c=Be(t.env,o);return{...t,config:a,env:c}}function Be(e,t){return e||t?t?e&&x(e)&&x(t)?{...e,...t}:t:e:{}}async function Ue(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const i=o.destroy;if(!i)return;const s=o.type||"unknown",a=n.scope(s),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:a};try{await Promise.race([i(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 Ve(e,t,n){let o,r,i=!1;switch(t){case ue.Commands.Config:x(n)&&(v(e.config,n,{shallow:!1}),r=n,i=!0);break;case ue.Commands.Consent:if(x(n)){const{update:t}=function(e,t){const n={};return Object.entries(t).forEach(([e,t])=>{n[e]=!!t}),e.consent=v(e.consent,n),{update:n}}(e,n);r=t,i=!0}break;case ue.Commands.Custom:x(n)&&(e.custom=v(e.custom,n),r=n,i=!0);break;case ue.Commands.Destination:x(n)&&"code"in n&&x(n.code)&&(o=await async function(e,t){const{code:n,config:o={},env:r={},before:i,next:s,cache:a}=t;if(!k(n.push))return ze({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const c=o||{init:!1};let l=i?{...c,before:i}:{...c};s&&(l={...l,next:s}),a&&(l={...l,cache:a});const u={...n,config:l,env:Be(n.env,r)};let d=u.config.id;if(!d)do{d=P(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=u,!1!==u.config.queue&&(u.queuePush=[...e.queue]),Ne(e,void 0,{},{[d]:u})}(e,n));break;case ue.Commands.Globals:x(n)&&(e.globals=v(e.globals,n),r=n,i=!0);break;case ue.Commands.Hook:if(x(n)&&O(n.name)&&k(n.fn)){const{name:t,fn:o}=n;e.hooks[t]=o,r=n,i=!0}break;case ue.Commands.On:if(x(n)&&O(n.type)){const{type:t,rules:o}=n;await async function(e,t,n){const o=e.on,r=o[t]||[],i=y(n)?n:[n];i.forEach(e=>{r.push(e)}),o[t]=r,Ae(e,t,i)}(e,t,o)}break;case ue.Commands.Ready:i=!0;break;case ue.Commands.Run:o=await async function(e,t){return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=v(e.consent,t.consent)),t.user&&(e.user=v(e.user,t.user)),t.globals&&(e.globals=v(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=v(e.custom,t.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await Ne(e)}(e,n),i=!0;break;case ue.Commands.Session:i=!0;break;case ue.Commands.Shutdown:await async function(e){const t=e.logger;await Ue(e.sources,"source",t),await Ue(e.destinations,"destination",t),await Ue(e.transformers,"transformer",t),await Ue(e.stores,"store",t)}(e);break;case ue.Commands.User:x(n)&&(v(e.user,n,{shallow:!1}),r=n,i=!0)}return i&&(await async function(e,t,n,o){var r,i;let s,a=n||[];switch(n||(a=e.on[t]||[]),t){case ue.Commands.Consent:s=o||e.consent;break;case ue.Commands.Session:s=e.session;break;case ue.Commands.User:s=o||e.user;break;case ue.Commands.Custom:s=o||e.custom;break;case ue.Commands.Globals:s=o||e.globals;break;case ue.Commands.Config:s=o||e.config;break;case ue.Commands.Ready:case ue.Commands.Run:default:s=void 0}let c=!1;for(const[n,o]of Object.entries(e.sources)){if(null==(r=o.config.require)?void 0:r.length){const e=o.config.require.indexOf(t);-1!==e&&o.config.require.splice(e,1)}o.on&&(xe(o)?!1===await z(o.on,o=>je(e,"source",o,{sourceId:n,type:t}))(t,s)&&(c=!0):(o.queueOn=o.queueOn||[],o.queueOn.push({type:t,data:s})))}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:s});Ee(e,o,n,t,s)}});for(const[t,n]of Object.entries(e.sources))xe(n)&&(null==(i=n.queueOn)?void 0:i.length)&&await ke(e,n,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 i=null==(n=r.config)?void 0:n.require;if(!i)continue;const s=i.indexOf(t);if(-1===s)continue;if(i.splice(s,1),i.length>0)continue;delete e.pending.destinations[o];const a=He(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,t),Ae(e,t,a,o),!c}(e,t,void 0,r),o=await Ne(e)),o||ze({ok:!0})}function Ge(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:i=`${n} ${o}`,data:s={},context:a={},globals:c=e.globals,custom:l={},user:u=e.user,nested:d=[],consent:f=e.consent,id:g=q(),trigger:p="",entity:m=n,action:h=o,timing:v=0,source:y={type:"collector",schema:"4"}}=t;return{name:i,data:s,context:a,globals:c,custom:l,user:u,nested:d,consent:f,id:g,trigger:p,entity:m,action:h,timestamp:r,timing:v,source:y}}function Fe(e={}){var t,n,o;const r=null!=(t=e.maxEntries)?t:1e4,i=null!=(n=e.lowWaterMark)?n:.8,s=null!=(o=e.sweepIntervalMs)?o:6e4,a=Math.floor(r*i),c=new Map,l={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};let u;return s>0&&(u=setInterval(function(){const e=Date.now();let t=0;for(const[n,o]of c)void 0!==o.expires&&o.expires<=e&&(c.delete(n),t++);l.evictions_ttl+=t},s),u&&"function"==typeof u.unref&&u.unref()),{type:"memory",config:{},get(e){const t=c.get(e);if(t)return void 0!==t.expires&&t.expires<=Date.now()?(c.delete(e),l.evictions_ttl++,void l.misses++):(c.delete(e),c.set(e,t),l.hits++,t.value);l.misses++},set(e,t,n){const o=!c.has(e);o||c.delete(e),c.set(e,{value:t,expires:void 0!==n?Date.now()+n:void 0}),l.writes++,o&&l.populates++,c.size>r&&function(){if(c.size<=r)return;const e=c.size-a;let t=0;for(const n of c.keys()){if(t>=e)break;c.delete(n),t++}l.evictions_entries+=t}()},delete(e){c.delete(e)&&l.deletes++},get counters(){return{...l}},destroy(){void 0!==u&&(clearInterval(u),u=void 0),c.clear()}}}function Ke(e,t){const{cacheConfig:n,cacheStore:o,namespace:r,logger:i,storeId:s}=t,a={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=n.rules.map(e=>({match:e.match?K(e.match):()=>!0,ttl:e.ttl})),l=e=>`${r}:${e}`;function u(e,t){const n=void 0===t?{key:e}:{key:e,value:t};return c.find(e=>e.match(n))}const d=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return{...a}},async get(t){const n=l(t),r=await o.get(n);if(void 0!==r)return a.hits++,r;const i=d.get(n);if(i)return a.inflight_dedups++,i;a.misses++;const s=(async()=>{try{const r=await e.get(t);if(void 0===r)return;const i=u(t,r);if(i)try{await o.set(n,r,1e3*i.ttl),a.populates++}catch(e){f("set",t,e)}return r}finally{d.delete(n)}})();return d.set(n,s),s},async set(t,n,r){a.writes++,await e.set(t,n,r);const i=u(t,n);if(i)try{await o.set(l(t),n,1e3*i.ttl)}catch(e){f("set",t,e)}},async delete(t){a.deletes++,await e.delete(t);try{await o.delete(l(t))}catch(e){f("delete",t,e)}}};function f(e,t,n){const o=`store-cache(${s}): cache ${e} failed for "${t}"; backing succeeded, continuing`;i?i.warn(o,{error:n}):console.warn(o,n)}}function Ye(e,t){const n=t.get,o=t.set,r=t.delete;t.get=F(n,"StoreGet",e.hooks,e.logger),t.set=F(o,"StoreSet",e.hooks,e.logger),t.delete=F(r,"StoreDelete",e.hooks,e.logger)}async function Je(e){var t,n;const o=v({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),r=M({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),i={...o.globalsStatic,...e.globals},s={allowed:!1,config:o,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:i,hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{},dropped:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var a,c;s.push=function(e,t){return F(async(n,o={})=>await z(async()=>{var r;const i=Date.now(),{id:s,ingest:a,respond:c,mapping:l,preChain:u,include:d,exclude:f}=o;let g=c,p=n;const h=d||f?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,f):void 0,v=null!=a?a:m(s||"unknown");if(l){const t=await V(p,l,e);if(t.ignore)return ze({ok:!0});if(l.consent&&!$(l.consent,e.consent,t.event.consent))return ze({ok:!0});p=t.event}if((null==u?void 0:u.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await ye(e,e.transformers,u,p,v,g,s?`source.${s}.next`:void 0);if(null===n.event)return ze({ok:!0});if(n.stopped)return n.respond&&(g=n.respond),ze({ok:!0});if(n.respond&&(g=n.respond),Array.isArray(n.event)){const o=await Promise.all(n.event.map(async n=>{const o=t(n),r=Ge(e,o);return Ne(e,r,{id:s,ingest:v,respond:g},h)}));if(s){e.status.sources[s]||(e.status.sources[s]={count:0,duration:0});const t=e.status.sources[s];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-i}return null!=(r=o[0])?r:ze({ok:!0})}p=n.event}const y=t(p),b=Ge(e,y),w=await Ne(e,b,{id:s,ingest:v,respond:g},h);if(s){e.status.sources[s]||(e.status.sources[s]={count:0,duration:0});const t=e.status.sources[s];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-i}return w},t=>{if(t instanceof H)throw t;return e.status.failed++,e.logger.error("push failed",{event:n,ingest:o.ingest,error:t}),ze({ok:!1})})(),"Push",e.hooks,e.logger)}(s,e=>({timing:Math.round((Date.now()-s.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0"},...e})),s.command=(c=Ve,F(async(e,t,n)=>await z(async()=>await c(a,e,t,n),n=>{if(n instanceof H)throw n;return a.status.failed++,a.logger.error("command failed",{command:e,data:t,error:n}),ze({ok:!1})})(),"Command",(a=s).hooks,a.logger));const l=e.stores||{};return s.stores=await async function(e,t={}){var n;const o={};for(const[n,r]of Object.entries(t)){const{code:t,config:i={},env:s={}}=r,a=e.logger.scope("store").scope(n),c={collector:e,logger:a,id:n,config:i,env:s},l=await t(c);o[n]=l}const r=t,i=function(e){const t={};for(const n of Object.keys(e))t[n]="WHITE";const n=[],o=[];function r(i){var s;const a=t[i];if("BLACK"===a)return;if("GRAY"===a){const e=o.indexOf(i),t=o.slice(-1===e?0:e).concat(i).join(" -> ");throw new Error(`Cycle in cache.store chain: ${t}`)}t[i]="GRAY",o.push(i);const c=null==(s=e[i].cache)?void 0:s.store;if(void 0!==c){if(!(c in e))throw new Error(`Store "${i}" cache.store references "${c}", which is not declared in flow.stores`);r(c)}o.pop(),t[i]="BLACK",n.push(i)}for(const n of Object.keys(e))"WHITE"===t[n]&&r(n);return n}(r);for(const t of i){const i=r[t].cache;if(!i)continue;let s,a;void 0!==i.store?(s=o[i.store],a=i.store):(o.__cache||(o.__cache=Fe()),s=o.__cache,a="__cache");const c=null!=(n=i.namespace)?n:t;e.logger.scope("store-cache").scope(t).info(`store "${t}" caches with namespace "${c}:" via ${a}`),o[t]=Ke(o[t],{storeId:t,cacheConfig:i,cacheStore:s,namespace:c,logger:e.logger.scope("store-cache").scope(t)})}for(const[t,n]of Object.entries(o))"__cache"!==t&&Ye(e,n);return o}(s,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,s.stores,e),s.stores.__cache||(s.stores.__cache=Fe()),s.destinations=await async function(e,t={}){var n,o;const r={};for(const[i,s]of Object.entries(t))(null==(o=null==(n=s.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[i]=s:r[i]=He(s);return r}(s,e.destinations||{}),s.transformers=await async function(e,t={}){var n,o,r,i;const s={};for(const[a,c]of Object.entries(t)){const{code:t,env:l={}}=c,u=le(c,"Transformer");if(!u.ok){e.logger.warn(`Transformer ${a} invalid (${u.code}): ${u.reason}. Skipping.`);continue}const{config:d}=ge(c,"before"),{config:f}=ge({...c,config:d},"next"),g=Object.keys(l).length>0?{...f,env:l}:f,{cache:p}=c,h=p?{...g,cache:p}:g,v=e.logger.scope("transformer").scope(a),y={collector:e,logger:v,id:a,ingest:m(a),config:h,env:l},b=null!=t?t:e=>{const t=c.mapping;if(t){const n=[];if(void 0!==t.data&&n.push("data"),t.mapping)for(const[e,o]of Object.entries(t.mapping))if("object"==typeof o&&null!==o)for(const[t,r]of Object.entries(o)){if("object"!=typeof r||null===r)continue;const o=r;void 0!==o.data&&n.push(`mapping[${e}][${t}].data`),void 0!==o.silent&&n.push(`mapping[${e}][${t}].silent`)}return n.length>0&&e.collector.logger.warn(`Transformer ${a}: \`${n.join(", ")}\` ignored at transformer position (only event-mutating fields apply).`),{type:"pass",config:e.config,push:async n=>{const o=await V(n,t,e.collector);return!o.ignore&&{event:o.event}}}}return{type:"pass",config:e.config,push:e=>({event:e})}},w=await b(y);void 0!==c.before&&void 0===(null==(n=w.config)?void 0:n.before)&&(w.config={...null!=(o=w.config)?o:{},before:c.before}),void 0!==c.next&&void 0===(null==(r=w.config)?void 0:r.next)&&(w.config={...null!=(i=w.config)?i:{},next:c.next}),s[a]=w}return s}(s,e.transformers||{}),s}async function Xe(e){e=e||{};const t=await Je(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,i)=>{if("string"==typeof e&&e.startsWith("walker ")){const n=e.replace("walker ","");return o.command(n,t)}let s;if("string"==typeof e)s={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(s.data=t);else{if(!e||"object"!=typeof e)return ze({ok:!1});s=e,t&&"object"==typeof t&&!Array.isArray(t)&&(s.data={...s.data||{},...t})}return n&&"object"==typeof n&&(s.context=n),r&&Array.isArray(r)&&(s.nested=r),i&&"object"==typeof i&&(s.custom=i),o.push(s)}});var o;t.sources.elb=n,await async function(e,t={}){var n;const o={};for(const[r,i]of Object.entries(t)){const t=await Oe(e,r,i);if(!t)continue;const s=null==(n=i.config)?void 0:n.require;t.config={...t.config,init:!1,...s?{require:[...s]}:{}},o[r]=t}Object.assign(e.sources,o);for(const t of Object.keys(o)){const n=e.sources[t];let o=!1;n.init&&await z(n.init.bind(n),n=>{if(n instanceof H)throw n;o=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:t,error:n})})(),o||(n.config.init=!0,xe(n)&&await ke(e,n,t))}return o}(t,e.sources||{});const{consent:r,user:i,globals:s,custom:a}=e;r&&await t.command("consent",r),i&&await t.command("user",i),s&&Object.assign(t.globals,s),a&&Object.assign(t.custom,a),t.config.run&&await t.command("run");let c=n.push;const l=Object.values(t.sources).filter(e=>"elb"!==e.type),u=l.find(e=>e.config.primary);return u?c=u.push:l.length>0&&(c=l[0].push),{collector:t,elb:c}}function Ze(e,t){return(e.getAttribute(t)||"").trim()}function Qe(e,t,n){const o=t.getComputedStyle(e);if("none"===o.display)return!1;if("visible"!==o.visibility)return!1;if(o.opacity&&Number(o.opacity)<.1)return!1;let r;const i=t.innerHeight,s=e.getBoundingClientRect(),a=s.height,c=s.y,l=c+a,u={x:s.x+e.offsetWidth/2,y:s.y+e.offsetHeight/2};if(a<=i){if(e.offsetWidth+s.width===0||e.offsetHeight+s.height===0)return!1;if(u.x<0)return!1;if(u.x>(n.documentElement.clientWidth||t.innerWidth))return!1;if(u.y<0)return!1;if(u.y>(n.documentElement.clientHeight||t.innerHeight))return!1;r=n.elementFromPoint(u.x,u.y)}else{const e=i/2;if(c<0&&l<e)return!1;if(l>i&&c>e)return!1;r=n.elementFromPoint(u.x,i/2)}if(r)do{if(r===e)return!0}while(r=r.parentElement);return!1}function et(e,t,n=!0){return e+(t=null!=t?(n?"-":"")+t:"")}function tt(e,t,n,o=!0){return ft(Ze(t,et(e,n,o))||"").reduce((e,n)=>{let[o,r]=gt(n);if(!o)return e;if(r||(o.endsWith(":")&&(o=o.slice(0,-1)),r=""),r.startsWith("#")){r=r.slice(1);try{let e=t[r];e||"selected"!==r||(e=t.options[t.selectedIndex].text),r=String(e)}catch(e){r=""}}return o.endsWith("[]")?(o=o.slice(0,-2),y(e[o])||(e[o]=[]),e[o].push(S(r))):e[o]=S(r),e},{})}function nt(e,t=ue.Commands.Prefix){var n;const o=e;if(!o)return[];let r=[];const i=ue.Commands.Action,s=`[${et(t,i,!1)}]`,a=e=>{Object.keys(tt(t,e,i,!1)).forEach(n=>{r=r.concat(ot(e,n,t))})};return o!==(o.ownerDocument||o)&&(null==(n=o.matches)?void 0:n.call(o,s))&&a(o),dt(o,s,a),r}function ot(e,t,n=ue.Commands.Prefix){const o=[],{actions:r,nearestOnly:i}=function(e,t,n){let o=t;for(;o;){const t=Ze(o,et(e,ue.Commands.Actions,!1));if(t){const e=it(t);if(e[n])return{actions:e[n],nearestOnly:!1}}const r=Ze(o,et(e,ue.Commands.Action,!1));if(r){const e=it(r);if(e[n]||"click"!==n)return{actions:e[n]||[],nearestOnly:!0}}o=ct(e,o)}return{actions:[],nearestOnly:!1}}(n,e,t);return r.length?(r.forEach(r=>{const s=ft(r.actionParams||"",",").reduce((e,t)=>(e[G(t)]=!0,e),{}),a=st(n,e,s,i);if(!a.length){const t="page",o=`[${et(n,t)}]`,[r,i]=lt(e,o,n,t);a.push({entity:t,data:r,nested:[],context:i})}a.forEach(e=>{var n;o.push({entity:e.entity,action:r.action,data:e.data,trigger:t,context:e.context,nested:null!=(n=e.nested)?n:[]})})}),o):o}function rt(e=ue.Commands.Prefix,t){if(!t)return{};const n=et(e,ue.Commands.Globals,!1);let o={};return ut(t,`[${n}]`,t=>{o=v(o,tt(e,t,ue.Commands.Globals,!1))}),o}function it(e){const t={};return ft(e).forEach(e=>{const[n,o]=gt(e),[r,i]=pt(n);if(!r)return;let[s,a]=pt(o||"");s=s||r,t[r]||(t[r]=[]),t[r].push({trigger:r,triggerParams:i,action:s,actionParams:a})}),t}function st(e,t,n,o=!1){const r=[];let i=t;for(n=0!==Object.keys(n||{}).length?n:void 0;i;){const s=at(e,i,t,n);if(s&&(r.push(s),o))break;i=ct(e,i)}return r}function at(e,t,n,o){const r=Ze(t,et(e));if(!r||o&&!o[r])return null;const i=[t],s=`[${et(e,r)}],[${et(e,"")}]`,a=et(e,ue.Commands.Link,!1);let c={};const l=[],[u,d]=lt(n||t,s,e,r);dt(t,`[${a}]`,n=>{const[o,r]=gt(Ze(n,a));"parent"===r&&dt(t.ownerDocument.body,`[${a}="${o}:child"]`,t=>{i.push(t);const n=at(e,t);n&&l.push(n)})});const f=[];i.forEach(e=>{e.matches(s)&&f.push(e),dt(e,s,e=>f.push(e))});let g={};return f.forEach(t=>{g=v(g,tt(e,t,"")),c=v(c,tt(e,t,r))}),c=v(v(g,c),u),i.forEach(t=>{dt(t,`[${et(e)}]`,t=>{const n=at(e,t);n&&l.push(n)})}),{entity:r,data:c,context:d,nested:l}}function ct(e,t){const n=et(e,ue.Commands.Link,!1);if(t.matches(`[${n}]`)){const[e,o]=gt(Ze(t,n));if("child"===o){const o=t.ownerDocument;let r=null;return ut(o,`[${n}="${e}:parent"]`,e=>{r||(r=e)}),r}}const o=t.ownerDocument.defaultView;return!t.parentElement&&t.getRootNode&&t.getRootNode()instanceof o.ShadowRoot?t.getRootNode().host:t.parentElement}function lt(e,t,n,o){let r={};const i={};let s=e;const a=`[${et(n,ue.Commands.Context,!1)}]`;let c=0;for(;s;)s.matches(t)&&(r=v(tt(n,s,""),r),r=v(tt(n,s,o),r)),s.matches(a)&&(Object.entries(tt(n,s,ue.Commands.Context,!1)).forEach(([e,t])=>{t&&!i[e]&&(i[e]=[t,c])}),++c),s=ct(n,s);return[r,i]}function ut(e,t,n){e.querySelectorAll(t).forEach(n)}function dt(e,t,n){e.querySelectorAll(t).forEach(n);e instanceof(e.ownerDocument||e).defaultView.Element&&e.shadowRoot&&dt(e.shadowRoot,t,n),e.querySelectorAll("*").forEach(e=>{e.shadowRoot&&dt(e.shadowRoot,t,n)})}function ft(e,t=";"){if(!e)return[];const n=new RegExp(`(?:[^${t}']+|'[^']*')+`,"ig");return e.match(n)||[]}function gt(e){const[t,n]=e.split(/:(.+)/,2);return[G(t),G(n)]}function pt(e){const[t,n]=e.split("(",2);return[t,n?n.slice(0,-1):""]}var mt=new WeakMap,ht=new WeakMap,vt=new WeakMap;function yt(e){const t=Date.now();let n=ht.get(e);if(!n||t-n.lastChecked>500){n={isVisible:Qe(e,e.ownerDocument.defaultView,e.ownerDocument),lastChecked:t},ht.set(e,n)}return n.isVisible}function bt(e){const t=(e.ownerDocument||e).defaultView;if(t&&t.IntersectionObserver)return W(()=>new t.IntersectionObserver(t=>{t.forEach(t=>{!function(e,t){var n,o;const r=t.target,i=vt.get(e);if(!i)return;const s=i.timers.get(r);if(t.intersectionRatio>0){const o=Date.now();let a=mt.get(r);if(!a||o-a.lastChecked>1e3){const e=r.ownerDocument.defaultView;a={isLarge:r.offsetHeight>e.innerHeight,lastChecked:o},mt.set(r,a)}if(t.intersectionRatio>=.5||a.isLarge&&yt(r)){const t=null==(n=i.elementConfigs)?void 0:n.get(r);if((null==t?void 0:t.multiple)&&t.blocked)return;if(!s){const t=r.ownerDocument.defaultView.setTimeout(async()=>{var t,n;if(yt(r)){const o=null==(t=i.elementConfigs)?void 0:t.get(r);(null==o?void 0:o.context)&&await Lt(o.context,r,o.trigger);const s=null==(n=i.elementConfigs)?void 0:n.get(r);(null==s?void 0:s.multiple)?s.blocked=!0:function(e,t){const n=vt.get(e);if(!n)return;n.observer&&n.observer.unobserve(t);const o=n.timers.get(t);o&&(clearTimeout(o),n.timers.delete(t)),mt.delete(t),ht.delete(t)}(e,r)}},i.duration);i.timers.set(r,t)}return}}s&&(clearTimeout(s),i.timers.delete(r));const a=null==(o=i.elementConfigs)?void 0:o.get(r);(null==a?void 0:a.multiple)&&(a.blocked=!1)}(e,t)})},{rootMargin:"0px",threshold:[0,.5]}),()=>{})()}function wt(e,t,n={multiple:!1}){var o;const r=e.settings.scope;if(!r)return;const i=vt.get(r);(null==i?void 0:i.observer)&&t&&(i.elementConfigs||(i.elementConfigs=new WeakMap),i.elementConfigs.set(t,{multiple:null!=(o=n.multiple)&&o,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),i.observer.observe(t))}function kt(e){if(!e)return;const t=vt.get(e);t&&(t.observer&&t.observer.disconnect(),vt.delete(e))}function xt(e,t,n,o,r,i,s){const{elb:a,settings:c}=e;if(O(t)&&t.startsWith("walker "))return a(t,n);if(x(t)){const e=t;if(!e.source&&c.scope){const t=c.scope.ownerDocument||c.scope,n=t.defaultView;e.source=Ot(n,t)}return!e.globals&&c.scope&&(e.globals=rt(c.prefix,c.scope)),a(e)}const[l]=String(x(t)?t.name:t).split(" ");let u,d=x(n)?n:{},f={},g=!1;if(w(n)&&(u=n,g=!0),w(r)?u=r:x(r)&&Object.keys(r).length&&(f=r),u){const e=st(c.prefix||"data-elb",u).find(e=>e.entity===l);e&&(g&&(d=e.data),e.context&&(f=e.context))}const p=c.scope?c.scope.ownerDocument||c.scope:void 0,m=null==p?void 0:p.defaultView;"page"===l&&m&&(d.id=d.id||m.location.pathname);const h=rt(c.prefix,c.scope);return a({name:String(t||""),data:d,context:f,globals:h,nested:i,custom:s,trigger:O(o)?o:"",source:m&&p?Ot(m,p):void 0})}function Ot(e,t){return{type:"browser",platform:"web",url:e.location.href,referrer:t.referrer}}var jt,Ct=[],Et="click",At="hover",St="load",$t="pulse",qt="scroll",Pt="submit",Dt="impression",It="visible",_t="wait";function Tt(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;if(!n)return;n.addEventListener("click",W(function(t){Wt.call(this,e,t)})),n.addEventListener("submit",W(function(t){zt.call(this,e,t)}))}(e,t)}function Mt(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;Ct=[];const o=n;if(!o)return;kt(o),function(e,t=1e3){vt.has(e)||vt.set(e,{observer:bt(e),timers:new WeakMap,duration:t})}(o,1e3);const r=et(t.prefix,ue.Commands.Action,!1),i=o.ownerDocument||o;o!==i&&Nt(e,o,r,t);dt(o,`[${r}]`,n=>{Nt(e,n,r,t)}),Ct.length&&function(e,t){const n=t.ownerDocument||t,o=n.defaultView,r=(e,t)=>e.filter(([e,n])=>{const r=o.scrollY+o.innerHeight,i=e.offsetTop;if(r<i)return!0;const s=e.clientHeight;return!(100*(1-(i+s-r)/(s||1))>=n)||(Lt(t,e,qt),!1)});jt||(jt=function(e,t=1e3){const{wait:n}=D(t,1e3);let o=null;return function(...t){if(null===o)return o=setTimeout(()=>{o=null},n),e(...t)}}(function(){Ct=r.call(t,Ct,e)}),t.addEventListener("scroll",jt))}(e,o)}(e,t)}async function Lt(e,t,n){const o=ot(t,n,e.settings.prefix);return Promise.all(o.map(t=>xt(e,{name:`${t.entity} ${t.action}`,...t,trigger:n})))}function Nt(e,t,n,o){const r=Ze(t,n);r&&Object.values(it(r)).forEach(n=>n.forEach(n=>{switch(n.trigger){case At:!function(e,t){t.addEventListener("mouseenter",W(function(t){const n=Rt(t);n&&Lt(e,n,At)}))}(e,t);break;case St:!function(e,t){Lt(e,t,St)}(e,t);break;case $t:!function(e,t,n=""){const o=t.ownerDocument;setInterval(()=>{o.hidden||Lt(e,t,$t)},parseInt(n||"")||15e3)}(e,t,n.triggerParams);break;case qt:!function(e,t=""){const n=parseInt(t||"")||50;if(n<0||n>100)return;Ct.push([e,n])}(t,n.triggerParams);break;case Dt:wt(e,t);break;case It:wt(e,t,{multiple:!0});break;case _t:!function(e,t,n=""){setTimeout(()=>Lt(e,t,_t),parseInt(n||"")||15e3)}(e,t,n.triggerParams)}}))}function Rt(e){var t;const n=null==(t=e.composedPath)?void 0:t.call(e),o=(null==n?void 0:n.length)?n[0]:e.target;if(o&&"object"==typeof o&&"tagName"in o)return o}function Wt(e,t){const n=Rt(t);n&&Lt(e,n,Et)}function zt(e,t){const n=Rt(t);n&&Lt(e,n,Pt)}function Ht(e,t={}){var n;const o=t.name||"elbLayer",r=t.window,i=t.logger;if(!r)return;const s=r;s[o]||(s[o]=[]);const a=s[o],c=r.document;null==i||i.debug("initElbLayer enter",{layerName:o,queuedItems:a.length}),a.push=function(...n){if(Vt(n[0])){const o=[...Array.from(n[0])],r=Array.prototype.push.apply(this,[o]);return Ut(e,t.prefix,o,c,i),r}const o=Array.prototype.push.apply(this,n);return n.forEach(n=>{Ut(e,t.prefix,n,c,i)}),o},Array.isArray(a)&&a.length>0&&(null==i||i.debug("initElbLayer drain walker commands",{count:a.length}),function(e,t,n,o,r){const i="walker ",s=[...n],a=new Set;s.forEach((n,s)=>{const c=Bt(n);if(!c)return;const l=c[0];!x(l)&&O(l)&&l.startsWith(i)&&(a.add(s),Ut(e,t,c,o,r))});const c=[...a].sort((e,t)=>t-e);for(const e of c)n.splice(e,1);null==r||r.debug("drainWalkerCommands done",{consumed:a.size,remaining:n.length})}(e,null!=(n=t.prefix)?n:"data-elb",a,c,i))}function Bt(e){const t=Vt(e)?[...Array.from(e)]:null!=(n=e)&&"object"==typeof n&&"length"in n&&"number"==typeof n.length?Array.from(e):[e];var n;if(!Array.isArray(t)||0===t.length)return null;if(1===t.length&&!t[0])return null;const o=t[0];return x(o)&&0===Object.keys(o).length||!x(o)&&O(o)&&""===o.trim()?null:t}function Ut(e,t="data-elb",n,o,r){W(()=>{if(Array.isArray(n)){const[i,...s]=n;if(!i||O(i)&&""===i.trim())return void(null==r||r.debug("pushCommand skipped (empty/invalid action)",{item:n}));if(O(i)&&i.startsWith("walker "))return null==r||r.debug("pushCommand walker command",{action:i,data:s[0]}),void e(i,s[0]);null==r||r.debug("pushCommand event (translated)",{action:i,rest:s}),xt({elb:e,settings:{prefix:t,scope:o,pageview:!1,elb:"",elbLayer:!1}},i,...s)}else if(n&&"object"==typeof n){if(0===Object.keys(n).length)return void(null==r||r.debug("pushCommand skipped (empty object)"));null==r||r.debug("pushCommand object event",{item:n}),e(n)}},e=>{null==r||r.warn("pushCommand failed",{error:e,item:n})})()}function Vt(e){return null!=e&&"object"==typeof e&&"[object Arguments]"===Object.prototype.toString.call(e)}var Gt={},Ft={};r(Ft,{createTrigger:()=>cn,env:()=>Kt,step:()=>Qt,trigger:()=>ln});var Kt={};r(Kt,{push:()=>Zt});var Yt=()=>{},Jt=()=>()=>Promise.resolve({ok:!0}),Xt={error:Yt,warn:Yt,info:Yt,debug:Yt,throw:e=>{throw"string"==typeof e?new Error(e):e},json:Yt,scope:()=>Xt},Zt={get push(){return Jt()},get command(){return Jt()},get elb(){return Jt()},get window(){return{addEventListener:Yt,removeEventListener:Yt,location:{href:"https://example.com/page",pathname:"/page",search:"?query=test",hash:"#section",host:"example.com",hostname:"example.com",origin:"https://example.com",protocol:"https:"},document:{},navigator:{language:"en-US",userAgent:"Mozilla/5.0 (Test)"},screen:{width:1920,height:1080},innerWidth:1920,innerHeight:1080,pageXOffset:0,pageYOffset:0,scrollX:0,scrollY:0}},get document(){return{addEventListener:Yt,removeEventListener:Yt,querySelector:Yt,querySelectorAll:()=>[],getElementById:Yt,getElementsByClassName:()=>[],getElementsByTagName:()=>[],createElement:()=>({setAttribute:Yt,getAttribute:Yt,addEventListener:Yt,removeEventListener:Yt}),body:{appendChild:Yt,removeChild:Yt},documentElement:{scrollTop:0,scrollLeft:0},readyState:"complete",title:"Test Page",referrer:"",cookie:""}},logger:Xt},Qt={};r(Qt,{clickEvent:()=>tn,contextAndGlobals:()=>an,dataAttributeTypes:()=>sn,impressionEvent:()=>on,nestedEntities:()=>rn,pageView:()=>en,submitEvent:()=>nn});var en={title:"Page view",description:"A page load trigger captures the current URL, title, and referrer as a walker page view event.",trigger:{type:"load",options:{url:"https://example.com/docs",title:"Documentation",referrer:"https://example.com/"}},in:"",out:[["elb",{name:"page view",data:{domain:"example.com",title:"Documentation",referrer:"https://example.com/",id:"/docs"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/docs",referrer:"https://example.com/"}}]]},tn={title:"Click event",description:"A button click with walker data attributes is captured as an entity action event with the mapped label data.",trigger:{type:"click",options:"button"},in:'<button data-elb="cta" data-elb-cta="label:Sign Up" data-elbaction="click:click">Sign Up</button>',out:[["elb",{name:"cta click",entity:"cta",action:"click",data:{label:"Sign Up"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},nn={title:"Submit event",description:"A form submit with walker data attributes produces a signup complete event carrying the selected plan.",trigger:{type:"submit",options:"form"},in:'<form data-elb="signup" data-elb-signup="plan:premium" data-elbaction="submit:complete"></form>',out:[["elb",{name:"signup complete",entity:"signup",action:"complete",data:{plan:"premium"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"submit"}]]},on={title:"Impression event",description:"An intersection observer impression on a div with walker attributes emits a banner view event.",trigger:{type:"impression",options:"div"},in:'<div data-elb="banner" data-elb-banner="type:promotional;position:sidebar" data-elbaction="impression:view"></div>',out:[["elb",{name:"banner view",entity:"banner",action:"view",data:{type:"promotional",position:"sidebar"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"impression"}]]},rn={title:"Nested entities",description:"A page load produces a page view plus a product view whose nested size entity is captured on the product event.",trigger:{type:"load"},in:'<div data-elb="product" data-elb-product="id:SKU-42;name:Sneakers" data-elbaction="load:view"><div data-elb="size" data-elb-size="selected:large;inStock:true"></div></div>',out:[["elb",{name:"page view",data:{domain:"example.com",title:"",referrer:"",id:"/"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""}}],["elb",{name:"product view",entity:"product",action:"view",data:{id:"SKU-42",name:"Sneakers"},context:{},globals:{},nested:[{entity:"size",data:{selected:"large",inStock:!0},context:{},nested:[]}],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"load"}]]},sn={title:"Data attribute types",description:"Walker data attributes parse scalar, boolean, and array values into typed fields on the emitted event.",trigger:{type:"click",options:"div"},in:'<div data-elb="product" data-elb-product="price:99.99;available:true;colors[]:red;colors[]:blue" data-elbaction="click:select"></div>',out:[["elb",{name:"product select",entity:"product",action:"select",data:{price:99.99,available:!0,colors:["red","blue"]},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},an={title:"Context and globals",description:"Walker context and globals attributes attach ambient metadata to events emitted by the browser source.",trigger:{type:"click",options:'[data-elb="cta"]'},in:'<div data-elbcontext="test:engagement_flow" data-elbglobals="language:en;plan:premium"><div data-elb="cta" data-elb-cta="label:Try Now" data-elbaction="click:signup">Try Now</div></div>',out:[["elb",{name:"cta signup",entity:"cta",action:"signup",data:{label:"Try Now"},context:{test:["engagement_flow",0]},globals:{language:"en",plan:"premium"},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},cn=async(e,t)=>{const n=(null==t?void 0:t.sourceId)||"browser";let o;const r=document,i=window;return{get flow(){return o},trigger:(t,s)=>async a=>{var c;if("load"===t||!t){const e="object"==typeof s&&null!==s?s:{};if(e.url){const t=new URL(e.url);i.history.replaceState({},"",t.pathname)}e.title&&(r.title=e.title),e.referrer&&Object.defineProperty(r,"referrer",{value:e.referrer,configurable:!0})}if(a&&(r.body.innerHTML=a),!o){const t=await Xe({...e,run:null==(c=e.run)||c});o={collector:t.collector,elb:t.elb}}if(!t||"load"===t)return;const l="string"==typeof s?s:void 0,u=l?r.querySelector(l):null;if(!u)return void console.warn(`Trigger: element not found for selector "${l}"`);const d=o.collector.sources[n];if(!d)return void console.warn(`Trigger: source "${n}" not found in collector`);const f={elb:o.elb,settings:d.config.settings};await Lt(f,u,t)}}},ln=(e,t)=>{if(!e||"object"!=typeof e)return;const n=e,o=t.document,r=t.window,i=()=>{var e,t;if(!n.attributes)return;const r=(null==(t=null==(e=n.element)?void 0:e.match(/^(\w+)/))?void 0:t[1])||"div",i=o.createElement(r);for(const[e,t]of Object.entries(n.attributes))i.setAttribute(e,t);if(n.children)for(const e of n.children){const t=o.createElement("div");for(const[n,o]of Object.entries(e))t.setAttribute(n,o);i.appendChild(t)}return o.body.appendChild(i),i};if(!n.trigger||"load"===n.trigger){if(n.url){const e=new URL(n.url);r.history.replaceState({},"",e.pathname)}return n.title&&(o.title=n.title),n.referrer&&Object.defineProperty(o,"referrer",{value:n.referrer}),void i()}return()=>{const e=i();if(e)switch(n.trigger){case"click":e.dispatchEvent(new MouseEvent("click",{bubbles:!0}));break;case"submit":e.dispatchEvent(new Event("submit",{bubbles:!0}));break;case"hover":e.dispatchEvent(new MouseEvent("mouseenter",{bubbles:!0}));break;case"scroll":r.dispatchEvent(new Event("scroll"))}}};function un(e={}){const t=e.prefix||"data-elb";return function(e){let n,o=e;const r={},i={},s={},a={},c={},l={};function u(e){return Object.entries(e).map(([e,t])=>`${e}:${function(e){if(!b(e)||null===e)return"undefined";let t=String(e);return t=t.replace(/\\/g,"\\\\"),t=t.replace(/;/g,"\\;"),t=t.replace(/:/g,"\\:"),t=t.replace(/'/g,"\\'"),t}(t)}`).join(";")}const d={entity:e=>(n=e,o=e,d),data(e,t){const n=null!=o?o:"";return r[n]||(r[n]={}),O(e)?r[n][e]=t:Object.assign(r[n],e),d},action(e,t){if(O(e))if(b(t))i[e]=t;else if(e.includes(":")){const[t,n]=e.split(":",2);i[t]=n}else i[e]=e;else Object.assign(i,e);return d},actions(e,t){if(O(e))if(b(t))s[e]=t;else if(e.includes(":")){const[t,n]=e.split(":",2);s[t]=n}else s[e]=e;else Object.assign(s,e);return d},context:(e,t)=>(O(e)?a[e]=t:Object.assign(a,e),d),globals:(e,t)=>(O(e)?c[e]=t:Object.assign(c,e),d),link:(e,t)=>(O(e)?l[e]=t:Object.assign(l,e),d),get(){const e={};return n&&(e[t]=n),Object.entries(r).forEach(([n,o])=>{if(Object.keys(o).length>0){e[n?`${t}-${n}`:`${t}-`]=u(o)}}),Object.keys(i).length>0&&(e[`${t}action`]=u(i)),Object.keys(s).length>0&&(e[`${t}actions`]=u(s)),Object.keys(a).length>0&&(e[`${t}context`]=u(a)),Object.keys(c).length>0&&(e[`${t}globals`]=u(c)),Object.keys(l).length>0&&(e[`${t}link`]=u(l)),e}};return d}}var dn,fn=async e=>{const{config:t,env:n,logger:o}=e,{elb:r,command:i,window:s,document:a}=n,c=(null==t?void 0:t.settings)||{},l=s||(void 0!==globalThis.window?globalThis.window:void 0),u=a||(void 0!==globalThis.document?globalThis.document:void 0),d=function(e={},t){return{prefix:"data-elb",pageview:!0,elb:"elb",elbLayer:"elbLayer",scope:t||void 0,...e}}(c,u),f={elb:r,settings:d},g=e=>{if(!e.pageview)return;const[t,n]=function(e,t){const n=t.ownerDocument||t,o=n.defaultView.location,r="page",i="body"in t?t.body:t,[s,a]=lt(i,`[${et(e,r)}]`,e,r);return s.domain=o.hostname,s.title=n.title,s.referrer=n.referrer,o.search&&(s.search=o.search),o.hash&&(s.hash=o.hash),[s,a]}(e.prefix||"data-elb",e.scope);xt(f,"page view",t,"load",n)};return{type:"browser",config:{settings:d},push:(...e)=>{const[t,n,o,r,i,s]=e;return xt(f,t,n,o,r,i,s)},on:async e=>{if("run"===e)u&&l&&(Mt(f,d),function(e,t,n,o){const r=O(t.elbLayer)?t.elbLayer:"elbLayer",i=t.prefix||"data-elb",s=n[r];if(!Array.isArray(s))return;const a=n.document;let c=-1;s.forEach((e,t)=>{const n=Bt(e);n&&O(n[0])&&"walker run"===n[0]&&(c=t)});const l=[];for(let e=c+1;e<s.length;e++){const t=Bt(s[e]);t&&l.push(t)}s.length=c+1,null==o||o.debug("drainNonWalkerEvents",{anchor:c,drained:l.length}),l.forEach(t=>Ut(e,i,t,a,o))}(r,d,l,o),g(d))},init:async()=>{l&&u&&(!1!==d.elbLayer&&r&&Ht(r,{name:O(d.elbLayer)?d.elbLayer:"elbLayer",prefix:d.prefix,window:l,logger:o}),await async function(e,t,n){const o=()=>{e(t,n)},r=n.scope;if(!r)return void o();const i=r.ownerDocument||r;"loading"!==i.readyState?o():i.addEventListener("DOMContentLoaded",o)}(Tt,f,d),O(d.elb)&&d.elb&&(l[d.elb]=(...e)=>{const[t,n,o,r,i,s]=e;return xt(f,t,n,o,r,i,s)}))},destroy:async()=>{u&&kt(d.scope||u)}}},gn=fn;return dn=i,((r,i,s,a)=>{if(i&&"object"==typeof i||"function"==typeof i)for(let c of n(i))o.call(r,c)||c===s||e(r,c,{get:()=>i[c],enumerable:!(a=t(i,c))||a.enumerable});return r})(e({},"__esModule",{value:!0}),dn)})();
|
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 _assert_this_initialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function asyncGeneratorStep(e,t,n,r,o,a,i){try{var s=e[a](i),c=s.value}catch(e){return void n(e)}s.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 i(e){asyncGeneratorStep(a,r,o,i,s,"next",e)}function s(e){asyncGeneratorStep(a,r,o,i,s,"throw",e)}i(void 0)})}}function _call_super(e,t,n){return t=_get_prototype_of(t),_possible_constructor_return(e,_is_native_reflect_construct()?Reflect.construct(t,n||[],_get_prototype_of(e).constructor):t.apply(e,n))}function _class_call_check(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _construct(e,t,n){return _construct=_is_native_reflect_construct()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&_set_prototype_of(o,n.prototype),o},_construct.apply(null,arguments)}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 _get_prototype_of(e){return _get_prototype_of=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},_get_prototype_of(e)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_set_prototype_of(e,t)}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _is_native_function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}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=[],i=!0,s=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){s=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(s)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 _possible_constructor_return(e,t){return!t||"object"!==_type_of(t)&&"function"!=typeof t?_assert_this_initialized(e):t}function _set_prototype_of(e,t){return _set_prototype_of=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},_set_prototype_of(e,t)}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_array(e){return _array_with_holes(e)||_iterable_to_array(e)||_unsupported_iterable_to_array(e)||_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 _wrap_native_super(e){var t="function"==typeof Map?new Map:void 0;return _wrap_native_super=function(e){if(null===e||!_is_native_function(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return _construct(e,arguments,_get_prototype_of(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),_set_prototype_of(n,e)},_wrap_native_super(e)}function _is_native_reflect_construct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_is_native_reflect_construct=function(){return!!e})()}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:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),s=Object.defineProperty;return s(i,"next",{value:c(0)}),s(i,"throw",{value:c(1)}),s(i,"return",{value:c(2)}),"function"==typeof Symbol&&s(i,Symbol.iterator,{value:function(){return this}}),i;function c(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,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 Source=function(){var e=function(e,t){if("collector"===e)return"collector";if(!t)throw new Error("stepId(".concat(e,") requires an id"));return"".concat(e,".").concat(t)},t=function(e,t){var n=e.destinations[t];if(!n)throw new Error("Destination not found: ".concat(t));return n},n=function(e,t){var n=e.transformers[t];if(!n)throw new Error("Transformer not found: ".concat(t));return n},r=function(e,t){var n=e.sources[t];if(!n)throw new Error("Source not found: ".concat(t));return n},o=function(e,t){var n=e.stores[t];if(!n)throw new Error("Store not found: ".concat(t));return n},a=function(e){return{_meta:{hops:0,path:[e]}}},i=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({},Ct,n);var r=Object.entries(t).reduce(function(t,r){var o=_sliced_to_array(r,2),a=o[0],i=o[1],s=e[a];return n.merge&&Array.isArray(s)&&Array.isArray(i)?t[a]=i.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(s)):(n.extend||a in e)&&(t[a]=i),t},{});return n.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},s=function(e){return Array.isArray(e)},c=function(e){return void 0!==e},u=function(e){return!(!e||"object"!=(void 0===e?"undefined":_type_of(e)))&&("body"in e||"tagName"in e)},l=function(e){return"function"==typeof e},f=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!s(e)&&"[object Object]"===Object.prototype.toString.call(e)},d=function(e){return"string"==typeof e},p=function(e,t,n){if(!f(e))return e;for(var r=Et(e),o=t.split("."),a=r,i=0;i<o.length;i++){var s=o[i];i===o.length-1?a[s]=n:(s in a&&"object"==_type_of(a[s])&&null!==a[s]||(a[s]={}),a=a[s])}return r},v=function(e){if("true"===e)return!0;if("false"===e)return!1;var t=Number(e);return e==t&&""!==e?t:String(e)},_=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},g=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},h=function(e,t){var n;return"number"==typeof e?{wait:e}:e?{wait:null!==(n=e.wait)&&void 0!==n?n:t,size:e.size,age:e.age}:{wait:t}},y=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},b=function(e,t){var n,r={};return _instanceof(e,Error)?(n=e.message,r.error=y(e)):n=e,void 0!==t&&(_instanceof(t,Error)?r.error=y(t):"object"==(void 0===t?"undefined":_type_of(t))&&null!==t?"error"in(r=_object_spread({},r,t))&&_instanceof(r.error,Error)&&(r.error=y(r.error)):r.value=t),{message:n,context:r}},m=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Dt({level:void 0!==t.level?(e=t.level,"string"==typeof e?St[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},w=function(e){return It(e)?e:void 0},k=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()}}},j=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]}})})()}},x=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,c,u,l,d,p,v;return _ts_generator(this,function(_){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],i=o[1],t&&a&&i?(u="",d=i,p=function(t){if(t)return(s(t)?t:[t]).find(function(t){if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));var r={event:e,mapping:t,collector:n,logger:n.logger,consent:f(e)&&e.consent||n.consent};return Boolean(t.condition(e,r))})},t[l=a]||(l="*"),[2,((v=t[l])&&(v[d]||(d="*"),c=p(v[d])),c||(l="*",d="*",c=p(null===(r=t[l])||void 0===r?void 0:r[d])),c&&(u="".concat(l," ").concat(d)),{eventMapping:c,mappingKey:u})]):[2,{}]})})()},O=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,u,l,d,p,v,_,g,h,y,b,m=arguments;return _ts_generator(this,function(w){switch(w.label){case 0:if(t=m.length>1&&void 0!==m[1]?m[1]:{},n=m.length>2&&void 0!==m[2]?m[2]:{},!c(e))return[2];if(a=f(e)&&e.consent||n.consent||(null===(o=n.collector)||void 0===o?void 0:o.consent),i=null!==(r=n.event)&&void 0!==r?r:f(e)?e:{},!n.collector)throw new Error("getMappingValue: context.collector is required");u={event:i,mapping:t,collector:n.collector,logger:n.collector.logger,consent:a},l=s(t)?t:[t],d=!0,p=!1,v=void 0,w.label=1;case 1:w.trys.push([1,6,7,8]),_=l[Symbol.iterator](),w.label=2;case 2:return(d=(g=_.next()).done)?[3,5]:(h=g.value,[4,j(Mt,function(e){if(_instanceof(e,Tt))throw e;n.collector&&n.collector.status.failed++,u.logger.error("mapping processing failed",{event:i,error:e})})(e,h,_object_spread_props(_object_spread({},u),{mapping:h}))]);case 3:if(y=w.sent(),c(y))return[2,y];w.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return b=w.sent(),p=!0,v=b,[3,8];case 7:try{d||null==_.return||_.return()}finally{if(p)throw v}return[7];case 8:return[2]}})}).apply(this,arguments)},S=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,l,d,v,_,g;return _ts_generator(this,function(h){switch(h.label){case 0:return t.policy?[4,Promise.all(Object.entries(t.policy).map(function(t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,O(e,a,{collector:n,event:e})];case 1:return t=r.sent(),e=p(e,o,t),[2]}})})()}))]:[3,2];case 1:h.sent(),h.label=2;case 2:return[4,x(e,t.mapping,n)];case 3:return o=h.sent(),a=o.eventMapping,s=o.mappingKey,(null==a?void 0:a.policy)?[4,Promise.all(Object.entries(a.policy).map(function(t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,O(e,a,{collector:n,event:e})];case 1:return t=r.sent(),e=p(e,o,t),[2]}})})()}))]:[3,5];case 4:h.sent(),h.label=5;case 5:return(u=t.data)?[4,O(e,t.data,{collector:n,event:e})]:[3,7];case 6:u=h.sent(),h.label=7;case 7:return c=u,l=Boolean(null==a?void 0:a.silent),a?a.ignore?[2,{event:e,data:c,mapping:a,mappingKey:s,ignore:!0,silent:l}]:(a.name&&(e.name=a.name),a.data?(v=a.data)?[4,O(e,a.data,{collector:n,event:e})]:[3,9]:[3,10]):[3,10];case 8:v=h.sent(),h.label=9;case 9:d=v,c=f(c)&&f(d)?i(c,d):d,h.label=10;case 10:return(_=null!==(r=null==a?void 0:a.include)&&void 0!==r?r:t.include)&&_.length>0&&(g=function(e,t){var n={},r=t.includes("all")?Object.keys(Pt):t,o=!0,a=!1,i=void 0;try{for(var s,c=r[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=s.value,l=Pt[u];if(l){var d=l(e),p=!0,v=!1,_=void 0;if(f(d))try{for(var g,h=Object.entries(d)[Symbol.iterator]();!(p=(g=h.next()).done);p=!0){var y=_sliced_to_array(g.value,2),b=y[0],m=y[1];if(void 0!==m){var w="context"===u&&Array.isArray(m)?m[0]:m;n["".concat(u,"_").concat(b)]=w}}}catch(e){v=!0,_=e}finally{try{p||null==h.return||h.return()}finally{if(v)throw _}}}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return n}(e,_),Object.keys(g).length>0&&(c=f(c)?i(g,c):null!=c?c:g)),[2,{event:e,data:c,mapping:a,mappingKey:s,ignore:!1,silent:l}]}})})()},C=function(e){return e?e.trim().replace(/^'|'$/g,"").trim():""},E=function(e,t,n,r){return function(){for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];var s,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{s=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),s=e.apply(void 0,_to_consumable_array(a))}else s=e.apply(void 0,_to_consumable_array(a));if(f)try{s=f.apply(void 0,[{fn:e,result:s}].concat(_to_consumable_array(a)))}catch(e){d("Hook ".concat(String(u)," failed, keeping original result"),e)}return s}},A=function(e){return e.map(function(e){var t,n;if("string"==typeof e)return{match:function(){return!0},next:{type:"static",value:e}};if(Array.isArray(e))return{match:function(){return!0},next:null!==(t=Rt(e))&&void 0!==t?t:{type:"chain",value:[]}};var r=e;return{match:r.match?Lt(r.match):function(){return!0},next:null!==(n=Rt(r))&&void 0!==n?n:{type:"chain",value:[]}}})},P=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null==e)return[];if("object"==(void 0===e?"undefined":_type_of(e))){var r=Nt.get(e);r?t=r:(t=Rt(e))&&Nt.set(e,t)}else t=Rt(e);if(!t)return[];var o=Wt(t,n);return void 0===o?[]:Array.isArray(o)?o:[o]},q=function(e,t){var n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n},D=function(e){var t;return{stop:null!==(t=e.stop)&&void 0!==t&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(function(e){return{match:e.match?Lt(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},I=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return(o=e.rules.find(function(e){return e.match(n)}))?(a=o.key.map(function(e){var t;return String(null!==(t=At(n,e))&&void 0!==t?t:"")})).every(function(e){return""===e})?[2,null]:(i=a.join(":"),s=null!=r?r:e.namespace,c=s?"".concat(s,":").concat(i):i,[4,t.get(c)]):[2,null];case 1:return[2,void 0!==(u=l.sent())?{status:"HIT",key:c,value:u,rule:o}:{status:"MISS",key:c,rule:o}]}})})()},T=function(e,t,n,r){e.set(t,n,1e3*r)},M=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,v,_;return _ts_generator(this,function(g){switch(g.label){case 0:if(!t)return[2,e];o=e,a=!0,i=!1,s=void 0,g.label=1;case 1:g.trys.push([1,6,7,8]),c=Object.entries(t)[Symbol.iterator](),g.label=2;case 2:return(a=(u=c.next()).done)?[3,5]:(l=_sliced_to_array(u.value,2),f=l[0],d=l[1],v=[o,f],[4,O(n,d,{collector:r})]);case 3:o=p.apply(void 0,v.concat([g.sent()])),g.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return _=g.sent(),i=!0,s=_,[3,8];case 7:try{a||null==c.return||c.return()}finally{if(i)throw s}return[7];case 8:return[2,o]}})})()},L=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},R=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s,c=_sliced_to_array(a.value,2),u=c[0],l=null===(s=c[1].config)||void 0===s?void 0:s.next;"string"==typeof l||Array.isArray(l)&&l.every(function(e){return"string"==typeof e})?t[u]={next:l}:t[u]={}}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}return t},N=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}},W=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 i;(i=n).push.apply(i,_to_consumable_array(a));break}o=a}return n},H=function(e,t,n){return _async_to_generator(function(){var r,o,i,s;return _ts_generator(this,function(c){switch(c.label){case 0:return!t.init||t.config.init?[3,2]:(r=t.type||"unknown",o=e.logger.scope("transformer:".concat(r)),i={collector:e,logger:o,id:n,ingest:a(n),config:t.config,env:G(t.config.env)},o.debug("init"),[4,E(t.init,"TransformerInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=c.sent()))return[2,!1];t.config=_object_spread_props(_object_spread({},s||t.config),{env:(null==s?void 0:s.env)||t.config.env,init:!0}),o.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},z=function(e,t,n,r,o,a){return _async_to_generator(function(){var i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return i=t.type||"unknown",s=e.logger.scope("transformer:".concat(i)),c={collector:e,logger:s,id:n,ingest:o,config:t.config,env:_object_spread({},G(t.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,E(t.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},B=function(e,t){return e?_object_spread_props(_object_spread({},e),{_meta:_object_spread_props(_object_spread({},e._meta),{path:_to_consumable_array(e._meta.path)})}):a(t)},G=function(e){return e&&f(e)?e:{}},U=function(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(function(e){return"string"==typeof e}))},V=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,p;return _ts_generator(this,function(v){switch(v.label){case 0:if(!t.on||!(null===(r=t.queueOn)||void 0===r?void 0:r.length))return[2];a=t.queueOn,t.queueOn=[],i=n||(null===(o=t.config)||void 0===o?void 0:o.id)||"unknown",s=!0,c=!1,u=void 0,v.label=1;case 1:v.trys.push([1,6,7,8]),l=function(){var n,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return n=d.value,r=n.type,o=n.data,[4,j(t.on,function(t){if(_instanceof(t,Tt))throw t;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:r,error:t})})(r,o)];case 1:return a.sent(),[2]}})},f=a[Symbol.iterator](),v.label=2;case 2:return(s=(d=f.next()).done)?[3,5]:[5,_ts_values(l())];case 3:v.sent(),v.label=4;case 4:return s=!0,[3,2];case 5:return[3,8];case 6:return p=v.sent(),c=!0,u=p,[3,8];case 7:try{s||null==f.return||f.return()}finally{if(c)throw u}return[7];case 8:return[2]}})})()},F=function(e){var t;return Boolean(e.config.init)&&!(null===(t=e.config.require)||void 0===t?void 0:t.length)},K=function(e,t,n){return _async_to_generator(function(){var r,o,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w,k,x,S,C,E,A,N;return _ts_generator(this,function(H){switch(H.label){case 0:return o=n.code,i=n.config,s=void 0===i?{}:i,c=n.env,u=void 0===c?{}:c,l=n.primary,f=n.next,d=n.before,p=n.cache,_=(v=p)?D(_object_spread_props(_object_spread({},v),{stop:null===(r=v.stop)||void 0===r||r})):void 0,g=U(f)?W(f,R(e.transformers)):void 0,h=U(d)?W(d,R(e.transformers)):void 0,y=u.push,b=null!=y?y:e.push,m=Boolean(y),w=function(n,r,o){return _async_to_generator(function(){var a,i,c,u,l,p,v,y,w,k,x,O,S,C,E,A,D,N,H,z,G,U,V,F;return _ts_generator(this,function(K){switch(K.label){case 0:return i=null!=h?h:void 0!==d?function(){var t=P(d,q(o.ingest));return 0===t.length?[]:W(1===t.length?t[0]:t,R(e.transformers))}():[],c=[n],i.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,Vt(e,e.transformers,i,n,o.ingest,o.respond,"source.".concat(t,".before"))]:[3,2];case 1:if(null===(u=K.sent()).event)return[2,{ok:!0}];if(u.stopped)return[2,(u.respond&&(o.respond=u.respond),{ok:!0})];u.respond&&(o.respond=u.respond),c=Array.isArray(u.event)?u.event:[u.event],K.label=2;case 2:return _&&(l=L(_,e))?(p=q(o.ingest),[4,I(_,l,p)]):[3,7];case 3:return(v=K.sent())?"HIT"===v.status&&void 0!==v.value&&_.stop?(w=v.value,v.rule.update?[4,M(w,v.rule.update,_object_spread_props(_object_spread({},p),{cache:{status:"HIT"}}),e)]:[3,5]):[3,6]:[3,7];case 4:w=K.sent(),K.label=5;case 5:return[2,(null===(y=o.respond)||void 0===y||y.call(o,w),{ok:!0})];case 6:"MISS"===v.status&&_.stop&&o.respond&&(k=o.respond,x=v.rule.update,O=_object_spread_props(_object_spread({},p),{cache:{status:"MISS"}}),S=v.key,C=v.rule.ttl,E=function(t){T(l,S,t,C),x?a=_async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,M(t,x,O,e)];case 1:return n=r.sent(),k(n),[2]}})})():k(t)},o.respond=E),"MISS"!==v.status||_.stop||T(l,v.key,!0,v.rule.ttl),K.label=7;case 7:A=g?{kind:"single",preChain:g}:void 0!==f?function(){var t=P(f,q(o.ingest));return 0===t.length?{kind:"single",preChain:[]}:1===t.length?{kind:"single",preChain:W(t[0],R(e.transformers))}:{kind:"many",branches:t.map(function(t){return W(t,R(e.transformers))})}}():{kind:"single",preChain:[]},D={ok:!0},N=!0,H=!1,z=void 0,K.label=8;case 8:K.trys.push([8,13,14,15]),G=function(){var n,a;return _ts_generator(this,function(i){switch(i.label){case 0:return n=V.value,"many"!==A.kind?[3,2]:[4,Promise.all(A.branches.map(function(a,i){return j(function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return[2,m?b(n):b(n,_object_spread_props(_object_spread({},r),{id:t,ingest:B(o.ingest,"".concat(t,".").concat(i)),respond:void 0,mapping:s,preChain:a}))]})})()},function(t){return e.logger.scope("source:many").error("many branch ".concat(i," failed"),{error:t}),{ok:!0}})()}))];case 1:return i.sent(),D={ok:!0},[3,7];case 2:return m?[4,b(n)]:[3,4];case 3:return a=i.sent(),[3,6];case 4:return[4,b(n,_object_spread_props(_object_spread({},r),{id:t,ingest:o.ingest,respond:o.respond,mapping:s,preChain:A.preChain}))];case 5:a=i.sent(),i.label=6;case 6:D=a,i.label=7;case 7:return[2]}})},U=c[Symbol.iterator](),K.label=9;case 9:return(N=(V=U.next()).done)?[3,12]:[5,_ts_values(G())];case 10:K.sent(),K.label=11;case 11:return N=!0,[3,9];case 12:return[3,15];case 13:return F=K.sent(),H=!0,z=F,[3,15];case 14:try{N||null==U.return||U.return()}finally{if(H)throw z}return[7];case 15:return a?[4,a]:[3,17];case 16:K.sent(),K.label=17;case 17:return[2,D]}})})()},k=function(n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(i){switch(i.label){case 0:return r=a(t),s.ingest&&void 0!==n?[4,O(n,s.ingest,{collector:e})]:[2,r];case 1:return o=i.sent(),[2,_object_spread_props(_object_spread({},r,o),{_meta:r._meta})]}})})()},x=e.logger.scope("source").scope(t),S=_object_spread_props(_object_spread({command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:x},u),{push:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){var r;return _ts_generator(this,function(o){return r={ingest:a(t),respond:void 0},[2,w(e,n,r)]})})()}}),C={collector:e,logger:x,id:t,config:s,env:S,withScope:function(e,t,n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return o={},[4,k(e)];case 1:return o.ingest=a.sent(),o.respond=t,r=o,[2,n(_object_spread_props(_object_spread({},S),{push:function(e){return w(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r)},ingest:r.ingest,respond:r.respond}))]}})})()}},[4,j(o,function(n){if(_instanceof(n,Tt))throw n;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:t,error:n})})(C)];case 1:return(E=H.sent())?(A=E.type||"unknown",N=e.logger.scope(A).scope(t),[2,(S.logger=N,l&&(E.config=_object_spread_props(_object_spread({},E.config),{primary:l})),E)]):[2]}})})()},Y=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w=arguments;return _ts_generator(this,function(k){switch(k.label){case 0:t=w.length>1&&void 0!==w[1]?w[1]:{},n={},r=!0,o=!1,a=void 0,k.label=1;case 1:k.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),k.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],[4,K(e,u,l)]);case 3:if(!(d=k.sent()))return[3,4];p=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),p?{require:_to_consumable_array(p)}:{}),n[u]=d,k.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return m=k.sent(),o=!0,a=m,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:Object.assign(e.sources,n),v=!0,_=!1,g=void 0,k.label=9;case 9:k.trys.push([9,14,15,16]),h=function(){var t,n,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return t=b.value,n=e.sources[t],r=!1,n.init?[4,j(n.init.bind(n),function(n){if(_instanceof(n,Tt))throw n;r=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:t,error:n})})()]:[3,2];case 1:a.sent(),a.label=2;case 2:return r?[3,5]:(n.config.init=!0,(o=F(n))?[4,V(e,n,t)]:[3,4]);case 3:o=a.sent(),a.label=4;case 4:a.label=5;case 5:return[2]}})},y=Object.keys(n)[Symbol.iterator](),k.label=10;case 10:return(v=(b=y.next()).done)?[3,13]:[5,_ts_values(h())];case 11:k.sent(),k.label=12;case 12:return v=!0,[3,10];case 13:return[3,16];case 14:return m=k.sent(),_=!0,g=m,[3,16];case 15:try{v||null==y.return||y.return()}finally{if(_)throw g}return[7];case 16:return[2,n]}})}).apply(this,arguments)},$=function(e,t,n,r){if(_instanceof(n,Tt))throw n;e.logger.scope("on").error("on callback failed",_object_spread_props(_object_spread({kind:t},r),{error:n}))},J=function(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}},X=function(e,t,n){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){return r=e.on,o=r[t]||[],(a=s(n)?n:[n]).forEach(function(e){o.push(e)}),r[t]=o,Q(e,t,a),[2]})})()},Z=function(e,t,n,r,o){if(t.on){var a=t.type||"unknown",i=e.logger.scope(a).scope("on").scope(r),s={collector:e,logger:i,id:n,config:t.config,data:o,env:ge(t.env,t.config.env)};k(t.on,function(t){return $(e,"destination",t,{destId:n,type:r})})(r,s)}},Q=function(e,t,n,r){var o,a,i,s,c;switch(t){case Ut.Commands.Consent:o=r||e.consent;break;case Ut.Commands.Session:o=e.session;break;case Ut.Commands.User:o=r||e.user;break;case Ut.Commands.Custom:o=r||e.custom;break;case Ut.Commands.Globals:o=r||e.globals;break;case Ut.Commands.Config:o=r||e.config;break;case Ut.Commands.Ready:case Ut.Commands.Run:default:o=void 0}if(n.length)switch(t){case Ut.Commands.Consent:a=e,i=n,s=r||a.consent,c=J(a,Ut.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(t){return t in e}).forEach(function(t){k(e[t],function(e){return $(a,"consent",e,{key:t})})(s,c)})});break;case Ut.Commands.Ready:!function(e,t){if(e.allowed){var n=J(e,Ut.Commands.Ready);t.forEach(function(t){k(t,function(t){return $(e,"ready",t)})(void 0,n)})}}(e,n);break;case Ut.Commands.Run:!function(e,t){if(e.allowed){var n=J(e,Ut.Commands.Run);t.forEach(function(t){k(t,function(t){return $(e,"run",t)})(void 0,n)})}}(e,n);break;case Ut.Commands.Session:!function(e,t){if(e.session){var n=J(e,Ut.Commands.Session);t.forEach(function(t){k(t,function(t){return $(e,"session",t)})(e.session,n)})}}(e,n);break;default:var u=J(e,t);n.forEach(function(n){"function"==typeof n&&k(n,function(n){return $(e,"generic",n,{type:t})})(o,u)})}},ee=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w,k;return _ts_generator(this,function(x){switch(x.label){case 0:switch(i=n||[],n||(i=e.on[t]||[]),t){case Ut.Commands.Consent:a=r||e.consent;break;case Ut.Commands.Session:a=e.session;break;case Ut.Commands.User:a=r||e.user;break;case Ut.Commands.Custom:a=r||e.custom;break;case Ut.Commands.Globals:a=r||e.globals;break;case Ut.Commands.Config:a=r||e.config;break;case Ut.Commands.Ready:case Ut.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,x.label=1;case 1:x.trys.push([1,6,7,8]),f=function(){var n,r,o,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return n=_sliced_to_array(p.value,2),r=n[0],o=n[1],(null===(i=o.config.require)||void 0===i?void 0:i.length)&&-1!==(c=o.config.require.indexOf(t))&&o.config.require.splice(c,1),o.on?F(o)?(u=!1,[4,j(o.on,function(n){return $(e,"source",n,{sourceId:r,type:t})})(t,a)]):[3,2]:[3,3];case 1:return u===l.sent()&&(s=!0),[3,3];case 2:o.queueOn=o.queueOn||[],o.queueOn.push({type:t,data:a}),l.label=3;case 3:return[2]}})},d=Object.entries(e.sources)[Symbol.iterator](),x.label=2;case 2:return(c=(p=d.next()).done)?[3,5]:[5,_ts_values(f())];case 3:x.sent(),x.label=4;case 4:return c=!0,[3,2];case 5:return[3,8];case 6:return k=x.sent(),u=!0,l=k,[3,8];case 7:try{c||null==d.return||d.return()}finally{if(u)throw l}return[7];case 8:Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],i=r[1];if(i.on){if(!i.config.init)return i.queueOn=i.queueOn||[],void i.queueOn.push({type:t,data:a});Z(e,i,o,t,a)}}),v=!0,_=!1,g=void 0,x.label=9;case 9:x.trys.push([9,15,16,17]),h=Object.entries(e.sources)[Symbol.iterator](),x.label=10;case 10:return(v=(y=h.next()).done)?[3,14]:(b=_sliced_to_array(y.value,2),m=b[0],w=b[1],F(w)&&(null===(o=w.queueOn)||void 0===o?void 0:o.length)?[4,V(e,w,m)]:[3,12]);case 11:x.sent(),x.label=12;case 12:x.label=13;case 13:return v=!0,[3,10];case 14:return[3,17];case 15:return k=x.sent(),_=!0,g=k,[3,17];case 16:try{v||null==h.return||h.return()}finally{if(_)throw g}return[7];case 17:return Object.keys(e.pending.destinations).length>0?[4,function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,u,l,f,d,p;return _ts_generator(this,function(v){n=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(n=(i=a.next()).done);n=!0)s=_sliced_to_array(i.value,2),c=s[0],u=s[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!==(p=ve(u)).config.queue&&(p.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=p))}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,t)]:[3,19];case 18:x.sent(),x.label=19;case 19:return[2,(Q(e,t,i,r),!s)]}})})()},te=function(e,t,n,r){var o;if(!Number.isFinite(n.max)||n.max<=0)throw new Error("pushBounded: max must be > 0 (got ".concat(n.max,")"));if("dropNewest"===(null!==(o=n.onOverflow)&&void 0!==o?o:"dropOldest"))return e.length>=n.max?(r&&r([t]),{appended:!1,dropped:1}):(e.push(t),{appended:!0,dropped:0});for(var a=[];e.length>=n.max;)a.push(e.shift());return e.push(t),a.length>0&&r&&r(a),{appended:!0,dropped:a.length}},ne=function(e,t,n,r){Ft.get(e)||(Ft.set(e,!0),t.warn(n,r))},re=function(e){Ft.delete(e)},oe=function(e){return e===Kt},ae=function(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}},ie=function(e,t){return e.status.destinations[t]||(e.status.destinations[t]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[t]},se=function(e,t,n,r){var o;e.dropped[t]||(e.dropped[t]={});var a=e.dropped[t];return a[n]=(null!==(o=a[n])&&void 0!==o?o:0)+r,a[n]},ce=function(e,t,n){if(!e)return[];if(Array.isArray(e)&&e.every(function(e){return"string"==typeof e}))return W(e,t);if("string"==typeof e)return W(e,t);var r=P(e,q(n));return 0===r.length?[]:1===r.length?W(r[0],t):W(r,t)},ue=function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,u,f,d,p,v;return _ts_generator(this,function(_){if(n=t.code,r=t.config,o=void 0===r?{}:r,a=t.env,i=void 0===a?{}:a,s=t.before,c=t.next,u=t.cache,!l(n.push))return[2,pe({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(f=o||{init:!1},d=s?_object_spread_props(_object_spread({},f),{before:s}):_object_spread({},f),c&&(d=_object_spread_props(_object_spread({},d),{next:c})),u&&(d=_object_spread_props(_object_spread({},d),{cache:u})),p=_object_spread_props(_object_spread({},n),{config:d,env:ge(n.env,i)}),!(v=p.config.id))do{v=g(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[v]);return[2,(e.destinations[v]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),le(e,void 0,{},_define_property({},v,p)))]})})()},le=function(t,n,r){return _async_to_generator(function(t,n){var r,o,s,c,u,l,f,d,p,v,g,h,y,b,m,w,k,x,O,S,C,E,A,P,M,N,W,H,z,B,G,U,V=arguments;return _ts_generator(this,function(F){switch(F.label){case 0:if(r=V.length>2&&void 0!==V[2]?V[2]:{},o=V.length>3?V[3]:void 0,s=t.allowed,c=t.consent,u=t.globals,l=t.user,!s)return[2,pe({ok:!1})];if(n){if(void 0===(f=t.config.queueMax))throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");(d=te(t.queue,n,{max:f})).dropped>0?(p=se(t.status,e("collector"),"queue",d.dropped),ne(t.queue,t.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:f,droppedCount:p})):t.queue.length<f&&re(t.queue),t.status.in++}return o||(o=t.destinations),v=t.transformers?R(t.transformers):{},[4,Promise.all(Object.entries(o||{}).map(function(o){var s=_sliced_to_array(o,2),f=s[0],d=s[1];return _async_to_generator(function(){var o,s,p,g,h,y,b,m,w,k,x,O,S,C,E,A,P,M,R,N,W,H,z,B,G,U,V,F,K,Y,$,J,X,Z;return _ts_generator(this,function(Q){switch(Q.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:c})}),d.queuePush=[],n&&g.push(Et(n)),h=r.ingest?_object_spread_props(_object_spread({},r.ingest),{_meta:_object_spread_props(_object_spread({},r.ingest._meta),{path:_to_consumable_array(r.ingest._meta.path)})}):a("unknown"),!g.length&&!(null===(o=d.queueOn)||void 0===o?void 0:o.length))return[2,{id:f,destination:d,skipped:!0}];if(g.length||!(null===(s=d.queueOn)||void 0===s?void 0:s.length))return[3,5];y=!1,Q.label=1;case 1:return Q.trys.push([1,3,,4]),[4,fe(t,d,f)];case 2:return y=Q.sent(),[3,4];case 3:return b=Q.sent(),t.status.failed++,m=d.type||"unknown",t.logger.scope(m).error("destination init failed",{error:_instanceof(b,Error)?b.message:String(b)}),[3,4];case 4:return[2,{id:f,destination:d,skipped:!y}];case 5:if(w=[],k=g.filter(function(e){var t=_(d.config.consent,c,e.consent);return!t||(e.consent=t,w.push(e),!1)}),k.length>0){O=d.queuePush,S=d.config.id||f,C={max:null!==(x=d.config.queueMax)&&void 0!==x?x:1e3},E=0,A=!0,P=!1,M=void 0;try{for(R=k[Symbol.iterator]();!(A=(N=R.next()).done);A=!0)W=N.value,E+=te(O,W,C).dropped}catch(e){P=!0,M=e}finally{try{A||null==R.return||R.return()}finally{if(P)throw M}}E>0?(ie(t,S),H=se(t.status,e("destination",S),"queue",E),ne(O,t.logger.scope(d.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:S,cap:C.max,droppedCount:H})):O.length<C.max&&re(O)}if(!w.length)return[2,{id:f,destination:d,queue:g}];G=!1,Q.label=6;case 6:return Q.trys.push([6,8,,9]),[4,fe(t,d,f)];case 7:return G=Q.sent(),[3,9];case 8:return U=Q.sent(),t.status.failed++,V=d.type||"unknown",t.logger.scope(V).error("destination init failed",{error:_instanceof(U,Error)?U.message:String(U)}),[3,9];case 9:return G?(d.dlq||(d.dlq=[]),F=ce(d.config.before,v,h),K=d.config.next,Y=null===(p=d.config)||void 0===p?void 0:p.cache,$=Y?D(Y):void 0,J=$?L($,t):void 0,X=0,Z=0,[4,Promise.all(w.map(function(n){return _async_to_generator(function(){var o,a,s,c,p,_,g,y,b,m,w,k,x;return _ts_generator(this,function(O){switch(O.label){case 0:return n.globals=i(u,n.globals),n.user=i(l,n.user),(null==$?void 0:$.stop)&&J?(a=q(h,n),[4,I($,J,a)]):[3,2];case 1:if("HIT"===(null==(s=O.sent())?void 0:s.status))return[2,n];"MISS"===(null==s?void 0:s.status)&&(o={key:s.key,ttl:s.rule.ttl}),O.label=2;case 2:return c=n,p=r.respond,F.length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Vt(t,t.transformers,F,n,h,r.respond,"destination.".concat(f,".before"))]:[3,4];case 3:if(null===(_=O.sent()).event)return[2,n];_.respond&&(p=_.respond),c=Array.isArray(_.event)?_.event[0]:_.event,O.label=4;case 4:return $&&!$.stop&&J?(g=q(h,c),[4,I($,J,g)]):[3,6];case 5:if("HIT"===(null==(y=O.sent())?void 0:y.status))return[2,n];"MISS"===(null==y?void 0:y.status)&&(o={key:y.key,ttl:y.rule.ttl}),O.label=6;case 6:return b=Date.now(),m=!1,[4,j(de,function(n){var r,o=d.type||"unknown";t.logger.scope(o).error("Push failed",{error:n,event:c.name}),z=n,m=!0;var a=d.dlq,i=d.config.id||f,s={max:null!==(r=d.config.dlqMax)&&void 0!==r?r:100},u=te(a,[c,n],s);if(u.dropped>0){ie(t,i);var l=se(t.status,e("destination",i),"dlq",u.dropped);ne(a,t.logger.scope(d.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:i,cap:s.max,droppedCount:l})}else a.length<s.max&&re(a)})(t,d,f,c,h,p)];case 7:return w=O.sent(),X+=Date.now()-b,o&&J&&void 0===d.config.mock&&T(J,o.key,null==w||w,o.ttl),void 0===w||oe(w)||(B=w),oe(w)&&Z++,m||!K?[3,9]:(void 0!==w&&(h._response=w),(k=ce(K,v,h)).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Vt(t,t.transformers,k,c,h,p,"destination.".concat(f,".next"))]:[3,9]);case 8:(x=O.sent()).respond&&(p=x.respond),O.label=9;case 9:return[2,n]}})})()}))]):[2,{id:f,destination:d,queue:g}];case 10:return[2,(Q.sent(),{id:f,destination:d,error:z,response:B,totalDuration:X,batchedCount:Z,allowedCount:w.length})]}})})()}))];case 1:g=F.sent(),h={},y={},b={},m=!0,w=!1,k=void 0;try{for(x=g[Symbol.iterator]();!(m=(O=x.next()).done);m=!0)(S=O.value).skipped||(M=S.destination,N={type:M.type||"unknown",data:S.response},ie(t,S.id),W=t.status.destinations[S.id],H=Date.now(),W.queuePushSize=null!==(C=null===(A=M.queuePush)||void 0===A?void 0:A.length)&&void 0!==C?C:0,W.dlqSize=null!==(E=null===(P=M.dlq)||void 0===P?void 0:P.length)&&void 0!==E?E:0,S.error?(N.error=S.error,b[S.id]=N,W.failed++,W.lastAt=H,W.duration+=S.totalDuration||0,t.status.failed++):S.queue&&S.queue.length?y[S.id]=N:(G=null!==(z=S.batchedCount)&&void 0!==z?z:0,U=null!==(B=S.allowedCount)&&void 0!==B?B:0,(Math.max(0,U-G)>0||0===U)&&(h[S.id]=N,W.count++,W.lastAt=H,W.duration+=S.totalDuration||0,t.status.out++)))}catch(e){w=!0,k=e}finally{try{m||null==x.return||x.return()}finally{if(w)throw k}}return[2,pe(_object_spread({event:n},Object.keys(h).length&&{done:h},Object.keys(y).length&&{queued:y},Object.keys(b).length&&{failed:b}))]}})}).apply(this,arguments)},fe=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,p,v,_,g;return _ts_generator(this,function(h){switch(h.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=e.logger.scope(o),i={collector:e,logger:a,id:n,config:t.config,env:ge(t.env,t.config.env)},a.debug("init"),[4,E(t.init,"DestinationInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=h.sent()))return[2,s];if(t.config=_object_spread_props(_object_spread({},s||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=(p=d.next()).done);u=!0)v=p.value,_=v.type,g=v.data,Z(e,t,n,_,g)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),h.label=2;case 2:return[2,!0]}})})()},de=function(t,n,r,o,a,i){return _async_to_generator(function(){var s,u,l,f,d,p,v,_,g,y,b,m,w,k,x,O,C,A,P,q,D,I,T,M,L,R;return _ts_generator(this,function(N){switch(N.label){case 0:return s=n.config,[4,S(o,s,t)];case 1:return(u=N.sent()).ignore?[2,!1]:(l=n.type||"unknown",f=t.logger.scope(l),d={collector:t,logger:f,id:r,config:s,data:u.data,rule:u.mapping,ingest:a,env:_object_spread({},ge(n.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(f.debug("mock",{event:u.event.name}),s.mock)]:(p=u.mapping,v=u.mappingKey||"* *",(null==p?void 0:p.batch)&&n.pushBatch&&void 0===s.mock?(n.batches=n.batches||{},n.batches[v]||(x={key:v,entries:[],events:[],data:[]},O=ae(p.batch),C=ae(s.batch),A=null!==(g=null!==(y=O.wait)&&void 0!==y?y:C.wait)&&void 0!==g?g:3e4,P=null!==(b=null!==(m=O.size)&&void 0!==m?m:C.size)&&void 0!==b?b:1e3,q=null!==(w=null!==(k=O.age)&&void 0!==k?k:C.age)&&void 0!==w?w:3e4,D=ge(n.env,s.env),I=function(e){var t,n,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=h(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,1e3),a=o.wait,i=o.size,s=o.age,c=null,u=null,l=!1,f=[],d=0,p=function(){c&&(clearTimeout(c),c=null),u&&(clearTimeout(u),u=null),d=0,n=void 0},v=function(){var r=n,o=f;if(p(),f=[],r)return t=e.apply(void 0,_to_consumable_array(r)),o.forEach(function(e){return e(t)}),t;o.forEach(function(e){return e(void 0)})},_=function(){for(var o=arguments.length,p=new Array(o),_=0;_<o;_++)p[_]=arguments[_];return new Promise(function(o){var _=r&&!l;if(n=p,d+=1,f.push(o),c&&clearTimeout(c),c=setTimeout(function(){c=null,r&&!l||v()},a),void 0===s||u||(u=setTimeout(function(){u=null,v()},s)),void 0!==i&&d>=i)v();else if(_){l=!0,t=e.apply(void 0,_to_consumable_array(p));var g=f;f=[],g.forEach(function(e){return e(t)})}})};return _.flush=function(){return n||0!==f.length?new Promise(function(e){f.push(e),v()}):Promise.resolve(void 0)},_.cancel=function(){var e=f;f=[],p(),e.forEach(function(e){return e(void 0)})},_.size=function(){return d},_}(function(){return _async_to_generator(function(){var o,a,i,c,u,l,d,p;return _ts_generator(this,function(_){switch(_.label){case 0:return 0===(a=n.batches[v].batched).entries.length?[2]:(i={key:a.key,entries:a.entries,events:a.events,data:a.data},a.entries=[],a.events=[],a.data=[],c=i.entries[0],u={collector:t,logger:f,id:r,config:s,data:void 0,rule:c.rule,ingest:c.ingest,env:_object_spread({},D,c.respond?{respond:c.respond}:{})},f.debug("push batch",{events:i.entries.length}),l=n.config.id||r,d=ie(t,l),p=!0,[4,j(E(n.pushBatch,"DestinationPushBatch",t.hooks,t.logger),function(r){var o;p=!1;var a=n.dlq=n.dlq||[],s={max:null!==(o=n.config.dlqMax)&&void 0!==o?o:100},c=0,u=!0,v=!1,_=void 0;try{for(var g,h=i.entries[Symbol.iterator]();!(u=(g=h.next()).done);u=!0){var y=g.value;c+=te(a,[y.event,r],s).dropped}}catch(e){v=!0,_=e}finally{try{u||null==h.return||h.return()}finally{if(v)throw _}}if(c>0){var b=se(t.status,e("destination",l),"dlq",c);ne(a,f,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:s.max,droppedCount:b})}else a.length<s.max&&re(a);d.failed+=i.entries.length,d.dlqSize=a.length,t.status.failed+=i.entries.length,f.error("Push batch failed",{error:_instanceof(r,Error)?r.message:String(r),entries:i.entries.length})})(i,u)]);case 1:return _.sent(),f.debug("push batch done"),d.inFlightBatch=Math.max(0,(null!==(o=d.inFlightBatch)&&void 0!==o?o:0)-i.entries.length),p&&(d.count+=i.entries.length,d.lastAt=Date.now(),t.status.out+=i.entries.length),[2]}})})()},{wait:A,size:P,age:q}),n.batches[v]={batched:x,batchFn:function(){I()},flush:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){switch(e.label){case 0:return[4,I.flush()];case 1:return e.sent(),[2]}})})()}}),(T=n.batches[v]).batched.entries.push({event:u.event,ingest:a,respond:i,rule:p,data:u.data}),T.batched.events.push(u.event),c(u.data)&&T.batched.data.push(u.data),M=n.config.id||r,[2,((L=ie(t,M)).inFlightBatch=(null!==(_=L.inFlightBatch)&&void 0!==_?_:0)+1,T.batchFn(),Kt)]):(f.debug("push",{event:u.event.name}),[4,E(n.push,"DestinationPush",t.hooks,t.logger)(u.event,d)])));case 2:return R=N.sent(),[2,(f.debug("push done"),R)]}})})()},pe=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},ve=function(e){var t=e.code,n=e.config,r=void 0===n?{}:n,o=e.env,a=void 0===o?{}:o,i=e.cache,s=N(e,"before").config,c=N(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},t.config,r,c);i&&(u.cache=i);var l=ge(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},_e=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,p=arguments;return _ts_generator(this,function(v){t=p.length>1&&void 0!==p[1]?p[1]:{},o={},a=!0,i=!1,s=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]=ve(d)}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}return[2,o]})}).apply(this,arguments)},ge=function(e,t){return e||t?t?e&&f(e)&&f(t)?_object_spread({},e,t):t:e:{}},he=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,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:if(!(r=a.destroy))return[2];i=a.type||"unknown",s=n.scope(i),c={id:o,config:a.config,env:null!==(e=a.env)&&void 0!==e?e:{},logger:s},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(),s.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]}})})()},ye=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,p,v,_;return _ts_generator(this,function(g){switch(g.label){case 0:switch(a=!1,t){case Ut.Commands.Config:return[3,1];case Ut.Commands.Consent:return[3,2];case Ut.Commands.Custom:return[3,3];case Ut.Commands.Destination:return[3,4];case Ut.Commands.Globals:return[3,7];case Ut.Commands.Hook:return[3,8];case Ut.Commands.On:return[3,9];case Ut.Commands.Ready:return[3,12];case Ut.Commands.Run:return[3,13];case Ut.Commands.Session:return[3,15];case Ut.Commands.Shutdown:return[3,16];case Ut.Commands.User:return[3,18]}return[3,19];case 1:return f(n)&&(i(e.config,n,{shallow:!1}),o=n,a=!0),[3,19];case 2:return f(n)&&(s=function(e,t){var n={};return Object.entries(t).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],o=t[1];n[r]=!!o}),e.consent=i(e.consent,n),{update:n}}(e,n),c=s.update,o=c,a=!0),[3,19];case 3:return f(n)&&(e.custom=i(e.custom,n),o=n,a=!0),[3,19];case 4:return f(n)&&"code"in n&&f(n.code)?[4,ue(e,n)]:[3,6];case 5:r=g.sent(),g.label=6;case 6:return[3,19];case 7:return f(n)&&(e.globals=i(e.globals,n),o=n,a=!0),[3,19];case 8:return f(n)&&d(n.name)&&l(n.fn)&&(u=n.name,p=n.fn,e.hooks[u]=p,o=n,a=!0),[3,19];case 9:return f(n)&&d(n.type)?(v=n.type,_=n.rules,[4,X(e,v,_)]):[3,11];case 10:g.sent(),g.label=11;case 11:return[3,19];case 12:return a=!0,[3,19];case 13:return[4,me(e,n)];case 14:return r=g.sent(),a=!0,[3,19];case 15:return a=!0,[3,19];case 16:return[4,(h=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=h.logger,[4,he(h.sources,"source",e)];case 1:return t.sent(),[4,he(h.destinations,"destination",e)];case 2:return t.sent(),[4,he(h.transformers,"transformer",e)];case 3:return t.sent(),[4,he(h.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 17:return g.sent(),[3,19];case 18:f(n)&&(i(e.user,n,{shallow:!1}),o=n,a=!0),g.label=19;case 19:return a?[4,ee(e,t,void 0,o)]:[3,22];case 20:return g.sent(),[4,le(e)];case 21:r=g.sent(),g.label=22;case 22:return[2,r||pe({ok:!0})]}var h})})()},be=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,i=void 0===a?Date.now():a,s=t.name,c=void 0===s?"".concat(r," ").concat(o):s,u=t.data,l=void 0===u?{}:u,f=t.context,d=void 0===f?{}:f,p=t.globals,v=void 0===p?e.globals:p,_=t.custom,g=void 0===_?{}:_,h=t.user,y=void 0===h?e.user:h,b=t.nested,m=void 0===b?[]:b,w=t.consent,k=void 0===w?e.consent:w,j=t.id,x=void 0===j?function(){for(var e="",t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}():j,O=t.trigger,S=void 0===O?"":O,C=t.entity,E=void 0===C?r:C,A=t.action,P=void 0===A?o:A,q=t.timing,D=void 0===q?0:q,I=t.source;return{name:c,data:l,context:d,globals:v,custom:g,user:y,nested:m,consent:k,id:x,trigger:S,entity:E,action:P,timestamp:i,timing:D,source:void 0===I?{type:"collector",schema:"4"}:I}},me=function(e,t){return _async_to_generator(function(){return _ts_generator(this,function(n){switch(n.label){case 0:return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=i(e.consent,t.consent)),t.user&&(e.user=i(e.user,t.user)),t.globals&&(e.globals=i(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=i(e.custom,t.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,le(e)];case 1:return[2,n.sent()]}})})()},we=function(){var e,t,n,r,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=null!==(e=o.maxEntries)&&void 0!==e?e:1e4,i=null!==(t=o.lowWaterMark)&&void 0!==t?t:.8,s=null!==(n=o.sweepIntervalMs)&&void 0!==n?n:6e4,c=Math.floor(a*i),u=new Map,l={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};return s>0&&((r=setInterval(function(){var e=Date.now(),t=0,n=!0,r=!1,o=void 0;try{for(var a,i=u[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=_sliced_to_array(a.value,2),c=s[0],f=s[1];void 0!==f.expires&&f.expires<=e&&(u.delete(c),t++)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}l.evictions_ttl+=t},s))&&"function"==typeof r.unref&&r.unref()),{type:"memory",config:{},get:function(e){var t=u.get(e);if(t)return void 0!==t.expires&&t.expires<=Date.now()?(u.delete(e),l.evictions_ttl++,void l.misses++):(u.delete(e),u.set(e,t),l.hits++,t.value);l.misses++},set:function(e,t,n){var r=!u.has(e);r||u.delete(e),u.set(e,{value:t,expires:void 0!==n?Date.now()+n:void 0}),l.writes++,r&&l.populates++,u.size>a&&function(){if(!(u.size<=a)){var e=u.size-c,t=0,n=!0,r=!1,o=void 0;try{for(var i,s=u.keys()[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var f=i.value;if(t>=e)break;u.delete(f),t++}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}l.evictions_entries+=t}}()},delete:function(e){u.delete(e)&&l.deletes++},get counters(){return _object_spread({},l)},destroy:function(){void 0!==r&&(clearInterval(r),r=void 0),u.clear()}}},ke=function(e,t){var n=t.cacheConfig,r=t.cacheStore,o=t.namespace,a=t.logger,i=t.storeId,s={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=n.rules.map(function(e){return{match:e.match?Lt(e.match):function(){return!0},ttl:e.ttl}}),u=function(e){return"".concat(o,":").concat(e)};function l(e,t){var n=void 0===t?{key:e}:{key:e,value:t};return c.find(function(e){return e.match(n)})}var f=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return _object_spread({},s)},get:function(t){return _async_to_generator(function(){var n,o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return n=u(t),[4,r.get(n)];case 1:return void 0!==(o=c.sent())?[2,(s.hits++,o)]:(a=f.get(n))?[2,(s.inflight_dedups++,a)]:(s.misses++,i=_async_to_generator(function(){var o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return c.trys.push([0,,6,7]),[4,e.get(t)];case 1:if(void 0===(o=c.sent()))return[2];if(!(a=l(t,o)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(n,o,1e3*a.ttl)];case 3:return c.sent(),s.populates++,[3,5];case 4:return i=c.sent(),d("set",t,i),[3,5];case 5:return[2,o];case 6:return f.delete(n),[7];case 7:return[2]}})})(),[2,(f.set(n,i),i)])}})})()},set:function(t,n,o){return _async_to_generator(function(){var a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return s.writes++,[4,e.set(t,n,o)];case 1:if(c.sent(),!(a=l(t,n)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(u(t),n,1e3*a.ttl)];case 3:return c.sent(),[3,5];case 4:return i=c.sent(),d("set",t,i),[3,5];case 5:return[2]}})})()},delete:function(t){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){switch(o.label){case 0:return s.deletes++,[4,e.delete(t)];case 1:o.sent(),o.label=2;case 2:return o.trys.push([2,4,,5]),[4,r.delete(u(t))];case 3:return o.sent(),[3,5];case 4:return n=o.sent(),d("delete",t,n),[3,5];case 5:return[2]}})})()}};function d(e,t,n){var r="store-cache(".concat(i,"): cache ").concat(e,' failed for "').concat(t,'"; backing succeeded, continuing');a?a.warn(r,{error:n}):console.warn(r,n)}},je=function(e,t){var n=t.get,r=t.set,o=t.delete;t.get=E(n,"StoreGet",e.hooks,e.logger),t.set=E(r,"StoreSet",e.hooks,e.logger),t.delete=E(o,"StoreDelete",e.hooks,e.logger)},xe=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w,k,j,x,O,S,C,E,A,P,q,D,I,T,M,L,R,N,W,H=arguments;return _ts_generator(this,function(z){switch(z.label){case 0:t=H.length>1&&void 0!==H[1]?H[1]:{},n={},r=!0,o=!1,a=void 0,z.label=1;case 1:z.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),z.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,p=void 0===d?{}:d,v=l.env,_=void 0===v?{}:v,g=e.logger.scope("store").scope(u),[4,f({collector:e,logger:g,id:u,config:p,env:_})]);case 3:h=z.sent(),n[u]=h,z.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return y=z.sent(),o=!0,a=y,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:m=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.keys(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=a.value;t[s]="WHITE"}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}var c=[],u=[];function l(n){var r,o=t[n];if("BLACK"!==o){if("GRAY"===o){var a=u.indexOf(n),i=u.slice(-1===a?0:a).concat(n).join(" -> ");throw new Error("Cycle in cache.store chain: ".concat(i))}t[n]="GRAY",u.push(n);var s=null===(r=e[n].cache)||void 0===r?void 0:r.store;if(void 0!==s){if(!(s in e))throw new Error('Store "'.concat(n,'" cache.store references "').concat(s,'", which is not declared in flow.stores'));l(s)}u.pop(),t[n]="BLACK",c.push(n)}}var f=!0,d=!1,p=void 0;try{for(var v,_=Object.keys(e)[Symbol.iterator]();!(f=(v=_.next()).done);f=!0){var g=v.value;"WHITE"===t[g]&&l(g)}}catch(e){d=!0,p=e}finally{try{f||null==_.return||_.return()}finally{if(d)throw p}}return c}(b=t),w=!0,k=!1,j=void 0;try{for(x=m[Symbol.iterator]();!(w=(O=x.next()).done);w=!0)S=O.value,(E=b[S].cache)&&(A=void 0,P=void 0,void 0!==E.store?(A=n[E.store],P=E.store):(n.__cache||(n.__cache=we()),A=n.__cache,P="__cache"),q=null!==(C=E.namespace)&&void 0!==C?C:S,e.logger.scope("store-cache").scope(S).info('store "'.concat(S,'" caches with namespace "').concat(q,':" via ').concat(P)),n[S]=ke(n[S],{storeId:S,cacheConfig:E,cacheStore:A,namespace:q,logger:e.logger.scope("store-cache").scope(S)}))}catch(e){k=!0,j=e}finally{try{w||null==x.return||x.return()}finally{if(k)throw j}}D=!0,I=!1,T=void 0;try{for(M=Object.entries(n)[Symbol.iterator]();!(D=(L=M.next()).done);D=!0)R=_sliced_to_array(L.value,2),N=R[0],W=R[1],"__cache"!==N&&je(e,W)}catch(e){I=!0,T=e}finally{try{D||null==M.return||M.return()}finally{if(I)throw T}}return[2,n]}})}).apply(this,arguments)},Oe=function(e){return _async_to_generator(function(){var t,n,r,o,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return r=i({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),o={level:null===(t=e.logger)||void 0===t?void 0:t.level,handler:null===(n=e.logger)||void 0===n?void 0:n.handler},s=m(o),c=_object_spread({},r.globalsStatic,e.globals),(u={allowed:!1,config:r,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:c,hooks:e.hooks||{},logger:s,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{},dropped:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0}).push=function(e,t){return E(function(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){return _ts_generator(this,function(o){switch(o.label){case 0:return[4,j(function(){return _async_to_generator(function(){var o,i,s,c,u,l,f,d,p,v,g,h,y,b,m,w,k,j,x,O,C;return _ts_generator(this,function(E){switch(E.label){case 0:return o=Date.now(),i=r.id,s=r.ingest,c=r.respond,u=r.mapping,l=r.preChain,f=r.include,d=r.exclude,p=c,v=n,g=f||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}(e.destinations,f,d):void 0,h=null!=s?s:a(i||"unknown"),u?[4,S(v,u,e)]:[3,2];case 1:if((y=E.sent()).ignore)return[2,pe({ok:!0})];if(u.consent&&!_(u.consent,e.consent,y.event.consent))return[2,pe({ok:!0})];v=y.event,E.label=2;case 2:return(null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0?[4,Vt(e,e.transformers,l,v,h,p,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(b=E.sent()).event?[2,pe({ok:!0})]:b.stopped?[2,(b.respond&&(p=b.respond),pe({ok:!0}))]:(b.respond&&(p=b.respond),Array.isArray(b.event)?[4,Promise.all(b.event.map(function(n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=t(n),o=be(e,r),[2,le(e,o,{id:i,ingest:h,respond:p},g)]})})()}))]:[3,5]);case 4:return w=E.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(k=e.status.sources[i]).count+=b.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-o),[2,null!==(m=w[0])&&void 0!==m?m:pe({ok:!0})];case 5:v=b.event,E.label=6;case 6:return j=t(v),x=be(e,j),[4,le(e,x,{id:i,ingest:h,respond:p},g)];case 7:return O=E.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(C=e.status.sources[i]).count++,C.lastAt=Date.now(),C.duration+=Date.now()-o),[2,O]}})})()},function(t){if(_instanceof(t,Tt))throw t;return e.status.failed++,e.logger.error("push failed",{event:n,ingest:r.ingest,error:t}),pe({ok:!1})})()];case 1:return[2,o.sent()]}})})()},"Push",e.hooks,e.logger)}(u,function(e){return _object_spread({timing:Math.round((Date.now()-u.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0-next-1779362268386"}},e)}),u.command=(p=ye,E(function(e,t,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,j(function(){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,p(d,e,t,n)];case 1:return[2,r.sent()]}})})()},function(n){if(_instanceof(n,Tt))throw n;return d.status.failed++,d.logger.error("command failed",{command:e,data:t,error:n}),pe({ok:!1})})()];case 1:return[2,r.sent()]}})})()},"Command",(d=u).hooks,d.logger)),l=e.stores||{},[4,xe(u,l)];case 1:return u.stores=f.sent(),function(e,t,n){var r=new Map,o=!0,a=!1,i=void 0;try{for(var s,c=Object.entries(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=_sliced_to_array(s.value,2),l=u[0],f=u[1];t[l]&&r.set(f,t[l])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}if(0!==r.size)for(var d=!0,p=!1,v=void 0,_=0,g=[n.transformers,n.destinations,n.sources];_<g.length;_++){var h=g[_];if(h)try{for(var y,b=Object.values(h)[Symbol.iterator]();!(d=(y=b.next()).done);d=!0){m(y.value.env)}}catch(e){p=!0,v=e}finally{try{d||null==b.return||b.return()}finally{if(p)throw v}}}function m(e){if(e){var t=!0,n=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=_sliced_to_array(a.value,2),c=s[0],u=s[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==i.return||i.return()}finally{if(n)throw o}}}}}(l,u.stores,e),u.stores.__cache||(u.stores.__cache=we()),[4,_e(u,e.destinations||{})];case 2:return u.destinations=f.sent(),[4,function(e){return _async_to_generator(function(e){var t,n,r,o,i,s,c,u,l,f=arguments;return _ts_generator(this,function(d){switch(d.label){case 0:t=f.length>1&&void 0!==f[1]?f[1]:{},n={},r=!0,o=!1,i=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=function(){var t,r,o,i,s,c,l,f,d,p,v,_,g,h,y,b,m,w,k,j,x,O;return _ts_generator(this,function(C){switch(C.label){case 0:return t=_sliced_to_array(u.value,2),r=t[0],o=t[1],f=o.code,d=o.env,p=void 0===d?{}:d,v=function(e,t){var n,r=(n=t,new Set(_to_consumable_array(Ht[n]).concat(_to_consumable_array(zt),_to_consumable_array(Bt[n])))),o=!0,a=!1,i=void 0;try{for(var s,c=Object.keys(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=s.value;if(!r.has(u))return{ok:!1,code:"UNKNOWN_KEY",key:u,reason:'Unknown key "'.concat(u,'" on ').concat(t,". Allowed: ").concat(_to_consumable_array(r).sort().join(", "),".")}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}var l=void 0!==e.package,f=void 0!==e.import,d=void 0!==e.code;return d&&"string"==typeof e.code?{ok:!1,code:"OBSOLETE_CODE_STRING",key:"code",reason:'code: "<name>" is no longer supported. Use import: "'.concat(e.code,'" with the package field instead.')}:d&&("object"!=_type_of(e.code)&&"function"!=typeof e.code||null===e.code||Array.isArray(e.code))?{ok:!1,code:"INVALID_CODE_SHAPE",key:"code",reason:"code must be an object ({ push, type?, init? }) or a resolved function value."}:d&&l?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:d&&f?{ok:!1,code:"CONFLICT",key:"import",reason:"Cannot specify both `code` and `import`."}:f&&!l?{ok:!1,code:"MISSING_PACKAGE",key:"import",reason:"`import` requires `package` to be set."}:!f||"string"==typeof e.import&&Gt.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:"import must match ".concat(Gt.source,". Got: ").concat(JSON.stringify(e.import),".")}}(o,"Transformer"),v.ok?(_=N(o,"before"),g=_.config,h=N(_object_spread_props(_object_spread({},o),{config:g}),"next"),y=h.config,b=Object.keys(p).length>0?_object_spread_props(_object_spread({},y),{env:p}):y,m=o.cache,w=m?_object_spread_props(_object_spread({},b),{cache:m}):b,k=e.logger.scope("transformer").scope(r),j={collector:e,logger:k,id:r,ingest:a(r),config:w,env:p},x=null!=f?f:function(e){var t=o.mapping;if(t){var n=[];if(void 0!==t.data&&n.push("data"),t.mapping){var a=!0,i=!1,s=void 0,c=!0,u=!1,l=void 0;try{for(var f,d=Object.entries(t.mapping)[Symbol.iterator]();!(c=(f=d.next()).done);c=!0){var p=_sliced_to_array(f.value,2),v=p[0],_=p[1];if("object"==(void 0===_?"undefined":_type_of(_))&&null!==_)try{for(var g,h=Object.entries(_)[Symbol.iterator]();!(a=(g=h.next()).done);a=!0){var y=_sliced_to_array(g.value,2),b=y[0],m=y[1];if("object"==(void 0===m?"undefined":_type_of(m))&&null!==m){var w=m;void 0!==w.data&&n.push("mapping[".concat(v,"][").concat(b,"].data")),void 0!==w.silent&&n.push("mapping[".concat(v,"][").concat(b,"].silent"))}}}catch(e){i=!0,s=e}finally{try{a||null==h.return||h.return()}finally{if(i)throw s}}}}catch(e){u=!0,l=e}finally{try{c||null==d.return||d.return()}finally{if(u)throw l}}}return n.length>0&&e.collector.logger.warn("Transformer ".concat(r,": `").concat(n.join(", "),"` ignored at transformer position (only event-mutating fields apply).")),{type:"pass",config:e.config,push:function(n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return[4,S(n,t,e.collector)];case 1:return[2,!(r=o.sent()).ignore&&{event:r.event}]}})})()}}}return{type:"pass",config:e.config,push:function(e){return{event:e}}}},[4,x(j)]):(e.logger.warn("Transformer ".concat(r," invalid (").concat(v.code,"): ").concat(v.reason,". Skipping.")),[2,"continue"]);case 1:return O=C.sent(),void 0!==o.before&&void 0===(null===(c=O.config)||void 0===c?void 0:c.before)&&(O.config=_object_spread_props(_object_spread({},null!==(i=O.config)&&void 0!==i?i:{}),{before:o.before})),void 0!==o.next&&void 0===(null===(l=O.config)||void 0===l?void 0:l.next)&&(O.config=_object_spread_props(_object_spread({},null!==(s=O.config)&&void 0!==s?s:{}),{next:o.next})),n[r]=O,[2]}})},c=Object.entries(t)[Symbol.iterator](),d.label=2;case 2:return(r=(u=c.next()).done)?[3,5]:[5,_ts_values(s())];case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return l=d.sent(),o=!0,i=l,[3,8];case 7:try{r||null==c.return||c.return()}finally{if(o)throw i}return[7];case 8:return[2,n]}})}).apply(this,arguments)}(u,e.transformers||{})];case 3:return[2,(u.transformers=f.sent(),u)]}var d,p})})()},Se=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,Oe(e=e||{})];case 1:return t=f.sent(),r=t,n={type:"elb",config:{},push:function(e,t,n,o,a){return _async_to_generator(function(){var i,s;return _ts_generator(this,function(c){if("string"==typeof e&&e.startsWith("walker "))return i=e.replace("walker ",""),[2,r.command(i,t)];if("string"==typeof e)s={name:e},t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(s.data=t);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,pe({ok:!1})];s=e,t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(s.data=_object_spread({},s.data||{},t))}return[2,(n&&"object"==(void 0===n?"undefined":_type_of(n))&&(s.context=n),o&&Array.isArray(o)&&(s.nested=o),a&&"object"==(void 0===a?"undefined":_type_of(a))&&(s.custom=a),r.push(s))]})})()}},t.sources.elb=n,[4,Y(t,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,i=e.globals,s=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 i&&Object.assign(t.globals,i),s&&Object.assign(t.custom,s),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=function(e,t){return(e.getAttribute(t)||"").trim()},Ee=function(e,t,n){var r,o=t.getComputedStyle(e);if("none"===o.display)return!1;if("visible"!==o.visibility)return!1;if(o.opacity&&Number(o.opacity)<.1)return!1;var a=t.innerHeight,i=e.getBoundingClientRect(),s=i.height,c=i.y,u=c+s,l={x:i.x+e.offsetWidth/2,y:i.y+e.offsetHeight/2};if(s<=a){if(e.offsetWidth+i.width===0||e.offsetHeight+i.height===0)return!1;if(l.x<0)return!1;if(l.x>(n.documentElement.clientWidth||t.innerWidth))return!1;if(l.y<0)return!1;if(l.y>(n.documentElement.clientHeight||t.innerHeight))return!1;r=n.elementFromPoint(l.x,l.y)}else{var f=a/2;if(c<0&&u<f)return!1;if(u>a&&c>f)return!1;r=n.elementFromPoint(l.x,a/2)}if(r)do{if(r===e)return!0}while(r=r.parentElement);return!1},Ae=function(e,t){return e+(t=null!=t?(!(arguments.length>2&&void 0!==arguments[2])||arguments[2]?"-":"")+t:"")},Pe=function(e,t,n){var r=Ce(t,Ae(e,n,!(arguments.length>3&&void 0!==arguments[3])||arguments[3]))||"";return He(r).reduce(function(e,n){var r=_sliced_to_array(ze(n),2),o=r[0],a=r[1];if(!o)return e;if(a||(o.endsWith(":")&&(o=o.slice(0,-1)),a=""),a.startsWith("#")){a=a.slice(1);try{var i=t[a];i||"selected"!==a||(i=t.options[t.selectedIndex].text),a=String(i)}catch(e){a=""}}return o.endsWith("[]")?(o=o.slice(0,-2),s(e[o])||(e[o]=[]),e[o].push(v(a))):e[o]=v(a),e},{})},qe=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ut.Commands.Prefix,r=e;if(!r)return[];var o=[],a=Ut.Commands.Action,i="[".concat(Ae(n,a,!1),"]"),s=function(e){Object.keys(Pe(n,e,a,!1)).forEach(function(t){o=o.concat(De(e,t,n))})};return r!==(r.ownerDocument||r)&&(null===(t=r.matches)||void 0===t?void 0:t.call(r,i))&&s(r),$t(r,i,s),o},De=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ut.Commands.Prefix,r=[],o=We(n,e,t),a=o.actions,i=o.nearestOnly;return a.length?(a.forEach(function(o){var a=He(o.actionParams||"",",").reduce(function(e,t){return e[C(t)]=!0,e},{}),s=Me(n,e,a,i);if(!s.length){var c="page",u="[".concat(Ae(n,c),"]"),l=_sliced_to_array(Re(e,u,n,c),2),f=l[0],d=l[1];s.push({entity:c,data:f,nested:[],context:d})}s.forEach(function(e){var n;r.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:null!==(n=e.nested)&&void 0!==n?n:[]})})}),r):r},Ie=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ut.Commands.Prefix,t=arguments.length>1?arguments[1]:void 0;if(!t)return{};var n=Ae(e,Ut.Commands.Globals,!1),r="[".concat(n,"]"),o={};return Ne(t,r,function(t){o=i(o,Pe(e,t,Ut.Commands.Globals,!1))}),o},Te=function(e){var t={};return He(e).forEach(function(e){var n=_sliced_to_array(ze(e),2),r=n[0],o=n[1],a=_sliced_to_array(Be(r),2),i=a[0],s=a[1];if(i){var c=_sliced_to_array(Be(o||""),2),u=c[0],l=c[1];u=u||i,t[i]||(t[i]=[]),t[i].push({trigger:i,triggerParams:s,action:u,actionParams:l})}}),t},Me=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=[],a=t;for(n=0!==Object.keys(n||{}).length?n:void 0;a;){var i=Yt(e,a,t,n);if(i&&(o.push(i),r))break;a=Le(e,a)}return o},Le=function(e,t){var n=Ae(e,Ut.Commands.Link,!1);if(t.matches("[".concat(n,"]"))){var r=_sliced_to_array(ze(Ce(t,n)),2),o=r[0];if("child"===r[1]){var a=t.ownerDocument,i=null;return Ne(a,"[".concat(n,'="').concat(o,':parent"]'),function(e){i||(i=e)}),i}}var s=t.ownerDocument.defaultView;return!t.parentElement&&t.getRootNode&&_instanceof(t.getRootNode(),s.ShadowRoot)?t.getRootNode().host:t.parentElement},Re=function(e,t,n,r){for(var o={},a={},s=e,c="[".concat(Ae(n,Ut.Commands.Context,!1),"]"),u=0;s;)s.matches(t)&&(o=i(Pe(n,s,""),o),o=i(Pe(n,s,r),o)),s.matches(c)&&(Object.entries(Pe(n,s,Ut.Commands.Context,!1)).forEach(function(e){var t=_sliced_to_array(e,2),n=t[0],r=t[1];r&&!a[n]&&(a[n]=[r,u])}),++u),s=Le(n,s);return[o,a]},Ne=function(e,t,n){e.querySelectorAll(t).forEach(n)},We=function(e,t,n){for(var r=t;r;){var o=Ce(r,Ae(e,Ut.Commands.Actions,!1));if(o){var a=Te(o);if(a[n])return{actions:a[n],nearestOnly:!1}}var i=Ce(r,Ae(e,Ut.Commands.Action,!1));if(i){var s=Te(i);if(s[n]||"click"!==n)return{actions:s[n]||[],nearestOnly:!0}}r=Le(e,r)}return{actions:[],nearestOnly:!1}},He=function(e){if(!e)return[];var t=new RegExp("(?:[^".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:";","']+|'[^']*')+"),"ig");return e.match(t)||[]},ze=function(e){var t=_sliced_to_array(e.split(/:(.+)/,2),2),n=t[0],r=t[1];return[C(n),C(r)]},Be=function(e){var t=_sliced_to_array(e.split("(",2),2),n=t[0],r=t[1];return[n,r?r.slice(0,-1):""]},Ge=function(e){var t=Date.now(),n=Zt.get(e);if(!n||t-n.lastChecked>500){var r=e.ownerDocument.defaultView,o=e.ownerDocument;n={isVisible:Ee(e,r,o),lastChecked:t},Zt.set(e,n)}return n.isVisible},Ue=function(e){var t=(e.ownerDocument||e).defaultView;if(t&&t.IntersectionObserver)return k(function(){return new t.IntersectionObserver(function(t){t.forEach(function(t){Ve(e,t)})},{rootMargin:"0px",threshold:[0,.5]})},function(){})()},Ve=function(e,t){var n,r=t.target,o=Qt.get(e);if(o){var a=o.timers.get(r);if(t.intersectionRatio>0){var i=Date.now(),s=Xt.get(r);if(!s||i-s.lastChecked>1e3){var c=r.ownerDocument.defaultView;s={isLarge:r.offsetHeight>c.innerHeight,lastChecked:i},Xt.set(r,s)}if(t.intersectionRatio>=.5||s.isLarge&&Ge(r)){var u,l=null===(u=o.elementConfigs)||void 0===u?void 0:u.get(r);if((null==l?void 0:l.multiple)&&l.blocked)return;if(!a){var f=r.ownerDocument.defaultView.setTimeout(function(){return _async_to_generator(function(){var t,n,a,i;return _ts_generator(this,function(s){switch(s.label){case 0:return Ge(r)?(null==(a=null===(t=o.elementConfigs)||void 0===t?void 0:t.get(r))?void 0:a.context)?[4,et(a.context,r,a.trigger)]:[3,2]:[3,3];case 1:s.sent(),s.label=2;case 2:(null==(i=null===(n=o.elementConfigs)||void 0===n?void 0:n.get(r))?void 0:i.multiple)?i.blocked=!0:function(e,t){var n=Qt.get(e);if(n){n.observer&&n.observer.unobserve(t);var r=n.timers.get(t);r&&(clearTimeout(r),n.timers.delete(t)),Xt.delete(t),Zt.delete(t)}}(e,r),s.label=3;case 3:return[2]}})})()},o.duration);o.timers.set(r,f)}return}}a&&(clearTimeout(a),o.timers.delete(r));var d=null===(n=o.elementConfigs)||void 0===n?void 0:n.get(r);(null==d?void 0:d.multiple)&&(d.blocked=!1)}},Fe=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{multiple:!1},r=e.settings.scope;if(r){var o,a=Qt.get(r);if((null==a?void 0:a.observer)&&t)a.elementConfigs||(a.elementConfigs=new WeakMap),a.elementConfigs.set(t,{multiple:null!==(o=n.multiple)&&void 0!==o&&o,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),a.observer.observe(t)}},Ke=function(e){if(e){var t=Qt.get(e);t&&(t.observer&&t.observer.disconnect(),Qt.delete(e))}},Ye=function(e,t,n,r,o,a,i){var s=e.elb,c=e.settings;if(d(t)&&t.startsWith("walker "))return s(t,n);if(f(t)){var l=t;if(!l.source&&c.scope){var p=c.scope.ownerDocument||c.scope,v=p.defaultView;l.source=$e(v,p)}return!l.globals&&c.scope&&(l.globals=Ie(c.prefix,c.scope)),s(l)}var _,g=_sliced_to_array(String(f(t)?t.name:t).split(" "),1)[0],h=f(n)?n:{},y={},b=!1;if(u(n)&&(_=n,b=!0),u(o)?_=o:f(o)&&Object.keys(o).length&&(y=o),_){var m=Me(c.prefix||"data-elb",_).find(function(e){return e.entity===g});m&&(b&&(h=m.data),m.context&&(y=m.context))}var w=c.scope?c.scope.ownerDocument||c.scope:void 0,k=null==w?void 0:w.defaultView;"page"===g&&k&&(h.id=h.id||k.location.pathname);var j=Ie(c.prefix,c.scope);return s({name:String(t||""),data:h,context:y,globals:j,nested:a,custom:i,trigger:d(r)?r:"",source:k&&w?$e(k,w):void 0})},$e=function(e,t){return{type:"browser",platform:"web",url:e.location.href,referrer:t.referrer}},Je=function(e,t,n){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){return r=function(){e(t,n)},(o=n.scope)?("loading"!==(a=o.ownerDocument||o).readyState?r():a.addEventListener("DOMContentLoaded",r),[2]):(r(),[2])})})()},Xe=function(e,t){t.scope&&Ze(e,t)},Ze=function(e,t){var n=t.scope;n&&(n.addEventListener("click",k(function(t){rt.call(this,e,t)})),n.addEventListener("submit",k(function(t){ct.call(this,e,t)})))},Qe=function(e,t){var n=t.scope;en=[];var r=n;if(r){Ke(r),function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;Qt.has(e)||Qt.set(e,{observer:Ue(e),timers:new WeakMap,duration:t})}(r,1e3);var o=Ae(t.prefix,Ut.Commands.Action,!1);r!==(r.ownerDocument||r)&&tt(e,r,o,t),$t(r,"[".concat(o,"]"),function(n){tt(e,n,o,t)}),en.length&<(e,r,t)}},et=function(e,t,n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){return r=De(t,n,e.settings.prefix),[2,Promise.all(r.map(function(t){return Ye(e,_object_spread_props(_object_spread({name:"".concat(t.entity," ").concat(t.action)},t),{trigger:n}))}))]})})()},tt=function(e,t,n,r){var o=Ce(t,n);o&&Object.values(Te(o)).forEach(function(n){return n.forEach(function(n){switch(n.trigger){case tn.Hover:ot(e,t);break;case tn.Load:at(e,t);break;case tn.Pulse:it(e,t,n.triggerParams);break;case tn.Scroll:st(t,n.triggerParams);break;case tn.Impression:Fe(e,t);break;case tn.Visible:Fe(e,t,{multiple:!0});break;case tn.Wait:ut(e,t,n.triggerParams)}})})},nt=function(e){var t,n=null===(t=e.composedPath)||void 0===t?void 0:t.call(e),r=(null==n?void 0:n.length)?n[0]:e.target;if(r&&"object"===(void 0===r?"undefined":_type_of(r))&&"tagName"in r)return r},rt=function(e,t){var n=nt(t);n&&et(e,n,tn.Click)},ot=function(e,t){t.addEventListener("mouseenter",k(function(t){var n=nt(t);n&&et(e,n,tn.Hover)}))},at=function(e,t){et(e,t,tn.Load)},it=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=t.ownerDocument;setInterval(function(){r.hidden||et(e,t,tn.Pulse)},parseInt(n||"")||15e3)},st=function(e){var t=parseInt((arguments.length>1&&void 0!==arguments[1]?arguments[1]:"")||"")||50;t<0||t>100||en.push([e,t])},ct=function(e,t){var n=nt(t);n&&et(e,n,tn.Submit)},ut=function(e,t){setTimeout(function(){return et(e,t,tn.Wait)},parseInt((arguments.length>2&&void 0!==arguments[2]?arguments[2]:"")||"")||15e3)},lt=function(e,t,n){var r=(t.ownerDocument||t).defaultView,o=function(e,t){return e.filter(function(e){var n=_sliced_to_array(e,2),o=n[0],a=n[1],i=r.scrollY+r.innerHeight,s=o.offsetTop;if(i<s)return!0;var c=o.clientHeight;return!(100*(1-(s+c-i)/(c||1))>=a)||(et(t,o,tn.Scroll),!1)})};Jt||(Jt=function(e){var t=h(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,1e3).wait,n=null;return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];if(null===n)return n=setTimeout(function(){n=null},t),e.apply(void 0,_to_consumable_array(o))}}(function(){en=o.call(t,en,e)}),t.addEventListener("scroll",Jt))},ft=function(e,t,n,r,o){var a=_to_consumable_array(n),i=new Set;a.forEach(function(n,a){var s=dt(n);if(s){var c=s[0];!f(c)&&d(c)&&c.startsWith("walker ")&&(i.add(a),pt(e,t,s,r,o))}});var s=_to_consumable_array(i).sort(function(e,t){return t-e}),c=!0,u=!1,l=void 0;try{for(var p,v=s[Symbol.iterator]();!(c=(p=v.next()).done);c=!0){var _=p.value;n.splice(_,1)}}catch(e){u=!0,l=e}finally{try{c||null==v.return||v.return()}finally{if(u)throw l}}null==o||o.debug("drainWalkerCommands done",{consumed:i.size,remaining:n.length})},dt=function(e){var t=vt(e)?_to_consumable_array(Array.from(e)):_t(e)?Array.from(e):[e];if(!Array.isArray(t)||0===t.length)return null;if(1===t.length&&!t[0])return null;var n=t[0];return f(n)&&0===Object.keys(n).length||!f(n)&&d(n)&&""===n.trim()?null:t},pt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data-elb",n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;k(function(){if(Array.isArray(n)){var a=_to_array(n),i=a[0],s=a.slice(1);if(!i||d(i)&&""===i.trim())return void(null==o||o.debug("pushCommand skipped (empty/invalid action)",{item:n}));if(d(i)&&i.startsWith("walker "))return null==o||o.debug("pushCommand walker command",{action:i,data:s[0]}),void e(i,s[0]);null==o||o.debug("pushCommand event (translated)",{action:i,rest:s}),Ye.apply(void 0,[{elb:e,settings:{prefix:t,scope:r,pageview:!1,elb:"",elbLayer:!1}},i].concat(_to_consumable_array(s)))}else if(n&&"object"===(void 0===n?"undefined":_type_of(n))){if(0===Object.keys(n).length)return void(null==o||o.debug("pushCommand skipped (empty object)"));null==o||o.debug("pushCommand object event",{item:n}),e(n)}},function(e){null==o||o.warn("pushCommand failed",{error:e,item:n})})()},vt=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"[object Arguments]"===Object.prototype.toString.call(e)},_t=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length},gt=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).prefix||"data-elb";return function(t){var n=void 0,r=t,o={},a={},i={},s={},u={},l={};function f(e){return Object.entries(e).map(function(e){var t=_sliced_to_array(e,2),n=t[0],r=t[1];return"".concat(n,":").concat(function(e){if(!c(e)||null===e)return"undefined";var t=String(e);return(t=(t=(t=t.replace(/\\/g,"\\\\")).replace(/;/g,"\\;")).replace(/:/g,"\\:")).replace(/'/g,"\\'")}(r))}).join(";")}var p={entity:function(e){return n=e,r=e,p},data:function(e,t){var n=null!=r?r:"";return o[n]||(o[n]={}),d(e)?o[n][e]=t:Object.assign(o[n],e),p},action:function(e,t){if(d(e))if(c(t))a[e]=t;else if(e.includes(":")){var n=_sliced_to_array(e.split(":",2),2),r=n[0],o=n[1];a[r]=o}else a[e]=e;else Object.assign(a,e);return p},actions:function(e,t){if(d(e))if(c(t))i[e]=t;else if(e.includes(":")){var n=_sliced_to_array(e.split(":",2),2),r=n[0],o=n[1];i[r]=o}else i[e]=e;else Object.assign(i,e);return p},context:function(e,t){return d(e)?s[e]=t:Object.assign(s,e),p},globals:function(e,t){return d(e)?u[e]=t:Object.assign(u,e),p},link:function(e,t){return d(e)?l[e]=t:Object.assign(l,e),p},get:function(){var t={};return n&&(t[e]=n),Object.entries(o).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];if(Object.keys(a).length>0){var i=o?"".concat(e,"-").concat(o):"".concat(e,"-");t[i]=f(a)}}),Object.keys(a).length>0&&(t["".concat(e,"action")]=f(a)),Object.keys(i).length>0&&(t["".concat(e,"actions")]=f(i)),Object.keys(s).length>0&&(t["".concat(e,"context")]=f(s)),Object.keys(u).length>0&&(t["".concat(e,"globals")]=f(u)),Object.keys(l).length>0&&(t["".concat(e,"link")]=f(l)),t}};return p}},ht=Object.defineProperty,yt=Object.getOwnPropertyDescriptor,bt=Object.getOwnPropertyNames,mt=Object.prototype.hasOwnProperty,wt=function(e,t){for(var n in t)ht(e,n,{get:t[n],enumerable:!0})},kt={};wt(kt,{SourceBrowser:function(){return nn},createTagger:function(){return gt},default:function(){return kn},examples:function(){return rn},getAllEvents:function(){return qe},getElbAttributeName:function(){return Ae},getElbValues:function(){return Pe},getEvents:function(){return De},getGlobals:function(){return Ie},sourceBrowser:function(){return wn}});var jt=Object.defineProperty,xt=function(e,t){for(var n in t)jt(e,n,{get:t[n],enumerable:!0})};xt({},{stepId:function(){return e}});xt({},{getDestination:function(){return t}});xt({},{Level:function(){return St}});var Ot,St=((Ot=St||{})[Ot.ERROR=0]="ERROR",Ot[Ot.WARN=1]="WARN",Ot[Ot.INFO=2]="INFO",Ot[Ot.DEBUG=3]="DEBUG",Ot);xt({},{getTransformer:function(){return n}});xt({},{getSource:function(){return r}});xt({},{getStore:function(){return o}});var Ct={merge:!0,shallow:!0,extend:!0};function Et(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]=Et(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(Et(e,t))}),a}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){var i=e;return new RegExp(i.source,i.flags)}return e}function At(e){for(var t=arguments.length>2?arguments[2]:void 0,n=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),r=e,o=0;o<n.length;o++){var a=n[o];if("*"===a&&s(r)){var i=n.slice(o+1).join("."),u=[],l=!0,d=!1,p=void 0;try{for(var v,_=r[Symbol.iterator]();!(l=(v=_.next()).done);l=!0){var g=At(v.value,i,t);u.push(g)}}catch(e){d=!0,p=e}finally{try{l||null==_.return||_.return()}finally{if(d)throw p}}return u}if(void 0===(r=f(r)||s(r)?r[a]:void 0))break}return c(r)?r:t}var Pt={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}}},qt=function(e,t,n,r){var o="".concat(St[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(n).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(o,t,n):i(o,t)};function Dt(e){var t=e.level,n=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=t){var i=b(r,a);n?n(e,i.message,i.context,o,qt):qt(e,i.message,i.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=b(e,t);throw n?n(0,r.message,r.context,o,qt):qt(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 Dt({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function It(e){return function(e){return"boolean"==typeof e}(e)||d(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!c(e)||s(e)&&e.every(It)||f(e)&&Object.values(e).every(It)}var Tt=function(){function e(t,n){var r;return _class_call_check(this,e),(r=_call_super(this,e,[t,n])).name="FatalError",Object.setPrototypeOf(r,e.prototype),r}return _inherits(e,_wrap_native_super(Error)),e}();function Mt(e,t,n){return _async_to_generator(function(){return _ts_generator(this,function(r){return[2,(s(t)?t:[t]).reduce(function(t,r){return _async_to_generator(function(){var o,a,i,u,l,f,p,v,g,h,y,b,m,k,x,S,C,E,A,P,q,D;return _ts_generator(this,function(I){switch(I.label){case 0:return[4,t];case 1:return(o=I.sent())?[2,o]:(a=d(r)?{key:r}:r,Object.keys(a).length?(i=a.condition,u=a.consent,l=a.fn,f=a.key,p=a.loop,v=a.map,g=a.set,h=a.validate,y=a.value,b=_object_spread_props(_object_spread({},n),{mapping:r}),(m=i)?[4,j(i,function(e){if(_instanceof(e,Tt))throw e;return b.logger.error("mapping condition failed",{event:b.event,error:e}),!1})(e,b)]:[3,3]):[2]);case 2:m=!I.sent(),I.label=3;case 3:return m?[2]:u&&!_(u,b.consent)?[2,y]:(k=c(y)?y:e,l?[4,j(l,function(e){if(_instanceof(e,Tt))throw e;b.logger.error("mapping fn failed",{event:b.event,error:e})})(e,b)]:[3,5]);case 4:k=I.sent(),I.label=5;case 5:return f&&(k=At(e,f,y)),p?(x=_sliced_to_array(p,2),S=x[0],C=x[1],"this"!==S?[3,6]:(A=[e],[3,8])):[3,11];case 6:return[4,O(e,S,b)];case 7:A=I.sent(),I.label=8;case 8:return s(E=A)?[4,Promise.all(E.map(function(e){return O(e,C,b)}))]:[3,10];case 9:k=I.sent().filter(c),I.label=10;case 10:return[3,17];case 11:return v?[4,Object.entries(v).reduce(function(t,n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];return _async_to_generator(function(){var n,r;return _ts_generator(this,function(i){switch(i.label){case 0:return[4,t];case 1:return n=i.sent(),[4,O(e,a,b)];case 2:return r=i.sent(),[2,(c(r)&&(n[o]=r),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return k=I.sent(),[3,16];case 13:return(P=g)?[4,Promise.all(g.map(function(t){return Mt(e,t,b)}))]:[3,15];case 14:P=k=I.sent(),I.label=15;case 15:I.label=16;case 16:I.label=17;case 17:return(q=h)?[4,j(h,function(e){if(_instanceof(e,Tt))throw e;return b.logger.error("mapping validate failed",{event:b.event,error:e}),!1})(k,b)]:[3,19];case 18:q=!I.sent(),I.label=19;case 19:return q&&(k=void 0),D=w(k),[2,c(D)?D:w(y)]}})})()},Promise.resolve(void 0))]})})()}function Lt(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var t=e.and.map(Lt);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(Lt);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=At(e,t),r=a(n);return o?!r:r}}(e)}function Rt(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(function(e){return"object"==(void 0===(t=e)?"undefined":_type_of(t))&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"one"in t||"many"in t);var t})}(e))return Rt({one:e});if(e.every(function(e){return"string"==typeof e}))return{type:"chain",value:e};var t=[],n=!0,r=!1,o=void 0;try{for(var a,i=e[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=Rt(a.value);void 0!==s&&t.push(s)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}if(0===t.length)return;return{type:"sequence",value:t}}var c=e;if("next"in c&&void 0!==c.next)return c.match?{type:"gate",match:Lt(c.match),next:Rt(c.next)}:Rt(c.next);if("one"in c&&c.one){var u=A(c.one);return c.match?{type:"gate",match:Lt(c.match),next:{type:"one",routes:u}}:{type:"one",routes:u}}if("many"in c&&c.many){var l=A(c.many);return c.match?{type:"gate",match:Lt(c.match),next:{type:"many",routes:l}}:{type:"many",routes:l}}return c.match?{type:"gate",match:Lt(c.match)}:void 0}}var Nt=new WeakMap;function Wt(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;if("gate"===e.type){if(!e.match(t))return;return Wt(e.next,t)}if("sequence"===e.type){var n=[],r=!0,o=!1,a=void 0;try{for(var i,s=e.value[Symbol.iterator]();!(r=(i=s.next()).done);r=!0){var c,u=Wt(i.value,t);void 0!==u&&(Array.isArray(u)?(c=n).push.apply(c,_to_consumable_array(u)):n.push(u))}}catch(e){o=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return n.length>0?n:void 0}if("many"===e.type){var l=[],f=!0,d=!1,p=void 0;try{for(var v,_=e.routes[Symbol.iterator]();!(f=(v=_.next()).done);f=!0){var g,h=v.value;if(h.match(t)){var y=Wt(h.next,t);void 0!==y&&(Array.isArray(y)?(g=l).push.apply(g,_to_consumable_array(y)):l.push(y))}}}catch(e){d=!0,p=e}finally{try{f||null==_.return||_.return()}finally{if(d)throw p}}return l.length>0?l:void 0}var b=!0,m=!1,w=void 0;try{for(var k,j=e.routes[Symbol.iterator]();!(b=(k=j.next()).done);b=!0){var x=k.value;if(x.match(t))return Wt(x.next,t)}}catch(e){m=!0,w=e}finally{try{b||null==j.return||j.return()}finally{if(m)throw w}}}}var Ht={Source:["code","package","import","before","next","cache"],Transformer:["code","package","import","before","next","cache","mapping"],Destination:["code","package","import","before","next","cache"],Store:["code","package","import","cache"]},zt=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],Bt={Source:["primary"],Transformer:[],Destination:[],Store:[]},Gt=/^[A-Za-z_$][A-Za-z0-9_$]*$/,Ut={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 Vt(e,t,n,r,o,i,s){return _async_to_generator(function(){var c,u,l,f,d,p,v,_,g,h,y;return _ts_generator(this,function(b){switch(b.label){case 0:o||(o=a(null!==(c=n[0])&&void 0!==c?c:"chain")),s&&o._meta&&(o._meta.chainPath=s),u=r,l=i,f=!0,d=!1,p=void 0,b.label=1;case 1:b.trys.push([1,6,7,8]),v=function(){var r,a,i,c,f,d,p,v,_,h,y,b,m,w,k,x,O,S,C,E,A,M,N,G,U,V,F,K,Y,$,J,X,Z,Q,ee,te,ne,re,oe,ae,ie,se,ce,ue,le,fe;return _ts_generator(this,function(de){switch(de.label){case 0:return r=g.value,(p=t[r])?o&&o._meta&&o._meta.path.length>256?[2,{v:(e.logger.error("Max path length exceeded at ".concat(r)),{event:null,respond:l})}]:(o&&o._meta&&(o._meta.hops++,o._meta.path.push(r)),[4,j(H,function(t){if(_instanceof(t,Tt))throw t;return e.status.failed++,e.logger.scope("transformer:".concat(p.type||"unknown")).error("transformer init failed",{transformer:r,error:t}),!1})(e,p,r)]):(e.logger.warn("Transformer not found: ".concat(r)),[2,"continue"]);case 1:return de.sent()?s&&void 0!==(null===(i=p.config)||void 0===i||null===(a=i.chainMocks)||void 0===a?void 0:a[s])?(v=p.config.chainMocks[s],e.logger.scope("transformer:".concat(p.type||"unknown")).debug("chainMock",{chain:s}),u=v,[2,"continue"]):void 0!==(null===(c=p.config)||void 0===c?void 0:c.mock)?(e.logger.scope("transformer:".concat(p.type||"unknown")).debug("mock"),u=p.config.mock,[2,"continue"]):(null===(f=p.config)||void 0===f?void 0:f.disabled)?[2,"continue"]:(_=null===(d=p.config)||void 0===d?void 0:d.cache,h=_?D(_):void 0,y=h?L(h,e):void 0,b=void 0,h&&y?(m=q(o,u),[4,I(h,y,m)]):[3,3]):[2,{v:{event:null,respond:l}}];case 2:if("HIT"===(null==(w=de.sent())?void 0:w.status)&&w.value)return u=w.value,h.stop?[2,{v:{event:u,respond:l,stopped:!0}}]:[2,"continue"];"MISS"===(null==w?void 0:w.status)&&(b={key:w.key,ttl:w.rule.ttl}),de.label=3;case 3:return(k=p.config.before)?1!==(x=P(k,q(o,u))).length?[3,6]:(O=W(x[0],R(t))).length>0?[4,Vt(e,t,O,u,o,l,s)]:[3,5]:[3,9];case 4:if(null===(E=de.sent()).event)return[2,{v:{event:null,respond:null!==(S=E.respond)&&void 0!==S?S:l}}];if(E.stopped)return[2,{v:{event:Array.isArray(E.event)?E.event[0]:E.event,respond:null!==(C=E.respond)&&void 0!==C?C:l,stopped:!0}}];E.respond&&(l=E.respond),u=Array.isArray(E.event)?E.event[0]:E.event,de.label=5;case 5:return[3,9];case 6:return x.length>1?[4,Promise.all(x.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),u,B(o,n),void 0,s)}))]:[3,8];case 7:de.sent(),de.label=8;case 8:de.label=9;case 9:return[4,j(z,function(t){return e.logger.scope("transformer:".concat(p.type||"unknown")).error("Push failed",{error:t}),!1})(e,p,r,u,o,l)];case 10:return!1===(A=de.sent())?[2,{v:{event:null,respond:l}}]:Array.isArray(A)?(M=n.slice(n.indexOf(r)+1),[4,Promise.all(A.map(function(n){return _async_to_generator(function(){var r,a,i,c;return _ts_generator(this,function(f){switch(f.label){case 0:return r=n.event||u,a=B(o,"unknown"),n.next?0===(i=P(n.next,q(a,r))).length?[2,{event:r,respond:l}]:1===i.length?[2,(c=W(i[0],R(t))).length>0?Vt(e,t,c,r,a,l,s):{event:r,respond:l}]:[4,Promise.all(i.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),r,B(a,n),void 0,s)}))]:[3,2];case 1:return[2,f.sent().map(function(e){return{event:e.event,respond:void 0}})];case 2:return[2,M.length>0?Vt(e,t,M,r,a,l,s):{event:r,respond:l}]}})})()}))]):[3,12];case 11:N=de.sent(),G=l,U=[],V=!0,F=!1,K=void 0;try{for(Y=N.flat()[Symbol.iterator]();!(V=($=Y.next()).done);V=!0)if(null!==(J=$.value))if(J&&"object"==(void 0===J?"undefined":_type_of(J))&&"event"in J){if((Z=J).respond&&(G=Z.respond),null===Z.event)continue;Array.isArray(Z.event)?(X=U).push.apply(X,_to_consumable_array(Z.event)):U.push(Z.event)}else U.push(J)}catch(e){F=!0,K=e}finally{try{V||null==Y.return||Y.return()}finally{if(F)throw K}}return[2,{v:0===U.length?{event:null,respond:G}:1===U.length?{event:U[0],respond:G}:{event:U,respond:G}}];case 12:return A&&"object"==(void 0===A?"undefined":_type_of(A))?(Q=A.event,ee=A.respond,te=A.next,ee&&(l=ee),void 0===te?[3,14]:0===(ne=P(te,q(o,u))).length?(Q&&(u=Q),[2,"continue"]):1===ne.length?[2,{v:(re=W(ne[0],R(t))).length>0?Vt(e,t,re,Q||u,o,l,s):(e.logger.warn("Branch target not found: ".concat(JSON.stringify(te))),{event:null,respond:l})}]:(oe={},[4,Promise.all(ne.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),Q||u,B(o,n),void 0,s)}))])):[3,15];case 13:return[2,(oe.v=(de.sent(),{event:null,respond:void 0}),oe)];case 14:Q&&(u=Q),de.label=15;case 15:return b&&y&&T(y,b.key,u,b.ttl),ae=p.config.next,ie="string"==typeof ae||Array.isArray(ae)&&ae.every(function(e){return"string"==typeof e}),se=void 0!==ae&&!ie,A&&("object"!=(void 0===A?"undefined":_type_of(A))||A.next)||!se?[3,19]:1===(ce=P(p.config.next,q(o,u))).length?[2,{v:(ue=W(ce[0],R(t))).length>0?Vt(e,t,ue,u,o,l,s):{event:u,respond:l}}]:(le={},ce.length>1?[4,Promise.all(ce.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),u,B(o,n),void 0,s)}))]:[3,17]);case 16:return de.sent(),fe={event:null,respond:void 0},[3,18];case 17:fe={event:u,respond:l},de.label=18;case 18:return[2,(le.v=fe,le)];case 19:return[2]}})},_=n[Symbol.iterator](),b.label=2;case 2:return(f=(g=_.next()).done)?[3,5]:[5,_ts_values(v())];case 3:if("object"===_type_of(h=b.sent()))return[2,h.v];b.label=4;case 4:return f=!0,[3,2];case 5:return[3,8];case 6:return y=b.sent(),d=!0,p=y,[3,8];case 7:try{f||null==_.return||_.return()}finally{if(d)throw p}return[7];case 8:return[2,{event:u,respond:l}]}})})()}var Ft=new WeakMap,Kt=Object.freeze({batched:!0});function Yt(e,t,n,r){var o=Ce(t,Ae(e));if(!o||r&&!r[o])return null;var a=[t],s="[".concat(Ae(e,o),"],[").concat(Ae(e,""),"]"),c=Ae(e,Ut.Commands.Link,!1),u={},l=[],f=_sliced_to_array(Re(n||t,s,e,o),2),d=f[0],p=f[1];$t(t,"[".concat(c,"]"),function(n){var r=_sliced_to_array(ze(Ce(n,c)),2),o=r[0];"parent"===r[1]&&$t(t.ownerDocument.body,"[".concat(c,'="').concat(o,':child"]'),function(t){a.push(t);var n=Yt(e,t);n&&l.push(n)})});var v=[];a.forEach(function(e){e.matches(s)&&v.push(e),$t(e,s,function(e){return v.push(e)})});var _={};return v.forEach(function(t){_=i(_,Pe(e,t,"")),u=i(u,Pe(e,t,o))}),u=i(i(_,u),d),a.forEach(function(t){$t(t,"[".concat(Ae(e),"]"),function(t){var n=Yt(e,t);n&&l.push(n)})}),{entity:o,data:u,context:p,nested:l}}function $t(e,t,n){e.querySelectorAll(t).forEach(n),_instanceof(e,(e.ownerDocument||e).defaultView.Element)&&e.shadowRoot&&$t(e.shadowRoot,t,n),e.querySelectorAll("*").forEach(function(e){e.shadowRoot&&$t(e.shadowRoot,t,n)})}var Jt,Xt=new WeakMap,Zt=new WeakMap,Qt=new WeakMap,en=[],tn={Click:"click",Custom:"custom",Hover:"hover",Load:"load",Pulse:"pulse",Scroll:"scroll",Submit:"submit",Impression:"impression",Visible:"visible",Wait:"wait"},nn={},rn={};wt(rn,{createTrigger:function(){return bn},env:function(){return on},step:function(){return ln},trigger:function(){return mn}});var on={};wt(on,{push:function(){return un}});var an=function(){},sn=function(){return function(){return Promise.resolve({ok:!0})}},cn={error:an,warn:an,info:an,debug:an,throw:function(e){throw"string"==typeof e?new Error(e):e},json:an,scope:function(){return cn}},un={get push(){return sn()},get command(){return sn()},get elb(){return sn()},get window(){return{addEventListener:an,removeEventListener:an,location:{href:"https://example.com/page",pathname:"/page",search:"?query=test",hash:"#section",host:"example.com",hostname:"example.com",origin:"https://example.com",protocol:"https:"},document:{},navigator:{language:"en-US",userAgent:"Mozilla/5.0 (Test)"},screen:{width:1920,height:1080},innerWidth:1920,innerHeight:1080,pageXOffset:0,pageYOffset:0,scrollX:0,scrollY:0}},get document(){return{addEventListener:an,removeEventListener:an,querySelector:an,querySelectorAll:function(){return[]},getElementById:an,getElementsByClassName:function(){return[]},getElementsByTagName:function(){return[]},createElement:function(){return{setAttribute:an,getAttribute:an,addEventListener:an,removeEventListener:an}},body:{appendChild:an,removeChild:an},documentElement:{scrollTop:0,scrollLeft:0},readyState:"complete",title:"Test Page",referrer:"",cookie:""}},logger:cn},ln={};wt(ln,{clickEvent:function(){return pn},contextAndGlobals:function(){return yn},dataAttributeTypes:function(){return hn},impressionEvent:function(){return _n},nestedEntities:function(){return gn},pageView:function(){return dn},submitEvent:function(){return vn}});var fn,dn={title:"Page view",description:"A page load trigger captures the current URL, title, and referrer as a walker page view event.",trigger:{type:"load",options:{url:"https://example.com/docs",title:"Documentation",referrer:"https://example.com/"}},in:"",out:[["elb",{name:"page view",data:{domain:"example.com",title:"Documentation",referrer:"https://example.com/",id:"/docs"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/docs",referrer:"https://example.com/"}}]]},pn={title:"Click event",description:"A button click with walker data attributes is captured as an entity action event with the mapped label data.",trigger:{type:"click",options:"button"},in:'<button data-elb="cta" data-elb-cta="label:Sign Up" data-elbaction="click:click">Sign Up</button>',out:[["elb",{name:"cta click",entity:"cta",action:"click",data:{label:"Sign Up"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},vn={title:"Submit event",description:"A form submit with walker data attributes produces a signup complete event carrying the selected plan.",trigger:{type:"submit",options:"form"},in:'<form data-elb="signup" data-elb-signup="plan:premium" data-elbaction="submit:complete"></form>',out:[["elb",{name:"signup complete",entity:"signup",action:"complete",data:{plan:"premium"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"submit"}]]},_n={title:"Impression event",description:"An intersection observer impression on a div with walker attributes emits a banner view event.",trigger:{type:"impression",options:"div"},in:'<div data-elb="banner" data-elb-banner="type:promotional;position:sidebar" data-elbaction="impression:view"></div>',out:[["elb",{name:"banner view",entity:"banner",action:"view",data:{type:"promotional",position:"sidebar"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"impression"}]]},gn={title:"Nested entities",description:"A page load produces a page view plus a product view whose nested size entity is captured on the product event.",trigger:{type:"load"},in:'<div data-elb="product" data-elb-product="id:SKU-42;name:Sneakers" data-elbaction="load:view"><div data-elb="size" data-elb-size="selected:large;inStock:true"></div></div>',out:[["elb",{name:"page view",data:{domain:"example.com",title:"",referrer:"",id:"/"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""}}],["elb",{name:"product view",entity:"product",action:"view",data:{id:"SKU-42",name:"Sneakers"},context:{},globals:{},nested:[{entity:"size",data:{selected:"large",inStock:!0},context:{},nested:[]}],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"load"}]]},hn={title:"Data attribute types",description:"Walker data attributes parse scalar, boolean, and array values into typed fields on the emitted event.",trigger:{type:"click",options:"div"},in:'<div data-elb="product" data-elb-product="price:99.99;available:true;colors[]:red;colors[]:blue" data-elbaction="click:select"></div>',out:[["elb",{name:"product select",entity:"product",action:"select",data:{price:99.99,available:!0,colors:["red","blue"]},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},yn={title:"Context and globals",description:"Walker context and globals attributes attach ambient metadata to events emitted by the browser source.",trigger:{type:"click",options:'[data-elb="cta"]'},in:'<div data-elbcontext="test:engagement_flow" data-elbglobals="language:en;plan:premium"><div data-elb="cta" data-elb-cta="label:Try Now" data-elbaction="click:signup">Try Now</div></div>',out:[["elb",{name:"cta signup",entity:"cta",action:"signup",data:{label:"Try Now"},context:{test:["engagement_flow",0]},globals:{language:"en",plan:"premium"},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},bn=function(e,t){return _async_to_generator(function(){var n,r,o,a,i;return _ts_generator(this,function(s){return n=(null==t?void 0:t.sourceId)||"browser",o=document,a=window,i=function(t,i){return function(s){return _async_to_generator(function(){var c,u,l,f,d,p,v,_;return _ts_generator(this,function(g){switch(g.label){case 0:return"load"!==t&&t||((c="object"===(void 0===i?"undefined":_type_of(i))&&null!==i?i:{}).url&&(u=new URL(c.url),a.history.replaceState({},"",u.pathname)),c.title&&(o.title=c.title),c.referrer&&Object.defineProperty(o,"referrer",{value:c.referrer,configurable:!0})),s&&(o.body.innerHTML=s),r?[3,2]:[4,Se(_object_spread_props(_object_spread({},e),{run:null===(l=e.run)||void 0===l||l}))];case 1:f=g.sent(),r={collector:f.collector,elb:f.elb},g.label=2;case 2:return t&&"load"!==t?(p=(d="string"==typeof i?i:void 0)?o.querySelector(d):null)?(v=r.collector.sources[n])?(_={elb:r.elb,settings:v.config.settings},[4,et(_,p,t)]):(console.warn('Trigger: source "'.concat(n,'" not found in collector')),[2]):(console.warn('Trigger: element not found for selector "'.concat(d,'"')),[2]):[2];case 3:return g.sent(),[2]}})})()}},[2,{get flow(){return r},trigger:i}]})})()},mn=function(e,t){if(e&&"object"===(void 0===e?"undefined":_type_of(e))){var n=e,r=t.document,o=t.window,a=function(){var e,t;if(n.attributes){var o=(null===(t=n.element)||void 0===t||null===(e=t.match(/^(\w+)/))||void 0===e?void 0:e[1])||"div",a=r.createElement(o),i=!0,s=!1,c=void 0;try{for(var u,l=Object.entries(n.attributes)[Symbol.iterator]();!(i=(u=l.next()).done);i=!0){var f=_sliced_to_array(u.value,2),d=f[0],p=f[1];a.setAttribute(d,p)}}catch(e){s=!0,c=e}finally{try{i||null==l.return||l.return()}finally{if(s)throw c}}if(n.children){var v=!0,_=!1,g=void 0;try{for(var h,y=n.children[Symbol.iterator]();!(v=(h=y.next()).done);v=!0){var b=h.value,m=r.createElement("div"),w=!0,k=!1,j=void 0;try{for(var x,O=Object.entries(b)[Symbol.iterator]();!(w=(x=O.next()).done);w=!0){var S=_sliced_to_array(x.value,2),C=S[0],E=S[1];m.setAttribute(C,E)}}catch(e){k=!0,j=e}finally{try{w||null==O.return||O.return()}finally{if(k)throw j}}a.appendChild(m)}}catch(e){_=!0,g=e}finally{try{v||null==y.return||y.return()}finally{if(_)throw g}}}return r.body.appendChild(a),a}};if(!n.trigger||"load"===n.trigger){if(n.url){var i=new URL(n.url);o.history.replaceState({},"",i.pathname)}return n.title&&(r.title=n.title),n.referrer&&Object.defineProperty(r,"referrer",{value:n.referrer}),void a()}return function(){var e=a();if(e)switch(n.trigger){case"click":e.dispatchEvent(new MouseEvent("click",{bubbles:!0}));break;case"submit":e.dispatchEvent(new Event("submit",{bubbles:!0}));break;case"hover":e.dispatchEvent(new MouseEvent("mouseenter",{bubbles:!0}));break;case"scroll":o.dispatchEvent(new Event("scroll"))}}}},wn=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u,l,f,p,v,_,g;return _ts_generator(this,function(h){return t=e.config,n=e.env,r=e.logger,o=n.elb,n.command,a=n.window,i=n.document,s=(null==t?void 0:t.settings)||{},c=a||(void 0!==globalThis.window?globalThis.window:void 0),u=i||(void 0!==globalThis.document?globalThis.document:void 0),l=function(){return _object_spread({prefix:"data-elb",pageview:!0,elb:"elb",elbLayer:"elbLayer",scope:(arguments.length>1?arguments[1]:void 0)||void 0},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}(s,u),f={elb:o,settings:l},p=function(e){if(e.pageview){var t=_sliced_to_array(function(e,t){var n=t.ownerDocument||t,r=n.defaultView.location,o="page",a="body"in t?t.body:t,i=_sliced_to_array(Re(a,"[".concat(Ae(e,o),"]"),e,o),2),s=i[0],c=i[1];return s.domain=r.hostname,s.title=n.title,s.referrer=n.referrer,r.search&&(s.search=r.search),r.hash&&(s.hash=r.hash),[s,c]}(e.prefix||"data-elb",e.scope),2),n=t[0],r=t[1];Ye(f,"page view",n,"load",r)}},v=function(){return _async_to_generator(function(){return _ts_generator(this,function(e){switch(e.label){case 0:return c&&u?(!1!==l.elbLayer&&o&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.name||"elbLayer",r=t.window,o=t.logger;if(r){var a=r;a[n]||(a[n]=[]);var i,s=a[n],c=r.document;null==o||o.debug("initElbLayer enter",{layerName:n,queuedItems:s.length}),s.push=function(){for(var n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];if(vt(r[0])){var i=_to_consumable_array(Array.from(r[0])),s=Array.prototype.push.apply(this,[i]);return pt(e,t.prefix,i,c,o),s}var u=Array.prototype.push.apply(this,r);return r.forEach(function(n){pt(e,t.prefix,n,c,o)}),u},Array.isArray(s)&&s.length>0&&(null==o||o.debug("initElbLayer drain walker commands",{count:s.length}),ft(e,null!==(i=t.prefix)&&void 0!==i?i:"data-elb",s,c,o))}}(o,{name:d(l.elbLayer)?l.elbLayer:"elbLayer",prefix:l.prefix,window:c,logger:r}),[4,Je(Xe,f,l)]):[2];case 1:return e.sent(),d(l.elb)&&l.elb&&(c[l.elb]=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=_sliced_to_array(t,6),o=r[0],a=r[1],i=r[2],s=r[3],c=r[4],u=r[5];return Ye(f,o,a,i,s,c,u)}),[2]}})})()},_=function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){if("run"===e)u&&c&&(!function(e,t){t.scope&&Qe(e,t)}(f,l),function(e,t,n,r){var o=d(t.elbLayer)?t.elbLayer:"elbLayer",a=t.prefix||"data-elb",i=n[o];if(Array.isArray(i)){var s=n.document,c=-1;i.forEach(function(e,t){var n=dt(e);n&&d(n[0])&&"walker run"===n[0]&&(c=t)});for(var u=[],l=c+1;l<i.length;l++){var f=dt(i[l]);f&&u.push(f)}i.length=c+1,null==r||r.debug("drainNonWalkerEvents",{anchor:c,drained:u.length}),u.forEach(function(t){return pt(e,a,t,s,r)})}}(o,l,c,r),p(l));return[2]})})()},g=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=_sliced_to_array(t,6),o=r[0],a=r[1],i=r[2],s=r[3],c=r[4],u=r[5];return Ye(f,o,a,i,s,c,u)},[2,{type:"browser",config:{settings:l},push:g,on:_,init:v,destroy:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return u&&Ke(l.scope||u),[2]})})()}}]})})()},kn=wn;return fn=kt,function(e,t,n,r){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,a=!1,i=void 0;try{for(var s,c=function(){var o=s.value;mt.call(e,o)||o===n||ht(e,o,{get:function(){return t[o]},enumerable:!(r=yt(t,o))||r.enumerable})},u=bt(t)[Symbol.iterator]();!(o=(s=u.next()).done);o=!0)c()}catch(e){a=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(a)throw i}}}return e}(ht({},"__esModule",{value:!0}),fn)}();
|
|
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 _assert_this_initialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function asyncGeneratorStep(e,t,n,r,o,a,i){try{var s=e[a](i),c=s.value}catch(e){return void n(e)}s.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 i(e){asyncGeneratorStep(a,r,o,i,s,"next",e)}function s(e){asyncGeneratorStep(a,r,o,i,s,"throw",e)}i(void 0)})}}function _call_super(e,t,n){return t=_get_prototype_of(t),_possible_constructor_return(e,_is_native_reflect_construct()?Reflect.construct(t,n||[],_get_prototype_of(e).constructor):t.apply(e,n))}function _class_call_check(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _construct(e,t,n){return _construct=_is_native_reflect_construct()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&_set_prototype_of(o,n.prototype),o},_construct.apply(null,arguments)}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 _get_prototype_of(e){return _get_prototype_of=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},_get_prototype_of(e)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_set_prototype_of(e,t)}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _is_native_function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}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=[],i=!0,s=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){s=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(s)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 _possible_constructor_return(e,t){return!t||"object"!==_type_of(t)&&"function"!=typeof t?_assert_this_initialized(e):t}function _set_prototype_of(e,t){return _set_prototype_of=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},_set_prototype_of(e,t)}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_array(e){return _array_with_holes(e)||_iterable_to_array(e)||_unsupported_iterable_to_array(e)||_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 _wrap_native_super(e){var t="function"==typeof Map?new Map:void 0;return _wrap_native_super=function(e){if(null===e||!_is_native_function(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return _construct(e,arguments,_get_prototype_of(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),_set_prototype_of(n,e)},_wrap_native_super(e)}function _is_native_reflect_construct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_is_native_reflect_construct=function(){return!!e})()}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:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),s=Object.defineProperty;return s(i,"next",{value:c(0)}),s(i,"throw",{value:c(1)}),s(i,"return",{value:c(2)}),"function"==typeof Symbol&&s(i,Symbol.iterator,{value:function(){return this}}),i;function c(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,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 Source=function(){var e=function(e,t){if("collector"===e)return"collector";if(!t)throw new Error("stepId(".concat(e,") requires an id"));return"".concat(e,".").concat(t)},t=function(e,t){var n=e.destinations[t];if(!n)throw new Error("Destination not found: ".concat(t));return n},n=function(e,t){var n=e.transformers[t];if(!n)throw new Error("Transformer not found: ".concat(t));return n},r=function(e,t){var n=e.sources[t];if(!n)throw new Error("Source not found: ".concat(t));return n},o=function(e,t){var n=e.stores[t];if(!n)throw new Error("Store not found: ".concat(t));return n},a=function(e){return{_meta:{hops:0,path:[e]}}},i=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({},Ct,n);var r=Object.entries(t).reduce(function(t,r){var o=_sliced_to_array(r,2),a=o[0],i=o[1],s=e[a];return n.merge&&Array.isArray(s)&&Array.isArray(i)?t[a]=i.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(s)):(n.extend||a in e)&&(t[a]=i),t},{});return n.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},s=function(e){return Array.isArray(e)},c=function(e){return void 0!==e},u=function(e){return!(!e||"object"!=(void 0===e?"undefined":_type_of(e)))&&("body"in e||"tagName"in e)},l=function(e){return"function"==typeof e},f=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!s(e)&&"[object Object]"===Object.prototype.toString.call(e)},d=function(e){return"string"==typeof e},p=function(e,t,n){if(!f(e))return e;for(var r=Et(e),o=t.split("."),a=r,i=0;i<o.length;i++){var s=o[i];i===o.length-1?a[s]=n:(s in a&&"object"==_type_of(a[s])&&null!==a[s]||(a[s]={}),a=a[s])}return r},v=function(e){if("true"===e)return!0;if("false"===e)return!1;var t=Number(e);return e==t&&""!==e?t:String(e)},_=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},g=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},h=function(e,t){var n;return"number"==typeof e?{wait:e}:e?{wait:null!==(n=e.wait)&&void 0!==n?n:t,size:e.size,age:e.age}:{wait:t}},y=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},b=function(e,t){var n,r={};return _instanceof(e,Error)?(n=e.message,r.error=y(e)):n=e,void 0!==t&&(_instanceof(t,Error)?r.error=y(t):"object"==(void 0===t?"undefined":_type_of(t))&&null!==t?"error"in(r=_object_spread({},r,t))&&_instanceof(r.error,Error)&&(r.error=y(r.error)):r.value=t),{message:n,context:r}},m=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Dt({level:void 0!==t.level?(e=t.level,"string"==typeof e?St[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},w=function(e){return It(e)?e:void 0},k=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()}}},j=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]}})})()}},x=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,c,u,l,d,p,v;return _ts_generator(this,function(_){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],i=o[1],t&&a&&i?(u="",d=i,p=function(t){if(t)return(s(t)?t:[t]).find(function(t){if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));var r={event:e,mapping:t,collector:n,logger:n.logger,consent:f(e)&&e.consent||n.consent};return Boolean(t.condition(e,r))})},t[l=a]||(l="*"),[2,((v=t[l])&&(v[d]||(d="*"),c=p(v[d])),c||(l="*",d="*",c=p(null===(r=t[l])||void 0===r?void 0:r[d])),c&&(u="".concat(l," ").concat(d)),{eventMapping:c,mappingKey:u})]):[2,{}]})})()},O=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,u,l,d,p,v,_,g,h,y,b,m=arguments;return _ts_generator(this,function(w){switch(w.label){case 0:if(t=m.length>1&&void 0!==m[1]?m[1]:{},n=m.length>2&&void 0!==m[2]?m[2]:{},!c(e))return[2];if(a=f(e)&&e.consent||n.consent||(null===(o=n.collector)||void 0===o?void 0:o.consent),i=null!==(r=n.event)&&void 0!==r?r:f(e)?e:{},!n.collector)throw new Error("getMappingValue: context.collector is required");u={event:i,mapping:t,collector:n.collector,logger:n.collector.logger,consent:a},l=s(t)?t:[t],d=!0,p=!1,v=void 0,w.label=1;case 1:w.trys.push([1,6,7,8]),_=l[Symbol.iterator](),w.label=2;case 2:return(d=(g=_.next()).done)?[3,5]:(h=g.value,[4,j(Mt,function(e){if(_instanceof(e,Tt))throw e;n.collector&&n.collector.status.failed++,u.logger.error("mapping processing failed",{event:i,error:e})})(e,h,_object_spread_props(_object_spread({},u),{mapping:h}))]);case 3:if(y=w.sent(),c(y))return[2,y];w.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return b=w.sent(),p=!0,v=b,[3,8];case 7:try{d||null==_.return||_.return()}finally{if(p)throw v}return[7];case 8:return[2]}})}).apply(this,arguments)},S=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,l,d,v,_,g;return _ts_generator(this,function(h){switch(h.label){case 0:return t.policy?[4,Promise.all(Object.entries(t.policy).map(function(t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,O(e,a,{collector:n,event:e})];case 1:return t=r.sent(),e=p(e,o,t),[2]}})})()}))]:[3,2];case 1:h.sent(),h.label=2;case 2:return[4,x(e,t.mapping,n)];case 3:return o=h.sent(),a=o.eventMapping,s=o.mappingKey,(null==a?void 0:a.policy)?[4,Promise.all(Object.entries(a.policy).map(function(t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,O(e,a,{collector:n,event:e})];case 1:return t=r.sent(),e=p(e,o,t),[2]}})})()}))]:[3,5];case 4:h.sent(),h.label=5;case 5:return(u=t.data)?[4,O(e,t.data,{collector:n,event:e})]:[3,7];case 6:u=h.sent(),h.label=7;case 7:return c=u,l=Boolean(null==a?void 0:a.silent),a?a.ignore?[2,{event:e,data:c,mapping:a,mappingKey:s,ignore:!0,silent:l}]:(a.name&&(e.name=a.name),a.data?(v=a.data)?[4,O(e,a.data,{collector:n,event:e})]:[3,9]:[3,10]):[3,10];case 8:v=h.sent(),h.label=9;case 9:d=v,c=f(c)&&f(d)?i(c,d):d,h.label=10;case 10:return(_=null!==(r=null==a?void 0:a.include)&&void 0!==r?r:t.include)&&_.length>0&&(g=function(e,t){var n={},r=t.includes("all")?Object.keys(Pt):t,o=!0,a=!1,i=void 0;try{for(var s,c=r[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=s.value,l=Pt[u];if(l){var d=l(e),p=!0,v=!1,_=void 0;if(f(d))try{for(var g,h=Object.entries(d)[Symbol.iterator]();!(p=(g=h.next()).done);p=!0){var y=_sliced_to_array(g.value,2),b=y[0],m=y[1];if(void 0!==m){var w="context"===u&&Array.isArray(m)?m[0]:m;n["".concat(u,"_").concat(b)]=w}}}catch(e){v=!0,_=e}finally{try{p||null==h.return||h.return()}finally{if(v)throw _}}}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return n}(e,_),Object.keys(g).length>0&&(c=f(c)?i(g,c):null!=c?c:g)),[2,{event:e,data:c,mapping:a,mappingKey:s,ignore:!1,silent:l}]}})})()},C=function(e){return e?e.trim().replace(/^'|'$/g,"").trim():""},E=function(e,t,n,r){return function(){for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];var s,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{s=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),s=e.apply(void 0,_to_consumable_array(a))}else s=e.apply(void 0,_to_consumable_array(a));if(f)try{s=f.apply(void 0,[{fn:e,result:s}].concat(_to_consumable_array(a)))}catch(e){d("Hook ".concat(String(u)," failed, keeping original result"),e)}return s}},A=function(e){return e.map(function(e){var t,n;if("string"==typeof e)return{match:function(){return!0},next:{type:"static",value:e}};if(Array.isArray(e))return{match:function(){return!0},next:null!==(t=Rt(e))&&void 0!==t?t:{type:"chain",value:[]}};var r=e;return{match:r.match?Lt(r.match):function(){return!0},next:null!==(n=Rt(r))&&void 0!==n?n:{type:"chain",value:[]}}})},P=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null==e)return[];if("object"==(void 0===e?"undefined":_type_of(e))){var r=Nt.get(e);r?t=r:(t=Rt(e))&&Nt.set(e,t)}else t=Rt(e);if(!t)return[];var o=Wt(t,n);return void 0===o?[]:Array.isArray(o)?o:[o]},q=function(e,t){var n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n},D=function(e){var t;return{stop:null!==(t=e.stop)&&void 0!==t&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(function(e){return{match:e.match?Lt(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},I=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return(o=e.rules.find(function(e){return e.match(n)}))?(a=o.key.map(function(e){var t;return String(null!==(t=At(n,e))&&void 0!==t?t:"")})).every(function(e){return""===e})?[2,null]:(i=a.join(":"),s=null!=r?r:e.namespace,c=s?"".concat(s,":").concat(i):i,[4,t.get(c)]):[2,null];case 1:return[2,void 0!==(u=l.sent())?{status:"HIT",key:c,value:u,rule:o}:{status:"MISS",key:c,rule:o}]}})})()},T=function(e,t,n,r){e.set(t,n,1e3*r)},M=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,v,_;return _ts_generator(this,function(g){switch(g.label){case 0:if(!t)return[2,e];o=e,a=!0,i=!1,s=void 0,g.label=1;case 1:g.trys.push([1,6,7,8]),c=Object.entries(t)[Symbol.iterator](),g.label=2;case 2:return(a=(u=c.next()).done)?[3,5]:(l=_sliced_to_array(u.value,2),f=l[0],d=l[1],v=[o,f],[4,O(n,d,{collector:r})]);case 3:o=p.apply(void 0,v.concat([g.sent()])),g.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return _=g.sent(),i=!0,s=_,[3,8];case 7:try{a||null==c.return||c.return()}finally{if(i)throw s}return[7];case 8:return[2,o]}})})()},L=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},R=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s,c=_sliced_to_array(a.value,2),u=c[0],l=null===(s=c[1].config)||void 0===s?void 0:s.next;"string"==typeof l||Array.isArray(l)&&l.every(function(e){return"string"==typeof e})?t[u]={next:l}:t[u]={}}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}return t},N=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}},W=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 i;(i=n).push.apply(i,_to_consumable_array(a));break}o=a}return n},H=function(e,t,n){return _async_to_generator(function(){var r,o,i,s;return _ts_generator(this,function(c){switch(c.label){case 0:return!t.init||t.config.init?[3,2]:(r=t.type||"unknown",o=e.logger.scope("transformer:".concat(r)),i={collector:e,logger:o,id:n,ingest:a(n),config:t.config,env:G(t.config.env)},o.debug("init"),[4,E(t.init,"TransformerInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=c.sent()))return[2,!1];t.config=_object_spread_props(_object_spread({},s||t.config),{env:(null==s?void 0:s.env)||t.config.env,init:!0}),o.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},z=function(e,t,n,r,o,a){return _async_to_generator(function(){var i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return i=t.type||"unknown",s=e.logger.scope("transformer:".concat(i)),c={collector:e,logger:s,id:n,ingest:o,config:t.config,env:_object_spread({},G(t.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,E(t.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},B=function(e,t){return e?_object_spread_props(_object_spread({},e),{_meta:_object_spread_props(_object_spread({},e._meta),{path:_to_consumable_array(e._meta.path)})}):a(t)},G=function(e){return e&&f(e)?e:{}},U=function(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(function(e){return"string"==typeof e}))},V=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,p;return _ts_generator(this,function(v){switch(v.label){case 0:if(!t.on||!(null===(r=t.queueOn)||void 0===r?void 0:r.length))return[2];a=t.queueOn,t.queueOn=[],i=n||(null===(o=t.config)||void 0===o?void 0:o.id)||"unknown",s=!0,c=!1,u=void 0,v.label=1;case 1:v.trys.push([1,6,7,8]),l=function(){var n,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return n=d.value,r=n.type,o=n.data,[4,j(t.on,function(t){if(_instanceof(t,Tt))throw t;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:r,error:t})})(r,o)];case 1:return a.sent(),[2]}})},f=a[Symbol.iterator](),v.label=2;case 2:return(s=(d=f.next()).done)?[3,5]:[5,_ts_values(l())];case 3:v.sent(),v.label=4;case 4:return s=!0,[3,2];case 5:return[3,8];case 6:return p=v.sent(),c=!0,u=p,[3,8];case 7:try{s||null==f.return||f.return()}finally{if(c)throw u}return[7];case 8:return[2]}})})()},F=function(e){var t;return Boolean(e.config.init)&&!(null===(t=e.config.require)||void 0===t?void 0:t.length)},K=function(e,t,n){return _async_to_generator(function(){var r,o,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w,k,x,S,C,E,A,N;return _ts_generator(this,function(H){switch(H.label){case 0:return o=n.code,i=n.config,s=void 0===i?{}:i,c=n.env,u=void 0===c?{}:c,l=n.primary,f=n.next,d=n.before,p=n.cache,_=(v=p)?D(_object_spread_props(_object_spread({},v),{stop:null===(r=v.stop)||void 0===r||r})):void 0,g=U(f)?W(f,R(e.transformers)):void 0,h=U(d)?W(d,R(e.transformers)):void 0,y=u.push,b=null!=y?y:e.push,m=Boolean(y),w=function(n,r,o){return _async_to_generator(function(){var a,i,c,u,l,p,v,y,w,k,x,O,S,C,E,A,D,N,H,z,G,U,V,F;return _ts_generator(this,function(K){switch(K.label){case 0:return i=null!=h?h:void 0!==d?function(){var t=P(d,q(o.ingest));return 0===t.length?[]:W(1===t.length?t[0]:t,R(e.transformers))}():[],c=[n],i.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,Vt(e,e.transformers,i,n,o.ingest,o.respond,"source.".concat(t,".before"))]:[3,2];case 1:if(null===(u=K.sent()).event)return[2,{ok:!0}];if(u.stopped)return[2,(u.respond&&(o.respond=u.respond),{ok:!0})];u.respond&&(o.respond=u.respond),c=Array.isArray(u.event)?u.event:[u.event],K.label=2;case 2:return _&&(l=L(_,e))?(p=q(o.ingest),[4,I(_,l,p)]):[3,7];case 3:return(v=K.sent())?"HIT"===v.status&&void 0!==v.value&&_.stop?(w=v.value,v.rule.update?[4,M(w,v.rule.update,_object_spread_props(_object_spread({},p),{cache:{status:"HIT"}}),e)]:[3,5]):[3,6]:[3,7];case 4:w=K.sent(),K.label=5;case 5:return[2,(null===(y=o.respond)||void 0===y||y.call(o,w),{ok:!0})];case 6:"MISS"===v.status&&_.stop&&o.respond&&(k=o.respond,x=v.rule.update,O=_object_spread_props(_object_spread({},p),{cache:{status:"MISS"}}),S=v.key,C=v.rule.ttl,E=function(t){T(l,S,t,C),x?a=_async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,M(t,x,O,e)];case 1:return n=r.sent(),k(n),[2]}})})():k(t)},o.respond=E),"MISS"!==v.status||_.stop||T(l,v.key,!0,v.rule.ttl),K.label=7;case 7:A=g?{kind:"single",preChain:g}:void 0!==f?function(){var t=P(f,q(o.ingest));return 0===t.length?{kind:"single",preChain:[]}:1===t.length?{kind:"single",preChain:W(t[0],R(e.transformers))}:{kind:"many",branches:t.map(function(t){return W(t,R(e.transformers))})}}():{kind:"single",preChain:[]},D={ok:!0},N=!0,H=!1,z=void 0,K.label=8;case 8:K.trys.push([8,13,14,15]),G=function(){var n,a;return _ts_generator(this,function(i){switch(i.label){case 0:return n=V.value,"many"!==A.kind?[3,2]:[4,Promise.all(A.branches.map(function(a,i){return j(function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return[2,m?b(n):b(n,_object_spread_props(_object_spread({},r),{id:t,ingest:B(o.ingest,"".concat(t,".").concat(i)),respond:void 0,mapping:s,preChain:a}))]})})()},function(t){return e.logger.scope("source:many").error("many branch ".concat(i," failed"),{error:t}),{ok:!0}})()}))];case 1:return i.sent(),D={ok:!0},[3,7];case 2:return m?[4,b(n)]:[3,4];case 3:return a=i.sent(),[3,6];case 4:return[4,b(n,_object_spread_props(_object_spread({},r),{id:t,ingest:o.ingest,respond:o.respond,mapping:s,preChain:A.preChain}))];case 5:a=i.sent(),i.label=6;case 6:D=a,i.label=7;case 7:return[2]}})},U=c[Symbol.iterator](),K.label=9;case 9:return(N=(V=U.next()).done)?[3,12]:[5,_ts_values(G())];case 10:K.sent(),K.label=11;case 11:return N=!0,[3,9];case 12:return[3,15];case 13:return F=K.sent(),H=!0,z=F,[3,15];case 14:try{N||null==U.return||U.return()}finally{if(H)throw z}return[7];case 15:return a?[4,a]:[3,17];case 16:K.sent(),K.label=17;case 17:return[2,D]}})})()},k=function(n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(i){switch(i.label){case 0:return r=a(t),s.ingest&&void 0!==n?[4,O(n,s.ingest,{collector:e})]:[2,r];case 1:return o=i.sent(),[2,_object_spread_props(_object_spread({},r,o),{_meta:r._meta})]}})})()},x=e.logger.scope("source").scope(t),S=_object_spread_props(_object_spread({command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:x},u),{push:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){var r;return _ts_generator(this,function(o){return r={ingest:a(t),respond:void 0},[2,w(e,n,r)]})})()}}),C={collector:e,logger:x,id:t,config:s,env:S,withScope:function(e,t,n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return o={},[4,k(e)];case 1:return o.ingest=a.sent(),o.respond=t,r=o,[2,n(_object_spread_props(_object_spread({},S),{push:function(e){return w(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r)},ingest:r.ingest,respond:r.respond}))]}})})()}},[4,j(o,function(n){if(_instanceof(n,Tt))throw n;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:t,error:n})})(C)];case 1:return(E=H.sent())?(A=E.type||"unknown",N=e.logger.scope(A).scope(t),[2,(S.logger=N,l&&(E.config=_object_spread_props(_object_spread({},E.config),{primary:l})),E)]):[2]}})})()},Y=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w=arguments;return _ts_generator(this,function(k){switch(k.label){case 0:t=w.length>1&&void 0!==w[1]?w[1]:{},n={},r=!0,o=!1,a=void 0,k.label=1;case 1:k.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),k.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],[4,K(e,u,l)]);case 3:if(!(d=k.sent()))return[3,4];p=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),p?{require:_to_consumable_array(p)}:{}),n[u]=d,k.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return m=k.sent(),o=!0,a=m,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:Object.assign(e.sources,n),v=!0,_=!1,g=void 0,k.label=9;case 9:k.trys.push([9,14,15,16]),h=function(){var t,n,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return t=b.value,n=e.sources[t],r=!1,n.init?[4,j(n.init.bind(n),function(n){if(_instanceof(n,Tt))throw n;r=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:t,error:n})})()]:[3,2];case 1:a.sent(),a.label=2;case 2:return r?[3,5]:(n.config.init=!0,(o=F(n))?[4,V(e,n,t)]:[3,4]);case 3:o=a.sent(),a.label=4;case 4:a.label=5;case 5:return[2]}})},y=Object.keys(n)[Symbol.iterator](),k.label=10;case 10:return(v=(b=y.next()).done)?[3,13]:[5,_ts_values(h())];case 11:k.sent(),k.label=12;case 12:return v=!0,[3,10];case 13:return[3,16];case 14:return m=k.sent(),_=!0,g=m,[3,16];case 15:try{v||null==y.return||y.return()}finally{if(_)throw g}return[7];case 16:return[2,n]}})}).apply(this,arguments)},$=function(e,t,n,r){if(_instanceof(n,Tt))throw n;e.logger.scope("on").error("on callback failed",_object_spread_props(_object_spread({kind:t},r),{error:n}))},J=function(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}},X=function(e,t,n){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){return r=e.on,o=r[t]||[],(a=s(n)?n:[n]).forEach(function(e){o.push(e)}),r[t]=o,Q(e,t,a),[2]})})()},Z=function(e,t,n,r,o){if(t.on){var a=t.type||"unknown",i=e.logger.scope(a).scope("on").scope(r),s={collector:e,logger:i,id:n,config:t.config,data:o,env:ge(t.env,t.config.env)};k(t.on,function(t){return $(e,"destination",t,{destId:n,type:r})})(r,s)}},Q=function(e,t,n,r){var o,a,i,s,c;switch(t){case Ut.Commands.Consent:o=r||e.consent;break;case Ut.Commands.Session:o=e.session;break;case Ut.Commands.User:o=r||e.user;break;case Ut.Commands.Custom:o=r||e.custom;break;case Ut.Commands.Globals:o=r||e.globals;break;case Ut.Commands.Config:o=r||e.config;break;case Ut.Commands.Ready:case Ut.Commands.Run:default:o=void 0}if(n.length)switch(t){case Ut.Commands.Consent:a=e,i=n,s=r||a.consent,c=J(a,Ut.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(t){return t in e}).forEach(function(t){k(e[t],function(e){return $(a,"consent",e,{key:t})})(s,c)})});break;case Ut.Commands.Ready:!function(e,t){if(e.allowed){var n=J(e,Ut.Commands.Ready);t.forEach(function(t){k(t,function(t){return $(e,"ready",t)})(void 0,n)})}}(e,n);break;case Ut.Commands.Run:!function(e,t){if(e.allowed){var n=J(e,Ut.Commands.Run);t.forEach(function(t){k(t,function(t){return $(e,"run",t)})(void 0,n)})}}(e,n);break;case Ut.Commands.Session:!function(e,t){if(e.session){var n=J(e,Ut.Commands.Session);t.forEach(function(t){k(t,function(t){return $(e,"session",t)})(e.session,n)})}}(e,n);break;default:var u=J(e,t);n.forEach(function(n){"function"==typeof n&&k(n,function(n){return $(e,"generic",n,{type:t})})(o,u)})}},ee=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w,k;return _ts_generator(this,function(x){switch(x.label){case 0:switch(i=n||[],n||(i=e.on[t]||[]),t){case Ut.Commands.Consent:a=r||e.consent;break;case Ut.Commands.Session:a=e.session;break;case Ut.Commands.User:a=r||e.user;break;case Ut.Commands.Custom:a=r||e.custom;break;case Ut.Commands.Globals:a=r||e.globals;break;case Ut.Commands.Config:a=r||e.config;break;case Ut.Commands.Ready:case Ut.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,x.label=1;case 1:x.trys.push([1,6,7,8]),f=function(){var n,r,o,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return n=_sliced_to_array(p.value,2),r=n[0],o=n[1],(null===(i=o.config.require)||void 0===i?void 0:i.length)&&-1!==(c=o.config.require.indexOf(t))&&o.config.require.splice(c,1),o.on?F(o)?(u=!1,[4,j(o.on,function(n){return $(e,"source",n,{sourceId:r,type:t})})(t,a)]):[3,2]:[3,3];case 1:return u===l.sent()&&(s=!0),[3,3];case 2:o.queueOn=o.queueOn||[],o.queueOn.push({type:t,data:a}),l.label=3;case 3:return[2]}})},d=Object.entries(e.sources)[Symbol.iterator](),x.label=2;case 2:return(c=(p=d.next()).done)?[3,5]:[5,_ts_values(f())];case 3:x.sent(),x.label=4;case 4:return c=!0,[3,2];case 5:return[3,8];case 6:return k=x.sent(),u=!0,l=k,[3,8];case 7:try{c||null==d.return||d.return()}finally{if(u)throw l}return[7];case 8:Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],i=r[1];if(i.on){if(!i.config.init)return i.queueOn=i.queueOn||[],void i.queueOn.push({type:t,data:a});Z(e,i,o,t,a)}}),v=!0,_=!1,g=void 0,x.label=9;case 9:x.trys.push([9,15,16,17]),h=Object.entries(e.sources)[Symbol.iterator](),x.label=10;case 10:return(v=(y=h.next()).done)?[3,14]:(b=_sliced_to_array(y.value,2),m=b[0],w=b[1],F(w)&&(null===(o=w.queueOn)||void 0===o?void 0:o.length)?[4,V(e,w,m)]:[3,12]);case 11:x.sent(),x.label=12;case 12:x.label=13;case 13:return v=!0,[3,10];case 14:return[3,17];case 15:return k=x.sent(),_=!0,g=k,[3,17];case 16:try{v||null==h.return||h.return()}finally{if(_)throw g}return[7];case 17:return Object.keys(e.pending.destinations).length>0?[4,function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,u,l,f,d,p;return _ts_generator(this,function(v){n=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(n=(i=a.next()).done);n=!0)s=_sliced_to_array(i.value,2),c=s[0],u=s[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!==(p=ve(u)).config.queue&&(p.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=p))}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,t)]:[3,19];case 18:x.sent(),x.label=19;case 19:return[2,(Q(e,t,i,r),!s)]}})})()},te=function(e,t,n,r){var o;if(!Number.isFinite(n.max)||n.max<=0)throw new Error("pushBounded: max must be > 0 (got ".concat(n.max,")"));if("dropNewest"===(null!==(o=n.onOverflow)&&void 0!==o?o:"dropOldest"))return e.length>=n.max?(r&&r([t]),{appended:!1,dropped:1}):(e.push(t),{appended:!0,dropped:0});for(var a=[];e.length>=n.max;)a.push(e.shift());return e.push(t),a.length>0&&r&&r(a),{appended:!0,dropped:a.length}},ne=function(e,t,n,r){Ft.get(e)||(Ft.set(e,!0),t.warn(n,r))},re=function(e){Ft.delete(e)},oe=function(e){return e===Kt},ae=function(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}},ie=function(e,t){return e.status.destinations[t]||(e.status.destinations[t]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[t]},se=function(e,t,n,r){var o;e.dropped[t]||(e.dropped[t]={});var a=e.dropped[t];return a[n]=(null!==(o=a[n])&&void 0!==o?o:0)+r,a[n]},ce=function(e,t,n){if(!e)return[];if(Array.isArray(e)&&e.every(function(e){return"string"==typeof e}))return W(e,t);if("string"==typeof e)return W(e,t);var r=P(e,q(n));return 0===r.length?[]:1===r.length?W(r[0],t):W(r,t)},ue=function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,u,f,d,p,v;return _ts_generator(this,function(_){if(n=t.code,r=t.config,o=void 0===r?{}:r,a=t.env,i=void 0===a?{}:a,s=t.before,c=t.next,u=t.cache,!l(n.push))return[2,pe({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(f=o||{init:!1},d=s?_object_spread_props(_object_spread({},f),{before:s}):_object_spread({},f),c&&(d=_object_spread_props(_object_spread({},d),{next:c})),u&&(d=_object_spread_props(_object_spread({},d),{cache:u})),p=_object_spread_props(_object_spread({},n),{config:d,env:ge(n.env,i)}),!(v=p.config.id))do{v=g(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[v]);return[2,(e.destinations[v]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),le(e,void 0,{},_define_property({},v,p)))]})})()},le=function(t,n,r){return _async_to_generator(function(t,n){var r,o,s,c,u,l,f,d,p,v,g,h,y,b,m,w,k,x,O,S,C,E,A,P,M,N,W,H,z,B,G,U,V=arguments;return _ts_generator(this,function(F){switch(F.label){case 0:if(r=V.length>2&&void 0!==V[2]?V[2]:{},o=V.length>3?V[3]:void 0,s=t.allowed,c=t.consent,u=t.globals,l=t.user,!s)return[2,pe({ok:!1})];if(n){if(void 0===(f=t.config.queueMax))throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");(d=te(t.queue,n,{max:f})).dropped>0?(p=se(t.status,e("collector"),"queue",d.dropped),ne(t.queue,t.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:f,droppedCount:p})):t.queue.length<f&&re(t.queue),t.status.in++}return o||(o=t.destinations),v=t.transformers?R(t.transformers):{},[4,Promise.all(Object.entries(o||{}).map(function(o){var s=_sliced_to_array(o,2),f=s[0],d=s[1];return _async_to_generator(function(){var o,s,p,g,h,y,b,m,w,k,x,O,S,C,E,A,P,M,R,N,W,H,z,B,G,U,V,F,K,Y,$,J,X,Z;return _ts_generator(this,function(Q){switch(Q.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:c})}),d.queuePush=[],n&&g.push(Et(n)),h=r.ingest?_object_spread_props(_object_spread({},r.ingest),{_meta:_object_spread_props(_object_spread({},r.ingest._meta),{path:_to_consumable_array(r.ingest._meta.path)})}):a("unknown"),!g.length&&!(null===(o=d.queueOn)||void 0===o?void 0:o.length))return[2,{id:f,destination:d,skipped:!0}];if(g.length||!(null===(s=d.queueOn)||void 0===s?void 0:s.length))return[3,5];y=!1,Q.label=1;case 1:return Q.trys.push([1,3,,4]),[4,fe(t,d,f)];case 2:return y=Q.sent(),[3,4];case 3:return b=Q.sent(),t.status.failed++,m=d.type||"unknown",t.logger.scope(m).error("destination init failed",{error:_instanceof(b,Error)?b.message:String(b)}),[3,4];case 4:return[2,{id:f,destination:d,skipped:!y}];case 5:if(w=[],k=g.filter(function(e){var t=_(d.config.consent,c,e.consent);return!t||(e.consent=t,w.push(e),!1)}),k.length>0){O=d.queuePush,S=d.config.id||f,C={max:null!==(x=d.config.queueMax)&&void 0!==x?x:1e3},E=0,A=!0,P=!1,M=void 0;try{for(R=k[Symbol.iterator]();!(A=(N=R.next()).done);A=!0)W=N.value,E+=te(O,W,C).dropped}catch(e){P=!0,M=e}finally{try{A||null==R.return||R.return()}finally{if(P)throw M}}E>0?(ie(t,S),H=se(t.status,e("destination",S),"queue",E),ne(O,t.logger.scope(d.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:S,cap:C.max,droppedCount:H})):O.length<C.max&&re(O)}if(!w.length)return[2,{id:f,destination:d,queue:g}];G=!1,Q.label=6;case 6:return Q.trys.push([6,8,,9]),[4,fe(t,d,f)];case 7:return G=Q.sent(),[3,9];case 8:return U=Q.sent(),t.status.failed++,V=d.type||"unknown",t.logger.scope(V).error("destination init failed",{error:_instanceof(U,Error)?U.message:String(U)}),[3,9];case 9:return G?(d.dlq||(d.dlq=[]),F=ce(d.config.before,v,h),K=d.config.next,Y=null===(p=d.config)||void 0===p?void 0:p.cache,$=Y?D(Y):void 0,J=$?L($,t):void 0,X=0,Z=0,[4,Promise.all(w.map(function(n){return _async_to_generator(function(){var o,a,s,c,p,_,g,y,b,m,w,k,x;return _ts_generator(this,function(O){switch(O.label){case 0:return n.globals=i(u,n.globals),n.user=i(l,n.user),(null==$?void 0:$.stop)&&J?(a=q(h,n),[4,I($,J,a)]):[3,2];case 1:if("HIT"===(null==(s=O.sent())?void 0:s.status))return[2,n];"MISS"===(null==s?void 0:s.status)&&(o={key:s.key,ttl:s.rule.ttl}),O.label=2;case 2:return c=n,p=r.respond,F.length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Vt(t,t.transformers,F,n,h,r.respond,"destination.".concat(f,".before"))]:[3,4];case 3:if(null===(_=O.sent()).event)return[2,n];_.respond&&(p=_.respond),c=Array.isArray(_.event)?_.event[0]:_.event,O.label=4;case 4:return $&&!$.stop&&J?(g=q(h,c),[4,I($,J,g)]):[3,6];case 5:if("HIT"===(null==(y=O.sent())?void 0:y.status))return[2,n];"MISS"===(null==y?void 0:y.status)&&(o={key:y.key,ttl:y.rule.ttl}),O.label=6;case 6:return b=Date.now(),m=!1,[4,j(de,function(n){var r,o=d.type||"unknown";t.logger.scope(o).error("Push failed",{error:n,event:c.name}),z=n,m=!0;var a=d.dlq,i=d.config.id||f,s={max:null!==(r=d.config.dlqMax)&&void 0!==r?r:100},u=te(a,[c,n],s);if(u.dropped>0){ie(t,i);var l=se(t.status,e("destination",i),"dlq",u.dropped);ne(a,t.logger.scope(d.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:i,cap:s.max,droppedCount:l})}else a.length<s.max&&re(a)})(t,d,f,c,h,p)];case 7:return w=O.sent(),X+=Date.now()-b,o&&J&&void 0===d.config.mock&&T(J,o.key,null==w||w,o.ttl),void 0===w||oe(w)||(B=w),oe(w)&&Z++,m||!K?[3,9]:(void 0!==w&&(h._response=w),(k=ce(K,v,h)).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Vt(t,t.transformers,k,c,h,p,"destination.".concat(f,".next"))]:[3,9]);case 8:(x=O.sent()).respond&&(p=x.respond),O.label=9;case 9:return[2,n]}})})()}))]):[2,{id:f,destination:d,queue:g}];case 10:return[2,(Q.sent(),{id:f,destination:d,error:z,response:B,totalDuration:X,batchedCount:Z,allowedCount:w.length})]}})})()}))];case 1:g=F.sent(),h={},y={},b={},m=!0,w=!1,k=void 0;try{for(x=g[Symbol.iterator]();!(m=(O=x.next()).done);m=!0)(S=O.value).skipped||(M=S.destination,N={type:M.type||"unknown",data:S.response},ie(t,S.id),W=t.status.destinations[S.id],H=Date.now(),W.queuePushSize=null!==(C=null===(A=M.queuePush)||void 0===A?void 0:A.length)&&void 0!==C?C:0,W.dlqSize=null!==(E=null===(P=M.dlq)||void 0===P?void 0:P.length)&&void 0!==E?E:0,S.error?(N.error=S.error,b[S.id]=N,W.failed++,W.lastAt=H,W.duration+=S.totalDuration||0,t.status.failed++):S.queue&&S.queue.length?y[S.id]=N:(G=null!==(z=S.batchedCount)&&void 0!==z?z:0,U=null!==(B=S.allowedCount)&&void 0!==B?B:0,(Math.max(0,U-G)>0||0===U)&&(h[S.id]=N,W.count++,W.lastAt=H,W.duration+=S.totalDuration||0,t.status.out++)))}catch(e){w=!0,k=e}finally{try{m||null==x.return||x.return()}finally{if(w)throw k}}return[2,pe(_object_spread({event:n},Object.keys(h).length&&{done:h},Object.keys(y).length&&{queued:y},Object.keys(b).length&&{failed:b}))]}})}).apply(this,arguments)},fe=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,p,v,_,g;return _ts_generator(this,function(h){switch(h.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=e.logger.scope(o),i={collector:e,logger:a,id:n,config:t.config,env:ge(t.env,t.config.env)},a.debug("init"),[4,E(t.init,"DestinationInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=h.sent()))return[2,s];if(t.config=_object_spread_props(_object_spread({},s||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=(p=d.next()).done);u=!0)v=p.value,_=v.type,g=v.data,Z(e,t,n,_,g)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),h.label=2;case 2:return[2,!0]}})})()},de=function(t,n,r,o,a,i){return _async_to_generator(function(){var s,u,l,f,d,p,v,_,g,y,b,m,w,k,x,O,C,A,P,q,D,I,T,M,L,R;return _ts_generator(this,function(N){switch(N.label){case 0:return s=n.config,[4,S(o,s,t)];case 1:return(u=N.sent()).ignore?[2,!1]:(l=n.type||"unknown",f=t.logger.scope(l),d={collector:t,logger:f,id:r,config:s,data:u.data,rule:u.mapping,ingest:a,env:_object_spread({},ge(n.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(f.debug("mock",{event:u.event.name}),s.mock)]:(p=u.mapping,v=u.mappingKey||"* *",(null==p?void 0:p.batch)&&n.pushBatch&&void 0===s.mock?(n.batches=n.batches||{},n.batches[v]||(x={key:v,entries:[],events:[],data:[]},O=ae(p.batch),C=ae(s.batch),A=null!==(g=null!==(y=O.wait)&&void 0!==y?y:C.wait)&&void 0!==g?g:3e4,P=null!==(b=null!==(m=O.size)&&void 0!==m?m:C.size)&&void 0!==b?b:1e3,q=null!==(w=null!==(k=O.age)&&void 0!==k?k:C.age)&&void 0!==w?w:3e4,D=ge(n.env,s.env),I=function(e){var t,n,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=h(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,1e3),a=o.wait,i=o.size,s=o.age,c=null,u=null,l=!1,f=[],d=0,p=function(){c&&(clearTimeout(c),c=null),u&&(clearTimeout(u),u=null),d=0,n=void 0},v=function(){var r=n,o=f;if(p(),f=[],r)return t=e.apply(void 0,_to_consumable_array(r)),o.forEach(function(e){return e(t)}),t;o.forEach(function(e){return e(void 0)})},_=function(){for(var o=arguments.length,p=new Array(o),_=0;_<o;_++)p[_]=arguments[_];return new Promise(function(o){var _=r&&!l;if(n=p,d+=1,f.push(o),c&&clearTimeout(c),c=setTimeout(function(){c=null,r&&!l||v()},a),void 0===s||u||(u=setTimeout(function(){u=null,v()},s)),void 0!==i&&d>=i)v();else if(_){l=!0,t=e.apply(void 0,_to_consumable_array(p));var g=f;f=[],g.forEach(function(e){return e(t)})}})};return _.flush=function(){return n||0!==f.length?new Promise(function(e){f.push(e),v()}):Promise.resolve(void 0)},_.cancel=function(){var e=f;f=[],p(),e.forEach(function(e){return e(void 0)})},_.size=function(){return d},_}(function(){return _async_to_generator(function(){var o,a,i,c,u,l,d,p;return _ts_generator(this,function(_){switch(_.label){case 0:return 0===(a=n.batches[v].batched).entries.length?[2]:(i={key:a.key,entries:a.entries,events:a.events,data:a.data},a.entries=[],a.events=[],a.data=[],c=i.entries[0],u={collector:t,logger:f,id:r,config:s,data:void 0,rule:c.rule,ingest:c.ingest,env:_object_spread({},D,c.respond?{respond:c.respond}:{})},f.debug("push batch",{events:i.entries.length}),l=n.config.id||r,d=ie(t,l),p=!0,[4,j(E(n.pushBatch,"DestinationPushBatch",t.hooks,t.logger),function(r){var o;p=!1;var a=n.dlq=n.dlq||[],s={max:null!==(o=n.config.dlqMax)&&void 0!==o?o:100},c=0,u=!0,v=!1,_=void 0;try{for(var g,h=i.entries[Symbol.iterator]();!(u=(g=h.next()).done);u=!0){var y=g.value;c+=te(a,[y.event,r],s).dropped}}catch(e){v=!0,_=e}finally{try{u||null==h.return||h.return()}finally{if(v)throw _}}if(c>0){var b=se(t.status,e("destination",l),"dlq",c);ne(a,f,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:s.max,droppedCount:b})}else a.length<s.max&&re(a);d.failed+=i.entries.length,d.dlqSize=a.length,t.status.failed+=i.entries.length,f.error("Push batch failed",{error:_instanceof(r,Error)?r.message:String(r),entries:i.entries.length})})(i,u)]);case 1:return _.sent(),f.debug("push batch done"),d.inFlightBatch=Math.max(0,(null!==(o=d.inFlightBatch)&&void 0!==o?o:0)-i.entries.length),p&&(d.count+=i.entries.length,d.lastAt=Date.now(),t.status.out+=i.entries.length),[2]}})})()},{wait:A,size:P,age:q}),n.batches[v]={batched:x,batchFn:function(){I()},flush:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){switch(e.label){case 0:return[4,I.flush()];case 1:return e.sent(),[2]}})})()}}),(T=n.batches[v]).batched.entries.push({event:u.event,ingest:a,respond:i,rule:p,data:u.data}),T.batched.events.push(u.event),c(u.data)&&T.batched.data.push(u.data),M=n.config.id||r,[2,((L=ie(t,M)).inFlightBatch=(null!==(_=L.inFlightBatch)&&void 0!==_?_:0)+1,T.batchFn(),Kt)]):(f.debug("push",{event:u.event.name}),[4,E(n.push,"DestinationPush",t.hooks,t.logger)(u.event,d)])));case 2:return R=N.sent(),[2,(f.debug("push done"),R)]}})})()},pe=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},ve=function(e){var t=e.code,n=e.config,r=void 0===n?{}:n,o=e.env,a=void 0===o?{}:o,i=e.cache,s=N(e,"before").config,c=N(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},t.config,r,c);i&&(u.cache=i);var l=ge(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},_e=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,p=arguments;return _ts_generator(this,function(v){t=p.length>1&&void 0!==p[1]?p[1]:{},o={},a=!0,i=!1,s=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]=ve(d)}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}return[2,o]})}).apply(this,arguments)},ge=function(e,t){return e||t?t?e&&f(e)&&f(t)?_object_spread({},e,t):t:e:{}},he=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,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:if(!(r=a.destroy))return[2];i=a.type||"unknown",s=n.scope(i),c={id:o,config:a.config,env:null!==(e=a.env)&&void 0!==e?e:{},logger:s},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(),s.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]}})})()},ye=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,p,v,_;return _ts_generator(this,function(g){switch(g.label){case 0:switch(a=!1,t){case Ut.Commands.Config:return[3,1];case Ut.Commands.Consent:return[3,2];case Ut.Commands.Custom:return[3,3];case Ut.Commands.Destination:return[3,4];case Ut.Commands.Globals:return[3,7];case Ut.Commands.Hook:return[3,8];case Ut.Commands.On:return[3,9];case Ut.Commands.Ready:return[3,12];case Ut.Commands.Run:return[3,13];case Ut.Commands.Session:return[3,15];case Ut.Commands.Shutdown:return[3,16];case Ut.Commands.User:return[3,18]}return[3,19];case 1:return f(n)&&(i(e.config,n,{shallow:!1}),o=n,a=!0),[3,19];case 2:return f(n)&&(s=function(e,t){var n={};return Object.entries(t).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],o=t[1];n[r]=!!o}),e.consent=i(e.consent,n),{update:n}}(e,n),c=s.update,o=c,a=!0),[3,19];case 3:return f(n)&&(e.custom=i(e.custom,n),o=n,a=!0),[3,19];case 4:return f(n)&&"code"in n&&f(n.code)?[4,ue(e,n)]:[3,6];case 5:r=g.sent(),g.label=6;case 6:return[3,19];case 7:return f(n)&&(e.globals=i(e.globals,n),o=n,a=!0),[3,19];case 8:return f(n)&&d(n.name)&&l(n.fn)&&(u=n.name,p=n.fn,e.hooks[u]=p,o=n,a=!0),[3,19];case 9:return f(n)&&d(n.type)?(v=n.type,_=n.rules,[4,X(e,v,_)]):[3,11];case 10:g.sent(),g.label=11;case 11:return[3,19];case 12:return a=!0,[3,19];case 13:return[4,me(e,n)];case 14:return r=g.sent(),a=!0,[3,19];case 15:return a=!0,[3,19];case 16:return[4,(h=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=h.logger,[4,he(h.sources,"source",e)];case 1:return t.sent(),[4,he(h.destinations,"destination",e)];case 2:return t.sent(),[4,he(h.transformers,"transformer",e)];case 3:return t.sent(),[4,he(h.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 17:return g.sent(),[3,19];case 18:f(n)&&(i(e.user,n,{shallow:!1}),o=n,a=!0),g.label=19;case 19:return a?[4,ee(e,t,void 0,o)]:[3,22];case 20:return g.sent(),[4,le(e)];case 21:r=g.sent(),g.label=22;case 22:return[2,r||pe({ok:!0})]}var h})})()},be=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,i=void 0===a?Date.now():a,s=t.name,c=void 0===s?"".concat(r," ").concat(o):s,u=t.data,l=void 0===u?{}:u,f=t.context,d=void 0===f?{}:f,p=t.globals,v=void 0===p?e.globals:p,_=t.custom,g=void 0===_?{}:_,h=t.user,y=void 0===h?e.user:h,b=t.nested,m=void 0===b?[]:b,w=t.consent,k=void 0===w?e.consent:w,j=t.id,x=void 0===j?function(){for(var e="",t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}():j,O=t.trigger,S=void 0===O?"":O,C=t.entity,E=void 0===C?r:C,A=t.action,P=void 0===A?o:A,q=t.timing,D=void 0===q?0:q,I=t.source;return{name:c,data:l,context:d,globals:v,custom:g,user:y,nested:m,consent:k,id:x,trigger:S,entity:E,action:P,timestamp:i,timing:D,source:void 0===I?{type:"collector",schema:"4"}:I}},me=function(e,t){return _async_to_generator(function(){return _ts_generator(this,function(n){switch(n.label){case 0:return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=i(e.consent,t.consent)),t.user&&(e.user=i(e.user,t.user)),t.globals&&(e.globals=i(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=i(e.custom,t.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,le(e)];case 1:return[2,n.sent()]}})})()},we=function(){var e,t,n,r,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=null!==(e=o.maxEntries)&&void 0!==e?e:1e4,i=null!==(t=o.lowWaterMark)&&void 0!==t?t:.8,s=null!==(n=o.sweepIntervalMs)&&void 0!==n?n:6e4,c=Math.floor(a*i),u=new Map,l={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};return s>0&&((r=setInterval(function(){var e=Date.now(),t=0,n=!0,r=!1,o=void 0;try{for(var a,i=u[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=_sliced_to_array(a.value,2),c=s[0],f=s[1];void 0!==f.expires&&f.expires<=e&&(u.delete(c),t++)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}l.evictions_ttl+=t},s))&&"function"==typeof r.unref&&r.unref()),{type:"memory",config:{},get:function(e){var t=u.get(e);if(t)return void 0!==t.expires&&t.expires<=Date.now()?(u.delete(e),l.evictions_ttl++,void l.misses++):(u.delete(e),u.set(e,t),l.hits++,t.value);l.misses++},set:function(e,t,n){var r=!u.has(e);r||u.delete(e),u.set(e,{value:t,expires:void 0!==n?Date.now()+n:void 0}),l.writes++,r&&l.populates++,u.size>a&&function(){if(!(u.size<=a)){var e=u.size-c,t=0,n=!0,r=!1,o=void 0;try{for(var i,s=u.keys()[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var f=i.value;if(t>=e)break;u.delete(f),t++}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}l.evictions_entries+=t}}()},delete:function(e){u.delete(e)&&l.deletes++},get counters(){return _object_spread({},l)},destroy:function(){void 0!==r&&(clearInterval(r),r=void 0),u.clear()}}},ke=function(e,t){var n=t.cacheConfig,r=t.cacheStore,o=t.namespace,a=t.logger,i=t.storeId,s={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=n.rules.map(function(e){return{match:e.match?Lt(e.match):function(){return!0},ttl:e.ttl}}),u=function(e){return"".concat(o,":").concat(e)};function l(e,t){var n=void 0===t?{key:e}:{key:e,value:t};return c.find(function(e){return e.match(n)})}var f=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return _object_spread({},s)},get:function(t){return _async_to_generator(function(){var n,o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return n=u(t),[4,r.get(n)];case 1:return void 0!==(o=c.sent())?[2,(s.hits++,o)]:(a=f.get(n))?[2,(s.inflight_dedups++,a)]:(s.misses++,i=_async_to_generator(function(){var o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return c.trys.push([0,,6,7]),[4,e.get(t)];case 1:if(void 0===(o=c.sent()))return[2];if(!(a=l(t,o)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(n,o,1e3*a.ttl)];case 3:return c.sent(),s.populates++,[3,5];case 4:return i=c.sent(),d("set",t,i),[3,5];case 5:return[2,o];case 6:return f.delete(n),[7];case 7:return[2]}})})(),[2,(f.set(n,i),i)])}})})()},set:function(t,n,o){return _async_to_generator(function(){var a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return s.writes++,[4,e.set(t,n,o)];case 1:if(c.sent(),!(a=l(t,n)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(u(t),n,1e3*a.ttl)];case 3:return c.sent(),[3,5];case 4:return i=c.sent(),d("set",t,i),[3,5];case 5:return[2]}})})()},delete:function(t){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){switch(o.label){case 0:return s.deletes++,[4,e.delete(t)];case 1:o.sent(),o.label=2;case 2:return o.trys.push([2,4,,5]),[4,r.delete(u(t))];case 3:return o.sent(),[3,5];case 4:return n=o.sent(),d("delete",t,n),[3,5];case 5:return[2]}})})()}};function d(e,t,n){var r="store-cache(".concat(i,"): cache ").concat(e,' failed for "').concat(t,'"; backing succeeded, continuing');a?a.warn(r,{error:n}):console.warn(r,n)}},je=function(e,t){var n=t.get,r=t.set,o=t.delete;t.get=E(n,"StoreGet",e.hooks,e.logger),t.set=E(r,"StoreSet",e.hooks,e.logger),t.delete=E(o,"StoreDelete",e.hooks,e.logger)},xe=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,p,v,_,g,h,y,b,m,w,k,j,x,O,S,C,E,A,P,q,D,I,T,M,L,R,N,W,H=arguments;return _ts_generator(this,function(z){switch(z.label){case 0:t=H.length>1&&void 0!==H[1]?H[1]:{},n={},r=!0,o=!1,a=void 0,z.label=1;case 1:z.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),z.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,p=void 0===d?{}:d,v=l.env,_=void 0===v?{}:v,g=e.logger.scope("store").scope(u),[4,f({collector:e,logger:g,id:u,config:p,env:_})]);case 3:h=z.sent(),n[u]=h,z.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return y=z.sent(),o=!0,a=y,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:m=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.keys(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=a.value;t[s]="WHITE"}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}var c=[],u=[];function l(n){var r,o=t[n];if("BLACK"!==o){if("GRAY"===o){var a=u.indexOf(n),i=u.slice(-1===a?0:a).concat(n).join(" -> ");throw new Error("Cycle in cache.store chain: ".concat(i))}t[n]="GRAY",u.push(n);var s=null===(r=e[n].cache)||void 0===r?void 0:r.store;if(void 0!==s){if(!(s in e))throw new Error('Store "'.concat(n,'" cache.store references "').concat(s,'", which is not declared in flow.stores'));l(s)}u.pop(),t[n]="BLACK",c.push(n)}}var f=!0,d=!1,p=void 0;try{for(var v,_=Object.keys(e)[Symbol.iterator]();!(f=(v=_.next()).done);f=!0){var g=v.value;"WHITE"===t[g]&&l(g)}}catch(e){d=!0,p=e}finally{try{f||null==_.return||_.return()}finally{if(d)throw p}}return c}(b=t),w=!0,k=!1,j=void 0;try{for(x=m[Symbol.iterator]();!(w=(O=x.next()).done);w=!0)S=O.value,(E=b[S].cache)&&(A=void 0,P=void 0,void 0!==E.store?(A=n[E.store],P=E.store):(n.__cache||(n.__cache=we()),A=n.__cache,P="__cache"),q=null!==(C=E.namespace)&&void 0!==C?C:S,e.logger.scope("store-cache").scope(S).info('store "'.concat(S,'" caches with namespace "').concat(q,':" via ').concat(P)),n[S]=ke(n[S],{storeId:S,cacheConfig:E,cacheStore:A,namespace:q,logger:e.logger.scope("store-cache").scope(S)}))}catch(e){k=!0,j=e}finally{try{w||null==x.return||x.return()}finally{if(k)throw j}}D=!0,I=!1,T=void 0;try{for(M=Object.entries(n)[Symbol.iterator]();!(D=(L=M.next()).done);D=!0)R=_sliced_to_array(L.value,2),N=R[0],W=R[1],"__cache"!==N&&je(e,W)}catch(e){I=!0,T=e}finally{try{D||null==M.return||M.return()}finally{if(I)throw T}}return[2,n]}})}).apply(this,arguments)},Oe=function(e){return _async_to_generator(function(){var t,n,r,o,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return r=i({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),o={level:null===(t=e.logger)||void 0===t?void 0:t.level,handler:null===(n=e.logger)||void 0===n?void 0:n.handler},s=m(o),c=_object_spread({},r.globalsStatic,e.globals),(u={allowed:!1,config:r,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:c,hooks:e.hooks||{},logger:s,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{},dropped:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0}).push=function(e,t){return E(function(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){return _ts_generator(this,function(o){switch(o.label){case 0:return[4,j(function(){return _async_to_generator(function(){var o,i,s,c,u,l,f,d,p,v,g,h,y,b,m,w,k,j,x,O,C;return _ts_generator(this,function(E){switch(E.label){case 0:return o=Date.now(),i=r.id,s=r.ingest,c=r.respond,u=r.mapping,l=r.preChain,f=r.include,d=r.exclude,p=c,v=n,g=f||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}(e.destinations,f,d):void 0,h=null!=s?s:a(i||"unknown"),u?[4,S(v,u,e)]:[3,2];case 1:if((y=E.sent()).ignore)return[2,pe({ok:!0})];if(u.consent&&!_(u.consent,e.consent,y.event.consent))return[2,pe({ok:!0})];v=y.event,E.label=2;case 2:return(null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0?[4,Vt(e,e.transformers,l,v,h,p,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(b=E.sent()).event?[2,pe({ok:!0})]:b.stopped?[2,(b.respond&&(p=b.respond),pe({ok:!0}))]:(b.respond&&(p=b.respond),Array.isArray(b.event)?[4,Promise.all(b.event.map(function(n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=t(n),o=be(e,r),[2,le(e,o,{id:i,ingest:h,respond:p},g)]})})()}))]:[3,5]);case 4:return w=E.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(k=e.status.sources[i]).count+=b.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-o),[2,null!==(m=w[0])&&void 0!==m?m:pe({ok:!0})];case 5:v=b.event,E.label=6;case 6:return j=t(v),x=be(e,j),[4,le(e,x,{id:i,ingest:h,respond:p},g)];case 7:return O=E.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(C=e.status.sources[i]).count++,C.lastAt=Date.now(),C.duration+=Date.now()-o),[2,O]}})})()},function(t){if(_instanceof(t,Tt))throw t;return e.status.failed++,e.logger.error("push failed",{event:n,ingest:r.ingest,error:t}),pe({ok:!1})})()];case 1:return[2,o.sent()]}})})()},"Push",e.hooks,e.logger)}(u,function(e){return _object_spread({timing:Math.round((Date.now()-u.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0"}},e)}),u.command=(p=ye,E(function(e,t,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,j(function(){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,p(d,e,t,n)];case 1:return[2,r.sent()]}})})()},function(n){if(_instanceof(n,Tt))throw n;return d.status.failed++,d.logger.error("command failed",{command:e,data:t,error:n}),pe({ok:!1})})()];case 1:return[2,r.sent()]}})})()},"Command",(d=u).hooks,d.logger)),l=e.stores||{},[4,xe(u,l)];case 1:return u.stores=f.sent(),function(e,t,n){var r=new Map,o=!0,a=!1,i=void 0;try{for(var s,c=Object.entries(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=_sliced_to_array(s.value,2),l=u[0],f=u[1];t[l]&&r.set(f,t[l])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}if(0!==r.size)for(var d=!0,p=!1,v=void 0,_=0,g=[n.transformers,n.destinations,n.sources];_<g.length;_++){var h=g[_];if(h)try{for(var y,b=Object.values(h)[Symbol.iterator]();!(d=(y=b.next()).done);d=!0){m(y.value.env)}}catch(e){p=!0,v=e}finally{try{d||null==b.return||b.return()}finally{if(p)throw v}}}function m(e){if(e){var t=!0,n=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=_sliced_to_array(a.value,2),c=s[0],u=s[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==i.return||i.return()}finally{if(n)throw o}}}}}(l,u.stores,e),u.stores.__cache||(u.stores.__cache=we()),[4,_e(u,e.destinations||{})];case 2:return u.destinations=f.sent(),[4,function(e){return _async_to_generator(function(e){var t,n,r,o,i,s,c,u,l,f=arguments;return _ts_generator(this,function(d){switch(d.label){case 0:t=f.length>1&&void 0!==f[1]?f[1]:{},n={},r=!0,o=!1,i=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=function(){var t,r,o,i,s,c,l,f,d,p,v,_,g,h,y,b,m,w,k,j,x,O;return _ts_generator(this,function(C){switch(C.label){case 0:return t=_sliced_to_array(u.value,2),r=t[0],o=t[1],f=o.code,d=o.env,p=void 0===d?{}:d,v=function(e,t){var n,r=(n=t,new Set(_to_consumable_array(Ht[n]).concat(_to_consumable_array(zt),_to_consumable_array(Bt[n])))),o=!0,a=!1,i=void 0;try{for(var s,c=Object.keys(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=s.value;if(!r.has(u))return{ok:!1,code:"UNKNOWN_KEY",key:u,reason:'Unknown key "'.concat(u,'" on ').concat(t,". Allowed: ").concat(_to_consumable_array(r).sort().join(", "),".")}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}var l=void 0!==e.package,f=void 0!==e.import,d=void 0!==e.code;return d&&"string"==typeof e.code?{ok:!1,code:"OBSOLETE_CODE_STRING",key:"code",reason:'code: "<name>" is no longer supported. Use import: "'.concat(e.code,'" with the package field instead.')}:d&&("object"!=_type_of(e.code)&&"function"!=typeof e.code||null===e.code||Array.isArray(e.code))?{ok:!1,code:"INVALID_CODE_SHAPE",key:"code",reason:"code must be an object ({ push, type?, init? }) or a resolved function value."}:d&&l?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:d&&f?{ok:!1,code:"CONFLICT",key:"import",reason:"Cannot specify both `code` and `import`."}:f&&!l?{ok:!1,code:"MISSING_PACKAGE",key:"import",reason:"`import` requires `package` to be set."}:!f||"string"==typeof e.import&&Gt.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:"import must match ".concat(Gt.source,". Got: ").concat(JSON.stringify(e.import),".")}}(o,"Transformer"),v.ok?(_=N(o,"before"),g=_.config,h=N(_object_spread_props(_object_spread({},o),{config:g}),"next"),y=h.config,b=Object.keys(p).length>0?_object_spread_props(_object_spread({},y),{env:p}):y,m=o.cache,w=m?_object_spread_props(_object_spread({},b),{cache:m}):b,k=e.logger.scope("transformer").scope(r),j={collector:e,logger:k,id:r,ingest:a(r),config:w,env:p},x=null!=f?f:function(e){var t=o.mapping;if(t){var n=[];if(void 0!==t.data&&n.push("data"),t.mapping){var a=!0,i=!1,s=void 0,c=!0,u=!1,l=void 0;try{for(var f,d=Object.entries(t.mapping)[Symbol.iterator]();!(c=(f=d.next()).done);c=!0){var p=_sliced_to_array(f.value,2),v=p[0],_=p[1];if("object"==(void 0===_?"undefined":_type_of(_))&&null!==_)try{for(var g,h=Object.entries(_)[Symbol.iterator]();!(a=(g=h.next()).done);a=!0){var y=_sliced_to_array(g.value,2),b=y[0],m=y[1];if("object"==(void 0===m?"undefined":_type_of(m))&&null!==m){var w=m;void 0!==w.data&&n.push("mapping[".concat(v,"][").concat(b,"].data")),void 0!==w.silent&&n.push("mapping[".concat(v,"][").concat(b,"].silent"))}}}catch(e){i=!0,s=e}finally{try{a||null==h.return||h.return()}finally{if(i)throw s}}}}catch(e){u=!0,l=e}finally{try{c||null==d.return||d.return()}finally{if(u)throw l}}}return n.length>0&&e.collector.logger.warn("Transformer ".concat(r,": `").concat(n.join(", "),"` ignored at transformer position (only event-mutating fields apply).")),{type:"pass",config:e.config,push:function(n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return[4,S(n,t,e.collector)];case 1:return[2,!(r=o.sent()).ignore&&{event:r.event}]}})})()}}}return{type:"pass",config:e.config,push:function(e){return{event:e}}}},[4,x(j)]):(e.logger.warn("Transformer ".concat(r," invalid (").concat(v.code,"): ").concat(v.reason,". Skipping.")),[2,"continue"]);case 1:return O=C.sent(),void 0!==o.before&&void 0===(null===(c=O.config)||void 0===c?void 0:c.before)&&(O.config=_object_spread_props(_object_spread({},null!==(i=O.config)&&void 0!==i?i:{}),{before:o.before})),void 0!==o.next&&void 0===(null===(l=O.config)||void 0===l?void 0:l.next)&&(O.config=_object_spread_props(_object_spread({},null!==(s=O.config)&&void 0!==s?s:{}),{next:o.next})),n[r]=O,[2]}})},c=Object.entries(t)[Symbol.iterator](),d.label=2;case 2:return(r=(u=c.next()).done)?[3,5]:[5,_ts_values(s())];case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return l=d.sent(),o=!0,i=l,[3,8];case 7:try{r||null==c.return||c.return()}finally{if(o)throw i}return[7];case 8:return[2,n]}})}).apply(this,arguments)}(u,e.transformers||{})];case 3:return[2,(u.transformers=f.sent(),u)]}var d,p})})()},Se=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,Oe(e=e||{})];case 1:return t=f.sent(),r=t,n={type:"elb",config:{},push:function(e,t,n,o,a){return _async_to_generator(function(){var i,s;return _ts_generator(this,function(c){if("string"==typeof e&&e.startsWith("walker "))return i=e.replace("walker ",""),[2,r.command(i,t)];if("string"==typeof e)s={name:e},t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(s.data=t);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,pe({ok:!1})];s=e,t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(s.data=_object_spread({},s.data||{},t))}return[2,(n&&"object"==(void 0===n?"undefined":_type_of(n))&&(s.context=n),o&&Array.isArray(o)&&(s.nested=o),a&&"object"==(void 0===a?"undefined":_type_of(a))&&(s.custom=a),r.push(s))]})})()}},t.sources.elb=n,[4,Y(t,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,i=e.globals,s=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 i&&Object.assign(t.globals,i),s&&Object.assign(t.custom,s),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=function(e,t){return(e.getAttribute(t)||"").trim()},Ee=function(e,t,n){var r,o=t.getComputedStyle(e);if("none"===o.display)return!1;if("visible"!==o.visibility)return!1;if(o.opacity&&Number(o.opacity)<.1)return!1;var a=t.innerHeight,i=e.getBoundingClientRect(),s=i.height,c=i.y,u=c+s,l={x:i.x+e.offsetWidth/2,y:i.y+e.offsetHeight/2};if(s<=a){if(e.offsetWidth+i.width===0||e.offsetHeight+i.height===0)return!1;if(l.x<0)return!1;if(l.x>(n.documentElement.clientWidth||t.innerWidth))return!1;if(l.y<0)return!1;if(l.y>(n.documentElement.clientHeight||t.innerHeight))return!1;r=n.elementFromPoint(l.x,l.y)}else{var f=a/2;if(c<0&&u<f)return!1;if(u>a&&c>f)return!1;r=n.elementFromPoint(l.x,a/2)}if(r)do{if(r===e)return!0}while(r=r.parentElement);return!1},Ae=function(e,t){return e+(t=null!=t?(!(arguments.length>2&&void 0!==arguments[2])||arguments[2]?"-":"")+t:"")},Pe=function(e,t,n){var r=Ce(t,Ae(e,n,!(arguments.length>3&&void 0!==arguments[3])||arguments[3]))||"";return He(r).reduce(function(e,n){var r=_sliced_to_array(ze(n),2),o=r[0],a=r[1];if(!o)return e;if(a||(o.endsWith(":")&&(o=o.slice(0,-1)),a=""),a.startsWith("#")){a=a.slice(1);try{var i=t[a];i||"selected"!==a||(i=t.options[t.selectedIndex].text),a=String(i)}catch(e){a=""}}return o.endsWith("[]")?(o=o.slice(0,-2),s(e[o])||(e[o]=[]),e[o].push(v(a))):e[o]=v(a),e},{})},qe=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ut.Commands.Prefix,r=e;if(!r)return[];var o=[],a=Ut.Commands.Action,i="[".concat(Ae(n,a,!1),"]"),s=function(e){Object.keys(Pe(n,e,a,!1)).forEach(function(t){o=o.concat(De(e,t,n))})};return r!==(r.ownerDocument||r)&&(null===(t=r.matches)||void 0===t?void 0:t.call(r,i))&&s(r),$t(r,i,s),o},De=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ut.Commands.Prefix,r=[],o=We(n,e,t),a=o.actions,i=o.nearestOnly;return a.length?(a.forEach(function(o){var a=He(o.actionParams||"",",").reduce(function(e,t){return e[C(t)]=!0,e},{}),s=Me(n,e,a,i);if(!s.length){var c="page",u="[".concat(Ae(n,c),"]"),l=_sliced_to_array(Re(e,u,n,c),2),f=l[0],d=l[1];s.push({entity:c,data:f,nested:[],context:d})}s.forEach(function(e){var n;r.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:null!==(n=e.nested)&&void 0!==n?n:[]})})}),r):r},Ie=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ut.Commands.Prefix,t=arguments.length>1?arguments[1]:void 0;if(!t)return{};var n=Ae(e,Ut.Commands.Globals,!1),r="[".concat(n,"]"),o={};return Ne(t,r,function(t){o=i(o,Pe(e,t,Ut.Commands.Globals,!1))}),o},Te=function(e){var t={};return He(e).forEach(function(e){var n=_sliced_to_array(ze(e),2),r=n[0],o=n[1],a=_sliced_to_array(Be(r),2),i=a[0],s=a[1];if(i){var c=_sliced_to_array(Be(o||""),2),u=c[0],l=c[1];u=u||i,t[i]||(t[i]=[]),t[i].push({trigger:i,triggerParams:s,action:u,actionParams:l})}}),t},Me=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=[],a=t;for(n=0!==Object.keys(n||{}).length?n:void 0;a;){var i=Yt(e,a,t,n);if(i&&(o.push(i),r))break;a=Le(e,a)}return o},Le=function(e,t){var n=Ae(e,Ut.Commands.Link,!1);if(t.matches("[".concat(n,"]"))){var r=_sliced_to_array(ze(Ce(t,n)),2),o=r[0];if("child"===r[1]){var a=t.ownerDocument,i=null;return Ne(a,"[".concat(n,'="').concat(o,':parent"]'),function(e){i||(i=e)}),i}}var s=t.ownerDocument.defaultView;return!t.parentElement&&t.getRootNode&&_instanceof(t.getRootNode(),s.ShadowRoot)?t.getRootNode().host:t.parentElement},Re=function(e,t,n,r){for(var o={},a={},s=e,c="[".concat(Ae(n,Ut.Commands.Context,!1),"]"),u=0;s;)s.matches(t)&&(o=i(Pe(n,s,""),o),o=i(Pe(n,s,r),o)),s.matches(c)&&(Object.entries(Pe(n,s,Ut.Commands.Context,!1)).forEach(function(e){var t=_sliced_to_array(e,2),n=t[0],r=t[1];r&&!a[n]&&(a[n]=[r,u])}),++u),s=Le(n,s);return[o,a]},Ne=function(e,t,n){e.querySelectorAll(t).forEach(n)},We=function(e,t,n){for(var r=t;r;){var o=Ce(r,Ae(e,Ut.Commands.Actions,!1));if(o){var a=Te(o);if(a[n])return{actions:a[n],nearestOnly:!1}}var i=Ce(r,Ae(e,Ut.Commands.Action,!1));if(i){var s=Te(i);if(s[n]||"click"!==n)return{actions:s[n]||[],nearestOnly:!0}}r=Le(e,r)}return{actions:[],nearestOnly:!1}},He=function(e){if(!e)return[];var t=new RegExp("(?:[^".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:";","']+|'[^']*')+"),"ig");return e.match(t)||[]},ze=function(e){var t=_sliced_to_array(e.split(/:(.+)/,2),2),n=t[0],r=t[1];return[C(n),C(r)]},Be=function(e){var t=_sliced_to_array(e.split("(",2),2),n=t[0],r=t[1];return[n,r?r.slice(0,-1):""]},Ge=function(e){var t=Date.now(),n=Zt.get(e);if(!n||t-n.lastChecked>500){var r=e.ownerDocument.defaultView,o=e.ownerDocument;n={isVisible:Ee(e,r,o),lastChecked:t},Zt.set(e,n)}return n.isVisible},Ue=function(e){var t=(e.ownerDocument||e).defaultView;if(t&&t.IntersectionObserver)return k(function(){return new t.IntersectionObserver(function(t){t.forEach(function(t){Ve(e,t)})},{rootMargin:"0px",threshold:[0,.5]})},function(){})()},Ve=function(e,t){var n,r=t.target,o=Qt.get(e);if(o){var a=o.timers.get(r);if(t.intersectionRatio>0){var i=Date.now(),s=Xt.get(r);if(!s||i-s.lastChecked>1e3){var c=r.ownerDocument.defaultView;s={isLarge:r.offsetHeight>c.innerHeight,lastChecked:i},Xt.set(r,s)}if(t.intersectionRatio>=.5||s.isLarge&&Ge(r)){var u,l=null===(u=o.elementConfigs)||void 0===u?void 0:u.get(r);if((null==l?void 0:l.multiple)&&l.blocked)return;if(!a){var f=r.ownerDocument.defaultView.setTimeout(function(){return _async_to_generator(function(){var t,n,a,i;return _ts_generator(this,function(s){switch(s.label){case 0:return Ge(r)?(null==(a=null===(t=o.elementConfigs)||void 0===t?void 0:t.get(r))?void 0:a.context)?[4,et(a.context,r,a.trigger)]:[3,2]:[3,3];case 1:s.sent(),s.label=2;case 2:(null==(i=null===(n=o.elementConfigs)||void 0===n?void 0:n.get(r))?void 0:i.multiple)?i.blocked=!0:function(e,t){var n=Qt.get(e);if(n){n.observer&&n.observer.unobserve(t);var r=n.timers.get(t);r&&(clearTimeout(r),n.timers.delete(t)),Xt.delete(t),Zt.delete(t)}}(e,r),s.label=3;case 3:return[2]}})})()},o.duration);o.timers.set(r,f)}return}}a&&(clearTimeout(a),o.timers.delete(r));var d=null===(n=o.elementConfigs)||void 0===n?void 0:n.get(r);(null==d?void 0:d.multiple)&&(d.blocked=!1)}},Fe=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{multiple:!1},r=e.settings.scope;if(r){var o,a=Qt.get(r);if((null==a?void 0:a.observer)&&t)a.elementConfigs||(a.elementConfigs=new WeakMap),a.elementConfigs.set(t,{multiple:null!==(o=n.multiple)&&void 0!==o&&o,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),a.observer.observe(t)}},Ke=function(e){if(e){var t=Qt.get(e);t&&(t.observer&&t.observer.disconnect(),Qt.delete(e))}},Ye=function(e,t,n,r,o,a,i){var s=e.elb,c=e.settings;if(d(t)&&t.startsWith("walker "))return s(t,n);if(f(t)){var l=t;if(!l.source&&c.scope){var p=c.scope.ownerDocument||c.scope,v=p.defaultView;l.source=$e(v,p)}return!l.globals&&c.scope&&(l.globals=Ie(c.prefix,c.scope)),s(l)}var _,g=_sliced_to_array(String(f(t)?t.name:t).split(" "),1)[0],h=f(n)?n:{},y={},b=!1;if(u(n)&&(_=n,b=!0),u(o)?_=o:f(o)&&Object.keys(o).length&&(y=o),_){var m=Me(c.prefix||"data-elb",_).find(function(e){return e.entity===g});m&&(b&&(h=m.data),m.context&&(y=m.context))}var w=c.scope?c.scope.ownerDocument||c.scope:void 0,k=null==w?void 0:w.defaultView;"page"===g&&k&&(h.id=h.id||k.location.pathname);var j=Ie(c.prefix,c.scope);return s({name:String(t||""),data:h,context:y,globals:j,nested:a,custom:i,trigger:d(r)?r:"",source:k&&w?$e(k,w):void 0})},$e=function(e,t){return{type:"browser",platform:"web",url:e.location.href,referrer:t.referrer}},Je=function(e,t,n){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){return r=function(){e(t,n)},(o=n.scope)?("loading"!==(a=o.ownerDocument||o).readyState?r():a.addEventListener("DOMContentLoaded",r),[2]):(r(),[2])})})()},Xe=function(e,t){t.scope&&Ze(e,t)},Ze=function(e,t){var n=t.scope;n&&(n.addEventListener("click",k(function(t){rt.call(this,e,t)})),n.addEventListener("submit",k(function(t){ct.call(this,e,t)})))},Qe=function(e,t){var n=t.scope;en=[];var r=n;if(r){Ke(r),function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;Qt.has(e)||Qt.set(e,{observer:Ue(e),timers:new WeakMap,duration:t})}(r,1e3);var o=Ae(t.prefix,Ut.Commands.Action,!1);r!==(r.ownerDocument||r)&&tt(e,r,o,t),$t(r,"[".concat(o,"]"),function(n){tt(e,n,o,t)}),en.length&<(e,r,t)}},et=function(e,t,n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){return r=De(t,n,e.settings.prefix),[2,Promise.all(r.map(function(t){return Ye(e,_object_spread_props(_object_spread({name:"".concat(t.entity," ").concat(t.action)},t),{trigger:n}))}))]})})()},tt=function(e,t,n,r){var o=Ce(t,n);o&&Object.values(Te(o)).forEach(function(n){return n.forEach(function(n){switch(n.trigger){case tn.Hover:ot(e,t);break;case tn.Load:at(e,t);break;case tn.Pulse:it(e,t,n.triggerParams);break;case tn.Scroll:st(t,n.triggerParams);break;case tn.Impression:Fe(e,t);break;case tn.Visible:Fe(e,t,{multiple:!0});break;case tn.Wait:ut(e,t,n.triggerParams)}})})},nt=function(e){var t,n=null===(t=e.composedPath)||void 0===t?void 0:t.call(e),r=(null==n?void 0:n.length)?n[0]:e.target;if(r&&"object"===(void 0===r?"undefined":_type_of(r))&&"tagName"in r)return r},rt=function(e,t){var n=nt(t);n&&et(e,n,tn.Click)},ot=function(e,t){t.addEventListener("mouseenter",k(function(t){var n=nt(t);n&&et(e,n,tn.Hover)}))},at=function(e,t){et(e,t,tn.Load)},it=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=t.ownerDocument;setInterval(function(){r.hidden||et(e,t,tn.Pulse)},parseInt(n||"")||15e3)},st=function(e){var t=parseInt((arguments.length>1&&void 0!==arguments[1]?arguments[1]:"")||"")||50;t<0||t>100||en.push([e,t])},ct=function(e,t){var n=nt(t);n&&et(e,n,tn.Submit)},ut=function(e,t){setTimeout(function(){return et(e,t,tn.Wait)},parseInt((arguments.length>2&&void 0!==arguments[2]?arguments[2]:"")||"")||15e3)},lt=function(e,t,n){var r=(t.ownerDocument||t).defaultView,o=function(e,t){return e.filter(function(e){var n=_sliced_to_array(e,2),o=n[0],a=n[1],i=r.scrollY+r.innerHeight,s=o.offsetTop;if(i<s)return!0;var c=o.clientHeight;return!(100*(1-(s+c-i)/(c||1))>=a)||(et(t,o,tn.Scroll),!1)})};Jt||(Jt=function(e){var t=h(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,1e3).wait,n=null;return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];if(null===n)return n=setTimeout(function(){n=null},t),e.apply(void 0,_to_consumable_array(o))}}(function(){en=o.call(t,en,e)}),t.addEventListener("scroll",Jt))},ft=function(e,t,n,r,o){var a=_to_consumable_array(n),i=new Set;a.forEach(function(n,a){var s=dt(n);if(s){var c=s[0];!f(c)&&d(c)&&c.startsWith("walker ")&&(i.add(a),pt(e,t,s,r,o))}});var s=_to_consumable_array(i).sort(function(e,t){return t-e}),c=!0,u=!1,l=void 0;try{for(var p,v=s[Symbol.iterator]();!(c=(p=v.next()).done);c=!0){var _=p.value;n.splice(_,1)}}catch(e){u=!0,l=e}finally{try{c||null==v.return||v.return()}finally{if(u)throw l}}null==o||o.debug("drainWalkerCommands done",{consumed:i.size,remaining:n.length})},dt=function(e){var t=vt(e)?_to_consumable_array(Array.from(e)):_t(e)?Array.from(e):[e];if(!Array.isArray(t)||0===t.length)return null;if(1===t.length&&!t[0])return null;var n=t[0];return f(n)&&0===Object.keys(n).length||!f(n)&&d(n)&&""===n.trim()?null:t},pt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data-elb",n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;k(function(){if(Array.isArray(n)){var a=_to_array(n),i=a[0],s=a.slice(1);if(!i||d(i)&&""===i.trim())return void(null==o||o.debug("pushCommand skipped (empty/invalid action)",{item:n}));if(d(i)&&i.startsWith("walker "))return null==o||o.debug("pushCommand walker command",{action:i,data:s[0]}),void e(i,s[0]);null==o||o.debug("pushCommand event (translated)",{action:i,rest:s}),Ye.apply(void 0,[{elb:e,settings:{prefix:t,scope:r,pageview:!1,elb:"",elbLayer:!1}},i].concat(_to_consumable_array(s)))}else if(n&&"object"===(void 0===n?"undefined":_type_of(n))){if(0===Object.keys(n).length)return void(null==o||o.debug("pushCommand skipped (empty object)"));null==o||o.debug("pushCommand object event",{item:n}),e(n)}},function(e){null==o||o.warn("pushCommand failed",{error:e,item:n})})()},vt=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"[object Arguments]"===Object.prototype.toString.call(e)},_t=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length},gt=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).prefix||"data-elb";return function(t){var n=void 0,r=t,o={},a={},i={},s={},u={},l={};function f(e){return Object.entries(e).map(function(e){var t=_sliced_to_array(e,2),n=t[0],r=t[1];return"".concat(n,":").concat(function(e){if(!c(e)||null===e)return"undefined";var t=String(e);return(t=(t=(t=t.replace(/\\/g,"\\\\")).replace(/;/g,"\\;")).replace(/:/g,"\\:")).replace(/'/g,"\\'")}(r))}).join(";")}var p={entity:function(e){return n=e,r=e,p},data:function(e,t){var n=null!=r?r:"";return o[n]||(o[n]={}),d(e)?o[n][e]=t:Object.assign(o[n],e),p},action:function(e,t){if(d(e))if(c(t))a[e]=t;else if(e.includes(":")){var n=_sliced_to_array(e.split(":",2),2),r=n[0],o=n[1];a[r]=o}else a[e]=e;else Object.assign(a,e);return p},actions:function(e,t){if(d(e))if(c(t))i[e]=t;else if(e.includes(":")){var n=_sliced_to_array(e.split(":",2),2),r=n[0],o=n[1];i[r]=o}else i[e]=e;else Object.assign(i,e);return p},context:function(e,t){return d(e)?s[e]=t:Object.assign(s,e),p},globals:function(e,t){return d(e)?u[e]=t:Object.assign(u,e),p},link:function(e,t){return d(e)?l[e]=t:Object.assign(l,e),p},get:function(){var t={};return n&&(t[e]=n),Object.entries(o).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];if(Object.keys(a).length>0){var i=o?"".concat(e,"-").concat(o):"".concat(e,"-");t[i]=f(a)}}),Object.keys(a).length>0&&(t["".concat(e,"action")]=f(a)),Object.keys(i).length>0&&(t["".concat(e,"actions")]=f(i)),Object.keys(s).length>0&&(t["".concat(e,"context")]=f(s)),Object.keys(u).length>0&&(t["".concat(e,"globals")]=f(u)),Object.keys(l).length>0&&(t["".concat(e,"link")]=f(l)),t}};return p}},ht=Object.defineProperty,yt=Object.getOwnPropertyDescriptor,bt=Object.getOwnPropertyNames,mt=Object.prototype.hasOwnProperty,wt=function(e,t){for(var n in t)ht(e,n,{get:t[n],enumerable:!0})},kt={};wt(kt,{SourceBrowser:function(){return nn},createTagger:function(){return gt},default:function(){return kn},examples:function(){return rn},getAllEvents:function(){return qe},getElbAttributeName:function(){return Ae},getElbValues:function(){return Pe},getEvents:function(){return De},getGlobals:function(){return Ie},sourceBrowser:function(){return wn}});var jt=Object.defineProperty,xt=function(e,t){for(var n in t)jt(e,n,{get:t[n],enumerable:!0})};xt({},{stepId:function(){return e}});xt({},{getDestination:function(){return t}});xt({},{Level:function(){return St}});var Ot,St=((Ot=St||{})[Ot.ERROR=0]="ERROR",Ot[Ot.WARN=1]="WARN",Ot[Ot.INFO=2]="INFO",Ot[Ot.DEBUG=3]="DEBUG",Ot);xt({},{getTransformer:function(){return n}});xt({},{getSource:function(){return r}});xt({},{getStore:function(){return o}});var Ct={merge:!0,shallow:!0,extend:!0};function Et(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]=Et(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(Et(e,t))}),a}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){var i=e;return new RegExp(i.source,i.flags)}return e}function At(e){for(var t=arguments.length>2?arguments[2]:void 0,n=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),r=e,o=0;o<n.length;o++){var a=n[o];if("*"===a&&s(r)){var i=n.slice(o+1).join("."),u=[],l=!0,d=!1,p=void 0;try{for(var v,_=r[Symbol.iterator]();!(l=(v=_.next()).done);l=!0){var g=At(v.value,i,t);u.push(g)}}catch(e){d=!0,p=e}finally{try{l||null==_.return||_.return()}finally{if(d)throw p}}return u}if(void 0===(r=f(r)||s(r)?r[a]:void 0))break}return c(r)?r:t}var Pt={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}}},qt=function(e,t,n,r){var o="".concat(St[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(n).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(o,t,n):i(o,t)};function Dt(e){var t=e.level,n=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=t){var i=b(r,a);n?n(e,i.message,i.context,o,qt):qt(e,i.message,i.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=b(e,t);throw n?n(0,r.message,r.context,o,qt):qt(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 Dt({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function It(e){return function(e){return"boolean"==typeof e}(e)||d(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!c(e)||s(e)&&e.every(It)||f(e)&&Object.values(e).every(It)}var Tt=function(){function e(t,n){var r;return _class_call_check(this,e),(r=_call_super(this,e,[t,n])).name="FatalError",Object.setPrototypeOf(r,e.prototype),r}return _inherits(e,_wrap_native_super(Error)),e}();function Mt(e,t,n){return _async_to_generator(function(){return _ts_generator(this,function(r){return[2,(s(t)?t:[t]).reduce(function(t,r){return _async_to_generator(function(){var o,a,i,u,l,f,p,v,g,h,y,b,m,k,x,S,C,E,A,P,q,D;return _ts_generator(this,function(I){switch(I.label){case 0:return[4,t];case 1:return(o=I.sent())?[2,o]:(a=d(r)?{key:r}:r,Object.keys(a).length?(i=a.condition,u=a.consent,l=a.fn,f=a.key,p=a.loop,v=a.map,g=a.set,h=a.validate,y=a.value,b=_object_spread_props(_object_spread({},n),{mapping:r}),(m=i)?[4,j(i,function(e){if(_instanceof(e,Tt))throw e;return b.logger.error("mapping condition failed",{event:b.event,error:e}),!1})(e,b)]:[3,3]):[2]);case 2:m=!I.sent(),I.label=3;case 3:return m?[2]:u&&!_(u,b.consent)?[2,y]:(k=c(y)?y:e,l?[4,j(l,function(e){if(_instanceof(e,Tt))throw e;b.logger.error("mapping fn failed",{event:b.event,error:e})})(e,b)]:[3,5]);case 4:k=I.sent(),I.label=5;case 5:return f&&(k=At(e,f,y)),p?(x=_sliced_to_array(p,2),S=x[0],C=x[1],"this"!==S?[3,6]:(A=[e],[3,8])):[3,11];case 6:return[4,O(e,S,b)];case 7:A=I.sent(),I.label=8;case 8:return s(E=A)?[4,Promise.all(E.map(function(e){return O(e,C,b)}))]:[3,10];case 9:k=I.sent().filter(c),I.label=10;case 10:return[3,17];case 11:return v?[4,Object.entries(v).reduce(function(t,n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];return _async_to_generator(function(){var n,r;return _ts_generator(this,function(i){switch(i.label){case 0:return[4,t];case 1:return n=i.sent(),[4,O(e,a,b)];case 2:return r=i.sent(),[2,(c(r)&&(n[o]=r),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return k=I.sent(),[3,16];case 13:return(P=g)?[4,Promise.all(g.map(function(t){return Mt(e,t,b)}))]:[3,15];case 14:P=k=I.sent(),I.label=15;case 15:I.label=16;case 16:I.label=17;case 17:return(q=h)?[4,j(h,function(e){if(_instanceof(e,Tt))throw e;return b.logger.error("mapping validate failed",{event:b.event,error:e}),!1})(k,b)]:[3,19];case 18:q=!I.sent(),I.label=19;case 19:return q&&(k=void 0),D=w(k),[2,c(D)?D:w(y)]}})})()},Promise.resolve(void 0))]})})()}function Lt(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var t=e.and.map(Lt);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(Lt);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=At(e,t),r=a(n);return o?!r:r}}(e)}function Rt(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(function(e){return"object"==(void 0===(t=e)?"undefined":_type_of(t))&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"one"in t||"many"in t);var t})}(e))return Rt({one:e});if(e.every(function(e){return"string"==typeof e}))return{type:"chain",value:e};var t=[],n=!0,r=!1,o=void 0;try{for(var a,i=e[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=Rt(a.value);void 0!==s&&t.push(s)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}if(0===t.length)return;return{type:"sequence",value:t}}var c=e;if("next"in c&&void 0!==c.next)return c.match?{type:"gate",match:Lt(c.match),next:Rt(c.next)}:Rt(c.next);if("one"in c&&c.one){var u=A(c.one);return c.match?{type:"gate",match:Lt(c.match),next:{type:"one",routes:u}}:{type:"one",routes:u}}if("many"in c&&c.many){var l=A(c.many);return c.match?{type:"gate",match:Lt(c.match),next:{type:"many",routes:l}}:{type:"many",routes:l}}return c.match?{type:"gate",match:Lt(c.match)}:void 0}}var Nt=new WeakMap;function Wt(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;if("gate"===e.type){if(!e.match(t))return;return Wt(e.next,t)}if("sequence"===e.type){var n=[],r=!0,o=!1,a=void 0;try{for(var i,s=e.value[Symbol.iterator]();!(r=(i=s.next()).done);r=!0){var c,u=Wt(i.value,t);void 0!==u&&(Array.isArray(u)?(c=n).push.apply(c,_to_consumable_array(u)):n.push(u))}}catch(e){o=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return n.length>0?n:void 0}if("many"===e.type){var l=[],f=!0,d=!1,p=void 0;try{for(var v,_=e.routes[Symbol.iterator]();!(f=(v=_.next()).done);f=!0){var g,h=v.value;if(h.match(t)){var y=Wt(h.next,t);void 0!==y&&(Array.isArray(y)?(g=l).push.apply(g,_to_consumable_array(y)):l.push(y))}}}catch(e){d=!0,p=e}finally{try{f||null==_.return||_.return()}finally{if(d)throw p}}return l.length>0?l:void 0}var b=!0,m=!1,w=void 0;try{for(var k,j=e.routes[Symbol.iterator]();!(b=(k=j.next()).done);b=!0){var x=k.value;if(x.match(t))return Wt(x.next,t)}}catch(e){m=!0,w=e}finally{try{b||null==j.return||j.return()}finally{if(m)throw w}}}}var Ht={Source:["code","package","import","before","next","cache"],Transformer:["code","package","import","before","next","cache","mapping"],Destination:["code","package","import","before","next","cache"],Store:["code","package","import","cache"]},zt=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],Bt={Source:["primary"],Transformer:[],Destination:[],Store:[]},Gt=/^[A-Za-z_$][A-Za-z0-9_$]*$/,Ut={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 Vt(e,t,n,r,o,i,s){return _async_to_generator(function(){var c,u,l,f,d,p,v,_,g,h,y;return _ts_generator(this,function(b){switch(b.label){case 0:o||(o=a(null!==(c=n[0])&&void 0!==c?c:"chain")),s&&o._meta&&(o._meta.chainPath=s),u=r,l=i,f=!0,d=!1,p=void 0,b.label=1;case 1:b.trys.push([1,6,7,8]),v=function(){var r,a,i,c,f,d,p,v,_,h,y,b,m,w,k,x,O,S,C,E,A,M,N,G,U,V,F,K,Y,$,J,X,Z,Q,ee,te,ne,re,oe,ae,ie,se,ce,ue,le,fe;return _ts_generator(this,function(de){switch(de.label){case 0:return r=g.value,(p=t[r])?o&&o._meta&&o._meta.path.length>256?[2,{v:(e.logger.error("Max path length exceeded at ".concat(r)),{event:null,respond:l})}]:(o&&o._meta&&(o._meta.hops++,o._meta.path.push(r)),[4,j(H,function(t){if(_instanceof(t,Tt))throw t;return e.status.failed++,e.logger.scope("transformer:".concat(p.type||"unknown")).error("transformer init failed",{transformer:r,error:t}),!1})(e,p,r)]):(e.logger.warn("Transformer not found: ".concat(r)),[2,"continue"]);case 1:return de.sent()?s&&void 0!==(null===(i=p.config)||void 0===i||null===(a=i.chainMocks)||void 0===a?void 0:a[s])?(v=p.config.chainMocks[s],e.logger.scope("transformer:".concat(p.type||"unknown")).debug("chainMock",{chain:s}),u=v,[2,"continue"]):void 0!==(null===(c=p.config)||void 0===c?void 0:c.mock)?(e.logger.scope("transformer:".concat(p.type||"unknown")).debug("mock"),u=p.config.mock,[2,"continue"]):(null===(f=p.config)||void 0===f?void 0:f.disabled)?[2,"continue"]:(_=null===(d=p.config)||void 0===d?void 0:d.cache,h=_?D(_):void 0,y=h?L(h,e):void 0,b=void 0,h&&y?(m=q(o,u),[4,I(h,y,m)]):[3,3]):[2,{v:{event:null,respond:l}}];case 2:if("HIT"===(null==(w=de.sent())?void 0:w.status)&&w.value)return u=w.value,h.stop?[2,{v:{event:u,respond:l,stopped:!0}}]:[2,"continue"];"MISS"===(null==w?void 0:w.status)&&(b={key:w.key,ttl:w.rule.ttl}),de.label=3;case 3:return(k=p.config.before)?1!==(x=P(k,q(o,u))).length?[3,6]:(O=W(x[0],R(t))).length>0?[4,Vt(e,t,O,u,o,l,s)]:[3,5]:[3,9];case 4:if(null===(E=de.sent()).event)return[2,{v:{event:null,respond:null!==(S=E.respond)&&void 0!==S?S:l}}];if(E.stopped)return[2,{v:{event:Array.isArray(E.event)?E.event[0]:E.event,respond:null!==(C=E.respond)&&void 0!==C?C:l,stopped:!0}}];E.respond&&(l=E.respond),u=Array.isArray(E.event)?E.event[0]:E.event,de.label=5;case 5:return[3,9];case 6:return x.length>1?[4,Promise.all(x.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),u,B(o,n),void 0,s)}))]:[3,8];case 7:de.sent(),de.label=8;case 8:de.label=9;case 9:return[4,j(z,function(t){return e.logger.scope("transformer:".concat(p.type||"unknown")).error("Push failed",{error:t}),!1})(e,p,r,u,o,l)];case 10:return!1===(A=de.sent())?[2,{v:{event:null,respond:l}}]:Array.isArray(A)?(M=n.slice(n.indexOf(r)+1),[4,Promise.all(A.map(function(n){return _async_to_generator(function(){var r,a,i,c;return _ts_generator(this,function(f){switch(f.label){case 0:return r=n.event||u,a=B(o,"unknown"),n.next?0===(i=P(n.next,q(a,r))).length?[2,{event:r,respond:l}]:1===i.length?[2,(c=W(i[0],R(t))).length>0?Vt(e,t,c,r,a,l,s):{event:r,respond:l}]:[4,Promise.all(i.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),r,B(a,n),void 0,s)}))]:[3,2];case 1:return[2,f.sent().map(function(e){return{event:e.event,respond:void 0}})];case 2:return[2,M.length>0?Vt(e,t,M,r,a,l,s):{event:r,respond:l}]}})})()}))]):[3,12];case 11:N=de.sent(),G=l,U=[],V=!0,F=!1,K=void 0;try{for(Y=N.flat()[Symbol.iterator]();!(V=($=Y.next()).done);V=!0)if(null!==(J=$.value))if(J&&"object"==(void 0===J?"undefined":_type_of(J))&&"event"in J){if((Z=J).respond&&(G=Z.respond),null===Z.event)continue;Array.isArray(Z.event)?(X=U).push.apply(X,_to_consumable_array(Z.event)):U.push(Z.event)}else U.push(J)}catch(e){F=!0,K=e}finally{try{V||null==Y.return||Y.return()}finally{if(F)throw K}}return[2,{v:0===U.length?{event:null,respond:G}:1===U.length?{event:U[0],respond:G}:{event:U,respond:G}}];case 12:return A&&"object"==(void 0===A?"undefined":_type_of(A))?(Q=A.event,ee=A.respond,te=A.next,ee&&(l=ee),void 0===te?[3,14]:0===(ne=P(te,q(o,u))).length?(Q&&(u=Q),[2,"continue"]):1===ne.length?[2,{v:(re=W(ne[0],R(t))).length>0?Vt(e,t,re,Q||u,o,l,s):(e.logger.warn("Branch target not found: ".concat(JSON.stringify(te))),{event:null,respond:l})}]:(oe={},[4,Promise.all(ne.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),Q||u,B(o,n),void 0,s)}))])):[3,15];case 13:return[2,(oe.v=(de.sent(),{event:null,respond:void 0}),oe)];case 14:Q&&(u=Q),de.label=15;case 15:return b&&y&&T(y,b.key,u,b.ttl),ae=p.config.next,ie="string"==typeof ae||Array.isArray(ae)&&ae.every(function(e){return"string"==typeof e}),se=void 0!==ae&&!ie,A&&("object"!=(void 0===A?"undefined":_type_of(A))||A.next)||!se?[3,19]:1===(ce=P(p.config.next,q(o,u))).length?[2,{v:(ue=W(ce[0],R(t))).length>0?Vt(e,t,ue,u,o,l,s):{event:u,respond:l}}]:(le={},ce.length>1?[4,Promise.all(ce.map(function(n){return j(Vt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,W(n,R(t)),u,B(o,n),void 0,s)}))]:[3,17]);case 16:return de.sent(),fe={event:null,respond:void 0},[3,18];case 17:fe={event:u,respond:l},de.label=18;case 18:return[2,(le.v=fe,le)];case 19:return[2]}})},_=n[Symbol.iterator](),b.label=2;case 2:return(f=(g=_.next()).done)?[3,5]:[5,_ts_values(v())];case 3:if("object"===_type_of(h=b.sent()))return[2,h.v];b.label=4;case 4:return f=!0,[3,2];case 5:return[3,8];case 6:return y=b.sent(),d=!0,p=y,[3,8];case 7:try{f||null==_.return||_.return()}finally{if(d)throw p}return[7];case 8:return[2,{event:u,respond:l}]}})})()}var Ft=new WeakMap,Kt=Object.freeze({batched:!0});function Yt(e,t,n,r){var o=Ce(t,Ae(e));if(!o||r&&!r[o])return null;var a=[t],s="[".concat(Ae(e,o),"],[").concat(Ae(e,""),"]"),c=Ae(e,Ut.Commands.Link,!1),u={},l=[],f=_sliced_to_array(Re(n||t,s,e,o),2),d=f[0],p=f[1];$t(t,"[".concat(c,"]"),function(n){var r=_sliced_to_array(ze(Ce(n,c)),2),o=r[0];"parent"===r[1]&&$t(t.ownerDocument.body,"[".concat(c,'="').concat(o,':child"]'),function(t){a.push(t);var n=Yt(e,t);n&&l.push(n)})});var v=[];a.forEach(function(e){e.matches(s)&&v.push(e),$t(e,s,function(e){return v.push(e)})});var _={};return v.forEach(function(t){_=i(_,Pe(e,t,"")),u=i(u,Pe(e,t,o))}),u=i(i(_,u),d),a.forEach(function(t){$t(t,"[".concat(Ae(e),"]"),function(t){var n=Yt(e,t);n&&l.push(n)})}),{entity:o,data:u,context:p,nested:l}}function $t(e,t,n){e.querySelectorAll(t).forEach(n),_instanceof(e,(e.ownerDocument||e).defaultView.Element)&&e.shadowRoot&&$t(e.shadowRoot,t,n),e.querySelectorAll("*").forEach(function(e){e.shadowRoot&&$t(e.shadowRoot,t,n)})}var Jt,Xt=new WeakMap,Zt=new WeakMap,Qt=new WeakMap,en=[],tn={Click:"click",Custom:"custom",Hover:"hover",Load:"load",Pulse:"pulse",Scroll:"scroll",Submit:"submit",Impression:"impression",Visible:"visible",Wait:"wait"},nn={},rn={};wt(rn,{createTrigger:function(){return bn},env:function(){return on},step:function(){return ln},trigger:function(){return mn}});var on={};wt(on,{push:function(){return un}});var an=function(){},sn=function(){return function(){return Promise.resolve({ok:!0})}},cn={error:an,warn:an,info:an,debug:an,throw:function(e){throw"string"==typeof e?new Error(e):e},json:an,scope:function(){return cn}},un={get push(){return sn()},get command(){return sn()},get elb(){return sn()},get window(){return{addEventListener:an,removeEventListener:an,location:{href:"https://example.com/page",pathname:"/page",search:"?query=test",hash:"#section",host:"example.com",hostname:"example.com",origin:"https://example.com",protocol:"https:"},document:{},navigator:{language:"en-US",userAgent:"Mozilla/5.0 (Test)"},screen:{width:1920,height:1080},innerWidth:1920,innerHeight:1080,pageXOffset:0,pageYOffset:0,scrollX:0,scrollY:0}},get document(){return{addEventListener:an,removeEventListener:an,querySelector:an,querySelectorAll:function(){return[]},getElementById:an,getElementsByClassName:function(){return[]},getElementsByTagName:function(){return[]},createElement:function(){return{setAttribute:an,getAttribute:an,addEventListener:an,removeEventListener:an}},body:{appendChild:an,removeChild:an},documentElement:{scrollTop:0,scrollLeft:0},readyState:"complete",title:"Test Page",referrer:"",cookie:""}},logger:cn},ln={};wt(ln,{clickEvent:function(){return pn},contextAndGlobals:function(){return yn},dataAttributeTypes:function(){return hn},impressionEvent:function(){return _n},nestedEntities:function(){return gn},pageView:function(){return dn},submitEvent:function(){return vn}});var fn,dn={title:"Page view",description:"A page load trigger captures the current URL, title, and referrer as a walker page view event.",trigger:{type:"load",options:{url:"https://example.com/docs",title:"Documentation",referrer:"https://example.com/"}},in:"",out:[["elb",{name:"page view",data:{domain:"example.com",title:"Documentation",referrer:"https://example.com/",id:"/docs"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/docs",referrer:"https://example.com/"}}]]},pn={title:"Click event",description:"A button click with walker data attributes is captured as an entity action event with the mapped label data.",trigger:{type:"click",options:"button"},in:'<button data-elb="cta" data-elb-cta="label:Sign Up" data-elbaction="click:click">Sign Up</button>',out:[["elb",{name:"cta click",entity:"cta",action:"click",data:{label:"Sign Up"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},vn={title:"Submit event",description:"A form submit with walker data attributes produces a signup complete event carrying the selected plan.",trigger:{type:"submit",options:"form"},in:'<form data-elb="signup" data-elb-signup="plan:premium" data-elbaction="submit:complete"></form>',out:[["elb",{name:"signup complete",entity:"signup",action:"complete",data:{plan:"premium"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"submit"}]]},_n={title:"Impression event",description:"An intersection observer impression on a div with walker attributes emits a banner view event.",trigger:{type:"impression",options:"div"},in:'<div data-elb="banner" data-elb-banner="type:promotional;position:sidebar" data-elbaction="impression:view"></div>',out:[["elb",{name:"banner view",entity:"banner",action:"view",data:{type:"promotional",position:"sidebar"},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"impression"}]]},gn={title:"Nested entities",description:"A page load produces a page view plus a product view whose nested size entity is captured on the product event.",trigger:{type:"load"},in:'<div data-elb="product" data-elb-product="id:SKU-42;name:Sneakers" data-elbaction="load:view"><div data-elb="size" data-elb-size="selected:large;inStock:true"></div></div>',out:[["elb",{name:"page view",data:{domain:"example.com",title:"",referrer:"",id:"/"},context:{},globals:{},nested:void 0,custom:void 0,trigger:"load",source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""}}],["elb",{name:"product view",entity:"product",action:"view",data:{id:"SKU-42",name:"Sneakers"},context:{},globals:{},nested:[{entity:"size",data:{selected:"large",inStock:!0},context:{},nested:[]}],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"load"}]]},hn={title:"Data attribute types",description:"Walker data attributes parse scalar, boolean, and array values into typed fields on the emitted event.",trigger:{type:"click",options:"div"},in:'<div data-elb="product" data-elb-product="price:99.99;available:true;colors[]:red;colors[]:blue" data-elbaction="click:select"></div>',out:[["elb",{name:"product select",entity:"product",action:"select",data:{price:99.99,available:!0,colors:["red","blue"]},context:{},globals:{},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},yn={title:"Context and globals",description:"Walker context and globals attributes attach ambient metadata to events emitted by the browser source.",trigger:{type:"click",options:'[data-elb="cta"]'},in:'<div data-elbcontext="test:engagement_flow" data-elbglobals="language:en;plan:premium"><div data-elb="cta" data-elb-cta="label:Try Now" data-elbaction="click:signup">Try Now</div></div>',out:[["elb",{name:"cta signup",entity:"cta",action:"signup",data:{label:"Try Now"},context:{test:["engagement_flow",0]},globals:{language:"en",plan:"premium"},nested:[],source:{type:"browser",platform:"web",url:"https://example.com/",referrer:""},trigger:"click"}]]},bn=function(e,t){return _async_to_generator(function(){var n,r,o,a,i;return _ts_generator(this,function(s){return n=(null==t?void 0:t.sourceId)||"browser",o=document,a=window,i=function(t,i){return function(s){return _async_to_generator(function(){var c,u,l,f,d,p,v,_;return _ts_generator(this,function(g){switch(g.label){case 0:return"load"!==t&&t||((c="object"===(void 0===i?"undefined":_type_of(i))&&null!==i?i:{}).url&&(u=new URL(c.url),a.history.replaceState({},"",u.pathname)),c.title&&(o.title=c.title),c.referrer&&Object.defineProperty(o,"referrer",{value:c.referrer,configurable:!0})),s&&(o.body.innerHTML=s),r?[3,2]:[4,Se(_object_spread_props(_object_spread({},e),{run:null===(l=e.run)||void 0===l||l}))];case 1:f=g.sent(),r={collector:f.collector,elb:f.elb},g.label=2;case 2:return t&&"load"!==t?(p=(d="string"==typeof i?i:void 0)?o.querySelector(d):null)?(v=r.collector.sources[n])?(_={elb:r.elb,settings:v.config.settings},[4,et(_,p,t)]):(console.warn('Trigger: source "'.concat(n,'" not found in collector')),[2]):(console.warn('Trigger: element not found for selector "'.concat(d,'"')),[2]):[2];case 3:return g.sent(),[2]}})})()}},[2,{get flow(){return r},trigger:i}]})})()},mn=function(e,t){if(e&&"object"===(void 0===e?"undefined":_type_of(e))){var n=e,r=t.document,o=t.window,a=function(){var e,t;if(n.attributes){var o=(null===(t=n.element)||void 0===t||null===(e=t.match(/^(\w+)/))||void 0===e?void 0:e[1])||"div",a=r.createElement(o),i=!0,s=!1,c=void 0;try{for(var u,l=Object.entries(n.attributes)[Symbol.iterator]();!(i=(u=l.next()).done);i=!0){var f=_sliced_to_array(u.value,2),d=f[0],p=f[1];a.setAttribute(d,p)}}catch(e){s=!0,c=e}finally{try{i||null==l.return||l.return()}finally{if(s)throw c}}if(n.children){var v=!0,_=!1,g=void 0;try{for(var h,y=n.children[Symbol.iterator]();!(v=(h=y.next()).done);v=!0){var b=h.value,m=r.createElement("div"),w=!0,k=!1,j=void 0;try{for(var x,O=Object.entries(b)[Symbol.iterator]();!(w=(x=O.next()).done);w=!0){var S=_sliced_to_array(x.value,2),C=S[0],E=S[1];m.setAttribute(C,E)}}catch(e){k=!0,j=e}finally{try{w||null==O.return||O.return()}finally{if(k)throw j}}a.appendChild(m)}}catch(e){_=!0,g=e}finally{try{v||null==y.return||y.return()}finally{if(_)throw g}}}return r.body.appendChild(a),a}};if(!n.trigger||"load"===n.trigger){if(n.url){var i=new URL(n.url);o.history.replaceState({},"",i.pathname)}return n.title&&(r.title=n.title),n.referrer&&Object.defineProperty(r,"referrer",{value:n.referrer}),void a()}return function(){var e=a();if(e)switch(n.trigger){case"click":e.dispatchEvent(new MouseEvent("click",{bubbles:!0}));break;case"submit":e.dispatchEvent(new Event("submit",{bubbles:!0}));break;case"hover":e.dispatchEvent(new MouseEvent("mouseenter",{bubbles:!0}));break;case"scroll":o.dispatchEvent(new Event("scroll"))}}}},wn=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u,l,f,p,v,_,g;return _ts_generator(this,function(h){return t=e.config,n=e.env,r=e.logger,o=n.elb,n.command,a=n.window,i=n.document,s=(null==t?void 0:t.settings)||{},c=a||(void 0!==globalThis.window?globalThis.window:void 0),u=i||(void 0!==globalThis.document?globalThis.document:void 0),l=function(){return _object_spread({prefix:"data-elb",pageview:!0,elb:"elb",elbLayer:"elbLayer",scope:(arguments.length>1?arguments[1]:void 0)||void 0},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}(s,u),f={elb:o,settings:l},p=function(e){if(e.pageview){var t=_sliced_to_array(function(e,t){var n=t.ownerDocument||t,r=n.defaultView.location,o="page",a="body"in t?t.body:t,i=_sliced_to_array(Re(a,"[".concat(Ae(e,o),"]"),e,o),2),s=i[0],c=i[1];return s.domain=r.hostname,s.title=n.title,s.referrer=n.referrer,r.search&&(s.search=r.search),r.hash&&(s.hash=r.hash),[s,c]}(e.prefix||"data-elb",e.scope),2),n=t[0],r=t[1];Ye(f,"page view",n,"load",r)}},v=function(){return _async_to_generator(function(){return _ts_generator(this,function(e){switch(e.label){case 0:return c&&u?(!1!==l.elbLayer&&o&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.name||"elbLayer",r=t.window,o=t.logger;if(r){var a=r;a[n]||(a[n]=[]);var i,s=a[n],c=r.document;null==o||o.debug("initElbLayer enter",{layerName:n,queuedItems:s.length}),s.push=function(){for(var n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];if(vt(r[0])){var i=_to_consumable_array(Array.from(r[0])),s=Array.prototype.push.apply(this,[i]);return pt(e,t.prefix,i,c,o),s}var u=Array.prototype.push.apply(this,r);return r.forEach(function(n){pt(e,t.prefix,n,c,o)}),u},Array.isArray(s)&&s.length>0&&(null==o||o.debug("initElbLayer drain walker commands",{count:s.length}),ft(e,null!==(i=t.prefix)&&void 0!==i?i:"data-elb",s,c,o))}}(o,{name:d(l.elbLayer)?l.elbLayer:"elbLayer",prefix:l.prefix,window:c,logger:r}),[4,Je(Xe,f,l)]):[2];case 1:return e.sent(),d(l.elb)&&l.elb&&(c[l.elb]=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=_sliced_to_array(t,6),o=r[0],a=r[1],i=r[2],s=r[3],c=r[4],u=r[5];return Ye(f,o,a,i,s,c,u)}),[2]}})})()},_=function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){if("run"===e)u&&c&&(!function(e,t){t.scope&&Qe(e,t)}(f,l),function(e,t,n,r){var o=d(t.elbLayer)?t.elbLayer:"elbLayer",a=t.prefix||"data-elb",i=n[o];if(Array.isArray(i)){var s=n.document,c=-1;i.forEach(function(e,t){var n=dt(e);n&&d(n[0])&&"walker run"===n[0]&&(c=t)});for(var u=[],l=c+1;l<i.length;l++){var f=dt(i[l]);f&&u.push(f)}i.length=c+1,null==r||r.debug("drainNonWalkerEvents",{anchor:c,drained:u.length}),u.forEach(function(t){return pt(e,a,t,s,r)})}}(o,l,c,r),p(l));return[2]})})()},g=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=_sliced_to_array(t,6),o=r[0],a=r[1],i=r[2],s=r[3],c=r[4],u=r[5];return Ye(f,o,a,i,s,c,u)},[2,{type:"browser",config:{settings:l},push:g,on:_,init:v,destroy:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return u&&Ke(l.scope||u),[2]})})()}}]})})()},kn=wn;return fn=kt,function(e,t,n,r){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,a=!1,i=void 0;try{for(var s,c=function(){var o=s.value;mt.call(e,o)||o===n||ht(e,o,{get:function(){return t[o]},enumerable:!(r=yt(t,o))||r.enumerable})},u=bt(t)[Symbol.iterator]();!(o=(s=u.next()).done);o=!0)c()}catch(e){a=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(a)throw i}}}return e}(ht({},"__esModule",{value:!0}),fn)}();
|
package/dist/walkerOS.json
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walkeros/web-source-browser",
|
|
3
3
|
"description": "Browser DOM source for walkerOS",
|
|
4
|
-
"version": "4.1.0
|
|
4
|
+
"version": "4.1.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"module": "./dist/index.mjs",
|
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
"update": "npx npm-check-updates -u && npm update"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@walkeros/collector": "4.1.0
|
|
37
|
-
"@walkeros/core": "4.1.0
|
|
38
|
-
"@walkeros/web-core": "4.1.0
|
|
36
|
+
"@walkeros/collector": "4.1.0",
|
|
37
|
+
"@walkeros/core": "4.1.0",
|
|
38
|
+
"@walkeros/web-core": "4.1.0"
|
|
39
39
|
},
|
|
40
40
|
"repository": {
|
|
41
41
|
"url": "git+https://github.com/elbwalker/walkerOS.git",
|