@walkeros/web-source-datalayer 4.1.0-next-1778668930820 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,350 @@
1
+ # @walkeros/web-source-datalayer
2
+
3
+ ## 4.1.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [e155ff8]
8
+ - Updated dependencies [e800974]
9
+ - Updated dependencies [e155ff8]
10
+ - Updated dependencies [1a8f2d7]
11
+ - Updated dependencies [1a8f2d7]
12
+ - Updated dependencies [b276173]
13
+ - Updated dependencies [dd9f5ad]
14
+ - Updated dependencies [c60ef35]
15
+ - Updated dependencies [adeebea]
16
+ - Updated dependencies [13aaeaa]
17
+ - Updated dependencies [e800974]
18
+ - Updated dependencies [adeebea]
19
+ - Updated dependencies [6cdc362]
20
+ - Updated dependencies [e800974]
21
+ - Updated dependencies [e800974]
22
+ - Updated dependencies [058f7ed]
23
+ - Updated dependencies [28a8ac2]
24
+ - Updated dependencies [fd6076e]
25
+ - @walkeros/core@4.1.0
26
+ - @walkeros/collector@4.1.0
27
+
28
+ ## 4.0.2
29
+
30
+ ### Patch Changes
31
+
32
+ - Updated dependencies [a6a0ea7]
33
+ - @walkeros/core@4.0.2
34
+ - @walkeros/collector@4.0.2
35
+
36
+ ## 4.0.1
37
+
38
+ ### Patch Changes
39
+
40
+ - 1524275: Source lifecycle redesign: factory + eager `init` + collector-gated
41
+ `on()`
42
+
43
+ Source factories must now be side-effect-free. The collector calls
44
+ `Instance.init()` on each source eagerly after all factories register.
45
+ `require` no longer gates code execution. It gates `on(type)` delivery (events
46
+ queue in `Instance.queueOn` until the source is started, then replay).
47
+ `collector.pending.sources` has been removed; per-source state lives on
48
+ `Source.Instance` (`queueOn`) and `Source.Config` (`init`, `require`).
49
+
50
+ Migration: any source factory with side effects (queue draining, walker
51
+ command emission, listener attachment) should move those into the returned
52
+ Instance's optional `init` method. Tests asserting on
53
+ `collector.pending.sources` should read `collector.sources[id]` and inspect
54
+ `config.init` / `config.require` instead.
55
+
56
+ Fixes the elbLayer queue replay clobbering fresh consent/user state,
57
+ late-activated sources missing `walker run`, and inter-source require chains
58
+ racing when a non-required source's init fired a state-mutating walker command
59
+ before later require-gated sources had been registered.
60
+
61
+ - Updated dependencies [cb265eb]
62
+ - Updated dependencies [381dfe7]
63
+ - Updated dependencies [1524275]
64
+ - Updated dependencies [03d7055]
65
+ - @walkeros/collector@4.0.1
66
+ - @walkeros/core@4.0.1
67
+
68
+ ## 4.0.0
69
+
70
+ ### Major Changes
71
+
72
+ - 93ea9c4: Event model v4: breaking changes to the `Event`, `Source`, and
73
+ `Entity` shapes.
74
+ - `event.id` is now a W3C span_id (16 lowercase hex chars), generated by the
75
+ collector. Reference: W3C Trace Context (W3C Recommendation, January 2020).
76
+ - `event.version`, `event.group`, `event.count` are removed.
77
+ - `source.type` is now the source kind (e.g. `browser`, `gtag`, `mcp`, `cli`).
78
+ New `source.platform` holds the runtime (`web` | `server` | `app` | ...).
79
+ - `source.id` and `source.previous_id` are removed.
80
+ - Browser source now sets `source.url` and `source.referrer`.
81
+ - MCP source sets `source.tool` per emission. CLI source sets
82
+ `source.command`.
83
+ - `Entity.nested` and `Entity.context` are now optional. Root `event.nested`
84
+ and `event.context` remain required.
85
+ - Each source self-registers via TypeScript module augmentation of `SourceMap`
86
+ in `@walkeros/core`.
87
+ - App-side coordination (`/workspaces/developer/app`) is a follow-up plan, not
88
+ part of this release. Telemetry from v4 CLI/MCP will not validate against
89
+ the existing app schema until that follow-up ships.
90
+ - `Mapping.Rule.skip` is renamed to `Mapping.Rule.silent`. Customer flow.json
91
+ configs using `skip: true` in mapping rules must rename to `silent: true`.
92
+ Hard cut: no legacy alias, the field is gone.
93
+
94
+ ### Patch Changes
95
+
96
+ - Updated dependencies [93ea9c4]
97
+ - Updated dependencies [465775c]
98
+ - Updated dependencies [942a7fe]
99
+ - Updated dependencies [cfc7469]
100
+ - Updated dependencies [8e06b1f]
101
+ - Updated dependencies [3d50dd6]
102
+ - Updated dependencies [1ef33d9]
103
+ - @walkeros/core@4.0.0
104
+ - @walkeros/collector@4.0.0
105
+
106
+ ## 3.4.2
107
+
108
+ ### Patch Changes
109
+
110
+ - @walkeros/collector@3.4.2
111
+ - @walkeros/core@3.4.2
112
+
113
+ ## 3.4.1
114
+
115
+ ### Patch Changes
116
+
117
+ - Updated dependencies [12adf24]
118
+ - Updated dependencies [75aa26b]
119
+ - @walkeros/core@3.4.1
120
+ - @walkeros/collector@3.4.1
121
+
122
+ ## 3.4.0
123
+
124
+ ### Minor Changes
125
+
126
+ - 724f97e: Migrate every step example in every walkerOS package to the
127
+ standardized `[callable, ...args][]` shape introduced in `@walkeros/core`.
128
+ Every step example's `out` is now an array of effect tuples whose first
129
+ element is the callable's public SDK name (`'gtag'`, `'analytics.track'`,
130
+ `'fbq'`, `'dataLayer.push'`, `'sendServer'`, `'fetch'`, `'trackClient.track'`,
131
+ `'amplitude.track'`, `'fs.writeFile'`, `'producer.send'`, `'client.xadd'`,
132
+ `'client.send'`, `'dataset.table.insert'`, etc.). Source examples use `'elb'`
133
+ as the callable; transformer examples use the reserved `'return'` keyword;
134
+ store examples use store-operation callables (`'get'`, `'set'`). Tests capture
135
+ real calls on each component's spy and assert against `example.out` directly —
136
+ the hardcoded `PACKAGE_CALLS` registry in the app is no longer consulted
137
+ (emptied; plan #3 removes it structurally).
138
+
139
+ ### Patch Changes
140
+
141
+ - Updated dependencies [74940cc]
142
+ - Updated dependencies [525f5d9]
143
+ - @walkeros/core@3.4.0
144
+ - @walkeros/collector@3.4.0
145
+
146
+ ## 3.3.1
147
+
148
+ ### Patch Changes
149
+
150
+ - Updated dependencies [b10144a]
151
+ - Updated dependencies [206185a]
152
+ - Updated dependencies [50e5d09]
153
+ - Updated dependencies [32ff626]
154
+ - @walkeros/collector@3.3.1
155
+ - @walkeros/core@3.3.1
156
+
157
+ ## 3.3.0
158
+
159
+ ### Patch Changes
160
+
161
+ - Updated dependencies [2849acb]
162
+ - Updated dependencies [08c365a]
163
+ - Updated dependencies [08c365a]
164
+ - Updated dependencies [08c365a]
165
+ - Updated dependencies [08c365a]
166
+ - @walkeros/core@3.3.0
167
+ - @walkeros/collector@3.3.0
168
+
169
+ ## 3.2.0
170
+
171
+ ### Patch Changes
172
+
173
+ - Updated dependencies [eb865e1]
174
+ - Updated dependencies [c0a53f9]
175
+ - Updated dependencies [8cdc0bb]
176
+ - Updated dependencies [f007c9f]
177
+ - Updated dependencies [bf2dc5b]
178
+ - Updated dependencies [da0b640]
179
+ - Updated dependencies [a5d25bc]
180
+ - Updated dependencies [9a99298]
181
+ - Updated dependencies [884527d]
182
+ - @walkeros/core@3.2.0
183
+ - @walkeros/collector@3.2.0
184
+
185
+ ## 3.1.1
186
+
187
+ ### Patch Changes
188
+
189
+ - @walkeros/core@3.1.1
190
+ - @walkeros/collector@3.1.1
191
+
192
+ ## 3.1.0
193
+
194
+ ### Minor Changes
195
+
196
+ - 956c337: Add createTrigger following unified Trigger.CreateFn interface. Step
197
+ examples updated with trigger metadata.
198
+
199
+ ### Patch Changes
200
+
201
+ - Updated dependencies [a9149e4]
202
+ - Updated dependencies [dfc6738]
203
+ - Updated dependencies [966342b]
204
+ - Updated dependencies [bee8ba7]
205
+ - Updated dependencies [966342b]
206
+ - Updated dependencies [df990d4]
207
+ - @walkeros/collector@3.1.0
208
+ - @walkeros/core@3.1.0
209
+
210
+ ## 3.0.2
211
+
212
+ ### Patch Changes
213
+
214
+ - @walkeros/core@3.0.2
215
+ - @walkeros/collector@3.0.2
216
+
217
+ ## 3.0.1
218
+
219
+ ### Patch Changes
220
+
221
+ - @walkeros/core@3.0.1
222
+ - @walkeros/collector@3.0.1
223
+
224
+ ## 3.0.0
225
+
226
+ ### Patch Changes
227
+
228
+ - 499e27a: Add sideEffects declarations to all packages for bundler tree-shaking
229
+ support.
230
+ - Updated dependencies [2b259b6]
231
+ - Updated dependencies [2614014]
232
+ - Updated dependencies [6ae0ee3]
233
+ - Updated dependencies [37299a9]
234
+ - Updated dependencies [499e27a]
235
+ - Updated dependencies [499e27a]
236
+ - Updated dependencies [0e5eede]
237
+ - Updated dependencies [d11f574]
238
+ - Updated dependencies [d11f574]
239
+ - Updated dependencies [1fe337a]
240
+ - Updated dependencies [5cb84c1]
241
+ - Updated dependencies [23f218a]
242
+ - Updated dependencies [499e27a]
243
+ - Updated dependencies [c83d909]
244
+ - Updated dependencies [a2aa491]
245
+ - Updated dependencies [b6c8fa8]
246
+ - @walkeros/core@3.0.0
247
+ - @walkeros/collector@3.0.0
248
+
249
+ ## 2.1.1
250
+
251
+ ### Patch Changes
252
+
253
+ - Updated dependencies [fab477d]
254
+ - @walkeros/core@2.1.1
255
+ - @walkeros/collector@2.1.1
256
+
257
+ ## 2.1.0
258
+
259
+ ### Minor Changes
260
+
261
+ - 97df0b2: Step examples: upgrade all packages to blueprint pattern with inline
262
+ mapping, no intermediate variables, no `all` export
263
+
264
+ ### Patch Changes
265
+
266
+ - 60f0a1c: Add setup functions and renderer metadata for source simulation
267
+ - Updated dependencies [7fc4cee]
268
+ - Updated dependencies [7fc4cee]
269
+ - Updated dependencies [cb2da05]
270
+ - Updated dependencies [2bbe8c8]
271
+ - Updated dependencies [3eb6416]
272
+ - Updated dependencies [02a7958]
273
+ - Updated dependencies [97df0b2]
274
+ - Updated dependencies [97df0b2]
275
+ - Updated dependencies [026c412]
276
+ - Updated dependencies [7d38d9d]
277
+ - @walkeros/core@2.1.0
278
+ - @walkeros/collector@2.1.0
279
+
280
+ ## 2.0.1
281
+
282
+ ## 1.0.6
283
+
284
+ ### Patch Changes
285
+
286
+ - Updated dependencies [32bfc92]
287
+ - Updated dependencies [7b2d750]
288
+ - @walkeros/collector@2.0.0
289
+ - @walkeros/core@1.4.0
290
+
291
+ ## 1.0.5
292
+
293
+ ### Patch Changes
294
+
295
+ - 9599e60: Defer dataLayer historical event replay until after run to prevent
296
+ event loss
297
+ - Updated dependencies [a4cc1ea]
298
+ - Updated dependencies [9599e60]
299
+ - Updated dependencies [e9c9faa]
300
+ - @walkeros/core@1.3.0
301
+ - @walkeros/collector@1.2.0
302
+
303
+ ## 1.0.4
304
+
305
+ ### Patch Changes
306
+
307
+ - Updated dependencies [7ad6cfb]
308
+ - @walkeros/collector@1.1.2
309
+ - @walkeros/core@1.2.2
310
+
311
+ ## 1.0.3
312
+
313
+ ### Patch Changes
314
+
315
+ - Updated dependencies [6256c12]
316
+ - @walkeros/core@1.2.1
317
+ - @walkeros/collector@1.1.1
318
+
319
+ ## 1.0.2
320
+
321
+ ### Patch Changes
322
+
323
+ - Updated dependencies [f39d9fb]
324
+ - Updated dependencies [888bbdf]
325
+ - @walkeros/collector@1.1.0
326
+ - @walkeros/core@1.2.0
327
+
328
+ ## 1.0.1
329
+
330
+ ### Patch Changes
331
+
332
+ - Updated dependencies [b65b773]
333
+ - Updated dependencies [20eca6e]
334
+ - @walkeros/collector@1.0.1
335
+ - @walkeros/core@1.1.0
336
+
337
+ ## 1.0.0
338
+
339
+ ### Major Changes
340
+
341
+ - 67c9e1d: Hello World! walkerOS v1.0.0
342
+
343
+ Open-source event data collection. Collect event data for digital analytics in
344
+ a unified and privacy-centric way.
345
+
346
+ ### Patch Changes
347
+
348
+ - Updated dependencies [67c9e1d]
349
+ - @walkeros/collector@1.0.0
350
+ - @walkeros/core@1.0.0
package/README.md CHANGED
@@ -4,45 +4,45 @@
4
4
  </a>
5
5
  </p>
6
6
 
7
- # DataLayer Source for walkerOS
7
+ # @walkeros/web-source-datalayer
8
8
 
9
- [Source Code](https://github.com/elbwalker/walkerOS/tree/main/packages/web/sources/dataLayer)
10
- &bull;
11
- [NPM Package](https://www.npmjs.com/package/@walkeros/web-source-datalayer)
9
+ Integrates with existing Google Analytics 4 and GTM dataLayer implementations by
10
+ intercepting `dataLayer.push()` calls and converting them into walkerOS events.
12
11
 
13
- This package provides a dataLayer source for walkerOS. It allows you to process
14
- events from a dataLayer and send them to the walkerOS collector.
15
-
16
- walkerOS follows a **source → collector → destination** architecture. This
17
- dataLayer source monitors the browser's dataLayer (commonly used with Google Tag
18
- Manager) and transforms existing gtag() calls and dataLayer.push() events into
19
- standardized walkerOS events, enabling seamless migration from traditional
20
- dataLayer implementations.
12
+ [Documentation](https://www.walkeros.io/docs/sources/web/dataLayer) &bull;
13
+ [NPM Package](https://www.npmjs.com/package/@walkeros/web-source-datalayer)
14
+ &bull;
15
+ [Source Code](https://github.com/elbwalker/walkerOS/tree/main/packages/web/sources/dataLayer)
21
16
 
22
17
  ## Installation
23
18
 
24
- ```sh
19
+ ```bash
25
20
  npm install @walkeros/web-source-datalayer
26
21
  ```
27
22
 
28
- ## Usage
29
-
30
- Here's a basic example of how to use the dataLayer source:
31
-
32
- ```typescript
33
- import { elb } from '@walkeros/collector';
34
- import { sourceDataLayer } from '@walkeros/web-source-datalayer';
35
-
36
- sourceDataLayer({ elb });
23
+ ## Quick start
24
+
25
+ ```json
26
+ {
27
+ "version": 4,
28
+ "flows": {
29
+ "default": {
30
+ "config": { "platform": "web" },
31
+ "sources": {
32
+ "dataLayer": {
33
+ "package": "@walkeros/web-source-datalayer",
34
+ "config": {}
35
+ }
36
+ }
37
+ }
38
+ }
39
+ }
37
40
  ```
38
41
 
39
- ## Configuration
42
+ ## Documentation
40
43
 
41
- | Name | Type | Description | Required | Example |
42
- | -------- | ------------------------------------------------------ | ------------------------------------------------------------- | -------- | ----------------------------------------------- |
43
- | `name` | `string` | DataLayer variable name (default: "dataLayer") | No | `'dataLayer'` |
44
- | `prefix` | `string` | Event prefix for filtering dataLayer events (default: "gtag") | No | `'gtag'` |
45
- | `filter` | `(event: unknown) => WalkerOS.PromiseOrValue<boolean>` | Function to filter which dataLayer events to process | No | `(event) => event && typeof event === "object"` |
44
+ Full configuration, mapping, and examples live in the docs:
45
+ **https://www.walkeros.io/docs/sources/web/dataLayer**
46
46
 
47
47
  ## Contribute
48
48
 
@@ -53,4 +53,4 @@ Feel free to contribute by submitting an
53
53
 
54
54
  ## License
55
55
 
56
- This project is licensed under the MIT License.
56
+ MIT
@@ -1 +1 @@
1
- "use strict";var Destination=(()=>{var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,r=(t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})},a={};r(a,{SourceDataLayer:()=>Q,createTrigger:()=>Ue,default:()=>Ke,env:()=>X,sourceDataLayer:()=>He,step:()=>oe,trigger:()=>Ne});var i=Object.defineProperty;((e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})})({},{Level:()=>c});var s,c=((s=c||{})[s.ERROR=0]="ERROR",s[s.WARN=1]="WARN",s[s.INFO=2]="INFO",s[s.DEBUG=3]="DEBUG",s);function u(e){return{_meta:{hops:0,path:[e]}}}var l={merge:!0,shallow:!0,extend:!0};function f(e,t={},n={}){n={...l,...n};const o=Object.entries(t).reduce((t,[o,r])=>{const a=e[o];return n.merge&&Array.isArray(a)&&Array.isArray(r)?t[o]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...a]):(n.extend||o in e)&&(t[o]=r),t},{});return n.shallow?{...e,...o}:(Object.assign(e,o),e)}function d(e){return Array.isArray(e)}function g(e){return void 0!==e}function p(e){return"function"==typeof e}function v(e){return"object"==typeof e&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)}function y(e){return"string"==typeof e}function m(e,t=new WeakMap){if("object"!=typeof e||null===e)return e;if(t.has(e))return t.get(e);const n=Object.prototype.toString.call(e);if("[object Object]"===n){const n={};t.set(e,n);for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=m(e[o],t));return n}if("[object Array]"===n){const n=[];return t.set(e,n),e.forEach(e=>{n.push(m(e,t))}),n}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){const t=e;return new RegExp(t.source,t.flags)}return e}function h(e,t="",n){const o=t.split(".");let r=e;for(let e=0;e<o.length;e++){const t=o[e];if("*"===t&&d(r)){const t=o.slice(e+1).join("."),a=[];for(const e of r){const o=h(e,t,n);a.push(o)}return a}if(r=r instanceof Object?r[t]:void 0,void 0===r)break}return g(r)?r:n}function b(e,t,n){if(!v(e))return e;const o=m(e),r=t.split(".");let a=o;for(let e=0;e<r.length;e++){const t=r[e];e===r.length-1?a[t]=n:(t in a&&"object"==typeof a[t]&&null!==a[t]||(a[t]={}),a=a[t])}return o}var w={data:e=>e.data,globals:e=>e.globals,context:e=>e.context,user:e=>e.user,source:e=>e.source,event:e=>({entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing})};function k(e,t={},n={}){const o={...t,...n},r={};let a=!e||0===Object.keys(e).length;return Object.keys(o).forEach(t=>{o[t]&&(r[t]=!0,e&&e[t]&&(a=!0))}),!!a&&r}function j(){let e="";for(let t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}function O(e=6,t){if(t){const n=t.length;let o="";for(let r=0;r<e;r++)o+=t[Math.random()*n|0];return o}let n="";for(let t=36;n.length<e;)n+=(Math.random()*t|0).toString(t);return n}function x(e,t=1e3,n=!1){let o,r=null,a=!1;return(...i)=>new Promise(s=>{const c=n&&!a;r&&clearTimeout(r),r=setTimeout(()=>{r=null,n&&!a||(o=e(...i),s(o))},t),c&&(a=!0,o=e(...i),s(o))})}function A(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function _(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=A(e)):n=e,void 0!==t&&(t instanceof Error?o.error=A(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=A(o.error))):o.value=t),{message:n,context:o}}var S=(e,t,n,o)=>{const r=`${c[e]}${o.length>0?` [${o.join(":")}]`:""}`,a=Object.keys(n).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(r,t,n):i(r,t)};function q(e={}){return $({level:void 0!==e.level?(t=e.level,"string"==typeof t?c[t]:t):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var t}function $(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,a=(e,o,a)=>{if(e<=t){const t=_(o,a);n?n(e,t.message,t.context,r,S):S(e,t.message,t.context,r)}};return{error:(e,t)=>a(0,e,t),warn:(e,t)=>a(1,e,t),info:(e,t)=>a(2,e,t),debug:(e,t)=>a(3,e,t),throw:(e,t)=>{const o=_(e,t);throw n?n(0,o.message,o.context,r,S):S(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>$({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function E(e){return function(e){return"boolean"==typeof e}(e)||y(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!g(e)||d(e)&&e.every(E)||v(e)&&Object.values(e).every(E)}function L(e){return E(e)?e:void 0}function D(e,t,n){return function(...o){try{return e(...o)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function P(e,t,n){return async function(...o){try{return await e(...o)}catch(e){if(!t)return;return await t(e)}finally{await(null==n?void 0:n())}}}async function R(e,t={},n={}){var o,r;if(!g(e))return;const a=v(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),i=null!=(r=n.event)?r:v(e)?e:{};if(!n.collector)throw new Error("getMappingValue: context.collector is required");const s={event:i,mapping:t,collector:n.collector,logger:n.collector.logger,consent:a},c=d(t)?t:[t];for(const t of c){const n=await P(T)(e,t,{...s,mapping:t});if(g(n))return n}}async function T(e,t,n){return(d(t)?t:[t]).reduce(async(t,o)=>{const r=await t;if(r)return r;const a=y(o)?{key:o}:o;if(!Object.keys(a).length)return;const{condition:i,consent:s,fn:c,key:u,loop:l,map:f,set:p,validate:v,value:m}=a,b={...n,mapping:o};if(i&&!await P(i)(e,b))return;if(s&&!k(s,b.consent))return m;let w=g(m)?m:e;if(c&&(w=await P(c)(e,b)),u&&(w=h(e,u,m)),l){const[t,n]=l,o="this"===t?[e]:await R(e,t,b);d(o)&&(w=(await Promise.all(o.map(e=>R(e,n,b)))).filter(g))}else f?w=await Object.entries(f).reduce(async(t,[n,o])=>{const r=await t,a=await R(e,o,b);return g(a)&&(r[n]=a),r},Promise.resolve({})):p&&(w=await Promise.all(p.map(t=>T(e,t,b))));v&&!await P(v)(w,b)&&(w=void 0);const j=L(w);return g(j)?j:L(m)},Promise.resolve(void 0))}async function I(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await R(e,o,{collector:n,event:e});e=b(e,t,r)}));const{eventMapping:r,mappingKey:a}=await async function(e,t,n){var o;const[r,a]=(e.name||"").split(" ");if(!t||!r||!a)return{};let i,s="",c=r,u=a;const l=t=>{if(t)return(d(t)?t:[t]).find(t=>{if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));const o={event:e,mapping:t,collector:n,logger:n.logger,consent:v(e)&&e.consent||n.consent};return Boolean(t.condition(e,o))})};t[c]||(c="*");const f=t[c];return f&&(f[u]||(u="*"),i=l(f[u])),i||(c="*",u="*",i=l(null==(o=t[c])?void 0:o[u])),i&&(s=`${c} ${u}`),{eventMapping:i,mappingKey:s}}(e,t.mapping,n);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([t,o])=>{const r=await R(e,o,{collector:n,event:e});e=b(e,t,r)}));let i=t.data&&await R(e,t.data,{collector:n,event:e});const s=Boolean(null==r?void 0:r.silent);if(r){if(r.ignore)return{event:e,data:i,mapping:r,mappingKey:a,ignore:!0,silent:s};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await R(e,r.data,{collector:n,event:e});i=v(i)&&v(t)?f(i,t):t}}const c=null!=(o=null==r?void 0:r.include)?o:t.include;if(c&&c.length>0){const t=function(e,t){const n={},o=t.includes("all")?Object.keys(w):t;for(const t of o){const o=w[t];if(!o)continue;const r=o(e);if(v(r))for(const[e,o]of Object.entries(r)){if(void 0===o)continue;const r="context"===t&&Array.isArray(o)?o[0]:o;n[`${t}_${e}`]=r}}return n}(e,c);Object.keys(t).length>0&&(i=v(i)?f(t,i):null!=i?i:t)}return{event:e,data:i,mapping:r,mappingKey:a,ignore:!1,silent:s}}function C(e,t,n,o){return function(...r){let a;const i="pre"+t,s="post"+t,c=n[i],u=n[s],l=(e,t)=>{o?o.warn(e,{error:t}):console.warn(e,t)};if(c)try{a=c({fn:e},...r)}catch(t){l(`Hook ${String(i)} failed, falling back to original function`,t),a=e(...r)}else a=e(...r);if(u)try{a=u({fn:e,result:a},...r)}catch(e){l(`Hook ${String(s)} failed, keeping original result`,e)}return a}}function M(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const t=e.and.map(M);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(M);return e=>t.some(t=>t(e))}return function(e){const{key:t,operator:n,value:o,not:r}=e,a=function(e,t){switch(e){case"eq":return e=>String(null!=e?e:"")===t;case"contains":return e=>String(null!=e?e:"").includes(t);case"prefix":return e=>String(null!=e?e:"").startsWith(t);case"suffix":return e=>String(null!=e?e:"").endsWith(t);case"regex":{const e=new RegExp(t);return t=>e.test(String(null!=t?t:""))}case"gt":{const e=Number(t);return t=>Number(t)>e}case"lt":{const e=Number(t);return t=>Number(t)<e}case"exists":return e=>null!=e}}(n,o);return e=>{const n=h(e,t),o=a(n);return r?!o:o}}(e)}function U(e){if(null==e)return;if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(e=>{return"object"==typeof(t=e)&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"case"in t);var t})}(e))return U({case:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const t=[];for(const n of e){const e=U(n);void 0!==e&&t.push(e)}if(0===t.length)return;return{type:"sequence",value:t}}const t=e;if("next"in t&&void 0!==t.next)return t.match?{type:"gate",match:M(t.match),next:U(t.next)}:U(t.next);if("case"in t&&t.case){const e=t.case.map(e=>{var t;if("string"==typeof e)return{match:()=>!0,next:{type:"static",value:e}};if(Array.isArray(e))return{match:()=>!0,next:U(e)};const n=e;return{match:n.match?M(n.match):()=>!0,next:null!=(t=U(n))?t:{type:"chain",value:[]}}});return t.match?{type:"gate",match:M(t.match),next:{type:"case",routes:e}}:{type:"case",routes:e}}return t.match?{type:"gate",match:M(t.match)}:void 0}function N(e,t={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(t))return;return N(e.next,t)}if("sequence"===e.type){const n=[];for(const o of e.value){const e=N(o,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}for(const n of e.routes)if(n.match(t))return N(n.next,t)}}function H(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function K(e){var t;return{stop:null!=(t=e.stop)&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?M(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}function B(e,t,n,o){const r=e.rules.find(e=>e.match(n));if(!r)return null;const a=r.key.map(e=>{var t;return String(null!=(t=h(n,e))?t:"")});if(a.every(e=>""===e))return null;const i=a.join(":"),s=null!=o?o:e.namespace,c=s?`${s}:${i}`:i,u=t.get(c);return void 0!==u?{status:"HIT",key:c,value:u,rule:r}:{status:"MISS",key:c,rule:r}}function W(e,t,n,o){e.set(t,n,1e3*o)}async function F(e,t,n,o){if(!t)return e;let r=e;for(const[e,a]of Object.entries(t))r=b(r,e,await R(n,a,{collector:o}));return r}var G=new Set(["code","package","before","next","cache","mapping","config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"]);function V(e){for(const t of Object.keys(e))if(!G.has(t))return{ok:!1,code:"UNKNOWN_KEY",key:t,reason:`Unknown key "${t}". Allowed: ${[...G].join(", ")}.`};return void 0!==e.code&&void 0!==e.package?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:{ok:!0}}var z=!1;function J(e,t={},n){if(t.filter){if(!0===D(()=>t.filter(n),()=>!1)())return}const o=function(e){if(v(e)&&y(e.event)){const{event:t,...n}=e;return{name:t,...n}}if(d(e)&&e.length>=2)return Y(e);if(t=e,null!=t&&"object"==typeof t&&"length"in t&&"number"==typeof t.length&&t.length>0){return Y(Array.from(e))}var t;return null}(n);if(!o)return;const r=`${t.prefix||"dataLayer"} ${o.name}`,{name:a,...i}=o,s={name:r,data:i};D(()=>e(s),()=>{})()}function Y(e){const[t,n,o]=e;if(!y(t))return null;let r,a={};switch(t){case"consent":if(!y(n)||e.length<3)return null;if("default"!==n&&"update"!==n)return null;if(!v(o)||null===o)return null;r=`${t} ${n}`,a={...o};break;case"event":if(!y(n))return null;r=n,v(o)&&(a={...o});break;case"config":if(!y(n))return null;r=`${t} ${n}`,v(o)&&(a={...o});break;case"set":if(y(n))r=`${t} ${n}`,v(o)&&(a={...o});else{if(!v(n))return null;r=`${t} custom`,a={...n}}break;default:return null}return{name:r,...a}}var Q={},X={};r(X,{push:()=>ne});var Z=()=>{},ee=()=>()=>Promise.resolve({ok:!0}),te={error:Z,warn:Z,info:Z,debug:Z,throw:e=>{throw"string"==typeof e?new Error(e):e},json:Z,scope:()=>te},ne={get push(){return ee()},get command(){return ee()},get elb(){return ee()},get window(){return{dataLayer:[],addEventListener:Z,removeEventListener:Z}},logger:te},oe={};r(oe,{consentUpdate:()=>ae,directEvent:()=>ce,gtagAddToCart:()=>ie,gtagPurchase:()=>re,gtagViewItem:()=>se});var re={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},ae={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},ie={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},se={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},ce={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},ue={Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"};function le(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache}function fe(e){var t;const n={};for(const[o,r]of Object.entries(e)){const e=U(null==(t=r.config)?void 0:t.next);n[o]="static"===(null==e?void 0:e.type)||"chain"===(null==e?void 0:e.type)?{next:e.value}:{}}return n}function de(e,t){const n=e.config||{},o=e[t];return void 0!==o?{config:{...n,[t]:o},chainValue:o}:{config:n,chainValue:void 0}}function ge(e,t={}){if(!e)return[];if(Array.isArray(e))return e;const n=[],o=new Set;let r=e;for(;r&&t[r]&&!o.has(r);){o.add(r),n.push(r);const e=t[r].next;if(Array.isArray(e)){n.push(...e);break}r=e}return n}async function pe(e,t,n){if(t.init&&!t.config.init){const o=t.type||"unknown",r=e.logger.scope(`transformer:${o}`),a={collector:e,logger:r,id:n,ingest:u(n),config:t.config,env:he(t.config.env)};r.debug("init");const i=await C(t.init,"TransformerInit",e.hooks,e.logger)(a);if(!1===i)return!1;t.config={...i||t.config,env:(null==i?void 0:i.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function ve(e,t,n,o,r,a){const i=t.type||"unknown",s=e.logger.scope(`transformer:${i}`),c={collector:e,logger:s,id:n,ingest:r,config:t.config,env:{...he(t.config.env),...a?{respond:a}:{}}};s.debug("push",{event:o.name});const u=await C(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return s.debug("push done"),u}function ye(e,t){var n;if(e)return null!=(n=N(U(e),t))?n:void 0}async function me(e,t,n,o,r,a,i){var s,c,l,f,d,g,p;i&&(null==r?void 0:r._meta)&&(r._meta.chainPath=i);let v=o,y=a;for(const o of n){const a=t[o];if(!a){e.logger.warn(`Transformer not found: ${o}`);continue}if(r&&r._meta&&r._meta.path.length>256)return e.logger.error(`Max path length exceeded at ${o}`),{event:null,respond:y};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await P(pe)(e,a,o))return e.logger.error(`Transformer init failed: ${o}`),{event:null,respond:y};if(i&&void 0!==(null==(c=null==(s=a.config)?void 0:s.chainMocks)?void 0:c[i])){const t=a.config.chainMocks[i];e.logger.scope(`transformer:${a.type||"unknown"}`).debug("chainMock",{chain:i}),v=t;continue}if(void 0!==(null==(l=a.config)?void 0:l.mock)){e.logger.scope(`transformer:${a.type||"unknown"}`).debug("mock"),v=a.config.mock;continue}if(null==(f=a.config)?void 0:f.disabled)continue;const m=null==(d=a.config)?void 0:d.cache,h=m?K(m):void 0,b=h?le(h,e):void 0;let w;if(h&&b){const e=B(h,b,H(r,v));if("HIT"===(null==e?void 0:e.status)&&e.value){if(v=e.value,h.stop)return{event:v,respond:y,stopped:!0};continue}"MISS"===(null==e?void 0:e.status)&&(w={key:e.key,ttl:e.rule.ttl})}const k=a.config.before;if(k){const n=ge(ye(k,H(r,v)),fe(t));if(n.length>0){const o=await me(e,t,n,v,r,y,i);if(null===o.event)return{event:null,respond:null!=(g=o.respond)?g:y};if(o.stopped)return{event:Array.isArray(o.event)?o.event[0]:o.event,respond:null!=(p=o.respond)?p:y,stopped:!0};o.respond&&(y=o.respond),v=Array.isArray(o.event)?o.event[0]:o.event}}const j=await P(ve,t=>(e.logger.scope(`transformer:${a.type||"unknown"}`).error("Push failed",{error:t}),!1))(e,a,o,v,r,y);if(!1===j)return{event:null,respond:y};if(Array.isArray(j)){const a=n.slice(n.indexOf(o)+1),s=await Promise.all(j.map(async n=>{const o=n.event||v,s=r?{...r,_meta:{...r._meta,path:[...r._meta.path]}}:u("unknown");if(n.next){const r=ye(n.next,H(s,o));if(r){const n=ge(r,fe(t));if(n.length>0)return me(e,t,n,o,s,y,i)}return{event:o,respond:y}}return a.length>0?me(e,t,a,o,s,y,i):{event:o,respond:y}}));let c=y;const l=[];for(const e of s.flat())if(null!==e)if(e&&"object"==typeof e&&"event"in e){const t=e;if(t.respond&&(c=t.respond),null===t.event)continue;Array.isArray(t.event)?l.push(...t.event):l.push(t.event)}else l.push(e);return 0===l.length?{event:null,respond:c}:1===l.length?{event:l[0],respond:c}:{event:l,respond:c}}if(j&&"object"==typeof j){const{event:n,respond:o,next:a}=j;if(o&&(y=o),a){const o=ye(a,H(r,v));if(!o){n&&(v=n);continue}const s=ge(o,fe(t));return s.length>0?me(e,t,s,n||v,r,y,i):(e.logger.warn(`Branch target not found: ${JSON.stringify(a)}`),{event:null,respond:y})}n&&(v=n)}w&&b&&W(b,w.key,v,w.ttl);const O=a.config.next?U(a.config.next):void 0,x="case"===(null==O?void 0:O.type)||"gate"===(null==O?void 0:O.type)||"sequence"===(null==O?void 0:O.type);if((!j||"object"==typeof j&&!j.next)&&O&&x){const n=N(O,H(r,v));if(n){const o=ge(n,fe(t));if(o.length>0)return me(e,t,o,v,r,y,i)}return{event:v,respond:y}}}return{event:v,respond:y}}function he(e){return e&&v(e)?e:{}}async function be(e,t){var n;if(!t.on||!(null==(n=t.queueOn)?void 0:n.length))return;const o=t.queueOn;t.queueOn=[];for(const{type:e,data:n}of o)await P(t.on)(e,n)}function we(e){var t;return Boolean(e.config.init)&&!(null==(t=e.config.require)?void 0:t.length)}async function ke(e,t,n){var o;const{code:r,config:a={},env:i={},primary:s,next:c,before:l,cache:f}=n;let d,g=u(t);const p=f?K({...f,stop:null==(o=f.stop)||o}):void 0,v=U(c),y="static"!==(null==v?void 0:v.type)&&"chain"!==(null==v?void 0:v.type)||!v?void 0:ge(N(v),fe(e.transformers)),m=U(l),h="static"!==(null==m?void 0:m.type)&&"chain"!==(null==m?void 0:m.type)||!m?void 0:ge(N(m),fe(e.transformers)),b=e.logger.scope("source").scope(t),w={push:async(n,o={})=>{let r;const i=null!=h?h:m?ge(N(m,H(g)),fe(e.transformers)):[];let s=[n];if(i.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await me(e,e.transformers,i,n,g,d,`source.${t}.before`);if(null===o.event)return{ok:!0};if(o.stopped)return o.respond&&(d=o.respond),{ok:!0};o.respond&&(d=o.respond),s=Array.isArray(o.event)?o.event:[o.event]}if(p){const t=le(p,e);if(t){const n=H(g),o=B(p,t,n);if(o){if("HIT"===o.status&&void 0!==o.value&&p.stop){let t=o.value;return o.rule.update&&(t=await F(t,o.rule.update,{...n,cache:{status:"HIT"}},e)),null==d||d(t),{ok:!0}}if("MISS"===o.status&&p.stop&&d){const a=d,i=o.rule.update,s={...n,cache:{status:"MISS"}},c=o.key,u=o.rule.ttl;d=n=>{W(t,c,n,u),i?r=(async()=>{const t=await F(n,i,s,e);a(t)})():a(n)}}"MISS"!==o.status||p.stop||W(t,o.key,!0,o.rule.ttl)}}}const c=null!=y?y:v?ge(N(v,H(g)),fe(e.transformers)):[];let u={ok:!0};for(const n of s)u=await e.push(n,{...o,id:t,ingest:g,respond:d,mapping:a,preChain:c});return r&&await r,u},command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:b,...i},k={collector:e,logger:b,id:t,config:a,env:w,setIngest:async n=>{if(!a.ingest)return void(g=u(t));const o=await R(n,a.ingest,{collector:e}),r=u(t);g={...r,...o,_meta:r._meta}},setRespond:e=>{d=e}},j=await P(r)(k);if(!j)return;const O=j.type||"unknown",x=e.logger.scope(O).scope(t);return w.logger=x,s&&(j.config={...j.config,primary:s}),j}function je(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}}function Oe(e,t,n,o,r){if(!t.on)return;const a=t.type||"unknown",i=e.logger.scope(a).scope("on").scope(o),s={collector:e,logger:i,id:n,config:t.config,data:r,env:De(t.env,t.config.env)};D(t.on)(o,s)}function xe(e,t,n,o){let r;switch(t){case ue.Consent:r=o||e.consent;break;case ue.Session:r=e.session;break;case ue.User:r=o||e.user;break;case ue.Custom:r=o||e.custom;break;case ue.Globals:r=o||e.globals;break;case ue.Config:r=o||e.config;break;case ue.Ready:case ue.Run:default:r=void 0}if(n.length)switch(t){case ue.Consent:!function(e,t,n){const o=n||e.consent,r=je(e,ue.Consent);t.forEach(e=>{Object.keys(o).filter(t=>t in e).forEach(t=>{D(e[t])(o,r)})})}(e,n,o);break;case ue.Ready:!function(e,t){if(!e.allowed)return;const n=je(e,ue.Ready);t.forEach(e=>{D(e)(void 0,n)})}(e,n);break;case ue.Run:!function(e,t){if(!e.allowed)return;const n=je(e,ue.Run);t.forEach(e=>{D(e)(void 0,n)})}(e,n);break;case ue.Session:!function(e,t){if(!e.session)return;const n=je(e,ue.Session);t.forEach(t=>{D(t)(e.session,n)})}(e,n);break;default:{const o=je(e,t);n.forEach(e=>{"function"==typeof e&&D(e)(r,o)});break}}}function Ae(e,t,n,o){if(!e)return[];const r=N(null!=t?t:U(e),H(o));return r?ge(r,n):[]}async function _e(e,t,n){const{code:o,config:r={},env:a={},before:i,next:s,cache:c}=t;if(!p(o.push))return Ee({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const u=n||r||{init:!1};let l=i?{...u,before:i}:{...u};s&&(l={...l,next:s}),c&&(l={...l,cache:c});const f={...o,config:l,env:De(o.env,a)};let d=f.config.id;if(!d)do{d=O(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),Se(e,void 0,{},{[d]:f})}async function Se(e,t,n={},o){const{allowed:r,consent:a,globals:i,user:s}=e;if(!r)return Ee({ok:!1});t&&(e.queue.push(t),e.status.in++),o||(o=e.destinations);const c=e.transformers?fe(e.transformers):{},l=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var l,d,g;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let p=(r.queuePush||[]).map(e=>({...e,consent:a}));r.queuePush=[],t&&p.push(m(t));const v=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:u("unknown");if(!p.length&&!(null==(l=r.queueOn)?void 0:l.length))return{id:o,destination:r,skipped:!0};if(!p.length&&(null==(d=r.queueOn)?void 0:d.length)){let t=!1;try{t=await qe(e,r,o)}catch(t){const n=r.type||"unknown";e.logger.scope(n).error("Destination init threw",{error:t instanceof Error?t.message:String(t)})}return{id:o,destination:r,skipped:!t}}const y=[],h=p.filter(e=>{const t=k(r.config.consent,a,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(r.queuePush.push(...h),!y.length)return{id:o,destination:r,queue:p};let b,w,j=!1;try{j=await qe(e,r,o)}catch(t){const n=r.type||"unknown";e.logger.scope(n).error("Destination init threw",{error:t instanceof Error?t.message:String(t)})}if(!j)return{id:o,destination:r,queue:p};r.dlq||(r.dlq=[]);const O=r.config.before,x=Ae(O,O&&Array.isArray(O)?U(O):void 0,c,v),A=r.config.next,_=A&&Array.isArray(A)?U(A):void 0,S=null==(g=r.config)?void 0:g.cache,q=S?K(S):void 0,$=q?le(q,e):void 0;let E=0;return await Promise.all(y.map(async t=>{let a;if(t.globals=f(i,t.globals),t.user=f(s,t.user),(null==q?void 0:q.stop)&&$){const e=H(v,t),n=B(q,$,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(a={key:n.key,ttl:n.rule.ttl})}let u=t,l=n.respond;if(x.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await me(e,e.transformers,x,t,v,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(l=r.respond),u=Array.isArray(r.event)?r.event[0]:r.event}if(q&&!q.stop&&$){const e=H(v,u),n=B(q,$,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(a={key:n.key,ttl:n.rule.ttl})}const d=Date.now();let g=!1;const p=await P($e,t=>{const n=r.type||"unknown";e.logger.scope(n).error("Push failed",{error:t,event:u.name}),b=t,g=!0,r.dlq.push([u,t])})(e,r,o,u,v,l);if(E+=Date.now()-d,a&&$&&void 0===r.config.mock&&W($,a.key,null==p||p,a.ttl),void 0!==p&&(w=p),!g&&A){void 0!==p&&(v._response=p);const t=Ae(A,_,c,v);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await me(e,e.transformers,t,u,v,l,`destination.${o}.next`);n.respond&&(l=n.respond)}}return t})),{id:o,destination:r,error:b,response:w,totalDuration:E}})),d={},g={},p={};for(const t of l){if(t.skipped)continue;const n={type:t.destination.type||"unknown",data:t.response};e.status.destinations[t.id]||(e.status.destinations[t.id]={count:0,failed:0,duration:0});const o=e.status.destinations[t.id],r=Date.now();t.error?(n.error=t.error,p[t.id]=n,o.failed++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.failed++):t.queue&&t.queue.length?g[t.id]=n:(d[t.id]=n,o.count++,o.lastAt=r,o.duration+=t.totalDuration||0,e.status.out++)}return Ee({event:t,...Object.keys(d).length&&{done:d},...Object.keys(g).length&&{queued:g},...Object.keys(p).length&&{failed:p}})}async function qe(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",a=e.logger.scope(r),i={collector:e,logger:a,id:n,config:t.config,env:De(t.env,t.config.env)};a.debug("init");const s=await C(t.init,"DestinationInit",e.hooks,e.logger)(i);if(!1===s)return s;if(t.config={...s||t.config,init:!0},null==(o=t.queueOn)?void 0:o.length){const o=t.queueOn;t.queueOn=[];for(const{type:r,data:a}of o)Oe(e,t,n,r,a)}a.debug("init done")}return!0}async function $e(e,t,n,o,r,a){const{config:i}=t,s=await I(o,i,e);if(s.ignore)return!1;const c=t.type||"unknown",u=e.logger.scope(c),l={collector:e,logger:u,id:n,config:i,data:s.data,rule:s.mapping,ingest:r,env:{...De(t.env,i.env),...a?{respond:a}:{}}};if(void 0!==i.mock)return u.debug("mock",{event:s.event.name}),i.mock;const f=s.mapping,d=s.mappingKey||"* *";if(!(null==f?void 0:f.batch)||!t.pushBatch||void 0!==i.mock){u.debug("push",{event:s.event.name});const n=await C(t.push,"DestinationPush",e.hooks,e.logger)(s.event,l);return u.debug("push done"),n}{if(t.batches=t.batches||{},!t.batches[d]){const o={key:d,events:[],data:[]};t.batches[d]={batched:o,batchFn:x(()=>{const o=t.batches[d].batched,s={collector:e,logger:u,id:n,config:i,data:void 0,rule:f,ingest:r,env:{...De(t.env,i.env),...a?{respond:a}:{}}};u.debug("push batch",{events:o.events.length}),C(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(o,s),u.debug("push batch done"),o.events=[],o.data=[]},f.batch)}}const o=t.batches[d];o.batched.events.push(s.event),g(s.data)&&o.batched.data.push(s.data),o.batchFn()}return!0}function Ee(e){return{ok:!(null==e?void 0:e.failed),...e}}function Le(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:a}=de(e,"before"),{config:i}=de({...e,config:a},"next"),s={...t.config,...n,...i};r&&(s.cache=r);const c=De(t.env,o);return{...t,config:s,env:c}}function De(e,t){return e||t?t?e&&v(e)&&v(t)?{...e,...t}:t:e:{}}async function Pe(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const a=o.destroy;if(!a)return;const i=o.type||"unknown",s=n.scope(i),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:s};try{await Promise.race([a(c),new Promise((n,o)=>setTimeout(()=>o(new Error(`${t} '${e}' destroy timed out`)),5e3))])}catch(n){s.error(`${t} '${e}' destroy failed: ${n}`)}});await Promise.allSettled(o)}async function Re(e,t,n,o){let r,a,i=!1;switch(t){case ue.Config:v(n)&&(f(e.config,n,{shallow:!1}),a=n,i=!0);break;case ue.Consent:if(v(n)){const{update:t}=function(e,t){const n={};return Object.entries(t).forEach(([e,t])=>{n[e]=!!t}),e.consent=f(e.consent,n),{update:n}}(e,n);a=t,i=!0}break;case ue.Custom:v(n)&&(e.custom=f(e.custom,n),a=n,i=!0);break;case ue.Destination:v(n)&&("code"in n&&v(n.code)?r=await _e(e,n,o):p(n.push)&&(r=await _e(e,{code:n},o)));break;case ue.Globals:v(n)&&(e.globals=f(e.globals,n),a=n,i=!0);break;case ue.On:y(n)&&await async function(e,t,n){const o=e.on,r=o[t]||[],a=d(n)?n:[n];a.forEach(e=>{r.push(e)}),o[t]=r,xe(e,t,a)}(e,n,o);break;case ue.Ready:i=!0;break;case ue.Run:r=await async function(e,t){return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=f(e.consent,t.consent)),t.user&&(e.user=f(e.user,t.user)),t.globals&&(e.globals=f(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=f(e.custom,t.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await Se(e)}(e,n),i=!0;break;case ue.Session:i=!0;break;case ue.Shutdown:await async function(e){const t=e.logger;await Pe(e.sources,"source",t),await Pe(e.destinations,"destination",t),await Pe(e.transformers,"transformer",t),await Pe(e.stores,"store",t)}(e);break;case ue.User:v(n)&&(f(e.user,n,{shallow:!1}),a=n,i=!0)}return i&&(await async function(e,t,n,o){var r,a;let i,s=n||[];switch(n||(s=e.on[t]||[]),t){case ue.Consent:i=o||e.consent;break;case ue.Session:i=e.session;break;case ue.User:i=o||e.user;break;case ue.Custom:i=o||e.custom;break;case ue.Globals:i=o||e.globals;break;case ue.Config:i=o||e.config;break;case ue.Ready:case ue.Run:default:i=void 0}let c=!1;for(const n of Object.values(e.sources)){if(null==(r=n.config.require)?void 0:r.length){const e=n.config.require.indexOf(t);-1!==e&&n.config.require.splice(e,1)}n.on&&(we(n)?!1===await P(n.on)(t,i)&&(c=!0):(n.queueOn=n.queueOn||[],n.queueOn.push({type:t,data:i})))}Object.entries(e.destinations).forEach(([n,o])=>{if(o.on){if(!o.config.init)return o.queueOn=o.queueOn||[],void o.queueOn.push({type:t,data:i});Oe(e,o,n,t,i)}});for(const t of Object.values(e.sources))we(t)&&(null==(a=t.queueOn)?void 0:a.length)&&await be(0,t);return Object.keys(e.pending.destinations).length>0&&await async function(e,t){var n;for(const[o,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[o]||e.destinations[o])continue;const a=null==(n=r.config)?void 0:n.require;if(!a)continue;const i=a.indexOf(t);if(-1===i)continue;if(a.splice(i,1),a.length>0)continue;delete e.pending.destinations[o];const s=Le(r);!1!==s.config.queue&&(s.queuePush=[...e.queue]),e.destinations[o]=s}}(e,t),xe(e,t,s,o),!c}(e,t,void 0,a),r=await Se(e)),r||Ee({ok:!0})}function Te(e,t){if(!t.name)throw new Error("Event name is required");const[n,o]=t.name.split(" ");if(!n||!o)throw new Error("Event name is invalid");const{timestamp:r=Date.now(),name:a=`${n} ${o}`,data:i={},context:s={},globals:c=e.globals,custom:u={},user:l=e.user,nested:f=[],consent:d=e.consent,id:g=j(),trigger:p="",entity:v=n,action:y=o,timing:m=0,source:h={type:"collector",schema:"4"}}=t;return{name:a,data:i,context:s,globals:c,custom:u,user:l,nested:f,consent:d,id:g,trigger:p,entity:v,action:y,timestamp:r,timing:m,source:h}}async function Ie(e){var t,n;const o=f({globalsStatic:{},sessionStatic:{},run:!0},e,{merge:!1,extend:!1}),r=q({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),a={...o.globalsStatic,...e.globals},i={allowed:!1,config:o,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:a,hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var s,c;i.push=function(e,t){return C(async(n,o={})=>await P(async()=>{var r;const a=Date.now(),{id:i,ingest:s,respond:c,mapping:l,preChain:f,include:d,exclude:g}=o;let p=c,v=n;const y=d||g?function(e,t,n){let o=e;return t&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>t.includes(e)))),n&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>!n.includes(e)))),o}(e.destinations,d,g):void 0,m=null!=s?s:u(i||"unknown");if(l){const t=await I(v,l,e);if(t.ignore)return Ee({ok:!0});if(l.consent&&!k(l.consent,e.consent,t.event.consent))return Ee({ok:!0});v=t.event}if((null==f?void 0:f.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await me(e,e.transformers,f,v,m,p,i?`source.${i}.next`:void 0);if(null===n.event)return Ee({ok:!0});if(n.stopped)return n.respond&&(p=n.respond),Ee({ok:!0});if(n.respond&&(p=n.respond),Array.isArray(n.event)){const o=await Promise.all(n.event.map(async n=>{const o=t(n),r=Te(e,o);return Se(e,r,{id:i,ingest:m,respond:p},y)}));if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const t=e.status.sources[i];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-a}return null!=(r=o[0])?r:Ee({ok:!0})}v=n.event}const h=t(v),b=Te(e,h),w=await Se(e,b,{id:i,ingest:m,respond:p},y);if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const t=e.status.sources[i];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-a}return w},()=>Ee({ok:!1}))(),"Push",e.hooks,e.logger)}(i,e=>({timing:Math.round((Date.now()-i.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0-next-1778668930820"},...e})),i.command=(c=Re,C(async(e,t,n)=>await P(async()=>await c(s,e,t,n),()=>Ee({ok:!1}))(),"Command",(s=i).hooks,s.logger));const l=e.stores||{};if(i.stores=await async function(e,t={}){const n={};for(const[o,r]of Object.entries(t)){const{code:t,config:a={},env:i={}}=r,s=e.logger.scope("store").scope(o),c={collector:e,logger:s,id:o,config:a,env:i},u=await t(c),l=u.get,f=u.set,d=u.delete;u.get=C(l,"StoreGet",e.hooks,e.logger),u.set=C(f,"StoreSet",e.hooks,e.logger),u.delete=C(d,"StoreDelete",e.hooks,e.logger),n[o]=u}return n}(i,l),function(e,t,n){const o=new Map;for(const[n,r]of Object.entries(e))t[n]&&o.set(r,t[n]);if(0!==o.size)for(const e of[n.transformers,n.destinations,n.sources])if(e)for(const t of Object.values(e))r(t.env);function r(e){if(e)for(const[t,n]of Object.entries(e))if("object"==typeof n&&null!==n){const r=o.get(n);r&&(e[t]=r)}}}(l,i.stores,e),!i.stores.__cache){const e=new Map;i.stores.__cache={type:"memory",config:{},get:t=>{const n=e.get(t);if(n){if(!(n.expires&&Date.now()>n.expires))return n.value;e.delete(t)}},set:(t,n,o)=>{e.set(t,{value:n,expires:o?Date.now()+o:void 0})},delete:t=>{e.delete(t)}}}return i.destinations=await async function(e,t={}){var n,o;const r={};for(const[a,i]of Object.entries(t))(null==(o=null==(n=i.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[a]=i:r[a]=Le(i);return r}(i,e.destinations||{}),i.transformers=await async function(e,t={}){var n,o,r,a;const i={};for(const[s,c]of Object.entries(t)){const{code:t,env:l={}}=c,f=V(c);if(!f.ok){e.logger.warn(`Transformer ${s} invalid (${f.code}): ${f.reason}. Skipping.`);continue}const{config:d}=de(c,"before"),{config:g}=de({...c,config:d},"next"),p=Object.keys(l).length>0?{...g,env:l}:g,{cache:v}=c,y=v?{...p,cache:v}:p,m=e.logger.scope("transformer").scope(s),h={collector:e,logger:m,id:s,ingest:u(s),config:y,env:l},b=null!=t?t:e=>{const t=c.mapping;if(t){const n=[];if(void 0!==t.data&&n.push("data"),t.mapping)for(const[e,o]of Object.entries(t.mapping))if("object"==typeof o&&null!==o)for(const[t,r]of Object.entries(o)){if("object"!=typeof r||null===r)continue;const o=r;void 0!==o.data&&n.push(`mapping[${e}][${t}].data`),void 0!==o.silent&&n.push(`mapping[${e}][${t}].silent`)}return n.length>0&&e.collector.logger.warn(`Transformer ${s}: \`${n.join(", ")}\` ignored at transformer position (only event-mutating fields apply).`),{type:"pass",config:e.config,push:async n=>{const o=await I(n,t,e.collector);return!o.ignore&&{event:o.event}}}}return{type:"pass",config:e.config,push:e=>({event:e})}},w=await b(h);void 0!==c.before&&void 0===(null==(n=w.config)?void 0:n.before)&&(w.config={...null!=(o=w.config)?o:{},before:c.before}),void 0!==c.next&&void 0===(null==(r=w.config)?void 0:r.next)&&(w.config={...null!=(a=w.config)?a:{},next:c.next}),i[s]=w}return i}(i,e.transformers||{}),i}async function Ce(e){e=e||{};const t=await Ie(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,a,i)=>{if("string"==typeof e&&e.startsWith("walker ")){const r=e.replace("walker ","");return o.command(r,t,n)}let s;if("string"==typeof e)s={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(s.data=t);else{if(!e||"object"!=typeof e)return Ee({ok:!1});s=e,t&&"object"==typeof t&&!Array.isArray(t)&&(s.data={...s.data||{},...t})}return r&&"object"==typeof r&&(s.context=r),a&&Array.isArray(a)&&(s.nested=a),i&&"object"==typeof i&&(s.custom=i),o.push(s)}});var o;t.sources.elb=n,await async function(e,t={}){var n;const o={};for(const[r,a]of Object.entries(t)){const t=await ke(e,r,a);if(!t)continue;const i=null==(n=a.config)?void 0:n.require;t.config={...t.config,init:!1,...i?{require:[...i]}:{}},o[r]=t}Object.assign(e.sources,o);for(const t of Object.keys(o)){const n=e.sources[t];n.init&&await P(n.init.bind(n))(),n.config.init=!0,we(n)&&await be(0,n)}return o}(t,e.sources||{});const{consent:r,user:a,globals:i,custom:s}=e;r&&await t.command("consent",r),a&&await t.command("user",a),i&&Object.assign(t.globals,i),s&&Object.assign(t.custom,s),t.config.run&&await t.command("run");let c=n.push;const u=Object.values(t.sources).filter(e=>"elb"!==e.type),l=u.find(e=>e.config.primary);return l?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c}}var Me,Ue=async e=>{let t;return{get flow(){return t},trigger:()=>async n=>{var o,r;if(!t){const n={...e};if(n.sources){n.sources={...n.sources};for(const[e,t]of Object.entries(n.sources))(null==(o=t.env)?void 0:o.window)||(n.sources[e]={...t,env:{...t.env,window:window}})}const a=await Ce({...n,run:null==(r=n.run)||r});t={collector:a.collector,elb:a.elb}}const a=window;a.dataLayer||(a.dataLayer=[]),a.dataLayer.push(n)}}},Ne=(e,t)=>{const n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},He=async e=>{const{config:t,env:n}=e,{elb:o,window:r}=n,a={name:"dataLayer",prefix:"dataLayer",...null==t?void 0:t.settings},i={settings:a};let s=0;return{type:"dataLayer",config:i,push:o,on:async e=>{if("run"===e&&r&&s>0){!function(e,t,n,o=globalThis.window){const r=t.settings,a=o[(null==r?void 0:r.name)||"dataLayer"];if(Array.isArray(a)&&!z){z=!0;try{const t=null!=n?n:a.length;for(let n=0;n<t;n++)J(e,r,a[n])}finally{z=!1}}}(o,i,s,r),s=0}},init:()=>{if(!r)return;const e=a.name||"dataLayer",t=r[e];s=Array.isArray(t)?t.length:0;!function(e,t,n=globalThis.window){const o=t.settings,r=(null==o?void 0:o.name)||"dataLayer";n[r]||(n[r]=[]);const a=n[r];if(!Array.isArray(a))return;const i=a.push.bind(a);a.push=function(...t){if(z)return i(...t);z=!0;try{for(const n of t)J(e,o,n)}finally{z=!1}return i(...t)}}(o,i,r)},destroy:async()=>{const e=a.name||"dataLayer";r&&r[e]&&Array.isArray(r[e])}}},Ke=He;return Me=a,((r,a,i,s)=>{if(a&&"object"==typeof a||"function"==typeof a)for(let c of n(a))o.call(r,c)||c===i||e(r,c,{get:()=>a[c],enumerable:!(s=t(a,c))||s.enumerable});return r})(e({},"__esModule",{value:!0}),Me)})();
1
+ "use strict";var Destination=(()=>{var e=Object.defineProperty,t=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,r=(t,n)=>{for(var o in n)e(t,o,{get:n[o],enumerable:!0})},s={};r(s,{SourceDataLayer:()=>ue,createTrigger:()=>lt,default:()=>gt,env:()=>le,sourceDataLayer:()=>dt,step:()=>he,trigger:()=>ft});var i=Object.defineProperty,a=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})};function c(e,t){if("collector"===e)return"collector";if(!t)throw new Error(`stepId(${e}) requires an id`);return`${e}.${t}`}a({},{stepId:()=>c});function u(e,t){const n=e.destinations[t];if(!n)throw new Error(`Destination not found: ${t}`);return n}a({},{getDestination:()=>u});a({},{Level:()=>f});var l,f=((l=f||{})[l.ERROR=0]="ERROR",l[l.WARN=1]="WARN",l[l.INFO=2]="INFO",l[l.DEBUG=3]="DEBUG",l);function d(e,t){const n=e.transformers[t];if(!n)throw new Error(`Transformer not found: ${t}`);return n}a({},{getTransformer:()=>d});function g(e,t){const n=e.sources[t];if(!n)throw new Error(`Source not found: ${t}`);return n}a({},{getSource:()=>g});function p(e,t){const n=e.stores[t];if(!n)throw new Error(`Store not found: ${t}`);return n}function h(e){return{_meta:{hops:0,path:[e]}}}a({},{getStore:()=>p});var v={merge:!0,shallow:!0,extend:!0};function m(e,t={},n={}){n={...v,...n};const o=Object.entries(t).reduce((t,[o,r])=>{const s=e[o];return n.merge&&Array.isArray(s)&&Array.isArray(r)?t[o]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...s]):(n.extend||o in e)&&(t[o]=r),t},{});return n.shallow?{...e,...o}:(Object.assign(e,o),e)}function y(e){return Array.isArray(e)}function w(e){return void 0!==e}function b(e){return"function"==typeof e}function k(e){return"object"==typeof e&&null!==e&&!y(e)&&"[object Object]"===Object.prototype.toString.call(e)}function O(e){return"string"==typeof e}function j(e,t=new WeakMap){if("object"!=typeof e||null===e)return e;if(t.has(e))return t.get(e);const n=Object.prototype.toString.call(e);if("[object Object]"===n){const n={};t.set(e,n);for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=j(e[o],t));return n}if("[object Array]"===n){const n=[];return t.set(e,n),e.forEach(e=>{n.push(j(e,t))}),n}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){const t=e;return new RegExp(t.source,t.flags)}return e}function x(e,t="",n){const o=t.split(".");let r=e;for(let e=0;e<o.length;e++){const t=o[e];if("*"===t&&y(r)){const t=o.slice(e+1).join("."),s=[];for(const e of r){const o=x(e,t,n);s.push(o)}return s}if(r=k(r)||y(r)?r[t]:void 0,void 0===r)break}return w(r)?r:n}function _(e,t,n){if(!k(e))return e;const o=j(e),r=t.split(".");let s=o;for(let e=0;e<r.length;e++){const t=r[e];e===r.length-1?s[t]=n:(t in s&&"object"==typeof s[t]&&null!==s[t]||(s[t]={}),s=s[t])}return o}var A={data:e=>e.data,globals:e=>e.globals,context:e=>e.context,user:e=>e.user,source:e=>e.source,event:e=>({entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing})};function S(e,t={},n={}){const o={...t,...n},r={};let s=!e||0===Object.keys(e).length;return Object.keys(o).forEach(t=>{o[t]&&(r[t]=!0,e&&e[t]&&(s=!0))}),!!s&&r}function q(){let e="";for(let t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}function $(e=6,t){if(t){const n=t.length;let o="";for(let r=0;r<e;r++)o+=t[Math.random()*n|0];return o}let n="";for(let t=36;n.length<e;)n+=(Math.random()*t|0).toString(t);return n}function E(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function P(e,t){let n,o={};return e instanceof Error?(n=e.message,o.error=E(e)):n=e,void 0!==t&&(t instanceof Error?o.error=E(t):"object"==typeof t&&null!==t?(o={...o,...t},"error"in o&&o.error instanceof Error&&(o.error=E(o.error))):o.value=t),{message:n,context:o}}var C=(e,t,n,o)=>{const r=`${f[e]}${o.length>0?` [${o.join(":")}]`:""}`,s=Object.keys(n).length>0,i=0===e?console.error:1===e?console.warn:console.log;s?i(r,t,n):i(r,t)};function I(e={}){return D({level:void 0!==e.level?(t=e.level,"string"==typeof t?f[t]:t):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var t}function D(e){const{level:t,handler:n,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=t){const t=P(o,s);n?n(e,t.message,t.context,r,C):C(e,t.message,t.context,r)}};return{error:(e,t)=>s(0,e,t),warn:(e,t)=>s(1,e,t),info:(e,t)=>s(2,e,t),debug:(e,t)=>s(3,e,t),throw:(e,t)=>{const o=P(e,t);throw n?n(0,o.message,o.context,r,C):C(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>D({level:t,handler:n,jsonHandler:o,scope:[...r,e]})}}function L(e){return function(e){return"boolean"==typeof e}(e)||O(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!w(e)||y(e)&&e.every(L)||k(e)&&Object.values(e).every(L)}function T(e){return L(e)?e:void 0}function M(e,t,n){return function(...o){try{return e(...o)}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}}function R(e,t,n){return async function(...o){try{return await e(...o)}catch(e){if(!t)return;return await t(e)}finally{await(null==n?void 0:n())}}}var N=class e extends Error{constructor(t,n){super(t,n),this.name="FatalError",Object.setPrototypeOf(this,e.prototype)}};async function U(e,t={},n={}){var o,r;if(!w(e))return;const s=k(e)&&e.consent||n.consent||(null==(o=n.collector)?void 0:o.consent),i=null!=(r=n.event)?r:k(e)?e:{};if(!n.collector)throw new Error("getMappingValue: context.collector is required");const a={event:i,mapping:t,collector:n.collector,logger:n.collector.logger,consent:s},c=y(t)?t:[t];for(const t of c){const o=await R(z,e=>{if(e instanceof N)throw e;n.collector&&n.collector.status.failed++,a.logger.error("mapping processing failed",{event:i,error:e})})(e,t,{...a,mapping:t});if(w(o))return o}}async function z(e,t,n){return(y(t)?t:[t]).reduce(async(t,o)=>{const r=await t;if(r)return r;const s=O(o)?{key:o}:o;if(!Object.keys(s).length)return;const{condition:i,consent:a,fn:c,key:u,loop:l,map:f,set:d,validate:g,value:p}=s,h={...n,mapping:o};if(i&&!await R(i,e=>{if(e instanceof N)throw e;return h.logger.error("mapping condition failed",{event:h.event,error:e}),!1})(e,h))return;if(a&&!S(a,h.consent))return p;let v=w(p)?p:e;if(c&&(v=await R(c,e=>{if(e instanceof N)throw e;h.logger.error("mapping fn failed",{event:h.event,error:e})})(e,h)),u&&(v=x(e,u,p)),l){const[t,n]=l,o="this"===t?[e]:await U(e,t,h);y(o)&&(v=(await Promise.all(o.map(e=>U(e,n,h)))).filter(w))}else f?v=await Object.entries(f).reduce(async(t,[n,o])=>{const r=await t,s=await U(e,o,h);return w(s)&&(r[n]=s),r},Promise.resolve({})):d&&(v=await Promise.all(d.map(t=>z(e,t,h))));g&&!await R(g,e=>{if(e instanceof N)throw e;return h.logger.error("mapping validate failed",{event:h.event,error:e}),!1})(v,h)&&(v=void 0);const m=T(v);return w(m)?m:T(p)},Promise.resolve(void 0))}async function B(e,t,n){var o;t.policy&&await Promise.all(Object.entries(t.policy).map(async([t,o])=>{const r=await U(e,o,{collector:n,event:e});e=_(e,t,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,t,n){var o;const[r,s]=(e.name||"").split(" ");if(!t||!r||!s)return{};let i,a="",c=r,u=s;const l=t=>{if(t)return(y(t)?t:[t]).find(t=>{if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));const o={event:e,mapping:t,collector:n,logger:n.logger,consent:k(e)&&e.consent||n.consent};return Boolean(t.condition(e,o))})};t[c]||(c="*");const f=t[c];return f&&(f[u]||(u="*"),i=l(f[u])),i||(c="*",u="*",i=l(null==(o=t[c])?void 0:o[u])),i&&(a=`${c} ${u}`),{eventMapping:i,mappingKey:a}}(e,t.mapping,n);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([t,o])=>{const r=await U(e,o,{collector:n,event:e});e=_(e,t,r)}));let i=t.data&&await U(e,t.data,{collector:n,event:e});const a=Boolean(null==r?void 0:r.silent);if(r){if(r.ignore)return{event:e,data:i,mapping:r,mappingKey:s,ignore:!0,silent:a};if(r.name&&(e.name=r.name),r.data){const t=r.data&&await U(e,r.data,{collector:n,event:e});i=k(i)&&k(t)?m(i,t):t}}const c=null!=(o=null==r?void 0:r.include)?o:t.include;if(c&&c.length>0){const t=function(e,t){const n={},o=t.includes("all")?Object.keys(A):t;for(const t of o){const o=A[t];if(!o)continue;const r=o(e);if(k(r))for(const[e,o]of Object.entries(r)){if(void 0===o)continue;const r="context"===t&&Array.isArray(o)?o[0]:o;n[`${t}_${e}`]=r}}return n}(e,c);Object.keys(t).length>0&&(i=k(i)?m(t,i):null!=i?i:t)}return{event:e,data:i,mapping:r,mappingKey:s,ignore:!1,silent:a}}function H(e,t,n,o){return function(...r){let s;const i="pre"+t,a="post"+t,c=n[i],u=n[a],l=(e,t)=>{o?o.warn(e,{error:t}):console.warn(e,t)};if(c)try{s=c({fn:e},...r)}catch(t){l(`Hook ${String(i)} failed, falling back to original function`,t),s=e(...r)}else s=e(...r);if(u)try{s=u({fn:e,result:s},...r)}catch(e){l(`Hook ${String(a)} failed, keeping original result`,e)}return s}}function K(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const t=e.and.map(K);return e=>t.every(t=>t(e))}if("or"in e){const t=e.or.map(K);return e=>t.some(t=>t(e))}return function(e){const{key:t,operator:n,value:o,not:r}=e,s=function(e,t){switch(e){case"eq":return e=>String(null!=e?e:"")===t;case"contains":return e=>String(null!=e?e:"").includes(t);case"prefix":return e=>String(null!=e?e:"").startsWith(t);case"suffix":return e=>String(null!=e?e:"").endsWith(t);case"regex":{const e=new RegExp(t);return t=>e.test(String(null!=t?t:""))}case"gt":{const e=Number(t);return t=>Number(t)>e}case"lt":{const e=Number(t);return t=>Number(t)<e}case"exists":return e=>null!=e}}(n,o);return e=>{const n=x(e,t),o=s(n);return r?!o:o}}(e)}function F(e){return e.map(e=>{var t,n;if("string"==typeof e)return{match:()=>!0,next:{type:"static",value:e}};if(Array.isArray(e))return{match:()=>!0,next:null!=(t=G(e))?t:{type:"chain",value:[]}};const o=e;return{match:o.match?K(o.match):()=>!0,next:null!=(n=G(o))?n:{type:"chain",value:[]}}})}function G(e){if(null==e)return;if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(e=>{return"object"==typeof(t=e)&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"one"in t||"many"in t);var t})}(e))return G({one:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const t=[];for(const n of e){const e=G(n);void 0!==e&&t.push(e)}if(0===t.length)return;return{type:"sequence",value:t}}const t=e;if("next"in t&&void 0!==t.next)return t.match?{type:"gate",match:K(t.match),next:G(t.next)}:G(t.next);if("one"in t&&t.one){const e=F(t.one);return t.match?{type:"gate",match:K(t.match),next:{type:"one",routes:e}}:{type:"one",routes:e}}if("many"in t&&t.many){const e=F(t.many);return t.match?{type:"gate",match:K(t.match),next:{type:"many",routes:e}}:{type:"many",routes:e}}return t.match?{type:"gate",match:K(t.match)}:void 0}var W=new WeakMap;function V(e,t={}){if(null==e)return[];let n;if("object"==typeof e){const t=W.get(e);t?n=t:(n=G(e),n&&W.set(e,n))}else n=G(e);if(!n)return[];const o=J(n,t);return void 0===o?[]:Array.isArray(o)?o:[o]}function J(e,t={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(t))return;return J(e.next,t)}if("sequence"===e.type){const n=[];for(const o of e.value){const e=J(o,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}if("many"===e.type){const n=[];for(const o of e.routes){if(!o.match(t))continue;const e=J(o.next,t);void 0!==e&&(Array.isArray(e)?n.push(...e):n.push(e))}return n.length>0?n:void 0}for(const n of e.routes)if(n.match(t))return J(n.next,t)}}function Y(e,t){const n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n}function Z(e){var t;return{stop:null!=(t=e.stop)&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?K(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}async function Q(e,t,n,o){const r=e.rules.find(e=>e.match(n));if(!r)return null;const s=r.key.map(e=>{var t;return String(null!=(t=x(n,e))?t:"")});if(s.every(e=>""===e))return null;const i=s.join(":"),a=null!=o?o:e.namespace,c=a?`${a}:${i}`:i,u=await t.get(c);return void 0!==u?{status:"HIT",key:c,value:u,rule:r}:{status:"MISS",key:c,rule:r}}function X(e,t,n,o){e.set(t,n,1e3*o)}async function ee(e,t,n,o){if(!t)return e;let r=e;for(const[e,s]of Object.entries(t))r=_(r,e,await U(n,s,{collector:o}));return r}var te={Source:["code","package","import","before","next","cache"],Transformer:["code","package","import","before","next","cache","mapping"],Destination:["code","package","import","before","next","cache"],Store:["code","package","import","cache"]},ne=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],oe={Source:["primary"],Transformer:[],Destination:[],Store:[]},re=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function se(e,t){const n=(o=t,new Set([...te[o],...ne,...oe[o]]));var o;for(const o of Object.keys(e))if(!n.has(o))return{ok:!1,code:"UNKNOWN_KEY",key:o,reason:`Unknown key "${o}" on ${t}. Allowed: ${[...n].sort().join(", ")}.`};const r=void 0!==e.package,s=void 0!==e.import,i=void 0!==e.code;return i&&"string"==typeof e.code?{ok:!1,code:"OBSOLETE_CODE_STRING",key:"code",reason:`code: "<name>" is no longer supported. Use import: "${e.code}" with the package field instead.`}:i&&("object"!=typeof e.code&&"function"!=typeof e.code||null===e.code||Array.isArray(e.code))?{ok:!1,code:"INVALID_CODE_SHAPE",key:"code",reason:"code must be an object ({ push, type?, init? }) or a resolved function value."}:i&&r?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:i&&s?{ok:!1,code:"CONFLICT",key:"import",reason:"Cannot specify both `code` and `import`."}:s&&!r?{ok:!1,code:"MISSING_PACKAGE",key:"import",reason:"`import` requires `package` to be set."}:!s||"string"==typeof e.import&&re.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:`import must match ${re.source}. Got: ${JSON.stringify(e.import)}.`}}var ie=!1;function ae(e,t={},n){if(t.filter){if(!0===M(()=>t.filter(n),()=>!1)())return}const o=function(e){if(k(e)&&O(e.event)){const{event:t,...n}=e;return{name:t,...n}}if(y(e)&&e.length>=2)return ce(e);if(t=e,null!=t&&"object"==typeof t&&"length"in t&&"number"==typeof t.length&&t.length>0){return ce(Array.from(e))}var t;return null}(n);if(!o)return;const r=`${t.prefix||"dataLayer"} ${o.name}`,{name:s,...i}=o,a={name:r,data:i};M(()=>e(a),()=>{})()}function ce(e){const[t,n,o]=e;if(!O(t))return null;let r,s={};switch(t){case"consent":if(!O(n)||e.length<3)return null;if("default"!==n&&"update"!==n)return null;if(!k(o)||null===o)return null;r=`${t} ${n}`,s={...o};break;case"event":if(!O(n))return null;r=n,k(o)&&(s={...o});break;case"config":if(!O(n))return null;r=`${t} ${n}`,k(o)&&(s={...o});break;case"set":if(O(n))r=`${t} ${n}`,k(o)&&(s={...o});else{if(!k(n))return null;r=`${t} custom`,s={...n}}break;default:return null}return{name:r,...s}}var ue={},le={};r(le,{push:()=>pe});var fe=()=>{},de=()=>()=>Promise.resolve({ok:!0}),ge={error:fe,warn:fe,info:fe,debug:fe,throw:e=>{throw"string"==typeof e?new Error(e):e},json:fe,scope:()=>ge},pe={get push(){return de()},get command(){return de()},get elb(){return de()},get window(){return{dataLayer:[],addEventListener:fe,removeEventListener:fe}},logger:ge},he={};r(he,{consentUpdate:()=>me,directEvent:()=>be,gtagAddToCart:()=>ye,gtagPurchase:()=>ve,gtagViewItem:()=>we});var ve={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},me={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},ye={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},we={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},be={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},ke={Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"};function Oe(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache}function je(e){var t;const n={};for(const[o,r]of Object.entries(e)){const e=null==(t=r.config)?void 0:t.next;"string"==typeof e||Array.isArray(e)&&e.every(e=>"string"==typeof e)?n[o]={next:e}:n[o]={}}return n}function xe(e,t){const n=e.config||{},o=e[t];return void 0!==o?{config:{...n,[t]:o},chainValue:o}:{config:n,chainValue:void 0}}function _e(e,t={}){if(!e)return[];if(Array.isArray(e))return e;const n=[],o=new Set;let r=e;for(;r&&t[r]&&!o.has(r);){o.add(r),n.push(r);const e=t[r].next;if(Array.isArray(e)){n.push(...e);break}r=e}return n}async function Ae(e,t,n){if(t.init&&!t.config.init){const o=t.type||"unknown",r=e.logger.scope(`transformer:${o}`),s={collector:e,logger:r,id:n,ingest:h(n),config:t.config,env:Ee(t.config.env)};r.debug("init");const i=await H(t.init,"TransformerInit",e.hooks,e.logger)(s);if(!1===i)return!1;t.config={...i||t.config,env:(null==i?void 0:i.env)||t.config.env,init:!0},r.debug("init done")}return!0}async function Se(e,t,n,o,r,s){const i=t.type||"unknown",a=e.logger.scope(`transformer:${i}`),c={collector:e,logger:a,id:n,ingest:r,config:t.config,env:{...Ee(t.config.env),...s?{respond:s}:{}}};a.debug("push",{event:o.name});const u=await H(t.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),u}function qe(e,t){return e?{...e,_meta:{...e._meta,path:[...e._meta.path]}}:h(t)}async function $e(e,t,n,o,r,s,i){var a,c,u,l,f,d,g,p;r||(r=h(null!=(a=n[0])?a:"chain")),i&&r._meta&&(r._meta.chainPath=i);let v=o,m=s;for(const o of n){const s=t[o];if(!s){e.logger.warn(`Transformer not found: ${o}`);continue}if(r&&r._meta&&r._meta.path.length>256)return e.logger.error(`Max path length exceeded at ${o}`),{event:null,respond:m};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await R(Ae,t=>{if(t instanceof N)throw t;return e.status.failed++,e.logger.scope(`transformer:${s.type||"unknown"}`).error("transformer init failed",{transformer:o,error:t}),!1})(e,s,o))return{event:null,respond:m};if(i&&void 0!==(null==(u=null==(c=s.config)?void 0:c.chainMocks)?void 0:u[i])){const t=s.config.chainMocks[i];e.logger.scope(`transformer:${s.type||"unknown"}`).debug("chainMock",{chain:i}),v=t;continue}if(void 0!==(null==(l=s.config)?void 0:l.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),v=s.config.mock;continue}if(null==(f=s.config)?void 0:f.disabled)continue;const a=null==(d=s.config)?void 0:d.cache,h=a?Z(a):void 0,y=h?Oe(h,e):void 0;let w;if(h&&y){const e=Y(r,v),t=await Q(h,y,e);if("HIT"===(null==t?void 0:t.status)&&t.value){if(v=t.value,h.stop)return{event:v,respond:m,stopped:!0};continue}"MISS"===(null==t?void 0:t.status)&&(w={key:t.key,ttl:t.rule.ttl})}const b=s.config.before;if(b){const n=V(b,Y(r,v));if(1===n.length){const o=_e(n[0],je(t));if(o.length>0){const n=await $e(e,t,o,v,r,m,i);if(null===n.event)return{event:null,respond:null!=(g=n.respond)?g:m};if(n.stopped)return{event:Array.isArray(n.event)?n.event[0]:n.event,respond:null!=(p=n.respond)?p:m,stopped:!0};n.respond&&(m=n.respond),v=Array.isArray(n.event)?n.event[0]:n.event}}else n.length>1&&await Promise.all(n.map(n=>R($e,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,_e(n,je(t)),v,qe(r,n),void 0,i)))}const k=await R(Se,t=>(e.logger.scope(`transformer:${s.type||"unknown"}`).error("Push failed",{error:t}),!1))(e,s,o,v,r,m);if(!1===k)return{event:null,respond:m};if(Array.isArray(k)){const s=n.slice(n.indexOf(o)+1),a=await Promise.all(k.map(async n=>{const o=n.event||v,a=qe(r,"unknown");if(n.next){const r=V(n.next,Y(a,o));if(0===r.length)return{event:o,respond:m};if(1===r.length){const n=_e(r[0],je(t));return n.length>0?$e(e,t,n,o,a,m,i):{event:o,respond:m}}return(await Promise.all(r.map(n=>R($e,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,_e(n,je(t)),o,qe(a,n),void 0,i)))).map(e=>({event:e.event,respond:void 0}))}return s.length>0?$e(e,t,s,o,a,m,i):{event:o,respond:m}}));let c=m;const u=[];for(const e of a.flat())if(null!==e)if(e&&"object"==typeof e&&"event"in e){const t=e;if(t.respond&&(c=t.respond),null===t.event)continue;Array.isArray(t.event)?u.push(...t.event):u.push(t.event)}else u.push(e);return 0===u.length?{event:null,respond:c}:1===u.length?{event:u[0],respond:c}:{event:u,respond:c}}if(k&&"object"==typeof k){const{event:n,respond:o,next:s}=k;if(o&&(m=o),void 0!==s){const o=V(s,Y(r,v));if(0===o.length){n&&(v=n);continue}if(1===o.length){const a=_e(o[0],je(t));return a.length>0?$e(e,t,a,n||v,r,m,i):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:m})}return await Promise.all(o.map(o=>R($e,t=>(e.logger.scope("transformer:many").error(`many branch ${o} failed`,{error:t}),{event:null,respond:void 0}))(e,t,_e(o,je(t)),n||v,qe(r,o),void 0,i))),{event:null,respond:void 0}}n&&(v=n)}w&&y&&X(y,w.key,v,w.ttl);const O=s.config.next,j="string"==typeof O||Array.isArray(O)&&O.every(e=>"string"==typeof e),x=void 0!==O&&!j;if((!k||"object"==typeof k&&!k.next)&&x){const n=V(s.config.next,Y(r,v));if(1===n.length){const o=_e(n[0],je(t));return o.length>0?$e(e,t,o,v,r,m,i):{event:v,respond:m}}return n.length>1?(await Promise.all(n.map(n=>R($e,t=>(e.logger.scope("transformer:many").error(`many branch ${n} failed`,{error:t}),{event:null,respond:void 0}))(e,t,_e(n,je(t)),v,qe(r,n),void 0,i))),{event:null,respond:void 0}):{event:v,respond:m}}}return{event:v,respond:m}}function Ee(e){return e&&k(e)?e:{}}function Pe(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(e=>"string"==typeof e))}async function Ce(e,t,n){var o,r;if(!t.on||!(null==(o=t.queueOn)?void 0:o.length))return;const s=t.queueOn;t.queueOn=[];const i=n||(null==(r=t.config)?void 0:r.id)||"unknown";for(const{type:n,data:o}of s)await R(t.on,t=>{if(t instanceof N)throw t;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:n,error:t})})(n,o)}function Ie(e){var t;return Boolean(e.config.init)&&!(null==(t=e.config.require)?void 0:t.length)}async function De(e,t,n){var o;const{code:r,config:s={},env:i={},primary:a,next:c,before:u,cache:l}=n,f=l,d=f?Z({...f,stop:null==(o=f.stop)||o}):void 0,g=Pe(c)?_e(c,je(e.transformers)):void 0,p=Pe(u)?_e(u,je(e.transformers)):void 0,v=i.push,m=null!=v?v:e.push,y=Boolean(v),w=async(n,o,r)=>{var i;let a;const l=null!=p?p:void 0!==u?(()=>{const t=V(u,Y(r.ingest));return 0===t.length?[]:_e(1===t.length?t[0]:t,je(e.transformers))})():[];let f=[n];if(l.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await $e(e,e.transformers,l,n,r.ingest,r.respond,`source.${t}.before`);if(null===o.event)return{ok:!0};if(o.stopped)return o.respond&&(r.respond=o.respond),{ok:!0};o.respond&&(r.respond=o.respond),f=Array.isArray(o.event)?o.event:[o.event]}if(d){const t=Oe(d,e);if(t){const n=Y(r.ingest),o=await Q(d,t,n);if(o){if("HIT"===o.status&&void 0!==o.value&&d.stop){let t=o.value;return o.rule.update&&(t=await ee(t,o.rule.update,{...n,cache:{status:"HIT"}},e)),null==(i=r.respond)||i.call(r,t),{ok:!0}}if("MISS"===o.status&&d.stop&&r.respond){const s=r.respond,i=o.rule.update,c={...n,cache:{status:"MISS"}},u=o.key,l=o.rule.ttl,f=n=>{X(t,u,n,l),i?a=(async()=>{const t=await ee(n,i,c,e);s(t)})():s(n)};r.respond=f}"MISS"!==o.status||d.stop||X(t,o.key,!0,o.rule.ttl)}}}const h=g?{kind:"single",preChain:g}:void 0!==c?(()=>{const t=V(c,Y(r.ingest));return 0===t.length?{kind:"single",preChain:[]}:1===t.length?{kind:"single",preChain:_e(t[0],je(e.transformers))}:{kind:"many",branches:t.map(t=>_e(t,je(e.transformers)))}})():{kind:"single",preChain:[]};let v={ok:!0};for(const n of f)"many"===h.kind?(await Promise.all(h.branches.map((i,a)=>R(async()=>y?m(n):m(n,{...o,id:t,ingest:qe(r.ingest,`${t}.${a}`),respond:void 0,mapping:s,preChain:i}),t=>(e.logger.scope("source:many").error(`many branch ${a} failed`,{error:t}),{ok:!0}))())),v={ok:!0}):v=y?await m(n):await m(n,{...o,id:t,ingest:r.ingest,respond:r.respond,mapping:s,preChain:h.preChain});return a&&await a,v},b=async n=>{const o=h(t);if(!s.ingest||void 0===n)return o;const r=await U(n,s.ingest,{collector:e});return{...o,...r,_meta:o._meta}},k=e.logger.scope("source").scope(t),O={command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:k,...i,push:async(e,n={})=>{const o={ingest:h(t),respond:void 0};return w(e,n,o)}},j={collector:e,logger:k,id:t,config:s,env:O,withScope:async(e,t,n)=>{const o={ingest:await b(e),respond:t};return n({...O,push:(e,t={})=>w(e,t,o),ingest:o.ingest,respond:o.respond})}},x=await R(r,n=>{if(n instanceof N)throw n;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:t,error:n})})(j);if(!x)return;const _=x.type||"unknown",A=e.logger.scope(_).scope(t);return O.logger=A,a&&(x.config={...x.config,primary:a}),x}function Le(e,t,n,o){if(n instanceof N)throw n;e.logger.scope("on").error("on callback failed",{kind:t,...o,error:n})}function Te(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}}function Me(e,t,n,o,r){if(!t.on)return;const s=t.type||"unknown",i=e.logger.scope(s).scope("on").scope(o),a={collector:e,logger:i,id:n,config:t.config,data:r,env:et(t.env,t.config.env)};M(t.on,t=>Le(e,"destination",t,{destId:n,type:o}))(o,a)}function Re(e,t,n,o){let r;switch(t){case ke.Consent:r=o||e.consent;break;case ke.Session:r=e.session;break;case ke.User:r=o||e.user;break;case ke.Custom:r=o||e.custom;break;case ke.Globals:r=o||e.globals;break;case ke.Config:r=o||e.config;break;case ke.Ready:case ke.Run:default:r=void 0}if(n.length)switch(t){case ke.Consent:!function(e,t,n){const o=n||e.consent,r=Te(e,ke.Consent);t.forEach(t=>{Object.keys(o).filter(e=>e in t).forEach(n=>{M(t[n],t=>Le(e,"consent",t,{key:n}))(o,r)})})}(e,n,o);break;case ke.Ready:!function(e,t){if(!e.allowed)return;const n=Te(e,ke.Ready);t.forEach(t=>{M(t,t=>Le(e,"ready",t))(void 0,n)})}(e,n);break;case ke.Run:!function(e,t){if(!e.allowed)return;const n=Te(e,ke.Run);t.forEach(t=>{M(t,t=>Le(e,"run",t))(void 0,n)})}(e,n);break;case ke.Session:!function(e,t){if(!e.session)return;const n=Te(e,ke.Session);t.forEach(t=>{M(t,t=>Le(e,"session",t))(e.session,n)})}(e,n);break;default:{const o=Te(e,t);n.forEach(n=>{"function"==typeof n&&M(n,n=>Le(e,"generic",n,{type:t}))(r,o)});break}}}function Ne(e,t,n,o){var r;if(!Number.isFinite(n.max)||n.max<=0)throw new Error(`pushBounded: max must be > 0 (got ${n.max})`);if("dropNewest"===(null!=(r=n.onOverflow)?r:"dropOldest"))return e.length>=n.max?(o&&o([t]),{appended:!1,dropped:1}):(e.push(t),{appended:!0,dropped:0});const s=[];for(;e.length>=n.max;)s.push(e.shift());return e.push(t),s.length>0&&o&&o(s),{appended:!0,dropped:s.length}}var Ue=new WeakMap;function ze(e,t,n,o){Ue.get(e)||(Ue.set(e,!0),t.warn(n,o))}function Be(e){Ue.delete(e)}var He=Object.freeze({batched:!0});function Ke(e){return e===He}function Fe(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}}function Ge(e,t){return e.status.destinations[t]||(e.status.destinations[t]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[t]}function We(e,t,n,o){var r;e.dropped[t]||(e.dropped[t]={});const s=e.dropped[t];return s[n]=(null!=(r=s[n])?r:0)+o,s[n]}function Ve(e,t,n){if(!e)return[];if(Array.isArray(e)&&e.every(e=>"string"==typeof e))return _e(e,t);if("string"==typeof e)return _e(e,t);const o=V(e,Y(n));return 0===o.length?[]:1===o.length?_e(o[0],t):_e(o,t)}async function Je(e,t,n={},o){var r,s,i,a,u,l;const{allowed:f,consent:d,globals:g,user:p}=e;if(!f)return Qe({ok:!1});if(t){const n=e.config.queueMax;if(void 0===n)throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");const o=Ne(e.queue,t,{max:n});if(o.dropped>0){const t=We(e.status,c("collector"),"queue",o.dropped);ze(e.queue,e.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:n,droppedCount:t})}else e.queue.length<n&&Be(e.queue);e.status.in++}o||(o=e.destinations);const v=e.transformers?je(e.transformers):{},y=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var s,i,a,u;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let l=(r.queuePush||[]).map(e=>({...e,consent:d}));r.queuePush=[],t&&l.push(j(t));const f=n.ingest?{...n.ingest,_meta:{...n.ingest._meta,path:[...n.ingest._meta.path]}}:h("unknown");if(!l.length&&!(null==(s=r.queueOn)?void 0:s.length))return{id:o,destination:r,skipped:!0};if(!l.length&&(null==(i=r.queueOn)?void 0:i.length)){let t=!1;try{t=await Ye(e,r,o)}catch(t){e.status.failed++;const n=r.type||"unknown";e.logger.scope(n).error("destination init failed",{error:t instanceof Error?t.message:String(t)})}return{id:o,destination:r,skipped:!t}}const y=[],w=l.filter(e=>{const t=S(r.config.consent,d,e.consent);return!t||(e.consent=t,y.push(e),!1)});if(w.length>0){const t=r.queuePush,n=r.config.id||o,s={max:null!=(a=r.config.queueMax)?a:1e3};let i=0;for(const e of w)i+=Ne(t,e,s).dropped;if(i>0){Ge(e,n);const o=We(e.status,c("destination",n),"queue",i);ze(t,e.logger.scope(r.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:n,cap:s.max,droppedCount:o})}else t.length<s.max&&Be(t)}if(!y.length)return{id:o,destination:r,queue:l};let b,k,O=!1;try{O=await Ye(e,r,o)}catch(t){e.status.failed++;const n=r.type||"unknown";e.logger.scope(n).error("destination init failed",{error:t instanceof Error?t.message:String(t)})}if(!O)return{id:o,destination:r,queue:l};r.dlq||(r.dlq=[]);const x=Ve(r.config.before,v,f),_=r.config.next,A=null==(u=r.config)?void 0:u.cache,q=A?Z(A):void 0,$=q?Oe(q,e):void 0;let E=0,P=0;return await Promise.all(y.map(async t=>{let s;if(t.globals=m(g,t.globals),t.user=m(p,t.user),(null==q?void 0:q.stop)&&$){const e=Y(f,t),n=await Q(q,$,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(s={key:n.key,ttl:n.rule.ttl})}let i=t,a=n.respond;if(x.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await $e(e,e.transformers,x,t,f,n.respond,`destination.${o}.before`);if(null===r.event)return t;r.respond&&(a=r.respond),i=Array.isArray(r.event)?r.event[0]:r.event}if(q&&!q.stop&&$){const e=Y(f,i),n=await Q(q,$,e);if("HIT"===(null==n?void 0:n.status))return t;"MISS"===(null==n?void 0:n.status)&&(s={key:n.key,ttl:n.rule.ttl})}const u=Date.now();let l=!1;const d=await R(Ze,t=>{var n;const s=r.type||"unknown";e.logger.scope(s).error("Push failed",{error:t,event:i.name}),b=t,l=!0;const a=r.dlq,u=r.config.id||o,f={max:null!=(n=r.config.dlqMax)?n:100},d=Ne(a,[i,t],f);if(d.dropped>0){Ge(e,u);const t=We(e.status,c("destination",u),"dlq",d.dropped);ze(a,e.logger.scope(r.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:u,cap:f.max,droppedCount:t})}else a.length<f.max&&Be(a)})(e,r,o,i,f,a);if(E+=Date.now()-u,s&&$&&void 0===r.config.mock&&X($,s.key,null==d||d,s.ttl),void 0===d||Ke(d)||(k=d),Ke(d)&&P++,!l&&_){void 0!==d&&(f._response=d);const t=Ve(_,v,f);if(t.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const n=await $e(e,e.transformers,t,i,f,a,`destination.${o}.next`);n.respond&&(a=n.respond)}}return t})),{id:o,destination:r,error:b,response:k,totalDuration:E,batchedCount:P,allowedCount:y.length}})),w={},b={},k={};for(const t of y){if(t.skipped)continue;const n=t.destination,o={type:n.type||"unknown",data:t.response};Ge(e,t.id);const c=e.status.destinations[t.id],f=Date.now();if(c.queuePushSize=null!=(s=null==(r=n.queuePush)?void 0:r.length)?s:0,c.dlqSize=null!=(a=null==(i=n.dlq)?void 0:i.length)?a:0,t.error)o.error=t.error,k[t.id]=o,c.failed++,c.lastAt=f,c.duration+=t.totalDuration||0,e.status.failed++;else if(t.queue&&t.queue.length)b[t.id]=o;else{const n=null!=(u=t.batchedCount)?u:0,r=null!=(l=t.allowedCount)?l:0;(Math.max(0,r-n)>0||0===r)&&(w[t.id]=o,c.count++,c.lastAt=f,c.duration+=t.totalDuration||0,e.status.out++)}}return Qe({event:t,...Object.keys(w).length&&{done:w},...Object.keys(b).length&&{queued:b},...Object.keys(k).length&&{failed:k}})}async function Ye(e,t,n){var o;if(t.init&&!t.config.init){const r=t.type||"unknown",s=e.logger.scope(r),i={collector:e,logger:s,id:n,config:t.config,env:et(t.env,t.config.env)};s.debug("init");const a=await H(t.init,"DestinationInit",e.hooks,e.logger)(i);if(!1===a)return a;if(t.config={...a||t.config,init:!0},null==(o=t.queueOn)?void 0:o.length){const o=t.queueOn;t.queueOn=[];for(const{type:r,data:s}of o)Me(e,t,n,r,s)}s.debug("init done")}return!0}async function Ze(e,t,n,o,r,s){var i,a,u,l,f,d,g;const{config:p}=t,h=await B(o,p,e);if(h.ignore)return!1;const v=t.type||"unknown",m=e.logger.scope(v),y={collector:e,logger:m,id:n,config:p,data:h.data,rule:h.mapping,ingest:r,env:{...et(t.env,p.env),...s?{respond:s}:{}}};if(void 0!==p.mock)return m.debug("mock",{event:h.event.name}),p.mock;const b=h.mapping,k=h.mappingKey||"* *";if((null==b?void 0:b.batch)&&t.pushBatch&&void 0===p.mock){if(t.batches=t.batches||{},!t.batches[k]){const o={key:k,entries:[],events:[],data:[]},r=Fe(b.batch),s=Fe(p.batch),g=null!=(a=null!=(i=r.wait)?i:s.wait)?a:3e4,h=null!=(l=null!=(u=r.size)?u:s.size)?l:1e3,v=null!=(d=null!=(f=r.age)?f:s.age)?d:3e4,y=et(t.env,p.env),w=function(e,t=1e3,n=!1){const{wait:o,size:r,age:s}=function(e,t){var n;return"number"==typeof e?{wait:e}:e?{wait:null!=(n=e.wait)?n:t,size:e.size,age:e.age}:{wait:t}}(t,1e3);let i,a,c=null,u=null,l=!1,f=[],d=0;const g=()=>{c&&(clearTimeout(c),c=null),u&&(clearTimeout(u),u=null),d=0,a=void 0},p=()=>{const t=a,n=f;if(g(),f=[],t)return i=e(...t),n.forEach(e=>e(i)),i;n.forEach(e=>e(void 0))},h=(...t)=>new Promise(g=>{const h=n&&!l;if(a=t,d+=1,f.push(g),c&&clearTimeout(c),c=setTimeout(()=>{c=null,n&&!l||p()},o),void 0===s||u||(u=setTimeout(()=>{u=null,p()},s)),void 0!==r&&d>=r)p();else if(h){l=!0,i=e(...t);const n=f;f=[],n.forEach(e=>e(i))}});return h.flush=()=>a||0!==f.length?new Promise(e=>{f.push(e),p()}):Promise.resolve(void 0),h.cancel=()=>{const e=f;f=[],g(),e.forEach(e=>e(void 0))},h.size=()=>d,h}(async()=>{var o;const r=t.batches[k].batched;if(0===r.entries.length)return;const s={key:r.key,entries:r.entries,events:r.events,data:r.data};r.entries=[],r.events=[],r.data=[];const i=s.entries[0],a={collector:e,logger:m,id:n,config:p,data:void 0,rule:i.rule,ingest:i.ingest,env:{...y,...i.respond?{respond:i.respond}:{}}};m.debug("push batch",{events:s.entries.length});const u=t.config.id||n,l=Ge(e,u);let f=!0;await R(H(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger),n=>{var o;f=!1;const r=t.dlq=t.dlq||[],i={max:null!=(o=t.config.dlqMax)?o:100};let a=0;for(const e of s.entries)a+=Ne(r,[e.event,n],i).dropped;if(a>0){const t=We(e.status,c("destination",u),"dlq",a);ze(r,m,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:u,cap:i.max,droppedCount:t})}else r.length<i.max&&Be(r);l.failed+=s.entries.length,l.dlqSize=r.length,e.status.failed+=s.entries.length,m.error("Push batch failed",{error:n instanceof Error?n.message:String(n),entries:s.entries.length})})(s,a),m.debug("push batch done"),l.inFlightBatch=Math.max(0,(null!=(o=l.inFlightBatch)?o:0)-s.entries.length),f&&(l.count+=s.entries.length,l.lastAt=Date.now(),e.status.out+=s.entries.length)},{wait:g,size:h,age:v});t.batches[k]={batched:o,batchFn:()=>{w()},flush:async()=>{await w.flush()}}}const o=t.batches[k];o.batched.entries.push({event:h.event,ingest:r,respond:s,rule:b,data:h.data}),o.batched.events.push(h.event),w(h.data)&&o.batched.data.push(h.data);const v=t.config.id||n,y=Ge(e,v);return y.inFlightBatch=(null!=(g=y.inFlightBatch)?g:0)+1,o.batchFn(),He}{m.debug("push",{event:h.event.name});const n=await H(t.push,"DestinationPush",e.hooks,e.logger)(h.event,y);return m.debug("push done"),n}}function Qe(e){return{ok:!(null==e?void 0:e.failed),...e}}function Xe(e){const{code:t,config:n={},env:o={},cache:r}=e,{config:s}=xe(e,"before"),{config:i}=xe({...e,config:s},"next"),a={...t.config,...n,...i};r&&(a.cache=r);const c=et(t.env,o);return{...t,config:a,env:c}}function et(e,t){return e||t?t?e&&k(e)&&k(t)?{...e,...t}:t:e:{}}async function tt(e,t,n){const o=Object.entries(e).map(async([e,o])=>{var r;const s=o.destroy;if(!s)return;const i=o.type||"unknown",a=n.scope(i),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:a};try{await Promise.race([s(c),new Promise((n,o)=>setTimeout(()=>o(new Error(`${t} '${e}' destroy timed out`)),5e3))])}catch(n){a.error(`${t} '${e}' destroy failed: ${n}`)}});await Promise.allSettled(o)}async function nt(e,t,n){let o,r,s=!1;switch(t){case ke.Config:k(n)&&(m(e.config,n,{shallow:!1}),r=n,s=!0);break;case ke.Consent:if(k(n)){const{update:t}=function(e,t){const n={};return Object.entries(t).forEach(([e,t])=>{n[e]=!!t}),e.consent=m(e.consent,n),{update:n}}(e,n);r=t,s=!0}break;case ke.Custom:k(n)&&(e.custom=m(e.custom,n),r=n,s=!0);break;case ke.Destination:k(n)&&"code"in n&&k(n.code)&&(o=await async function(e,t){const{code:n,config:o={},env:r={},before:s,next:i,cache:a}=t;if(!b(n.push))return Qe({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const c=o||{init:!1};let u=s?{...c,before:s}:{...c};i&&(u={...u,next:i}),a&&(u={...u,cache:a});const l={...n,config:u,env:et(n.env,r)};let f=l.config.id;if(!f)do{f=$(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[f]);return e.destinations[f]=l,!1!==l.config.queue&&(l.queuePush=[...e.queue]),Je(e,void 0,{},{[f]:l})}(e,n));break;case ke.Globals:k(n)&&(e.globals=m(e.globals,n),r=n,s=!0);break;case ke.Hook:if(k(n)&&O(n.name)&&b(n.fn)){const{name:t,fn:o}=n;e.hooks[t]=o,r=n,s=!0}break;case ke.On:if(k(n)&&O(n.type)){const{type:t,rules:o}=n;await async function(e,t,n){const o=e.on,r=o[t]||[],s=y(n)?n:[n];s.forEach(e=>{r.push(e)}),o[t]=r,Re(e,t,s)}(e,t,o)}break;case ke.Ready:s=!0;break;case ke.Run:o=await async function(e,t){return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=m(e.consent,t.consent)),t.user&&(e.user=m(e.user,t.user)),t.globals&&(e.globals=m(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=m(e.custom,t.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await Je(e)}(e,n),s=!0;break;case ke.Session:s=!0;break;case ke.Shutdown:await async function(e){const t=e.logger;await tt(e.sources,"source",t),await tt(e.destinations,"destination",t),await tt(e.transformers,"transformer",t),await tt(e.stores,"store",t)}(e);break;case ke.User:k(n)&&(m(e.user,n,{shallow:!1}),r=n,s=!0)}return s&&(await async function(e,t,n,o){var r,s;let i,a=n||[];switch(n||(a=e.on[t]||[]),t){case ke.Consent:i=o||e.consent;break;case ke.Session:i=e.session;break;case ke.User:i=o||e.user;break;case ke.Custom:i=o||e.custom;break;case ke.Globals:i=o||e.globals;break;case ke.Config:i=o||e.config;break;case ke.Ready:case ke.Run:default:i=void 0}let c=!1;for(const[n,o]of Object.entries(e.sources)){if(null==(r=o.config.require)?void 0:r.length){const e=o.config.require.indexOf(t);-1!==e&&o.config.require.splice(e,1)}o.on&&(Ie(o)?!1===await R(o.on,o=>Le(e,"source",o,{sourceId:n,type:t}))(t,i)&&(c=!0):(o.queueOn=o.queueOn||[],o.queueOn.push({type:t,data:i})))}Object.entries(e.destinations).forEach(([n,o])=>{if(o.on){if(!o.config.init)return o.queueOn=o.queueOn||[],void o.queueOn.push({type:t,data:i});Me(e,o,n,t,i)}});for(const[t,n]of Object.entries(e.sources))Ie(n)&&(null==(s=n.queueOn)?void 0:s.length)&&await Ce(e,n,t);return Object.keys(e.pending.destinations).length>0&&await async function(e,t){var n;for(const[o,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[o]||e.destinations[o])continue;const s=null==(n=r.config)?void 0:n.require;if(!s)continue;const i=s.indexOf(t);if(-1===i)continue;if(s.splice(i,1),s.length>0)continue;delete e.pending.destinations[o];const a=Xe(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,t),Re(e,t,a,o),!c}(e,t,void 0,r),o=await Je(e)),o||Qe({ok:!0})}function ot(e,t){if(!t.name)throw new Error("Event name is required");const[n,o]=t.name.split(" ");if(!n||!o)throw new Error("Event name is invalid");const{timestamp:r=Date.now(),name:s=`${n} ${o}`,data:i={},context:a={},globals:c=e.globals,custom:u={},user:l=e.user,nested:f=[],consent:d=e.consent,id:g=q(),trigger:p="",entity:h=n,action:v=o,timing:m=0,source:y={type:"collector",schema:"4"}}=t;return{name:s,data:i,context:a,globals:c,custom:u,user:l,nested:f,consent:d,id:g,trigger:p,entity:h,action:v,timestamp:r,timing:m,source:y}}function rt(e={}){var t,n,o;const r=null!=(t=e.maxEntries)?t:1e4,s=null!=(n=e.lowWaterMark)?n:.8,i=null!=(o=e.sweepIntervalMs)?o:6e4,a=Math.floor(r*s),c=new Map,u={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};let l;return i>0&&(l=setInterval(function(){const e=Date.now();let t=0;for(const[n,o]of c)void 0!==o.expires&&o.expires<=e&&(c.delete(n),t++);u.evictions_ttl+=t},i),l&&"function"==typeof l.unref&&l.unref()),{type:"memory",config:{},get(e){const t=c.get(e);if(t)return void 0!==t.expires&&t.expires<=Date.now()?(c.delete(e),u.evictions_ttl++,void u.misses++):(c.delete(e),c.set(e,t),u.hits++,t.value);u.misses++},set(e,t,n){const o=!c.has(e);o||c.delete(e),c.set(e,{value:t,expires:void 0!==n?Date.now()+n:void 0}),u.writes++,o&&u.populates++,c.size>r&&function(){if(c.size<=r)return;const e=c.size-a;let t=0;for(const n of c.keys()){if(t>=e)break;c.delete(n),t++}u.evictions_entries+=t}()},delete(e){c.delete(e)&&u.deletes++},get counters(){return{...u}},destroy(){void 0!==l&&(clearInterval(l),l=void 0),c.clear()}}}function st(e,t){const{cacheConfig:n,cacheStore:o,namespace:r,logger:s,storeId:i}=t,a={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=n.rules.map(e=>({match:e.match?K(e.match):()=>!0,ttl:e.ttl})),u=e=>`${r}:${e}`;function l(e,t){const n=void 0===t?{key:e}:{key:e,value:t};return c.find(e=>e.match(n))}const f=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return{...a}},async get(t){const n=u(t),r=await o.get(n);if(void 0!==r)return a.hits++,r;const s=f.get(n);if(s)return a.inflight_dedups++,s;a.misses++;const i=(async()=>{try{const r=await e.get(t);if(void 0===r)return;const s=l(t,r);if(s)try{await o.set(n,r,1e3*s.ttl),a.populates++}catch(e){d("set",t,e)}return r}finally{f.delete(n)}})();return f.set(n,i),i},async set(t,n,r){a.writes++,await e.set(t,n,r);const s=l(t,n);if(s)try{await o.set(u(t),n,1e3*s.ttl)}catch(e){d("set",t,e)}},async delete(t){a.deletes++,await e.delete(t);try{await o.delete(u(t))}catch(e){d("delete",t,e)}}};function d(e,t,n){const o=`store-cache(${i}): cache ${e} failed for "${t}"; backing succeeded, continuing`;s?s.warn(o,{error:n}):console.warn(o,n)}}function it(e,t){const n=t.get,o=t.set,r=t.delete;t.get=H(n,"StoreGet",e.hooks,e.logger),t.set=H(o,"StoreSet",e.hooks,e.logger),t.delete=H(r,"StoreDelete",e.hooks,e.logger)}async function at(e){var t,n;const o=m({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),r=I({level:null==(t=e.logger)?void 0:t.level,handler:null==(n=e.logger)?void 0:n.handler}),s={...o.globalsStatic,...e.globals},i={allowed:!1,config:o,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:s,hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{},dropped:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var a,c;i.push=function(e,t){return H(async(n,o={})=>await R(async()=>{var r;const s=Date.now(),{id:i,ingest:a,respond:c,mapping:u,preChain:l,include:f,exclude:d}=o;let g=c,p=n;const v=f||d?function(e,t,n){let o=e;return t&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>t.includes(e)))),n&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>!n.includes(e)))),o}(e.destinations,f,d):void 0,m=null!=a?a:h(i||"unknown");if(u){const t=await B(p,u,e);if(t.ignore)return Qe({ok:!0});if(u.consent&&!S(u.consent,e.consent,t.event.consent))return Qe({ok:!0});p=t.event}if((null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0){const n=await $e(e,e.transformers,l,p,m,g,i?`source.${i}.next`:void 0);if(null===n.event)return Qe({ok:!0});if(n.stopped)return n.respond&&(g=n.respond),Qe({ok:!0});if(n.respond&&(g=n.respond),Array.isArray(n.event)){const o=await Promise.all(n.event.map(async n=>{const o=t(n),r=ot(e,o);return Je(e,r,{id:i,ingest:m,respond:g},v)}));if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const t=e.status.sources[i];t.count+=n.event.length,t.lastAt=Date.now(),t.duration+=Date.now()-s}return null!=(r=o[0])?r:Qe({ok:!0})}p=n.event}const y=t(p),w=ot(e,y),b=await Je(e,w,{id:i,ingest:m,respond:g},v);if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const t=e.status.sources[i];t.count++,t.lastAt=Date.now(),t.duration+=Date.now()-s}return b},t=>{if(t instanceof N)throw t;return e.status.failed++,e.logger.error("push failed",{event:n,ingest:o.ingest,error:t}),Qe({ok:!1})})(),"Push",e.hooks,e.logger)}(i,e=>({timing:Math.round((Date.now()-i.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0"},...e})),i.command=(c=nt,H(async(e,t,n)=>await R(async()=>await c(a,e,t,n),n=>{if(n instanceof N)throw n;return a.status.failed++,a.logger.error("command failed",{command:e,data:t,error:n}),Qe({ok:!1})})(),"Command",(a=i).hooks,a.logger));const u=e.stores||{};return i.stores=await async function(e,t={}){var n;const o={};for(const[n,r]of Object.entries(t)){const{code:t,config:s={},env:i={}}=r,a=e.logger.scope("store").scope(n),c={collector:e,logger:a,id:n,config:s,env:i},u=await t(c);o[n]=u}const r=t,s=function(e){const t={};for(const n of Object.keys(e))t[n]="WHITE";const n=[],o=[];function r(s){var i;const a=t[s];if("BLACK"===a)return;if("GRAY"===a){const e=o.indexOf(s),t=o.slice(-1===e?0:e).concat(s).join(" -> ");throw new Error(`Cycle in cache.store chain: ${t}`)}t[s]="GRAY",o.push(s);const c=null==(i=e[s].cache)?void 0:i.store;if(void 0!==c){if(!(c in e))throw new Error(`Store "${s}" cache.store references "${c}", which is not declared in flow.stores`);r(c)}o.pop(),t[s]="BLACK",n.push(s)}for(const n of Object.keys(e))"WHITE"===t[n]&&r(n);return n}(r);for(const t of s){const s=r[t].cache;if(!s)continue;let i,a;void 0!==s.store?(i=o[s.store],a=s.store):(o.__cache||(o.__cache=rt()),i=o.__cache,a="__cache");const c=null!=(n=s.namespace)?n:t;e.logger.scope("store-cache").scope(t).info(`store "${t}" caches with namespace "${c}:" via ${a}`),o[t]=st(o[t],{storeId:t,cacheConfig:s,cacheStore:i,namespace:c,logger:e.logger.scope("store-cache").scope(t)})}for(const[t,n]of Object.entries(o))"__cache"!==t&&it(e,n);return o}(i,u),function(e,t,n){const o=new Map;for(const[n,r]of Object.entries(e))t[n]&&o.set(r,t[n]);if(0!==o.size)for(const e of[n.transformers,n.destinations,n.sources])if(e)for(const t of Object.values(e))r(t.env);function r(e){if(e)for(const[t,n]of Object.entries(e))if("object"==typeof n&&null!==n){const r=o.get(n);r&&(e[t]=r)}}}(u,i.stores,e),i.stores.__cache||(i.stores.__cache=rt()),i.destinations=await async function(e,t={}){var n,o;const r={};for(const[s,i]of Object.entries(t))(null==(o=null==(n=i.config)?void 0:n.require)?void 0:o.length)?e.pending.destinations[s]=i:r[s]=Xe(i);return r}(i,e.destinations||{}),i.transformers=await async function(e,t={}){var n,o,r,s;const i={};for(const[a,c]of Object.entries(t)){const{code:t,env:u={}}=c,l=se(c,"Transformer");if(!l.ok){e.logger.warn(`Transformer ${a} invalid (${l.code}): ${l.reason}. Skipping.`);continue}const{config:f}=xe(c,"before"),{config:d}=xe({...c,config:f},"next"),g=Object.keys(u).length>0?{...d,env:u}:d,{cache:p}=c,v=p?{...g,cache:p}:g,m=e.logger.scope("transformer").scope(a),y={collector:e,logger:m,id:a,ingest:h(a),config:v,env:u},w=null!=t?t:e=>{const t=c.mapping;if(t){const n=[];if(void 0!==t.data&&n.push("data"),t.mapping)for(const[e,o]of Object.entries(t.mapping))if("object"==typeof o&&null!==o)for(const[t,r]of Object.entries(o)){if("object"!=typeof r||null===r)continue;const o=r;void 0!==o.data&&n.push(`mapping[${e}][${t}].data`),void 0!==o.silent&&n.push(`mapping[${e}][${t}].silent`)}return n.length>0&&e.collector.logger.warn(`Transformer ${a}: \`${n.join(", ")}\` ignored at transformer position (only event-mutating fields apply).`),{type:"pass",config:e.config,push:async n=>{const o=await B(n,t,e.collector);return!o.ignore&&{event:o.event}}}}return{type:"pass",config:e.config,push:e=>({event:e})}},b=await w(y);void 0!==c.before&&void 0===(null==(n=b.config)?void 0:n.before)&&(b.config={...null!=(o=b.config)?o:{},before:c.before}),void 0!==c.next&&void 0===(null==(r=b.config)?void 0:r.next)&&(b.config={...null!=(s=b.config)?s:{},next:c.next}),i[a]=b}return i}(i,e.transformers||{}),i}async function ct(e){e=e||{};const t=await at(e),n=(o=t,{type:"elb",config:{},push:async(e,t,n,r,s)=>{if("string"==typeof e&&e.startsWith("walker ")){const n=e.replace("walker ","");return o.command(n,t)}let i;if("string"==typeof e)i={name:e},t&&"object"==typeof t&&!Array.isArray(t)&&(i.data=t);else{if(!e||"object"!=typeof e)return Qe({ok:!1});i=e,t&&"object"==typeof t&&!Array.isArray(t)&&(i.data={...i.data||{},...t})}return n&&"object"==typeof n&&(i.context=n),r&&Array.isArray(r)&&(i.nested=r),s&&"object"==typeof s&&(i.custom=s),o.push(i)}});var o;t.sources.elb=n,await async function(e,t={}){var n;const o={};for(const[r,s]of Object.entries(t)){const t=await De(e,r,s);if(!t)continue;const i=null==(n=s.config)?void 0:n.require;t.config={...t.config,init:!1,...i?{require:[...i]}:{}},o[r]=t}Object.assign(e.sources,o);for(const t of Object.keys(o)){const n=e.sources[t];let o=!1;n.init&&await R(n.init.bind(n),n=>{if(n instanceof N)throw n;o=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:t,error:n})})(),o||(n.config.init=!0,Ie(n)&&await Ce(e,n,t))}return o}(t,e.sources||{});const{consent:r,user:s,globals:i,custom:a}=e;r&&await t.command("consent",r),s&&await t.command("user",s),i&&Object.assign(t.globals,i),a&&Object.assign(t.custom,a),t.config.run&&await t.command("run");let c=n.push;const u=Object.values(t.sources).filter(e=>"elb"!==e.type),l=u.find(e=>e.config.primary);return l?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c}}var ut,lt=async e=>{let t;return{get flow(){return t},trigger:()=>async n=>{var o,r;if(!t){const n={...e};if(n.sources){n.sources={...n.sources};for(const[e,t]of Object.entries(n.sources))(null==(o=t.env)?void 0:o.window)||(n.sources[e]={...t,env:{...t.env,window:window}})}const s=await ct({...n,run:null==(r=n.run)||r});t={collector:s.collector,elb:s.elb}}const s=window;s.dataLayer||(s.dataLayer=[]),s.dataLayer.push(n)}}},ft=(e,t)=>{const n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},dt=async e=>{const{config:t,env:n}=e,{elb:o,window:r}=n,s={name:"dataLayer",prefix:"dataLayer",...null==t?void 0:t.settings},i={settings:s};let a=0;return{type:"dataLayer",config:i,push:o,on:async e=>{if("run"===e&&r&&a>0){!function(e,t,n,o=globalThis.window){const r=t.settings,s=o[(null==r?void 0:r.name)||"dataLayer"];if(Array.isArray(s)&&!ie){ie=!0;try{const t=null!=n?n:s.length;for(let n=0;n<t;n++)ae(e,r,s[n])}finally{ie=!1}}}(o,i,a,r),a=0}},init:()=>{if(!r)return;const e=s.name||"dataLayer",t=r[e];a=Array.isArray(t)?t.length:0;!function(e,t,n=globalThis.window){const o=t.settings,r=(null==o?void 0:o.name)||"dataLayer";n[r]||(n[r]=[]);const s=n[r];if(!Array.isArray(s))return;const i=s.push.bind(s);s.push=function(...t){if(ie)return i(...t);ie=!0;try{for(const n of t)ae(e,o,n)}finally{ie=!1}return i(...t)}}(o,i,r)},destroy:async()=>{const e=s.name||"dataLayer";r&&r[e]&&Array.isArray(r[e])}}},gt=dt;return ut=s,((r,s,i,a)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let c of n(s))o.call(r,c)||c===i||e(r,c,{get:()=>s[c],enumerable:!(a=t(s,c))||a.enumerable});return r})(e({},"__esModule",{value:!0}),ut)})();
package/dist/index.es5.js CHANGED
@@ -1 +1 @@
1
- "use strict";function _array_like_to_array(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _array_with_holes(e){if(Array.isArray(e))return e}function _array_without_holes(e){if(Array.isArray(e))return _array_like_to_array(e)}function asyncGeneratorStep(e,t,n,r,o,a,i){try{var s=e[a](i),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function _async_to_generator(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){asyncGeneratorStep(a,r,o,i,s,"next",e)}function s(e){asyncGeneratorStep(a,r,o,i,s,"throw",e)}i(void 0)})}}function _define_property(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _iterable_to_array(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterable_to_array_limit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,s=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){s=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(s)throw o}}return a}}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _non_iterable_spread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){_define_property(e,t,n[t])})}return e}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function _object_spread_props(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function _object_without_properties(e,t){if(null==e)return{};var n,r,o,a={};if("undefined"!=typeof Reflect&&Reflect.ownKeys){for(n=Reflect.ownKeys(Object(e)),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=_object_without_properties_loose(e,t),Object.getOwnPropertySymbols)for(n=Object.getOwnPropertySymbols(e),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}function _object_without_properties_loose(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}function _sliced_to_array(e,t){return _array_with_holes(e)||_iterable_to_array_limit(e,t)||_unsupported_iterable_to_array(e,t)||_non_iterable_rest()}function _to_consumable_array(e){return _array_without_holes(e)||_iterable_to_array(e)||_unsupported_iterable_to_array(e)||_non_iterable_spread()}function _type_of(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function _unsupported_iterable_to_array(e,t){if(e){if("string"==typeof e)return _array_like_to_array(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_array_like_to_array(e,t):void 0}}function _ts_generator(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),s=Object.defineProperty;return s(i,"next",{value:c(0)}),s(i,"throw",{value:c(1)}),s(i,"return",{value:c(2)}),"function"==typeof Symbol&&s(i,Symbol.iterator,{value:function(){return this}}),i;function c(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function _ts_values(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}var Destination=function(){var e=function(e){return{_meta:{hops:0,path:[e]}}},t=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n=_object_spread({},ye,n);var r=Object.entries(t).reduce(function(t,r){var o=_sliced_to_array(r,2),a=o[0],i=o[1],s=e[a];return n.merge&&Array.isArray(s)&&Array.isArray(i)?t[a]=i.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(s)):(n.extend||a in e)&&(t[a]=i),t},{});return n.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},n=function(e){return Array.isArray(e)},r=function(e){return void 0!==e},o=function(e){return"function"==typeof e},a=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!n(e)&&"[object Object]"===Object.prototype.toString.call(e)},i=function(e){return"string"==typeof e},s=function(e,t,n){if(!a(e))return e;for(var r=be(e),o=t.split("."),i=r,s=0;s<o.length;s++){var c=o[s];s===o.length-1?i[c]=n:(c in i&&"object"==_type_of(i[c])&&null!==i[c]||(i[c]={}),i=i[c])}return r},c=function(e){var t=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),n={},r=!e||0===Object.keys(e).length;return Object.keys(t).forEach(function(o){t[o]&&(n[o]=!0,e&&e[o]&&(r=!0))}),!!r&&n},u=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,t=arguments.length>1?arguments[1]:void 0;if(t){for(var n=t.length,r="",o=0;o<e;o++)r+=t[Math.random()*n|0];return r}for(var a="";a.length<e;)a+=(36*Math.random()|0).toString(36);return a},l=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=null,a=!1;return function(){for(var i=arguments.length,s=new Array(i),c=0;c<i;c++)s[c]=arguments[c];return new Promise(function(i){var c=r&&!a;o&&clearTimeout(o),o=setTimeout(function(){o=null,r&&!a||(t=e.apply(void 0,_to_consumable_array(s)),i(t))},n),c&&(a=!0,t=e.apply(void 0,_to_consumable_array(s)),i(t))})}},f=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},d=function(e,t){var n,r={};return _instanceof(e,Error)?(n=e.message,r.error=f(e)):n=e,void 0!==t&&(_instanceof(t,Error)?r.error=f(t):"object"==(void 0===t?"undefined":_type_of(t))&&null!==t?"error"in(r=_object_spread({},r,t))&&_instanceof(r.error,Error)&&(r.error=f(r.error)):r.value=t),{message:n,context:r}},_=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return je({level:void 0!==t.level?(e=t.level,"string"==typeof e?ge[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},v=function(e){return ke(e)?e:void 0},p=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}},g=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return _async_to_generator(function(){var r;return _ts_generator(this,function(a){switch(a.label){case 0:return a.trys.push([0,2,4,6]),[4,e.apply(void 0,_to_consumable_array(o))];case 1:case 3:return[2,a.sent()];case 2:return r=a.sent(),t?[4,t(r)]:[2];case 4:return[4,null==n?void 0:n()];case 5:return a.sent(),[7];case 6:return[2]}})})()}},y=function(e,t,r){return _async_to_generator(function(){var o,i,s,c,u,l,f,d,_,v;return _ts_generator(this,function(p){return i=_sliced_to_array((e.name||"").split(" "),2),s=i[0],c=i[1],t&&s&&c?(l="",d=c,_=function(t){if(t)return(n(t)?t:[t]).find(function(t){if(!t.condition)return!0;if(!r)return Boolean(t.condition(e,void 0));var n={event:e,mapping:t,collector:r,logger:r.logger,consent:a(e)&&e.consent||r.consent};return Boolean(t.condition(e,n))})},t[f=s]||(f="*"),[2,((v=t[f])&&(v[d]||(d="*"),u=_(v[d])),u||(f="*",d="*",u=_(null===(o=t[f])||void 0===o?void 0:o[d])),u&&(l="".concat(f," ").concat(d)),{eventMapping:u,mappingKey:l})]):[2,{}]})})()},b=function(e){return _async_to_generator(function(e){var t,o,i,s,c,u,l,f,d,_,v,p,y,b,h,m,w=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:if(t=w.length>1&&void 0!==w[1]?w[1]:{},o=w.length>2&&void 0!==w[2]?w[2]:{},!r(e))return[2];if(c=a(e)&&e.consent||o.consent||(null===(s=o.collector)||void 0===s?void 0:s.consent),u=null!==(i=o.event)&&void 0!==i?i:a(e)?e:{},!o.collector)throw new Error("getMappingValue: context.collector is required");l={event:u,mapping:t,collector:o.collector,logger:o.collector.logger,consent:c},f=n(t)?t:[t],d=!0,_=!1,v=void 0,j.label=1;case 1:j.trys.push([1,6,7,8]),p=f[Symbol.iterator](),j.label=2;case 2:return(d=(y=p.next()).done)?[3,5]:(b=y.value,[4,g(Oe)(e,b,_object_spread_props(_object_spread({},l),{mapping:b}))]);case 3:if(h=j.sent(),r(h))return[2,h];j.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return m=j.sent(),_=!0,v=m,[3,8];case 7:try{d||null==p.return||p.return()}finally{if(_)throw v}return[7];case 8:return[2]}})}).apply(this,arguments)},h=function(e,n,r){return _async_to_generator(function(){var o,i,c,u,l,f,d,_,v,p,g;return _ts_generator(this,function(h){switch(h.label){case 0:return n.policy?[4,Promise.all(Object.entries(n.policy).map(function(t){var n=_sliced_to_array(t,2),o=n[0],a=n[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,b(e,a,{collector:r,event:e})];case 1:return t=n.sent(),e=s(e,o,t),[2]}})})()}))]:[3,2];case 1:h.sent(),h.label=2;case 2:return[4,y(e,n.mapping,r)];case 3:return i=h.sent(),c=i.eventMapping,u=i.mappingKey,(null==c?void 0:c.policy)?[4,Promise.all(Object.entries(c.policy).map(function(t){var n=_sliced_to_array(t,2),o=n[0],a=n[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(n){switch(n.label){case 0:return[4,b(e,a,{collector:r,event:e})];case 1:return t=n.sent(),e=s(e,o,t),[2]}})})()}))]:[3,5];case 4:h.sent(),h.label=5;case 5:return(f=n.data)?[4,b(e,n.data,{collector:r,event:e})]:[3,7];case 6:f=h.sent(),h.label=7;case 7:return l=f,d=Boolean(null==c?void 0:c.silent),c?c.ignore?[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!0,silent:d}]:(c.name&&(e.name=c.name),c.data?(v=c.data)?[4,b(e,c.data,{collector:r,event:e})]:[3,9]:[3,10]):[3,10];case 8:v=h.sent(),h.label=9;case 9:_=v,l=a(l)&&a(_)?t(l,_):_,h.label=10;case 10:return(p=null!==(o=null==c?void 0:c.include)&&void 0!==o?o:n.include)&&p.length>0&&(g=function(e,t){var n={},r=t.includes("all")?Object.keys(me):t,o=!0,i=!1,s=void 0;try{for(var c,u=r[Symbol.iterator]();!(o=(c=u.next()).done);o=!0){var l=c.value,f=me[l];if(f){var d=f(e),_=!0,v=!1,p=void 0;if(a(d))try{for(var g,y=Object.entries(d)[Symbol.iterator]();!(_=(g=y.next()).done);_=!0){var b=_sliced_to_array(g.value,2),h=b[0],m=b[1];if(void 0!==m){var w="context"===l&&Array.isArray(m)?m[0]:m;n["".concat(l,"_").concat(h)]=w}}}catch(e){v=!0,p=e}finally{try{_||null==y.return||y.return()}finally{if(v)throw p}}}}}catch(e){i=!0,s=e}finally{try{o||null==u.return||u.return()}finally{if(i)throw s}}return n}(e,p),Object.keys(g).length>0&&(l=a(l)?t(g,l):null!=l?l:g)),[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!1,silent:d}]}})})()},m=function(e,t,n,r){return function(){for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];var s,c="pre"+t,u="post"+t,l=n[c],f=n[u],d=function(e,t){r?r.warn(e,{error:t}):console.warn(e,t)};if(l)try{s=l.apply(void 0,[{fn:e}].concat(_to_consumable_array(a)))}catch(t){d("Hook ".concat(String(c)," failed, falling back to original function"),t),s=e.apply(void 0,_to_consumable_array(a))}else s=e.apply(void 0,_to_consumable_array(a));if(f)try{s=f.apply(void 0,[{fn:e,result:s}].concat(_to_consumable_array(a)))}catch(e){d("Hook ".concat(String(u)," failed, keeping original result"),e)}return s}},w=function(e,t){var n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n},j=function(e){var t;return{stop:null!==(t=e.stop)&&void 0!==t&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(function(e){return{match:e.match?Se(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},k=function(e,t,n,r){var o=e.rules.find(function(e){return e.match(n)});if(!o)return null;var a=o.key.map(function(e){var t;return String(null!==(t=he(n,e))&&void 0!==t?t:"")});if(a.every(function(e){return""===e}))return null;var i=a.join(":"),s=null!=r?r:e.namespace,c=s?"".concat(s,":").concat(i):i,u=t.get(c);return void 0!==u?{status:"HIT",key:c,value:u,rule:o}:{status:"MISS",key:c,rule:o}},O=function(e,t,n,r){e.set(t,n,1e3*r)},S=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,c,u,l,f,d,_,v,p;return _ts_generator(this,function(g){switch(g.label){case 0:if(!t)return[2,e];o=e,a=!0,i=!1,c=void 0,g.label=1;case 1:g.trys.push([1,6,7,8]),u=Object.entries(t)[Symbol.iterator](),g.label=2;case 2:return(a=(l=u.next()).done)?[3,5]:(f=_sliced_to_array(l.value,2),d=f[0],_=f[1],v=[o,d],[4,b(n,_,{collector:r})]);case 3:o=s.apply(void 0,v.concat([g.sent()])),g.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return p=g.sent(),i=!0,c=p,[3,8];case 7:try{a||null==u.return||u.return()}finally{if(i)throw c}return[7];case 8:return[2,o]}})})()},x=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;if(t.filter&&!0===p(function(){return t.filter(n)},function(){return!1})())return;var r=A(n);if(r){var o=t.prefix||"dataLayer",a="".concat(o," ").concat(r.name),i=(r.name,{name:a,data:_object_without_properties(r,["name"])});p(function(){return e(i)},function(){})()}},A=function(e){if(a(e)&&i(e.event))return _object_spread({name:e.event},_object_without_properties(e,["event"]));if(n(e)&&e.length>=2)return C(e);if(q(e)){var t=Array.from(e);return C(t)}return null},C=function(e){var t,n=_sliced_to_array(e,3),r=n[0],o=n[1],s=n[2];if(!i(r))return null;var c={};switch(r){case"consent":if(!i(o)||e.length<3)return null;if("default"!==o&&"update"!==o)return null;if(!a(s)||null===s)return null;t="".concat(r," ").concat(o),c=_object_spread({},s);break;case"event":if(!i(o))return null;t=o,a(s)&&(c=_object_spread({},s));break;case"config":if(!i(o))return null;t="".concat(r," ").concat(o),a(s)&&(c=_object_spread({},s));break;case"set":if(i(o))t="".concat(r," ").concat(o),a(s)&&(c=_object_spread({},s));else{if(!a(o))return null;t="".concat(r," custom"),c=_object_spread({},o)}break;default:return null}return _object_spread({name:t},c)},q=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length&&e.length>0},E=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},P=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s,c=_sliced_to_array(a.value,2),u=c[0],l=xe(null===(s=c[1].config)||void 0===s?void 0:s.next);t[u]="static"===(null==l?void 0:l.type)||"chain"===(null==l?void 0:l.type)?{next:l.value}:{}}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}return t},D=function(e,t){var n=e.config||{},r=e[t];return void 0!==r?{config:_object_spread_props(_object_spread({},n),_define_property({},t,r)),chainValue:r}:{config:n,chainValue:void 0}},L=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return[];if(Array.isArray(e))return e;for(var n=[],r=new Set,o=e;o&&t[o]&&!r.has(o);){r.add(o),n.push(o);var a=t[o].next;if(Array.isArray(a)){var i;(i=n).push.apply(i,_to_consumable_array(a));break}o=a}return n},I=function(t,n,r){return _async_to_generator(function(){var o,a,i,s;return _ts_generator(this,function(c){switch(c.label){case 0:return!n.init||n.config.init?[3,2]:(o=n.type||"unknown",a=t.logger.scope("transformer:".concat(o)),i={collector:t,logger:a,id:r,ingest:e(r),config:n.config,env:M(n.config.env)},a.debug("init"),[4,m(n.init,"TransformerInit",t.hooks,t.logger)(i)]);case 1:if(!1===(s=c.sent()))return[2,!1];n.config=_object_spread_props(_object_spread({},s||n.config),{env:(null==s?void 0:s.env)||n.config.env,init:!0}),a.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},R=function(e,t,n,r,o,a){return _async_to_generator(function(){var i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return i=t.type||"unknown",s=e.logger.scope("transformer:".concat(i)),c={collector:e,logger:s,id:n,ingest:o,config:t.config,env:_object_spread({},M(t.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,m(t.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},T=function(e,t){var n;if(e)return null!==(n=Ae(xe(e),t))&&void 0!==n?n:void 0},M=function(e){return e&&a(e)?e:{}},U=function(e,t){return _async_to_generator(function(){var e,n,r,o,a,i,s,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:if(!t.on||!(null===(e=t.queueOn)||void 0===e?void 0:e.length))return[2];n=t.queueOn,t.queueOn=[],r=!0,o=!1,a=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),i=n[Symbol.iterator](),d.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=s.value,u=c.type,l=c.data,[4,g(t.on)(u,l)]);case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return f=d.sent(),o=!0,a=f,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:return[2]}})})()},N=function(e){var t;return Boolean(e.config.init)&&!(null===(t=e.config.require)||void 0===t?void 0:t.length)},K=function(t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,_,v,p,y,h,m,x,A,C,q,D,I,R,T;return _ts_generator(this,function(M){switch(M.label){case 0:return a=r.code,i=r.config,s=void 0===i?{}:i,c=r.env,u=void 0===c?{}:c,l=r.primary,f=r.next,d=r.before,_=r.cache,p=e(n),y=_?j(_object_spread_props(_object_spread({},_),{stop:null===(o=_.stop)||void 0===o||o})):void 0,h=xe(f),m="static"!==(null==h?void 0:h.type)&&"chain"!==(null==h?void 0:h.type)||!h?void 0:L(Ae(h),P(t.transformers)),x=xe(d),A="static"!==(null==x?void 0:x.type)&&"chain"!==(null==x?void 0:x.type)||!x?void 0:L(Ae(x),P(t.transformers)),C=t.logger.scope("source").scope(n),q=_object_spread({push:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){var o,a,i,c,u,l,f,d,_,g,b,j,C,q,D,I,R,T,M,U,N,K;return _ts_generator(this,function(H){switch(H.label){case 0:return a=null!=A?A:x?L(Ae(x,w(p)),P(t.transformers)):[],i=[e],a.length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Be(t,t.transformers,a,e,p,v,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(c=H.sent()).event)return[2,{ok:!0}];if(c.stopped)return[2,(c.respond&&(v=c.respond),{ok:!0})];c.respond&&(v=c.respond),i=Array.isArray(c.event)?c.event:[c.event],H.label=2;case 2:return y&&(u=E(y,t))?(l=w(p),(f=k(y,u,l))?"HIT"===f.status&&void 0!==f.value&&y.stop?(d=f.value,f.rule.update?[4,S(d,f.rule.update,_object_spread_props(_object_spread({},l),{cache:{status:"HIT"}}),t)]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=H.sent(),H.label=4;case 4:return[2,(null==v||v(d),{ok:!0})];case 5:"MISS"===f.status&&y.stop&&v&&(_=v,g=f.rule.update,b=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),j=f.key,C=f.rule.ttl,v=function(e){O(u,j,e,C),g?o=_async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,S(e,g,b,t)];case 1:return n=r.sent(),_(n),[2]}})})():_(e)}),"MISS"!==f.status||y.stop||O(u,f.key,!0,f.rule.ttl),H.label=6;case 6:q=null!=m?m:h?L(Ae(h,w(p)),P(t.transformers)):[],D={ok:!0},I=!0,R=!1,T=void 0,H.label=7;case 7:H.trys.push([7,12,13,14]),M=i[Symbol.iterator](),H.label=8;case 8:return(I=(U=M.next()).done)?[3,11]:(N=U.value,[4,t.push(N,_object_spread_props(_object_spread({},r),{id:n,ingest:p,respond:v,mapping:s,preChain:q}))]);case 9:D=H.sent(),H.label=10;case 10:return I=!0,[3,8];case 11:return[3,14];case 12:return K=H.sent(),R=!0,T=K,[3,14];case 13:try{I||null==M.return||M.return()}finally{if(R)throw T}return[7];case 14:return o?[4,o]:[3,16];case 15:H.sent(),H.label=16;case 16:return[2,D]}})})()},command:t.command,sources:t.sources,elb:t.sources.elb.push,logger:C},u),D={collector:t,logger:C,id:n,config:s,env:q,setIngest:function(r){return _async_to_generator(function(){var o,a;return _ts_generator(this,function(i){switch(i.label){case 0:return s.ingest?[4,b(r,s.ingest,{collector:t})]:[2,void(p=e(n))];case 1:return o=i.sent(),a=e(n),p=_object_spread_props(_object_spread({},a,o),{_meta:a._meta}),[2]}})})()},setRespond:function(e){v=e}},[4,g(a)(D)];case 1:return(I=M.sent())?(R=I.type||"unknown",T=t.logger.scope(R).scope(n),[2,(q.logger=T,l&&(I.config=_object_spread_props(_object_spread({},I.config),{primary:l})),I)]):[2]}})})()},H=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,_,v,p,y,b,h,m,w,j,k=arguments;return _ts_generator(this,function(O){switch(O.label){case 0:t=k.length>1&&void 0!==k[1]?k[1]:{},n={},r=!0,o=!1,a=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),O.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],[4,K(e,u,l)]);case 3:if(!(d=O.sent()))return[3,4];_=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),_?{require:_to_consumable_array(_)}:{}),n[u]=d,O.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return j=O.sent(),o=!0,a=j,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:Object.assign(e.sources,n),v=!0,p=!1,y=void 0,O.label=9;case 9:O.trys.push([9,17,18,19]),b=Object.keys(n)[Symbol.iterator](),O.label=10;case 10:return(v=(h=b.next()).done)?[3,16]:(m=h.value,w=e.sources[m],w.init?[4,g(w.init.bind(w))()]:[3,12]);case 11:O.sent(),O.label=12;case 12:return w.config.init=!0,N(w)?[4,U(0,w)]:[3,14];case 13:O.sent(),O.label=14;case 14:O.label=15;case 15:return v=!0,[3,10];case 16:return[3,19];case 17:return j=O.sent(),p=!0,y=j,[3,19];case 18:try{v||null==b.return||b.return()}finally{if(p)throw y}return[7];case 19:return[2,n]}})}).apply(this,arguments)},G=function(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}},B=function(e,t,r){return _async_to_generator(function(){var o,a,i;return _ts_generator(this,function(s){return o=e.on,a=o[t]||[],(i=n(r)?r:[r]).forEach(function(e){a.push(e)}),o[t]=a,F(e,t,i),[2]})})()},W=function(e,t,n,r,o){if(t.on){var a=t.type||"unknown",i=e.logger.scope(a).scope("on").scope(r),s={collector:e,logger:i,id:n,config:t.config,data:o,env:te(t.env,t.config.env)};p(t.on)(r,s)}},F=function(e,t,n,r){var o,a,i,s,c;switch(t){case Ge.Commands.Consent:o=r||e.consent;break;case Ge.Commands.Session:o=e.session;break;case Ge.Commands.User:o=r||e.user;break;case Ge.Commands.Custom:o=r||e.custom;break;case Ge.Commands.Globals:o=r||e.globals;break;case Ge.Commands.Config:o=r||e.config;break;case Ge.Commands.Ready:case Ge.Commands.Run:default:o=void 0}if(n.length)switch(t){case Ge.Commands.Consent:a=e,i=n,s=r||a.consent,c=G(a,Ge.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(t){return t in e}).forEach(function(t){p(e[t])(s,c)})});break;case Ge.Commands.Ready:!function(e,t){if(e.allowed){var n=G(e,Ge.Commands.Ready);t.forEach(function(e){p(e)(void 0,n)})}}(e,n);break;case Ge.Commands.Run:!function(e,t){if(e.allowed){var n=G(e,Ge.Commands.Run);t.forEach(function(e){p(e)(void 0,n)})}}(e,n);break;case Ge.Commands.Session:!function(e,t){if(e.session){var n=G(e,Ge.Commands.Session);t.forEach(function(t){p(t)(e.session,n)})}}(e,n);break;default:var u=G(e,t);n.forEach(function(e){"function"==typeof e&&p(e)(o,u)})}},V=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,_,v,p,y,b,h,m,w,j,k,O;return _ts_generator(this,function(S){switch(S.label){case 0:switch(i=n||[],n||(i=e.on[t]||[]),t){case Ge.Commands.Consent:a=r||e.consent;break;case Ge.Commands.Session:a=e.session;break;case Ge.Commands.User:a=r||e.user;break;case Ge.Commands.Custom:a=r||e.custom;break;case Ge.Commands.Globals:a=r||e.globals;break;case Ge.Commands.Config:a=r||e.config;break;case Ge.Commands.Ready:case Ge.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,S.label=1;case 1:S.trys.push([1,7,8,9]),f=Object.values(e.sources)[Symbol.iterator](),S.label=2;case 2:return(c=(d=f.next()).done)?[3,6]:(_=d.value,(null===(v=_.config.require)||void 0===v?void 0:v.length)&&-1!==(p=_.config.require.indexOf(t))&&_.config.require.splice(p,1),_.on?N(_)?(y=!1,[4,g(_.on)(t,a)]):[3,4]:[3,5]);case 3:return y===S.sent()&&(s=!0),[3,5];case 4:_.queueOn=_.queueOn||[],_.queueOn.push({type:t,data:a}),S.label=5;case 5:return c=!0,[3,2];case 6:return[3,9];case 7:return O=S.sent(),u=!0,l=O,[3,9];case 8:try{c||null==f.return||f.return()}finally{if(u)throw l}return[7];case 9:Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],i=r[1];if(i.on){if(!i.config.init)return i.queueOn=i.queueOn||[],void i.queueOn.push({type:t,data:a});W(e,i,o,t,a)}}),b=!0,h=!1,m=void 0,S.label=10;case 10:S.trys.push([10,16,17,18]),w=Object.values(e.sources)[Symbol.iterator](),S.label=11;case 11:return(b=(j=w.next()).done)?[3,15]:(k=j.value,N(k)&&(null===(o=k.queueOn)||void 0===o?void 0:o.length)?[4,U(0,k)]:[3,13]);case 12:S.sent(),S.label=13;case 13:S.label=14;case 14:return b=!0,[3,11];case 15:return[3,18];case 16:return O=S.sent(),h=!0,m=O,[3,18];case 17:try{b||null==w.return||w.return()}finally{if(h)throw m}return[7];case 18:return Object.keys(e.pending.destinations).length>0?[4,function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,u,l,f,d,_;return _ts_generator(this,function(v){n=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(n=(i=a.next()).done);n=!0)s=_sliced_to_array(i.value,2),c=s[0],u=s[1],e.pending.destinations[c]&&!e.destinations[c]&&(f=null===(l=u.config)||void 0===l?void 0:l.require)&&-1!==(d=f.indexOf(t))&&(f.splice(d,1),f.length>0||(delete e.pending.destinations[c],!1!==(_=Z(u)).config.queue&&(_.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=_))}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,t)]:[3,20];case 19:S.sent(),S.label=20;case 20:return[2,(F(e,t,i,r),!s)]}})})()},z=function(e,t,n,r){if(!e)return[];var o=Ae(null!=t?t:xe(e),w(r));return o?L(o,n):[]},J=function(e,t,n){return _async_to_generator(function(){var r,a,i,s,c,l,f,d,_,v,p,g;return _ts_generator(this,function(y){if(r=t.code,a=t.config,i=void 0===a?{}:a,s=t.env,c=void 0===s?{}:s,l=t.before,f=t.next,d=t.cache,!o(r.push))return[2,X({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(_=n||i||{init:!1},v=l?_object_spread_props(_object_spread({},_),{before:l}):_object_spread({},_),f&&(v=_object_spread_props(_object_spread({},v),{next:f})),d&&(v=_object_spread_props(_object_spread({},v),{cache:d})),p=_object_spread_props(_object_spread({},r),{config:v,env:te(r.env,c)}),!(g=p.config.id))do{g=u(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[g]);return[2,(e.destinations[g]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),Y(e,void 0,{},_define_property({},g,p)))]})})()},Y=function(n,r,o){return _async_to_generator(function(n,r){var o,a,i,s,u,l,f,d,_,v,p,y,b,h,m,S,x,A,C,q,D=arguments;return _ts_generator(this,function(L){switch(L.label){case 0:return o=D.length>2&&void 0!==D[2]?D[2]:{},a=D.length>3?D[3]:void 0,i=n.allowed,s=n.consent,u=n.globals,l=n.user,i?(r&&(n.queue.push(r),n.status.in++),a||(a=n.destinations),f=n.transformers?P(n.transformers):{},[4,Promise.all(Object.entries(a||{}).map(function(a){var i=_sliced_to_array(a,2),d=i[0],_=i[1];return _async_to_generator(function(){var a,i,v,p,y,b,h,m,S,x,A,C,q,P,D,L,I,R,T,M,U,N,K,H;return _ts_generator(this,function(G){switch(G.label){case 0:if(_.config.disabled)return[2,{id:d,destination:_,skipped:!0}];if(y=(_.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:s})}),_.queuePush=[],r&&y.push(be(r)),b=o.ingest?_object_spread_props(_object_spread({},o.ingest),{_meta:_object_spread_props(_object_spread({},o.ingest._meta),{path:_to_consumable_array(o.ingest._meta.path)})}):e("unknown"),!y.length&&!(null===(i=_.queueOn)||void 0===i?void 0:i.length))return[2,{id:d,destination:_,skipped:!0}];if(y.length||!(null===(v=_.queueOn)||void 0===v?void 0:v.length))return[3,5];h=!1,G.label=1;case 1:return G.trys.push([1,3,,4]),[4,$(n,_,d)];case 2:return h=G.sent(),[3,4];case 3:return m=G.sent(),S=_.type||"unknown",n.logger.scope(S).error("Destination init threw",{error:_instanceof(m,Error)?m.message:String(m)}),[3,4];case 4:return[2,{id:d,destination:_,skipped:!h}];case 5:if(x=[],A=y.filter(function(e){var t=c(_.config.consent,s,e.consent);return!t||(e.consent=t,x.push(e),!1)}),(a=_.queuePush).push.apply(a,_to_consumable_array(A)),!x.length)return[2,{id:d,destination:_,queue:y}];P=!1,G.label=6;case 6:return G.trys.push([6,8,,9]),[4,$(n,_,d)];case 7:return P=G.sent(),[3,9];case 8:return D=G.sent(),L=_.type||"unknown",n.logger.scope(L).error("Destination init threw",{error:_instanceof(D,Error)?D.message:String(D)}),[3,9];case 9:return P?(_.dlq||(_.dlq=[]),I=_.config.before,R=z(I,I&&Array.isArray(I)?xe(I):void 0,f,b),T=_.config.next,M=T&&Array.isArray(T)?xe(T):void 0,U=null===(p=_.config)||void 0===p?void 0:p.cache,N=U?j(U):void 0,K=N?E(N,n):void 0,H=0,[4,Promise.all(x.map(function(e){return _async_to_generator(function(){var r,a,i,s,c,v,p,y,h,m,j,S,x;return _ts_generator(this,function(A){switch(A.label){case 0:if(e.globals=t(u,e.globals),e.user=t(l,e.user),(null==N?void 0:N.stop)&&K){if(a=w(b,e),"HIT"===(null==(i=k(N,K,a))?void 0:i.status))return[2,e];"MISS"===(null==i?void 0:i.status)&&(r={key:i.key,ttl:i.rule.ttl})}return s=e,c=o.respond,R.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Be(n,n.transformers,R,e,b,o.respond,"destination.".concat(d,".before"))]:[3,2];case 1:if(null===(v=A.sent()).event)return[2,e];v.respond&&(c=v.respond),s=Array.isArray(v.event)?v.event[0]:v.event,A.label=2;case 2:if(N&&!N.stop&&K){if(p=w(b,s),"HIT"===(null==(y=k(N,K,p))?void 0:y.status))return[2,e];"MISS"===(null==y?void 0:y.status)&&(r={key:y.key,ttl:y.rule.ttl})}return h=Date.now(),m=!1,[4,g(Q,function(e){var t=_.type||"unknown";n.logger.scope(t).error("Push failed",{error:e,event:s.name}),C=e,m=!0,_.dlq.push([s,e])})(n,_,d,s,b,c)];case 3:return j=A.sent(),H+=Date.now()-h,r&&K&&void 0===_.config.mock&&O(K,r.key,null==j||j,r.ttl),void 0!==j&&(q=j),m||!T?[3,5]:(void 0!==j&&(b._response=j),(S=z(T,M,f,b)).length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Be(n,n.transformers,S,s,b,c,"destination.".concat(d,".next"))]:[3,5]);case 4:(x=A.sent()).respond&&(c=x.respond),A.label=5;case 5:return[2,e]}})})()}))]):[2,{id:d,destination:_,queue:y}];case 10:return[2,(G.sent(),{id:d,destination:_,error:C,response:q,totalDuration:H})]}})})()}))]):[2,X({ok:!1})];case 1:d=L.sent(),_={},v={},p={},y=!0,b=!1,h=void 0;try{for(m=d[Symbol.iterator]();!(y=(S=m.next()).done);y=!0)(x=S.value).skipped||(A={type:x.destination.type||"unknown",data:x.response},n.status.destinations[x.id]||(n.status.destinations[x.id]={count:0,failed:0,duration:0}),C=n.status.destinations[x.id],q=Date.now(),x.error?(A.error=x.error,p[x.id]=A,C.failed++,C.lastAt=q,C.duration+=x.totalDuration||0,n.status.failed++):x.queue&&x.queue.length?v[x.id]=A:(_[x.id]=A,C.count++,C.lastAt=q,C.duration+=x.totalDuration||0,n.status.out++))}catch(e){b=!0,h=e}finally{try{y||null==m.return||m.return()}finally{if(b)throw h}}return[2,X(_object_spread({event:r},Object.keys(_).length&&{done:_},Object.keys(v).length&&{queued:v},Object.keys(p).length&&{failed:p}))]}})}).apply(this,arguments)},$=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,_,v,p,g;return _ts_generator(this,function(y){switch(y.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=e.logger.scope(o),i={collector:e,logger:a,id:n,config:t.config,env:te(t.env,t.config.env)},a.debug("init"),[4,m(t.init,"DestinationInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=y.sent()))return[2,s];if(t.config=_object_spread_props(_object_spread({},s||t.config),{init:!0}),null===(r=t.queueOn)||void 0===r?void 0:r.length){c=t.queueOn,t.queueOn=[],u=!0,l=!1,f=void 0;try{for(d=c[Symbol.iterator]();!(u=(_=d.next()).done);u=!0)v=_.value,p=v.type,g=v.data,W(e,t,n,p,g)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),y.label=2;case 2:return[2,!0]}})})()},Q=function(e,t,n,o,a,i){return _async_to_generator(function(){var s,c,u,f,d,_,v,p,g,y;return _ts_generator(this,function(b){switch(b.label){case 0:return s=t.config,[4,h(o,s,e)];case 1:return(c=b.sent()).ignore?[2,!1]:(u=t.type||"unknown",f=e.logger.scope(u),d={collector:e,logger:f,id:n,config:s,data:c.data,rule:c.mapping,ingest:a,env:_object_spread({},te(t.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(f.debug("mock",{event:c.event.name}),s.mock)]:(_=c.mapping,v=c.mappingKey||"* *",(null==_?void 0:_.batch)&&t.pushBatch&&void 0===s.mock?[3,3]:(f.debug("push",{event:c.event.name}),[4,m(t.push,"DestinationPush",e.hooks,e.logger)(c.event,d)])));case 2:return p=b.sent(),[2,(f.debug("push done"),p)];case 3:return t.batches=t.batches||{},t.batches[v]||(g={key:v,events:[],data:[]},t.batches[v]={batched:g,batchFn:l(function(){var r=t.batches[v].batched,o={collector:e,logger:f,id:n,config:s,data:void 0,rule:_,ingest:a,env:_object_spread({},te(t.env,s.env),i?{respond:i}:{})};f.debug("push batch",{events:r.events.length}),m(t.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(r,o),f.debug("push batch done"),r.events=[],r.data=[]},_.batch)}),(y=t.batches[v]).batched.events.push(c.event),r(c.data)&&y.batched.data.push(c.data),y.batchFn(),[2,!0]}})})()},X=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},Z=function(e){var t=e.code,n=e.config,r=void 0===n?{}:n,o=e.env,a=void 0===o?{}:o,i=e.cache,s=D(e,"before").config,c=D(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},t.config,r,c);i&&(u.cache=i);var l=te(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},ee=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,_=arguments;return _ts_generator(this,function(v){t=_.length>1&&void 0!==_[1]?_[1]:{},o={},a=!0,i=!1,s=void 0;try{for(c=Object.entries(t)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(r=d.config)||void 0===r||null===(n=r.require)||void 0===n?void 0:n.length)?e.pending.destinations[f]=d:o[f]=Z(d)}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}return[2,o]})}).apply(this,arguments)},te=function(e,t){return e||t?t?e&&a(e)&&a(t)?_object_spread({},e,t):t:e:{}},ne=function(e,t,n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return r=Object.entries(e).map(function(e){var r=_sliced_to_array(e,2),o=r[0],a=r[1];return _async_to_generator(function(){var e,r,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:if(!(r=a.destroy))return[2];i=a.type||"unknown",s=n.scope(i),c={id:o,config:a.config,env:null!==(e=a.env)&&void 0!==e?e:{},logger:s},l.label=1;case 1:return l.trys.push([1,3,,4]),[4,Promise.race([r(c),new Promise(function(e,n){return setTimeout(function(){return n(new Error("".concat(t," '").concat(o,"' destroy timed out")))},5e3)})])];case 2:return l.sent(),[3,4];case 3:return u=l.sent(),s.error("".concat(t," '").concat(o,"' destroy failed: ").concat(u)),[3,4];case 4:return[2]}})})()}),[4,Promise.allSettled(r)];case 1:return o.sent(),[2]}})})()},re=function(e,n,r,s){return _async_to_generator(function(){var c,u,l,f,d,_,v;return _ts_generator(this,function(p){switch(p.label){case 0:switch(l=!1,n){case Ge.Commands.Config:return[3,1];case Ge.Commands.Consent:return[3,2];case Ge.Commands.Custom:return[3,3];case Ge.Commands.Destination:return[3,4];case Ge.Commands.Globals:return[3,11];case Ge.Commands.On:return[3,12];case Ge.Commands.Ready:return[3,15];case Ge.Commands.Run:return[3,16];case Ge.Commands.Session:return[3,18];case Ge.Commands.Shutdown:return[3,19];case Ge.Commands.User:return[3,21]}return[3,22];case 1:return a(r)&&(t(e.config,r,{shallow:!1}),u=r,l=!0),[3,22];case 2:return a(r)&&(f=function(e,n){var r={};return Object.entries(n).forEach(function(e){var t=_sliced_to_array(e,2),n=t[0],o=t[1];r[n]=!!o}),e.consent=t(e.consent,r),{update:r}}(e,r),d=f.update,u=d,l=!0),[3,22];case 3:return a(r)&&(e.custom=t(e.custom,r),u=r,l=!0),[3,22];case 4:return a(r)?"code"in r&&a(r.code)?[4,J(e,r,s)]:[3,6]:[3,10];case 5:return _=c=p.sent(),[3,9];case 6:return(v=o(r.push))?[4,J(e,{code:r},s)]:[3,8];case 7:v=c=p.sent(),p.label=8;case 8:_=v,p.label=9;case 9:p.label=10;case 10:return[3,22];case 11:return a(r)&&(e.globals=t(e.globals,r),u=r,l=!0),[3,22];case 12:return i(r)?[4,B(e,r,s)]:[3,14];case 13:p.sent(),p.label=14;case 14:return[3,22];case 15:return l=!0,[3,22];case 16:return[4,ae(e,r)];case 17:return c=p.sent(),l=!0,[3,22];case 18:return l=!0,[3,22];case 19:return[4,(g=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=g.logger,[4,ne(g.sources,"source",e)];case 1:return t.sent(),[4,ne(g.destinations,"destination",e)];case 2:return t.sent(),[4,ne(g.transformers,"transformer",e)];case 3:return t.sent(),[4,ne(g.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 20:return p.sent(),[3,22];case 21:a(r)&&(t(e.user,r,{shallow:!1}),u=r,l=!0),p.label=22;case 22:return l?[4,V(e,n,void 0,u)]:[3,25];case 23:return p.sent(),[4,Y(e)];case 24:c=p.sent(),p.label=25;case 25:return[2,c||X({ok:!0})]}var g})})()},oe=function(e,t){if(!t.name)throw new Error("Event name is required");var n=_sliced_to_array(t.name.split(" "),2),r=n[0],o=n[1];if(!r||!o)throw new Error("Event name is invalid");var a=t.timestamp,i=void 0===a?Date.now():a,s=t.name,c=void 0===s?"".concat(r," ").concat(o):s,u=t.data,l=void 0===u?{}:u,f=t.context,d=void 0===f?{}:f,_=t.globals,v=void 0===_?e.globals:_,p=t.custom,g=void 0===p?{}:p,y=t.user,b=void 0===y?e.user:y,h=t.nested,m=void 0===h?[]:h,w=t.consent,j=void 0===w?e.consent:w,k=t.id,O=void 0===k?function(){for(var e="",t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}():k,S=t.trigger,x=void 0===S?"":S,A=t.entity,C=void 0===A?r:A,q=t.action,E=void 0===q?o:q,P=t.timing,D=void 0===P?0:P,L=t.source;return{name:c,data:l,context:d,globals:v,custom:g,user:b,nested:m,consent:j,id:O,trigger:x,entity:C,action:E,timestamp:i,timing:D,source:void 0===L?{type:"collector",schema:"4"}:L}},ae=function(e,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return e.allowed=!0,e.timing=Date.now(),n&&(n.consent&&(e.consent=t(e.consent,n.consent)),n.user&&(e.user=t(e.user,n.user)),n.globals&&(e.globals=t(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=t(e.custom,n.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,Y(e)];case 1:return[2,r.sent()]}})})()},ie=function(n){return _async_to_generator(function(){var r,o,a,i,s,u,l,f,d;return _ts_generator(this,function(v){switch(v.label){case 0:return a=t({globalsStatic:{},sessionStatic:{},run:!0},n,{merge:!1,extend:!1}),i={level:null===(r=n.logger)||void 0===r?void 0:r.level,handler:null===(o=n.logger)||void 0===o?void 0:o.handler},s=_(i),u=_object_spread({},a.globalsStatic,n.globals),(l={allowed:!1,config:a,consent:n.consent||{},custom:n.custom||{},destinations:{},transformers:{},stores:{},globals:u,hooks:n.hooks||{},logger:s,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:n.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0}).push=function(t,n){return m(function(r){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,g(function(){return _async_to_generator(function(){var a,i,s,u,l,f,d,_,v,p,g,y,b,m,w,j,k,O,S,x,A;return _ts_generator(this,function(C){switch(C.label){case 0:return a=Date.now(),i=o.id,s=o.ingest,u=o.respond,l=o.mapping,f=o.preChain,d=o.include,_=o.exclude,v=u,p=r,g=d||_?function(e,t,n){var r=e;return t&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var n=_sliced_to_array(e,1)[0];return t.includes(n)}))),n&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var t=_sliced_to_array(e,1)[0];return!n.includes(t)}))),r}(t.destinations,d,_):void 0,y=null!=s?s:e(i||"unknown"),l?[4,h(p,l,t)]:[3,2];case 1:if((b=C.sent()).ignore)return[2,X({ok:!0})];if(l.consent&&!c(l.consent,t.consent,b.event.consent))return[2,X({ok:!0})];p=b.event,C.label=2;case 2:return(null==f?void 0:f.length)&&t.transformers&&Object.keys(t.transformers).length>0?[4,Be(t,t.transformers,f,p,y,v,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(m=C.sent()).event?[2,X({ok:!0})]:m.stopped?[2,(m.respond&&(v=m.respond),X({ok:!0}))]:(m.respond&&(v=m.respond),Array.isArray(m.event)?[4,Promise.all(m.event.map(function(e){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=n(e),o=oe(t,r),[2,Y(t,o,{id:i,ingest:y,respond:v},g)]})})()}))]:[3,5]);case 4:return j=C.sent(),i&&(t.status.sources[i]||(t.status.sources[i]={count:0,duration:0}),(k=t.status.sources[i]).count+=m.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-a),[2,null!==(w=j[0])&&void 0!==w?w:X({ok:!0})];case 5:p=m.event,C.label=6;case 6:return O=n(p),S=oe(t,O),[4,Y(t,S,{id:i,ingest:y,respond:v},g)];case 7:return x=C.sent(),i&&(t.status.sources[i]||(t.status.sources[i]={count:0,duration:0}),(A=t.status.sources[i]).count++,A.lastAt=Date.now(),A.duration+=Date.now()-a),[2,x]}})})()},function(){return X({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Push",t.hooks,t.logger)}(l,function(e){return _object_spread({timing:Math.round((Date.now()-l.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0-next-1778668930820"}},e)}),l.command=function(e,t){return m(function(n,r,o){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,g(function(){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,t(e,n,r,o)];case 1:return[2,a.sent()]}})})()},function(){return X({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(l,re),f=n.stores||{},[4,function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,_,v,p,g,y,b,h,w,j,k=arguments;return _ts_generator(this,function(O){switch(O.label){case 0:t=k.length>1&&void 0!==k[1]?k[1]:{},n={},r=!0,o=!1,a=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),O.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,_=void 0===d?{}:d,v=l.env,p=void 0===v?{}:v,g=e.logger.scope("store").scope(u),[4,f({collector:e,logger:g,id:u,config:_,env:p})]);case 3:y=O.sent(),b=y.get,h=y.set,w=y.delete,y.get=m(b,"StoreGet",e.hooks,e.logger),y.set=m(h,"StoreSet",e.hooks,e.logger),y.delete=m(w,"StoreDelete",e.hooks,e.logger),n[u]=y,O.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return j=O.sent(),o=!0,a=j,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:return[2,n]}})}).apply(this,arguments)}(l,f)];case 1:return l.stores=v.sent(),function(e,t,n){var r=new Map,o=!0,a=!1,i=void 0;try{for(var s,c=Object.entries(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=_sliced_to_array(s.value,2),l=u[0],f=u[1];t[l]&&r.set(f,t[l])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}if(0!==r.size)for(var d=!0,_=!1,v=void 0,p=0,g=[n.transformers,n.destinations,n.sources];p<g.length;p++){var y=g[p];if(y)try{for(var b,h=Object.values(y)[Symbol.iterator]();!(d=(b=h.next()).done);d=!0){m(b.value.env)}}catch(e){_=!0,v=e}finally{try{d||null==h.return||h.return()}finally{if(_)throw v}}}function m(e){if(e){var t=!0,n=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=_sliced_to_array(a.value,2),c=s[0],u=s[1];if("object"==(void 0===u?"undefined":_type_of(u))&&null!==u){var l=r.get(u);l&&(e[c]=l)}}}catch(e){n=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw o}}}}}(f,l.stores,n),l.stores.__cache||(d=new Map,l.stores.__cache={type:"memory",config:{},get:function(e){var t=d.get(e);if(t){if(!(t.expires&&Date.now()>t.expires))return t.value;d.delete(e)}},set:function(e,t,n){d.set(e,{value:t,expires:n?Date.now()+n:void 0})},delete:function(e){d.delete(e)}}),[4,ee(l,n.destinations||{})];case 2:return l.destinations=v.sent(),[4,function(t){return _async_to_generator(function(t){var n,r,o,a,i,s,c,u,l,f=arguments;return _ts_generator(this,function(d){switch(d.label){case 0:n=f.length>1&&void 0!==f[1]?f[1]:{},r={},o=!0,a=!1,i=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=function(){var n,o,a,i,s,c,l,f,d,_,v,p,g,y,b,m,w,j,k,O,S,x;return _ts_generator(this,function(A){switch(A.label){case 0:return n=_sliced_to_array(u.value,2),o=n[0],a=n[1],f=a.code,d=a.env,_=void 0===d?{}:d,v=function(e){var t=!0,n=!1,r=void 0;try{for(var o,a=Object.keys(e)[Symbol.iterator]();!(t=(o=a.next()).done);t=!0){var i=o.value;if(!Ce.has(i))return{ok:!1,code:"UNKNOWN_KEY",key:i,reason:'Unknown key "'.concat(i,'". Allowed: ').concat(_to_consumable_array(Ce).join(", "),".")}}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}return void 0!==e.code&&void 0!==e.package?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:{ok:!0}}(a),v.ok?(p=D(a,"before"),g=p.config,y=D(_object_spread_props(_object_spread({},a),{config:g}),"next"),b=y.config,m=Object.keys(_).length>0?_object_spread_props(_object_spread({},b),{env:_}):b,w=a.cache,j=w?_object_spread_props(_object_spread({},m),{cache:w}):m,k=t.logger.scope("transformer").scope(o),O={collector:t,logger:k,id:o,ingest:e(o),config:j,env:_},S=null!=f?f:function(e){var t=a.mapping;if(t){var n=[];if(void 0!==t.data&&n.push("data"),t.mapping){var r=!0,i=!1,s=void 0,c=!0,u=!1,l=void 0;try{for(var f,d=Object.entries(t.mapping)[Symbol.iterator]();!(c=(f=d.next()).done);c=!0){var _=_sliced_to_array(f.value,2),v=_[0],p=_[1];if("object"==(void 0===p?"undefined":_type_of(p))&&null!==p)try{for(var g,y=Object.entries(p)[Symbol.iterator]();!(r=(g=y.next()).done);r=!0){var b=_sliced_to_array(g.value,2),m=b[0],w=b[1];if("object"==(void 0===w?"undefined":_type_of(w))&&null!==w){var j=w;void 0!==j.data&&n.push("mapping[".concat(v,"][").concat(m,"].data")),void 0!==j.silent&&n.push("mapping[".concat(v,"][").concat(m,"].silent"))}}}catch(e){i=!0,s=e}finally{try{r||null==y.return||y.return()}finally{if(i)throw s}}}}catch(e){u=!0,l=e}finally{try{c||null==d.return||d.return()}finally{if(u)throw l}}}return n.length>0&&e.collector.logger.warn("Transformer ".concat(o,": `").concat(n.join(", "),"` ignored at transformer position (only event-mutating fields apply).")),{type:"pass",config:e.config,push:function(n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return[4,h(n,t,e.collector)];case 1:return[2,!(r=o.sent()).ignore&&{event:r.event}]}})})()}}}return{type:"pass",config:e.config,push:function(e){return{event:e}}}},[4,S(O)]):(t.logger.warn("Transformer ".concat(o," invalid (").concat(v.code,"): ").concat(v.reason,". Skipping.")),[2,"continue"]);case 1:return x=A.sent(),void 0!==a.before&&void 0===(null===(c=x.config)||void 0===c?void 0:c.before)&&(x.config=_object_spread_props(_object_spread({},null!==(i=x.config)&&void 0!==i?i:{}),{before:a.before})),void 0!==a.next&&void 0===(null===(l=x.config)||void 0===l?void 0:l.next)&&(x.config=_object_spread_props(_object_spread({},null!==(s=x.config)&&void 0!==s?s:{}),{next:a.next})),r[o]=x,[2]}})},c=Object.entries(n)[Symbol.iterator](),d.label=2;case 2:return(o=(u=c.next()).done)?[3,5]:[5,_ts_values(s())];case 3:d.sent(),d.label=4;case 4:return o=!0,[3,2];case 5:return[3,8];case 6:return l=d.sent(),a=!0,i=l,[3,8];case 7:try{o||null==c.return||c.return()}finally{if(a)throw i}return[7];case 8:return[2,r]}})}).apply(this,arguments)}(l,n.transformers||{})];case 3:return[2,(l.transformers=v.sent(),l)]}})})()},se=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,ie(e=e||{})];case 1:return t=f.sent(),r=t,n={type:"elb",config:{},push:function(e,t,n,o,a,i){return _async_to_generator(function(){var s,c;return _ts_generator(this,function(u){if("string"==typeof e&&e.startsWith("walker "))return s=e.replace("walker ",""),[2,r.command(s,t,n)];if("string"==typeof e)c={name:e},t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(c.data=t);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,X({ok:!1})];c=e,t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(c.data=_object_spread({},c.data||{},t))}return[2,(o&&"object"==(void 0===o?"undefined":_type_of(o))&&(c.context=o),a&&Array.isArray(a)&&(c.nested=a),i&&"object"==(void 0===i?"undefined":_type_of(i))&&(c.custom=i),r.push(c))]})})()}},t.sources.elb=n,[4,H(t,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,i=e.globals,s=e.custom,o?[4,t.command("consent",o)]:[3,4];case 3:f.sent(),f.label=4;case 4:return a?[4,t.command("user",a)]:[3,6];case 5:f.sent(),f.label=6;case 6:return i&&Object.assign(t.globals,i),s&&Object.assign(t.custom,s),t.config.run?[4,t.command("run")]:[3,8];case 7:f.sent(),f.label=8;case 8:return c=n.push,u=Object.values(t.sources).filter(function(e){return"elb"!==e.type}),[2,((l=u.find(function(e){return e.config.primary}))?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c})]}})})()},ce=Object.defineProperty,ue=Object.getOwnPropertyDescriptor,le=Object.getOwnPropertyNames,fe=Object.prototype.hasOwnProperty,de=function(e,t){for(var n in t)ce(e,n,{get:t[n],enumerable:!0})},_e={};de(_e,{SourceDataLayer:function(){return Ee},createTrigger:function(){return Fe},default:function(){return Je},env:function(){return Pe},sourceDataLayer:function(){return ze},step:function(){return Te},trigger:function(){return Ve}});var ve=Object.defineProperty;!function(e,t){for(var n in t)ve(e,n,{get:t[n],enumerable:!0})}({},{Level:function(){return ge}});var pe,ge=((pe=ge||{})[pe.ERROR=0]="ERROR",pe[pe.WARN=1]="WARN",pe[pe.INFO=2]="INFO",pe[pe.DEBUG=3]="DEBUG",pe),ye={merge:!0,shallow:!0,extend:!0};function be(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if("object"!=(void 0===e?"undefined":_type_of(e))||null===e)return e;if(t.has(e))return t.get(e);var n=Object.prototype.toString.call(e);if("[object Object]"===n){var r={};for(var o in t.set(e,r),e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=be(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(be(e,t))}),a}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){var i=e;return new RegExp(i.source,i.flags)}return e}function he(e){for(var t=arguments.length>2?arguments[2]:void 0,o=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),a=e,i=0;i<o.length;i++){var s=o[i];if("*"===s&&n(a)){var c=o.slice(i+1).join("."),u=[],l=!0,f=!1,d=void 0;try{for(var _,v=a[Symbol.iterator]();!(l=(_=v.next()).done);l=!0){var p=he(_.value,c,t);u.push(p)}}catch(e){f=!0,d=e}finally{try{l||null==v.return||v.return()}finally{if(f)throw d}}return u}if(void 0===(a=_instanceof(a,Object)?a[s]:void 0))break}return r(a)?a:t}var me={data:function(e){return e.data},globals:function(e){return e.globals},context:function(e){return e.context},user:function(e){return e.user},source:function(e){return e.source},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing}}},we=function(e,t,n,r){var o="".concat(ge[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(n).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(o,t,n):i(o,t)};function je(e){var t=e.level,n=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=t){var i=d(r,a);n?n(e,i.message,i.context,o,we):we(e,i.message,i.context,o)}};return{error:function(e,t){return a(0,e,t)},warn:function(e,t){return a(1,e,t)},info:function(e,t){return a(2,e,t)},debug:function(e,t){return a(3,e,t)},throw:function(e,t){var r=d(e,t);throw n?n(0,r.message,r.context,o,we):we(0,r.message,r.context,o),new Error(r.message)},json:function(e){r?r(e):console.log(JSON.stringify(e,null,2))},scope:function(e){return je({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function ke(e){return function(e){return"boolean"==typeof e}(e)||i(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!r(e)||n(e)&&e.every(ke)||a(e)&&Object.values(e).every(ke)}function Oe(e,t,o){return _async_to_generator(function(){return _ts_generator(this,function(a){return[2,(n(t)?t:[t]).reduce(function(t,a){return _async_to_generator(function(){var s,u,l,f,d,_,p,y,h,m,w,j,k,O,S,x,A,C,q,E,P,D;return _ts_generator(this,function(L){switch(L.label){case 0:return[4,t];case 1:return(s=L.sent())?[2,s]:(u=i(a)?{key:a}:a,Object.keys(u).length?(l=u.condition,f=u.consent,d=u.fn,_=u.key,p=u.loop,y=u.map,h=u.set,m=u.validate,w=u.value,j=_object_spread_props(_object_spread({},o),{mapping:a}),(k=l)?[4,g(l)(e,j)]:[3,3]):[2]);case 2:k=!L.sent(),L.label=3;case 3:return k?[2]:f&&!c(f,j.consent)?[2,w]:(O=r(w)?w:e,d?[4,g(d)(e,j)]:[3,5]);case 4:O=L.sent(),L.label=5;case 5:return _&&(O=he(e,_,w)),p?(S=_sliced_to_array(p,2),x=S[0],A=S[1],"this"!==x?[3,6]:(q=[e],[3,8])):[3,11];case 6:return[4,b(e,x,j)];case 7:q=L.sent(),L.label=8;case 8:return n(C=q)?[4,Promise.all(C.map(function(e){return b(e,A,j)}))]:[3,10];case 9:O=L.sent().filter(r),L.label=10;case 10:return[3,17];case 11:return y?[4,Object.entries(y).reduce(function(t,n){var o=_sliced_to_array(n,2),a=o[0],i=o[1];return _async_to_generator(function(){var n,o;return _ts_generator(this,function(s){switch(s.label){case 0:return[4,t];case 1:return n=s.sent(),[4,b(e,i,j)];case 2:return o=s.sent(),[2,(r(o)&&(n[a]=o),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=L.sent(),[3,16];case 13:return(E=h)?[4,Promise.all(h.map(function(t){return Oe(e,t,j)}))]:[3,15];case 14:E=O=L.sent(),L.label=15;case 15:L.label=16;case 16:L.label=17;case 17:return(P=m)?[4,g(m)(O,j)]:[3,19];case 18:P=!L.sent(),L.label=19;case 19:return P&&(O=void 0),D=v(O),[2,r(D)?D:v(w)]}})})()},Promise.resolve(void 0))]})})()}function Se(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var t=e.and.map(Se);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(Se);return function(e){return n.some(function(t){return t(e)})}}return function(e){var t=e.key,n=e.operator,r=e.value,o=e.not,a=function(e,t){switch(e){case"eq":return function(e){return String(null!=e?e:"")===t};case"contains":return function(e){return String(null!=e?e:"").includes(t)};case"prefix":return function(e){return String(null!=e?e:"").startsWith(t)};case"suffix":return function(e){return String(null!=e?e:"").endsWith(t)};case"regex":var n=new RegExp(t);return function(e){return n.test(String(null!=e?e:""))};case"gt":var r=Number(t);return function(e){return Number(e)>r};case"lt":var o=Number(t);return function(e){return Number(e)<o};case"exists":return function(e){return null!=e}}}(n,r);return function(e){var n=he(e,t),r=a(n);return o?!r:r}}(e)}function xe(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(function(e){return"object"==(void 0===(t=e)?"undefined":_type_of(t))&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"case"in t);var t})}(e))return xe({case:e});if(e.every(function(e){return"string"==typeof e}))return{type:"chain",value:e};var t=[],n=!0,r=!1,o=void 0;try{for(var a,i=e[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=xe(a.value);void 0!==s&&t.push(s)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}if(0===t.length)return;return{type:"sequence",value:t}}var c=e;if("next"in c&&void 0!==c.next)return c.match?{type:"gate",match:Se(c.match),next:xe(c.next)}:xe(c.next);if("case"in c&&c.case){var u=c.case.map(function(e){var t;if("string"==typeof e)return{match:function(){return!0},next:{type:"static",value:e}};if(Array.isArray(e))return{match:function(){return!0},next:xe(e)};var n=e;return{match:n.match?Se(n.match):function(){return!0},next:null!==(t=xe(n))&&void 0!==t?t:{type:"chain",value:[]}}});return c.match?{type:"gate",match:Se(c.match),next:{type:"case",routes:u}}:{type:"case",routes:u}}return c.match?{type:"gate",match:Se(c.match)}:void 0}}function Ae(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(t))return;return Ae(e.next,t)}if("sequence"===e.type){var n=[],r=!0,o=!1,a=void 0;try{for(var i,s=e.value[Symbol.iterator]();!(r=(i=s.next()).done);r=!0){var c,u=Ae(i.value,t);void 0!==u&&(Array.isArray(u)?(c=n).push.apply(c,_to_consumable_array(u)):n.push(u))}}catch(e){o=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return n.length>0?n:void 0}var l=!0,f=!1,d=void 0;try{for(var _,v=e.routes[Symbol.iterator]();!(l=(_=v.next()).done);l=!0){var p=_.value;if(p.match(t))return Ae(p.next,t)}}catch(e){f=!0,d=e}finally{try{l||null==v.return||v.return()}finally{if(f)throw d}}}}var Ce=new Set(_to_consumable_array(["code","package","before","next","cache","mapping"]).concat(["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"])),qe=!1,Ee={},Pe={};de(Pe,{push:function(){return Re}});var De=function(){},Le=function(){return function(){return Promise.resolve({ok:!0})}},Ie={error:De,warn:De,info:De,debug:De,throw:function(e){throw"string"==typeof e?new Error(e):e},json:De,scope:function(){return Ie}},Re={get push(){return Le()},get command(){return Le()},get elb(){return Le()},get window(){return{dataLayer:[],addEventListener:De,removeEventListener:De}},logger:Ie},Te={};de(Te,{consentUpdate:function(){return Ue},directEvent:function(){return He},gtagAddToCart:function(){return Ne},gtagPurchase:function(){return Me},gtagViewItem:function(){return Ke}});var Me={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},Ue={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},Ne={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},Ke={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},He={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},Ge={Commands:{Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}};function Be(t,n,r,o,a,i,s){return _async_to_generator(function(){var c,u,l,f,d,_,v,p,y,b;return _ts_generator(this,function(h){switch(h.label){case 0:s&&(null==a?void 0:a._meta)&&(a._meta.chainPath=s),c=o,u=i,l=!0,f=!1,d=void 0,h.label=1;case 1:h.trys.push([1,6,7,8]),_=function(){var o,i,l,f,d,_,v,y,b,h,m,S,x,A,C,q,D,M,U,N,K,H,G,B,W,F,V,z,J,Y,$,Q,X,Z,ee,te,ne,re,oe,ae,ie;return _ts_generator(this,function(se){switch(se.label){case 0:return o=p.value,(v=n[o])?a&&a._meta&&a._meta.path.length>256?[2,{v:(t.logger.error("Max path length exceeded at ".concat(o)),{event:null,respond:u})}]:(a&&a._meta&&(a._meta.hops++,a._meta.path.push(o)),[4,g(I)(t,v,o)]):(t.logger.warn("Transformer not found: ".concat(o)),[2,"continue"]);case 1:if(!se.sent())return[2,{v:(t.logger.error("Transformer init failed: ".concat(o)),{event:null,respond:u})}];if(s&&void 0!==(null===(l=v.config)||void 0===l||null===(i=l.chainMocks)||void 0===i?void 0:i[s]))return y=v.config.chainMocks[s],t.logger.scope("transformer:".concat(v.type||"unknown")).debug("chainMock",{chain:s}),c=y,[2,"continue"];if(void 0!==(null===(f=v.config)||void 0===f?void 0:f.mock))return t.logger.scope("transformer:".concat(v.type||"unknown")).debug("mock"),c=v.config.mock,[2,"continue"];if(null===(d=v.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(b=null===(_=v.config)||void 0===_?void 0:_.cache,h=b?j(b):void 0,m=h?E(h,t):void 0,S=void 0,h&&m){if(x=w(a,c),"HIT"===(null==(A=k(h,m,x))?void 0:A.status)&&A.value)return c=A.value,h.stop?[2,{v:{event:c,respond:u,stopped:!0}}]:[2,"continue"];"MISS"===(null==A?void 0:A.status)&&(S={key:A.key,ttl:A.rule.ttl})}return(C=v.config.before)&&(q=L(T(C,w(a,c)),P(n))).length>0?[4,Be(t,n,q,c,a,u,s)]:[3,3];case 2:if(null===(U=se.sent()).event)return[2,{v:{event:null,respond:null!==(D=U.respond)&&void 0!==D?D:u}}];if(U.stopped)return[2,{v:{event:Array.isArray(U.event)?U.event[0]:U.event,respond:null!==(M=U.respond)&&void 0!==M?M:u,stopped:!0}}];U.respond&&(u=U.respond),c=Array.isArray(U.event)?U.event[0]:U.event,se.label=3;case 3:return[4,g(R,function(e){return t.logger.scope("transformer:".concat(v.type||"unknown")).error("Push failed",{error:e}),!1})(t,v,o,c,a,u)];case 4:return!1===(N=se.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(N)?(K=r.slice(r.indexOf(o)+1),[4,Promise.all(N.map(function(r){return _async_to_generator(function(){var o,i,l,f;return _ts_generator(this,function(d){return o=r.event||c,i=a?_object_spread_props(_object_spread({},a),{_meta:_object_spread_props(_object_spread({},a._meta),{path:_to_consumable_array(a._meta.path)})}):e("unknown"),r.next?(l=T(r.next,w(i,o)))&&(f=L(l,P(n))).length>0?[2,Be(t,n,f,o,i,u,s)]:[2,{event:o,respond:u}]:[2,K.length>0?Be(t,n,K,o,i,u,s):{event:o,respond:u}]})})()}))]):[3,6];case 5:H=se.sent(),G=u,B=[],W=!0,F=!1,V=void 0;try{for(z=H.flat()[Symbol.iterator]();!(W=(J=z.next()).done);W=!0)if(null!==(Y=J.value))if(Y&&"object"==(void 0===Y?"undefined":_type_of(Y))&&"event"in Y){if((Q=Y).respond&&(G=Q.respond),null===Q.event)continue;Array.isArray(Q.event)?($=B).push.apply($,_to_consumable_array(Q.event)):B.push(Q.event)}else B.push(Y)}catch(e){F=!0,V=e}finally{try{W||null==z.return||z.return()}finally{if(F)throw V}}return[2,{v:0===B.length?{event:null,respond:G}:1===B.length?{event:B[0],respond:G}:{event:B,respond:G}}];case 6:if(N&&"object"==(void 0===N?"undefined":_type_of(N))){if(X=N.event,Z=N.respond,ee=N.next,Z&&(u=Z),ee)return(te=T(ee,w(a,c)))?[2,{v:(ne=L(te,P(n))).length>0?Be(t,n,ne,X||c,a,u,s):(t.logger.warn("Branch target not found: ".concat(JSON.stringify(ee))),{event:null,respond:u})}]:(X&&(c=X),[2,"continue"]);X&&(c=X)}return S&&m&&O(m,S.key,c,S.ttl),re=v.config.next?xe(v.config.next):void 0,oe="case"===(null==re?void 0:re.type)||"gate"===(null==re?void 0:re.type)||"sequence"===(null==re?void 0:re.type),(!N||"object"==(void 0===N?"undefined":_type_of(N))&&!N.next)&&re&&oe?(ae=Ae(re,w(a,c)))&&(ie=L(ae,P(n))).length>0?[2,{v:Be(t,n,ie,c,a,u,s)}]:[2,{v:{event:c,respond:u}}]:[2]}})},v=r[Symbol.iterator](),h.label=2;case 2:return(l=(p=v.next()).done)?[3,5]:[5,_ts_values(_())];case 3:if("object"===_type_of(y=h.sent()))return[2,y.v];h.label=4;case 4:return l=!0,[3,2];case 5:return[3,8];case 6:return b=h.sent(),f=!0,d=b,[3,8];case 7:try{l||null==v.return||v.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var We,Fe=function(e){return _async_to_generator(function(){var t,n;return _ts_generator(this,function(r){return n=function(){return function(n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,_,v,p;return _ts_generator(this,function(g){switch(g.label){case 0:if(t)return[3,2];if((o=_object_spread({},e)).sources){o.sources=_object_spread({},o.sources),a=!0,i=!1,s=void 0;try{for(c=Object.entries(o.sources)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(_=d.env)||void 0===_?void 0:_.window)||(o.sources[f]=_object_spread_props(_object_spread({},d),{env:_object_spread_props(_object_spread({},d.env),{window:window})}))}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}}return[4,se(_object_spread_props(_object_spread({},o),{run:null===(r=o.run)||void 0===r||r}))];case 1:v=g.sent(),t={collector:v.collector,elb:v.elb},g.label=2;case 2:return(p=window).dataLayer||(p.dataLayer=[]),p.dataLayer.push(n),[2]}})})()}},[2,{get flow(){return t},trigger:n}]})})()},Ve=function(e,t){var n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},ze=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u;return _ts_generator(this,function(l){return t=e.config,n=e.env,r=n.elb,o=n.window,a=_object_spread({name:"dataLayer",prefix:"dataLayer"},null==t?void 0:t.settings),s=0,c=function(){if(o){var e=a.name||"dataLayer",t=o[e];s=Array.isArray(t)?t.length:0,function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:globalThis.window,r=t.settings,o=(null==r?void 0:r.name)||"dataLayer";n[o]||(n[o]=[]);var a=n[o];if(Array.isArray(a)){var i=a.push.bind(a);a.push=function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];if(qe)return i.apply(void 0,_to_consumable_array(n));qe=!0;try{var a=!0,s=!1,c=void 0;try{for(var u,l=n[Symbol.iterator]();!(a=(u=l.next()).done);a=!0){var f=u.value;x(e,r,f)}}catch(e){s=!0,c=e}finally{try{a||null==l.return||l.return()}finally{if(s)throw c}}}finally{qe=!1}return i.apply(void 0,_to_consumable_array(n))}}}(r,i,o)}},u=function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){return"run"===e&&o&&s>0&&(function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:globalThis.window,o=t.settings,a=r[(null==o?void 0:o.name)||"dataLayer"];if(Array.isArray(a)&&!qe){qe=!0;try{for(var i=null!=n?n:a.length,s=0;s<i;s++)x(e,o,a[s])}finally{qe=!1}}}(r,i,s,o),s=0),[2]})})()},[2,{type:"dataLayer",config:i={settings:a},push:r,on:u,init:c,destroy:function(){return _async_to_generator(function(){var e;return _ts_generator(this,function(t){return e=a.name||"dataLayer",o&&o[e]&&Array.isArray(o[e]),[2]})})()}}]})})()},Je=ze;return We=_e,function(e,t,n,r){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,a=!1,i=void 0;try{for(var s,c=function(){var o=s.value;fe.call(e,o)||o===n||ce(e,o,{get:function(){return t[o]},enumerable:!(r=ue(t,o))||r.enumerable})},u=le(t)[Symbol.iterator]();!(o=(s=u.next()).done);o=!0)c()}catch(e){a=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(a)throw i}}}return e}(ce({},"__esModule",{value:!0}),We)}();
1
+ "use strict";function _array_like_to_array(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function _array_with_holes(e){if(Array.isArray(e))return e}function _array_without_holes(e){if(Array.isArray(e))return _array_like_to_array(e)}function _assert_this_initialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function asyncGeneratorStep(e,t,n,r,o,a,i){try{var s=e[a](i),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,o)}function _async_to_generator(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){asyncGeneratorStep(a,r,o,i,s,"next",e)}function s(e){asyncGeneratorStep(a,r,o,i,s,"throw",e)}i(void 0)})}}function _call_super(e,t,n){return t=_get_prototype_of(t),_possible_constructor_return(e,_is_native_reflect_construct()?Reflect.construct(t,n||[],_get_prototype_of(e).constructor):t.apply(e,n))}function _class_call_check(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _construct(e,t,n){return _construct=_is_native_reflect_construct()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&_set_prototype_of(o,n.prototype),o},_construct.apply(null,arguments)}function _define_property(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _get_prototype_of(e){return _get_prototype_of=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},_get_prototype_of(e)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_set_prototype_of(e,t)}function _instanceof(e,t){return null!=t&&"undefined"!=typeof Symbol&&t[Symbol.hasInstance]?!!t[Symbol.hasInstance](e):e instanceof t}function _is_native_function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}function _iterable_to_array(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterable_to_array_limit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,s=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){s=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(s)throw o}}return a}}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _non_iterable_spread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){_define_property(e,t,n[t])})}return e}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function _object_spread_props(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function _object_without_properties(e,t){if(null==e)return{};var n,r,o,a={};if("undefined"!=typeof Reflect&&Reflect.ownKeys){for(n=Reflect.ownKeys(Object(e)),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=_object_without_properties_loose(e,t),Object.getOwnPropertySymbols)for(n=Object.getOwnPropertySymbols(e),o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}function _object_without_properties_loose(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}function _possible_constructor_return(e,t){return!t||"object"!==_type_of(t)&&"function"!=typeof t?_assert_this_initialized(e):t}function _set_prototype_of(e,t){return _set_prototype_of=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},_set_prototype_of(e,t)}function _sliced_to_array(e,t){return _array_with_holes(e)||_iterable_to_array_limit(e,t)||_unsupported_iterable_to_array(e,t)||_non_iterable_rest()}function _to_consumable_array(e){return _array_without_holes(e)||_iterable_to_array(e)||_unsupported_iterable_to_array(e)||_non_iterable_spread()}function _type_of(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function _unsupported_iterable_to_array(e,t){if(e){if("string"==typeof e)return _array_like_to_array(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_array_like_to_array(e,t):void 0}}function _wrap_native_super(e){var t="function"==typeof Map?new Map:void 0;return _wrap_native_super=function(e){if(null===e||!_is_native_function(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return _construct(e,arguments,_get_prototype_of(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),_set_prototype_of(n,e)},_wrap_native_super(e)}function _is_native_reflect_construct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_is_native_reflect_construct=function(){return!!e})()}function _ts_generator(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),s=Object.defineProperty;return s(i,"next",{value:c(0)}),s(i,"throw",{value:c(1)}),s(i,"return",{value:c(2)}),"function"==typeof Symbol&&s(i,Symbol.iterator,{value:function(){return this}}),i;function c(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(6===s[0]&&a.label<o[1]){a.label=o[1],o=s;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(s);break}o[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function _ts_values(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}var Destination=function(){var e=function(e,t){if("collector"===e)return"collector";if(!t)throw new Error("stepId(".concat(e,") requires an id"));return"".concat(e,".").concat(t)},t=function(e,t){var n=e.destinations[t];if(!n)throw new Error("Destination not found: ".concat(t));return n},n=function(e,t){var n=e.transformers[t];if(!n)throw new Error("Transformer not found: ".concat(t));return n},r=function(e,t){var n=e.sources[t];if(!n)throw new Error("Source not found: ".concat(t));return n},o=function(e,t){var n=e.stores[t];if(!n)throw new Error("Store not found: ".concat(t));return n},a=function(e){return{_meta:{hops:0,path:[e]}}},i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n=_object_spread({},Re,n);var r=Object.entries(t).reduce(function(t,r){var o=_sliced_to_array(r,2),a=o[0],i=o[1],s=e[a];return n.merge&&Array.isArray(s)&&Array.isArray(i)?t[a]=i.reduce(function(e,t){return e.includes(t)?e:_to_consumable_array(e).concat([t])},_to_consumable_array(s)):(n.extend||a in e)&&(t[a]=i),t},{});return n.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},s=function(e){return Array.isArray(e)},c=function(e){return void 0!==e},u=function(e){return"function"==typeof e},l=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!s(e)&&"[object Object]"===Object.prototype.toString.call(e)},f=function(e){return"string"==typeof e},d=function(e,t,n){if(!l(e))return e;for(var r=Ne(e),o=t.split("."),a=r,i=0;i<o.length;i++){var s=o[i];i===o.length-1?a[s]=n:(s in a&&"object"==_type_of(a[s])&&null!==a[s]||(a[s]={}),a=a[s])}return r},_=function(e){var t=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),n={},r=!e||0===Object.keys(e).length;return Object.keys(t).forEach(function(o){t[o]&&(n[o]=!0,e&&e[o]&&(r=!0))}),!!r&&n},p=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,t=arguments.length>1?arguments[1]:void 0;if(t){for(var n=t.length,r="",o=0;o<e;o++)r+=t[Math.random()*n|0];return r}for(var a="";a.length<e;)a+=(36*Math.random()|0).toString(36);return a},v=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},g=function(e,t){var n,r={};return _instanceof(e,Error)?(n=e.message,r.error=v(e)):n=e,void 0!==t&&(_instanceof(t,Error)?r.error=v(t):"object"==(void 0===t?"undefined":_type_of(t))&&null!==t?"error"in(r=_object_spread({},r,t))&&_instanceof(r.error,Error)&&(r.error=v(r.error)):r.value=t),{message:n,context:r}},y=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Ke({level:void 0!==t.level?(e=t.level,"string"==typeof e?Me[e]:e):0,handler:t.handler,jsonHandler:t.jsonHandler,scope:[]})},h=function(e){return Ge(e)?e:void 0},b=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!t)return;return t(e)}finally{null==n||n()}}},m=function(e,t,n){return function(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return _async_to_generator(function(){var r;return _ts_generator(this,function(a){switch(a.label){case 0:return a.trys.push([0,2,4,6]),[4,e.apply(void 0,_to_consumable_array(o))];case 1:case 3:return[2,a.sent()];case 2:return r=a.sent(),t?[4,t(r)]:[2];case 4:return[4,null==n?void 0:n()];case 5:return a.sent(),[7];case 6:return[2]}})})()}},w=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,c,u,f,d,_,p;return _ts_generator(this,function(v){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],i=o[1],t&&a&&i?(u="",d=i,_=function(t){if(t)return(s(t)?t:[t]).find(function(t){if(!t.condition)return!0;if(!n)return Boolean(t.condition(e,void 0));var r={event:e,mapping:t,collector:n,logger:n.logger,consent:l(e)&&e.consent||n.consent};return Boolean(t.condition(e,r))})},t[f=a]||(f="*"),[2,((p=t[f])&&(p[d]||(d="*"),c=_(p[d])),c||(f="*",d="*",c=_(null===(r=t[f])||void 0===r?void 0:r[d])),c&&(u="".concat(f," ").concat(d)),{eventMapping:c,mappingKey:u})]):[2,{}]})})()},j=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,u,f,d,_,p,v,g,y,h,b,w=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:if(t=w.length>1&&void 0!==w[1]?w[1]:{},n=w.length>2&&void 0!==w[2]?w[2]:{},!c(e))return[2];if(a=l(e)&&e.consent||n.consent||(null===(o=n.collector)||void 0===o?void 0:o.consent),i=null!==(r=n.event)&&void 0!==r?r:l(e)?e:{},!n.collector)throw new Error("getMappingValue: context.collector is required");u={event:i,mapping:t,collector:n.collector,logger:n.collector.logger,consent:a},f=s(t)?t:[t],d=!0,_=!1,p=void 0,j.label=1;case 1:j.trys.push([1,6,7,8]),v=f[Symbol.iterator](),j.label=2;case 2:return(d=(g=v.next()).done)?[3,5]:(y=g.value,[4,m(Fe,function(e){if(_instanceof(e,He))throw e;n.collector&&n.collector.status.failed++,u.logger.error("mapping processing failed",{event:i,error:e})})(e,y,_object_spread_props(_object_spread({},u),{mapping:y}))]);case 3:if(h=j.sent(),c(h))return[2,h];j.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return b=j.sent(),_=!0,p=b,[3,8];case 7:try{d||null==v.return||v.return()}finally{if(_)throw p}return[7];case 8:return[2]}})}).apply(this,arguments)},k=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,u,f,_,p,v,g;return _ts_generator(this,function(y){switch(y.label){case 0:return t.policy?[4,Promise.all(Object.entries(t.policy).map(function(t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,j(e,a,{collector:n,event:e})];case 1:return t=r.sent(),e=d(e,o,t),[2]}})})()}))]:[3,2];case 1:y.sent(),y.label=2;case 2:return[4,w(e,t.mapping,n)];case 3:return o=y.sent(),a=o.eventMapping,s=o.mappingKey,(null==a?void 0:a.policy)?[4,Promise.all(Object.entries(a.policy).map(function(t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,j(e,a,{collector:n,event:e})];case 1:return t=r.sent(),e=d(e,o,t),[2]}})})()}))]:[3,5];case 4:y.sent(),y.label=5;case 5:return(u=t.data)?[4,j(e,t.data,{collector:n,event:e})]:[3,7];case 6:u=y.sent(),y.label=7;case 7:return c=u,f=Boolean(null==a?void 0:a.silent),a?a.ignore?[2,{event:e,data:c,mapping:a,mappingKey:s,ignore:!0,silent:f}]:(a.name&&(e.name=a.name),a.data?(p=a.data)?[4,j(e,a.data,{collector:n,event:e})]:[3,9]:[3,10]):[3,10];case 8:p=y.sent(),y.label=9;case 9:_=p,c=l(c)&&l(_)?i(c,_):_,y.label=10;case 10:return(v=null!==(r=null==a?void 0:a.include)&&void 0!==r?r:t.include)&&v.length>0&&(g=function(e,t){var n={},r=t.includes("all")?Object.keys(ze):t,o=!0,a=!1,i=void 0;try{for(var s,c=r[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=s.value,f=ze[u];if(f){var d=f(e),_=!0,p=!1,v=void 0;if(l(d))try{for(var g,y=Object.entries(d)[Symbol.iterator]();!(_=(g=y.next()).done);_=!0){var h=_sliced_to_array(g.value,2),b=h[0],m=h[1];if(void 0!==m){var w="context"===u&&Array.isArray(m)?m[0]:m;n["".concat(u,"_").concat(b)]=w}}}catch(e){p=!0,v=e}finally{try{_||null==y.return||y.return()}finally{if(p)throw v}}}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return n}(e,v),Object.keys(g).length>0&&(c=l(c)?i(g,c):null!=c?c:g)),[2,{event:e,data:c,mapping:a,mappingKey:s,ignore:!1,silent:f}]}})})()},O=function(e,t,n,r){return function(){for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];var s,c="pre"+t,u="post"+t,l=n[c],f=n[u],d=function(e,t){r?r.warn(e,{error:t}):console.warn(e,t)};if(l)try{s=l.apply(void 0,[{fn:e}].concat(_to_consumable_array(a)))}catch(t){d("Hook ".concat(String(c)," failed, falling back to original function"),t),s=e.apply(void 0,_to_consumable_array(a))}else s=e.apply(void 0,_to_consumable_array(a));if(f)try{s=f.apply(void 0,[{fn:e,result:s}].concat(_to_consumable_array(a)))}catch(e){d("Hook ".concat(String(u)," failed, keeping original result"),e)}return s}},S=function(e){return e.map(function(e){var t,n;if("string"==typeof e)return{match:function(){return!0},next:{type:"static",value:e}};if(Array.isArray(e))return{match:function(){return!0},next:null!==(t=Ve(e))&&void 0!==t?t:{type:"chain",value:[]}};var r=e;return{match:r.match?We(r.match):function(){return!0},next:null!==(n=Ve(r))&&void 0!==n?n:{type:"chain",value:[]}}})},x=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null==e)return[];if("object"==(void 0===e?"undefined":_type_of(e))){var r=$e.get(e);r?t=r:(t=Ve(e))&&$e.set(e,t)}else t=Ve(e);if(!t)return[];var o=Je(t,n);return void 0===o?[]:Array.isArray(o)?o:[o]},A=function(e,t){var n={ingest:null!=e?e:{}};return void 0!==t&&(n.event=t),n},C=function(e){var t;return{stop:null!==(t=e.stop)&&void 0!==t&&t,storeId:e.store,namespace:e.namespace,rules:e.rules.map(function(e){return{match:e.match?We(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},q=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return(o=e.rules.find(function(e){return e.match(n)}))?(a=o.key.map(function(e){var t;return String(null!==(t=Ue(n,e))&&void 0!==t?t:"")})).every(function(e){return""===e})?[2,null]:(i=a.join(":"),s=null!=r?r:e.namespace,c=s?"".concat(s,":").concat(i):i,[4,t.get(c)]):[2,null];case 1:return[2,void 0!==(u=l.sent())?{status:"HIT",key:c,value:u,rule:o}:{status:"MISS",key:c,rule:o}]}})})()},E=function(e,t,n,r){e.set(t,n,1e3*r)},P=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,_,p,v;return _ts_generator(this,function(g){switch(g.label){case 0:if(!t)return[2,e];o=e,a=!0,i=!1,s=void 0,g.label=1;case 1:g.trys.push([1,6,7,8]),c=Object.entries(t)[Symbol.iterator](),g.label=2;case 2:return(a=(u=c.next()).done)?[3,5]:(l=_sliced_to_array(u.value,2),f=l[0],_=l[1],p=[o,f],[4,j(n,_,{collector:r})]);case 3:o=d.apply(void 0,p.concat([g.sent()])),g.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return v=g.sent(),i=!0,s=v,[3,8];case 7:try{a||null==c.return||c.return()}finally{if(i)throw s}return[7];case 8:return[2,o]}})})()},I=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;if(t.filter&&!0===b(function(){return t.filter(n)},function(){return!1})())return;var r=D(n);if(r){var o=t.prefix||"dataLayer",a="".concat(o," ").concat(r.name),i=(r.name,{name:a,data:_object_without_properties(r,["name"])});b(function(){return e(i)},function(){})()}},D=function(e){if(l(e)&&f(e.event))return _object_spread({name:e.event},_object_without_properties(e,["event"]));if(s(e)&&e.length>=2)return T(e);if(L(e)){var t=Array.from(e);return T(t)}return null},T=function(e){var t,n=_sliced_to_array(e,3),r=n[0],o=n[1],a=n[2];if(!f(r))return null;var i={};switch(r){case"consent":if(!f(o)||e.length<3)return null;if("default"!==o&&"update"!==o)return null;if(!l(a)||null===a)return null;t="".concat(r," ").concat(o),i=_object_spread({},a);break;case"event":if(!f(o))return null;t=o,l(a)&&(i=_object_spread({},a));break;case"config":if(!f(o))return null;t="".concat(r," ").concat(o),l(a)&&(i=_object_spread({},a));break;case"set":if(f(o))t="".concat(r," ").concat(o),l(a)&&(i=_object_spread({},a));else{if(!l(o))return null;t="".concat(r," custom"),i=_object_spread({},o)}break;default:return null}return _object_spread({name:t},i)},L=function(e){return null!=e&&"object"===(void 0===e?"undefined":_type_of(e))&&"length"in e&&"number"==typeof e.length&&e.length>0},M=function(e,t){return e.storeId&&t.stores[e.storeId]?t.stores[e.storeId]:t.stores.__cache},R=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s,c=_sliced_to_array(a.value,2),u=c[0],l=null===(s=c[1].config)||void 0===s?void 0:s.next;"string"==typeof l||Array.isArray(l)&&l.every(function(e){return"string"==typeof e})?t[u]={next:l}:t[u]={}}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}return t},N=function(e,t){var n=e.config||{},r=e[t];return void 0!==r?{config:_object_spread_props(_object_spread({},n),_define_property({},t,r)),chainValue:r}:{config:n,chainValue:void 0}},U=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return[];if(Array.isArray(e))return e;for(var n=[],r=new Set,o=e;o&&t[o]&&!r.has(o);){r.add(o),n.push(o);var a=t[o].next;if(Array.isArray(a)){var i;(i=n).push.apply(i,_to_consumable_array(a));break}o=a}return n},z=function(e,t,n){return _async_to_generator(function(){var r,o,i,s;return _ts_generator(this,function(c){switch(c.label){case 0:return!t.init||t.config.init?[3,2]:(r=t.type||"unknown",o=e.logger.scope("transformer:".concat(r)),i={collector:e,logger:o,id:n,ingest:a(n),config:t.config,env:G(t.config.env)},o.debug("init"),[4,O(t.init,"TransformerInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=c.sent()))return[2,!1];t.config=_object_spread_props(_object_spread({},s||t.config),{env:(null==s?void 0:s.env)||t.config.env,init:!0}),o.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},B=function(e,t,n,r,o,a){return _async_to_generator(function(){var i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return i=t.type||"unknown",s=e.logger.scope("transformer:".concat(i)),c={collector:e,logger:s,id:n,ingest:o,config:t.config,env:_object_spread({},G(t.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,O(t.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},K=function(e,t){return e?_object_spread_props(_object_spread({},e),{_meta:_object_spread_props(_object_spread({},e._meta),{path:_to_consumable_array(e._meta.path)})}):a(t)},G=function(e){return e&&l(e)?e:{}},H=function(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(function(e){return"string"==typeof e}))},F=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,_;return _ts_generator(this,function(p){switch(p.label){case 0:if(!t.on||!(null===(r=t.queueOn)||void 0===r?void 0:r.length))return[2];a=t.queueOn,t.queueOn=[],i=n||(null===(o=t.config)||void 0===o?void 0:o.id)||"unknown",s=!0,c=!1,u=void 0,p.label=1;case 1:p.trys.push([1,6,7,8]),l=function(){var n,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return n=d.value,r=n.type,o=n.data,[4,m(t.on,function(t){if(_instanceof(t,He))throw t;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:r,error:t})})(r,o)];case 1:return a.sent(),[2]}})},f=a[Symbol.iterator](),p.label=2;case 2:return(s=(d=f.next()).done)?[3,5]:[5,_ts_values(l())];case 3:p.sent(),p.label=4;case 4:return s=!0,[3,2];case 5:return[3,8];case 6:return _=p.sent(),c=!0,u=_,[3,8];case 7:try{s||null==f.return||f.return()}finally{if(c)throw u}return[7];case 8:return[2]}})})()},W=function(e){var t;return Boolean(e.config.init)&&!(null===(t=e.config.require)||void 0===t?void 0:t.length)},V=function(e,t,n){return _async_to_generator(function(){var r,o,i,s,c,u,l,f,d,_,p,v,g,y,h,b,w,k,O,S,I,D,T,L,N;return _ts_generator(this,function(z){switch(z.label){case 0:return o=n.code,i=n.config,s=void 0===i?{}:i,c=n.env,u=void 0===c?{}:c,l=n.primary,f=n.next,d=n.before,_=n.cache,v=(p=_)?C(_object_spread_props(_object_spread({},p),{stop:null===(r=p.stop)||void 0===r||r})):void 0,g=H(f)?U(f,R(e.transformers)):void 0,y=H(d)?U(d,R(e.transformers)):void 0,h=u.push,b=null!=h?h:e.push,w=Boolean(h),k=function(n,r,o){return _async_to_generator(function(){var a,i,c,u,l,_,p,h,j,k,O,S,C,I,D,T,L,N,z,B,G,H,F,W;return _ts_generator(this,function(V){switch(V.label){case 0:return i=null!=y?y:void 0!==d?function(){var t=x(d,A(o.ingest));return 0===t.length?[]:U(1===t.length?t[0]:t,R(e.transformers))}():[],c=[n],i.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,pt(e,e.transformers,i,n,o.ingest,o.respond,"source.".concat(t,".before"))]:[3,2];case 1:if(null===(u=V.sent()).event)return[2,{ok:!0}];if(u.stopped)return[2,(u.respond&&(o.respond=u.respond),{ok:!0})];u.respond&&(o.respond=u.respond),c=Array.isArray(u.event)?u.event:[u.event],V.label=2;case 2:return v&&(l=M(v,e))?(_=A(o.ingest),[4,q(v,l,_)]):[3,7];case 3:return(p=V.sent())?"HIT"===p.status&&void 0!==p.value&&v.stop?(j=p.value,p.rule.update?[4,P(j,p.rule.update,_object_spread_props(_object_spread({},_),{cache:{status:"HIT"}}),e)]:[3,5]):[3,6]:[3,7];case 4:j=V.sent(),V.label=5;case 5:return[2,(null===(h=o.respond)||void 0===h||h.call(o,j),{ok:!0})];case 6:"MISS"===p.status&&v.stop&&o.respond&&(k=o.respond,O=p.rule.update,S=_object_spread_props(_object_spread({},_),{cache:{status:"MISS"}}),C=p.key,I=p.rule.ttl,D=function(t){E(l,C,t,I),O?a=_async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,P(t,O,S,e)];case 1:return n=r.sent(),k(n),[2]}})})():k(t)},o.respond=D),"MISS"!==p.status||v.stop||E(l,p.key,!0,p.rule.ttl),V.label=7;case 7:T=g?{kind:"single",preChain:g}:void 0!==f?function(){var t=x(f,A(o.ingest));return 0===t.length?{kind:"single",preChain:[]}:1===t.length?{kind:"single",preChain:U(t[0],R(e.transformers))}:{kind:"many",branches:t.map(function(t){return U(t,R(e.transformers))})}}():{kind:"single",preChain:[]},L={ok:!0},N=!0,z=!1,B=void 0,V.label=8;case 8:V.trys.push([8,13,14,15]),G=function(){var n,a;return _ts_generator(this,function(i){switch(i.label){case 0:return n=F.value,"many"!==T.kind?[3,2]:[4,Promise.all(T.branches.map(function(a,i){return m(function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return[2,w?b(n):b(n,_object_spread_props(_object_spread({},r),{id:t,ingest:K(o.ingest,"".concat(t,".").concat(i)),respond:void 0,mapping:s,preChain:a}))]})})()},function(t){return e.logger.scope("source:many").error("many branch ".concat(i," failed"),{error:t}),{ok:!0}})()}))];case 1:return i.sent(),L={ok:!0},[3,7];case 2:return w?[4,b(n)]:[3,4];case 3:return a=i.sent(),[3,6];case 4:return[4,b(n,_object_spread_props(_object_spread({},r),{id:t,ingest:o.ingest,respond:o.respond,mapping:s,preChain:T.preChain}))];case 5:a=i.sent(),i.label=6;case 6:L=a,i.label=7;case 7:return[2]}})},H=c[Symbol.iterator](),V.label=9;case 9:return(N=(F=H.next()).done)?[3,12]:[5,_ts_values(G())];case 10:V.sent(),V.label=11;case 11:return N=!0,[3,9];case 12:return[3,15];case 13:return W=V.sent(),z=!0,B=W,[3,15];case 14:try{N||null==H.return||H.return()}finally{if(z)throw B}return[7];case 15:return a?[4,a]:[3,17];case 16:V.sent(),V.label=17;case 17:return[2,L]}})})()},O=function(n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(i){switch(i.label){case 0:return r=a(t),s.ingest&&void 0!==n?[4,j(n,s.ingest,{collector:e})]:[2,r];case 1:return o=i.sent(),[2,_object_spread_props(_object_spread({},r,o),{_meta:r._meta})]}})})()},S=e.logger.scope("source").scope(t),I=_object_spread_props(_object_spread({command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:S},u),{push:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){var r;return _ts_generator(this,function(o){return r={ingest:a(t),respond:void 0},[2,k(e,n,r)]})})()}}),D={collector:e,logger:S,id:t,config:s,env:I,withScope:function(e,t,n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return o={},[4,O(e)];case 1:return o.ingest=a.sent(),o.respond=t,r=o,[2,n(_object_spread_props(_object_spread({},I),{push:function(e){return k(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r)},ingest:r.ingest,respond:r.respond}))]}})})()}},[4,m(o,function(n){if(_instanceof(n,He))throw n;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:t,error:n})})(D)];case 1:return(T=z.sent())?(L=T.type||"unknown",N=e.logger.scope(L).scope(t),[2,(I.logger=N,l&&(T.config=_object_spread_props(_object_spread({},T.config),{primary:l})),T)]):[2]}})})()},$=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,_,p,v,g,y,h,b,w,j=arguments;return _ts_generator(this,function(k){switch(k.label){case 0:t=j.length>1&&void 0!==j[1]?j[1]:{},n={},r=!0,o=!1,a=void 0,k.label=1;case 1:k.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),k.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],[4,V(e,u,l)]);case 3:if(!(d=k.sent()))return[3,4];_=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),_?{require:_to_consumable_array(_)}:{}),n[u]=d,k.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return w=k.sent(),o=!0,a=w,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:Object.assign(e.sources,n),p=!0,v=!1,g=void 0,k.label=9;case 9:k.trys.push([9,14,15,16]),y=function(){var t,n,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return t=b.value,n=e.sources[t],r=!1,n.init?[4,m(n.init.bind(n),function(n){if(_instanceof(n,He))throw n;r=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:t,error:n})})()]:[3,2];case 1:a.sent(),a.label=2;case 2:return r?[3,5]:(n.config.init=!0,(o=W(n))?[4,F(e,n,t)]:[3,4]);case 3:o=a.sent(),a.label=4;case 4:a.label=5;case 5:return[2]}})},h=Object.keys(n)[Symbol.iterator](),k.label=10;case 10:return(p=(b=h.next()).done)?[3,13]:[5,_ts_values(y())];case 11:k.sent(),k.label=12;case 12:return p=!0,[3,10];case 13:return[3,16];case 14:return w=k.sent(),v=!0,g=w,[3,16];case 15:try{p||null==h.return||h.return()}finally{if(v)throw g}return[7];case 16:return[2,n]}})}).apply(this,arguments)},J=function(e,t,n,r){if(_instanceof(n,He))throw n;e.logger.scope("on").error("on callback failed",_object_spread_props(_object_spread({kind:t},r),{error:n}))},Y=function(e,t){return{collector:e,logger:e.logger.scope("on").scope(String(t))}},Z=function(e,t,n){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){return r=e.on,o=r[t]||[],(a=s(n)?n:[n]).forEach(function(e){o.push(e)}),r[t]=o,X(e,t,a),[2]})})()},Q=function(e,t,n,r,o){if(t.on){var a=t.type||"unknown",i=e.logger.scope(a).scope("on").scope(r),s={collector:e,logger:i,id:n,config:t.config,data:o,env:ge(t.env,t.config.env)};b(t.on,function(t){return J(e,"destination",t,{destId:n,type:r})})(r,s)}},X=function(e,t,n,r){var o,a,i,s,c;switch(t){case _t.Commands.Consent:o=r||e.consent;break;case _t.Commands.Session:o=e.session;break;case _t.Commands.User:o=r||e.user;break;case _t.Commands.Custom:o=r||e.custom;break;case _t.Commands.Globals:o=r||e.globals;break;case _t.Commands.Config:o=r||e.config;break;case _t.Commands.Ready:case _t.Commands.Run:default:o=void 0}if(n.length)switch(t){case _t.Commands.Consent:a=e,i=n,s=r||a.consent,c=Y(a,_t.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(t){return t in e}).forEach(function(t){b(e[t],function(e){return J(a,"consent",e,{key:t})})(s,c)})});break;case _t.Commands.Ready:!function(e,t){if(e.allowed){var n=Y(e,_t.Commands.Ready);t.forEach(function(t){b(t,function(t){return J(e,"ready",t)})(void 0,n)})}}(e,n);break;case _t.Commands.Run:!function(e,t){if(e.allowed){var n=Y(e,_t.Commands.Run);t.forEach(function(t){b(t,function(t){return J(e,"run",t)})(void 0,n)})}}(e,n);break;case _t.Commands.Session:!function(e,t){if(e.session){var n=Y(e,_t.Commands.Session);t.forEach(function(t){b(t,function(t){return J(e,"session",t)})(e.session,n)})}}(e,n);break;default:var u=Y(e,t);n.forEach(function(n){"function"==typeof n&&b(n,function(n){return J(e,"generic",n,{type:t})})(o,u)})}},ee=function(e,t,n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,_,p,v,g,y,h,b,w,j,k;return _ts_generator(this,function(O){switch(O.label){case 0:switch(i=n||[],n||(i=e.on[t]||[]),t){case _t.Commands.Consent:a=r||e.consent;break;case _t.Commands.Session:a=e.session;break;case _t.Commands.User:a=r||e.user;break;case _t.Commands.Custom:a=r||e.custom;break;case _t.Commands.Globals:a=r||e.globals;break;case _t.Commands.Config:a=r||e.config;break;case _t.Commands.Ready:case _t.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),f=function(){var n,r,o,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return n=_sliced_to_array(_.value,2),r=n[0],o=n[1],(null===(i=o.config.require)||void 0===i?void 0:i.length)&&-1!==(c=o.config.require.indexOf(t))&&o.config.require.splice(c,1),o.on?W(o)?(u=!1,[4,m(o.on,function(n){return J(e,"source",n,{sourceId:r,type:t})})(t,a)]):[3,2]:[3,3];case 1:return u===l.sent()&&(s=!0),[3,3];case 2:o.queueOn=o.queueOn||[],o.queueOn.push({type:t,data:a}),l.label=3;case 3:return[2]}})},d=Object.entries(e.sources)[Symbol.iterator](),O.label=2;case 2:return(c=(_=d.next()).done)?[3,5]:[5,_ts_values(f())];case 3:O.sent(),O.label=4;case 4:return c=!0,[3,2];case 5:return[3,8];case 6:return k=O.sent(),u=!0,l=k,[3,8];case 7:try{c||null==d.return||d.return()}finally{if(u)throw l}return[7];case 8:Object.entries(e.destinations).forEach(function(n){var r=_sliced_to_array(n,2),o=r[0],i=r[1];if(i.on){if(!i.config.init)return i.queueOn=i.queueOn||[],void i.queueOn.push({type:t,data:a});Q(e,i,o,t,a)}}),p=!0,v=!1,g=void 0,O.label=9;case 9:O.trys.push([9,15,16,17]),y=Object.entries(e.sources)[Symbol.iterator](),O.label=10;case 10:return(p=(h=y.next()).done)?[3,14]:(b=_sliced_to_array(h.value,2),w=b[0],j=b[1],W(j)&&(null===(o=j.queueOn)||void 0===o?void 0:o.length)?[4,F(e,j,w)]:[3,12]);case 11:O.sent(),O.label=12;case 12:O.label=13;case 13:return p=!0,[3,10];case 14:return[3,17];case 15:return k=O.sent(),v=!0,g=k,[3,17];case 16:try{p||null==y.return||y.return()}finally{if(v)throw g}return[7];case 17:return Object.keys(e.pending.destinations).length>0?[4,function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,u,l,f,d,_;return _ts_generator(this,function(p){n=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(n=(i=a.next()).done);n=!0)s=_sliced_to_array(i.value,2),c=s[0],u=s[1],e.pending.destinations[c]&&!e.destinations[c]&&(f=null===(l=u.config)||void 0===l?void 0:l.require)&&-1!==(d=f.indexOf(t))&&(f.splice(d,1),f.length>0||(delete e.pending.destinations[c],!1!==(_=pe(u)).config.queue&&(_.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=_))}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,t)]:[3,19];case 18:O.sent(),O.label=19;case 19:return[2,(X(e,t,i,r),!s)]}})})()},te=function(e,t,n,r){var o;if(!Number.isFinite(n.max)||n.max<=0)throw new Error("pushBounded: max must be > 0 (got ".concat(n.max,")"));if("dropNewest"===(null!==(o=n.onOverflow)&&void 0!==o?o:"dropOldest"))return e.length>=n.max?(r&&r([t]),{appended:!1,dropped:1}):(e.push(t),{appended:!0,dropped:0});for(var a=[];e.length>=n.max;)a.push(e.shift());return e.push(t),a.length>0&&r&&r(a),{appended:!0,dropped:a.length}},ne=function(e,t,n,r){gt.get(e)||(gt.set(e,!0),t.warn(n,r))},re=function(e){gt.delete(e)},oe=function(e){return e===yt},ae=function(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}},ie=function(e,t){return e.status.destinations[t]||(e.status.destinations[t]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[t]},se=function(e,t,n,r){var o;e.dropped[t]||(e.dropped[t]={});var a=e.dropped[t];return a[n]=(null!==(o=a[n])&&void 0!==o?o:0)+r,a[n]},ce=function(e,t,n){if(!e)return[];if(Array.isArray(e)&&e.every(function(e){return"string"==typeof e}))return U(e,t);if("string"==typeof e)return U(e,t);var r=x(e,A(n));return 0===r.length?[]:1===r.length?U(r[0],t):U(r,t)},ue=function(e,t){return _async_to_generator(function(){var n,r,o,a,i,s,c,l,f,d,_,v;return _ts_generator(this,function(g){if(n=t.code,r=t.config,o=void 0===r?{}:r,a=t.env,i=void 0===a?{}:a,s=t.before,c=t.next,l=t.cache,!u(n.push))return[2,_e({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(f=o||{init:!1},d=s?_object_spread_props(_object_spread({},f),{before:s}):_object_spread({},f),c&&(d=_object_spread_props(_object_spread({},d),{next:c})),l&&(d=_object_spread_props(_object_spread({},d),{cache:l})),_=_object_spread_props(_object_spread({},n),{config:d,env:ge(n.env,i)}),!(v=_.config.id))do{v=p(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[v]);return[2,(e.destinations[v]=_,!1!==_.config.queue&&(_.queuePush=_to_consumable_array(e.queue)),le(e,void 0,{},_define_property({},v,_)))]})})()},le=function(t,n,r){return _async_to_generator(function(t,n){var r,o,s,c,u,l,f,d,p,v,g,y,h,b,w,j,k,O,S,x,P,I,D,T,L,N,U,z,B,K,G,H,F=arguments;return _ts_generator(this,function(W){switch(W.label){case 0:if(r=F.length>2&&void 0!==F[2]?F[2]:{},o=F.length>3?F[3]:void 0,s=t.allowed,c=t.consent,u=t.globals,l=t.user,!s)return[2,_e({ok:!1})];if(n){if(void 0===(f=t.config.queueMax))throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");(d=te(t.queue,n,{max:f})).dropped>0?(p=se(t.status,e("collector"),"queue",d.dropped),ne(t.queue,t.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:f,droppedCount:p})):t.queue.length<f&&re(t.queue),t.status.in++}return o||(o=t.destinations),v=t.transformers?R(t.transformers):{},[4,Promise.all(Object.entries(o||{}).map(function(o){var s=_sliced_to_array(o,2),f=s[0],d=s[1];return _async_to_generator(function(){var o,s,p,g,y,h,b,w,j,k,O,S,x,P,I,D,T,L,R,N,U,z,B,K,G,H,F,W,V,$,J,Y,Z,Q;return _ts_generator(this,function(X){switch(X.label){case 0:if(d.config.disabled)return[2,{id:f,destination:d,skipped:!0}];if(g=(d.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:c})}),d.queuePush=[],n&&g.push(Ne(n)),y=r.ingest?_object_spread_props(_object_spread({},r.ingest),{_meta:_object_spread_props(_object_spread({},r.ingest._meta),{path:_to_consumable_array(r.ingest._meta.path)})}):a("unknown"),!g.length&&!(null===(o=d.queueOn)||void 0===o?void 0:o.length))return[2,{id:f,destination:d,skipped:!0}];if(g.length||!(null===(s=d.queueOn)||void 0===s?void 0:s.length))return[3,5];h=!1,X.label=1;case 1:return X.trys.push([1,3,,4]),[4,fe(t,d,f)];case 2:return h=X.sent(),[3,4];case 3:return b=X.sent(),t.status.failed++,w=d.type||"unknown",t.logger.scope(w).error("destination init failed",{error:_instanceof(b,Error)?b.message:String(b)}),[3,4];case 4:return[2,{id:f,destination:d,skipped:!h}];case 5:if(j=[],k=g.filter(function(e){var t=_(d.config.consent,c,e.consent);return!t||(e.consent=t,j.push(e),!1)}),k.length>0){S=d.queuePush,x=d.config.id||f,P={max:null!==(O=d.config.queueMax)&&void 0!==O?O:1e3},I=0,D=!0,T=!1,L=void 0;try{for(R=k[Symbol.iterator]();!(D=(N=R.next()).done);D=!0)U=N.value,I+=te(S,U,P).dropped}catch(e){T=!0,L=e}finally{try{D||null==R.return||R.return()}finally{if(T)throw L}}I>0?(ie(t,x),z=se(t.status,e("destination",x),"queue",I),ne(S,t.logger.scope(d.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:x,cap:P.max,droppedCount:z})):S.length<P.max&&re(S)}if(!j.length)return[2,{id:f,destination:d,queue:g}];G=!1,X.label=6;case 6:return X.trys.push([6,8,,9]),[4,fe(t,d,f)];case 7:return G=X.sent(),[3,9];case 8:return H=X.sent(),t.status.failed++,F=d.type||"unknown",t.logger.scope(F).error("destination init failed",{error:_instanceof(H,Error)?H.message:String(H)}),[3,9];case 9:return G?(d.dlq||(d.dlq=[]),W=ce(d.config.before,v,y),V=d.config.next,$=null===(p=d.config)||void 0===p?void 0:p.cache,J=$?C($):void 0,Y=J?M(J,t):void 0,Z=0,Q=0,[4,Promise.all(j.map(function(n){return _async_to_generator(function(){var o,a,s,c,_,p,g,h,b,w,j,k,O;return _ts_generator(this,function(S){switch(S.label){case 0:return n.globals=i(u,n.globals),n.user=i(l,n.user),(null==J?void 0:J.stop)&&Y?(a=A(y,n),[4,q(J,Y,a)]):[3,2];case 1:if("HIT"===(null==(s=S.sent())?void 0:s.status))return[2,n];"MISS"===(null==s?void 0:s.status)&&(o={key:s.key,ttl:s.rule.ttl}),S.label=2;case 2:return c=n,_=r.respond,W.length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,pt(t,t.transformers,W,n,y,r.respond,"destination.".concat(f,".before"))]:[3,4];case 3:if(null===(p=S.sent()).event)return[2,n];p.respond&&(_=p.respond),c=Array.isArray(p.event)?p.event[0]:p.event,S.label=4;case 4:return J&&!J.stop&&Y?(g=A(y,c),[4,q(J,Y,g)]):[3,6];case 5:if("HIT"===(null==(h=S.sent())?void 0:h.status))return[2,n];"MISS"===(null==h?void 0:h.status)&&(o={key:h.key,ttl:h.rule.ttl}),S.label=6;case 6:return b=Date.now(),w=!1,[4,m(de,function(n){var r,o=d.type||"unknown";t.logger.scope(o).error("Push failed",{error:n,event:c.name}),B=n,w=!0;var a=d.dlq,i=d.config.id||f,s={max:null!==(r=d.config.dlqMax)&&void 0!==r?r:100},u=te(a,[c,n],s);if(u.dropped>0){ie(t,i);var l=se(t.status,e("destination",i),"dlq",u.dropped);ne(a,t.logger.scope(d.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:i,cap:s.max,droppedCount:l})}else a.length<s.max&&re(a)})(t,d,f,c,y,_)];case 7:return j=S.sent(),Z+=Date.now()-b,o&&Y&&void 0===d.config.mock&&E(Y,o.key,null==j||j,o.ttl),void 0===j||oe(j)||(K=j),oe(j)&&Q++,w||!V?[3,9]:(void 0!==j&&(y._response=j),(k=ce(V,v,y)).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,pt(t,t.transformers,k,c,y,_,"destination.".concat(f,".next"))]:[3,9]);case 8:(O=S.sent()).respond&&(_=O.respond),S.label=9;case 9:return[2,n]}})})()}))]):[2,{id:f,destination:d,queue:g}];case 10:return[2,(X.sent(),{id:f,destination:d,error:B,response:K,totalDuration:Z,batchedCount:Q,allowedCount:j.length})]}})})()}))];case 1:g=W.sent(),y={},h={},b={},w=!0,j=!1,k=void 0;try{for(O=g[Symbol.iterator]();!(w=(S=O.next()).done);w=!0)(x=S.value).skipped||(L=x.destination,N={type:L.type||"unknown",data:x.response},ie(t,x.id),U=t.status.destinations[x.id],z=Date.now(),U.queuePushSize=null!==(P=null===(D=L.queuePush)||void 0===D?void 0:D.length)&&void 0!==P?P:0,U.dlqSize=null!==(I=null===(T=L.dlq)||void 0===T?void 0:T.length)&&void 0!==I?I:0,x.error?(N.error=x.error,b[x.id]=N,U.failed++,U.lastAt=z,U.duration+=x.totalDuration||0,t.status.failed++):x.queue&&x.queue.length?h[x.id]=N:(G=null!==(B=x.batchedCount)&&void 0!==B?B:0,H=null!==(K=x.allowedCount)&&void 0!==K?K:0,(Math.max(0,H-G)>0||0===H)&&(y[x.id]=N,U.count++,U.lastAt=z,U.duration+=x.totalDuration||0,t.status.out++)))}catch(e){j=!0,k=e}finally{try{w||null==O.return||O.return()}finally{if(j)throw k}}return[2,_e(_object_spread({event:n},Object.keys(y).length&&{done:y},Object.keys(h).length&&{queued:h},Object.keys(b).length&&{failed:b}))]}})}).apply(this,arguments)},fe=function(e,t,n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,_,p,v,g;return _ts_generator(this,function(y){switch(y.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=e.logger.scope(o),i={collector:e,logger:a,id:n,config:t.config,env:ge(t.env,t.config.env)},a.debug("init"),[4,O(t.init,"DestinationInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=y.sent()))return[2,s];if(t.config=_object_spread_props(_object_spread({},s||t.config),{init:!0}),null===(r=t.queueOn)||void 0===r?void 0:r.length){c=t.queueOn,t.queueOn=[],u=!0,l=!1,f=void 0;try{for(d=c[Symbol.iterator]();!(u=(_=d.next()).done);u=!0)p=_.value,v=p.type,g=p.data,Q(e,t,n,v,g)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),y.label=2;case 2:return[2,!0]}})})()},de=function(t,n,r,o,a,i){return _async_to_generator(function(){var s,u,l,f,d,_,p,v,g,y,h,b,w,j,S,x,A,C,q,E,P,I,D,T,L,M;return _ts_generator(this,function(R){switch(R.label){case 0:return s=n.config,[4,k(o,s,t)];case 1:return(u=R.sent()).ignore?[2,!1]:(l=n.type||"unknown",f=t.logger.scope(l),d={collector:t,logger:f,id:r,config:s,data:u.data,rule:u.mapping,ingest:a,env:_object_spread({},ge(n.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(f.debug("mock",{event:u.event.name}),s.mock)]:(_=u.mapping,p=u.mappingKey||"* *",(null==_?void 0:_.batch)&&n.pushBatch&&void 0===s.mock?(n.batches=n.batches||{},n.batches[p]||(S={key:p,entries:[],events:[],data:[]},x=ae(_.batch),A=ae(s.batch),C=null!==(g=null!==(y=x.wait)&&void 0!==y?y:A.wait)&&void 0!==g?g:3e4,q=null!==(h=null!==(b=x.size)&&void 0!==b?b:A.size)&&void 0!==h?h:1e3,E=null!==(w=null!==(j=x.age)&&void 0!==j?j:A.age)&&void 0!==w?w:3e4,P=ge(n.env,s.env),I=function(e){var t,n,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=function(e,t){var n;return"number"==typeof e?{wait:e}:e?{wait:null!==(n=e.wait)&&void 0!==n?n:t,size:e.size,age:e.age}:{wait:t}}(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,1e3),a=o.wait,i=o.size,s=o.age,c=null,u=null,l=!1,f=[],d=0,_=function(){c&&(clearTimeout(c),c=null),u&&(clearTimeout(u),u=null),d=0,n=void 0},p=function(){var r=n,o=f;if(_(),f=[],r)return t=e.apply(void 0,_to_consumable_array(r)),o.forEach(function(e){return e(t)}),t;o.forEach(function(e){return e(void 0)})},v=function(){for(var o=arguments.length,_=new Array(o),v=0;v<o;v++)_[v]=arguments[v];return new Promise(function(o){var v=r&&!l;if(n=_,d+=1,f.push(o),c&&clearTimeout(c),c=setTimeout(function(){c=null,r&&!l||p()},a),void 0===s||u||(u=setTimeout(function(){u=null,p()},s)),void 0!==i&&d>=i)p();else if(v){l=!0,t=e.apply(void 0,_to_consumable_array(_));var g=f;f=[],g.forEach(function(e){return e(t)})}})};return v.flush=function(){return n||0!==f.length?new Promise(function(e){f.push(e),p()}):Promise.resolve(void 0)},v.cancel=function(){var e=f;f=[],_(),e.forEach(function(e){return e(void 0)})},v.size=function(){return d},v}(function(){return _async_to_generator(function(){var o,a,i,c,u,l,d,_;return _ts_generator(this,function(v){switch(v.label){case 0:return 0===(a=n.batches[p].batched).entries.length?[2]:(i={key:a.key,entries:a.entries,events:a.events,data:a.data},a.entries=[],a.events=[],a.data=[],c=i.entries[0],u={collector:t,logger:f,id:r,config:s,data:void 0,rule:c.rule,ingest:c.ingest,env:_object_spread({},P,c.respond?{respond:c.respond}:{})},f.debug("push batch",{events:i.entries.length}),l=n.config.id||r,d=ie(t,l),_=!0,[4,m(O(n.pushBatch,"DestinationPushBatch",t.hooks,t.logger),function(r){var o;_=!1;var a=n.dlq=n.dlq||[],s={max:null!==(o=n.config.dlqMax)&&void 0!==o?o:100},c=0,u=!0,p=!1,v=void 0;try{for(var g,y=i.entries[Symbol.iterator]();!(u=(g=y.next()).done);u=!0){var h=g.value;c+=te(a,[h.event,r],s).dropped}}catch(e){p=!0,v=e}finally{try{u||null==y.return||y.return()}finally{if(p)throw v}}if(c>0){var b=se(t.status,e("destination",l),"dlq",c);ne(a,f,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:s.max,droppedCount:b})}else a.length<s.max&&re(a);d.failed+=i.entries.length,d.dlqSize=a.length,t.status.failed+=i.entries.length,f.error("Push batch failed",{error:_instanceof(r,Error)?r.message:String(r),entries:i.entries.length})})(i,u)]);case 1:return v.sent(),f.debug("push batch done"),d.inFlightBatch=Math.max(0,(null!==(o=d.inFlightBatch)&&void 0!==o?o:0)-i.entries.length),_&&(d.count+=i.entries.length,d.lastAt=Date.now(),t.status.out+=i.entries.length),[2]}})})()},{wait:C,size:q,age:E}),n.batches[p]={batched:S,batchFn:function(){I()},flush:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){switch(e.label){case 0:return[4,I.flush()];case 1:return e.sent(),[2]}})})()}}),(D=n.batches[p]).batched.entries.push({event:u.event,ingest:a,respond:i,rule:_,data:u.data}),D.batched.events.push(u.event),c(u.data)&&D.batched.data.push(u.data),T=n.config.id||r,[2,((L=ie(t,T)).inFlightBatch=(null!==(v=L.inFlightBatch)&&void 0!==v?v:0)+1,D.batchFn(),yt)]):(f.debug("push",{event:u.event.name}),[4,O(n.push,"DestinationPush",t.hooks,t.logger)(u.event,d)])));case 2:return M=R.sent(),[2,(f.debug("push done"),M)]}})})()},_e=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},pe=function(e){var t=e.code,n=e.config,r=void 0===n?{}:n,o=e.env,a=void 0===o?{}:o,i=e.cache,s=N(e,"before").config,c=N(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},t.config,r,c);i&&(u.cache=i);var l=ge(t.env,a);return _object_spread_props(_object_spread({},t),{config:u,env:l})},ve=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,_=arguments;return _ts_generator(this,function(p){t=_.length>1&&void 0!==_[1]?_[1]:{},o={},a=!0,i=!1,s=void 0;try{for(c=Object.entries(t)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(r=d.config)||void 0===r||null===(n=r.require)||void 0===n?void 0:n.length)?e.pending.destinations[f]=d:o[f]=pe(d)}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}return[2,o]})}).apply(this,arguments)},ge=function(e,t){return e||t?t?e&&l(e)&&l(t)?_object_spread({},e,t):t:e:{}},ye=function(e,t,n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return r=Object.entries(e).map(function(e){var r=_sliced_to_array(e,2),o=r[0],a=r[1];return _async_to_generator(function(){var e,r,i,s,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:if(!(r=a.destroy))return[2];i=a.type||"unknown",s=n.scope(i),c={id:o,config:a.config,env:null!==(e=a.env)&&void 0!==e?e:{},logger:s},l.label=1;case 1:return l.trys.push([1,3,,4]),[4,Promise.race([r(c),new Promise(function(e,n){return setTimeout(function(){return n(new Error("".concat(t," '").concat(o,"' destroy timed out")))},5e3)})])];case 2:return l.sent(),[3,4];case 3:return u=l.sent(),s.error("".concat(t," '").concat(o,"' destroy failed: ").concat(u)),[3,4];case 4:return[2]}})})()}),[4,Promise.allSettled(r)];case 1:return o.sent(),[2]}})})()},he=function(e,t,n){return _async_to_generator(function(){var r,o,a,s,c,d,_,p,v;return _ts_generator(this,function(g){switch(g.label){case 0:switch(a=!1,t){case _t.Commands.Config:return[3,1];case _t.Commands.Consent:return[3,2];case _t.Commands.Custom:return[3,3];case _t.Commands.Destination:return[3,4];case _t.Commands.Globals:return[3,7];case _t.Commands.Hook:return[3,8];case _t.Commands.On:return[3,9];case _t.Commands.Ready:return[3,12];case _t.Commands.Run:return[3,13];case _t.Commands.Session:return[3,15];case _t.Commands.Shutdown:return[3,16];case _t.Commands.User:return[3,18]}return[3,19];case 1:return l(n)&&(i(e.config,n,{shallow:!1}),o=n,a=!0),[3,19];case 2:return l(n)&&(s=function(e,t){var n={};return Object.entries(t).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],o=t[1];n[r]=!!o}),e.consent=i(e.consent,n),{update:n}}(e,n),c=s.update,o=c,a=!0),[3,19];case 3:return l(n)&&(e.custom=i(e.custom,n),o=n,a=!0),[3,19];case 4:return l(n)&&"code"in n&&l(n.code)?[4,ue(e,n)]:[3,6];case 5:r=g.sent(),g.label=6;case 6:return[3,19];case 7:return l(n)&&(e.globals=i(e.globals,n),o=n,a=!0),[3,19];case 8:return l(n)&&f(n.name)&&u(n.fn)&&(d=n.name,_=n.fn,e.hooks[d]=_,o=n,a=!0),[3,19];case 9:return l(n)&&f(n.type)?(p=n.type,v=n.rules,[4,Z(e,p,v)]):[3,11];case 10:g.sent(),g.label=11;case 11:return[3,19];case 12:return a=!0,[3,19];case 13:return[4,me(e,n)];case 14:return r=g.sent(),a=!0,[3,19];case 15:return a=!0,[3,19];case 16:return[4,(y=e,_async_to_generator(function(){var e;return _ts_generator(this,function(t){switch(t.label){case 0:return e=y.logger,[4,ye(y.sources,"source",e)];case 1:return t.sent(),[4,ye(y.destinations,"destination",e)];case 2:return t.sent(),[4,ye(y.transformers,"transformer",e)];case 3:return t.sent(),[4,ye(y.stores,"store",e)];case 4:return t.sent(),[2]}})})())];case 17:return g.sent(),[3,19];case 18:l(n)&&(i(e.user,n,{shallow:!1}),o=n,a=!0),g.label=19;case 19:return a?[4,ee(e,t,void 0,o)]:[3,22];case 20:return g.sent(),[4,le(e)];case 21:r=g.sent(),g.label=22;case 22:return[2,r||_e({ok:!0})]}var y})})()},be=function(e,t){if(!t.name)throw new Error("Event name is required");var n=_sliced_to_array(t.name.split(" "),2),r=n[0],o=n[1];if(!r||!o)throw new Error("Event name is invalid");var a=t.timestamp,i=void 0===a?Date.now():a,s=t.name,c=void 0===s?"".concat(r," ").concat(o):s,u=t.data,l=void 0===u?{}:u,f=t.context,d=void 0===f?{}:f,_=t.globals,p=void 0===_?e.globals:_,v=t.custom,g=void 0===v?{}:v,y=t.user,h=void 0===y?e.user:y,b=t.nested,m=void 0===b?[]:b,w=t.consent,j=void 0===w?e.consent:w,k=t.id,O=void 0===k?function(){for(var e="",t=0;t<16;t++)e+=(16*Math.random()|0).toString(16);return e}():k,S=t.trigger,x=void 0===S?"":S,A=t.entity,C=void 0===A?r:A,q=t.action,E=void 0===q?o:q,P=t.timing,I=void 0===P?0:P,D=t.source;return{name:c,data:l,context:d,globals:p,custom:g,user:h,nested:m,consent:j,id:O,trigger:x,entity:C,action:E,timestamp:i,timing:I,source:void 0===D?{type:"collector",schema:"4"}:D}},me=function(e,t){return _async_to_generator(function(){return _ts_generator(this,function(n){switch(n.label){case 0:return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=i(e.consent,t.consent)),t.user&&(e.user=i(e.user,t.user)),t.globals&&(e.globals=i(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=i(e.custom,t.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,le(e)];case 1:return[2,n.sent()]}})})()},we=function(){var e,t,n,r,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=null!==(e=o.maxEntries)&&void 0!==e?e:1e4,i=null!==(t=o.lowWaterMark)&&void 0!==t?t:.8,s=null!==(n=o.sweepIntervalMs)&&void 0!==n?n:6e4,c=Math.floor(a*i),u=new Map,l={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};return s>0&&((r=setInterval(function(){var e=Date.now(),t=0,n=!0,r=!1,o=void 0;try{for(var a,i=u[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=_sliced_to_array(a.value,2),c=s[0],f=s[1];void 0!==f.expires&&f.expires<=e&&(u.delete(c),t++)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}l.evictions_ttl+=t},s))&&"function"==typeof r.unref&&r.unref()),{type:"memory",config:{},get:function(e){var t=u.get(e);if(t)return void 0!==t.expires&&t.expires<=Date.now()?(u.delete(e),l.evictions_ttl++,void l.misses++):(u.delete(e),u.set(e,t),l.hits++,t.value);l.misses++},set:function(e,t,n){var r=!u.has(e);r||u.delete(e),u.set(e,{value:t,expires:void 0!==n?Date.now()+n:void 0}),l.writes++,r&&l.populates++,u.size>a&&function(){if(!(u.size<=a)){var e=u.size-c,t=0,n=!0,r=!1,o=void 0;try{for(var i,s=u.keys()[Symbol.iterator]();!(n=(i=s.next()).done);n=!0){var f=i.value;if(t>=e)break;u.delete(f),t++}}catch(e){r=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(r)throw o}}l.evictions_entries+=t}}()},delete:function(e){u.delete(e)&&l.deletes++},get counters(){return _object_spread({},l)},destroy:function(){void 0!==r&&(clearInterval(r),r=void 0),u.clear()}}},je=function(e,t){var n=t.cacheConfig,r=t.cacheStore,o=t.namespace,a=t.logger,i=t.storeId,s={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=n.rules.map(function(e){return{match:e.match?We(e.match):function(){return!0},ttl:e.ttl}}),u=function(e){return"".concat(o,":").concat(e)};function l(e,t){var n=void 0===t?{key:e}:{key:e,value:t};return c.find(function(e){return e.match(n)})}var f=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return _object_spread({},s)},get:function(t){return _async_to_generator(function(){var n,o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return n=u(t),[4,r.get(n)];case 1:return void 0!==(o=c.sent())?[2,(s.hits++,o)]:(a=f.get(n))?[2,(s.inflight_dedups++,a)]:(s.misses++,i=_async_to_generator(function(){var o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return c.trys.push([0,,6,7]),[4,e.get(t)];case 1:if(void 0===(o=c.sent()))return[2];if(!(a=l(t,o)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(n,o,1e3*a.ttl)];case 3:return c.sent(),s.populates++,[3,5];case 4:return i=c.sent(),d("set",t,i),[3,5];case 5:return[2,o];case 6:return f.delete(n),[7];case 7:return[2]}})})(),[2,(f.set(n,i),i)])}})})()},set:function(t,n,o){return _async_to_generator(function(){var a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return s.writes++,[4,e.set(t,n,o)];case 1:if(c.sent(),!(a=l(t,n)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(u(t),n,1e3*a.ttl)];case 3:return c.sent(),[3,5];case 4:return i=c.sent(),d("set",t,i),[3,5];case 5:return[2]}})})()},delete:function(t){return _async_to_generator(function(){var n;return _ts_generator(this,function(o){switch(o.label){case 0:return s.deletes++,[4,e.delete(t)];case 1:o.sent(),o.label=2;case 2:return o.trys.push([2,4,,5]),[4,r.delete(u(t))];case 3:return o.sent(),[3,5];case 4:return n=o.sent(),d("delete",t,n),[3,5];case 5:return[2]}})})()}};function d(e,t,n){var r="store-cache(".concat(i,"): cache ").concat(e,' failed for "').concat(t,'"; backing succeeded, continuing');a?a.warn(r,{error:n}):console.warn(r,n)}},ke=function(e,t){var n=t.get,r=t.set,o=t.delete;t.get=O(n,"StoreGet",e.hooks,e.logger),t.set=O(r,"StoreSet",e.hooks,e.logger),t.delete=O(o,"StoreDelete",e.hooks,e.logger)},Oe=function(e){return _async_to_generator(function(e){var t,n,r,o,a,i,s,c,u,l,f,d,_,p,v,g,y,h,b,m,w,j,k,O,S,x,A,C,q,E,P,I,D,T,L,M,R,N,U,z=arguments;return _ts_generator(this,function(B){switch(B.label){case 0:t=z.length>1&&void 0!==z[1]?z[1]:{},n={},r=!0,o=!1,a=void 0,B.label=1;case 1:B.trys.push([1,6,7,8]),i=Object.entries(t)[Symbol.iterator](),B.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,_=void 0===d?{}:d,p=l.env,v=void 0===p?{}:p,g=e.logger.scope("store").scope(u),[4,f({collector:e,logger:g,id:u,config:_,env:v})]);case 3:y=B.sent(),n[u]=y,B.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return h=B.sent(),o=!0,a=h,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:m=function(e){var t={},n=!0,r=!1,o=void 0;try{for(var a,i=Object.keys(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=a.value;t[s]="WHITE"}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}var c=[],u=[];function l(n){var r,o=t[n];if("BLACK"!==o){if("GRAY"===o){var a=u.indexOf(n),i=u.slice(-1===a?0:a).concat(n).join(" -> ");throw new Error("Cycle in cache.store chain: ".concat(i))}t[n]="GRAY",u.push(n);var s=null===(r=e[n].cache)||void 0===r?void 0:r.store;if(void 0!==s){if(!(s in e))throw new Error('Store "'.concat(n,'" cache.store references "').concat(s,'", which is not declared in flow.stores'));l(s)}u.pop(),t[n]="BLACK",c.push(n)}}var f=!0,d=!1,_=void 0;try{for(var p,v=Object.keys(e)[Symbol.iterator]();!(f=(p=v.next()).done);f=!0){var g=p.value;"WHITE"===t[g]&&l(g)}}catch(e){d=!0,_=e}finally{try{f||null==v.return||v.return()}finally{if(d)throw _}}return c}(b=t),w=!0,j=!1,k=void 0;try{for(O=m[Symbol.iterator]();!(w=(S=O.next()).done);w=!0)x=S.value,(C=b[x].cache)&&(q=void 0,E=void 0,void 0!==C.store?(q=n[C.store],E=C.store):(n.__cache||(n.__cache=we()),q=n.__cache,E="__cache"),P=null!==(A=C.namespace)&&void 0!==A?A:x,e.logger.scope("store-cache").scope(x).info('store "'.concat(x,'" caches with namespace "').concat(P,':" via ').concat(E)),n[x]=je(n[x],{storeId:x,cacheConfig:C,cacheStore:q,namespace:P,logger:e.logger.scope("store-cache").scope(x)}))}catch(e){j=!0,k=e}finally{try{w||null==O.return||O.return()}finally{if(j)throw k}}I=!0,D=!1,T=void 0;try{for(L=Object.entries(n)[Symbol.iterator]();!(I=(M=L.next()).done);I=!0)R=_sliced_to_array(M.value,2),N=R[0],U=R[1],"__cache"!==N&&ke(e,U)}catch(e){D=!0,T=e}finally{try{I||null==L.return||L.return()}finally{if(D)throw T}}return[2,n]}})}).apply(this,arguments)},Se=function(e){return _async_to_generator(function(){var t,n,r,o,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return r=i({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),o={level:null===(t=e.logger)||void 0===t?void 0:t.level,handler:null===(n=e.logger)||void 0===n?void 0:n.handler},s=y(o),c=_object_spread({},r.globalsStatic,e.globals),(u={allowed:!1,config:r,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:c,hooks:e.hooks||{},logger:s,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{},dropped:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0}).push=function(e,t){return O(function(n){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return _async_to_generator(function(){return _ts_generator(this,function(o){switch(o.label){case 0:return[4,m(function(){return _async_to_generator(function(){var o,i,s,c,u,l,f,d,p,v,g,y,h,b,m,w,j,O,S,x,A;return _ts_generator(this,function(C){switch(C.label){case 0:return o=Date.now(),i=r.id,s=r.ingest,c=r.respond,u=r.mapping,l=r.preChain,f=r.include,d=r.exclude,p=c,v=n,g=f||d?function(e,t,n){var r=e;return t&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var n=_sliced_to_array(e,1)[0];return t.includes(n)}))),n&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var t=_sliced_to_array(e,1)[0];return!n.includes(t)}))),r}(e.destinations,f,d):void 0,y=null!=s?s:a(i||"unknown"),u?[4,k(v,u,e)]:[3,2];case 1:if((h=C.sent()).ignore)return[2,_e({ok:!0})];if(u.consent&&!_(u.consent,e.consent,h.event.consent))return[2,_e({ok:!0})];v=h.event,C.label=2;case 2:return(null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0?[4,pt(e,e.transformers,l,v,y,p,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(b=C.sent()).event?[2,_e({ok:!0})]:b.stopped?[2,(b.respond&&(p=b.respond),_e({ok:!0}))]:(b.respond&&(p=b.respond),Array.isArray(b.event)?[4,Promise.all(b.event.map(function(n){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=t(n),o=be(e,r),[2,le(e,o,{id:i,ingest:y,respond:p},g)]})})()}))]:[3,5]);case 4:return w=C.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(j=e.status.sources[i]).count+=b.event.length,j.lastAt=Date.now(),j.duration+=Date.now()-o),[2,null!==(m=w[0])&&void 0!==m?m:_e({ok:!0})];case 5:v=b.event,C.label=6;case 6:return O=t(v),S=be(e,O),[4,le(e,S,{id:i,ingest:y,respond:p},g)];case 7:return x=C.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(A=e.status.sources[i]).count++,A.lastAt=Date.now(),A.duration+=Date.now()-o),[2,x]}})})()},function(t){if(_instanceof(t,He))throw t;return e.status.failed++,e.logger.error("push failed",{event:n,ingest:r.ingest,error:t}),_e({ok:!1})})()];case 1:return[2,o.sent()]}})})()},"Push",e.hooks,e.logger)}(u,function(e){return _object_spread({timing:Math.round((Date.now()-u.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0"}},e)}),u.command=(p=he,O(function(e,t,n){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,m(function(){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,p(d,e,t,n)];case 1:return[2,r.sent()]}})})()},function(n){if(_instanceof(n,He))throw n;return d.status.failed++,d.logger.error("command failed",{command:e,data:t,error:n}),_e({ok:!1})})()];case 1:return[2,r.sent()]}})})()},"Command",(d=u).hooks,d.logger)),l=e.stores||{},[4,Oe(u,l)];case 1:return u.stores=f.sent(),function(e,t,n){var r=new Map,o=!0,a=!1,i=void 0;try{for(var s,c=Object.entries(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=_sliced_to_array(s.value,2),l=u[0],f=u[1];t[l]&&r.set(f,t[l])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}if(0!==r.size)for(var d=!0,_=!1,p=void 0,v=0,g=[n.transformers,n.destinations,n.sources];v<g.length;v++){var y=g[v];if(y)try{for(var h,b=Object.values(y)[Symbol.iterator]();!(d=(h=b.next()).done);d=!0){m(h.value.env)}}catch(e){_=!0,p=e}finally{try{d||null==b.return||b.return()}finally{if(_)throw p}}}function m(e){if(e){var t=!0,n=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=_sliced_to_array(a.value,2),c=s[0],u=s[1];if("object"==(void 0===u?"undefined":_type_of(u))&&null!==u){var l=r.get(u);l&&(e[c]=l)}}}catch(e){n=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw o}}}}}(l,u.stores,e),u.stores.__cache||(u.stores.__cache=we()),[4,ve(u,e.destinations||{})];case 2:return u.destinations=f.sent(),[4,function(e){return _async_to_generator(function(e){var t,n,r,o,i,s,c,u,l,f=arguments;return _ts_generator(this,function(d){switch(d.label){case 0:t=f.length>1&&void 0!==f[1]?f[1]:{},n={},r=!0,o=!1,i=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=function(){var t,r,o,i,s,c,l,f,d,_,p,v,g,y,h,b,m,w,j,O,S,x;return _ts_generator(this,function(A){switch(A.label){case 0:return t=_sliced_to_array(u.value,2),r=t[0],o=t[1],f=o.code,d=o.env,_=void 0===d?{}:d,p=function(e,t){var n,r=(n=t,new Set(_to_consumable_array(Ye[n]).concat(_to_consumable_array(Ze),_to_consumable_array(Qe[n])))),o=!0,a=!1,i=void 0;try{for(var s,c=Object.keys(e)[Symbol.iterator]();!(o=(s=c.next()).done);o=!0){var u=s.value;if(!r.has(u))return{ok:!1,code:"UNKNOWN_KEY",key:u,reason:'Unknown key "'.concat(u,'" on ').concat(t,". Allowed: ").concat(_to_consumable_array(r).sort().join(", "),".")}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}var l=void 0!==e.package,f=void 0!==e.import,d=void 0!==e.code;return d&&"string"==typeof e.code?{ok:!1,code:"OBSOLETE_CODE_STRING",key:"code",reason:'code: "<name>" is no longer supported. Use import: "'.concat(e.code,'" with the package field instead.')}:d&&("object"!=_type_of(e.code)&&"function"!=typeof e.code||null===e.code||Array.isArray(e.code))?{ok:!1,code:"INVALID_CODE_SHAPE",key:"code",reason:"code must be an object ({ push, type?, init? }) or a resolved function value."}:d&&l?{ok:!1,code:"CONFLICT",key:"package",reason:"Cannot specify both `code` and `package`. Use one or the other."}:d&&f?{ok:!1,code:"CONFLICT",key:"import",reason:"Cannot specify both `code` and `import`."}:f&&!l?{ok:!1,code:"MISSING_PACKAGE",key:"import",reason:"`import` requires `package` to be set."}:!f||"string"==typeof e.import&&Xe.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:"import must match ".concat(Xe.source,". Got: ").concat(JSON.stringify(e.import),".")}}(o,"Transformer"),p.ok?(v=N(o,"before"),g=v.config,y=N(_object_spread_props(_object_spread({},o),{config:g}),"next"),h=y.config,b=Object.keys(_).length>0?_object_spread_props(_object_spread({},h),{env:_}):h,m=o.cache,w=m?_object_spread_props(_object_spread({},b),{cache:m}):b,j=e.logger.scope("transformer").scope(r),O={collector:e,logger:j,id:r,ingest:a(r),config:w,env:_},S=null!=f?f:function(e){var t=o.mapping;if(t){var n=[];if(void 0!==t.data&&n.push("data"),t.mapping){var a=!0,i=!1,s=void 0,c=!0,u=!1,l=void 0;try{for(var f,d=Object.entries(t.mapping)[Symbol.iterator]();!(c=(f=d.next()).done);c=!0){var _=_sliced_to_array(f.value,2),p=_[0],v=_[1];if("object"==(void 0===v?"undefined":_type_of(v))&&null!==v)try{for(var g,y=Object.entries(v)[Symbol.iterator]();!(a=(g=y.next()).done);a=!0){var h=_sliced_to_array(g.value,2),b=h[0],m=h[1];if("object"==(void 0===m?"undefined":_type_of(m))&&null!==m){var w=m;void 0!==w.data&&n.push("mapping[".concat(p,"][").concat(b,"].data")),void 0!==w.silent&&n.push("mapping[".concat(p,"][").concat(b,"].silent"))}}}catch(e){i=!0,s=e}finally{try{a||null==y.return||y.return()}finally{if(i)throw s}}}}catch(e){u=!0,l=e}finally{try{c||null==d.return||d.return()}finally{if(u)throw l}}}return n.length>0&&e.collector.logger.warn("Transformer ".concat(r,": `").concat(n.join(", "),"` ignored at transformer position (only event-mutating fields apply).")),{type:"pass",config:e.config,push:function(n){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return[4,k(n,t,e.collector)];case 1:return[2,!(r=o.sent()).ignore&&{event:r.event}]}})})()}}}return{type:"pass",config:e.config,push:function(e){return{event:e}}}},[4,S(O)]):(e.logger.warn("Transformer ".concat(r," invalid (").concat(p.code,"): ").concat(p.reason,". Skipping.")),[2,"continue"]);case 1:return x=A.sent(),void 0!==o.before&&void 0===(null===(c=x.config)||void 0===c?void 0:c.before)&&(x.config=_object_spread_props(_object_spread({},null!==(i=x.config)&&void 0!==i?i:{}),{before:o.before})),void 0!==o.next&&void 0===(null===(l=x.config)||void 0===l?void 0:l.next)&&(x.config=_object_spread_props(_object_spread({},null!==(s=x.config)&&void 0!==s?s:{}),{next:o.next})),n[r]=x,[2]}})},c=Object.entries(t)[Symbol.iterator](),d.label=2;case 2:return(r=(u=c.next()).done)?[3,5]:[5,_ts_values(s())];case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return l=d.sent(),o=!0,i=l,[3,8];case 7:try{r||null==c.return||c.return()}finally{if(o)throw i}return[7];case 8:return[2,n]}})}).apply(this,arguments)}(u,e.transformers||{})];case 3:return[2,(u.transformers=f.sent(),u)]}var d,p})})()},xe=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,Se(e=e||{})];case 1:return t=f.sent(),r=t,n={type:"elb",config:{},push:function(e,t,n,o,a){return _async_to_generator(function(){var i,s;return _ts_generator(this,function(c){if("string"==typeof e&&e.startsWith("walker "))return i=e.replace("walker ",""),[2,r.command(i,t)];if("string"==typeof e)s={name:e},t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(s.data=t);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,_e({ok:!1})];s=e,t&&"object"==(void 0===t?"undefined":_type_of(t))&&!Array.isArray(t)&&(s.data=_object_spread({},s.data||{},t))}return[2,(n&&"object"==(void 0===n?"undefined":_type_of(n))&&(s.context=n),o&&Array.isArray(o)&&(s.nested=o),a&&"object"==(void 0===a?"undefined":_type_of(a))&&(s.custom=a),r.push(s))]})})()}},t.sources.elb=n,[4,$(t,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,i=e.globals,s=e.custom,o?[4,t.command("consent",o)]:[3,4];case 3:f.sent(),f.label=4;case 4:return a?[4,t.command("user",a)]:[3,6];case 5:f.sent(),f.label=6;case 6:return i&&Object.assign(t.globals,i),s&&Object.assign(t.custom,s),t.config.run?[4,t.command("run")]:[3,8];case 7:f.sent(),f.label=8;case 8:return c=n.push,u=Object.values(t.sources).filter(function(e){return"elb"!==e.type}),[2,((l=u.find(function(e){return e.config.primary}))?c=l.push:u.length>0&&(c=u[0].push),{collector:t,elb:c})]}})})()},Ae=Object.defineProperty,Ce=Object.getOwnPropertyDescriptor,qe=Object.getOwnPropertyNames,Ee=Object.prototype.hasOwnProperty,Pe=function(e,t){for(var n in t)Ae(e,n,{get:t[n],enumerable:!0})},Ie={};Pe(Ie,{SourceDataLayer:function(){return tt},createTrigger:function(){return ht},default:function(){return wt},env:function(){return nt},sourceDataLayer:function(){return mt},step:function(){return st},trigger:function(){return bt}});var De=Object.defineProperty,Te=function(e,t){for(var n in t)De(e,n,{get:t[n],enumerable:!0})};Te({},{stepId:function(){return e}});Te({},{getDestination:function(){return t}});Te({},{Level:function(){return Me}});var Le,Me=((Le=Me||{})[Le.ERROR=0]="ERROR",Le[Le.WARN=1]="WARN",Le[Le.INFO=2]="INFO",Le[Le.DEBUG=3]="DEBUG",Le);Te({},{getTransformer:function(){return n}});Te({},{getSource:function(){return r}});Te({},{getStore:function(){return o}});var Re={merge:!0,shallow:!0,extend:!0};function Ne(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if("object"!=(void 0===e?"undefined":_type_of(e))||null===e)return e;if(t.has(e))return t.get(e);var n=Object.prototype.toString.call(e);if("[object Object]"===n){var r={};for(var o in t.set(e,r),e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=Ne(e[o],t));return r}if("[object Array]"===n){var a=[];return t.set(e,a),e.forEach(function(e){a.push(Ne(e,t))}),a}if("[object Date]"===n)return new Date(e.getTime());if("[object RegExp]"===n){var i=e;return new RegExp(i.source,i.flags)}return e}function Ue(e){for(var t=arguments.length>2?arguments[2]:void 0,n=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),r=e,o=0;o<n.length;o++){var a=n[o];if("*"===a&&s(r)){var i=n.slice(o+1).join("."),u=[],f=!0,d=!1,_=void 0;try{for(var p,v=r[Symbol.iterator]();!(f=(p=v.next()).done);f=!0){var g=Ue(p.value,i,t);u.push(g)}}catch(e){d=!0,_=e}finally{try{f||null==v.return||v.return()}finally{if(d)throw _}}return u}if(void 0===(r=l(r)||s(r)?r[a]:void 0))break}return c(r)?r:t}var ze={data:function(e){return e.data},globals:function(e){return e.globals},context:function(e){return e.context},user:function(e){return e.user},source:function(e){return e.source},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing}}},Be=function(e,t,n,r){var o="".concat(Me[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(n).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(o,t,n):i(o,t)};function Ke(e){var t=e.level,n=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=t){var i=g(r,a);n?n(e,i.message,i.context,o,Be):Be(e,i.message,i.context,o)}};return{error:function(e,t){return a(0,e,t)},warn:function(e,t){return a(1,e,t)},info:function(e,t){return a(2,e,t)},debug:function(e,t){return a(3,e,t)},throw:function(e,t){var r=g(e,t);throw n?n(0,r.message,r.context,o,Be):Be(0,r.message,r.context,o),new Error(r.message)},json:function(e){r?r(e):console.log(JSON.stringify(e,null,2))},scope:function(e){return Ke({level:t,handler:n,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function Ge(e){return function(e){return"boolean"==typeof e}(e)||f(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!c(e)||s(e)&&e.every(Ge)||l(e)&&Object.values(e).every(Ge)}var He=function(){function e(t,n){var r;return _class_call_check(this,e),(r=_call_super(this,e,[t,n])).name="FatalError",Object.setPrototypeOf(r,e.prototype),r}return _inherits(e,_wrap_native_super(Error)),e}();function Fe(e,t,n){return _async_to_generator(function(){return _ts_generator(this,function(r){return[2,(s(t)?t:[t]).reduce(function(t,r){return _async_to_generator(function(){var o,a,i,u,l,d,p,v,g,y,b,w,k,O,S,x,A,C,q,E,P,I;return _ts_generator(this,function(D){switch(D.label){case 0:return[4,t];case 1:return(o=D.sent())?[2,o]:(a=f(r)?{key:r}:r,Object.keys(a).length?(i=a.condition,u=a.consent,l=a.fn,d=a.key,p=a.loop,v=a.map,g=a.set,y=a.validate,b=a.value,w=_object_spread_props(_object_spread({},n),{mapping:r}),(k=i)?[4,m(i,function(e){if(_instanceof(e,He))throw e;return w.logger.error("mapping condition failed",{event:w.event,error:e}),!1})(e,w)]:[3,3]):[2]);case 2:k=!D.sent(),D.label=3;case 3:return k?[2]:u&&!_(u,w.consent)?[2,b]:(O=c(b)?b:e,l?[4,m(l,function(e){if(_instanceof(e,He))throw e;w.logger.error("mapping fn failed",{event:w.event,error:e})})(e,w)]:[3,5]);case 4:O=D.sent(),D.label=5;case 5:return d&&(O=Ue(e,d,b)),p?(S=_sliced_to_array(p,2),x=S[0],A=S[1],"this"!==x?[3,6]:(q=[e],[3,8])):[3,11];case 6:return[4,j(e,x,w)];case 7:q=D.sent(),D.label=8;case 8:return s(C=q)?[4,Promise.all(C.map(function(e){return j(e,A,w)}))]:[3,10];case 9:O=D.sent().filter(c),D.label=10;case 10:return[3,17];case 11:return v?[4,Object.entries(v).reduce(function(t,n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];return _async_to_generator(function(){var n,r;return _ts_generator(this,function(i){switch(i.label){case 0:return[4,t];case 1:return n=i.sent(),[4,j(e,a,w)];case 2:return r=i.sent(),[2,(c(r)&&(n[o]=r),n)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=D.sent(),[3,16];case 13:return(E=g)?[4,Promise.all(g.map(function(t){return Fe(e,t,w)}))]:[3,15];case 14:E=O=D.sent(),D.label=15;case 15:D.label=16;case 16:D.label=17;case 17:return(P=y)?[4,m(y,function(e){if(_instanceof(e,He))throw e;return w.logger.error("mapping validate failed",{event:w.event,error:e}),!1})(O,w)]:[3,19];case 18:P=!D.sent(),D.label=19;case 19:return P&&(O=void 0),I=h(O),[2,c(I)?I:h(b)]}})})()},Promise.resolve(void 0))]})})()}function We(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var t=e.and.map(We);return function(e){return t.every(function(t){return t(e)})}}if("or"in e){var n=e.or.map(We);return function(e){return n.some(function(t){return t(e)})}}return function(e){var t=e.key,n=e.operator,r=e.value,o=e.not,a=function(e,t){switch(e){case"eq":return function(e){return String(null!=e?e:"")===t};case"contains":return function(e){return String(null!=e?e:"").includes(t)};case"prefix":return function(e){return String(null!=e?e:"").startsWith(t)};case"suffix":return function(e){return String(null!=e?e:"").endsWith(t)};case"regex":var n=new RegExp(t);return function(e){return n.test(String(null!=e?e:""))};case"gt":var r=Number(t);return function(e){return Number(e)>r};case"lt":var o=Number(t);return function(e){return Number(e)<o};case"exists":return function(e){return null!=e}}}(n,r);return function(e){var n=Ue(e,t),r=a(n);return o?!r:r}}(e)}function Ve(e){if(null!=e){if("string"==typeof e)return{type:"static",value:e};if(Array.isArray(e)){if(0===e.length)return;if(function(e){return Array.isArray(e)&&e.length>0&&e.every(function(e){return"object"==(void 0===(t=e)?"undefined":_type_of(t))&&null!==t&&!Array.isArray(t)&&("match"in t||"next"in t||"one"in t||"many"in t);var t})}(e))return Ve({one:e});if(e.every(function(e){return"string"==typeof e}))return{type:"chain",value:e};var t=[],n=!0,r=!1,o=void 0;try{for(var a,i=e[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var s=Ve(a.value);void 0!==s&&t.push(s)}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}if(0===t.length)return;return{type:"sequence",value:t}}var c=e;if("next"in c&&void 0!==c.next)return c.match?{type:"gate",match:We(c.match),next:Ve(c.next)}:Ve(c.next);if("one"in c&&c.one){var u=S(c.one);return c.match?{type:"gate",match:We(c.match),next:{type:"one",routes:u}}:{type:"one",routes:u}}if("many"in c&&c.many){var l=S(c.many);return c.match?{type:"gate",match:We(c.match),next:{type:"many",routes:l}}:{type:"many",routes:l}}return c.match?{type:"gate",match:We(c.match)}:void 0}}var $e=new WeakMap;function Je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(t))return;return Je(e.next,t)}if("sequence"===e.type){var n=[],r=!0,o=!1,a=void 0;try{for(var i,s=e.value[Symbol.iterator]();!(r=(i=s.next()).done);r=!0){var c,u=Je(i.value,t);void 0!==u&&(Array.isArray(u)?(c=n).push.apply(c,_to_consumable_array(u)):n.push(u))}}catch(e){o=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return n.length>0?n:void 0}if("many"===e.type){var l=[],f=!0,d=!1,_=void 0;try{for(var p,v=e.routes[Symbol.iterator]();!(f=(p=v.next()).done);f=!0){var g,y=p.value;if(y.match(t)){var h=Je(y.next,t);void 0!==h&&(Array.isArray(h)?(g=l).push.apply(g,_to_consumable_array(h)):l.push(h))}}}catch(e){d=!0,_=e}finally{try{f||null==v.return||v.return()}finally{if(d)throw _}}return l.length>0?l:void 0}var b=!0,m=!1,w=void 0;try{for(var j,k=e.routes[Symbol.iterator]();!(b=(j=k.next()).done);b=!0){var O=j.value;if(O.match(t))return Je(O.next,t)}}catch(e){m=!0,w=e}finally{try{b||null==k.return||k.return()}finally{if(m)throw w}}}}var Ye={Source:["code","package","import","before","next","cache"],Transformer:["code","package","import","before","next","cache","mapping"],Destination:["code","package","import","before","next","cache"],Store:["code","package","import","cache"]},Ze=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],Qe={Source:["primary"],Transformer:[],Destination:[],Store:[]},Xe=/^[A-Za-z_$][A-Za-z0-9_$]*$/,et=!1,tt={},nt={};Pe(nt,{push:function(){return it}});var rt=function(){},ot=function(){return function(){return Promise.resolve({ok:!0})}},at={error:rt,warn:rt,info:rt,debug:rt,throw:function(e){throw"string"==typeof e?new Error(e):e},json:rt,scope:function(){return at}},it={get push(){return ot()},get command(){return ot()},get elb(){return ot()},get window(){return{dataLayer:[],addEventListener:rt,removeEventListener:rt}},logger:at},st={};Pe(st,{consentUpdate:function(){return ut},directEvent:function(){return dt},gtagAddToCart:function(){return lt},gtagPurchase:function(){return ct},gtagViewItem:function(){return ft}});var ct={title:"gtag purchase",description:"A gtag purchase call pushed to the dataLayer is captured as a walker dataLayer purchase event with item details.",trigger:{type:"gtag"},in:["event","purchase",{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}],out:[["elb",{name:"dataLayer purchase",data:{transaction_id:"T-12345",value:25.42,currency:"EUR",items:[{item_id:"SKU-1",item_name:"T-Shirt",quantity:1}]}}]]},ut={title:"Consent update",description:"A gtag consent update is captured from the dataLayer as a walker dataLayer consent update event.",trigger:{type:"gtag"},in:["consent","update",{ad_storage:"granted",analytics_storage:"granted"}],out:[["elb",{name:"dataLayer consent update",data:{ad_storage:"granted",analytics_storage:"granted"}}]]},lt={title:"gtag add_to_cart",description:"A gtag add_to_cart call pushed to the dataLayer is captured as a walker dataLayer add_to_cart event.",trigger:{type:"gtag"},in:["event","add_to_cart",{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}],out:[["elb",{name:"dataLayer add_to_cart",data:{currency:"EUR",value:15.25,items:[{item_id:"SKU_12345",item_name:"T-Shirt",item_variant:"red",quantity:1,price:15.25}]}}]]},ft={title:"gtag view_item",description:"A gtag view_item call pushed to the dataLayer is captured as a walker dataLayer view_item event with item data.",trigger:{type:"gtag"},in:["event","view_item",{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}],out:[["elb",{name:"dataLayer view_item",data:{currency:"EUR",value:29.99,items:[{item_id:"SKU_67890",item_name:"Sneakers",item_category:"Footwear",price:29.99}]}}]]},dt={title:"Direct dataLayer event",description:"A plain object pushed directly onto the dataLayer is captured as a walker dataLayer custom event.",trigger:{type:"direct"},in:{event:"custom_event",category:"engagement",label:"video_play"},out:[["elb",{name:"dataLayer custom_event",data:{category:"engagement",label:"video_play"}}]]},_t={Commands:{Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"},Utils:{Storage:{Cookie:"cookie",Local:"local",Session:"session"}}};function pt(e,t,n,r,o,i,s){return _async_to_generator(function(){var c,u,l,f,d,_,p,v,g,y,h;return _ts_generator(this,function(b){switch(b.label){case 0:o||(o=a(null!==(c=n[0])&&void 0!==c?c:"chain")),s&&o._meta&&(o._meta.chainPath=s),u=r,l=i,f=!0,d=!1,_=void 0,b.label=1;case 1:b.trys.push([1,6,7,8]),p=function(){var r,a,i,c,f,d,_,p,v,y,h,b,w,j,k,O,S,P,I,D,T,L,N,G,H,F,W,V,$,J,Y,Z,Q,X,ee,te,ne,re,oe,ae,ie,se,ce,ue,le,fe;return _ts_generator(this,function(de){switch(de.label){case 0:return r=g.value,(_=t[r])?o&&o._meta&&o._meta.path.length>256?[2,{v:(e.logger.error("Max path length exceeded at ".concat(r)),{event:null,respond:l})}]:(o&&o._meta&&(o._meta.hops++,o._meta.path.push(r)),[4,m(z,function(t){if(_instanceof(t,He))throw t;return e.status.failed++,e.logger.scope("transformer:".concat(_.type||"unknown")).error("transformer init failed",{transformer:r,error:t}),!1})(e,_,r)]):(e.logger.warn("Transformer not found: ".concat(r)),[2,"continue"]);case 1:return de.sent()?s&&void 0!==(null===(i=_.config)||void 0===i||null===(a=i.chainMocks)||void 0===a?void 0:a[s])?(p=_.config.chainMocks[s],e.logger.scope("transformer:".concat(_.type||"unknown")).debug("chainMock",{chain:s}),u=p,[2,"continue"]):void 0!==(null===(c=_.config)||void 0===c?void 0:c.mock)?(e.logger.scope("transformer:".concat(_.type||"unknown")).debug("mock"),u=_.config.mock,[2,"continue"]):(null===(f=_.config)||void 0===f?void 0:f.disabled)?[2,"continue"]:(v=null===(d=_.config)||void 0===d?void 0:d.cache,y=v?C(v):void 0,h=y?M(y,e):void 0,b=void 0,y&&h?(w=A(o,u),[4,q(y,h,w)]):[3,3]):[2,{v:{event:null,respond:l}}];case 2:if("HIT"===(null==(j=de.sent())?void 0:j.status)&&j.value)return u=j.value,y.stop?[2,{v:{event:u,respond:l,stopped:!0}}]:[2,"continue"];"MISS"===(null==j?void 0:j.status)&&(b={key:j.key,ttl:j.rule.ttl}),de.label=3;case 3:return(k=_.config.before)?1!==(O=x(k,A(o,u))).length?[3,6]:(S=U(O[0],R(t))).length>0?[4,pt(e,t,S,u,o,l,s)]:[3,5]:[3,9];case 4:if(null===(D=de.sent()).event)return[2,{v:{event:null,respond:null!==(P=D.respond)&&void 0!==P?P:l}}];if(D.stopped)return[2,{v:{event:Array.isArray(D.event)?D.event[0]:D.event,respond:null!==(I=D.respond)&&void 0!==I?I:l,stopped:!0}}];D.respond&&(l=D.respond),u=Array.isArray(D.event)?D.event[0]:D.event,de.label=5;case 5:return[3,9];case 6:return O.length>1?[4,Promise.all(O.map(function(n){return m(pt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,U(n,R(t)),u,K(o,n),void 0,s)}))]:[3,8];case 7:de.sent(),de.label=8;case 8:de.label=9;case 9:return[4,m(B,function(t){return e.logger.scope("transformer:".concat(_.type||"unknown")).error("Push failed",{error:t}),!1})(e,_,r,u,o,l)];case 10:return!1===(T=de.sent())?[2,{v:{event:null,respond:l}}]:Array.isArray(T)?(L=n.slice(n.indexOf(r)+1),[4,Promise.all(T.map(function(n){return _async_to_generator(function(){var r,a,i,c;return _ts_generator(this,function(f){switch(f.label){case 0:return r=n.event||u,a=K(o,"unknown"),n.next?0===(i=x(n.next,A(a,r))).length?[2,{event:r,respond:l}]:1===i.length?[2,(c=U(i[0],R(t))).length>0?pt(e,t,c,r,a,l,s):{event:r,respond:l}]:[4,Promise.all(i.map(function(n){return m(pt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,U(n,R(t)),r,K(a,n),void 0,s)}))]:[3,2];case 1:return[2,f.sent().map(function(e){return{event:e.event,respond:void 0}})];case 2:return[2,L.length>0?pt(e,t,L,r,a,l,s):{event:r,respond:l}]}})})()}))]):[3,12];case 11:N=de.sent(),G=l,H=[],F=!0,W=!1,V=void 0;try{for($=N.flat()[Symbol.iterator]();!(F=(J=$.next()).done);F=!0)if(null!==(Y=J.value))if(Y&&"object"==(void 0===Y?"undefined":_type_of(Y))&&"event"in Y){if((Q=Y).respond&&(G=Q.respond),null===Q.event)continue;Array.isArray(Q.event)?(Z=H).push.apply(Z,_to_consumable_array(Q.event)):H.push(Q.event)}else H.push(Y)}catch(e){W=!0,V=e}finally{try{F||null==$.return||$.return()}finally{if(W)throw V}}return[2,{v:0===H.length?{event:null,respond:G}:1===H.length?{event:H[0],respond:G}:{event:H,respond:G}}];case 12:return T&&"object"==(void 0===T?"undefined":_type_of(T))?(X=T.event,ee=T.respond,te=T.next,ee&&(l=ee),void 0===te?[3,14]:0===(ne=x(te,A(o,u))).length?(X&&(u=X),[2,"continue"]):1===ne.length?[2,{v:(re=U(ne[0],R(t))).length>0?pt(e,t,re,X||u,o,l,s):(e.logger.warn("Branch target not found: ".concat(JSON.stringify(te))),{event:null,respond:l})}]:(oe={},[4,Promise.all(ne.map(function(n){return m(pt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,U(n,R(t)),X||u,K(o,n),void 0,s)}))])):[3,15];case 13:return[2,(oe.v=(de.sent(),{event:null,respond:void 0}),oe)];case 14:X&&(u=X),de.label=15;case 15:return b&&h&&E(h,b.key,u,b.ttl),ae=_.config.next,ie="string"==typeof ae||Array.isArray(ae)&&ae.every(function(e){return"string"==typeof e}),se=void 0!==ae&&!ie,T&&("object"!=(void 0===T?"undefined":_type_of(T))||T.next)||!se?[3,19]:1===(ce=x(_.config.next,A(o,u))).length?[2,{v:(ue=U(ce[0],R(t))).length>0?pt(e,t,ue,u,o,l,s):{event:u,respond:l}}]:(le={},ce.length>1?[4,Promise.all(ce.map(function(n){return m(pt,function(t){return e.logger.scope("transformer:many").error("many branch ".concat(n," failed"),{error:t}),{event:null,respond:void 0}})(e,t,U(n,R(t)),u,K(o,n),void 0,s)}))]:[3,17]);case 16:return de.sent(),fe={event:null,respond:void 0},[3,18];case 17:fe={event:u,respond:l},de.label=18;case 18:return[2,(le.v=fe,le)];case 19:return[2]}})},v=n[Symbol.iterator](),b.label=2;case 2:return(f=(g=v.next()).done)?[3,5]:[5,_ts_values(p())];case 3:if("object"===_type_of(y=b.sent()))return[2,y.v];b.label=4;case 4:return f=!0,[3,2];case 5:return[3,8];case 6:return h=b.sent(),d=!0,_=h,[3,8];case 7:try{f||null==v.return||v.return()}finally{if(d)throw _}return[7];case 8:return[2,{event:u,respond:l}]}})})()}var vt,gt=new WeakMap,yt=Object.freeze({batched:!0}),ht=function(e){return _async_to_generator(function(){var t,n;return _ts_generator(this,function(r){return n=function(){return function(n){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,_,p,v;return _ts_generator(this,function(g){switch(g.label){case 0:if(t)return[3,2];if((o=_object_spread({},e)).sources){o.sources=_object_spread({},o.sources),a=!0,i=!1,s=void 0;try{for(c=Object.entries(o.sources)[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)l=_sliced_to_array(u.value,2),f=l[0],d=l[1],(null===(_=d.env)||void 0===_?void 0:_.window)||(o.sources[f]=_object_spread_props(_object_spread({},d),{env:_object_spread_props(_object_spread({},d.env),{window:window})}))}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}}return[4,xe(_object_spread_props(_object_spread({},o),{run:null===(r=o.run)||void 0===r||r}))];case 1:p=g.sent(),t={collector:p.collector,elb:p.elb},g.label=2;case 2:return(v=window).dataLayer||(v.dataLayer=[]),v.dataLayer.push(n),[2]}})})()}},[2,{get flow(){return t},trigger:n}]})})()},bt=function(e,t){var n=t.window;n.dataLayer||(n.dataLayer=[]),n.dataLayer.push(e)},mt=function(e){return _async_to_generator(function(){var t,n,r,o,a,i,s,c,u;return _ts_generator(this,function(l){return t=e.config,n=e.env,r=n.elb,o=n.window,a=_object_spread({name:"dataLayer",prefix:"dataLayer"},null==t?void 0:t.settings),s=0,c=function(){if(o){var e=a.name||"dataLayer",t=o[e];s=Array.isArray(t)?t.length:0,function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:globalThis.window,r=t.settings,o=(null==r?void 0:r.name)||"dataLayer";n[o]||(n[o]=[]);var a=n[o];if(Array.isArray(a)){var i=a.push.bind(a);a.push=function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];if(et)return i.apply(void 0,_to_consumable_array(n));et=!0;try{var a=!0,s=!1,c=void 0;try{for(var u,l=n[Symbol.iterator]();!(a=(u=l.next()).done);a=!0){var f=u.value;I(e,r,f)}}catch(e){s=!0,c=e}finally{try{a||null==l.return||l.return()}finally{if(s)throw c}}}finally{et=!1}return i.apply(void 0,_to_consumable_array(n))}}}(r,i,o)}},u=function(e){return _async_to_generator(function(){return _ts_generator(this,function(t){return"run"===e&&o&&s>0&&(function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:globalThis.window,o=t.settings,a=r[(null==o?void 0:o.name)||"dataLayer"];if(Array.isArray(a)&&!et){et=!0;try{for(var i=null!=n?n:a.length,s=0;s<i;s++)I(e,o,a[s])}finally{et=!1}}}(r,i,s,o),s=0),[2]})})()},[2,{type:"dataLayer",config:i={settings:a},push:r,on:u,init:c,destroy:function(){return _async_to_generator(function(){var e;return _ts_generator(this,function(t){return e=a.name||"dataLayer",o&&o[e]&&Array.isArray(o[e]),[2]})})()}}]})})()},wt=mt;return vt=Ie,function(e,t,n,r){if(t&&"object"===(void 0===t?"undefined":_type_of(t))||"function"==typeof t){var o=!0,a=!1,i=void 0;try{for(var s,c=function(){var o=s.value;Ee.call(e,o)||o===n||Ae(e,o,{get:function(){return t[o]},enumerable:!(r=Ce(t,o))||r.enumerable})},u=qe(t)[Symbol.iterator]();!(o=(s=u.next()).done);o=!0)c()}catch(e){a=!0,i=e}finally{try{o||null==u.return||u.return()}finally{if(a)throw i}}}return e}(Ae({},"__esModule",{value:!0}),vt)}();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$meta": {
3
3
  "package": "@walkeros/web-source-datalayer",
4
- "version": "4.1.0-next-1778668930820",
4
+ "version": "4.1.0",
5
5
  "type": "source",
6
6
  "platform": [
7
7
  "web"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@walkeros/web-source-datalayer",
3
3
  "description": "DataLayer source for walkerOS",
4
- "version": "4.1.0-next-1778668930820",
4
+ "version": "4.1.0",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.mjs",
@@ -25,7 +25,8 @@
25
25
  "./walkerOS.json": "./dist/walkerOS.json"
26
26
  },
27
27
  "files": [
28
- "dist/**"
28
+ "dist/**",
29
+ "CHANGELOG.md"
29
30
  ],
30
31
  "scripts": {
31
32
  "build": "tsup --silent",
@@ -37,8 +38,8 @@
37
38
  "update": "npx npm-check-updates -u && npm update"
38
39
  },
39
40
  "dependencies": {
40
- "@walkeros/core": "4.1.0-next-1778668930820",
41
- "@walkeros/collector": "4.1.0-next-1778668930820"
41
+ "@walkeros/core": "4.1.0",
42
+ "@walkeros/collector": "4.1.0"
42
43
  },
43
44
  "devDependencies": {
44
45
  "@types/gtag.js": "^0.0.20"