@walkeros/web-source-browser 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.browser.js +1 -1
- package/dist/index.d.mts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.es5.js +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.browser.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Source=(()=>{var e,t,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s={};((e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})})(s,{SourceBrowser:()=>$e,createTagger:()=>Le,default:()=>We,getAllEvents:()=>M,getEvents:()=>T,getGlobals:()=>_,sourceBrowser:()=>Pe});var c=Object.getOwnPropertyNames,a=(e={"package.json"(e,t){t.exports={name:"@walkeros/core",description:"Core types and platform-agnostic utilities for walkerOS",version:"0.1.1",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/core"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","web analytics","product analytics","core","types","utils"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},function(){return t||(0,e[c(e)[0]])((t={exports:{}}).exports,t),t.exports}),l={Storage:{Local:"local",Session:"session",Cookie:"cookie"}},u={merge:!0,shallow:!0,extend:!0};function d(e,t={},n={}){n={...u,...n};const r=Object.entries(t).reduce((t,[r,o])=>{const i=e[r];return n.merge&&Array.isArray(i)&&Array.isArray(o)?t[r]=o.reduce((e,t)=>e.includes(t)?e:[...e,t],[...i]):(n.extend||r in e)&&(t[r]=o),t},{});return n.shallow?{...e,...r}:(Object.assign(e,r),e)}function f(e){return Array.isArray(e)}function g(e){return void 0!==e}function m(e){return e===document||e instanceof Element}function p(e){return"object"==typeof e&&null!==e&&!f(e)&&"[object Object]"===Object.prototype.toString.call(e)}function h(e){return"string"==typeof e}function b(e){if("true"===e)return!0;if("false"===e)return!1;const t=Number(e);return e==t&&""!==e?t:String(e)}var y,w,{version:k}=a();function v(e=6){let t="";for(let n=36;t.length<e;)t+=(Math.random()*n|0).toString(n);return t}function S(e,t,n){return function(...r){try{return e(...r)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function O(e){return e?e.trim().replace(/^'|'$/g,"").trim():""}var x=Object.getOwnPropertyNames,j=(y={"package.json"(e,t){t.exports={name:"@walkeros/collector",description:"Unified platform-agnostic collector for walkerOS",version:"0.1.1",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{"@walkeros/core":"0.1.1"},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/collector"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","collector","event processing"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},{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",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}});function C(e,t){return(e.getAttribute(t)||"").trim()}var E=function(){const e=window;(e.elbLayer=e.elbLayer||[]).push(arguments)};function A(e){const t=getComputedStyle(e);if("none"===t.display)return!1;if("visible"!==t.visibility)return!1;if(t.opacity&&Number(t.opacity)<.1)return!1;let n;const r=window.innerHeight,o=e.getBoundingClientRect(),i=o.height,s=o.y,c=s+i,a={x:o.x+e.offsetWidth/2,y:o.y+e.offsetHeight/2};if(i<=r){if(e.offsetWidth+o.width===0||e.offsetHeight+o.height===0)return!1;if(a.x<0)return!1;if(a.x>(document.documentElement.clientWidth||window.innerWidth))return!1;if(a.y<0)return!1;if(a.y>(document.documentElement.clientHeight||window.innerHeight))return!1;n=document.elementFromPoint(a.x,a.y)}else{const e=r/2;if(s<0&&c<e)return!1;if(c>r&&s>e)return!1;n=document.elementFromPoint(a.x,r/2)}if(n)do{if(n===e)return!0}while(n=n.parentElement);return!1}function $(e={}){const{cb:t,consent:n,collector:r,storage:o}=e,i=(null==r?void 0:r.push)||E;if(!n)return L((o?N:R)(e),r,t);{const r=function(e,t){let n;return(r,o)=>{if(g(n)&&n===(null==r?void 0:r.group))return;n=null==r?void 0:r.group;let i=()=>R(e);if(e.consent){(function(e,t={},n={}){const r={...t,...n},o={};let i=void 0===e;return Object.keys(r).forEach(t=>{r[t]&&(o[t]=!0,e&&e[t]&&(i=!0))}),!!i&&o})((f(e.consent)?e.consent:[e.consent]).reduce((e,t)=>({...e,[t]:!0}),{}),o)&&(i=()=>N(e))}return L(i(),r,t)}}(e,t);i("walker on","consent",(f(n)?n:[n]).reduce((e,t)=>({...e,[t]:r}),{}))}}function L(e,t,n){return!1===n?e:(n||(n=I),n(e,t,I))}var I=(e,t)=>{const n=(null==t?void 0:t.push)||E,r={};return e.id&&(r.session=e.id),e.storage&&e.device&&(r.device=e.device),n("walker user",r),e.isStart&&n({name:"session start",data:e}),e};function P(e,t=l.Storage.Session){var n;function r(e){try{return JSON.parse(e||"")}catch(t){let n=1,r="";return e&&(n=0,r=e),{e:n,v:r}}}let o,i;switch(t){case l.Storage.Cookie:o=decodeURIComponent((null==(n=document.cookie.split("; ").find(t=>t.startsWith(e+"=")))?void 0:n.split("=")[1])||"");break;case l.Storage.Local:i=r(window.localStorage.getItem(e));break;case l.Storage.Session:i=r(window.sessionStorage.getItem(e))}return i&&(o=i.v,0!=i.e&&i.e<Date.now()&&(function(e,t=l.Storage.Session){switch(t){case l.Storage.Cookie:W(e,"",0,t);break;case l.Storage.Local:window.localStorage.removeItem(e);break;case l.Storage.Session:window.sessionStorage.removeItem(e)}}(e,t),o="")),b(o||"")}function W(e,t,n=30,r=l.Storage.Session,o){const i={e:Date.now()+6e4*n,v:String(t)},s=JSON.stringify(i);switch(r){case l.Storage.Cookie:{t="object"==typeof t?JSON.stringify(t):t;let r=`${e}=${encodeURIComponent(t)}; max-age=${60*n}; path=/; SameSite=Lax; secure`;o&&(r+="; domain="+o),document.cookie=r;break}case l.Storage.Local:window.localStorage.setItem(e,s);break;case l.Storage.Session:window.sessionStorage.setItem(e,s)}return P(e,r)}function N(e={}){const t=Date.now(),{length:n=30,deviceKey:r="elbDeviceId",deviceStorage:o="local",deviceAge:i=30,sessionKey:s="elbSessionId",sessionStorage:c="local",pulse:a=!1}=e,l=R(e);let u=!1;const d=S((e,t,n)=>{let r=P(e,n);return r||(r=v(8),W(e,r,1440*t,n)),String(r)})(r,i,o),f=S((e,r)=>{const o=JSON.parse(String(P(e,r)));return a||(o.isNew=!1,l.marketing&&(Object.assign(o,l),u=!0),u||o.updated+6e4*n<t?(delete o.id,delete o.referrer,o.start=t,o.count++,o.runs=1,u=!0):o.runs++),o},()=>{u=!0})(s,c)||{},g={id:v(12),start:t,isNew:!0,count:1,runs:1},m=Object.assign(g,l,f,{device:d},{isStart:u,storage:!0,updated:t},e.data);return W(s,JSON.stringify(m),2*n,c),m}function R(e={}){let t=e.isStart||!1;const n={isStart:t,storage:!1};if(!1===e.isStart)return n;if(!t){const[e]=performance.getEntriesByType("navigation");if("navigate"!==e.type)return n}const r=new URL(e.url||window.location.href),o=e.referrer||document.referrer,i=o&&new URL(o).hostname,s=function(e,t={}){const n="clickId",r={},o={utm_campaign:"campaign",utm_content:"content",utm_medium:"medium",utm_source:"source",utm_term:"term",dclid:n,fbclid:n,gclid:n,msclkid:n,ttclid:n,twclid:n,igshid:n,sclid:n};return Object.entries(d(o,t)).forEach(([t,o])=>{const i=e.searchParams.get(t);i&&(o===n&&(o=t,r[n]=t),r[o]=i)}),r}(r,e.parameters);if(Object.keys(s).length&&(s.marketing||(s.marketing=!0),t=!0),!t){const n=e.domains||[];n.push(r.hostname),t=!n.includes(i)}return t?Object.assign({isStart:t,storage:!1,start:Date.now(),id:v(12),referrer:i},s,e.data):n}function D(e,t,n=!0){return e+(t=null!=t?(n?"-":"")+t:"")}function H(e,t,n,r=!0){return V(C(t,D(e,n,r))||"").reduce((e,n)=>{let[r,o]=Y(n);if(!r)return e;if(o||(r.endsWith(":")&&(r=r.slice(0,-1)),o=""),o.startsWith("#")){o=o.slice(1);try{let e=t[o];e||"selected"!==o||(e=t.options[t.selectedIndex].text),o=String(e)}catch(e){o=""}}return r.endsWith("[]")?(r=r.slice(0,-2),f(e[r])||(e[r]=[]),e[r].push(b(o))):e[r]=b(o),e},{})}function M(e,t=j.Commands.Prefix){var n;const r=e||("undefined"!=typeof document?document.body:void 0);if(!r)return[];let o=[];const i=j.Commands.Action,s=`[${D(t,i,!1)}]`,c=e=>{Object.keys(H(t,e,i,!1)).forEach(n=>{o=o.concat(T(e,n,t))})};return r!==("undefined"!=typeof document?document:null)&&(null==(n=r.matches)?void 0:n.call(r,s))&&c(r),K(r,s,c),o}function T(e,t,n=j.Commands.Prefix){const r=[],{actions:o,nearestOnly:i}=function(e,t,n){let r=t;for(;r;){const t=C(r,D(e,j.Commands.Actions,!1));if(t){const e=G(t);if(e[n])return{actions:e[n],nearestOnly:!1}}const o=C(r,D(e,j.Commands.Action,!1));if(o){const e=G(o);if(e[n]||"click"!==n)return{actions:e[n]||[],nearestOnly:!0}}r=q(e,r)}return{actions:[],nearestOnly:!1}}(n,e,t);return o.length?(o.forEach(o=>{const s=V(o.actionParams||"",",").reduce((e,t)=>(e[O(t)]=!0,e),{}),c=B(n,e,s,i);if(!c.length){const t="page",r=`[${D(n,t)}]`,[o,i]=F(e,r,n,t);c.push({entity:t,data:o,nested:[],context:i})}c.forEach(e=>{r.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:e.nested})})}),r):r}function _(e=j.Commands.Prefix,t=document){const n=D(e,j.Commands.Globals,!1);let r={};return K(t,`[${n}]`,t=>{r=d(r,H(e,t,j.Commands.Globals,!1))}),r}function U(e,t){const n=window.location,r="page",o=t===document?document.body:t,[i,s]=F(o,`[${D(e,r)}]`,e,r);return i.domain=n.hostname,i.title=document.title,i.referrer=document.referrer,n.search&&(i.search=n.search),n.hash&&(i.hash=n.hash),[i,s]}function G(e){const t={};return V(e).forEach(e=>{const[n,r]=Y(e),[o,i]=z(n);if(!o)return;let[s,c]=z(r||"");s=s||o,t[o]||(t[o]=[]),t[o].push({trigger:o,triggerParams:i,action:s,actionParams:c})}),t}function B(e,t,n,r=!1){const o=[];let i=t;for(n=0!==Object.keys(n||{}).length?n:void 0;i;){const s=J(e,i,t,n);if(s&&(o.push(s),r))break;i=q(e,i)}return o}function J(e,t,n,r){const o=C(t,D(e));if(!o||r&&!r[o])return null;const i=[t],s=`[${D(e,o)}],[${D(e,"")}]`,c=D(e,j.Commands.Link,!1);let a={};const l=[],[u,f]=F(n||t,s,e,o);K(t,`[${c}]`,t=>{const[n,r]=Y(C(t,c));"parent"===r&&K(document.body,`[${c}="${n}:child"]`,t=>{i.push(t);const n=J(e,t);n&&l.push(n)})});const g=[];i.forEach(e=>{e.matches(s)&&g.push(e),K(e,s,e=>g.push(e))});let m={};return g.forEach(t=>{m=d(m,H(e,t,"")),a=d(a,H(e,t,o))}),a=d(d(m,a),u),i.forEach(t=>{K(t,`[${D(e)}]`,t=>{const n=J(e,t);n&&l.push(n)})}),{entity:o,data:a,context:f,nested:l}}function q(e,t){const n=D(e,j.Commands.Link,!1);if(t.matches(`[${n}]`)){const[e,r]=Y(C(t,n));if("child"===r)return document.querySelector(`[${n}="${e}:parent"]`)}return!t.parentElement&&t.getRootNode&&t.getRootNode()instanceof ShadowRoot?t.getRootNode().host:t.parentElement}function F(e,t,n,r){let o={};const i={};let s=e;const c=`[${D(n,j.Commands.Context,!1)}]`;let a=0;for(;s;)s.matches(t)&&(o=d(H(n,s,""),o),o=d(H(n,s,r),o)),s.matches(c)&&(Object.entries(H(n,s,j.Commands.Context,!1)).forEach(([e,t])=>{t&&!i[e]&&(i[e]=[t,a])}),++a),s=q(n,s);return[o,i]}function K(e,t,n){e.querySelectorAll(t).forEach(n)}function V(e,t=";"){if(!e)return[];const n=new RegExp(`(?:[^${t}']+|'[^']*')+`,"ig");return e.match(n)||[]}function Y(e){const[t,n]=e.split(/:(.+)/,2);return[O(t),O(n)]}function z(e){const[t,n]=e.split("(",2);return[t,n?n.slice(0,-1):""]}var Q=new WeakMap,X=new WeakMap,Z=new WeakMap;function ee(e){const t=Date.now();let n=X.get(e);return(!n||t-n.lastChecked>500)&&(n={isVisible:A(e),lastChecked:t},X.set(e,n)),n.isVisible}function te(e){if(window.IntersectionObserver)return S(()=>new window.IntersectionObserver(t=>{t.forEach(t=>{!function(e,t){var n,r;const o=t.target,i=Z.get(e);if(!i)return;const s=i.timers.get(o);if(t.intersectionRatio>0){const r=Date.now();let c=Q.get(o);(!c||r-c.lastChecked>1e3)&&(c={isLarge:o.offsetHeight>window.innerHeight,lastChecked:r},Q.set(o,c));if(t.intersectionRatio>=.5||c.isLarge&&ee(o)){const t=null==(n=i.elementConfigs)?void 0:n.get(o);if((null==t?void 0:t.multiple)&&t.blocked)return;if(!s){const t=window.setTimeout(async()=>{var t,n;if(ee(o)){const r=null==(t=i.elementConfigs)?void 0:t.get(o);(null==r?void 0:r.context)&&await ke(r.context,o,r.trigger);const s=null==(n=i.elementConfigs)?void 0:n.get(o);(null==s?void 0:s.multiple)?s.blocked=!0:function(e,t){const n=Z.get(e);if(!n)return;n.observer&&n.observer.unobserve(t);const r=n.timers.get(t);r&&(clearTimeout(r),n.timers.delete(t)),Q.delete(t),X.delete(t)}(e,o)}},i.duration);i.timers.set(o,t)}return}}s&&(clearTimeout(s),i.timers.delete(o));const c=null==(r=i.elementConfigs)?void 0:r.get(o);(null==c?void 0:c.multiple)&&(c.blocked=!1)}(e,t)})},{rootMargin:"0px",threshold:[0,.5]}),()=>{})()}function ne(e,t,n={multiple:!1}){var r;const o=e.settings.scope||document,i=Z.get(o);(null==i?void 0:i.observer)&&t&&(i.elementConfigs||(i.elementConfigs=new WeakMap),i.elementConfigs.set(t,{multiple:null!=(r=n.multiple)&&r,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),i.observer.observe(t))}function re(e){if(!e)return;const t=Z.get(e);t&&(t.observer&&t.observer.disconnect(),Z.delete(e))}var oe=performance.now();function ie(e,t,n,r,o,i,s){const{elb:c,settings:a}=e;if(h(t)&&t.startsWith("walker ")){return c(t,n)}if(p(t)){const e=t;return e.source||(e.source=se()),c(e)}const[l]=String(p(t)?t.name:t).split(" ");let u,d=p(n)?n:{},f={},g=!1;if(m(n)&&(u=n,g=!0),m(o)?u=o:p(o)&&Object.keys(o).length&&(f=o),u){const e=B(a.prefix||"data-elb",u).find(e=>e.entity===l);e&&(g&&(d=e.data),f=e.context)}"page"===l&&(d.id=d.id||window.location.pathname);return c({name:String(t||""),data:d,context:f,nested:i,custom:s,trigger:h(r)?r:"",timing:Math.round((performance.now()-oe)/10)/100,source:se()})}function se(){return{type:"browser",id:window.location.href,previous_id:document.referrer}}var ce,ae=[],le="click",ue="hover",de="load",fe="pulse",ge="scroll",me="submit",pe="impression",he="visible",be="wait";function ye(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;if(!n)return;n.addEventListener("click",S(function(t){Se.call(this,e,t)})),n.addEventListener("submit",S(function(t){Oe.call(this,e,t)}))}(e,t)}function we(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;ae=[];const r=n||document;re(r),function(e,t=1e3){Z.has(e)||Z.set(e,{observer:te(e),timers:new WeakMap,duration:t})}(r,1e3);const o=D(t.prefix,j.Commands.Action,!1);r!==document&&ve(e,r,o,t);r.querySelectorAll(`[${o}]`).forEach(n=>{ve(e,n,o,t)}),ae.length&&function(e,t){const n=(e,t)=>e.filter(([e,n])=>{const r=window.scrollY+window.innerHeight,o=e.offsetTop;if(r<o)return!0;const i=e.clientHeight;return!(100*(1-(o+i-r)/(i||1))>=n)||(ke(t,e,ge),!1)});ce||(ce=function(e,t=1e3){let n=null;return function(...r){if(null===n)return n=setTimeout(()=>{n=null},t),e(...r)}}(function(){ae=n.call(t,ae,e)}),t.addEventListener("scroll",ce))}(e,r)}(e,t)}async function ke(e,t,n){const r=T(t,n,e.settings.prefix);return Promise.all(r.map(t=>ie(e,{name:`${t.entity} ${t.action}`,...t,trigger:n})))}function ve(e,t,n,r){const o=C(t,n);o&&Object.values(G(o)).forEach(n=>n.forEach(n=>{switch(n.trigger){case ue:!function(e,t){t.addEventListener("mouseenter",S(function(t){t.target instanceof Element&&ke(e,t.target,ue)}))}(e,t);break;case de:!function(e,t){ke(e,t,de)}(e,t);break;case fe:!function(e,t,n=""){setInterval(()=>{document.hidden||ke(e,t,fe)},parseInt(n||"")||15e3)}(e,t,n.triggerParams);break;case ge:!function(e,t=""){const n=parseInt(t||"")||50;if(n<0||n>100)return;ae.push([e,n])}(t,n.triggerParams);break;case pe:ne(e,t);break;case he:ne(e,t,{multiple:!0});break;case be:!function(e,t,n=""){setTimeout(()=>ke(e,t,be),parseInt(n||"")||15e3)}(e,t,n.triggerParams)}}))}function Se(e,t){ke(e,t.target,le)}function Oe(e,t){t.target&&ke(e,t.target,me)}function xe(e,t={}){const n=t.name||"elbLayer",r=t.window||("undefined"!=typeof window?window:void 0);if(!r)return;const o=r;o[n]||(o[n]=[]);const i=o[n];i.push=function(...n){if(Ee(n[0])){const r=[...Array.from(n[0])],o=Array.prototype.push.apply(this,[r]);return Ce(e,t.prefix,r),o}const r=Array.prototype.push.apply(this,n);return n.forEach(n=>{Ce(e,t.prefix,n)}),r},Array.isArray(i)&&i.length>0&&function(e,t="data-elb",n){je(e,t,n,!0),je(e,t,n,!1),n.length=0}(e,t.prefix,i)}function je(e,t,n,r){const o=[];let i=!0;n.forEach(e=>{const t=Ee(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;if(Array.isArray(t)&&1===t.length&&!t[0])return;const s=t[0],c=!p(s)&&h(s)&&s.startsWith("walker ");if(p(s)){if("object"==typeof s&&0===Object.keys(s).length)return}else{const e=Array.from(t);if(!h(e[0])||""===e[0].trim())return;const n="walker run";i&&e[0]===n&&(i=!1)}(r&&c||!r&&!c)&&o.push(t)}),o.forEach(n=>{Ce(e,t,n)})}function Ce(e,t="data-elb",n){S(()=>{if(Array.isArray(n)){const[r,...o]=n;if(!r||h(r)&&""===r.trim())return;if(h(r)&&r.startsWith("walker "))return void e(r,o[0]);ie({elb:e,settings:{prefix:t,scope:document,pageview:!1,session:!1,elb:"",elbLayer:!1}},r,...o)}else if(n&&"object"==typeof n){if(0===Object.keys(n).length)return;e(n)}},()=>{})()}function Ee(e){return null!=e&&"object"==typeof e&&"[object Arguments]"===Object.prototype.toString.call(e)}function Ae(e,t={}){return $({...t,collector:{push:e,group:void 0}})}var $e={};function Le(e={}){const t=e.prefix||"data-elb";return function(e){let n,r=e;const o={},i={},s={},c={},a={},l={};function u(e){return Object.entries(e).map(([e,t])=>`${e}:${function(e){if(!g(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,r=e,d),data(e,t){const n=null!=r?r:"";return o[n]||(o[n]={}),h(e)?o[n][e]=t:Object.assign(o[n],e),d},action(e,t){if(h(e))if(g(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(h(e))if(g(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)=>(h(e)?c[e]=t:Object.assign(c,e),d),globals:(e,t)=>(h(e)?a[e]=t:Object.assign(a,e),d),link:(e,t)=>(h(e)?l[e]=t:Object.assign(l,e),d),get(){const e={};return n&&(e[t]=n),Object.entries(o).forEach(([n,r])=>{if(Object.keys(r).length>0){e[n?`${t}-${n}`:`${t}-`]=u(r)}}),Object.keys(i).length>0&&(e[`${t}action`]=u(i)),Object.keys(s).length>0&&(e[`${t}actions`]=u(s)),Object.keys(c).length>0&&(e[`${t}context`]=u(c)),Object.keys(a).length>0&&(e[`${t}globals`]=u(a)),Object.keys(l).length>0&&(e[`${t}link`]=u(l)),e}};return d}}var Ie,Pe=async(e,t)=>{try{const n=t||{},{elb:r,window:o,document:i}=n;if(!r)throw new Error("Browser source requires elb function in environment");const s=function(e={},t){return{prefix:"data-elb",pageview:!0,session:!0,elb:"elb",elbLayer:"elbLayer",scope:t||void 0,...e}}((null==e?void 0:e.settings)||{},i),c={settings:s},a={elb:r,settings:s};if(i&&o){if(!1!==s.elbLayer&&xe(r,{name:h(s.elbLayer)?s.elbLayer:"elbLayer",prefix:s.prefix,window:o}),s.session){const e="boolean"==typeof s.session?{}:s.session;Ae(r,e)}await async function(e,t,n){const r=()=>{e(t,n)};"loading"!==document.readyState?r():document.addEventListener("DOMContentLoaded",r)}(ye,a,s);(()=>{if(we(a,s),s.pageview){const[e,t]=U(s.prefix||"data-elb",s.scope);ie(a,"page view",e,"load",t)}})(),h(s.elb)&&s.elb&&(o[s.elb]=(...e)=>{const[t,n,r,o,i,s]=e;return ie(a,t,n,r,o,i,s)})}return{type:"browser",config:c,push:(...e)=>{const[t,n,r,o,i,s]=e;return ie(a,t,n,r,o,i,s)},destroy:async()=>{i&&re(s.scope||i)},on:async(e,t)=>{switch(e){case"consent":if(s.session&&t){const e="boolean"==typeof s.session?{}:s.session;Ae(r,e)}break;case"session":case"ready":default:break;case"run":if(i&&o&&(we(a,s),s.pageview)){const[e,t]=U(s.prefix||"data-elb",s.scope);ie(a,"page view",e,"load",t)}}}}}catch(e){throw e}},We=Pe;return Ie=s,((e,t,s,c)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let a of o(t))i.call(e,a)||a===s||n(e,a,{get:()=>t[a],enumerable:!(c=r(t,a))||c.enumerable});return e})(n({},"__esModule",{value:!0}),Ie)})();
|
|
1
|
+
"use strict";var Source=(()=>{var e,t,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s={};((e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})})(s,{SourceBrowser:()=>$e,createTagger:()=>Le,default:()=>We,getAllEvents:()=>M,getElbAttributeName:()=>D,getElbValues:()=>H,getEvents:()=>T,getGlobals:()=>_,sourceBrowser:()=>Pe});var c=Object.getOwnPropertyNames,a=(e={"package.json"(e,t){t.exports={name:"@walkeros/core",description:"Core types and platform-agnostic utilities for walkerOS",version:"0.1.2",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/core"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","web analytics","product analytics","core","types","utils"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},function(){return t||(0,e[c(e)[0]])((t={exports:{}}).exports,t),t.exports}),l={Storage:{Local:"local",Session:"session",Cookie:"cookie"}},u={merge:!0,shallow:!0,extend:!0};function d(e,t={},n={}){n={...u,...n};const r=Object.entries(t).reduce((t,[r,o])=>{const i=e[r];return n.merge&&Array.isArray(i)&&Array.isArray(o)?t[r]=o.reduce((e,t)=>e.includes(t)?e:[...e,t],[...i]):(n.extend||r in e)&&(t[r]=o),t},{});return n.shallow?{...e,...r}:(Object.assign(e,r),e)}function f(e){return Array.isArray(e)}function g(e){return void 0!==e}function m(e){return e===document||e instanceof Element}function p(e){return"object"==typeof e&&null!==e&&!f(e)&&"[object Object]"===Object.prototype.toString.call(e)}function b(e){return"string"==typeof e}function h(e){if("true"===e)return!0;if("false"===e)return!1;const t=Number(e);return e==t&&""!==e?t:String(e)}var y,w,{version:k}=a();function v(e=6){let t="";for(let n=36;t.length<e;)t+=(Math.random()*n|0).toString(n);return t}function S(e,t,n){return function(...r){try{return e(...r)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function O(e){return e?e.trim().replace(/^'|'$/g,"").trim():""}var x=Object.getOwnPropertyNames,j=(y={"package.json"(e,t){t.exports={name:"@walkeros/collector",description:"Unified platform-agnostic collector for walkerOS",version:"0.1.2",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{"@walkeros/core":"0.1.2"},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/collector"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","collector","event processing"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},{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",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}});function C(e,t){return(e.getAttribute(t)||"").trim()}var E=function(){const e=window;(e.elbLayer=e.elbLayer||[]).push(arguments)};function A(e){const t=getComputedStyle(e);if("none"===t.display)return!1;if("visible"!==t.visibility)return!1;if(t.opacity&&Number(t.opacity)<.1)return!1;let n;const r=window.innerHeight,o=e.getBoundingClientRect(),i=o.height,s=o.y,c=s+i,a={x:o.x+e.offsetWidth/2,y:o.y+e.offsetHeight/2};if(i<=r){if(e.offsetWidth+o.width===0||e.offsetHeight+o.height===0)return!1;if(a.x<0)return!1;if(a.x>(document.documentElement.clientWidth||window.innerWidth))return!1;if(a.y<0)return!1;if(a.y>(document.documentElement.clientHeight||window.innerHeight))return!1;n=document.elementFromPoint(a.x,a.y)}else{const e=r/2;if(s<0&&c<e)return!1;if(c>r&&s>e)return!1;n=document.elementFromPoint(a.x,r/2)}if(n)do{if(n===e)return!0}while(n=n.parentElement);return!1}function $(e={}){const{cb:t,consent:n,collector:r,storage:o}=e,i=(null==r?void 0:r.push)||E;if(!n)return L((o?N:R)(e),r,t);{const r=function(e,t){let n;return(r,o)=>{if(g(n)&&n===(null==r?void 0:r.group))return;n=null==r?void 0:r.group;let i=()=>R(e);if(e.consent){(function(e,t={},n={}){const r={...t,...n},o={};let i=void 0===e;return Object.keys(r).forEach(t=>{r[t]&&(o[t]=!0,e&&e[t]&&(i=!0))}),!!i&&o})((f(e.consent)?e.consent:[e.consent]).reduce((e,t)=>({...e,[t]:!0}),{}),o)&&(i=()=>N(e))}return L(i(),r,t)}}(e,t);i("walker on","consent",(f(n)?n:[n]).reduce((e,t)=>({...e,[t]:r}),{}))}}function L(e,t,n){return!1===n?e:(n||(n=I),n(e,t,I))}var I=(e,t)=>{const n=(null==t?void 0:t.push)||E,r={};return e.id&&(r.session=e.id),e.storage&&e.device&&(r.device=e.device),n("walker user",r),e.isStart&&n({name:"session start",data:e}),e};function P(e,t=l.Storage.Session){var n;function r(e){try{return JSON.parse(e||"")}catch(t){let n=1,r="";return e&&(n=0,r=e),{e:n,v:r}}}let o,i;switch(t){case l.Storage.Cookie:o=decodeURIComponent((null==(n=document.cookie.split("; ").find(t=>t.startsWith(e+"=")))?void 0:n.split("=")[1])||"");break;case l.Storage.Local:i=r(window.localStorage.getItem(e));break;case l.Storage.Session:i=r(window.sessionStorage.getItem(e))}return i&&(o=i.v,0!=i.e&&i.e<Date.now()&&(function(e,t=l.Storage.Session){switch(t){case l.Storage.Cookie:W(e,"",0,t);break;case l.Storage.Local:window.localStorage.removeItem(e);break;case l.Storage.Session:window.sessionStorage.removeItem(e)}}(e,t),o="")),h(o||"")}function W(e,t,n=30,r=l.Storage.Session,o){const i={e:Date.now()+6e4*n,v:String(t)},s=JSON.stringify(i);switch(r){case l.Storage.Cookie:{t="object"==typeof t?JSON.stringify(t):t;let r=`${e}=${encodeURIComponent(t)}; max-age=${60*n}; path=/; SameSite=Lax; secure`;o&&(r+="; domain="+o),document.cookie=r;break}case l.Storage.Local:window.localStorage.setItem(e,s);break;case l.Storage.Session:window.sessionStorage.setItem(e,s)}return P(e,r)}function N(e={}){const t=Date.now(),{length:n=30,deviceKey:r="elbDeviceId",deviceStorage:o="local",deviceAge:i=30,sessionKey:s="elbSessionId",sessionStorage:c="local",pulse:a=!1}=e,l=R(e);let u=!1;const d=S((e,t,n)=>{let r=P(e,n);return r||(r=v(8),W(e,r,1440*t,n)),String(r)})(r,i,o),f=S((e,r)=>{const o=JSON.parse(String(P(e,r)));return a||(o.isNew=!1,l.marketing&&(Object.assign(o,l),u=!0),u||o.updated+6e4*n<t?(delete o.id,delete o.referrer,o.start=t,o.count++,o.runs=1,u=!0):o.runs++),o},()=>{u=!0})(s,c)||{},g={id:v(12),start:t,isNew:!0,count:1,runs:1},m=Object.assign(g,l,f,{device:d},{isStart:u,storage:!0,updated:t},e.data);return W(s,JSON.stringify(m),2*n,c),m}function R(e={}){let t=e.isStart||!1;const n={isStart:t,storage:!1};if(!1===e.isStart)return n;if(!t){const[e]=performance.getEntriesByType("navigation");if("navigate"!==e.type)return n}const r=new URL(e.url||window.location.href),o=e.referrer||document.referrer,i=o&&new URL(o).hostname,s=function(e,t={}){const n="clickId",r={},o={utm_campaign:"campaign",utm_content:"content",utm_medium:"medium",utm_source:"source",utm_term:"term",dclid:n,fbclid:n,gclid:n,msclkid:n,ttclid:n,twclid:n,igshid:n,sclid:n};return Object.entries(d(o,t)).forEach(([t,o])=>{const i=e.searchParams.get(t);i&&(o===n&&(o=t,r[n]=t),r[o]=i)}),r}(r,e.parameters);if(Object.keys(s).length&&(s.marketing||(s.marketing=!0),t=!0),!t){const n=e.domains||[];n.push(r.hostname),t=!n.includes(i)}return t?Object.assign({isStart:t,storage:!1,start:Date.now(),id:v(12),referrer:i},s,e.data):n}function D(e,t,n=!0){return e+(t=null!=t?(n?"-":"")+t:"")}function H(e,t,n,r=!0){return K(C(t,D(e,n,r))||"").reduce((e,n)=>{let[r,o]=Y(n);if(!r)return e;if(o||(r.endsWith(":")&&(r=r.slice(0,-1)),o=""),o.startsWith("#")){o=o.slice(1);try{let e=t[o];e||"selected"!==o||(e=t.options[t.selectedIndex].text),o=String(e)}catch(e){o=""}}return r.endsWith("[]")?(r=r.slice(0,-2),f(e[r])||(e[r]=[]),e[r].push(h(o))):e[r]=h(o),e},{})}function M(e,t=j.Commands.Prefix){var n;const r=e||("undefined"!=typeof document?document.body:void 0);if(!r)return[];let o=[];const i=j.Commands.Action,s=`[${D(t,i,!1)}]`,c=e=>{Object.keys(H(t,e,i,!1)).forEach(n=>{o=o.concat(T(e,n,t))})};return r!==("undefined"!=typeof document?document:null)&&(null==(n=r.matches)?void 0:n.call(r,s))&&c(r),F(r,s,c),o}function T(e,t,n=j.Commands.Prefix){const r=[],{actions:o,nearestOnly:i}=function(e,t,n){let r=t;for(;r;){const t=C(r,D(e,j.Commands.Actions,!1));if(t){const e=G(t);if(e[n])return{actions:e[n],nearestOnly:!1}}const o=C(r,D(e,j.Commands.Action,!1));if(o){const e=G(o);if(e[n]||"click"!==n)return{actions:e[n]||[],nearestOnly:!0}}r=q(e,r)}return{actions:[],nearestOnly:!1}}(n,e,t);return o.length?(o.forEach(o=>{const s=K(o.actionParams||"",",").reduce((e,t)=>(e[O(t)]=!0,e),{}),c=B(n,e,s,i);if(!c.length){const t="page",r=`[${D(n,t)}]`,[o,i]=V(e,r,n,t);c.push({entity:t,data:o,nested:[],context:i})}c.forEach(e=>{r.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:e.nested})})}),r):r}function _(e=j.Commands.Prefix,t=document){const n=D(e,j.Commands.Globals,!1);let r={};return F(t,`[${n}]`,t=>{r=d(r,H(e,t,j.Commands.Globals,!1))}),r}function U(e,t){const n=window.location,r="page",o=t===document?document.body:t,[i,s]=V(o,`[${D(e,r)}]`,e,r);return i.domain=n.hostname,i.title=document.title,i.referrer=document.referrer,n.search&&(i.search=n.search),n.hash&&(i.hash=n.hash),[i,s]}function G(e){const t={};return K(e).forEach(e=>{const[n,r]=Y(e),[o,i]=z(n);if(!o)return;let[s,c]=z(r||"");s=s||o,t[o]||(t[o]=[]),t[o].push({trigger:o,triggerParams:i,action:s,actionParams:c})}),t}function B(e,t,n,r=!1){const o=[];let i=t;for(n=0!==Object.keys(n||{}).length?n:void 0;i;){const s=J(e,i,t,n);if(s&&(o.push(s),r))break;i=q(e,i)}return o}function J(e,t,n,r){const o=C(t,D(e));if(!o||r&&!r[o])return null;const i=[t],s=`[${D(e,o)}],[${D(e,"")}]`,c=D(e,j.Commands.Link,!1);let a={};const l=[],[u,f]=V(n||t,s,e,o);F(t,`[${c}]`,t=>{const[n,r]=Y(C(t,c));"parent"===r&&F(document.body,`[${c}="${n}:child"]`,t=>{i.push(t);const n=J(e,t);n&&l.push(n)})});const g=[];i.forEach(e=>{e.matches(s)&&g.push(e),F(e,s,e=>g.push(e))});let m={};return g.forEach(t=>{m=d(m,H(e,t,"")),a=d(a,H(e,t,o))}),a=d(d(m,a),u),i.forEach(t=>{F(t,`[${D(e)}]`,t=>{const n=J(e,t);n&&l.push(n)})}),{entity:o,data:a,context:f,nested:l}}function q(e,t){const n=D(e,j.Commands.Link,!1);if(t.matches(`[${n}]`)){const[e,r]=Y(C(t,n));if("child"===r)return document.querySelector(`[${n}="${e}:parent"]`)}return!t.parentElement&&t.getRootNode&&t.getRootNode()instanceof ShadowRoot?t.getRootNode().host:t.parentElement}function V(e,t,n,r){let o={};const i={};let s=e;const c=`[${D(n,j.Commands.Context,!1)}]`;let a=0;for(;s;)s.matches(t)&&(o=d(H(n,s,""),o),o=d(H(n,s,r),o)),s.matches(c)&&(Object.entries(H(n,s,j.Commands.Context,!1)).forEach(([e,t])=>{t&&!i[e]&&(i[e]=[t,a])}),++a),s=q(n,s);return[o,i]}function F(e,t,n){e.querySelectorAll(t).forEach(n)}function K(e,t=";"){if(!e)return[];const n=new RegExp(`(?:[^${t}']+|'[^']*')+`,"ig");return e.match(n)||[]}function Y(e){const[t,n]=e.split(/:(.+)/,2);return[O(t),O(n)]}function z(e){const[t,n]=e.split("(",2);return[t,n?n.slice(0,-1):""]}var Q=new WeakMap,X=new WeakMap,Z=new WeakMap;function ee(e){const t=Date.now();let n=X.get(e);return(!n||t-n.lastChecked>500)&&(n={isVisible:A(e),lastChecked:t},X.set(e,n)),n.isVisible}function te(e){if(window.IntersectionObserver)return S(()=>new window.IntersectionObserver(t=>{t.forEach(t=>{!function(e,t){var n,r;const o=t.target,i=Z.get(e);if(!i)return;const s=i.timers.get(o);if(t.intersectionRatio>0){const r=Date.now();let c=Q.get(o);(!c||r-c.lastChecked>1e3)&&(c={isLarge:o.offsetHeight>window.innerHeight,lastChecked:r},Q.set(o,c));if(t.intersectionRatio>=.5||c.isLarge&&ee(o)){const t=null==(n=i.elementConfigs)?void 0:n.get(o);if((null==t?void 0:t.multiple)&&t.blocked)return;if(!s){const t=window.setTimeout(async()=>{var t,n;if(ee(o)){const r=null==(t=i.elementConfigs)?void 0:t.get(o);(null==r?void 0:r.context)&&await ke(r.context,o,r.trigger);const s=null==(n=i.elementConfigs)?void 0:n.get(o);(null==s?void 0:s.multiple)?s.blocked=!0:function(e,t){const n=Z.get(e);if(!n)return;n.observer&&n.observer.unobserve(t);const r=n.timers.get(t);r&&(clearTimeout(r),n.timers.delete(t)),Q.delete(t),X.delete(t)}(e,o)}},i.duration);i.timers.set(o,t)}return}}s&&(clearTimeout(s),i.timers.delete(o));const c=null==(r=i.elementConfigs)?void 0:r.get(o);(null==c?void 0:c.multiple)&&(c.blocked=!1)}(e,t)})},{rootMargin:"0px",threshold:[0,.5]}),()=>{})()}function ne(e,t,n={multiple:!1}){var r;const o=e.settings.scope||document,i=Z.get(o);(null==i?void 0:i.observer)&&t&&(i.elementConfigs||(i.elementConfigs=new WeakMap),i.elementConfigs.set(t,{multiple:null!=(r=n.multiple)&&r,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),i.observer.observe(t))}function re(e){if(!e)return;const t=Z.get(e);t&&(t.observer&&t.observer.disconnect(),Z.delete(e))}var oe=performance.now();function ie(e,t,n,r,o,i,s){const{elb:c,settings:a}=e;if(b(t)&&t.startsWith("walker ")){return c(t,n)}if(p(t)){const e=t;return e.source||(e.source=se()),e.globals||(e.globals=_(a.prefix,a.scope||document)),c(e)}const[l]=String(p(t)?t.name:t).split(" ");let u,d=p(n)?n:{},f={},g=!1;if(m(n)&&(u=n,g=!0),m(o)?u=o:p(o)&&Object.keys(o).length&&(f=o),u){const e=B(a.prefix||"data-elb",u).find(e=>e.entity===l);e&&(g&&(d=e.data),f=e.context)}"page"===l&&(d.id=d.id||window.location.pathname);const h=_(a.prefix,a.scope);return c({name:String(t||""),data:d,context:f,globals:h,nested:i,custom:s,trigger:b(r)?r:"",timing:Math.round((performance.now()-oe)/10)/100,source:se()})}function se(){return{type:"browser",id:window.location.href,previous_id:document.referrer}}var ce,ae=[],le="click",ue="hover",de="load",fe="pulse",ge="scroll",me="submit",pe="impression",be="visible",he="wait";function ye(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;if(!n)return;n.addEventListener("click",S(function(t){Se.call(this,e,t)})),n.addEventListener("submit",S(function(t){Oe.call(this,e,t)}))}(e,t)}function we(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;ae=[];const r=n||document;re(r),function(e,t=1e3){Z.has(e)||Z.set(e,{observer:te(e),timers:new WeakMap,duration:t})}(r,1e3);const o=D(t.prefix,j.Commands.Action,!1);r!==document&&ve(e,r,o,t);r.querySelectorAll(`[${o}]`).forEach(n=>{ve(e,n,o,t)}),ae.length&&function(e,t){const n=(e,t)=>e.filter(([e,n])=>{const r=window.scrollY+window.innerHeight,o=e.offsetTop;if(r<o)return!0;const i=e.clientHeight;return!(100*(1-(o+i-r)/(i||1))>=n)||(ke(t,e,ge),!1)});ce||(ce=function(e,t=1e3){let n=null;return function(...r){if(null===n)return n=setTimeout(()=>{n=null},t),e(...r)}}(function(){ae=n.call(t,ae,e)}),t.addEventListener("scroll",ce))}(e,r)}(e,t)}async function ke(e,t,n){const r=T(t,n,e.settings.prefix);return Promise.all(r.map(t=>ie(e,{name:`${t.entity} ${t.action}`,...t,trigger:n})))}function ve(e,t,n,r){const o=C(t,n);o&&Object.values(G(o)).forEach(n=>n.forEach(n=>{switch(n.trigger){case ue:!function(e,t){t.addEventListener("mouseenter",S(function(t){t.target instanceof Element&&ke(e,t.target,ue)}))}(e,t);break;case de:!function(e,t){ke(e,t,de)}(e,t);break;case fe:!function(e,t,n=""){setInterval(()=>{document.hidden||ke(e,t,fe)},parseInt(n||"")||15e3)}(e,t,n.triggerParams);break;case ge:!function(e,t=""){const n=parseInt(t||"")||50;if(n<0||n>100)return;ae.push([e,n])}(t,n.triggerParams);break;case pe:ne(e,t);break;case be:ne(e,t,{multiple:!0});break;case he:!function(e,t,n=""){setTimeout(()=>ke(e,t,he),parseInt(n||"")||15e3)}(e,t,n.triggerParams)}}))}function Se(e,t){ke(e,t.target,le)}function Oe(e,t){t.target&&ke(e,t.target,me)}function xe(e,t={}){const n=t.name||"elbLayer",r=t.window||("undefined"!=typeof window?window:void 0);if(!r)return;const o=r;o[n]||(o[n]=[]);const i=o[n];i.push=function(...n){if(Ee(n[0])){const r=[...Array.from(n[0])],o=Array.prototype.push.apply(this,[r]);return Ce(e,t.prefix,r),o}const r=Array.prototype.push.apply(this,n);return n.forEach(n=>{Ce(e,t.prefix,n)}),r},Array.isArray(i)&&i.length>0&&function(e,t="data-elb",n){je(e,t,n,!0),je(e,t,n,!1),n.length=0}(e,t.prefix,i)}function je(e,t,n,r){const o=[];let i=!0;n.forEach(e=>{const t=Ee(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;if(Array.isArray(t)&&1===t.length&&!t[0])return;const s=t[0],c=!p(s)&&b(s)&&s.startsWith("walker ");if(p(s)){if("object"==typeof s&&0===Object.keys(s).length)return}else{const e=Array.from(t);if(!b(e[0])||""===e[0].trim())return;const n="walker run";i&&e[0]===n&&(i=!1)}(r&&c||!r&&!c)&&o.push(t)}),o.forEach(n=>{Ce(e,t,n)})}function Ce(e,t="data-elb",n){S(()=>{if(Array.isArray(n)){const[r,...o]=n;if(!r||b(r)&&""===r.trim())return;if(b(r)&&r.startsWith("walker "))return void e(r,o[0]);ie({elb:e,settings:{prefix:t,scope:document,pageview:!1,session:!1,elb:"",elbLayer:!1}},r,...o)}else if(n&&"object"==typeof n){if(0===Object.keys(n).length)return;e(n)}},()=>{})()}function Ee(e){return null!=e&&"object"==typeof e&&"[object Arguments]"===Object.prototype.toString.call(e)}function Ae(e,t={}){return $({...t,collector:{push:e,group:void 0}})}var $e={};function Le(e={}){const t=e.prefix||"data-elb";return function(e){let n,r=e;const o={},i={},s={},c={},a={},l={};function u(e){return Object.entries(e).map(([e,t])=>`${e}:${function(e){if(!g(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,r=e,d),data(e,t){const n=null!=r?r:"";return o[n]||(o[n]={}),b(e)?o[n][e]=t:Object.assign(o[n],e),d},action(e,t){if(b(e))if(g(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(b(e))if(g(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)=>(b(e)?c[e]=t:Object.assign(c,e),d),globals:(e,t)=>(b(e)?a[e]=t:Object.assign(a,e),d),link:(e,t)=>(b(e)?l[e]=t:Object.assign(l,e),d),get(){const e={};return n&&(e[t]=n),Object.entries(o).forEach(([n,r])=>{if(Object.keys(r).length>0){e[n?`${t}-${n}`:`${t}-`]=u(r)}}),Object.keys(i).length>0&&(e[`${t}action`]=u(i)),Object.keys(s).length>0&&(e[`${t}actions`]=u(s)),Object.keys(c).length>0&&(e[`${t}context`]=u(c)),Object.keys(a).length>0&&(e[`${t}globals`]=u(a)),Object.keys(l).length>0&&(e[`${t}link`]=u(l)),e}};return d}}var Ie,Pe=async(e,t)=>{try{const n=t||{},{elb:r,window:o,document:i}=n;if(!r)throw new Error("Browser source requires elb function in environment");const s=function(e={},t){return{prefix:"data-elb",pageview:!0,session:!0,elb:"elb",elbLayer:"elbLayer",scope:t||void 0,...e}}((null==e?void 0:e.settings)||{},i),c={settings:s},a={elb:r,settings:s};if(i&&o){if(!1!==s.elbLayer&&xe(r,{name:b(s.elbLayer)?s.elbLayer:"elbLayer",prefix:s.prefix,window:o}),s.session){const e="boolean"==typeof s.session?{}:s.session;Ae(r,e)}await async function(e,t,n){const r=()=>{e(t,n)};"loading"!==document.readyState?r():document.addEventListener("DOMContentLoaded",r)}(ye,a,s);(()=>{if(we(a,s),s.pageview){const[e,t]=U(s.prefix||"data-elb",s.scope);ie(a,"page view",e,"load",t)}})(),b(s.elb)&&s.elb&&(o[s.elb]=(...e)=>{const[t,n,r,o,i,s]=e;return ie(a,t,n,r,o,i,s)})}return{type:"browser",config:c,push:(...e)=>{const[t,n,r,o,i,s]=e;return ie(a,t,n,r,o,i,s)},destroy:async()=>{i&&re(s.scope||i)},on:async(e,t)=>{switch(e){case"consent":if(s.session&&t){const e="boolean"==typeof s.session?{}:s.session;Ae(r,e)}break;case"session":case"ready":default:break;case"run":if(i&&o&&(we(a,s),s.pageview)){const[e,t]=U(s.prefix||"data-elb",s.scope);ie(a,"page view",e,"load",t)}}}}}catch(e){throw e}},We=Pe;return Ie=s,((e,t,s,c)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let a of o(t))i.call(e,a)||a===s||n(e,a,{get:()=>t[a],enumerable:!(c=r(t,a))||c.enumerable});return e})(n({},"__esModule",{value:!0}),Ie)})();
|
package/dist/index.d.mts
CHANGED
|
@@ -86,6 +86,8 @@ declare namespace index {
|
|
|
86
86
|
export { type index_BrowserArguments as BrowserArguments, type index_BrowserCommands as BrowserCommands, type index_BrowserPush as BrowserPush, type index_BrowserPushContext as BrowserPushContext, type index_BrowserPushData as BrowserPushData, type index_BrowserPushOptions as BrowserPushOptions, type index_BrowserSourceConfig as BrowserSourceConfig, type index_CommandDestination as CommandDestination, type index_CommandInit as CommandInit, type index_CommandRun as CommandRun, type index_Context as Context, type index_ELBLayer as ELBLayer, type index_ELBLayerConfig as ELBLayerConfig, type index_Environment as Environment, type index_InitSettings as InitSettings, type index_Layer as Layer, type index_PushResult as PushResult, type index_Scope as Scope, index_SessionCallback as SessionCallback, index_SessionConfig as SessionConfig, type index_Settings as Settings, type index_Trigger as Trigger };
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
+
declare function getElbAttributeName(prefix: string, name?: string, isProperty?: boolean): string;
|
|
90
|
+
declare function getElbValues(prefix: string, element: Element, name: string, isProperty?: boolean): WalkerOS.Properties;
|
|
89
91
|
declare function getAllEvents(scope?: Scope, prefix?: string): Walker.Events;
|
|
90
92
|
declare function getEvents(target: Element, trigger: string, prefix?: string): Walker.Events;
|
|
91
93
|
declare function getGlobals(prefix?: string, scope?: Scope): WalkerOS.Properties;
|
|
@@ -119,4 +121,4 @@ declare function createTagger(config?: TaggerConfig): (entity?: string) => Tagge
|
|
|
119
121
|
*/
|
|
120
122
|
declare const sourceBrowser: Source.Init<BrowserSourceConfig>;
|
|
121
123
|
|
|
122
|
-
export { index as SourceBrowser, type TaggerConfig, type TaggerInstance, createTagger, sourceBrowser as default, getAllEvents, getEvents, getGlobals, sourceBrowser };
|
|
124
|
+
export { index as SourceBrowser, type TaggerConfig, type TaggerInstance, createTagger, sourceBrowser as default, getAllEvents, getElbAttributeName, getElbValues, getEvents, getGlobals, sourceBrowser };
|
package/dist/index.d.ts
CHANGED
|
@@ -86,6 +86,8 @@ declare namespace index {
|
|
|
86
86
|
export { type index_BrowserArguments as BrowserArguments, type index_BrowserCommands as BrowserCommands, type index_BrowserPush as BrowserPush, type index_BrowserPushContext as BrowserPushContext, type index_BrowserPushData as BrowserPushData, type index_BrowserPushOptions as BrowserPushOptions, type index_BrowserSourceConfig as BrowserSourceConfig, type index_CommandDestination as CommandDestination, type index_CommandInit as CommandInit, type index_CommandRun as CommandRun, type index_Context as Context, type index_ELBLayer as ELBLayer, type index_ELBLayerConfig as ELBLayerConfig, type index_Environment as Environment, type index_InitSettings as InitSettings, type index_Layer as Layer, type index_PushResult as PushResult, type index_Scope as Scope, index_SessionCallback as SessionCallback, index_SessionConfig as SessionConfig, type index_Settings as Settings, type index_Trigger as Trigger };
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
+
declare function getElbAttributeName(prefix: string, name?: string, isProperty?: boolean): string;
|
|
90
|
+
declare function getElbValues(prefix: string, element: Element, name: string, isProperty?: boolean): WalkerOS.Properties;
|
|
89
91
|
declare function getAllEvents(scope?: Scope, prefix?: string): Walker.Events;
|
|
90
92
|
declare function getEvents(target: Element, trigger: string, prefix?: string): Walker.Events;
|
|
91
93
|
declare function getGlobals(prefix?: string, scope?: Scope): WalkerOS.Properties;
|
|
@@ -119,4 +121,4 @@ declare function createTagger(config?: TaggerConfig): (entity?: string) => Tagge
|
|
|
119
121
|
*/
|
|
120
122
|
declare const sourceBrowser: Source.Init<BrowserSourceConfig>;
|
|
121
123
|
|
|
122
|
-
export { index as SourceBrowser, type TaggerConfig, type TaggerInstance, createTagger, sourceBrowser as default, getAllEvents, getEvents, getGlobals, sourceBrowser };
|
|
124
|
+
export { index as SourceBrowser, type TaggerConfig, type TaggerInstance, createTagger, sourceBrowser as default, getAllEvents, getElbAttributeName, getElbValues, getEvents, getGlobals, sourceBrowser };
|
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 r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _array_with_holes(e){if(Array.isArray(e))return e}function _array_without_holes(e){if(Array.isArray(e))return _array_like_to_array(e)}function asyncGeneratorStep(e,t,r,n,o,i,a){try{var c=e[i](a),s=c.value}catch(e){return void r(e)}c.done?t(s):Promise.resolve(s).then(n,o)}function _async_to_generator(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){asyncGeneratorStep(i,n,o,a,c,"next",e)}function c(e){asyncGeneratorStep(i,n,o,a,c,"throw",e)}a(void 0)})}}function _define_property(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _iterable_to_array(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterable_to_array_limit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i=[],a=!0,c=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){c=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(c)throw o}}return i}}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 r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){_define_property(e,t,r[t])})}return e}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _object_spread_props(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}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 r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_array_like_to_array(e,t):void 0}}function _ts_generator(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=c(0),a.throw=c(1),a.return=c(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function c(c){return function(s){return function(c){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,n=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==c[0]&&2!==c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}}var Source=function(){var e,t,r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};r=_object_spread({},he,r);var n=Object.entries(t).reduce(function(t,n){var o=_sliced_to_array(n,2),i=o[0],a=o[1],c=e[i];return r.merge&&Array.isArray(c)&&Array.isArray(a)?t[i]=a.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(c)):(r.extend||i in e)&&(t[i]=a),t},{});return r.shallow?_object_spread({},e,n):(Object.assign(e,n),e)},n=function(e){return Array.isArray(e)},o=function(e){return void 0!==e},i=function(e){return e===document||_instanceof(e,Element)},a=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!n(e)&&"[object Object]"===Object.prototype.toString.call(e)},c=function(e){return"string"==typeof e},s=function(e){if("true"===e)return!0;if("false"===e)return!1;var t=Number(e);return e==t&&""!==e?t:String(e)},u=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,t="";t.length<e;)t+=(36*Math.random()|0).toString(36);return t},l=function(e,t,r){return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!t)return;return t(e)}finally{null==r||r()}}},f=function(e){return e?e.trim().replace(/^'|'$/g,"").trim():""},d=function(e,t){return(e.getAttribute(t)||"").trim()},p=function(e){var t,r=getComputedStyle(e);if("none"===r.display)return!1;if("visible"!==r.visibility)return!1;if(r.opacity&&Number(r.opacity)<.1)return!1;var n=window.innerHeight,o=e.getBoundingClientRect(),i=o.height,a=o.y,c=a+i,s={x:o.x+e.offsetWidth/2,y:o.y+e.offsetHeight/2};if(i<=n){if(e.offsetWidth+o.width===0||e.offsetHeight+o.height===0)return!1;if(s.x<0)return!1;if(s.x>(document.documentElement.clientWidth||window.innerWidth))return!1;if(s.y<0)return!1;if(s.y>(document.documentElement.clientHeight||window.innerHeight))return!1;t=document.elementFromPoint(s.x,s.y)}else{var u=n/2;if(a<0&&c<u)return!1;if(c>n&&a>u)return!1;t=document.elementFromPoint(s.x,n/2)}if(t)do{if(t===e)return!0}while(t=t.parentElement);return!1},v=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.cb,r=e.consent,i=e.collector,a=e.storage,c=(null==i?void 0:i.push)||Se;if(!r)return g((a?m:b)(e),i,t);var s,u,l,f=(s=e,u=t,function(e,t){if(!o(l)||l!==(null==e?void 0:e.group)){l=null==e?void 0:e.group;var r=function(){return b(s)};return s.consent&&function(e){var t=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),r={},n=void 0===e;return Object.keys(t).forEach(function(o){t[o]&&(r[o]=!0,e&&e[o]&&(n=!0))}),!!n&&r}((n(s.consent)?s.consent:[s.consent]).reduce(function(e,t){return _object_spread_props(_object_spread({},e),_define_property({},t,!0))},{}),t)&&(r=function(){return m(s)}),g(r(),e,u)}});c("walker on","consent",(n(r)?r:[r]).reduce(function(e,t){return _object_spread_props(_object_spread({},e),_define_property({},t,f))},{}))},g=function(e,t,r){return!1===r?e:(r||(r=Oe),r(e,t,Oe))},y=function(e){var t,r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:be.Utils.Storage.Session;function o(e){try{return JSON.parse(e||"")}catch(n){var t=1,r="";return e&&(t=0,r=e),{e:t,v:r}}}switch(n){case be.Utils.Storage.Cookie:var i;t=decodeURIComponent((null===(i=document.cookie.split("; ").find(function(t){return t.startsWith(e+"=")}))||void 0===i?void 0:i.split("=")[1])||"");break;case be.Utils.Storage.Local:r=o(window.localStorage.getItem(e));break;case be.Utils.Storage.Session:r=o(window.sessionStorage.getItem(e))}return r&&(t=r.v,0!=r.e&&r.e<Date.now()&&(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:be.Utils.Storage.Session;switch(t){case be.Utils.Storage.Cookie:_(e,"",0,t);break;case be.Utils.Storage.Local:window.localStorage.removeItem(e);break;case be.Utils.Storage.Session:window.sessionStorage.removeItem(e)}}(e,n),t="")),s(t||"")},_=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:be.Utils.Storage.Session,o=arguments.length>4?arguments[4]:void 0,i={e:Date.now()+6e4*r,v:String(t)},a=JSON.stringify(i);switch(n){case be.Utils.Storage.Cookie:t="object"==(void 0===t?"undefined":_type_of(t))?JSON.stringify(t):t;var c="".concat(e,"=").concat(encodeURIComponent(t),"; max-age=").concat(60*r,"; path=/; SameSite=Lax; secure");o&&(c+="; domain="+o),document.cookie=c;break;case be.Utils.Storage.Local:window.localStorage.setItem(e,a);break;case be.Utils.Storage.Session:window.sessionStorage.setItem(e,a)}return y(e,n)},m=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Date.now(),r=e.length,n=void 0===r?30:r,o=e.deviceKey,i=void 0===o?"elbDeviceId":o,a=e.deviceStorage,c=void 0===a?"local":a,s=e.deviceAge,f=void 0===s?30:s,d=e.sessionKey,p=void 0===d?"elbSessionId":d,v=e.sessionStorage,g=void 0===v?"local":v,m=e.pulse,h=void 0!==m&&m,w=b(e),k=!1,S=l(function(e,t,r){var n=y(e,r);return n||(n=u(8),_(e,n,1440*t,r)),String(n)})(i,f,c),O=l(function(e,r){var o=JSON.parse(String(y(e,r)));return h||(o.isNew=!1,w.marketing&&(Object.assign(o,w),k=!0),k||o.updated+6e4*n<t?(delete o.id,delete o.referrer,o.start=t,o.count++,o.runs=1,k=!0):o.runs++),o},function(){k=!0})(p,g)||{},j={id:u(12),start:t,isNew:!0,count:1,runs:1},x=Object.assign(j,w,O,{device:S},{isStart:k,storage:!0,updated:t},e.data);return _(p,JSON.stringify(x),2*n,g),x},b=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.isStart||!1,n={isStart:t,storage:!1};if(!1===e.isStart)return n;if(!t&&"navigate"!==_sliced_to_array(performance.getEntriesByType("navigation"),1)[0].type)return n;var o=new URL(e.url||window.location.href),i=e.referrer||document.referrer,a=i&&new URL(i).hostname,c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="clickId",o={},i={utm_campaign:"campaign",utm_content:"content",utm_medium:"medium",utm_source:"source",utm_term:"term",dclid:n,fbclid:n,gclid:n,msclkid:n,ttclid:n,twclid:n,igshid:n,sclid:n};return Object.entries(r(i,t)).forEach(function(t){var r=_sliced_to_array(t,2),i=r[0],a=r[1],c=e.searchParams.get(i);c&&(a===n&&(a=i,o[n]=i),o[a]=c)}),o}(o,e.parameters);if(Object.keys(c).length&&(c.marketing||(c.marketing=!0),t=!0),!t){var s=e.domains||[];s.push(o.hostname),t=!s.includes(a)}return t?Object.assign({isStart:t,storage:!1,start:Date.now(),id:u(12),referrer:a},c,e.data):n},h=function(e,t){return e+(t=null!=t?(!(arguments.length>2&&void 0!==arguments[2])||arguments[2]?"-":"")+t:"")},w=function(e,t,r){var o=d(t,h(e,r,!(arguments.length>3&&void 0!==arguments[3])||arguments[3]))||"";return L(o).reduce(function(e,r){var o=_sliced_to_array(U(r),2),i=o[0],a=o[1];if(!i)return e;if(a||(i.endsWith(":")&&(i=i.slice(0,-1)),a=""),a.startsWith("#")){a=a.slice(1);try{var c=t[a];c||"selected"!==a||(c=t.options[t.selectedIndex].text),a=String(c)}catch(e){a=""}}return i.endsWith("[]")?(i=i.slice(0,-2),n(e[i])||(e[i]=[]),e[i].push(s(a))):e[i]=s(a),e},{})},k=function(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ke.Commands.Prefix,n=e||("undefined"!=typeof document?document.body:void 0);if(!n)return[];var o=[],i=ke.Commands.Action,a="[".concat(h(r,i,!1),"]"),c=function(e){Object.keys(w(r,e,i,!1)).forEach(function(t){o=o.concat(S(e,t,r))})};return n!==("undefined"!=typeof document?document:null)&&(null===(t=n.matches)||void 0===t?void 0:t.call(n,a))&&c(n),P(n,a,c),o},S=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:ke.Commands.Prefix,n=[],o=I(r,e,t),i=o.actions,a=o.nearestOnly;return i.length?(i.forEach(function(o){var i=L(o.actionParams||"",",").reduce(function(e,t){return e[f(t)]=!0,e},{}),c=A(r,e,i,a);if(!c.length){var s="page",u="[".concat(h(r,s),"]"),l=_sliced_to_array(E(e,u,r,s),2),d=l[0],p=l[1];c.push({entity:s,data:d,nested:[],context:p})}c.forEach(function(e){n.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:e.nested})})}),n):n},O=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ke.Commands.Prefix,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document,n=h(e,ke.Commands.Globals,!1),o="[".concat(n,"]"),i={};return P(t,o,function(t){i=r(i,w(e,t,ke.Commands.Globals,!1))}),i},j=function(e,t){var r=window.location,n="page",o=t===document?document.body:t,i=_sliced_to_array(E(o,"[".concat(h(e,n),"]"),e,n),2),a=i[0],c=i[1];return a.domain=r.hostname,a.title=document.title,a.referrer=document.referrer,r.search&&(a.search=r.search),r.hash&&(a.hash=r.hash),[a,c]},x=function(e){var t={};return L(e).forEach(function(e){var r=_sliced_to_array(U(e),2),n=r[0],o=r[1],i=_sliced_to_array(W(n),2),a=i[0],c=i[1];if(a){var s=_sliced_to_array(W(o||""),2),u=s[0],l=s[1];u=u||a,t[a]||(t[a]=[]),t[a].push({trigger:a,triggerParams:c,action:u,actionParams:l})}}),t},A=function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=[],i=t;for(r=0!==Object.keys(r||{}).length?r:void 0;i;){var a=je(e,i,t,r);if(a&&(o.push(a),n))break;i=C(e,i)}return o},C=function(e,t){var r=h(e,ke.Commands.Link,!1);if(t.matches("[".concat(r,"]"))){var n=_sliced_to_array(U(d(t,r)),2),o=n[0];if("child"===n[1])return document.querySelector("[".concat(r,'="').concat(o,':parent"]'))}return!t.parentElement&&t.getRootNode&&_instanceof(t.getRootNode(),ShadowRoot)?t.getRootNode().host:t.parentElement},E=function(e,t,n,o){for(var i={},a={},c=e,s="[".concat(h(n,ke.Commands.Context,!1),"]"),u=0;c;)c.matches(t)&&(i=r(w(n,c,""),i),i=r(w(n,c,o),i)),c.matches(s)&&(Object.entries(w(n,c,ke.Commands.Context,!1)).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],n=t[1];n&&!a[r]&&(a[r]=[n,u])}),++u),c=C(n,c);return[i,a]},P=function(e,t,r){e.querySelectorAll(t).forEach(r)},I=function(e,t,r){for(var n=t;n;){var o=d(n,h(e,ke.Commands.Actions,!1));if(o){var i=x(o);if(i[r])return{actions:i[r],nearestOnly:!1}}var a=d(n,h(e,ke.Commands.Action,!1));if(a){var c=x(a);if(c[r]||"click"!==r)return{actions:c[r]||[],nearestOnly:!0}}n=C(e,n)}return{actions:[],nearestOnly:!1}},L=function(e){if(!e)return[];var t=new RegExp("(?:[^".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:";","']+|'[^']*')+"),"ig");return e.match(t)||[]},U=function(e){var t=_sliced_to_array(e.split(/:(.+)/,2),2),r=t[0],n=t[1];return[f(r),f(n)]},W=function(e){var t=_sliced_to_array(e.split("(",2),2),r=t[0],n=t[1];return[r,n?n.slice(0,-1):""]},D=function(e){var t=Date.now(),r=Ee.get(e);return(!r||t-r.lastChecked>500)&&(r={isVisible:p(e),lastChecked:t},Ee.set(e,r)),r.isVisible},H=function(e){if(window.IntersectionObserver)return l(function(){return new window.IntersectionObserver(function(t){t.forEach(function(t){N(e,t)})},{rootMargin:"0px",threshold:[0,.5]})},function(){})()},N=function(e,t){var r,n=t.target,o=Pe.get(e);if(o){var i=o.timers.get(n);if(t.intersectionRatio>0){var a=Date.now(),c=Ce.get(n);if((!c||a-c.lastChecked>1e3)&&(c={isLarge:n.offsetHeight>window.innerHeight,lastChecked:a},Ce.set(n,c)),t.intersectionRatio>=.5||c.isLarge&&D(n)){var s,u=null===(s=o.elementConfigs)||void 0===s?void 0:s.get(n);if((null==u?void 0:u.multiple)&&u.blocked)return;if(!i){var l=window.setTimeout(function(){return _async_to_generator(function(){var t,r,i,a;return _ts_generator(this,function(c){switch(c.label){case 0:return D(n)?(null==(i=null===(t=o.elementConfigs)||void 0===t?void 0:t.get(n))?void 0:i.context)?[4,F(i.context,n,i.trigger)]:[3,2]:[3,3];case 1:c.sent(),c.label=2;case 2:(null==(a=null===(r=o.elementConfigs)||void 0===r?void 0:r.get(n))?void 0:a.multiple)?a.blocked=!0:function(e,t){var r=Pe.get(e);if(r){r.observer&&r.observer.unobserve(t);var n=r.timers.get(t);n&&(clearTimeout(n),r.timers.delete(t)),Ce.delete(t),Ee.delete(t)}}(e,n),c.label=3;case 3:return[2]}})})()},o.duration);o.timers.set(n,l)}return}}i&&(clearTimeout(i),o.timers.delete(n));var f=null===(r=o.elementConfigs)||void 0===r?void 0:r.get(n);(null==f?void 0:f.multiple)&&(f.blocked=!1)}},R=function(e,t){var r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{multiple:!1},o=e.settings.scope||document,i=Pe.get(o);(null==i?void 0:i.observer)&&t&&(i.elementConfigs||(i.elementConfigs=new WeakMap),i.elementConfigs.set(t,{multiple:null!==(r=n.multiple)&&void 0!==r&&r,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),i.observer.observe(t))},M=function(e){if(e){var t=Pe.get(e);t&&(t.observer&&t.observer.disconnect(),Pe.delete(e))}},T=function(e,t,r,n,o,s,u){var l=e.elb,f=e.settings;if(c(t)&&t.startsWith("walker "))return l(t,r);if(a(t)){var d=t;return d.source||(d.source=G()),l(d)}var p,v=_sliced_to_array(String(a(t)?t.name:t).split(" "),1)[0],g=a(r)?r:{},y={},_=!1;if(i(r)&&(p=r,_=!0),i(o)?p=o:a(o)&&Object.keys(o).length&&(y=o),p){var m=A(f.prefix||"data-elb",p).find(function(e){return e.entity===v});m&&(_&&(g=m.data),y=m.context)}return"page"===v&&(g.id=g.id||window.location.pathname),l({name:String(t||""),data:g,context:y,nested:s,custom:u,trigger:c(n)?n:"",timing:Math.round((performance.now()-Ie)/10)/100,source:G()})},G=function(){return{type:"browser",id:window.location.href,previous_id:document.referrer}},B=function(e,t,r){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){return n=function(){e(t,r)},"loading"!==document.readyState?n():document.addEventListener("DOMContentLoaded",n),[2]})})()},J=function(e,t){t.scope&&K(e,t)},q=function(e,t){t.scope&&V(e,t)},K=function(e,t){var r=t.scope;r&&(r.addEventListener("click",l(function(t){Y.call(this,e,t)})),r.addEventListener("submit",l(function(t){ee.call(this,e,t)})))},V=function(e,t){var r=t.scope;Le=[];var n=r||document;M(n),function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;Pe.has(e)||Pe.set(e,{observer:H(e),timers:new WeakMap,duration:t})}(n,1e3);var o=h(t.prefix,ke.Commands.Action,!1);n!==document&&$(e,n,o,t),n.querySelectorAll("[".concat(o,"]")).forEach(function(r){$(e,r,o,t)}),Le.length&&re(e,n,t)},F=function(e,t,r){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){return n=S(t,r,e.settings.prefix),[2,Promise.all(n.map(function(t){return T(e,_object_spread_props(_object_spread({name:"".concat(t.entity," ").concat(t.action)},t),{trigger:r}))}))]})})()},$=function(e,t,r,n){var o=d(t,r);o&&Object.values(x(o)).forEach(function(r){return r.forEach(function(r){switch(r.trigger){case Ue.Hover:z(e,t);break;case Ue.Load:Q(e,t);break;case Ue.Pulse:X(e,t,r.triggerParams);break;case Ue.Scroll:Z(t,r.triggerParams);break;case Ue.Impression:R(e,t);break;case Ue.Visible:R(e,t,{multiple:!0});break;case Ue.Wait:te(e,t,r.triggerParams)}})})},Y=function(e,t){F(e,t.target,Ue.Click)},z=function(e,t){t.addEventListener("mouseenter",l(function(t){_instanceof(t.target,Element)&&F(e,t.target,Ue.Hover)}))},Q=function(e,t){F(e,t,Ue.Load)},X=function(e,t){setInterval(function(){document.hidden||F(e,t,Ue.Pulse)},parseInt((arguments.length>2&&void 0!==arguments[2]?arguments[2]:"")||"")||15e3)},Z=function(e){var t=parseInt((arguments.length>1&&void 0!==arguments[1]?arguments[1]:"")||"")||50;t<0||t>100||Le.push([e,t])},ee=function(e,t){t.target&&F(e,t.target,Ue.Submit)},te=function(e,t){setTimeout(function(){return F(e,t,Ue.Wait)},parseInt((arguments.length>2&&void 0!==arguments[2]?arguments[2]:"")||"")||15e3)},re=function(e,t,r){var n=function(e,t){return e.filter(function(e){var r=_sliced_to_array(e,2),n=r[0],o=r[1],i=window.scrollY+window.innerHeight,a=n.offsetTop;if(i<a)return!0;var c=n.clientHeight;return!(100*(1-(a+c-i)/(c||1))>=o)||(F(t,n,Ue.Scroll),!1)})};xe||(xe=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=null;return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];if(null===r)return r=setTimeout(function(){r=null},t),e.apply(void 0,_to_consumable_array(o))}}(function(){Le=n.call(t,Le,e)}),t.addEventListener("scroll",xe))},ne=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data-elb",r=arguments.length>2?arguments[2]:void 0;oe(e,t,r,!0),oe(e,t,r,!1),r.length=0},oe=function(e,t,r,n){var o=[],i=!0;r.forEach(function(e){var t=ae(e)?_to_consumable_array(Array.from(e)):ce(e)?Array.from(e):[e];if((!Array.isArray(t)||0!==t.length)&&(!Array.isArray(t)||1!==t.length||t[0])){var r=t[0],s=!a(r)&&c(r)&&r.startsWith("walker ");if(a(r)){if("object"===(void 0===r?"undefined":_type_of(r))&&0===Object.keys(r).length)return}else{var u=Array.from(t);if(!c(u[0])||""===u[0].trim())return;i&&"walker run"===u[0]&&(i=!1)}(n&&s||!n&&!s)&&o.push(t)}}),o.forEach(function(r){ie(e,t,r)})},ie=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data-elb",r=arguments.length>2?arguments[2]:void 0;l(function(){if(Array.isArray(r)){var n=_to_array(r),o=n[0],i=n.slice(1);if(!o||c(o)&&""===o.trim())return;if(c(o)&&o.startsWith("walker "))return void e(o,i[0]);T.apply(void 0,[{elb:e,settings:{prefix:t,scope:document,pageview:!1,session:!1,elb:"",elbLayer:!1}},o].concat(_to_consumable_array(i)))}else if(r&&"object"===(void 0===r?"undefined":_type_of(r))){if(0===Object.keys(r).length)return;e(r)}},function(){})()},ae=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"[object Arguments]"===Object.prototype.toString.call(e)},ce=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length},se=function(e){var t={push:e,group:void 0};return v(_object_spread_props(_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),{collector:t}))},ue=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).prefix||"data-elb";return function(t){var r=void 0,n=t,i={},a={},s={},u={},l={},f={};function d(e){return Object.entries(e).map(function(e){var t=_sliced_to_array(e,2),r=t[0],n=t[1];return"".concat(r,":").concat(function(e){if(!o(e)||null===e)return"undefined";var t=String(e);return(t=(t=(t=t.replace(/\\/g,"\\\\")).replace(/;/g,"\\;")).replace(/:/g,"\\:")).replace(/'/g,"\\'")}(n))}).join(";")}var p={entity:function(e){return r=e,n=e,p},data:function(e,t){var r=null!=n?n:"";return i[r]||(i[r]={}),c(e)?i[r][e]=t:Object.assign(i[r],e),p},action:function(e,t){if(c(e))if(o(t))a[e]=t;else if(e.includes(":")){var r=_sliced_to_array(e.split(":",2),2),n=r[0],i=r[1];a[n]=i}else a[e]=e;else Object.assign(a,e);return p},actions:function(e,t){if(c(e))if(o(t))s[e]=t;else if(e.includes(":")){var r=_sliced_to_array(e.split(":",2),2),n=r[0],i=r[1];s[n]=i}else s[e]=e;else Object.assign(s,e);return p},context:function(e,t){return c(e)?u[e]=t:Object.assign(u,e),p},globals:function(e,t){return c(e)?l[e]=t:Object.assign(l,e),p},link:function(e,t){return c(e)?f[e]=t:Object.assign(f,e),p},get:function(){var t={};return r&&(t[e]=r),Object.entries(i).forEach(function(r){var n=_sliced_to_array(r,2),o=n[0],i=n[1];if(Object.keys(i).length>0){var a=o?"".concat(e,"-").concat(o):"".concat(e,"-");t[a]=d(i)}}),Object.keys(a).length>0&&(t["".concat(e,"action")]=d(a)),Object.keys(s).length>0&&(t["".concat(e,"actions")]=d(s)),Object.keys(u).length>0&&(t["".concat(e,"context")]=d(u)),Object.keys(l).length>0&&(t["".concat(e,"globals")]=d(l)),Object.keys(f).length>0&&(t["".concat(e,"link")]=d(f)),t}};return p}},le=Object.defineProperty,fe=Object.getOwnPropertyDescriptor,de=Object.getOwnPropertyNames,pe=Object.prototype.hasOwnProperty,ve={};!function(e,t){for(var r in t)le(e,r,{get:t[r],enumerable:!0})}(ve,{SourceBrowser:function(){return We},createTagger:function(){return ue},default:function(){return He},getAllEvents:function(){return k},getEvents:function(){return S},getGlobals:function(){return O},sourceBrowser:function(){return De}});var ge,ye,_e=Object.getOwnPropertyNames,me=(e={"package.json":function(e,t){t.exports={name:"@walkeros/core",description:"Core types and platform-agnostic utilities for walkerOS",version:"0.1.1",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/core"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","web analytics","product analytics","core","types","utils"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},function(){return t||(0,e[_e(e)[0]])((t={exports:{}}).exports,t),t.exports}),be={Utils:{Storage:{Local:"local",Session:"session",Cookie:"cookie"}}},he={merge:!0,shallow:!0,extend:!0},we=(me().version,Object.getOwnPropertyNames),ke=(ge={"package.json":function(e,t){t.exports={name:"@walkeros/collector",description:"Unified platform-agnostic collector for walkerOS",version:"0.1.1",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{"@walkeros/core":"0.1.1"},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/collector"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","collector","event processing"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},{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",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}}),Se=function(){var e=window;(e.elbLayer=e.elbLayer||[]).push(arguments)},Oe=function(e,t){var r=(null==t?void 0:t.push)||Se,n={};return e.id&&(n.session=e.id),e.storage&&e.device&&(n.device=e.device),r("walker user",n),e.isStart&&r({name:"session start",data:e}),e};function je(e,t,n,o){var i=d(t,h(e));if(!i||o&&!o[i])return null;var a=[t],c="[".concat(h(e,i),"],[").concat(h(e,""),"]"),s=h(e,ke.Commands.Link,!1),u={},l=[],f=_sliced_to_array(E(n||t,c,e,i),2),p=f[0],v=f[1];P(t,"[".concat(s,"]"),function(t){var r=_sliced_to_array(U(d(t,s)),2),n=r[0];"parent"===r[1]&&P(document.body,"[".concat(s,'="').concat(n,':child"]'),function(t){a.push(t);var r=je(e,t);r&&l.push(r)})});var g=[];a.forEach(function(e){e.matches(c)&&g.push(e),P(e,c,function(e){return g.push(e)})});var y={};return g.forEach(function(t){y=r(y,w(e,t,"")),u=r(u,w(e,t,i))}),u=r(r(y,u),p),a.forEach(function(t){P(t,"[".concat(h(e),"]"),function(t){var r=je(e,t);r&&l.push(r)})}),{entity:i,data:u,context:v,nested:l}}var xe,Ae,Ce=new WeakMap,Ee=new WeakMap,Pe=new WeakMap,Ie=performance.now(),Le=[],Ue={Click:"click",Custom:"custom",Hover:"hover",Load:"load",Pulse:"pulse",Scroll:"scroll",Submit:"submit",Impression:"impression",Visible:"visible",Wait:"wait"},We={},De=function(e,t){return _async_to_generator(function(){var r,n,o,i,a,s,u,l,f,d,p;return _ts_generator(this,function(v){switch(v.label){case 0:if(v.trys.push([0,3,,4]),n=(r=t||{}).elb,o=r.window,i=r.document,!n)throw new Error("Browser source requires elb function in environment");return a=(null==e?void 0:e.settings)||{},s=function(){return _object_spread({prefix:"data-elb",pageview:!0,session:!0,elb:"elb",elbLayer:"elbLayer",scope:(arguments.length>1?arguments[1]:void 0)||void 0},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}(a,i),u={settings:s},l={elb:n,settings:s},i&&o?(!1!==s.elbLayer&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.name||"elbLayer",n=t.window||("undefined"!=typeof window?window:void 0);if(n){var o=n;o[r]||(o[r]=[]);var i=o[r];i.push=function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];if(ae(n[0])){var i=_to_consumable_array(Array.from(n[0])),a=Array.prototype.push.apply(this,[i]);return ie(e,t.prefix,i),a}var c=Array.prototype.push.apply(this,n);return n.forEach(function(r){ie(e,t.prefix,r)}),c},Array.isArray(i)&&i.length>0&&ne(e,t.prefix,i)}}(n,{name:c(s.elbLayer)?s.elbLayer:"elbLayer",prefix:s.prefix,window:o}),s.session&&(f="boolean"==typeof s.session?{}:s.session,se(n,f)),[4,B(J,l,s)]):[3,2];case 1:v.sent(),function(){if(q(l,s),s.pageview){var e=_sliced_to_array(j(s.prefix||"data-elb",s.scope),2),t=e[0],r=e[1];T(l,"page view",t,"load",r)}}(),c(s.elb)&&s.elb&&(o[s.elb]=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=_sliced_to_array(t,6),o=n[0],i=n[1],a=n[2],c=n[3],s=n[4],u=n[5];return T(l,o,i,a,c,s,u)}),v.label=2;case 2:return d=function(e,t){return _async_to_generator(function(){var r,a,c,u;return _ts_generator(this,function(f){switch(e){case"consent":s.session&&t&&(r="boolean"==typeof s.session?{}:s.session,se(n,r));break;case"session":case"ready":default:break;case"run":i&&o&&(q(l,s),s.pageview&&(a=_sliced_to_array(j(s.prefix||"data-elb",s.scope),2),c=a[0],u=a[1],T(l,"page view",c,"load",u)))}return[2]})})()},p=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=_sliced_to_array(t,6),o=n[0],i=n[1],a=n[2],c=n[3],s=n[4],u=n[5];return T(l,o,i,a,c,s,u)},[2,{type:"browser",config:u,push:p,destroy:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return i&&M(s.scope||i),[2]})})()},on:d}];case 3:throw v.sent();case 4:return[2]}})})()},He=De;return Ae=ve,function(e,t,r,n){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,i=!1,a=void 0;try{for(var c,s=function(){var o=c.value;pe.call(e,o)||o===r||le(e,o,{get:function(){return t[o]},enumerable:!(n=fe(t,o))||n.enumerable})},u=de(t)[Symbol.iterator]();!(o=(c=u.next()).done);o=!0)s()}catch(e){i=!0,a=e}finally{try{o||null==u.return||u.return()}finally{if(i)throw a}}}return e}(le({},"__esModule",{value:!0}),Ae)}();
|
|
1
|
+
"use strict";function _array_like_to_array(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function _array_with_holes(e){if(Array.isArray(e))return e}function _array_without_holes(e){if(Array.isArray(e))return _array_like_to_array(e)}function asyncGeneratorStep(e,t,r,n,o,i,a){try{var c=e[i](a),s=c.value}catch(e){return void r(e)}c.done?t(s):Promise.resolve(s).then(n,o)}function _async_to_generator(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function a(e){asyncGeneratorStep(i,n,o,a,c,"next",e)}function c(e){asyncGeneratorStep(i,n,o,a,c,"throw",e)}a(void 0)})}}function _define_property(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _iterable_to_array(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterable_to_array_limit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i=[],a=!0,c=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){c=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(c)throw o}}return i}}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 r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){_define_property(e,t,r[t])})}return e}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _object_spread_props(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}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 r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_array_like_to_array(e,t):void 0}}function _ts_generator(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=c(0),a.throw=c(1),a.return=c(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function c(c){return function(s){return function(c){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,n=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==c[0]&&2!==c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}}var Source=function(){var e,t,r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};r=_object_spread({},he,r);var n=Object.entries(t).reduce(function(t,n){var o=_sliced_to_array(n,2),i=o[0],a=o[1],c=e[i];return r.merge&&Array.isArray(c)&&Array.isArray(a)?t[i]=a.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(c)):(r.extend||i in e)&&(t[i]=a),t},{});return r.shallow?_object_spread({},e,n):(Object.assign(e,n),e)},n=function(e){return Array.isArray(e)},o=function(e){return void 0!==e},i=function(e){return e===document||_instanceof(e,Element)},a=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!n(e)&&"[object Object]"===Object.prototype.toString.call(e)},c=function(e){return"string"==typeof e},s=function(e){if("true"===e)return!0;if("false"===e)return!1;var t=Number(e);return e==t&&""!==e?t:String(e)},u=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,t="";t.length<e;)t+=(36*Math.random()|0).toString(36);return t},l=function(e,t,r){return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!t)return;return t(e)}finally{null==r||r()}}},f=function(e){return e?e.trim().replace(/^'|'$/g,"").trim():""},d=function(e,t){return(e.getAttribute(t)||"").trim()},p=function(e){var t,r=getComputedStyle(e);if("none"===r.display)return!1;if("visible"!==r.visibility)return!1;if(r.opacity&&Number(r.opacity)<.1)return!1;var n=window.innerHeight,o=e.getBoundingClientRect(),i=o.height,a=o.y,c=a+i,s={x:o.x+e.offsetWidth/2,y:o.y+e.offsetHeight/2};if(i<=n){if(e.offsetWidth+o.width===0||e.offsetHeight+o.height===0)return!1;if(s.x<0)return!1;if(s.x>(document.documentElement.clientWidth||window.innerWidth))return!1;if(s.y<0)return!1;if(s.y>(document.documentElement.clientHeight||window.innerHeight))return!1;t=document.elementFromPoint(s.x,s.y)}else{var u=n/2;if(a<0&&c<u)return!1;if(c>n&&a>u)return!1;t=document.elementFromPoint(s.x,n/2)}if(t)do{if(t===e)return!0}while(t=t.parentElement);return!1},g=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.cb,r=e.consent,i=e.collector,a=e.storage,c=(null==i?void 0:i.push)||Se;if(!r)return v((a?b:m)(e),i,t);var s,u,l,f=(s=e,u=t,function(e,t){if(!o(l)||l!==(null==e?void 0:e.group)){l=null==e?void 0:e.group;var r=function(){return m(s)};return s.consent&&function(e){var t=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),r={},n=void 0===e;return Object.keys(t).forEach(function(o){t[o]&&(r[o]=!0,e&&e[o]&&(n=!0))}),!!n&&r}((n(s.consent)?s.consent:[s.consent]).reduce(function(e,t){return _object_spread_props(_object_spread({},e),_define_property({},t,!0))},{}),t)&&(r=function(){return b(s)}),v(r(),e,u)}});c("walker on","consent",(n(r)?r:[r]).reduce(function(e,t){return _object_spread_props(_object_spread({},e),_define_property({},t,f))},{}))},v=function(e,t,r){return!1===r?e:(r||(r=Oe),r(e,t,Oe))},y=function(e){var t,r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:me.Utils.Storage.Session;function o(e){try{return JSON.parse(e||"")}catch(n){var t=1,r="";return e&&(t=0,r=e),{e:t,v:r}}}switch(n){case me.Utils.Storage.Cookie:var i;t=decodeURIComponent((null===(i=document.cookie.split("; ").find(function(t){return t.startsWith(e+"=")}))||void 0===i?void 0:i.split("=")[1])||"");break;case me.Utils.Storage.Local:r=o(window.localStorage.getItem(e));break;case me.Utils.Storage.Session:r=o(window.sessionStorage.getItem(e))}return r&&(t=r.v,0!=r.e&&r.e<Date.now()&&(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:me.Utils.Storage.Session;switch(t){case me.Utils.Storage.Cookie:_(e,"",0,t);break;case me.Utils.Storage.Local:window.localStorage.removeItem(e);break;case me.Utils.Storage.Session:window.sessionStorage.removeItem(e)}}(e,n),t="")),s(t||"")},_=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:me.Utils.Storage.Session,o=arguments.length>4?arguments[4]:void 0,i={e:Date.now()+6e4*r,v:String(t)},a=JSON.stringify(i);switch(n){case me.Utils.Storage.Cookie:t="object"==(void 0===t?"undefined":_type_of(t))?JSON.stringify(t):t;var c="".concat(e,"=").concat(encodeURIComponent(t),"; max-age=").concat(60*r,"; path=/; SameSite=Lax; secure");o&&(c+="; domain="+o),document.cookie=c;break;case me.Utils.Storage.Local:window.localStorage.setItem(e,a);break;case me.Utils.Storage.Session:window.sessionStorage.setItem(e,a)}return y(e,n)},b=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Date.now(),r=e.length,n=void 0===r?30:r,o=e.deviceKey,i=void 0===o?"elbDeviceId":o,a=e.deviceStorage,c=void 0===a?"local":a,s=e.deviceAge,f=void 0===s?30:s,d=e.sessionKey,p=void 0===d?"elbSessionId":d,g=e.sessionStorage,v=void 0===g?"local":g,b=e.pulse,h=void 0!==b&&b,w=m(e),k=!1,S=l(function(e,t,r){var n=y(e,r);return n||(n=u(8),_(e,n,1440*t,r)),String(n)})(i,f,c),O=l(function(e,r){var o=JSON.parse(String(y(e,r)));return h||(o.isNew=!1,w.marketing&&(Object.assign(o,w),k=!0),k||o.updated+6e4*n<t?(delete o.id,delete o.referrer,o.start=t,o.count++,o.runs=1,k=!0):o.runs++),o},function(){k=!0})(p,v)||{},j={id:u(12),start:t,isNew:!0,count:1,runs:1},x=Object.assign(j,w,O,{device:S},{isStart:k,storage:!0,updated:t},e.data);return _(p,JSON.stringify(x),2*n,v),x},m=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.isStart||!1,n={isStart:t,storage:!1};if(!1===e.isStart)return n;if(!t&&"navigate"!==_sliced_to_array(performance.getEntriesByType("navigation"),1)[0].type)return n;var o=new URL(e.url||window.location.href),i=e.referrer||document.referrer,a=i&&new URL(i).hostname,c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="clickId",o={},i={utm_campaign:"campaign",utm_content:"content",utm_medium:"medium",utm_source:"source",utm_term:"term",dclid:n,fbclid:n,gclid:n,msclkid:n,ttclid:n,twclid:n,igshid:n,sclid:n};return Object.entries(r(i,t)).forEach(function(t){var r=_sliced_to_array(t,2),i=r[0],a=r[1],c=e.searchParams.get(i);c&&(a===n&&(a=i,o[n]=i),o[a]=c)}),o}(o,e.parameters);if(Object.keys(c).length&&(c.marketing||(c.marketing=!0),t=!0),!t){var s=e.domains||[];s.push(o.hostname),t=!s.includes(a)}return t?Object.assign({isStart:t,storage:!1,start:Date.now(),id:u(12),referrer:a},c,e.data):n},h=function(e,t){return e+(t=null!=t?(!(arguments.length>2&&void 0!==arguments[2])||arguments[2]?"-":"")+t:"")},w=function(e,t,r){var o=d(t,h(e,r,!(arguments.length>3&&void 0!==arguments[3])||arguments[3]))||"";return L(o).reduce(function(e,r){var o=_sliced_to_array(U(r),2),i=o[0],a=o[1];if(!i)return e;if(a||(i.endsWith(":")&&(i=i.slice(0,-1)),a=""),a.startsWith("#")){a=a.slice(1);try{var c=t[a];c||"selected"!==a||(c=t.options[t.selectedIndex].text),a=String(c)}catch(e){a=""}}return i.endsWith("[]")?(i=i.slice(0,-2),n(e[i])||(e[i]=[]),e[i].push(s(a))):e[i]=s(a),e},{})},k=function(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ke.Commands.Prefix,n=e||("undefined"!=typeof document?document.body:void 0);if(!n)return[];var o=[],i=ke.Commands.Action,a="[".concat(h(r,i,!1),"]"),c=function(e){Object.keys(w(r,e,i,!1)).forEach(function(t){o=o.concat(S(e,t,r))})};return n!==("undefined"!=typeof document?document:null)&&(null===(t=n.matches)||void 0===t?void 0:t.call(n,a))&&c(n),P(n,a,c),o},S=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:ke.Commands.Prefix,n=[],o=I(r,e,t),i=o.actions,a=o.nearestOnly;return i.length?(i.forEach(function(o){var i=L(o.actionParams||"",",").reduce(function(e,t){return e[f(t)]=!0,e},{}),c=A(r,e,i,a);if(!c.length){var s="page",u="[".concat(h(r,s),"]"),l=_sliced_to_array(E(e,u,r,s),2),d=l[0],p=l[1];c.push({entity:s,data:d,nested:[],context:p})}c.forEach(function(e){n.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:e.nested})})}),n):n},O=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ke.Commands.Prefix,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document,n=h(e,ke.Commands.Globals,!1),o="[".concat(n,"]"),i={};return P(t,o,function(t){i=r(i,w(e,t,ke.Commands.Globals,!1))}),i},j=function(e,t){var r=window.location,n="page",o=t===document?document.body:t,i=_sliced_to_array(E(o,"[".concat(h(e,n),"]"),e,n),2),a=i[0],c=i[1];return a.domain=r.hostname,a.title=document.title,a.referrer=document.referrer,r.search&&(a.search=r.search),r.hash&&(a.hash=r.hash),[a,c]},x=function(e){var t={};return L(e).forEach(function(e){var r=_sliced_to_array(U(e),2),n=r[0],o=r[1],i=_sliced_to_array(W(n),2),a=i[0],c=i[1];if(a){var s=_sliced_to_array(W(o||""),2),u=s[0],l=s[1];u=u||a,t[a]||(t[a]=[]),t[a].push({trigger:a,triggerParams:c,action:u,actionParams:l})}}),t},A=function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=[],i=t;for(r=0!==Object.keys(r||{}).length?r:void 0;i;){var a=je(e,i,t,r);if(a&&(o.push(a),n))break;i=C(e,i)}return o},C=function(e,t){var r=h(e,ke.Commands.Link,!1);if(t.matches("[".concat(r,"]"))){var n=_sliced_to_array(U(d(t,r)),2),o=n[0];if("child"===n[1])return document.querySelector("[".concat(r,'="').concat(o,':parent"]'))}return!t.parentElement&&t.getRootNode&&_instanceof(t.getRootNode(),ShadowRoot)?t.getRootNode().host:t.parentElement},E=function(e,t,n,o){for(var i={},a={},c=e,s="[".concat(h(n,ke.Commands.Context,!1),"]"),u=0;c;)c.matches(t)&&(i=r(w(n,c,""),i),i=r(w(n,c,o),i)),c.matches(s)&&(Object.entries(w(n,c,ke.Commands.Context,!1)).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],n=t[1];n&&!a[r]&&(a[r]=[n,u])}),++u),c=C(n,c);return[i,a]},P=function(e,t,r){e.querySelectorAll(t).forEach(r)},I=function(e,t,r){for(var n=t;n;){var o=d(n,h(e,ke.Commands.Actions,!1));if(o){var i=x(o);if(i[r])return{actions:i[r],nearestOnly:!1}}var a=d(n,h(e,ke.Commands.Action,!1));if(a){var c=x(a);if(c[r]||"click"!==r)return{actions:c[r]||[],nearestOnly:!0}}n=C(e,n)}return{actions:[],nearestOnly:!1}},L=function(e){if(!e)return[];var t=new RegExp("(?:[^".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:";","']+|'[^']*')+"),"ig");return e.match(t)||[]},U=function(e){var t=_sliced_to_array(e.split(/:(.+)/,2),2),r=t[0],n=t[1];return[f(r),f(n)]},W=function(e){var t=_sliced_to_array(e.split("(",2),2),r=t[0],n=t[1];return[r,n?n.slice(0,-1):""]},D=function(e){var t=Date.now(),r=Ee.get(e);return(!r||t-r.lastChecked>500)&&(r={isVisible:p(e),lastChecked:t},Ee.set(e,r)),r.isVisible},N=function(e){if(window.IntersectionObserver)return l(function(){return new window.IntersectionObserver(function(t){t.forEach(function(t){H(e,t)})},{rootMargin:"0px",threshold:[0,.5]})},function(){})()},H=function(e,t){var r,n=t.target,o=Pe.get(e);if(o){var i=o.timers.get(n);if(t.intersectionRatio>0){var a=Date.now(),c=Ce.get(n);if((!c||a-c.lastChecked>1e3)&&(c={isLarge:n.offsetHeight>window.innerHeight,lastChecked:a},Ce.set(n,c)),t.intersectionRatio>=.5||c.isLarge&&D(n)){var s,u=null===(s=o.elementConfigs)||void 0===s?void 0:s.get(n);if((null==u?void 0:u.multiple)&&u.blocked)return;if(!i){var l=window.setTimeout(function(){return _async_to_generator(function(){var t,r,i,a;return _ts_generator(this,function(c){switch(c.label){case 0:return D(n)?(null==(i=null===(t=o.elementConfigs)||void 0===t?void 0:t.get(n))?void 0:i.context)?[4,F(i.context,n,i.trigger)]:[3,2]:[3,3];case 1:c.sent(),c.label=2;case 2:(null==(a=null===(r=o.elementConfigs)||void 0===r?void 0:r.get(n))?void 0:a.multiple)?a.blocked=!0:function(e,t){var r=Pe.get(e);if(r){r.observer&&r.observer.unobserve(t);var n=r.timers.get(t);n&&(clearTimeout(n),r.timers.delete(t)),Ce.delete(t),Ee.delete(t)}}(e,n),c.label=3;case 3:return[2]}})})()},o.duration);o.timers.set(n,l)}return}}i&&(clearTimeout(i),o.timers.delete(n));var f=null===(r=o.elementConfigs)||void 0===r?void 0:r.get(n);(null==f?void 0:f.multiple)&&(f.blocked=!1)}},R=function(e,t){var r,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{multiple:!1},o=e.settings.scope||document,i=Pe.get(o);(null==i?void 0:i.observer)&&t&&(i.elementConfigs||(i.elementConfigs=new WeakMap),i.elementConfigs.set(t,{multiple:null!==(r=n.multiple)&&void 0!==r&&r,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),i.observer.observe(t))},M=function(e){if(e){var t=Pe.get(e);t&&(t.observer&&t.observer.disconnect(),Pe.delete(e))}},T=function(e,t,r,n,o,s,u){var l=e.elb,f=e.settings;if(c(t)&&t.startsWith("walker "))return l(t,r);if(a(t)){var d=t;return d.source||(d.source=G()),d.globals||(d.globals=O(f.prefix,f.scope||document)),l(d)}var p,g=_sliced_to_array(String(a(t)?t.name:t).split(" "),1)[0],v=a(r)?r:{},y={},_=!1;if(i(r)&&(p=r,_=!0),i(o)?p=o:a(o)&&Object.keys(o).length&&(y=o),p){var b=A(f.prefix||"data-elb",p).find(function(e){return e.entity===g});b&&(_&&(v=b.data),y=b.context)}"page"===g&&(v.id=v.id||window.location.pathname);var m=O(f.prefix,f.scope);return l({name:String(t||""),data:v,context:y,globals:m,nested:s,custom:u,trigger:c(n)?n:"",timing:Math.round((performance.now()-Ie)/10)/100,source:G()})},G=function(){return{type:"browser",id:window.location.href,previous_id:document.referrer}},B=function(e,t,r){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){return n=function(){e(t,r)},"loading"!==document.readyState?n():document.addEventListener("DOMContentLoaded",n),[2]})})()},J=function(e,t){t.scope&&q(e,t)},V=function(e,t){t.scope&&K(e,t)},q=function(e,t){var r=t.scope;r&&(r.addEventListener("click",l(function(t){Y.call(this,e,t)})),r.addEventListener("submit",l(function(t){ee.call(this,e,t)})))},K=function(e,t){var r=t.scope;Le=[];var n=r||document;M(n),function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;Pe.has(e)||Pe.set(e,{observer:N(e),timers:new WeakMap,duration:t})}(n,1e3);var o=h(t.prefix,ke.Commands.Action,!1);n!==document&&$(e,n,o,t),n.querySelectorAll("[".concat(o,"]")).forEach(function(r){$(e,r,o,t)}),Le.length&&re(e,n,t)},F=function(e,t,r){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){return n=S(t,r,e.settings.prefix),[2,Promise.all(n.map(function(t){return T(e,_object_spread_props(_object_spread({name:"".concat(t.entity," ").concat(t.action)},t),{trigger:r}))}))]})})()},$=function(e,t,r,n){var o=d(t,r);o&&Object.values(x(o)).forEach(function(r){return r.forEach(function(r){switch(r.trigger){case Ue.Hover:z(e,t);break;case Ue.Load:Q(e,t);break;case Ue.Pulse:X(e,t,r.triggerParams);break;case Ue.Scroll:Z(t,r.triggerParams);break;case Ue.Impression:R(e,t);break;case Ue.Visible:R(e,t,{multiple:!0});break;case Ue.Wait:te(e,t,r.triggerParams)}})})},Y=function(e,t){F(e,t.target,Ue.Click)},z=function(e,t){t.addEventListener("mouseenter",l(function(t){_instanceof(t.target,Element)&&F(e,t.target,Ue.Hover)}))},Q=function(e,t){F(e,t,Ue.Load)},X=function(e,t){setInterval(function(){document.hidden||F(e,t,Ue.Pulse)},parseInt((arguments.length>2&&void 0!==arguments[2]?arguments[2]:"")||"")||15e3)},Z=function(e){var t=parseInt((arguments.length>1&&void 0!==arguments[1]?arguments[1]:"")||"")||50;t<0||t>100||Le.push([e,t])},ee=function(e,t){t.target&&F(e,t.target,Ue.Submit)},te=function(e,t){setTimeout(function(){return F(e,t,Ue.Wait)},parseInt((arguments.length>2&&void 0!==arguments[2]?arguments[2]:"")||"")||15e3)},re=function(e,t,r){var n=function(e,t){return e.filter(function(e){var r=_sliced_to_array(e,2),n=r[0],o=r[1],i=window.scrollY+window.innerHeight,a=n.offsetTop;if(i<a)return!0;var c=n.clientHeight;return!(100*(1-(a+c-i)/(c||1))>=o)||(F(t,n,Ue.Scroll),!1)})};xe||(xe=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=null;return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];if(null===r)return r=setTimeout(function(){r=null},t),e.apply(void 0,_to_consumable_array(o))}}(function(){Le=n.call(t,Le,e)}),t.addEventListener("scroll",xe))},ne=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data-elb",r=arguments.length>2?arguments[2]:void 0;oe(e,t,r,!0),oe(e,t,r,!1),r.length=0},oe=function(e,t,r,n){var o=[],i=!0;r.forEach(function(e){var t=ae(e)?_to_consumable_array(Array.from(e)):ce(e)?Array.from(e):[e];if((!Array.isArray(t)||0!==t.length)&&(!Array.isArray(t)||1!==t.length||t[0])){var r=t[0],s=!a(r)&&c(r)&&r.startsWith("walker ");if(a(r)){if("object"===(void 0===r?"undefined":_type_of(r))&&0===Object.keys(r).length)return}else{var u=Array.from(t);if(!c(u[0])||""===u[0].trim())return;i&&"walker run"===u[0]&&(i=!1)}(n&&s||!n&&!s)&&o.push(t)}}),o.forEach(function(r){ie(e,t,r)})},ie=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"data-elb",r=arguments.length>2?arguments[2]:void 0;l(function(){if(Array.isArray(r)){var n=_to_array(r),o=n[0],i=n.slice(1);if(!o||c(o)&&""===o.trim())return;if(c(o)&&o.startsWith("walker "))return void e(o,i[0]);T.apply(void 0,[{elb:e,settings:{prefix:t,scope:document,pageview:!1,session:!1,elb:"",elbLayer:!1}},o].concat(_to_consumable_array(i)))}else if(r&&"object"===(void 0===r?"undefined":_type_of(r))){if(0===Object.keys(r).length)return;e(r)}},function(){})()},ae=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"[object Arguments]"===Object.prototype.toString.call(e)},ce=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length},se=function(e){var t={push:e,group:void 0};return g(_object_spread_props(_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),{collector:t}))},ue=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).prefix||"data-elb";return function(t){var r=void 0,n=t,i={},a={},s={},u={},l={},f={};function d(e){return Object.entries(e).map(function(e){var t=_sliced_to_array(e,2),r=t[0],n=t[1];return"".concat(r,":").concat(function(e){if(!o(e)||null===e)return"undefined";var t=String(e);return(t=(t=(t=t.replace(/\\/g,"\\\\")).replace(/;/g,"\\;")).replace(/:/g,"\\:")).replace(/'/g,"\\'")}(n))}).join(";")}var p={entity:function(e){return r=e,n=e,p},data:function(e,t){var r=null!=n?n:"";return i[r]||(i[r]={}),c(e)?i[r][e]=t:Object.assign(i[r],e),p},action:function(e,t){if(c(e))if(o(t))a[e]=t;else if(e.includes(":")){var r=_sliced_to_array(e.split(":",2),2),n=r[0],i=r[1];a[n]=i}else a[e]=e;else Object.assign(a,e);return p},actions:function(e,t){if(c(e))if(o(t))s[e]=t;else if(e.includes(":")){var r=_sliced_to_array(e.split(":",2),2),n=r[0],i=r[1];s[n]=i}else s[e]=e;else Object.assign(s,e);return p},context:function(e,t){return c(e)?u[e]=t:Object.assign(u,e),p},globals:function(e,t){return c(e)?l[e]=t:Object.assign(l,e),p},link:function(e,t){return c(e)?f[e]=t:Object.assign(f,e),p},get:function(){var t={};return r&&(t[e]=r),Object.entries(i).forEach(function(r){var n=_sliced_to_array(r,2),o=n[0],i=n[1];if(Object.keys(i).length>0){var a=o?"".concat(e,"-").concat(o):"".concat(e,"-");t[a]=d(i)}}),Object.keys(a).length>0&&(t["".concat(e,"action")]=d(a)),Object.keys(s).length>0&&(t["".concat(e,"actions")]=d(s)),Object.keys(u).length>0&&(t["".concat(e,"context")]=d(u)),Object.keys(l).length>0&&(t["".concat(e,"globals")]=d(l)),Object.keys(f).length>0&&(t["".concat(e,"link")]=d(f)),t}};return p}},le=Object.defineProperty,fe=Object.getOwnPropertyDescriptor,de=Object.getOwnPropertyNames,pe=Object.prototype.hasOwnProperty,ge={};!function(e,t){for(var r in t)le(e,r,{get:t[r],enumerable:!0})}(ge,{SourceBrowser:function(){return We},createTagger:function(){return ue},default:function(){return Ne},getAllEvents:function(){return k},getElbAttributeName:function(){return h},getElbValues:function(){return w},getEvents:function(){return S},getGlobals:function(){return O},sourceBrowser:function(){return De}});var ve,ye,_e=Object.getOwnPropertyNames,be=(e={"package.json":function(e,t){t.exports={name:"@walkeros/core",description:"Core types and platform-agnostic utilities for walkerOS",version:"0.1.2",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/core"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","web analytics","product analytics","core","types","utils"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},function(){return t||(0,e[_e(e)[0]])((t={exports:{}}).exports,t),t.exports}),me={Utils:{Storage:{Local:"local",Session:"session",Cookie:"cookie"}}},he={merge:!0,shallow:!0,extend:!0},we=(be().version,Object.getOwnPropertyNames),ke=(ve={"package.json":function(e,t){t.exports={name:"@walkeros/collector",description:"Unified platform-agnostic collector for walkerOS",version:"0.1.2",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{"@walkeros/core":"0.1.2"},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/collector"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","collector","event processing"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},{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",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}}),Se=function(){var e=window;(e.elbLayer=e.elbLayer||[]).push(arguments)},Oe=function(e,t){var r=(null==t?void 0:t.push)||Se,n={};return e.id&&(n.session=e.id),e.storage&&e.device&&(n.device=e.device),r("walker user",n),e.isStart&&r({name:"session start",data:e}),e};function je(e,t,n,o){var i=d(t,h(e));if(!i||o&&!o[i])return null;var a=[t],c="[".concat(h(e,i),"],[").concat(h(e,""),"]"),s=h(e,ke.Commands.Link,!1),u={},l=[],f=_sliced_to_array(E(n||t,c,e,i),2),p=f[0],g=f[1];P(t,"[".concat(s,"]"),function(t){var r=_sliced_to_array(U(d(t,s)),2),n=r[0];"parent"===r[1]&&P(document.body,"[".concat(s,'="').concat(n,':child"]'),function(t){a.push(t);var r=je(e,t);r&&l.push(r)})});var v=[];a.forEach(function(e){e.matches(c)&&v.push(e),P(e,c,function(e){return v.push(e)})});var y={};return v.forEach(function(t){y=r(y,w(e,t,"")),u=r(u,w(e,t,i))}),u=r(r(y,u),p),a.forEach(function(t){P(t,"[".concat(h(e),"]"),function(t){var r=je(e,t);r&&l.push(r)})}),{entity:i,data:u,context:g,nested:l}}var xe,Ae,Ce=new WeakMap,Ee=new WeakMap,Pe=new WeakMap,Ie=performance.now(),Le=[],Ue={Click:"click",Custom:"custom",Hover:"hover",Load:"load",Pulse:"pulse",Scroll:"scroll",Submit:"submit",Impression:"impression",Visible:"visible",Wait:"wait"},We={},De=function(e,t){return _async_to_generator(function(){var r,n,o,i,a,s,u,l,f,d,p;return _ts_generator(this,function(g){switch(g.label){case 0:if(g.trys.push([0,3,,4]),n=(r=t||{}).elb,o=r.window,i=r.document,!n)throw new Error("Browser source requires elb function in environment");return a=(null==e?void 0:e.settings)||{},s=function(){return _object_spread({prefix:"data-elb",pageview:!0,session:!0,elb:"elb",elbLayer:"elbLayer",scope:(arguments.length>1?arguments[1]:void 0)||void 0},arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}(a,i),u={settings:s},l={elb:n,settings:s},i&&o?(!1!==s.elbLayer&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.name||"elbLayer",n=t.window||("undefined"!=typeof window?window:void 0);if(n){var o=n;o[r]||(o[r]=[]);var i=o[r];i.push=function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];if(ae(n[0])){var i=_to_consumable_array(Array.from(n[0])),a=Array.prototype.push.apply(this,[i]);return ie(e,t.prefix,i),a}var c=Array.prototype.push.apply(this,n);return n.forEach(function(r){ie(e,t.prefix,r)}),c},Array.isArray(i)&&i.length>0&&ne(e,t.prefix,i)}}(n,{name:c(s.elbLayer)?s.elbLayer:"elbLayer",prefix:s.prefix,window:o}),s.session&&(f="boolean"==typeof s.session?{}:s.session,se(n,f)),[4,B(J,l,s)]):[3,2];case 1:g.sent(),function(){if(V(l,s),s.pageview){var e=_sliced_to_array(j(s.prefix||"data-elb",s.scope),2),t=e[0],r=e[1];T(l,"page view",t,"load",r)}}(),c(s.elb)&&s.elb&&(o[s.elb]=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=_sliced_to_array(t,6),o=n[0],i=n[1],a=n[2],c=n[3],s=n[4],u=n[5];return T(l,o,i,a,c,s,u)}),g.label=2;case 2:return d=function(e,t){return _async_to_generator(function(){var r,a,c,u;return _ts_generator(this,function(f){switch(e){case"consent":s.session&&t&&(r="boolean"==typeof s.session?{}:s.session,se(n,r));break;case"session":case"ready":default:break;case"run":i&&o&&(V(l,s),s.pageview&&(a=_sliced_to_array(j(s.prefix||"data-elb",s.scope),2),c=a[0],u=a[1],T(l,"page view",c,"load",u)))}return[2]})})()},p=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=_sliced_to_array(t,6),o=n[0],i=n[1],a=n[2],c=n[3],s=n[4],u=n[5];return T(l,o,i,a,c,s,u)},[2,{type:"browser",config:u,push:p,destroy:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return i&&M(s.scope||i),[2]})})()},on:d}];case 3:throw g.sent();case 4:return[2]}})})()},Ne=De;return Ae=ge,function(e,t,r,n){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,i=!1,a=void 0;try{for(var c,s=function(){var o=c.value;pe.call(e,o)||o===r||le(e,o,{get:function(){return t[o]},enumerable:!(n=fe(t,o))||n.enumerable})},u=de(t)[Symbol.iterator]();!(o=(c=u.next()).done);o=!0)s()}catch(e){i=!0,a=e}finally{try{o||null==u.return||u.return()}finally{if(i)throw a}}}return e}(le({},"__esModule",{value:!0}),Ae)}();
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e,t,n,r=Object.defineProperty,o=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,c={};((e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})})(c,{SourceBrowser:()=>ve,createTagger:()=>ke,default:()=>je,getAllEvents:()=>E,getEvents:()=>$,getGlobals:()=>S,sourceBrowser:()=>Oe}),module.exports=(e=c,((e,t,n,c)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let a of s(t))i.call(e,a)||a===n||r(e,a,{get:()=>t[a],enumerable:!(c=o(t,a))||c.enumerable});return e})(r({},"__esModule",{value:!0}),e));var a=Object.getOwnPropertyNames,l=(t={"package.json"(e,t){t.exports={name:"@walkeros/core",description:"Core types and platform-agnostic utilities for walkerOS",version:"0.1.1",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/core"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","web analytics","product analytics","core","types","utils"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},function(){return n||(0,t[a(t)[0]])((n={exports:{}}).exports,n),n.exports}),u={merge:!0,shallow:!0,extend:!0};function f(e,t={},n={}){n={...u,...n};const r=Object.entries(t).reduce((t,[r,o])=>{const s=e[r];return n.merge&&Array.isArray(s)&&Array.isArray(o)?t[r]=o.reduce((e,t)=>e.includes(t)?e:[...e,t],[...s]):(n.extend||r in e)&&(t[r]=o),t},{});return n.shallow?{...e,...r}:(Object.assign(e,r),e)}function d(e){return Array.isArray(e)}function p(e){return void 0!==e}function g(e){return e===document||e instanceof Element}function m(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function b(e){return"string"==typeof e}function h(e){if("true"===e)return!0;if("false"===e)return!1;const t=Number(e);return e==t&&""!==e?t:String(e)}var{version:y}=l();function w(e,t,n){return function(...r){try{return e(...r)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function v(e){return e?e.trim().replace(/^'|'$/g,"").trim():""}var k=require("@walkeros/collector"),O=require("@walkeros/web-core"),j=require("@walkeros/collector"),x=require("@walkeros/web-core");function C(e,t,n=!0){return e+(t=null!=t?(n?"-":"")+t:"")}function A(e,t,n,r=!0){return R((0,x.getAttribute)(t,C(e,n,r))||"").reduce((e,n)=>{let[r,o]=N(n);if(!r)return e;if(o||(r.endsWith(":")&&(r=r.slice(0,-1)),o=""),o.startsWith("#")){o=o.slice(1);try{let e=t[o];e||"selected"!==o||(e=t.options[t.selectedIndex].text),o=String(e)}catch(e){o=""}}return r.endsWith("[]")?(r=r.slice(0,-2),d(e[r])||(e[r]=[]),e[r].push(h(o))):e[r]=h(o),e},{})}function E(e,t=j.Const.Commands.Prefix){var n;const r=e||("undefined"!=typeof document?document.body:void 0);if(!r)return[];let o=[];const s=j.Const.Commands.Action,i=`[${C(t,s,!1)}]`,c=e=>{Object.keys(A(t,e,s,!1)).forEach(n=>{o=o.concat($(e,n,t))})};return r!==("undefined"!=typeof document?document:null)&&(null==(n=r.matches)?void 0:n.call(r,i))&&c(r),T(r,i,c),o}function $(e,t,n=j.Const.Commands.Prefix){const r=[],{actions:o,nearestOnly:s}=function(e,t,n){let r=t;for(;r;){const t=(0,x.getAttribute)(r,C(e,j.Const.Commands.Actions,!1));if(t){const e=P(t);if(e[n])return{actions:e[n],nearestOnly:!1}}const o=(0,x.getAttribute)(r,C(e,j.Const.Commands.Action,!1));if(o){const e=P(o);if(e[n]||"click"!==n)return{actions:e[n]||[],nearestOnly:!0}}r=M(e,r)}return{actions:[],nearestOnly:!1}}(n,e,t);return o.length?(o.forEach(o=>{const i=R(o.actionParams||"",",").reduce((e,t)=>(e[v(t)]=!0,e),{}),c=W(n,e,i,s);if(!c.length){const t="page",r=`[${C(n,t)}]`,[o,s]=I(e,r,n,t);c.push({entity:t,data:o,nested:[],context:s})}c.forEach(e=>{r.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:e.nested})})}),r):r}function S(e=j.Const.Commands.Prefix,t=document){const n=C(e,j.Const.Commands.Globals,!1);let r={};return T(t,`[${n}]`,t=>{r=f(r,A(e,t,j.Const.Commands.Globals,!1))}),r}function L(e,t){const n=window.location,r="page",o=t===document?document.body:t,[s,i]=I(o,`[${C(e,r)}]`,e,r);return s.domain=n.hostname,s.title=document.title,s.referrer=document.referrer,n.search&&(s.search=n.search),n.hash&&(s.hash=n.hash),[s,i]}function P(e){const t={};return R(e).forEach(e=>{const[n,r]=N(e),[o,s]=D(n);if(!o)return;let[i,c]=D(r||"");i=i||o,t[o]||(t[o]=[]),t[o].push({trigger:o,triggerParams:s,action:i,actionParams:c})}),t}function W(e,t,n,r=!1){const o=[];let s=t;for(n=0!==Object.keys(n||{}).length?n:void 0;s;){const i=q(e,s,t,n);if(i&&(o.push(i),r))break;s=M(e,s)}return o}function q(e,t,n,r){const o=(0,x.getAttribute)(t,C(e));if(!o||r&&!r[o])return null;const s=[t],i=`[${C(e,o)}],[${C(e,"")}]`,c=C(e,j.Const.Commands.Link,!1);let a={};const l=[],[u,d]=I(n||t,i,e,o);T(t,`[${c}]`,t=>{const[n,r]=N((0,x.getAttribute)(t,c));"parent"===r&&T(document.body,`[${c}="${n}:child"]`,t=>{s.push(t);const n=q(e,t);n&&l.push(n)})});const p=[];s.forEach(e=>{e.matches(i)&&p.push(e),T(e,i,e=>p.push(e))});let g={};return p.forEach(t=>{g=f(g,A(e,t,"")),a=f(a,A(e,t,o))}),a=f(f(g,a),u),s.forEach(t=>{T(t,`[${C(e)}]`,t=>{const n=q(e,t);n&&l.push(n)})}),{entity:o,data:a,context:d,nested:l}}function M(e,t){const n=C(e,j.Const.Commands.Link,!1);if(t.matches(`[${n}]`)){const[e,r]=N((0,x.getAttribute)(t,n));if("child"===r)return document.querySelector(`[${n}="${e}:parent"]`)}return!t.parentElement&&t.getRootNode&&t.getRootNode()instanceof ShadowRoot?t.getRootNode().host:t.parentElement}function I(e,t,n,r){let o={};const s={};let i=e;const c=`[${C(n,j.Const.Commands.Context,!1)}]`;let a=0;for(;i;)i.matches(t)&&(o=f(A(n,i,""),o),o=f(A(n,i,r),o)),i.matches(c)&&(Object.entries(A(n,i,j.Const.Commands.Context,!1)).forEach(([e,t])=>{t&&!s[e]&&(s[e]=[t,a])}),++a),i=M(n,i);return[o,s]}function T(e,t,n){e.querySelectorAll(t).forEach(n)}function R(e,t=";"){if(!e)return[];const n=new RegExp(`(?:[^${t}']+|'[^']*')+`,"ig");return e.match(n)||[]}function N(e){const[t,n]=e.split(/:(.+)/,2);return[v(t),v(n)]}function D(e){const[t,n]=e.split("(",2);return[t,n?n.slice(0,-1):""]}var H=require("@walkeros/web-core"),G=new WeakMap,_=new WeakMap,B=new WeakMap;function V(e){const t=Date.now();let n=_.get(e);return(!n||t-n.lastChecked>500)&&(n={isVisible:(0,H.isVisible)(e),lastChecked:t},_.set(e,n)),n.isVisible}function Y(e){if(window.IntersectionObserver)return w(()=>new window.IntersectionObserver(t=>{t.forEach(t=>{!function(e,t){var n,r;const o=t.target,s=B.get(e);if(!s)return;const i=s.timers.get(o);if(t.intersectionRatio>0){const r=Date.now();let c=G.get(o);(!c||r-c.lastChecked>1e3)&&(c={isLarge:o.offsetHeight>window.innerHeight,lastChecked:r},G.set(o,c));if(t.intersectionRatio>=.5||c.isLarge&&V(o)){const t=null==(n=s.elementConfigs)?void 0:n.get(o);if((null==t?void 0:t.multiple)&&t.blocked)return;if(!i){const t=window.setTimeout(async()=>{var t,n;if(V(o)){const r=null==(t=s.elementConfigs)?void 0:t.get(o);(null==r?void 0:r.context)&&await ue(r.context,o,r.trigger);const i=null==(n=s.elementConfigs)?void 0:n.get(o);(null==i?void 0:i.multiple)?i.blocked=!0:function(e,t){const n=B.get(e);if(!n)return;n.observer&&n.observer.unobserve(t);const r=n.timers.get(t);r&&(clearTimeout(r),n.timers.delete(t)),G.delete(t),_.delete(t)}(e,o)}},s.duration);s.timers.set(o,t)}return}}i&&(clearTimeout(i),s.timers.delete(o));const c=null==(r=s.elementConfigs)?void 0:r.get(o);(null==c?void 0:c.multiple)&&(c.blocked=!1)}(e,t)})},{rootMargin:"0px",threshold:[0,.5]}),()=>{})()}function z(e,t,n={multiple:!1}){var r;const o=e.settings.scope||document,s=B.get(o);(null==s?void 0:s.observer)&&t&&(s.elementConfigs||(s.elementConfigs=new WeakMap),s.elementConfigs.set(t,{multiple:null!=(r=n.multiple)&&r,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),s.observer.observe(t))}function F(e){if(!e)return;const t=B.get(e);t&&(t.observer&&t.observer.disconnect(),B.delete(e))}var J=performance.now();function K(e,t,n,r,o,s,i){const{elb:c,settings:a}=e;if(b(t)&&t.startsWith("walker ")){return c(t,n)}if(m(t)){const e=t;return e.source||(e.source=Q()),c(e)}const[l]=String(m(t)?t.name:t).split(" ");let u,f=m(n)?n:{},d={},p=!1;if(g(n)&&(u=n,p=!0),g(o)?u=o:m(o)&&Object.keys(o).length&&(d=o),u){const e=W(a.prefix||"data-elb",u).find(e=>e.entity===l);e&&(p&&(f=e.data),d=e.context)}"page"===l&&(f.id=f.id||window.location.pathname);return c({name:String(t||""),data:f,context:d,nested:s,custom:i,trigger:b(r)?r:"",timing:Math.round((performance.now()-J)/10)/100,source:Q()})}function Q(){return{type:"browser",id:window.location.href,previous_id:document.referrer}}var U,X=[],Z="click",ee="hover",te="load",ne="pulse",re="scroll",oe="submit",se="impression",ie="visible",ce="wait";function ae(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;if(!n)return;n.addEventListener("click",w(function(t){de.call(this,e,t)})),n.addEventListener("submit",w(function(t){pe.call(this,e,t)}))}(e,t)}function le(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;X=[];const r=n||document;F(r),function(e,t=1e3){B.has(e)||B.set(e,{observer:Y(e),timers:new WeakMap,duration:t})}(r,1e3);const o=C(t.prefix,k.Const.Commands.Action,!1);r!==document&&fe(e,r,o,t);r.querySelectorAll(`[${o}]`).forEach(n=>{fe(e,n,o,t)}),X.length&&function(e,t){const n=(e,t)=>e.filter(([e,n])=>{const r=window.scrollY+window.innerHeight,o=e.offsetTop;if(r<o)return!0;const s=e.clientHeight;return!(100*(1-(o+s-r)/(s||1))>=n)||(ue(t,e,re),!1)});U||(U=function(e,t=1e3){let n=null;return function(...r){if(null===n)return n=setTimeout(()=>{n=null},t),e(...r)}}(function(){X=n.call(t,X,e)}),t.addEventListener("scroll",U))}(e,r)}(e,t)}async function ue(e,t,n){const r=$(t,n,e.settings.prefix);return Promise.all(r.map(t=>K(e,{name:`${t.entity} ${t.action}`,...t,trigger:n})))}function fe(e,t,n,r){const o=(0,O.getAttribute)(t,n);o&&Object.values(P(o)).forEach(n=>n.forEach(n=>{switch(n.trigger){case ee:!function(e,t){t.addEventListener("mouseenter",w(function(t){t.target instanceof Element&&ue(e,t.target,ee)}))}(e,t);break;case te:!function(e,t){ue(e,t,te)}(e,t);break;case ne:!function(e,t,n=""){setInterval(()=>{document.hidden||ue(e,t,ne)},parseInt(n||"")||15e3)}(e,t,n.triggerParams);break;case re:!function(e,t=""){const n=parseInt(t||"")||50;if(n<0||n>100)return;X.push([e,n])}(t,n.triggerParams);break;case se:z(e,t);break;case ie:z(e,t,{multiple:!0});break;case ce:!function(e,t,n=""){setTimeout(()=>ue(e,t,ce),parseInt(n||"")||15e3)}(e,t,n.triggerParams)}}))}function de(e,t){ue(e,t.target,Z)}function pe(e,t){t.target&&ue(e,t.target,oe)}function ge(e,t={}){const n=t.name||"elbLayer",r=t.window||("undefined"!=typeof window?window:void 0);if(!r)return;const o=r;o[n]||(o[n]=[]);const s=o[n];s.push=function(...n){if(he(n[0])){const r=[...Array.from(n[0])],o=Array.prototype.push.apply(this,[r]);return be(e,t.prefix,r),o}const r=Array.prototype.push.apply(this,n);return n.forEach(n=>{be(e,t.prefix,n)}),r},Array.isArray(s)&&s.length>0&&function(e,t="data-elb",n){me(e,t,n,!0),me(e,t,n,!1),n.length=0}(e,t.prefix,s)}function me(e,t,n,r){const o=[];let s=!0;n.forEach(e=>{const t=he(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;if(Array.isArray(t)&&1===t.length&&!t[0])return;const i=t[0],c=!m(i)&&b(i)&&i.startsWith("walker ");if(m(i)){if("object"==typeof i&&0===Object.keys(i).length)return}else{const e=Array.from(t);if(!b(e[0])||""===e[0].trim())return;const n="walker run";s&&e[0]===n&&(s=!1)}(r&&c||!r&&!c)&&o.push(t)}),o.forEach(n=>{be(e,t,n)})}function be(e,t="data-elb",n){w(()=>{if(Array.isArray(n)){const[r,...o]=n;if(!r||b(r)&&""===r.trim())return;if(b(r)&&r.startsWith("walker "))return void e(r,o[0]);K({elb:e,settings:{prefix:t,scope:document,pageview:!1,session:!1,elb:"",elbLayer:!1}},r,...o)}else if(n&&"object"==typeof n){if(0===Object.keys(n).length)return;e(n)}},()=>{})()}function he(e){return null!=e&&"object"==typeof e&&"[object Arguments]"===Object.prototype.toString.call(e)}var ye=require("@walkeros/web-core");function we(e,t={}){const n={push:e,group:void 0};return(0,ye.sessionStart)({...t,collector:n})}var ve={};function ke(e={}){const t=e.prefix||"data-elb";return function(e){let n,r=e;const o={},s={},i={},c={},a={},l={};function u(e){return Object.entries(e).map(([e,t])=>`${e}:${function(e){if(!p(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 f={entity:e=>(n=e,r=e,f),data(e,t){const n=null!=r?r:"";return o[n]||(o[n]={}),b(e)?o[n][e]=t:Object.assign(o[n],e),f},action(e,t){if(b(e))if(p(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 f},actions(e,t){if(b(e))if(p(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 f},context:(e,t)=>(b(e)?c[e]=t:Object.assign(c,e),f),globals:(e,t)=>(b(e)?a[e]=t:Object.assign(a,e),f),link:(e,t)=>(b(e)?l[e]=t:Object.assign(l,e),f),get(){const e={};return n&&(e[t]=n),Object.entries(o).forEach(([n,r])=>{if(Object.keys(r).length>0){e[n?`${t}-${n}`:`${t}-`]=u(r)}}),Object.keys(s).length>0&&(e[`${t}action`]=u(s)),Object.keys(i).length>0&&(e[`${t}actions`]=u(i)),Object.keys(c).length>0&&(e[`${t}context`]=u(c)),Object.keys(a).length>0&&(e[`${t}globals`]=u(a)),Object.keys(l).length>0&&(e[`${t}link`]=u(l)),e}};return f}}var Oe=async(e,t)=>{try{const n=t||{},{elb:r,window:o,document:s}=n;if(!r)throw new Error("Browser source requires elb function in environment");const i=function(e={},t){return{prefix:"data-elb",pageview:!0,session:!0,elb:"elb",elbLayer:"elbLayer",scope:t||void 0,...e}}((null==e?void 0:e.settings)||{},s),c={settings:i},a={elb:r,settings:i};if(s&&o){if(!1!==i.elbLayer&&ge(r,{name:b(i.elbLayer)?i.elbLayer:"elbLayer",prefix:i.prefix,window:o}),i.session){const e="boolean"==typeof i.session?{}:i.session;we(r,e)}await async function(e,t,n){const r=()=>{e(t,n)};"loading"!==document.readyState?r():document.addEventListener("DOMContentLoaded",r)}(ae,a,i);(()=>{if(le(a,i),i.pageview){const[e,t]=L(i.prefix||"data-elb",i.scope);K(a,"page view",e,"load",t)}})(),b(i.elb)&&i.elb&&(o[i.elb]=(...e)=>{const[t,n,r,o,s,i]=e;return K(a,t,n,r,o,s,i)})}return{type:"browser",config:c,push:(...e)=>{const[t,n,r,o,s,i]=e;return K(a,t,n,r,o,s,i)},destroy:async()=>{s&&F(i.scope||s)},on:async(e,t)=>{switch(e){case"consent":if(i.session&&t){const e="boolean"==typeof i.session?{}:i.session;we(r,e)}break;case"session":case"ready":default:break;case"run":if(s&&o&&(le(a,i),i.pageview)){const[e,t]=L(i.prefix||"data-elb",i.scope);K(a,"page view",e,"load",t)}}}}}catch(e){throw e}},je=Oe;//# sourceMappingURL=index.js.map
|
|
1
|
+
"use strict";var e,t,n,r=Object.defineProperty,o=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,c={};((e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})})(c,{SourceBrowser:()=>ve,createTagger:()=>ke,default:()=>xe,getAllEvents:()=>E,getElbAttributeName:()=>C,getElbValues:()=>A,getEvents:()=>$,getGlobals:()=>S,sourceBrowser:()=>Oe}),module.exports=(e=c,((e,t,n,c)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let a of s(t))i.call(e,a)||a===n||r(e,a,{get:()=>t[a],enumerable:!(c=o(t,a))||c.enumerable});return e})(r({},"__esModule",{value:!0}),e));var a=Object.getOwnPropertyNames,l=(t={"package.json"(e,t){t.exports={name:"@walkeros/core",description:"Core types and platform-agnostic utilities for walkerOS",version:"0.1.2",main:"./dist/index.js",module:"./dist/index.mjs",types:"./dist/index.d.ts",license:"MIT",files:["dist/**"],scripts:{build:"tsup --silent",clean:"rm -rf .turbo && rm -rf node_modules && rm -rf dist",dev:"jest --watchAll --colors",lint:'tsc && eslint "**/*.ts*"',test:"jest",update:"npx npm-check-updates -u && npm update"},dependencies:{},devDependencies:{},repository:{url:"git+https://github.com/elbwalker/walkerOS.git",directory:"packages/core"},author:"elbwalker <hello@elbwalker.com>",homepage:"https://github.com/elbwalker/walkerOS#readme",bugs:{url:"https://github.com/elbwalker/walkerOS/issues"},keywords:["walker","walkerOS","analytics","tracking","data collection","measurement","data privacy","privacy friendly","web analytics","product analytics","core","types","utils"],funding:[{type:"GitHub Sponsors",url:"https://github.com/sponsors/elbwalker"}]}}},function(){return n||(0,t[a(t)[0]])((n={exports:{}}).exports,n),n.exports}),u={merge:!0,shallow:!0,extend:!0};function f(e,t={},n={}){n={...u,...n};const r=Object.entries(t).reduce((t,[r,o])=>{const s=e[r];return n.merge&&Array.isArray(s)&&Array.isArray(o)?t[r]=o.reduce((e,t)=>e.includes(t)?e:[...e,t],[...s]):(n.extend||r in e)&&(t[r]=o),t},{});return n.shallow?{...e,...r}:(Object.assign(e,r),e)}function d(e){return Array.isArray(e)}function p(e){return void 0!==e}function g(e){return e===document||e instanceof Element}function m(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function b(e){return"string"==typeof e}function h(e){if("true"===e)return!0;if("false"===e)return!1;const t=Number(e);return e==t&&""!==e?t:String(e)}var{version:y}=l();function w(e,t,n){return function(...r){try{return e(...r)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function v(e){return e?e.trim().replace(/^'|'$/g,"").trim():""}var k=require("@walkeros/collector"),O=require("@walkeros/web-core"),x=require("@walkeros/collector"),j=require("@walkeros/web-core");function C(e,t,n=!0){return e+(t=null!=t?(n?"-":"")+t:"")}function A(e,t,n,r=!0){return N((0,j.getAttribute)(t,C(e,n,r))||"").reduce((e,n)=>{let[r,o]=R(n);if(!r)return e;if(o||(r.endsWith(":")&&(r=r.slice(0,-1)),o=""),o.startsWith("#")){o=o.slice(1);try{let e=t[o];e||"selected"!==o||(e=t.options[t.selectedIndex].text),o=String(e)}catch(e){o=""}}return r.endsWith("[]")?(r=r.slice(0,-2),d(e[r])||(e[r]=[]),e[r].push(h(o))):e[r]=h(o),e},{})}function E(e,t=x.Const.Commands.Prefix){var n;const r=e||("undefined"!=typeof document?document.body:void 0);if(!r)return[];let o=[];const s=x.Const.Commands.Action,i=`[${C(t,s,!1)}]`,c=e=>{Object.keys(A(t,e,s,!1)).forEach(n=>{o=o.concat($(e,n,t))})};return r!==("undefined"!=typeof document?document:null)&&(null==(n=r.matches)?void 0:n.call(r,i))&&c(r),T(r,i,c),o}function $(e,t,n=x.Const.Commands.Prefix){const r=[],{actions:o,nearestOnly:s}=function(e,t,n){let r=t;for(;r;){const t=(0,j.getAttribute)(r,C(e,x.Const.Commands.Actions,!1));if(t){const e=P(t);if(e[n])return{actions:e[n],nearestOnly:!1}}const o=(0,j.getAttribute)(r,C(e,x.Const.Commands.Action,!1));if(o){const e=P(o);if(e[n]||"click"!==n)return{actions:e[n]||[],nearestOnly:!0}}r=M(e,r)}return{actions:[],nearestOnly:!1}}(n,e,t);return o.length?(o.forEach(o=>{const i=N(o.actionParams||"",",").reduce((e,t)=>(e[v(t)]=!0,e),{}),c=W(n,e,i,s);if(!c.length){const t="page",r=`[${C(n,t)}]`,[o,s]=I(e,r,n,t);c.push({entity:t,data:o,nested:[],context:s})}c.forEach(e=>{r.push({entity:e.entity,action:o.action,data:e.data,trigger:t,context:e.context,nested:e.nested})})}),r):r}function S(e=x.Const.Commands.Prefix,t=document){const n=C(e,x.Const.Commands.Globals,!1);let r={};return T(t,`[${n}]`,t=>{r=f(r,A(e,t,x.Const.Commands.Globals,!1))}),r}function L(e,t){const n=window.location,r="page",o=t===document?document.body:t,[s,i]=I(o,`[${C(e,r)}]`,e,r);return s.domain=n.hostname,s.title=document.title,s.referrer=document.referrer,n.search&&(s.search=n.search),n.hash&&(s.hash=n.hash),[s,i]}function P(e){const t={};return N(e).forEach(e=>{const[n,r]=R(e),[o,s]=D(n);if(!o)return;let[i,c]=D(r||"");i=i||o,t[o]||(t[o]=[]),t[o].push({trigger:o,triggerParams:s,action:i,actionParams:c})}),t}function W(e,t,n,r=!1){const o=[];let s=t;for(n=0!==Object.keys(n||{}).length?n:void 0;s;){const i=q(e,s,t,n);if(i&&(o.push(i),r))break;s=M(e,s)}return o}function q(e,t,n,r){const o=(0,j.getAttribute)(t,C(e));if(!o||r&&!r[o])return null;const s=[t],i=`[${C(e,o)}],[${C(e,"")}]`,c=C(e,x.Const.Commands.Link,!1);let a={};const l=[],[u,d]=I(n||t,i,e,o);T(t,`[${c}]`,t=>{const[n,r]=R((0,j.getAttribute)(t,c));"parent"===r&&T(document.body,`[${c}="${n}:child"]`,t=>{s.push(t);const n=q(e,t);n&&l.push(n)})});const p=[];s.forEach(e=>{e.matches(i)&&p.push(e),T(e,i,e=>p.push(e))});let g={};return p.forEach(t=>{g=f(g,A(e,t,"")),a=f(a,A(e,t,o))}),a=f(f(g,a),u),s.forEach(t=>{T(t,`[${C(e)}]`,t=>{const n=q(e,t);n&&l.push(n)})}),{entity:o,data:a,context:d,nested:l}}function M(e,t){const n=C(e,x.Const.Commands.Link,!1);if(t.matches(`[${n}]`)){const[e,r]=R((0,j.getAttribute)(t,n));if("child"===r)return document.querySelector(`[${n}="${e}:parent"]`)}return!t.parentElement&&t.getRootNode&&t.getRootNode()instanceof ShadowRoot?t.getRootNode().host:t.parentElement}function I(e,t,n,r){let o={};const s={};let i=e;const c=`[${C(n,x.Const.Commands.Context,!1)}]`;let a=0;for(;i;)i.matches(t)&&(o=f(A(n,i,""),o),o=f(A(n,i,r),o)),i.matches(c)&&(Object.entries(A(n,i,x.Const.Commands.Context,!1)).forEach(([e,t])=>{t&&!s[e]&&(s[e]=[t,a])}),++a),i=M(n,i);return[o,s]}function T(e,t,n){e.querySelectorAll(t).forEach(n)}function N(e,t=";"){if(!e)return[];const n=new RegExp(`(?:[^${t}']+|'[^']*')+`,"ig");return e.match(n)||[]}function R(e){const[t,n]=e.split(/:(.+)/,2);return[v(t),v(n)]}function D(e){const[t,n]=e.split("(",2);return[t,n?n.slice(0,-1):""]}var H=require("@walkeros/web-core"),G=new WeakMap,V=new WeakMap,_=new WeakMap;function B(e){const t=Date.now();let n=V.get(e);return(!n||t-n.lastChecked>500)&&(n={isVisible:(0,H.isVisible)(e),lastChecked:t},V.set(e,n)),n.isVisible}function Y(e){if(window.IntersectionObserver)return w(()=>new window.IntersectionObserver(t=>{t.forEach(t=>{!function(e,t){var n,r;const o=t.target,s=_.get(e);if(!s)return;const i=s.timers.get(o);if(t.intersectionRatio>0){const r=Date.now();let c=G.get(o);(!c||r-c.lastChecked>1e3)&&(c={isLarge:o.offsetHeight>window.innerHeight,lastChecked:r},G.set(o,c));if(t.intersectionRatio>=.5||c.isLarge&&B(o)){const t=null==(n=s.elementConfigs)?void 0:n.get(o);if((null==t?void 0:t.multiple)&&t.blocked)return;if(!i){const t=window.setTimeout(async()=>{var t,n;if(B(o)){const r=null==(t=s.elementConfigs)?void 0:t.get(o);(null==r?void 0:r.context)&&await ue(r.context,o,r.trigger);const i=null==(n=s.elementConfigs)?void 0:n.get(o);(null==i?void 0:i.multiple)?i.blocked=!0:function(e,t){const n=_.get(e);if(!n)return;n.observer&&n.observer.unobserve(t);const r=n.timers.get(t);r&&(clearTimeout(r),n.timers.delete(t)),G.delete(t),V.delete(t)}(e,o)}},s.duration);s.timers.set(o,t)}return}}i&&(clearTimeout(i),s.timers.delete(o));const c=null==(r=s.elementConfigs)?void 0:r.get(o);(null==c?void 0:c.multiple)&&(c.blocked=!1)}(e,t)})},{rootMargin:"0px",threshold:[0,.5]}),()=>{})()}function z(e,t,n={multiple:!1}){var r;const o=e.settings.scope||document,s=_.get(o);(null==s?void 0:s.observer)&&t&&(s.elementConfigs||(s.elementConfigs=new WeakMap),s.elementConfigs.set(t,{multiple:null!=(r=n.multiple)&&r,blocked:!1,context:e,trigger:n.multiple?"visible":"impression"}),s.observer.observe(t))}function F(e){if(!e)return;const t=_.get(e);t&&(t.observer&&t.observer.disconnect(),_.delete(e))}var J=performance.now();function K(e,t,n,r,o,s,i){const{elb:c,settings:a}=e;if(b(t)&&t.startsWith("walker ")){return c(t,n)}if(m(t)){const e=t;return e.source||(e.source=Q()),e.globals||(e.globals=S(a.prefix,a.scope||document)),c(e)}const[l]=String(m(t)?t.name:t).split(" ");let u,f=m(n)?n:{},d={},p=!1;if(g(n)&&(u=n,p=!0),g(o)?u=o:m(o)&&Object.keys(o).length&&(d=o),u){const e=W(a.prefix||"data-elb",u).find(e=>e.entity===l);e&&(p&&(f=e.data),d=e.context)}"page"===l&&(f.id=f.id||window.location.pathname);const h=S(a.prefix,a.scope);return c({name:String(t||""),data:f,context:d,globals:h,nested:s,custom:i,trigger:b(r)?r:"",timing:Math.round((performance.now()-J)/10)/100,source:Q()})}function Q(){return{type:"browser",id:window.location.href,previous_id:document.referrer}}var U,X=[],Z="click",ee="hover",te="load",ne="pulse",re="scroll",oe="submit",se="impression",ie="visible",ce="wait";function ae(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;if(!n)return;n.addEventListener("click",w(function(t){de.call(this,e,t)})),n.addEventListener("submit",w(function(t){pe.call(this,e,t)}))}(e,t)}function le(e,t){if(!t.scope)return;!function(e,t){const n=t.scope;X=[];const r=n||document;F(r),function(e,t=1e3){_.has(e)||_.set(e,{observer:Y(e),timers:new WeakMap,duration:t})}(r,1e3);const o=C(t.prefix,k.Const.Commands.Action,!1);r!==document&&fe(e,r,o,t);r.querySelectorAll(`[${o}]`).forEach(n=>{fe(e,n,o,t)}),X.length&&function(e,t){const n=(e,t)=>e.filter(([e,n])=>{const r=window.scrollY+window.innerHeight,o=e.offsetTop;if(r<o)return!0;const s=e.clientHeight;return!(100*(1-(o+s-r)/(s||1))>=n)||(ue(t,e,re),!1)});U||(U=function(e,t=1e3){let n=null;return function(...r){if(null===n)return n=setTimeout(()=>{n=null},t),e(...r)}}(function(){X=n.call(t,X,e)}),t.addEventListener("scroll",U))}(e,r)}(e,t)}async function ue(e,t,n){const r=$(t,n,e.settings.prefix);return Promise.all(r.map(t=>K(e,{name:`${t.entity} ${t.action}`,...t,trigger:n})))}function fe(e,t,n,r){const o=(0,O.getAttribute)(t,n);o&&Object.values(P(o)).forEach(n=>n.forEach(n=>{switch(n.trigger){case ee:!function(e,t){t.addEventListener("mouseenter",w(function(t){t.target instanceof Element&&ue(e,t.target,ee)}))}(e,t);break;case te:!function(e,t){ue(e,t,te)}(e,t);break;case ne:!function(e,t,n=""){setInterval(()=>{document.hidden||ue(e,t,ne)},parseInt(n||"")||15e3)}(e,t,n.triggerParams);break;case re:!function(e,t=""){const n=parseInt(t||"")||50;if(n<0||n>100)return;X.push([e,n])}(t,n.triggerParams);break;case se:z(e,t);break;case ie:z(e,t,{multiple:!0});break;case ce:!function(e,t,n=""){setTimeout(()=>ue(e,t,ce),parseInt(n||"")||15e3)}(e,t,n.triggerParams)}}))}function de(e,t){ue(e,t.target,Z)}function pe(e,t){t.target&&ue(e,t.target,oe)}function ge(e,t={}){const n=t.name||"elbLayer",r=t.window||("undefined"!=typeof window?window:void 0);if(!r)return;const o=r;o[n]||(o[n]=[]);const s=o[n];s.push=function(...n){if(he(n[0])){const r=[...Array.from(n[0])],o=Array.prototype.push.apply(this,[r]);return be(e,t.prefix,r),o}const r=Array.prototype.push.apply(this,n);return n.forEach(n=>{be(e,t.prefix,n)}),r},Array.isArray(s)&&s.length>0&&function(e,t="data-elb",n){me(e,t,n,!0),me(e,t,n,!1),n.length=0}(e,t.prefix,s)}function me(e,t,n,r){const o=[];let s=!0;n.forEach(e=>{const t=he(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;if(Array.isArray(t)&&1===t.length&&!t[0])return;const i=t[0],c=!m(i)&&b(i)&&i.startsWith("walker ");if(m(i)){if("object"==typeof i&&0===Object.keys(i).length)return}else{const e=Array.from(t);if(!b(e[0])||""===e[0].trim())return;const n="walker run";s&&e[0]===n&&(s=!1)}(r&&c||!r&&!c)&&o.push(t)}),o.forEach(n=>{be(e,t,n)})}function be(e,t="data-elb",n){w(()=>{if(Array.isArray(n)){const[r,...o]=n;if(!r||b(r)&&""===r.trim())return;if(b(r)&&r.startsWith("walker "))return void e(r,o[0]);K({elb:e,settings:{prefix:t,scope:document,pageview:!1,session:!1,elb:"",elbLayer:!1}},r,...o)}else if(n&&"object"==typeof n){if(0===Object.keys(n).length)return;e(n)}},()=>{})()}function he(e){return null!=e&&"object"==typeof e&&"[object Arguments]"===Object.prototype.toString.call(e)}var ye=require("@walkeros/web-core");function we(e,t={}){const n={push:e,group:void 0};return(0,ye.sessionStart)({...t,collector:n})}var ve={};function ke(e={}){const t=e.prefix||"data-elb";return function(e){let n,r=e;const o={},s={},i={},c={},a={},l={};function u(e){return Object.entries(e).map(([e,t])=>`${e}:${function(e){if(!p(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 f={entity:e=>(n=e,r=e,f),data(e,t){const n=null!=r?r:"";return o[n]||(o[n]={}),b(e)?o[n][e]=t:Object.assign(o[n],e),f},action(e,t){if(b(e))if(p(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 f},actions(e,t){if(b(e))if(p(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 f},context:(e,t)=>(b(e)?c[e]=t:Object.assign(c,e),f),globals:(e,t)=>(b(e)?a[e]=t:Object.assign(a,e),f),link:(e,t)=>(b(e)?l[e]=t:Object.assign(l,e),f),get(){const e={};return n&&(e[t]=n),Object.entries(o).forEach(([n,r])=>{if(Object.keys(r).length>0){e[n?`${t}-${n}`:`${t}-`]=u(r)}}),Object.keys(s).length>0&&(e[`${t}action`]=u(s)),Object.keys(i).length>0&&(e[`${t}actions`]=u(i)),Object.keys(c).length>0&&(e[`${t}context`]=u(c)),Object.keys(a).length>0&&(e[`${t}globals`]=u(a)),Object.keys(l).length>0&&(e[`${t}link`]=u(l)),e}};return f}}var Oe=async(e,t)=>{try{const n=t||{},{elb:r,window:o,document:s}=n;if(!r)throw new Error("Browser source requires elb function in environment");const i=function(e={},t){return{prefix:"data-elb",pageview:!0,session:!0,elb:"elb",elbLayer:"elbLayer",scope:t||void 0,...e}}((null==e?void 0:e.settings)||{},s),c={settings:i},a={elb:r,settings:i};if(s&&o){if(!1!==i.elbLayer&&ge(r,{name:b(i.elbLayer)?i.elbLayer:"elbLayer",prefix:i.prefix,window:o}),i.session){const e="boolean"==typeof i.session?{}:i.session;we(r,e)}await async function(e,t,n){const r=()=>{e(t,n)};"loading"!==document.readyState?r():document.addEventListener("DOMContentLoaded",r)}(ae,a,i);(()=>{if(le(a,i),i.pageview){const[e,t]=L(i.prefix||"data-elb",i.scope);K(a,"page view",e,"load",t)}})(),b(i.elb)&&i.elb&&(o[i.elb]=(...e)=>{const[t,n,r,o,s,i]=e;return K(a,t,n,r,o,s,i)})}return{type:"browser",config:c,push:(...e)=>{const[t,n,r,o,s,i]=e;return K(a,t,n,r,o,s,i)},destroy:async()=>{s&&F(i.scope||s)},on:async(e,t)=>{switch(e){case"consent":if(i.session&&t){const e="boolean"==typeof i.session?{}:i.session;we(r,e)}break;case"session":case"ready":default:break;case"run":if(s&&o&&(le(a,i),i.pageview)){const[e,t]=L(i.prefix||"data-elb",i.scope);K(a,"page view",e,"load",t)}}}}}catch(e){throw e}},xe=Oe;//# sourceMappingURL=index.js.map
|