@walkeros/web-source-cmp-cookiepro 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,268 @@
1
+ # @walkeros/web-source-cmp-cookiepro
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
+ - Updated dependencies [cb265eb]
41
+ - Updated dependencies [381dfe7]
42
+ - Updated dependencies [1524275]
43
+ - Updated dependencies [03d7055]
44
+ - @walkeros/collector@4.0.1
45
+ - @walkeros/core@4.0.1
46
+
47
+ ## 4.0.0
48
+
49
+ ### Major Changes
50
+
51
+ - 93ea9c4: Event model v4: breaking changes to the `Event`, `Source`, and
52
+ `Entity` shapes.
53
+ - `event.id` is now a W3C span_id (16 lowercase hex chars), generated by the
54
+ collector. Reference: W3C Trace Context (W3C Recommendation, January 2020).
55
+ - `event.version`, `event.group`, `event.count` are removed.
56
+ - `source.type` is now the source kind (e.g. `browser`, `gtag`, `mcp`, `cli`).
57
+ New `source.platform` holds the runtime (`web` | `server` | `app` | ...).
58
+ - `source.id` and `source.previous_id` are removed.
59
+ - Browser source now sets `source.url` and `source.referrer`.
60
+ - MCP source sets `source.tool` per emission. CLI source sets
61
+ `source.command`.
62
+ - `Entity.nested` and `Entity.context` are now optional. Root `event.nested`
63
+ and `event.context` remain required.
64
+ - Each source self-registers via TypeScript module augmentation of `SourceMap`
65
+ in `@walkeros/core`.
66
+ - App-side coordination (`/workspaces/developer/app`) is a follow-up plan, not
67
+ part of this release. Telemetry from v4 CLI/MCP will not validate against
68
+ the existing app schema until that follow-up ships.
69
+ - `Mapping.Rule.skip` is renamed to `Mapping.Rule.silent`. Customer flow.json
70
+ configs using `skip: true` in mapping rules must rename to `silent: true`.
71
+ Hard cut: no legacy alias, the field is gone.
72
+
73
+ ### Patch Changes
74
+
75
+ - Updated dependencies [93ea9c4]
76
+ - Updated dependencies [465775c]
77
+ - Updated dependencies [942a7fe]
78
+ - Updated dependencies [cfc7469]
79
+ - Updated dependencies [8e06b1f]
80
+ - Updated dependencies [3d50dd6]
81
+ - Updated dependencies [1ef33d9]
82
+ - @walkeros/core@4.0.0
83
+ - @walkeros/collector@4.0.0
84
+
85
+ ## 3.4.2
86
+
87
+ ### Patch Changes
88
+
89
+ - @walkeros/collector@3.4.2
90
+ - @walkeros/core@3.4.2
91
+
92
+ ## 3.4.1
93
+
94
+ ### Patch Changes
95
+
96
+ - Updated dependencies [12adf24]
97
+ - Updated dependencies [75aa26b]
98
+ - @walkeros/core@3.4.1
99
+ - @walkeros/collector@3.4.1
100
+
101
+ ## 3.4.0
102
+
103
+ ### Minor Changes
104
+
105
+ - 724f97e: Migrate every step example in every walkerOS package to the
106
+ standardized `[callable, ...args][]` shape introduced in `@walkeros/core`.
107
+ Every step example's `out` is now an array of effect tuples whose first
108
+ element is the callable's public SDK name (`'gtag'`, `'analytics.track'`,
109
+ `'fbq'`, `'dataLayer.push'`, `'sendServer'`, `'fetch'`, `'trackClient.track'`,
110
+ `'amplitude.track'`, `'fs.writeFile'`, `'producer.send'`, `'client.xadd'`,
111
+ `'client.send'`, `'dataset.table.insert'`, etc.). Source examples use `'elb'`
112
+ as the callable; transformer examples use the reserved `'return'` keyword;
113
+ store examples use store-operation callables (`'get'`, `'set'`). Tests capture
114
+ real calls on each component's spy and assert against `example.out` directly —
115
+ the hardcoded `PACKAGE_CALLS` registry in the app is no longer consulted
116
+ (emptied; plan #3 removes it structurally).
117
+
118
+ ### Patch Changes
119
+
120
+ - Updated dependencies [74940cc]
121
+ - Updated dependencies [525f5d9]
122
+ - @walkeros/core@3.4.0
123
+ - @walkeros/collector@3.4.0
124
+
125
+ ## 3.3.1
126
+
127
+ ### Patch Changes
128
+
129
+ - Updated dependencies [b10144a]
130
+ - Updated dependencies [206185a]
131
+ - Updated dependencies [50e5d09]
132
+ - Updated dependencies [32ff626]
133
+ - @walkeros/collector@3.3.1
134
+ - @walkeros/core@3.3.1
135
+
136
+ ## 3.3.0
137
+
138
+ ### Patch Changes
139
+
140
+ - Updated dependencies [2849acb]
141
+ - Updated dependencies [08c365a]
142
+ - Updated dependencies [08c365a]
143
+ - Updated dependencies [08c365a]
144
+ - Updated dependencies [08c365a]
145
+ - @walkeros/core@3.3.0
146
+ - @walkeros/collector@3.3.0
147
+
148
+ ## 3.2.0
149
+
150
+ ### Patch Changes
151
+
152
+ - Updated dependencies [eb865e1]
153
+ - Updated dependencies [c0a53f9]
154
+ - Updated dependencies [8cdc0bb]
155
+ - Updated dependencies [f007c9f]
156
+ - Updated dependencies [bf2dc5b]
157
+ - Updated dependencies [da0b640]
158
+ - Updated dependencies [a5d25bc]
159
+ - Updated dependencies [9a99298]
160
+ - Updated dependencies [884527d]
161
+ - @walkeros/core@3.2.0
162
+ - @walkeros/collector@3.2.0
163
+
164
+ ## 3.1.1
165
+
166
+ ### Patch Changes
167
+
168
+ - @walkeros/core@3.1.1
169
+ - @walkeros/collector@3.1.1
170
+
171
+ ## 3.1.0
172
+
173
+ ### Minor Changes
174
+
175
+ - 956c337: Add createTrigger following unified Trigger.CreateFn interface. Step
176
+ examples updated with trigger metadata.
177
+
178
+ ### Patch Changes
179
+
180
+ - Updated dependencies [a9149e4]
181
+ - Updated dependencies [dfc6738]
182
+ - Updated dependencies [966342b]
183
+ - Updated dependencies [bee8ba7]
184
+ - Updated dependencies [966342b]
185
+ - Updated dependencies [df990d4]
186
+ - @walkeros/collector@3.1.0
187
+ - @walkeros/core@3.1.0
188
+
189
+ ## 3.0.2
190
+
191
+ ### Patch Changes
192
+
193
+ - @walkeros/core@3.0.2
194
+ - @walkeros/collector@3.0.2
195
+
196
+ ## 3.0.1
197
+
198
+ ### Patch Changes
199
+
200
+ - @walkeros/core@3.0.1
201
+ - @walkeros/collector@3.0.1
202
+
203
+ ## 3.0.0
204
+
205
+ ### Patch Changes
206
+
207
+ - 499e27a: Add sideEffects declarations to all packages for bundler tree-shaking
208
+ support.
209
+ - Updated dependencies [2b259b6]
210
+ - Updated dependencies [2614014]
211
+ - Updated dependencies [6ae0ee3]
212
+ - Updated dependencies [37299a9]
213
+ - Updated dependencies [499e27a]
214
+ - Updated dependencies [499e27a]
215
+ - Updated dependencies [0e5eede]
216
+ - Updated dependencies [d11f574]
217
+ - Updated dependencies [d11f574]
218
+ - Updated dependencies [1fe337a]
219
+ - Updated dependencies [5cb84c1]
220
+ - Updated dependencies [23f218a]
221
+ - Updated dependencies [499e27a]
222
+ - Updated dependencies [c83d909]
223
+ - Updated dependencies [a2aa491]
224
+ - Updated dependencies [b6c8fa8]
225
+ - @walkeros/core@3.0.0
226
+ - @walkeros/collector@3.0.0
227
+
228
+ ## 2.1.1
229
+
230
+ ### Patch Changes
231
+
232
+ - Updated dependencies [fab477d]
233
+ - @walkeros/core@2.1.1
234
+ - @walkeros/collector@2.1.1
235
+
236
+ ## 2.1.0
237
+
238
+ ### Minor Changes
239
+
240
+ - 97df0b2: Step examples: upgrade all packages to blueprint pattern with inline
241
+ mapping, no intermediate variables, no `all` export
242
+
243
+ ### Patch Changes
244
+
245
+ - 60f0a1c: Add setup functions and renderer metadata for source simulation
246
+ - Updated dependencies [7fc4cee]
247
+ - Updated dependencies [7fc4cee]
248
+ - Updated dependencies [cb2da05]
249
+ - Updated dependencies [2bbe8c8]
250
+ - Updated dependencies [3eb6416]
251
+ - Updated dependencies [02a7958]
252
+ - Updated dependencies [97df0b2]
253
+ - Updated dependencies [97df0b2]
254
+ - Updated dependencies [026c412]
255
+ - Updated dependencies [7d38d9d]
256
+ - @walkeros/core@2.1.0
257
+ - @walkeros/collector@2.1.0
258
+
259
+ ## 2.0.1
260
+
261
+ ## 0.1.1
262
+
263
+ ### Patch Changes
264
+
265
+ - Updated dependencies [32bfc92]
266
+ - Updated dependencies [7b2d750]
267
+ - @walkeros/collector@2.0.0
268
+ - @walkeros/core@1.4.0
package/README.md CHANGED
@@ -1,10 +1,18 @@
1
+ <p align="left">
2
+ <a href="https://www.walkeros.io">
3
+ <img alt="walkerOS" title="walkerOS" src="https://www.walkeros.io/img/walkerOS_logo.svg" width="256px"/>
4
+ </a>
5
+ </p>
6
+
1
7
  # @walkeros/web-source-cmp-cookiepro
2
8
 
3
- CookiePro/OneTrust consent management source for walkerOS.
9
+ Integrates CookiePro/OneTrust consent management with walkerOS by mapping
10
+ CookiePro category IDs to walkerOS consent groups.
4
11
 
5
- This source listens to
6
- [CookiePro/OneTrust](https://www.onetrust.com/products/cookie-consent/) CMP
7
- events and translates consent states to walkerOS consent commands.
12
+ [Documentation](https://www.walkeros.io/docs/sources/web/cmps/cookiepro) &bull;
13
+ [NPM Package](https://www.npmjs.com/package/@walkeros/web-source-cmp-cookiepro)
14
+ &bull;
15
+ [Source Code](https://github.com/elbwalker/walkerOS/tree/main/packages/web/sources/cmps/cookiepro)
8
16
 
9
17
  ## Installation
10
18
 
@@ -12,12 +20,11 @@ events and translates consent states to walkerOS consent commands.
12
20
  npm install @walkeros/web-source-cmp-cookiepro
13
21
  ```
14
22
 
15
- ## Usage
23
+ ## Quick start
16
24
 
17
- ```typescript
25
+ ```ts
18
26
  import { startFlow } from '@walkeros/collector';
19
27
  import { sourceCookiePro } from '@walkeros/web-source-cmp-cookiepro';
20
- // import { destinationGtag } from '@walkeros/web-destination-gtag';
21
28
 
22
29
  await startFlow({
23
30
  sources: {
@@ -25,134 +32,20 @@ await startFlow({
25
32
  code: sourceCookiePro,
26
33
  },
27
34
  },
28
- destinations: {
29
- gtag: {
30
- code: destinationGtag,
31
- config: {
32
- consent: { analytics: true }, // Requires analytics consent
33
- },
34
- },
35
- },
36
35
  });
37
36
  ```
38
37
 
39
- ## Configuration
40
-
41
- ### Settings
42
-
43
- | Setting | Type | Default | Description |
44
- | -------------- | ------------------------ | ------------ | -------------------------------------------------- |
45
- | `categoryMap` | `Record<string, string>` | See below | Maps CookiePro category IDs to walkerOS groups |
46
- | `explicitOnly` | `boolean` | `true` | Only process explicit consent (user made a choice) |
47
- | `globalName` | `string` | `'OneTrust'` | Custom name for `window.OneTrust` object |
48
-
49
- ### Default category mapping
50
-
51
- ```typescript
52
- {
53
- C0001: 'functional', // Strictly Necessary
54
- C0002: 'analytics', // Performance
55
- C0003: 'functional', // Functional
56
- C0004: 'marketing', // Targeting
57
- C0005: 'marketing', // Social Media
58
- }
59
- ```
60
-
61
- Category ID comparison is case-insensitive. Unmapped category IDs are ignored
62
- (not passed through), since CookiePro's opaque IDs are meaningless without a
63
- mapping. All mapped walkerOS groups receive explicit `true`/`false` values --
64
- absent groups are set to `false` so destinations know which consent is denied.
65
-
66
- ### Custom mapping example
67
-
68
- ```typescript
69
- import { startFlow } from '@walkeros/collector';
70
- import { sourceCookiePro } from '@walkeros/web-source-cmp-cookiepro';
71
-
72
- await startFlow({
73
- sources: {
74
- consent: {
75
- code: sourceCookiePro,
76
- config: {
77
- settings: {
78
- categoryMap: {
79
- C0002: 'statistics', // Use 'statistics' instead of 'analytics'
80
- },
81
- explicitOnly: true,
82
- },
83
- },
84
- },
85
- },
86
- });
87
- ```
88
-
89
- Custom entries are merged with the default mapping. Specify only the categories
90
- you want to override -- all other defaults remain active.
91
-
92
- ## How it works
93
-
94
- 1. **Already loaded**: When the source initializes, it checks if
95
- `window.OneTrust` and `window.OptanonActiveGroups` already exist. If so,
96
- processes consent immediately.
97
-
98
- 2. **OptanonWrapper**: If the SDK isn't loaded yet, wraps the global
99
- `OptanonWrapper` callback (preserving any existing wrapper). OneTrust calls
100
- this function on SDK init. The wrapper self-unwraps after the first call,
101
- leaving the event listener to handle subsequent changes.
102
-
103
- 3. **OneTrustGroupsUpdated event**: Listens for the `OneTrustGroupsUpdated`
104
- window event, which fires on every consent change.
105
-
106
- 4. **Parsing**: Splits the `OptanonActiveGroups` comma-separated string, maps
107
- category IDs through `categoryMap`, and calls `elb('walker consent', state)`.
108
- Sets explicit `false` for all mapped groups that are not in the active list.
109
-
110
- ### Timing considerations
111
-
112
- The source handles all timing scenarios:
113
-
114
- - **SDK loads before source:** The "already loaded" check reads existing consent
115
- from `OptanonActiveGroups` immediately. The `OneTrustGroupsUpdated` listener
116
- catches future changes.
117
- - **Source loads before SDK:** The `OptanonWrapper` wrapping intercepts the
118
- SDK's init callback. The event listener catches subsequent changes.
119
- - **`explicitOnly` (default):** Uses `OneTrust.IsAlertBoxClosed()` to determine
120
- if the user has actively interacted with the consent banner. Implicit/default
121
- consent is ignored.
122
-
123
- ### OptanonWrapper wrapping
124
-
125
- The `OptanonWrapper` function-reassignment pattern is the standard OneTrust
126
- integration approach. Multiple scripts can wrap it in a chain (each preserving
127
- the previous). On `destroy()`, the source restores the wrapper it captured at
128
- init time. If another script wraps `OptanonWrapper` after this source, that
129
- wrapper will be lost on destroy. This is inherent to the pattern.
130
-
131
- ## CookiePro API reference
132
-
133
- - `window.OptanonActiveGroups`: Comma-separated string of active category IDs
134
- (e.g., `",C0001,C0003,"`)
135
- - `window.OneTrust.IsAlertBoxClosed()`: Returns `true` if user made explicit
136
- choice
137
- - `window.OptanonWrapper()`: Global callback invoked by SDK on load and consent
138
- changes
139
- - `OneTrustGroupsUpdated`: Window event fired on consent changes (event.detail
140
- is an array of active group IDs)
141
-
142
- ## walkerOS.json
143
-
144
- ```json
145
- { "walkerOS": { "type": "source", "platform": "web" } }
146
- ```
147
-
148
- ## Type definitions
38
+ ## Documentation
149
39
 
150
- See [src/types/index.ts](./src/types/index.ts) for TypeScript interfaces.
40
+ Full configuration, mapping, and examples live in the docs:
41
+ **https://www.walkeros.io/docs/sources/web/cmps/cookiepro**
151
42
 
152
- ## Related
43
+ ## Contribute
153
44
 
154
- - [Consent management guide](https://www.walkeros.io/docs/guides/consent)
155
- - [CookiePro documentation](https://www.walkeros.io/docs/sources/web/cmps/cookiepro)
45
+ Feel free to contribute by submitting an
46
+ [issue](https://github.com/elbwalker/walkerOS/issues), starting a
47
+ [discussion](https://github.com/elbwalker/walkerOS/discussions), or getting in
48
+ [contact](https://calendly.com/elb-alexander/30min).
156
49
 
157
50
  ## License
158
51
 
@@ -1 +1 @@
1
- "use strict";var SourceCookiePro=(()=>{var e=Object.defineProperty,n=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,r=(n,t)=>{for(var o in t)e(n,o,{get:t[o],enumerable:!0})},s={};r(s,{DEFAULT_CATEGORY_MAP:()=>ze,SourceCookiePro:()=>i,analyticsOnlyConsent:()=>l,analyticsOnlyMapped:()=>m,createMockElbFn:()=>w,createMockOneTrustAPI:()=>O,createTrigger:()=>Fe,customCategoryConsent:()=>g,default:()=>Ye,emptyConsent:()=>d,fullConsent:()=>a,fullConsentMapped:()=>p,marketingOnlyConsent:()=>f,marketingOnlyMapped:()=>h,minimalConsent:()=>u,minimalConsentMapped:()=>y,noopLogger:()=>k,partialConsent:()=>c,partialConsentMapped:()=>v,sourceCookiePro:()=>Je,step:()=>j,trigger:()=>Ve});var i={},a=",C0001,C0002,C0003,C0004,C0005,",c=",C0001,C0003,",u=",C0001,",l=",C0001,C0002,",f=",C0001,C0004,",d="",g=",C0001,CUSTOM01,CUSTOM02,",p={functional:!0,analytics:!0,marketing:!0},v={functional:!0,analytics:!1,marketing:!1},y={functional:!0,analytics:!1,marketing:!1},m={functional:!0,analytics:!0,marketing:!1},h={functional:!0,analytics:!1,marketing:!0},b=()=>{},w=()=>()=>Promise.resolve({ok:!0}),k={error:b,warn:b,info:b,debug:b,throw:e=>{throw"string"==typeof e?new Error(e):e},json:b,scope:()=>k},O=(e=!1)=>({IsAlertBoxClosed:()=>e}),j={};r(j,{categoryMapOverride:()=>A,fullConsent:()=>C,minimalConsent:()=>x,sdkLoadedDetection:()=>S});var C={title:"Full consent",description:"A CookiePro OptanonConsent cookie listing all groups is translated into a walker consent command with all true.",trigger:{type:"consent"},in:",C0001,C0002,C0003,C0004,C0005,",out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!0}]]},x={title:"Minimal consent",description:"Only the necessary CookiePro group is granted so analytics and marketing map to false in the walker consent command.",trigger:{type:"consent"},in:",C0001,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!1}]]},A={title:"Category map override",description:"Custom categoryMap remaps C0002 from analytics to statistics",trigger:{type:"consent"},in:",C0001,C0002,",mapping:{categoryMap:{C0002:"statistics"}},out:[["elb","walker consent",{functional:!0,statistics:!0,marketing:!1}]]},S={title:"SDK loaded detection",description:"Immediate detection when OneTrust SDK is already loaded with IsAlertBoxClosed() = true",trigger:{type:"consent"},in:",C0001,C0003,C0004,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!0}]]},q=Object.defineProperty;((e,n)=>{for(var t in n)q(e,t,{get:n[t],enumerable:!0})})({},{Level:()=>P});var E,P=((E=P||{})[E.ERROR=0]="ERROR",E[E.WARN=1]="WARN",E[E.INFO=2]="INFO",E[E.DEBUG=3]="DEBUG",E);function $(e){return{_meta:{hops:0,path:[e]}}}var M={merge:!0,shallow:!0,extend:!0};function D(e,n={},t={}){t={...M,...t};const o=Object.entries(n).reduce((n,[o,r])=>{const s=e[o];return t.merge&&Array.isArray(s)&&Array.isArray(r)?n[o]=r.reduce((e,n)=>e.includes(n)?e:[...e,n],[...s]):(t.extend||o in e)&&(n[o]=r),n},{});return t.shallow?{...e,...o}:(Object.assign(e,o),e)}function I(e){return Array.isArray(e)}function T(e){return void 0!==e}function _(e){return"function"==typeof e}function R(e){return"object"==typeof e&&null!==e&&!I(e)&&"[object Object]"===Object.prototype.toString.call(e)}function N(e){return"string"==typeof e}function B(e,n=new WeakMap){if("object"!=typeof e||null===e)return e;if(n.has(e))return n.get(e);const t=Object.prototype.toString.call(e);if("[object Object]"===t){const t={};n.set(e,t);for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=B(e[o],n));return t}if("[object Array]"===t){const t=[];return n.set(e,t),e.forEach(e=>{t.push(B(e,n))}),t}if("[object Date]"===t)return new Date(e.getTime());if("[object RegExp]"===t){const n=e;return new RegExp(n.source,n.flags)}return e}function G(e,n="",t){const o=n.split(".");let r=e;for(let e=0;e<o.length;e++){const n=o[e];if("*"===n&&I(r)){const n=o.slice(e+1).join("."),s=[];for(const e of r){const o=G(e,n,t);s.push(o)}return s}if(r=r instanceof Object?r[n]:void 0,void 0===r)break}return T(r)?r:t}function U(e,n,t){if(!R(e))return e;const o=B(e),r=n.split(".");let s=o;for(let e=0;e<r.length;e++){const n=r[e];e===r.length-1?s[n]=t:(n in s&&"object"==typeof s[n]&&null!==s[n]||(s[n]={}),s=s[n])}return o}var H={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 W(e,n={},t={}){const o={...n,...t},r={};let s=!e||0===Object.keys(e).length;return Object.keys(o).forEach(n=>{o[n]&&(r[n]=!0,e&&e[n]&&(s=!0))}),!!s&&r}function L(){let e="";for(let n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}function K(e=6,n){if(n){const t=n.length;let o="";for(let r=0;r<e;r++)o+=n[Math.random()*t|0];return o}let t="";for(let n=36;t.length<e;)t+=(Math.random()*n|0).toString(n);return t}function F(e,n=1e3,t=!1){let o,r=null,s=!1;return(...i)=>new Promise(a=>{const c=t&&!s;r&&clearTimeout(r),r=setTimeout(()=>{r=null,t&&!s||(o=e(...i),a(o))},n),c&&(s=!0,o=e(...i),a(o))})}function V(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function z(e,n){let t,o={};return e instanceof Error?(t=e.message,o.error=V(e)):t=e,void 0!==n&&(n instanceof Error?o.error=V(n):"object"==typeof n&&null!==n?(o={...o,...n},"error"in o&&o.error instanceof Error&&(o.error=V(o.error))):o.value=n),{message:t,context:o}}var J=(e,n,t,o)=>{const r=`${P[e]}${o.length>0?` [${o.join(":")}]`:""}`,s=Object.keys(t).length>0,i=0===e?console.error:1===e?console.warn:console.log;s?i(r,n,t):i(r,n)};function Y(e={}){return Q({level:void 0!==e.level?(n=e.level,"string"==typeof n?P[n]:n):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var n}function Q(e){const{level:n,handler:t,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=n){const n=z(o,s);t?t(e,n.message,n.context,r,J):J(e,n.message,n.context,r)}};return{error:(e,n)=>s(0,e,n),warn:(e,n)=>s(1,e,n),info:(e,n)=>s(2,e,n),debug:(e,n)=>s(3,e,n),throw:(e,n)=>{const o=z(e,n);throw t?t(0,o.message,o.context,r,J):J(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>Q({level:n,handler:t,jsonHandler:o,scope:[...r,e]})}}function X(e){return function(e){return"boolean"==typeof e}(e)||N(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!T(e)||I(e)&&e.every(X)||R(e)&&Object.values(e).every(X)}function Z(e){return X(e)?e:void 0}function ee(e,n,t){return function(...o){try{return e(...o)}catch(e){if(!n)return;return n(e)}finally{null==t||t()}}}function ne(e,n,t){return async function(...o){try{return await e(...o)}catch(e){if(!n)return;return await n(e)}finally{await(null==t?void 0:t())}}}async function te(e,n={},t={}){var o,r;if(!T(e))return;const s=R(e)&&e.consent||t.consent||(null==(o=t.collector)?void 0:o.consent),i=null!=(r=t.event)?r:R(e)?e:{};if(!t.collector)throw new Error("getMappingValue: context.collector is required");const a={event:i,mapping:n,collector:t.collector,logger:t.collector.logger,consent:s},c=I(n)?n:[n];for(const n of c){const t=await ne(oe)(e,n,{...a,mapping:n});if(T(t))return t}}async function oe(e,n,t){return(I(n)?n:[n]).reduce(async(n,o)=>{const r=await n;if(r)return r;const s=N(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,v={...t,mapping:o};if(i&&!await ne(i)(e,v))return;if(a&&!W(a,v.consent))return p;let y=T(p)?p:e;if(c&&(y=await ne(c)(e,v)),u&&(y=G(e,u,p)),l){const[n,t]=l,o="this"===n?[e]:await te(e,n,v);I(o)&&(y=(await Promise.all(o.map(e=>te(e,t,v)))).filter(T))}else f?y=await Object.entries(f).reduce(async(n,[t,o])=>{const r=await n,s=await te(e,o,v);return T(s)&&(r[t]=s),r},Promise.resolve({})):d&&(y=await Promise.all(d.map(n=>oe(e,n,v))));g&&!await ne(g)(y,v)&&(y=void 0);const m=Z(y);return T(m)?m:Z(p)},Promise.resolve(void 0))}async function re(e,n,t){var o;n.policy&&await Promise.all(Object.entries(n.policy).map(async([n,o])=>{const r=await te(e,o,{collector:t,event:e});e=U(e,n,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,n,t){var o;const[r,s]=(e.name||"").split(" ");if(!n||!r||!s)return{};let i,a="",c=r,u=s;const l=n=>{if(n)return(I(n)?n:[n]).find(n=>{if(!n.condition)return!0;if(!t)return Boolean(n.condition(e,void 0));const o={event:e,mapping:n,collector:t,logger:t.logger,consent:R(e)&&e.consent||t.consent};return Boolean(n.condition(e,o))})};n[c]||(c="*");const f=n[c];return f&&(f[u]||(u="*"),i=l(f[u])),i||(c="*",u="*",i=l(null==(o=n[c])?void 0:o[u])),i&&(a=`${c} ${u}`),{eventMapping:i,mappingKey:a}}(e,n.mapping,t);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([n,o])=>{const r=await te(e,o,{collector:t,event:e});e=U(e,n,r)}));let i=n.data&&await te(e,n.data,{collector:t,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 n=r.data&&await te(e,r.data,{collector:t,event:e});i=R(i)&&R(n)?D(i,n):n}}const c=null!=(o=null==r?void 0:r.include)?o:n.include;if(c&&c.length>0){const n=function(e,n){const t={},o=n.includes("all")?Object.keys(H):n;for(const n of o){const o=H[n];if(!o)continue;const r=o(e);if(R(r))for(const[e,o]of Object.entries(r)){if(void 0===o)continue;const r="context"===n&&Array.isArray(o)?o[0]:o;t[`${n}_${e}`]=r}}return t}(e,c);Object.keys(n).length>0&&(i=R(i)?D(n,i):null!=i?i:n)}return{event:e,data:i,mapping:r,mappingKey:s,ignore:!1,silent:a}}function se(e,n,t,o){return function(...r){let s;const i="pre"+n,a="post"+n,c=t[i],u=t[a],l=(e,n)=>{o?o.warn(e,{error:n}):console.warn(e,n)};if(c)try{s=c({fn:e},...r)}catch(n){l(`Hook ${String(i)} failed, falling back to original function`,n),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 ie(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const n=e.and.map(ie);return e=>n.every(n=>n(e))}if("or"in e){const n=e.or.map(ie);return e=>n.some(n=>n(e))}return function(e){const{key:n,operator:t,value:o,not:r}=e,s=function(e,n){switch(e){case"eq":return e=>String(null!=e?e:"")===n;case"contains":return e=>String(null!=e?e:"").includes(n);case"prefix":return e=>String(null!=e?e:"").startsWith(n);case"suffix":return e=>String(null!=e?e:"").endsWith(n);case"regex":{const e=new RegExp(n);return n=>e.test(String(null!=n?n:""))}case"gt":{const e=Number(n);return n=>Number(n)>e}case"lt":{const e=Number(n);return n=>Number(n)<e}case"exists":return e=>null!=e}}(t,o);return e=>{const t=G(e,n),o=s(t);return r?!o:o}}(e)}function ae(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(n=e)&&null!==n&&!Array.isArray(n)&&("match"in n||"next"in n||"case"in n);var n})}(e))return ae({case:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const n=[];for(const t of e){const e=ae(t);void 0!==e&&n.push(e)}if(0===n.length)return;return{type:"sequence",value:n}}const n=e;if("next"in n&&void 0!==n.next)return n.match?{type:"gate",match:ie(n.match),next:ae(n.next)}:ae(n.next);if("case"in n&&n.case){const e=n.case.map(e=>{var n;if("string"==typeof e)return{match:()=>!0,next:{type:"static",value:e}};if(Array.isArray(e))return{match:()=>!0,next:ae(e)};const t=e;return{match:t.match?ie(t.match):()=>!0,next:null!=(n=ae(t))?n:{type:"chain",value:[]}}});return n.match?{type:"gate",match:ie(n.match),next:{type:"case",routes:e}}:{type:"case",routes:e}}return n.match?{type:"gate",match:ie(n.match)}:void 0}function ce(e,n={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(n))return;return ce(e.next,n)}if("sequence"===e.type){const t=[];for(const o of e.value){const e=ce(o,n);void 0!==e&&(Array.isArray(e)?t.push(...e):t.push(e))}return t.length>0?t:void 0}for(const t of e.routes)if(t.match(n))return ce(t.next,n)}}function ue(e,n){const t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t}function le(e){var n;return{stop:null!=(n=e.stop)&&n,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?ie(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}function fe(e,n,t,o){const r=e.rules.find(e=>e.match(t));if(!r)return null;const s=r.key.map(e=>{var n;return String(null!=(n=G(t,e))?n:"")});if(s.every(e=>""===e))return null;const i=s.join(":"),a=null!=o?o:e.namespace,c=a?`${a}:${i}`:i,u=n.get(c);return void 0!==u?{status:"HIT",key:c,value:u,rule:r}:{status:"MISS",key:c,rule:r}}function de(e,n,t,o){e.set(n,t,1e3*o)}async function ge(e,n,t,o){if(!n)return e;let r=e;for(const[e,s]of Object.entries(n))r=U(r,e,await te(t,s,{collector:o}));return r}var pe=new Set(["code","package","before","next","cache","mapping","config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"]);function ve(e){for(const n of Object.keys(e))if(!pe.has(n))return{ok:!1,code:"UNKNOWN_KEY",key:n,reason:`Unknown key "${n}". Allowed: ${[...pe].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 ye={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 me(e,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache}function he(e){var n;const t={};for(const[o,r]of Object.entries(e)){const e=ae(null==(n=r.config)?void 0:n.next);t[o]="static"===(null==e?void 0:e.type)||"chain"===(null==e?void 0:e.type)?{next:e.value}:{}}return t}function be(e,n){const t=e.config||{},o=e[n];return void 0!==o?{config:{...t,[n]:o},chainValue:o}:{config:t,chainValue:void 0}}function we(e,n={}){if(!e)return[];if(Array.isArray(e))return e;const t=[],o=new Set;let r=e;for(;r&&n[r]&&!o.has(r);){o.add(r),t.push(r);const e=n[r].next;if(Array.isArray(e)){t.push(...e);break}r=e}return t}async function ke(e,n,t){if(n.init&&!n.config.init){const o=n.type||"unknown",r=e.logger.scope(`transformer:${o}`),s={collector:e,logger:r,id:t,ingest:$(t),config:n.config,env:xe(n.config.env)};r.debug("init");const i=await se(n.init,"TransformerInit",e.hooks,e.logger)(s);if(!1===i)return!1;n.config={...i||n.config,env:(null==i?void 0:i.env)||n.config.env,init:!0},r.debug("init done")}return!0}async function Oe(e,n,t,o,r,s){const i=n.type||"unknown",a=e.logger.scope(`transformer:${i}`),c={collector:e,logger:a,id:t,ingest:r,config:n.config,env:{...xe(n.config.env),...s?{respond:s}:{}}};a.debug("push",{event:o.name});const u=await se(n.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),u}function je(e,n){var t;if(e)return null!=(t=ce(ae(e),n))?t:void 0}async function Ce(e,n,t,o,r,s,i){var a,c,u,l,f,d,g;i&&(null==r?void 0:r._meta)&&(r._meta.chainPath=i);let p=o,v=s;for(const o of t){const s=n[o];if(!s){e.logger.warn(`Transformer not found: ${o}`);continue}if(r&&r._meta&&r._meta.path.length>256)return e.logger.error(`Max path length exceeded at ${o}`),{event:null,respond:v};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await ne(ke)(e,s,o))return e.logger.error(`Transformer init failed: ${o}`),{event:null,respond:v};if(i&&void 0!==(null==(c=null==(a=s.config)?void 0:a.chainMocks)?void 0:c[i])){const n=s.config.chainMocks[i];e.logger.scope(`transformer:${s.type||"unknown"}`).debug("chainMock",{chain:i}),p=n;continue}if(void 0!==(null==(u=s.config)?void 0:u.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),p=s.config.mock;continue}if(null==(l=s.config)?void 0:l.disabled)continue;const y=null==(f=s.config)?void 0:f.cache,m=y?le(y):void 0,h=m?me(m,e):void 0;let b;if(m&&h){const e=fe(m,h,ue(r,p));if("HIT"===(null==e?void 0:e.status)&&e.value){if(p=e.value,m.stop)return{event:p,respond:v,stopped:!0};continue}"MISS"===(null==e?void 0:e.status)&&(b={key:e.key,ttl:e.rule.ttl})}const w=s.config.before;if(w){const t=we(je(w,ue(r,p)),he(n));if(t.length>0){const o=await Ce(e,n,t,p,r,v,i);if(null===o.event)return{event:null,respond:null!=(d=o.respond)?d:v};if(o.stopped)return{event:Array.isArray(o.event)?o.event[0]:o.event,respond:null!=(g=o.respond)?g:v,stopped:!0};o.respond&&(v=o.respond),p=Array.isArray(o.event)?o.event[0]:o.event}}const k=await ne(Oe,n=>(e.logger.scope(`transformer:${s.type||"unknown"}`).error("Push failed",{error:n}),!1))(e,s,o,p,r,v);if(!1===k)return{event:null,respond:v};if(Array.isArray(k)){const s=t.slice(t.indexOf(o)+1),a=await Promise.all(k.map(async t=>{const o=t.event||p,a=r?{...r,_meta:{...r._meta,path:[...r._meta.path]}}:$("unknown");if(t.next){const r=je(t.next,ue(a,o));if(r){const t=we(r,he(n));if(t.length>0)return Ce(e,n,t,o,a,v,i)}return{event:o,respond:v}}return s.length>0?Ce(e,n,s,o,a,v,i):{event:o,respond:v}}));let c=v;const u=[];for(const e of a.flat())if(null!==e)if(e&&"object"==typeof e&&"event"in e){const n=e;if(n.respond&&(c=n.respond),null===n.event)continue;Array.isArray(n.event)?u.push(...n.event):u.push(n.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:t,respond:o,next:s}=k;if(o&&(v=o),s){const o=je(s,ue(r,p));if(!o){t&&(p=t);continue}const a=we(o,he(n));return a.length>0?Ce(e,n,a,t||p,r,v,i):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:v})}t&&(p=t)}b&&h&&de(h,b.key,p,b.ttl);const O=s.config.next?ae(s.config.next):void 0,j="case"===(null==O?void 0:O.type)||"gate"===(null==O?void 0:O.type)||"sequence"===(null==O?void 0:O.type);if((!k||"object"==typeof k&&!k.next)&&O&&j){const t=ce(O,ue(r,p));if(t){const o=we(t,he(n));if(o.length>0)return Ce(e,n,o,p,r,v,i)}return{event:p,respond:v}}}return{event:p,respond:v}}function xe(e){return e&&R(e)?e:{}}async function Ae(e,n){var t;if(!n.on||!(null==(t=n.queueOn)?void 0:t.length))return;const o=n.queueOn;n.queueOn=[];for(const{type:e,data:t}of o)await ne(n.on)(e,t)}function Se(e){var n;return Boolean(e.config.init)&&!(null==(n=e.config.require)?void 0:n.length)}async function qe(e,n,t){var o;const{code:r,config:s={},env:i={},primary:a,next:c,before:u,cache:l}=t;let f,d=$(n);const g=l?le({...l,stop:null==(o=l.stop)||o}):void 0,p=ae(c),v="static"!==(null==p?void 0:p.type)&&"chain"!==(null==p?void 0:p.type)||!p?void 0:we(ce(p),he(e.transformers)),y=ae(u),m="static"!==(null==y?void 0:y.type)&&"chain"!==(null==y?void 0:y.type)||!y?void 0:we(ce(y),he(e.transformers)),h=e.logger.scope("source").scope(n),b={push:async(t,o={})=>{let r;const i=null!=m?m:y?we(ce(y,ue(d)),he(e.transformers)):[];let a=[t];if(i.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await Ce(e,e.transformers,i,t,d,f,`source.${n}.before`);if(null===o.event)return{ok:!0};if(o.stopped)return o.respond&&(f=o.respond),{ok:!0};o.respond&&(f=o.respond),a=Array.isArray(o.event)?o.event:[o.event]}if(g){const n=me(g,e);if(n){const t=ue(d),o=fe(g,n,t);if(o){if("HIT"===o.status&&void 0!==o.value&&g.stop){let n=o.value;return o.rule.update&&(n=await ge(n,o.rule.update,{...t,cache:{status:"HIT"}},e)),null==f||f(n),{ok:!0}}if("MISS"===o.status&&g.stop&&f){const s=f,i=o.rule.update,a={...t,cache:{status:"MISS"}},c=o.key,u=o.rule.ttl;f=t=>{de(n,c,t,u),i?r=(async()=>{const n=await ge(t,i,a,e);s(n)})():s(t)}}"MISS"!==o.status||g.stop||de(n,o.key,!0,o.rule.ttl)}}}const c=null!=v?v:p?we(ce(p,ue(d)),he(e.transformers)):[];let u={ok:!0};for(const t of a)u=await e.push(t,{...o,id:n,ingest:d,respond:f,mapping:s,preChain:c});return r&&await r,u},command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:h,...i},w={collector:e,logger:h,id:n,config:s,env:b,setIngest:async t=>{if(!s.ingest)return void(d=$(n));const o=await te(t,s.ingest,{collector:e}),r=$(n);d={...r,...o,_meta:r._meta}},setRespond:e=>{f=e}},k=await ne(r)(w);if(!k)return;const O=k.type||"unknown",j=e.logger.scope(O).scope(n);return b.logger=j,a&&(k.config={...k.config,primary:a}),k}function Ee(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}}function Pe(e,n,t,o,r){if(!n.on)return;const s=n.type||"unknown",i=e.logger.scope(s).scope("on").scope(o),a={collector:e,logger:i,id:t,config:n.config,data:r,env:Be(n.env,n.config.env)};ee(n.on)(o,a)}function $e(e,n,t,o){let r;switch(n){case ye.Consent:r=o||e.consent;break;case ye.Session:r=e.session;break;case ye.User:r=o||e.user;break;case ye.Custom:r=o||e.custom;break;case ye.Globals:r=o||e.globals;break;case ye.Config:r=o||e.config;break;case ye.Ready:case ye.Run:default:r=void 0}if(t.length)switch(n){case ye.Consent:!function(e,n,t){const o=t||e.consent,r=Ee(e,ye.Consent);n.forEach(e=>{Object.keys(o).filter(n=>n in e).forEach(n=>{ee(e[n])(o,r)})})}(e,t,o);break;case ye.Ready:!function(e,n){if(!e.allowed)return;const t=Ee(e,ye.Ready);n.forEach(e=>{ee(e)(void 0,t)})}(e,t);break;case ye.Run:!function(e,n){if(!e.allowed)return;const t=Ee(e,ye.Run);n.forEach(e=>{ee(e)(void 0,t)})}(e,t);break;case ye.Session:!function(e,n){if(!e.session)return;const t=Ee(e,ye.Session);n.forEach(n=>{ee(n)(e.session,t)})}(e,t);break;default:{const o=Ee(e,n);t.forEach(e=>{"function"==typeof e&&ee(e)(r,o)});break}}}function Me(e,n,t,o){if(!e)return[];const r=ce(null!=n?n:ae(e),ue(o));return r?we(r,t):[]}async function De(e,n,t){const{code:o,config:r={},env:s={},before:i,next:a,cache:c}=n;if(!_(o.push))return Re({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const u=t||r||{init:!1};let l=i?{...u,before:i}:{...u};a&&(l={...l,next:a}),c&&(l={...l,cache:c});const f={...o,config:l,env:Be(o.env,s)};let d=f.config.id;if(!d)do{d=K(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[d]);return e.destinations[d]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),Ie(e,void 0,{},{[d]:f})}async function Ie(e,n,t={},o){const{allowed:r,consent:s,globals:i,user:a}=e;if(!r)return Re({ok:!1});n&&(e.queue.push(n),e.status.in++),o||(o=e.destinations);const c=e.transformers?he(e.transformers):{},u=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var u,l,f;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let d=(r.queuePush||[]).map(e=>({...e,consent:s}));r.queuePush=[],n&&d.push(B(n));const g=t.ingest?{...t.ingest,_meta:{...t.ingest._meta,path:[...t.ingest._meta.path]}}:$("unknown");if(!d.length&&!(null==(u=r.queueOn)?void 0:u.length))return{id:o,destination:r,skipped:!0};if(!d.length&&(null==(l=r.queueOn)?void 0:l.length)){let n=!1;try{n=await Te(e,r,o)}catch(n){const t=r.type||"unknown";e.logger.scope(t).error("Destination init threw",{error:n instanceof Error?n.message:String(n)})}return{id:o,destination:r,skipped:!n}}const p=[],v=d.filter(e=>{const n=W(r.config.consent,s,e.consent);return!n||(e.consent=n,p.push(e),!1)});if(r.queuePush.push(...v),!p.length)return{id:o,destination:r,queue:d};let y,m,h=!1;try{h=await Te(e,r,o)}catch(n){const t=r.type||"unknown";e.logger.scope(t).error("Destination init threw",{error:n instanceof Error?n.message:String(n)})}if(!h)return{id:o,destination:r,queue:d};r.dlq||(r.dlq=[]);const b=r.config.before,w=Me(b,b&&Array.isArray(b)?ae(b):void 0,c,g),k=r.config.next,O=k&&Array.isArray(k)?ae(k):void 0,j=null==(f=r.config)?void 0:f.cache,C=j?le(j):void 0,x=C?me(C,e):void 0;let A=0;return await Promise.all(p.map(async n=>{let s;if(n.globals=D(i,n.globals),n.user=D(a,n.user),(null==C?void 0:C.stop)&&x){const e=ue(g,n),t=fe(C,x,e);if("HIT"===(null==t?void 0:t.status))return n;"MISS"===(null==t?void 0:t.status)&&(s={key:t.key,ttl:t.rule.ttl})}let u=n,l=t.respond;if(w.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await Ce(e,e.transformers,w,n,g,t.respond,`destination.${o}.before`);if(null===r.event)return n;r.respond&&(l=r.respond),u=Array.isArray(r.event)?r.event[0]:r.event}if(C&&!C.stop&&x){const e=ue(g,u),t=fe(C,x,e);if("HIT"===(null==t?void 0:t.status))return n;"MISS"===(null==t?void 0:t.status)&&(s={key:t.key,ttl:t.rule.ttl})}const f=Date.now();let d=!1;const p=await ne(_e,n=>{const t=r.type||"unknown";e.logger.scope(t).error("Push failed",{error:n,event:u.name}),y=n,d=!0,r.dlq.push([u,n])})(e,r,o,u,g,l);if(A+=Date.now()-f,s&&x&&void 0===r.config.mock&&de(x,s.key,null==p||p,s.ttl),void 0!==p&&(m=p),!d&&k){void 0!==p&&(g._response=p);const n=Me(k,O,c,g);if(n.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const t=await Ce(e,e.transformers,n,u,g,l,`destination.${o}.next`);t.respond&&(l=t.respond)}}return n})),{id:o,destination:r,error:y,response:m,totalDuration:A}})),l={},f={},d={};for(const n of u){if(n.skipped)continue;const t={type:n.destination.type||"unknown",data:n.response};e.status.destinations[n.id]||(e.status.destinations[n.id]={count:0,failed:0,duration:0});const o=e.status.destinations[n.id],r=Date.now();n.error?(t.error=n.error,d[n.id]=t,o.failed++,o.lastAt=r,o.duration+=n.totalDuration||0,e.status.failed++):n.queue&&n.queue.length?f[n.id]=t:(l[n.id]=t,o.count++,o.lastAt=r,o.duration+=n.totalDuration||0,e.status.out++)}return Re({event:n,...Object.keys(l).length&&{done:l},...Object.keys(f).length&&{queued:f},...Object.keys(d).length&&{failed:d}})}async function Te(e,n,t){var o;if(n.init&&!n.config.init){const r=n.type||"unknown",s=e.logger.scope(r),i={collector:e,logger:s,id:t,config:n.config,env:Be(n.env,n.config.env)};s.debug("init");const a=await se(n.init,"DestinationInit",e.hooks,e.logger)(i);if(!1===a)return a;if(n.config={...a||n.config,init:!0},null==(o=n.queueOn)?void 0:o.length){const o=n.queueOn;n.queueOn=[];for(const{type:r,data:s}of o)Pe(e,n,t,r,s)}s.debug("init done")}return!0}async function _e(e,n,t,o,r,s){const{config:i}=n,a=await re(o,i,e);if(a.ignore)return!1;const c=n.type||"unknown",u=e.logger.scope(c),l={collector:e,logger:u,id:t,config:i,data:a.data,rule:a.mapping,ingest:r,env:{...Be(n.env,i.env),...s?{respond:s}:{}}};if(void 0!==i.mock)return u.debug("mock",{event:a.event.name}),i.mock;const f=a.mapping,d=a.mappingKey||"* *";if(!(null==f?void 0:f.batch)||!n.pushBatch||void 0!==i.mock){u.debug("push",{event:a.event.name});const t=await se(n.push,"DestinationPush",e.hooks,e.logger)(a.event,l);return u.debug("push done"),t}{if(n.batches=n.batches||{},!n.batches[d]){const o={key:d,events:[],data:[]};n.batches[d]={batched:o,batchFn:F(()=>{const o=n.batches[d].batched,a={collector:e,logger:u,id:t,config:i,data:void 0,rule:f,ingest:r,env:{...Be(n.env,i.env),...s?{respond:s}:{}}};u.debug("push batch",{events:o.events.length}),se(n.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(o,a),u.debug("push batch done"),o.events=[],o.data=[]},f.batch)}}const o=n.batches[d];o.batched.events.push(a.event),T(a.data)&&o.batched.data.push(a.data),o.batchFn()}return!0}function Re(e){return{ok:!(null==e?void 0:e.failed),...e}}function Ne(e){const{code:n,config:t={},env:o={},cache:r}=e,{config:s}=be(e,"before"),{config:i}=be({...e,config:s},"next"),a={...n.config,...t,...i};r&&(a.cache=r);const c=Be(n.env,o);return{...n,config:a,env:c}}function Be(e,n){return e||n?n?e&&R(e)&&R(n)?{...e,...n}:n:e:{}}async function Ge(e,n,t){const o=Object.entries(e).map(async([e,o])=>{var r;const s=o.destroy;if(!s)return;const i=o.type||"unknown",a=t.scope(i),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:a};try{await Promise.race([s(c),new Promise((t,o)=>setTimeout(()=>o(new Error(`${n} '${e}' destroy timed out`)),5e3))])}catch(t){a.error(`${n} '${e}' destroy failed: ${t}`)}});await Promise.allSettled(o)}async function Ue(e,n,t,o){let r,s,i=!1;switch(n){case ye.Config:R(t)&&(D(e.config,t,{shallow:!1}),s=t,i=!0);break;case ye.Consent:if(R(t)){const{update:n}=function(e,n){const t={};return Object.entries(n).forEach(([e,n])=>{t[e]=!!n}),e.consent=D(e.consent,t),{update:t}}(e,t);s=n,i=!0}break;case ye.Custom:R(t)&&(e.custom=D(e.custom,t),s=t,i=!0);break;case ye.Destination:R(t)&&("code"in t&&R(t.code)?r=await De(e,t,o):_(t.push)&&(r=await De(e,{code:t},o)));break;case ye.Globals:R(t)&&(e.globals=D(e.globals,t),s=t,i=!0);break;case ye.On:N(t)&&await async function(e,n,t){const o=e.on,r=o[n]||[],s=I(t)?t:[t];s.forEach(e=>{r.push(e)}),o[n]=r,$e(e,n,s)}(e,t,o);break;case ye.Ready:i=!0;break;case ye.Run:r=await async function(e,n){return e.allowed=!0,e.timing=Date.now(),n&&(n.consent&&(e.consent=D(e.consent,n.consent)),n.user&&(e.user=D(e.user,n.user)),n.globals&&(e.globals=D(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=D(e.custom,n.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await Ie(e)}(e,t),i=!0;break;case ye.Session:i=!0;break;case ye.Shutdown:await async function(e){const n=e.logger;await Ge(e.sources,"source",n),await Ge(e.destinations,"destination",n),await Ge(e.transformers,"transformer",n),await Ge(e.stores,"store",n)}(e);break;case ye.User:R(t)&&(D(e.user,t,{shallow:!1}),s=t,i=!0)}return i&&(await async function(e,n,t,o){var r,s;let i,a=t||[];switch(t||(a=e.on[n]||[]),n){case ye.Consent:i=o||e.consent;break;case ye.Session:i=e.session;break;case ye.User:i=o||e.user;break;case ye.Custom:i=o||e.custom;break;case ye.Globals:i=o||e.globals;break;case ye.Config:i=o||e.config;break;case ye.Ready:case ye.Run:default:i=void 0}let c=!1;for(const t of Object.values(e.sources)){if(null==(r=t.config.require)?void 0:r.length){const e=t.config.require.indexOf(n);-1!==e&&t.config.require.splice(e,1)}t.on&&(Se(t)?!1===await ne(t.on)(n,i)&&(c=!0):(t.queueOn=t.queueOn||[],t.queueOn.push({type:n,data:i})))}Object.entries(e.destinations).forEach(([t,o])=>{if(o.on){if(!o.config.init)return o.queueOn=o.queueOn||[],void o.queueOn.push({type:n,data:i});Pe(e,o,t,n,i)}});for(const n of Object.values(e.sources))Se(n)&&(null==(s=n.queueOn)?void 0:s.length)&&await Ae(0,n);return Object.keys(e.pending.destinations).length>0&&await async function(e,n){var t;for(const[o,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[o]||e.destinations[o])continue;const s=null==(t=r.config)?void 0:t.require;if(!s)continue;const i=s.indexOf(n);if(-1===i)continue;if(s.splice(i,1),s.length>0)continue;delete e.pending.destinations[o];const a=Ne(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,n),$e(e,n,a,o),!c}(e,n,void 0,s),r=await Ie(e)),r||Re({ok:!0})}function He(e,n){if(!n.name)throw new Error("Event name is required");const[t,o]=n.name.split(" ");if(!t||!o)throw new Error("Event name is invalid");const{timestamp:r=Date.now(),name:s=`${t} ${o}`,data:i={},context:a={},globals:c=e.globals,custom:u={},user:l=e.user,nested:f=[],consent:d=e.consent,id:g=L(),trigger:p="",entity:v=t,action:y=o,timing:m=0,source:h={type:"collector",schema:"4"}}=n;return{name:s,data:i,context:a,globals:c,custom:u,user:l,nested:f,consent:d,id:g,trigger:p,entity:v,action:y,timestamp:r,timing:m,source:h}}async function We(e){var n,t;const o=D({globalsStatic:{},sessionStatic:{},run:!0},e,{merge:!1,extend:!1}),r=Y({level:null==(n=e.logger)?void 0:n.level,handler:null==(t=e.logger)?void 0:t.handler}),s={...o.globalsStatic,...e.globals},i={allowed:!1,config:o,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:s,hooks:e.hooks||{},logger:r,on:{},queue:[],round:0,session:void 0,status:{startedAt:Date.now(),in:0,out:0,failed:0,sources:{},destinations:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0};var a,c;i.push=function(e,n){return se(async(t,o={})=>await ne(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=t;const v=f||d?function(e,n,t){let o=e;return n&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>n.includes(e)))),t&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>!t.includes(e)))),o}(e.destinations,f,d):void 0,y=null!=a?a:$(i||"unknown");if(u){const n=await re(p,u,e);if(n.ignore)return Re({ok:!0});if(u.consent&&!W(u.consent,e.consent,n.event.consent))return Re({ok:!0});p=n.event}if((null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0){const t=await Ce(e,e.transformers,l,p,y,g,i?`source.${i}.next`:void 0);if(null===t.event)return Re({ok:!0});if(t.stopped)return t.respond&&(g=t.respond),Re({ok:!0});if(t.respond&&(g=t.respond),Array.isArray(t.event)){const o=await Promise.all(t.event.map(async t=>{const o=n(t),r=He(e,o);return Ie(e,r,{id:i,ingest:y,respond:g},v)}));if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const n=e.status.sources[i];n.count+=t.event.length,n.lastAt=Date.now(),n.duration+=Date.now()-s}return null!=(r=o[0])?r:Re({ok:!0})}p=t.event}const m=n(p),h=He(e,m),b=await Ie(e,h,{id:i,ingest:y,respond:g},v);if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const n=e.status.sources[i];n.count++,n.lastAt=Date.now(),n.duration+=Date.now()-s}return b},()=>Re({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=Ue,se(async(e,n,t)=>await ne(async()=>await c(a,e,n,t),()=>Re({ok:!1}))(),"Command",(a=i).hooks,a.logger));const u=e.stores||{};if(i.stores=await async function(e,n={}){const t={};for(const[o,r]of Object.entries(n)){const{code:n,config:s={},env:i={}}=r,a=e.logger.scope("store").scope(o),c={collector:e,logger:a,id:o,config:s,env:i},u=await n(c),l=u.get,f=u.set,d=u.delete;u.get=se(l,"StoreGet",e.hooks,e.logger),u.set=se(f,"StoreSet",e.hooks,e.logger),u.delete=se(d,"StoreDelete",e.hooks,e.logger),t[o]=u}return t}(i,u),function(e,n,t){const o=new Map;for(const[t,r]of Object.entries(e))n[t]&&o.set(r,n[t]);if(0!==o.size)for(const e of[t.transformers,t.destinations,t.sources])if(e)for(const n of Object.values(e))r(n.env);function r(e){if(e)for(const[n,t]of Object.entries(e))if("object"==typeof t&&null!==t){const r=o.get(t);r&&(e[n]=r)}}}(u,i.stores,e),!i.stores.__cache){const e=new Map;i.stores.__cache={type:"memory",config:{},get:n=>{const t=e.get(n);if(t){if(!(t.expires&&Date.now()>t.expires))return t.value;e.delete(n)}},set:(n,t,o)=>{e.set(n,{value:t,expires:o?Date.now()+o:void 0})},delete:n=>{e.delete(n)}}}return i.destinations=await async function(e,n={}){var t,o;const r={};for(const[s,i]of Object.entries(n))(null==(o=null==(t=i.config)?void 0:t.require)?void 0:o.length)?e.pending.destinations[s]=i:r[s]=Ne(i);return r}(i,e.destinations||{}),i.transformers=await async function(e,n={}){var t,o,r,s;const i={};for(const[a,c]of Object.entries(n)){const{code:n,env:u={}}=c,l=ve(c);if(!l.ok){e.logger.warn(`Transformer ${a} invalid (${l.code}): ${l.reason}. Skipping.`);continue}const{config:f}=be(c,"before"),{config:d}=be({...c,config:f},"next"),g=Object.keys(u).length>0?{...d,env:u}:d,{cache:p}=c,v=p?{...g,cache:p}:g,y=e.logger.scope("transformer").scope(a),m={collector:e,logger:y,id:a,ingest:$(a),config:v,env:u},h=null!=n?n:e=>{const n=c.mapping;if(n){const t=[];if(void 0!==n.data&&t.push("data"),n.mapping)for(const[e,o]of Object.entries(n.mapping))if("object"==typeof o&&null!==o)for(const[n,r]of Object.entries(o)){if("object"!=typeof r||null===r)continue;const o=r;void 0!==o.data&&t.push(`mapping[${e}][${n}].data`),void 0!==o.silent&&t.push(`mapping[${e}][${n}].silent`)}return t.length>0&&e.collector.logger.warn(`Transformer ${a}: \`${t.join(", ")}\` ignored at transformer position (only event-mutating fields apply).`),{type:"pass",config:e.config,push:async t=>{const o=await re(t,n,e.collector);return!o.ignore&&{event:o.event}}}}return{type:"pass",config:e.config,push:e=>({event:e})}},b=await h(m);void 0!==c.before&&void 0===(null==(t=b.config)?void 0:t.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 Le(e){e=e||{};const n=await We(e),t=(o=n,{type:"elb",config:{},push:async(e,n,t,r,s,i)=>{if("string"==typeof e&&e.startsWith("walker ")){const r=e.replace("walker ","");return o.command(r,n,t)}let a;if("string"==typeof e)a={name:e},n&&"object"==typeof n&&!Array.isArray(n)&&(a.data=n);else{if(!e||"object"!=typeof e)return Re({ok:!1});a=e,n&&"object"==typeof n&&!Array.isArray(n)&&(a.data={...a.data||{},...n})}return r&&"object"==typeof r&&(a.context=r),s&&Array.isArray(s)&&(a.nested=s),i&&"object"==typeof i&&(a.custom=i),o.push(a)}});var o;n.sources.elb=t,await async function(e,n={}){var t;const o={};for(const[r,s]of Object.entries(n)){const n=await qe(e,r,s);if(!n)continue;const i=null==(t=s.config)?void 0:t.require;n.config={...n.config,init:!1,...i?{require:[...i]}:{}},o[r]=n}Object.assign(e.sources,o);for(const n of Object.keys(o)){const t=e.sources[n];t.init&&await ne(t.init.bind(t))(),t.config.init=!0,Se(t)&&await Ae(0,t)}return o}(n,e.sources||{});const{consent:r,user:s,globals:i,custom:a}=e;r&&await n.command("consent",r),s&&await n.command("user",s),i&&Object.assign(n.globals,i),a&&Object.assign(n.custom,a),n.config.run&&await n.command("run");let c=t.push;const u=Object.values(n.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:n,elb:c}}var Ke,Fe=async e=>{let n;return{get flow(){return n},trigger:()=>async t=>{var o;const r=window;if(r.OptanonActiveGroups=t,r.OneTrust={IsAlertBoxClosed:()=>!0},!n){const t=await Le({...e,run:null==(o=e.run)||o});n={collector:t.collector,elb:t.elb}}}}},Ve=(e,n)=>{const t=n.window;"string"==typeof e&&(t.OptanonActiveGroups=e,t.OneTrust={IsAlertBoxClosed:()=>!0})},ze={C0001:"functional",C0002:"analytics",C0003:"functional",C0004:"marketing",C0005:"marketing"},Je=async e=>{var n,t,o,r,s,i,a,c;const{config:u,env:l}=e,{elb:f}=l,d=null!=(n=l.window)?n:void 0!==globalThis.window?globalThis.window:void 0,g={...ze,...null!=(o=null==(t=null==u?void 0:u.settings)?void 0:t.categoryMap)?o:{}},p={};Object.entries(g).forEach(([e,n])=>{p[e.toLowerCase()]=n});const v={categoryMap:g,explicitOnly:null==(s=null==(r=null==u?void 0:u.settings)?void 0:r.explicitOnly)||s,globalName:null!=(a=null==(i=null==u?void 0:u.settings)?void 0:i.globalName)?a:"OneTrust"},y={settings:v};let m,h,b=!1;if(d){const e=null!=(c=v.globalName)?c:"OneTrust",n=new Set(Object.values(p)),t=e=>{const t={};return n.forEach(e=>{t[e]=!1}),e.split(",").filter(e=>e.length>0).forEach(e=>{const n=p[e.toLowerCase()];n&&(t[n]=!0)}),t},o=()=>{const n=d.OptanonActiveGroups;if(null==n)return;if(v.explicitOnly){const n=d[e];if((null==n?void 0:n.IsAlertBoxClosed)&&!n.IsAlertBoxClosed())return}const o=t(n);Object.keys(o).length>0&&f("walker consent",o)},r=d[e];r&&void 0!==d.OptanonActiveGroups&&o(),r||(h=d.OptanonWrapper,b=!0,d.OptanonWrapper=()=>{h&&h(),o(),d.OptanonWrapper=h,b=!1}),m=()=>{o()},d.addEventListener("OneTrustGroupsUpdated",m)}return{type:"cookiepro",config:y,push:f,destroy:async e=>{d&&m&&d.removeEventListener("OneTrustGroupsUpdated",m),d&&b&&(d.OptanonWrapper=h)}}},Ye=Je;return Ke=s,((r,s,i,a)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let c of t(s))o.call(r,c)||c===i||e(r,c,{get:()=>s[c],enumerable:!(a=n(s,c))||a.enumerable});return r})(e({},"__esModule",{value:!0}),Ke)})();
1
+ "use strict";var SourceCookiePro=(()=>{var e=Object.defineProperty,n=Object.getOwnPropertyDescriptor,t=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,r=(n,t)=>{for(var o in t)e(n,o,{get:t[o],enumerable:!0})},s={};r(s,{DEFAULT_CATEGORY_MAP:()=>bn,SourceCookiePro:()=>i,analyticsOnlyConsent:()=>u,analyticsOnlyMapped:()=>m,createMockElbFn:()=>b,createMockOneTrustAPI:()=>O,createTrigger:()=>yn,customCategoryConsent:()=>g,default:()=>On,emptyConsent:()=>d,fullConsent:()=>a,fullConsentMapped:()=>p,marketingOnlyConsent:()=>f,marketingOnlyMapped:()=>y,minimalConsent:()=>l,minimalConsentMapped:()=>v,noopLogger:()=>k,partialConsent:()=>c,partialConsentMapped:()=>h,sourceCookiePro:()=>kn,step:()=>x,trigger:()=>wn});var i={},a=",C0001,C0002,C0003,C0004,C0005,",c=",C0001,C0003,",l=",C0001,",u=",C0001,C0002,",f=",C0001,C0004,",d="",g=",C0001,CUSTOM01,CUSTOM02,",p={functional:!0,analytics:!0,marketing:!0},h={functional:!0,analytics:!1,marketing:!1},v={functional:!0,analytics:!1,marketing:!1},m={functional:!0,analytics:!0,marketing:!1},y={functional:!0,analytics:!1,marketing:!0},w=()=>{},b=()=>()=>Promise.resolve({ok:!0}),k={error:w,warn:w,info:w,debug:w,throw:e=>{throw"string"==typeof e?new Error(e):e},json:w,scope:()=>k},O=(e=!1)=>({IsAlertBoxClosed:()=>e}),x={};r(x,{categoryMapOverride:()=>A,fullConsent:()=>C,minimalConsent:()=>j,sdkLoadedDetection:()=>q});var C={title:"Full consent",description:"A CookiePro OptanonConsent cookie listing all groups is translated into a walker consent command with all true.",trigger:{type:"consent"},in:",C0001,C0002,C0003,C0004,C0005,",out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!0}]]},j={title:"Minimal consent",description:"Only the necessary CookiePro group is granted so analytics and marketing map to false in the walker consent command.",trigger:{type:"consent"},in:",C0001,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!1}]]},A={title:"Category map override",description:"Custom categoryMap remaps C0002 from analytics to statistics",trigger:{type:"consent"},in:",C0001,C0002,",mapping:{categoryMap:{C0002:"statistics"}},out:[["elb","walker consent",{functional:!0,statistics:!0,marketing:!1}]]},q={title:"SDK loaded detection",description:"Immediate detection when OneTrust SDK is already loaded with IsAlertBoxClosed() = true",trigger:{type:"consent"},in:",C0001,C0003,C0004,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!0}]]},S=Object.defineProperty,$=(e,n)=>{for(var t in n)S(e,t,{get:n[t],enumerable:!0})};function E(e,n){if("collector"===e)return"collector";if(!n)throw new Error(`stepId(${e}) requires an id`);return`${e}.${n}`}$({},{stepId:()=>E});function P(e,n){const t=e.destinations[n];if(!t)throw new Error(`Destination not found: ${n}`);return t}$({},{getDestination:()=>P});$({},{Level:()=>I});var M,I=((M=I||{})[M.ERROR=0]="ERROR",M[M.WARN=1]="WARN",M[M.INFO=2]="INFO",M[M.DEBUG=3]="DEBUG",M);function _(e,n){const t=e.transformers[n];if(!t)throw new Error(`Transformer not found: ${n}`);return t}$({},{getTransformer:()=>_});function T(e,n){const t=e.sources[n];if(!t)throw new Error(`Source not found: ${n}`);return t}$({},{getSource:()=>T});function D(e,n){const t=e.stores[n];if(!t)throw new Error(`Store not found: ${n}`);return t}function N(e){return{_meta:{hops:0,path:[e]}}}$({},{getStore:()=>D});var R={merge:!0,shallow:!0,extend:!0};function B(e,n={},t={}){t={...R,...t};const o=Object.entries(n).reduce((n,[o,r])=>{const s=e[o];return t.merge&&Array.isArray(s)&&Array.isArray(r)?n[o]=r.reduce((e,n)=>e.includes(n)?e:[...e,n],[...s]):(t.extend||o in e)&&(n[o]=r),n},{});return t.shallow?{...e,...o}:(Object.assign(e,o),e)}function z(e){return Array.isArray(e)}function G(e){return void 0!==e}function H(e){return"function"==typeof e}function W(e){return"object"==typeof e&&null!==e&&!z(e)&&"[object Object]"===Object.prototype.toString.call(e)}function L(e){return"string"==typeof e}function F(e,n=new WeakMap){if("object"!=typeof e||null===e)return e;if(n.has(e))return n.get(e);const t=Object.prototype.toString.call(e);if("[object Object]"===t){const t={};n.set(e,t);for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=F(e[o],n));return t}if("[object Array]"===t){const t=[];return n.set(e,t),e.forEach(e=>{t.push(F(e,n))}),t}if("[object Date]"===t)return new Date(e.getTime());if("[object RegExp]"===t){const n=e;return new RegExp(n.source,n.flags)}return e}function U(e,n="",t){const o=n.split(".");let r=e;for(let e=0;e<o.length;e++){const n=o[e];if("*"===n&&z(r)){const n=o.slice(e+1).join("."),s=[];for(const e of r){const o=U(e,n,t);s.push(o)}return s}if(r=W(r)||z(r)?r[n]:void 0,void 0===r)break}return G(r)?r:t}function K(e,n,t){if(!W(e))return e;const o=F(e),r=n.split(".");let s=o;for(let e=0;e<r.length;e++){const n=r[e];e===r.length-1?s[n]=t:(n in s&&"object"==typeof s[n]&&null!==s[n]||(s[n]={}),s=s[n])}return o}var V={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 Y(e,n={},t={}){const o={...n,...t},r={};let s=!e||0===Object.keys(e).length;return Object.keys(o).forEach(n=>{o[n]&&(r[n]=!0,e&&e[n]&&(s=!0))}),!!s&&r}function J(){let e="";for(let n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}function Z(e=6,n){if(n){const t=n.length;let o="";for(let r=0;r<e;r++)o+=n[Math.random()*t|0];return o}let t="";for(let n=36;t.length<e;)t+=(Math.random()*n|0).toString(n);return t}function Q(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function X(e,n){let t,o={};return e instanceof Error?(t=e.message,o.error=Q(e)):t=e,void 0!==n&&(n instanceof Error?o.error=Q(n):"object"==typeof n&&null!==n?(o={...o,...n},"error"in o&&o.error instanceof Error&&(o.error=Q(o.error))):o.value=n),{message:t,context:o}}var ee=(e,n,t,o)=>{const r=`${I[e]}${o.length>0?` [${o.join(":")}]`:""}`,s=Object.keys(t).length>0,i=0===e?console.error:1===e?console.warn:console.log;s?i(r,n,t):i(r,n)};function ne(e={}){return te({level:void 0!==e.level?(n=e.level,"string"==typeof n?I[n]:n):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var n}function te(e){const{level:n,handler:t,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=n){const n=X(o,s);t?t(e,n.message,n.context,r,ee):ee(e,n.message,n.context,r)}};return{error:(e,n)=>s(0,e,n),warn:(e,n)=>s(1,e,n),info:(e,n)=>s(2,e,n),debug:(e,n)=>s(3,e,n),throw:(e,n)=>{const o=X(e,n);throw t?t(0,o.message,o.context,r,ee):ee(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>te({level:n,handler:t,jsonHandler:o,scope:[...r,e]})}}function oe(e){return function(e){return"boolean"==typeof e}(e)||L(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!G(e)||z(e)&&e.every(oe)||W(e)&&Object.values(e).every(oe)}function re(e){return oe(e)?e:void 0}function se(e,n,t){return function(...o){try{return e(...o)}catch(e){if(!n)return;return n(e)}finally{null==t||t()}}}function ie(e,n,t){return async function(...o){try{return await e(...o)}catch(e){if(!n)return;return await n(e)}finally{await(null==t?void 0:t())}}}var ae=class e extends Error{constructor(n,t){super(n,t),this.name="FatalError",Object.setPrototypeOf(this,e.prototype)}};async function ce(e,n={},t={}){var o,r;if(!G(e))return;const s=W(e)&&e.consent||t.consent||(null==(o=t.collector)?void 0:o.consent),i=null!=(r=t.event)?r:W(e)?e:{};if(!t.collector)throw new Error("getMappingValue: context.collector is required");const a={event:i,mapping:n,collector:t.collector,logger:t.collector.logger,consent:s},c=z(n)?n:[n];for(const n of c){const o=await ie(le,e=>{if(e instanceof ae)throw e;t.collector&&t.collector.status.failed++,a.logger.error("mapping processing failed",{event:i,error:e})})(e,n,{...a,mapping:n});if(G(o))return o}}async function le(e,n,t){return(z(n)?n:[n]).reduce(async(n,o)=>{const r=await n;if(r)return r;const s=L(o)?{key:o}:o;if(!Object.keys(s).length)return;const{condition:i,consent:a,fn:c,key:l,loop:u,map:f,set:d,validate:g,value:p}=s,h={...t,mapping:o};if(i&&!await ie(i,e=>{if(e instanceof ae)throw e;return h.logger.error("mapping condition failed",{event:h.event,error:e}),!1})(e,h))return;if(a&&!Y(a,h.consent))return p;let v=G(p)?p:e;if(c&&(v=await ie(c,e=>{if(e instanceof ae)throw e;h.logger.error("mapping fn failed",{event:h.event,error:e})})(e,h)),l&&(v=U(e,l,p)),u){const[n,t]=u,o="this"===n?[e]:await ce(e,n,h);z(o)&&(v=(await Promise.all(o.map(e=>ce(e,t,h)))).filter(G))}else f?v=await Object.entries(f).reduce(async(n,[t,o])=>{const r=await n,s=await ce(e,o,h);return G(s)&&(r[t]=s),r},Promise.resolve({})):d&&(v=await Promise.all(d.map(n=>le(e,n,h))));g&&!await ie(g,e=>{if(e instanceof ae)throw e;return h.logger.error("mapping validate failed",{event:h.event,error:e}),!1})(v,h)&&(v=void 0);const m=re(v);return G(m)?m:re(p)},Promise.resolve(void 0))}async function ue(e,n,t){var o;n.policy&&await Promise.all(Object.entries(n.policy).map(async([n,o])=>{const r=await ce(e,o,{collector:t,event:e});e=K(e,n,r)}));const{eventMapping:r,mappingKey:s}=await async function(e,n,t){var o;const[r,s]=(e.name||"").split(" ");if(!n||!r||!s)return{};let i,a="",c=r,l=s;const u=n=>{if(n)return(z(n)?n:[n]).find(n=>{if(!n.condition)return!0;if(!t)return Boolean(n.condition(e,void 0));const o={event:e,mapping:n,collector:t,logger:t.logger,consent:W(e)&&e.consent||t.consent};return Boolean(n.condition(e,o))})};n[c]||(c="*");const f=n[c];return f&&(f[l]||(l="*"),i=u(f[l])),i||(c="*",l="*",i=u(null==(o=n[c])?void 0:o[l])),i&&(a=`${c} ${l}`),{eventMapping:i,mappingKey:a}}(e,n.mapping,t);(null==r?void 0:r.policy)&&await Promise.all(Object.entries(r.policy).map(async([n,o])=>{const r=await ce(e,o,{collector:t,event:e});e=K(e,n,r)}));let i=n.data&&await ce(e,n.data,{collector:t,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 n=r.data&&await ce(e,r.data,{collector:t,event:e});i=W(i)&&W(n)?B(i,n):n}}const c=null!=(o=null==r?void 0:r.include)?o:n.include;if(c&&c.length>0){const n=function(e,n){const t={},o=n.includes("all")?Object.keys(V):n;for(const n of o){const o=V[n];if(!o)continue;const r=o(e);if(W(r))for(const[e,o]of Object.entries(r)){if(void 0===o)continue;const r="context"===n&&Array.isArray(o)?o[0]:o;t[`${n}_${e}`]=r}}return t}(e,c);Object.keys(n).length>0&&(i=W(i)?B(n,i):null!=i?i:n)}return{event:e,data:i,mapping:r,mappingKey:s,ignore:!1,silent:a}}function fe(e,n,t,o){return function(...r){let s;const i="pre"+n,a="post"+n,c=t[i],l=t[a],u=(e,n)=>{o?o.warn(e,{error:n}):console.warn(e,n)};if(c)try{s=c({fn:e},...r)}catch(n){u(`Hook ${String(i)} failed, falling back to original function`,n),s=e(...r)}else s=e(...r);if(l)try{s=l({fn:e,result:s},...r)}catch(e){u(`Hook ${String(a)} failed, keeping original result`,e)}return s}}function de(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const n=e.and.map(de);return e=>n.every(n=>n(e))}if("or"in e){const n=e.or.map(de);return e=>n.some(n=>n(e))}return function(e){const{key:n,operator:t,value:o,not:r}=e,s=function(e,n){switch(e){case"eq":return e=>String(null!=e?e:"")===n;case"contains":return e=>String(null!=e?e:"").includes(n);case"prefix":return e=>String(null!=e?e:"").startsWith(n);case"suffix":return e=>String(null!=e?e:"").endsWith(n);case"regex":{const e=new RegExp(n);return n=>e.test(String(null!=n?n:""))}case"gt":{const e=Number(n);return n=>Number(n)>e}case"lt":{const e=Number(n);return n=>Number(n)<e}case"exists":return e=>null!=e}}(t,o);return e=>{const t=U(e,n),o=s(t);return r?!o:o}}(e)}function ge(e){return e.map(e=>{var n,t;if("string"==typeof e)return{match:()=>!0,next:{type:"static",value:e}};if(Array.isArray(e))return{match:()=>!0,next:null!=(n=pe(e))?n:{type:"chain",value:[]}};const o=e;return{match:o.match?de(o.match):()=>!0,next:null!=(t=pe(o))?t:{type:"chain",value:[]}}})}function pe(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(n=e)&&null!==n&&!Array.isArray(n)&&("match"in n||"next"in n||"one"in n||"many"in n);var n})}(e))return pe({one:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const n=[];for(const t of e){const e=pe(t);void 0!==e&&n.push(e)}if(0===n.length)return;return{type:"sequence",value:n}}const n=e;if("next"in n&&void 0!==n.next)return n.match?{type:"gate",match:de(n.match),next:pe(n.next)}:pe(n.next);if("one"in n&&n.one){const e=ge(n.one);return n.match?{type:"gate",match:de(n.match),next:{type:"one",routes:e}}:{type:"one",routes:e}}if("many"in n&&n.many){const e=ge(n.many);return n.match?{type:"gate",match:de(n.match),next:{type:"many",routes:e}}:{type:"many",routes:e}}return n.match?{type:"gate",match:de(n.match)}:void 0}var he=new WeakMap;function ve(e,n={}){if(null==e)return[];let t;if("object"==typeof e){const n=he.get(e);n?t=n:(t=pe(e),t&&he.set(e,t))}else t=pe(e);if(!t)return[];const o=me(t,n);return void 0===o?[]:Array.isArray(o)?o:[o]}function me(e,n={}){if(e){if("static"===e.type)return e.value;if("chain"===e.type)return e.value;if("gate"===e.type){if(!e.match(n))return;return me(e.next,n)}if("sequence"===e.type){const t=[];for(const o of e.value){const e=me(o,n);void 0!==e&&(Array.isArray(e)?t.push(...e):t.push(e))}return t.length>0?t:void 0}if("many"===e.type){const t=[];for(const o of e.routes){if(!o.match(n))continue;const e=me(o.next,n);void 0!==e&&(Array.isArray(e)?t.push(...e):t.push(e))}return t.length>0?t:void 0}for(const t of e.routes)if(t.match(n))return me(t.next,n)}}function ye(e,n){const t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t}function we(e){var n;return{stop:null!=(n=e.stop)&&n,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?de(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}async function be(e,n,t,o){const r=e.rules.find(e=>e.match(t));if(!r)return null;const s=r.key.map(e=>{var n;return String(null!=(n=U(t,e))?n:"")});if(s.every(e=>""===e))return null;const i=s.join(":"),a=null!=o?o:e.namespace,c=a?`${a}:${i}`:i,l=await n.get(c);return void 0!==l?{status:"HIT",key:c,value:l,rule:r}:{status:"MISS",key:c,rule:r}}function ke(e,n,t,o){e.set(n,t,1e3*o)}async function Oe(e,n,t,o){if(!n)return e;let r=e;for(const[e,s]of Object.entries(n))r=K(r,e,await ce(t,s,{collector:o}));return r}var xe={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"]},Ce=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],je={Source:["primary"],Transformer:[],Destination:[],Store:[]},Ae=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function qe(e,n){const t=(o=n,new Set([...xe[o],...Ce,...je[o]]));var o;for(const o of Object.keys(e))if(!t.has(o))return{ok:!1,code:"UNKNOWN_KEY",key:o,reason:`Unknown key "${o}" on ${n}. Allowed: ${[...t].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&&Ae.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:`import must match ${Ae.source}. Got: ${JSON.stringify(e.import)}.`}}var Se={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 $e(e,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache}function Ee(e){var n;const t={};for(const[o,r]of Object.entries(e)){const e=null==(n=r.config)?void 0:n.next;"string"==typeof e||Array.isArray(e)&&e.every(e=>"string"==typeof e)?t[o]={next:e}:t[o]={}}return t}function Pe(e,n){const t=e.config||{},o=e[n];return void 0!==o?{config:{...t,[n]:o},chainValue:o}:{config:t,chainValue:void 0}}function Me(e,n={}){if(!e)return[];if(Array.isArray(e))return e;const t=[],o=new Set;let r=e;for(;r&&n[r]&&!o.has(r);){o.add(r),t.push(r);const e=n[r].next;if(Array.isArray(e)){t.push(...e);break}r=e}return t}async function Ie(e,n,t){if(n.init&&!n.config.init){const o=n.type||"unknown",r=e.logger.scope(`transformer:${o}`),s={collector:e,logger:r,id:t,ingest:N(t),config:n.config,env:Ne(n.config.env)};r.debug("init");const i=await fe(n.init,"TransformerInit",e.hooks,e.logger)(s);if(!1===i)return!1;n.config={...i||n.config,env:(null==i?void 0:i.env)||n.config.env,init:!0},r.debug("init done")}return!0}async function _e(e,n,t,o,r,s){const i=n.type||"unknown",a=e.logger.scope(`transformer:${i}`),c={collector:e,logger:a,id:t,ingest:r,config:n.config,env:{...Ne(n.config.env),...s?{respond:s}:{}}};a.debug("push",{event:o.name});const l=await fe(n.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),l}function Te(e,n){return e?{...e,_meta:{...e._meta,path:[...e._meta.path]}}:N(n)}async function De(e,n,t,o,r,s,i){var a,c,l,u,f,d,g,p;r||(r=N(null!=(a=t[0])?a:"chain")),i&&r._meta&&(r._meta.chainPath=i);let h=o,v=s;for(const o of t){const s=n[o];if(!s){e.logger.warn(`Transformer not found: ${o}`);continue}if(r&&r._meta&&r._meta.path.length>256)return e.logger.error(`Max path length exceeded at ${o}`),{event:null,respond:v};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await ie(Ie,n=>{if(n instanceof ae)throw n;return e.status.failed++,e.logger.scope(`transformer:${s.type||"unknown"}`).error("transformer init failed",{transformer:o,error:n}),!1})(e,s,o))return{event:null,respond:v};if(i&&void 0!==(null==(l=null==(c=s.config)?void 0:c.chainMocks)?void 0:l[i])){const n=s.config.chainMocks[i];e.logger.scope(`transformer:${s.type||"unknown"}`).debug("chainMock",{chain:i}),h=n;continue}if(void 0!==(null==(u=s.config)?void 0:u.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),h=s.config.mock;continue}if(null==(f=s.config)?void 0:f.disabled)continue;const a=null==(d=s.config)?void 0:d.cache,m=a?we(a):void 0,y=m?$e(m,e):void 0;let w;if(m&&y){const e=ye(r,h),n=await be(m,y,e);if("HIT"===(null==n?void 0:n.status)&&n.value){if(h=n.value,m.stop)return{event:h,respond:v,stopped:!0};continue}"MISS"===(null==n?void 0:n.status)&&(w={key:n.key,ttl:n.rule.ttl})}const b=s.config.before;if(b){const t=ve(b,ye(r,h));if(1===t.length){const o=Me(t[0],Ee(n));if(o.length>0){const t=await De(e,n,o,h,r,v,i);if(null===t.event)return{event:null,respond:null!=(g=t.respond)?g:v};if(t.stopped)return{event:Array.isArray(t.event)?t.event[0]:t.event,respond:null!=(p=t.respond)?p:v,stopped:!0};t.respond&&(v=t.respond),h=Array.isArray(t.event)?t.event[0]:t.event}}else t.length>1&&await Promise.all(t.map(t=>ie(De,n=>(e.logger.scope("transformer:many").error(`many branch ${t} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Me(t,Ee(n)),h,Te(r,t),void 0,i)))}const k=await ie(_e,n=>(e.logger.scope(`transformer:${s.type||"unknown"}`).error("Push failed",{error:n}),!1))(e,s,o,h,r,v);if(!1===k)return{event:null,respond:v};if(Array.isArray(k)){const s=t.slice(t.indexOf(o)+1),a=await Promise.all(k.map(async t=>{const o=t.event||h,a=Te(r,"unknown");if(t.next){const r=ve(t.next,ye(a,o));if(0===r.length)return{event:o,respond:v};if(1===r.length){const t=Me(r[0],Ee(n));return t.length>0?De(e,n,t,o,a,v,i):{event:o,respond:v}}return(await Promise.all(r.map(t=>ie(De,n=>(e.logger.scope("transformer:many").error(`many branch ${t} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Me(t,Ee(n)),o,Te(a,t),void 0,i)))).map(e=>({event:e.event,respond:void 0}))}return s.length>0?De(e,n,s,o,a,v,i):{event:o,respond:v}}));let c=v;const l=[];for(const e of a.flat())if(null!==e)if(e&&"object"==typeof e&&"event"in e){const n=e;if(n.respond&&(c=n.respond),null===n.event)continue;Array.isArray(n.event)?l.push(...n.event):l.push(n.event)}else l.push(e);return 0===l.length?{event:null,respond:c}:1===l.length?{event:l[0],respond:c}:{event:l,respond:c}}if(k&&"object"==typeof k){const{event:t,respond:o,next:s}=k;if(o&&(v=o),void 0!==s){const o=ve(s,ye(r,h));if(0===o.length){t&&(h=t);continue}if(1===o.length){const a=Me(o[0],Ee(n));return a.length>0?De(e,n,a,t||h,r,v,i):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:v})}return await Promise.all(o.map(o=>ie(De,n=>(e.logger.scope("transformer:many").error(`many branch ${o} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Me(o,Ee(n)),t||h,Te(r,o),void 0,i))),{event:null,respond:void 0}}t&&(h=t)}w&&y&&ke(y,w.key,h,w.ttl);const O=s.config.next,x="string"==typeof O||Array.isArray(O)&&O.every(e=>"string"==typeof e),C=void 0!==O&&!x;if((!k||"object"==typeof k&&!k.next)&&C){const t=ve(s.config.next,ye(r,h));if(1===t.length){const o=Me(t[0],Ee(n));return o.length>0?De(e,n,o,h,r,v,i):{event:h,respond:v}}return t.length>1?(await Promise.all(t.map(t=>ie(De,n=>(e.logger.scope("transformer:many").error(`many branch ${t} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Me(t,Ee(n)),h,Te(r,t),void 0,i))),{event:null,respond:void 0}):{event:h,respond:v}}}return{event:h,respond:v}}function Ne(e){return e&&W(e)?e:{}}function Re(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(e=>"string"==typeof e))}async function Be(e,n,t){var o,r;if(!n.on||!(null==(o=n.queueOn)?void 0:o.length))return;const s=n.queueOn;n.queueOn=[];const i=t||(null==(r=n.config)?void 0:r.id)||"unknown";for(const{type:t,data:o}of s)await ie(n.on,n=>{if(n instanceof ae)throw n;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:t,error:n})})(t,o)}function ze(e){var n;return Boolean(e.config.init)&&!(null==(n=e.config.require)?void 0:n.length)}async function Ge(e,n,t){var o;const{code:r,config:s={},env:i={},primary:a,next:c,before:l,cache:u}=t,f=u,d=f?we({...f,stop:null==(o=f.stop)||o}):void 0,g=Re(c)?Me(c,Ee(e.transformers)):void 0,p=Re(l)?Me(l,Ee(e.transformers)):void 0,h=i.push,v=null!=h?h:e.push,m=Boolean(h),y=async(t,o,r)=>{var i;let a;const u=null!=p?p:void 0!==l?(()=>{const n=ve(l,ye(r.ingest));return 0===n.length?[]:Me(1===n.length?n[0]:n,Ee(e.transformers))})():[];let f=[t];if(u.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await De(e,e.transformers,u,t,r.ingest,r.respond,`source.${n}.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 n=$e(d,e);if(n){const t=ye(r.ingest),o=await be(d,n,t);if(o){if("HIT"===o.status&&void 0!==o.value&&d.stop){let n=o.value;return o.rule.update&&(n=await Oe(n,o.rule.update,{...t,cache:{status:"HIT"}},e)),null==(i=r.respond)||i.call(r,n),{ok:!0}}if("MISS"===o.status&&d.stop&&r.respond){const s=r.respond,i=o.rule.update,c={...t,cache:{status:"MISS"}},l=o.key,u=o.rule.ttl,f=t=>{ke(n,l,t,u),i?a=(async()=>{const n=await Oe(t,i,c,e);s(n)})():s(t)};r.respond=f}"MISS"!==o.status||d.stop||ke(n,o.key,!0,o.rule.ttl)}}}const h=g?{kind:"single",preChain:g}:void 0!==c?(()=>{const n=ve(c,ye(r.ingest));return 0===n.length?{kind:"single",preChain:[]}:1===n.length?{kind:"single",preChain:Me(n[0],Ee(e.transformers))}:{kind:"many",branches:n.map(n=>Me(n,Ee(e.transformers)))}})():{kind:"single",preChain:[]};let y={ok:!0};for(const t of f)"many"===h.kind?(await Promise.all(h.branches.map((i,a)=>ie(async()=>m?v(t):v(t,{...o,id:n,ingest:Te(r.ingest,`${n}.${a}`),respond:void 0,mapping:s,preChain:i}),n=>(e.logger.scope("source:many").error(`many branch ${a} failed`,{error:n}),{ok:!0}))())),y={ok:!0}):y=m?await v(t):await v(t,{...o,id:n,ingest:r.ingest,respond:r.respond,mapping:s,preChain:h.preChain});return a&&await a,y},w=async t=>{const o=N(n);if(!s.ingest||void 0===t)return o;const r=await ce(t,s.ingest,{collector:e});return{...o,...r,_meta:o._meta}},b=e.logger.scope("source").scope(n),k={command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:b,...i,push:async(e,t={})=>{const o={ingest:N(n),respond:void 0};return y(e,t,o)}},O={collector:e,logger:b,id:n,config:s,env:k,withScope:async(e,n,t)=>{const o={ingest:await w(e),respond:n};return t({...k,push:(e,n={})=>y(e,n,o),ingest:o.ingest,respond:o.respond})}},x=await ie(r,t=>{if(t instanceof ae)throw t;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:n,error:t})})(O);if(!x)return;const C=x.type||"unknown",j=e.logger.scope(C).scope(n);return k.logger=j,a&&(x.config={...x.config,primary:a}),x}function He(e,n,t,o){if(t instanceof ae)throw t;e.logger.scope("on").error("on callback failed",{kind:n,...o,error:t})}function We(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}}function Le(e,n,t,o,r){if(!n.on)return;const s=n.type||"unknown",i=e.logger.scope(s).scope("on").scope(o),a={collector:e,logger:i,id:t,config:n.config,data:r,env:cn(n.env,n.config.env)};se(n.on,n=>He(e,"destination",n,{destId:t,type:o}))(o,a)}function Fe(e,n,t,o){let r;switch(n){case Se.Consent:r=o||e.consent;break;case Se.Session:r=e.session;break;case Se.User:r=o||e.user;break;case Se.Custom:r=o||e.custom;break;case Se.Globals:r=o||e.globals;break;case Se.Config:r=o||e.config;break;case Se.Ready:case Se.Run:default:r=void 0}if(t.length)switch(n){case Se.Consent:!function(e,n,t){const o=t||e.consent,r=We(e,Se.Consent);n.forEach(n=>{Object.keys(o).filter(e=>e in n).forEach(t=>{se(n[t],n=>He(e,"consent",n,{key:t}))(o,r)})})}(e,t,o);break;case Se.Ready:!function(e,n){if(!e.allowed)return;const t=We(e,Se.Ready);n.forEach(n=>{se(n,n=>He(e,"ready",n))(void 0,t)})}(e,t);break;case Se.Run:!function(e,n){if(!e.allowed)return;const t=We(e,Se.Run);n.forEach(n=>{se(n,n=>He(e,"run",n))(void 0,t)})}(e,t);break;case Se.Session:!function(e,n){if(!e.session)return;const t=We(e,Se.Session);n.forEach(n=>{se(n,n=>He(e,"session",n))(e.session,t)})}(e,t);break;default:{const o=We(e,n);t.forEach(t=>{"function"==typeof t&&se(t,t=>He(e,"generic",t,{type:n}))(r,o)});break}}}function Ue(e,n,t,o){var r;if(!Number.isFinite(t.max)||t.max<=0)throw new Error(`pushBounded: max must be > 0 (got ${t.max})`);if("dropNewest"===(null!=(r=t.onOverflow)?r:"dropOldest"))return e.length>=t.max?(o&&o([n]),{appended:!1,dropped:1}):(e.push(n),{appended:!0,dropped:0});const s=[];for(;e.length>=t.max;)s.push(e.shift());return e.push(n),s.length>0&&o&&o(s),{appended:!0,dropped:s.length}}var Ke=new WeakMap;function Ve(e,n,t,o){Ke.get(e)||(Ke.set(e,!0),n.warn(t,o))}function Ye(e){Ke.delete(e)}var Je=Object.freeze({batched:!0});function Ze(e){return e===Je}function Qe(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}}function Xe(e,n){return e.status.destinations[n]||(e.status.destinations[n]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[n]}function en(e,n,t,o){var r;e.dropped[n]||(e.dropped[n]={});const s=e.dropped[n];return s[t]=(null!=(r=s[t])?r:0)+o,s[t]}function nn(e,n,t){if(!e)return[];if(Array.isArray(e)&&e.every(e=>"string"==typeof e))return Me(e,n);if("string"==typeof e)return Me(e,n);const o=ve(e,ye(t));return 0===o.length?[]:1===o.length?Me(o[0],n):Me(o,n)}async function tn(e,n,t={},o){var r,s,i,a,c,l;const{allowed:u,consent:f,globals:d,user:g}=e;if(!u)return sn({ok:!1});if(n){const t=e.config.queueMax;if(void 0===t)throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");const o=Ue(e.queue,n,{max:t});if(o.dropped>0){const n=en(e.status,E("collector"),"queue",o.dropped);Ve(e.queue,e.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:t,droppedCount:n})}else e.queue.length<t&&Ye(e.queue);e.status.in++}o||(o=e.destinations);const p=e.transformers?Ee(e.transformers):{},h=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var s,i,a,c;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let l=(r.queuePush||[]).map(e=>({...e,consent:f}));r.queuePush=[],n&&l.push(F(n));const u=t.ingest?{...t.ingest,_meta:{...t.ingest._meta,path:[...t.ingest._meta.path]}}:N("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 n=!1;try{n=await on(e,r,o)}catch(n){e.status.failed++;const t=r.type||"unknown";e.logger.scope(t).error("destination init failed",{error:n instanceof Error?n.message:String(n)})}return{id:o,destination:r,skipped:!n}}const h=[],v=l.filter(e=>{const n=Y(r.config.consent,f,e.consent);return!n||(e.consent=n,h.push(e),!1)});if(v.length>0){const n=r.queuePush,t=r.config.id||o,s={max:null!=(a=r.config.queueMax)?a:1e3};let i=0;for(const e of v)i+=Ue(n,e,s).dropped;if(i>0){Xe(e,t);const o=en(e.status,E("destination",t),"queue",i);Ve(n,e.logger.scope(r.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:t,cap:s.max,droppedCount:o})}else n.length<s.max&&Ye(n)}if(!h.length)return{id:o,destination:r,queue:l};let m,y,w=!1;try{w=await on(e,r,o)}catch(n){e.status.failed++;const t=r.type||"unknown";e.logger.scope(t).error("destination init failed",{error:n instanceof Error?n.message:String(n)})}if(!w)return{id:o,destination:r,queue:l};r.dlq||(r.dlq=[]);const b=nn(r.config.before,p,u),k=r.config.next,O=null==(c=r.config)?void 0:c.cache,x=O?we(O):void 0,C=x?$e(x,e):void 0;let j=0,A=0;return await Promise.all(h.map(async n=>{let s;if(n.globals=B(d,n.globals),n.user=B(g,n.user),(null==x?void 0:x.stop)&&C){const e=ye(u,n),t=await be(x,C,e);if("HIT"===(null==t?void 0:t.status))return n;"MISS"===(null==t?void 0:t.status)&&(s={key:t.key,ttl:t.rule.ttl})}let i=n,a=t.respond;if(b.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await De(e,e.transformers,b,n,u,t.respond,`destination.${o}.before`);if(null===r.event)return n;r.respond&&(a=r.respond),i=Array.isArray(r.event)?r.event[0]:r.event}if(x&&!x.stop&&C){const e=ye(u,i),t=await be(x,C,e);if("HIT"===(null==t?void 0:t.status))return n;"MISS"===(null==t?void 0:t.status)&&(s={key:t.key,ttl:t.rule.ttl})}const c=Date.now();let l=!1;const f=await ie(rn,n=>{var t;const s=r.type||"unknown";e.logger.scope(s).error("Push failed",{error:n,event:i.name}),m=n,l=!0;const a=r.dlq,c=r.config.id||o,u={max:null!=(t=r.config.dlqMax)?t:100},f=Ue(a,[i,n],u);if(f.dropped>0){Xe(e,c);const n=en(e.status,E("destination",c),"dlq",f.dropped);Ve(a,e.logger.scope(r.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:c,cap:u.max,droppedCount:n})}else a.length<u.max&&Ye(a)})(e,r,o,i,u,a);if(j+=Date.now()-c,s&&C&&void 0===r.config.mock&&ke(C,s.key,null==f||f,s.ttl),void 0===f||Ze(f)||(y=f),Ze(f)&&A++,!l&&k){void 0!==f&&(u._response=f);const n=nn(k,p,u);if(n.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const t=await De(e,e.transformers,n,i,u,a,`destination.${o}.next`);t.respond&&(a=t.respond)}}return n})),{id:o,destination:r,error:m,response:y,totalDuration:j,batchedCount:A,allowedCount:h.length}})),v={},m={},y={};for(const n of h){if(n.skipped)continue;const t=n.destination,o={type:t.type||"unknown",data:n.response};Xe(e,n.id);const u=e.status.destinations[n.id],f=Date.now();if(u.queuePushSize=null!=(s=null==(r=t.queuePush)?void 0:r.length)?s:0,u.dlqSize=null!=(a=null==(i=t.dlq)?void 0:i.length)?a:0,n.error)o.error=n.error,y[n.id]=o,u.failed++,u.lastAt=f,u.duration+=n.totalDuration||0,e.status.failed++;else if(n.queue&&n.queue.length)m[n.id]=o;else{const t=null!=(c=n.batchedCount)?c:0,r=null!=(l=n.allowedCount)?l:0;(Math.max(0,r-t)>0||0===r)&&(v[n.id]=o,u.count++,u.lastAt=f,u.duration+=n.totalDuration||0,e.status.out++)}}return sn({event:n,...Object.keys(v).length&&{done:v},...Object.keys(m).length&&{queued:m},...Object.keys(y).length&&{failed:y}})}async function on(e,n,t){var o;if(n.init&&!n.config.init){const r=n.type||"unknown",s=e.logger.scope(r),i={collector:e,logger:s,id:t,config:n.config,env:cn(n.env,n.config.env)};s.debug("init");const a=await fe(n.init,"DestinationInit",e.hooks,e.logger)(i);if(!1===a)return a;if(n.config={...a||n.config,init:!0},null==(o=n.queueOn)?void 0:o.length){const o=n.queueOn;n.queueOn=[];for(const{type:r,data:s}of o)Le(e,n,t,r,s)}s.debug("init done")}return!0}async function rn(e,n,t,o,r,s){var i,a,c,l,u,f,d;const{config:g}=n,p=await ue(o,g,e);if(p.ignore)return!1;const h=n.type||"unknown",v=e.logger.scope(h),m={collector:e,logger:v,id:t,config:g,data:p.data,rule:p.mapping,ingest:r,env:{...cn(n.env,g.env),...s?{respond:s}:{}}};if(void 0!==g.mock)return v.debug("mock",{event:p.event.name}),g.mock;const y=p.mapping,w=p.mappingKey||"* *";if((null==y?void 0:y.batch)&&n.pushBatch&&void 0===g.mock){if(n.batches=n.batches||{},!n.batches[w]){const o={key:w,entries:[],events:[],data:[]},r=Qe(y.batch),s=Qe(g.batch),d=null!=(a=null!=(i=r.wait)?i:s.wait)?a:3e4,p=null!=(l=null!=(c=r.size)?c:s.size)?l:1e3,h=null!=(f=null!=(u=r.age)?u:s.age)?f:3e4,m=cn(n.env,g.env),b=function(e,n=1e3,t=!1){const{wait:o,size:r,age:s}=function(e,n){var t;return"number"==typeof e?{wait:e}:e?{wait:null!=(t=e.wait)?t:n,size:e.size,age:e.age}:{wait:n}}(n,1e3);let i,a,c=null,l=null,u=!1,f=[],d=0;const g=()=>{c&&(clearTimeout(c),c=null),l&&(clearTimeout(l),l=null),d=0,a=void 0},p=()=>{const n=a,t=f;if(g(),f=[],n)return i=e(...n),t.forEach(e=>e(i)),i;t.forEach(e=>e(void 0))},h=(...n)=>new Promise(g=>{const h=t&&!u;if(a=n,d+=1,f.push(g),c&&clearTimeout(c),c=setTimeout(()=>{c=null,t&&!u||p()},o),void 0===s||l||(l=setTimeout(()=>{l=null,p()},s)),void 0!==r&&d>=r)p();else if(h){u=!0,i=e(...n);const t=f;f=[],t.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=n.batches[w].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:v,id:t,config:g,data:void 0,rule:i.rule,ingest:i.ingest,env:{...m,...i.respond?{respond:i.respond}:{}}};v.debug("push batch",{events:s.entries.length});const c=n.config.id||t,l=Xe(e,c);let u=!0;await ie(fe(n.pushBatch,"DestinationPushBatch",e.hooks,e.logger),t=>{var o;u=!1;const r=n.dlq=n.dlq||[],i={max:null!=(o=n.config.dlqMax)?o:100};let a=0;for(const e of s.entries)a+=Ue(r,[e.event,t],i).dropped;if(a>0){const n=en(e.status,E("destination",c),"dlq",a);Ve(r,v,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:c,cap:i.max,droppedCount:n})}else r.length<i.max&&Ye(r);l.failed+=s.entries.length,l.dlqSize=r.length,e.status.failed+=s.entries.length,v.error("Push batch failed",{error:t instanceof Error?t.message:String(t),entries:s.entries.length})})(s,a),v.debug("push batch done"),l.inFlightBatch=Math.max(0,(null!=(o=l.inFlightBatch)?o:0)-s.entries.length),u&&(l.count+=s.entries.length,l.lastAt=Date.now(),e.status.out+=s.entries.length)},{wait:d,size:p,age:h});n.batches[w]={batched:o,batchFn:()=>{b()},flush:async()=>{await b.flush()}}}const o=n.batches[w];o.batched.entries.push({event:p.event,ingest:r,respond:s,rule:y,data:p.data}),o.batched.events.push(p.event),G(p.data)&&o.batched.data.push(p.data);const h=n.config.id||t,m=Xe(e,h);return m.inFlightBatch=(null!=(d=m.inFlightBatch)?d:0)+1,o.batchFn(),Je}{v.debug("push",{event:p.event.name});const t=await fe(n.push,"DestinationPush",e.hooks,e.logger)(p.event,m);return v.debug("push done"),t}}function sn(e){return{ok:!(null==e?void 0:e.failed),...e}}function an(e){const{code:n,config:t={},env:o={},cache:r}=e,{config:s}=Pe(e,"before"),{config:i}=Pe({...e,config:s},"next"),a={...n.config,...t,...i};r&&(a.cache=r);const c=cn(n.env,o);return{...n,config:a,env:c}}function cn(e,n){return e||n?n?e&&W(e)&&W(n)?{...e,...n}:n:e:{}}async function ln(e,n,t){const o=Object.entries(e).map(async([e,o])=>{var r;const s=o.destroy;if(!s)return;const i=o.type||"unknown",a=t.scope(i),c={id:e,config:o.config,env:null!=(r=o.env)?r:{},logger:a};try{await Promise.race([s(c),new Promise((t,o)=>setTimeout(()=>o(new Error(`${n} '${e}' destroy timed out`)),5e3))])}catch(t){a.error(`${n} '${e}' destroy failed: ${t}`)}});await Promise.allSettled(o)}async function un(e,n,t){let o,r,s=!1;switch(n){case Se.Config:W(t)&&(B(e.config,t,{shallow:!1}),r=t,s=!0);break;case Se.Consent:if(W(t)){const{update:n}=function(e,n){const t={};return Object.entries(n).forEach(([e,n])=>{t[e]=!!n}),e.consent=B(e.consent,t),{update:t}}(e,t);r=n,s=!0}break;case Se.Custom:W(t)&&(e.custom=B(e.custom,t),r=t,s=!0);break;case Se.Destination:W(t)&&"code"in t&&W(t.code)&&(o=await async function(e,n){const{code:t,config:o={},env:r={},before:s,next:i,cache:a}=n;if(!H(t.push))return sn({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const c=o||{init:!1};let l=s?{...c,before:s}:{...c};i&&(l={...l,next:i}),a&&(l={...l,cache:a});const u={...t,config:l,env:cn(t.env,r)};let f=u.config.id;if(!f)do{f=Z(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[f]);return e.destinations[f]=u,!1!==u.config.queue&&(u.queuePush=[...e.queue]),tn(e,void 0,{},{[f]:u})}(e,t));break;case Se.Globals:W(t)&&(e.globals=B(e.globals,t),r=t,s=!0);break;case Se.Hook:if(W(t)&&L(t.name)&&H(t.fn)){const{name:n,fn:o}=t;e.hooks[n]=o,r=t,s=!0}break;case Se.On:if(W(t)&&L(t.type)){const{type:n,rules:o}=t;await async function(e,n,t){const o=e.on,r=o[n]||[],s=z(t)?t:[t];s.forEach(e=>{r.push(e)}),o[n]=r,Fe(e,n,s)}(e,n,o)}break;case Se.Ready:s=!0;break;case Se.Run:o=await async function(e,n){return e.allowed=!0,e.timing=Date.now(),n&&(n.consent&&(e.consent=B(e.consent,n.consent)),n.user&&(e.user=B(e.user,n.user)),n.globals&&(e.globals=B(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=B(e.custom,n.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await tn(e)}(e,t),s=!0;break;case Se.Session:s=!0;break;case Se.Shutdown:await async function(e){const n=e.logger;await ln(e.sources,"source",n),await ln(e.destinations,"destination",n),await ln(e.transformers,"transformer",n),await ln(e.stores,"store",n)}(e);break;case Se.User:W(t)&&(B(e.user,t,{shallow:!1}),r=t,s=!0)}return s&&(await async function(e,n,t,o){var r,s;let i,a=t||[];switch(t||(a=e.on[n]||[]),n){case Se.Consent:i=o||e.consent;break;case Se.Session:i=e.session;break;case Se.User:i=o||e.user;break;case Se.Custom:i=o||e.custom;break;case Se.Globals:i=o||e.globals;break;case Se.Config:i=o||e.config;break;case Se.Ready:case Se.Run:default:i=void 0}let c=!1;for(const[t,o]of Object.entries(e.sources)){if(null==(r=o.config.require)?void 0:r.length){const e=o.config.require.indexOf(n);-1!==e&&o.config.require.splice(e,1)}o.on&&(ze(o)?!1===await ie(o.on,o=>He(e,"source",o,{sourceId:t,type:n}))(n,i)&&(c=!0):(o.queueOn=o.queueOn||[],o.queueOn.push({type:n,data:i})))}Object.entries(e.destinations).forEach(([t,o])=>{if(o.on){if(!o.config.init)return o.queueOn=o.queueOn||[],void o.queueOn.push({type:n,data:i});Le(e,o,t,n,i)}});for(const[n,t]of Object.entries(e.sources))ze(t)&&(null==(s=t.queueOn)?void 0:s.length)&&await Be(e,t,n);return Object.keys(e.pending.destinations).length>0&&await async function(e,n){var t;for(const[o,r]of Object.entries(e.pending.destinations)){if(!e.pending.destinations[o]||e.destinations[o])continue;const s=null==(t=r.config)?void 0:t.require;if(!s)continue;const i=s.indexOf(n);if(-1===i)continue;if(s.splice(i,1),s.length>0)continue;delete e.pending.destinations[o];const a=an(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,n),Fe(e,n,a,o),!c}(e,n,void 0,r),o=await tn(e)),o||sn({ok:!0})}function fn(e,n){if(!n.name)throw new Error("Event name is required");const[t,o]=n.name.split(" ");if(!t||!o)throw new Error("Event name is invalid");const{timestamp:r=Date.now(),name:s=`${t} ${o}`,data:i={},context:a={},globals:c=e.globals,custom:l={},user:u=e.user,nested:f=[],consent:d=e.consent,id:g=J(),trigger:p="",entity:h=t,action:v=o,timing:m=0,source:y={type:"collector",schema:"4"}}=n;return{name:s,data:i,context:a,globals:c,custom:l,user:u,nested:f,consent:d,id:g,trigger:p,entity:h,action:v,timestamp:r,timing:m,source:y}}function dn(e={}){var n,t,o;const r=null!=(n=e.maxEntries)?n:1e4,s=null!=(t=e.lowWaterMark)?t:.8,i=null!=(o=e.sweepIntervalMs)?o:6e4,a=Math.floor(r*s),c=new Map,l={hits:0,misses:0,populates:0,writes:0,deletes:0,evictions_entries:0,evictions_ttl:0};let u;return i>0&&(u=setInterval(function(){const e=Date.now();let n=0;for(const[t,o]of c)void 0!==o.expires&&o.expires<=e&&(c.delete(t),n++);l.evictions_ttl+=n},i),u&&"function"==typeof u.unref&&u.unref()),{type:"memory",config:{},get(e){const n=c.get(e);if(n)return void 0!==n.expires&&n.expires<=Date.now()?(c.delete(e),l.evictions_ttl++,void l.misses++):(c.delete(e),c.set(e,n),l.hits++,n.value);l.misses++},set(e,n,t){const o=!c.has(e);o||c.delete(e),c.set(e,{value:n,expires:void 0!==t?Date.now()+t:void 0}),l.writes++,o&&l.populates++,c.size>r&&function(){if(c.size<=r)return;const e=c.size-a;let n=0;for(const t of c.keys()){if(n>=e)break;c.delete(t),n++}l.evictions_entries+=n}()},delete(e){c.delete(e)&&l.deletes++},get counters(){return{...l}},destroy(){void 0!==u&&(clearInterval(u),u=void 0),c.clear()}}}function gn(e,n){const{cacheConfig:t,cacheStore:o,namespace:r,logger:s,storeId:i}=n,a={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=t.rules.map(e=>({match:e.match?de(e.match):()=>!0,ttl:e.ttl})),l=e=>`${r}:${e}`;function u(e,n){const t=void 0===n?{key:e}:{key:e,value:n};return c.find(e=>e.match(t))}const f=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return{...a}},async get(n){const t=l(n),r=await o.get(t);if(void 0!==r)return a.hits++,r;const s=f.get(t);if(s)return a.inflight_dedups++,s;a.misses++;const i=(async()=>{try{const r=await e.get(n);if(void 0===r)return;const s=u(n,r);if(s)try{await o.set(t,r,1e3*s.ttl),a.populates++}catch(e){d("set",n,e)}return r}finally{f.delete(t)}})();return f.set(t,i),i},async set(n,t,r){a.writes++,await e.set(n,t,r);const s=u(n,t);if(s)try{await o.set(l(n),t,1e3*s.ttl)}catch(e){d("set",n,e)}},async delete(n){a.deletes++,await e.delete(n);try{await o.delete(l(n))}catch(e){d("delete",n,e)}}};function d(e,n,t){const o=`store-cache(${i}): cache ${e} failed for "${n}"; backing succeeded, continuing`;s?s.warn(o,{error:t}):console.warn(o,t)}}function pn(e,n){const t=n.get,o=n.set,r=n.delete;n.get=fe(t,"StoreGet",e.hooks,e.logger),n.set=fe(o,"StoreSet",e.hooks,e.logger),n.delete=fe(r,"StoreDelete",e.hooks,e.logger)}async function hn(e){var n,t;const o=B({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),r=ne({level:null==(n=e.logger)?void 0:n.level,handler:null==(t=e.logger)?void 0:t.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,n){return fe(async(t,o={})=>await ie(async()=>{var r;const s=Date.now(),{id:i,ingest:a,respond:c,mapping:l,preChain:u,include:f,exclude:d}=o;let g=c,p=t;const h=f||d?function(e,n,t){let o=e;return n&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>n.includes(e)))),t&&(o=Object.fromEntries(Object.entries(o).filter(([e])=>!t.includes(e)))),o}(e.destinations,f,d):void 0,v=null!=a?a:N(i||"unknown");if(l){const n=await ue(p,l,e);if(n.ignore)return sn({ok:!0});if(l.consent&&!Y(l.consent,e.consent,n.event.consent))return sn({ok:!0});p=n.event}if((null==u?void 0:u.length)&&e.transformers&&Object.keys(e.transformers).length>0){const t=await De(e,e.transformers,u,p,v,g,i?`source.${i}.next`:void 0);if(null===t.event)return sn({ok:!0});if(t.stopped)return t.respond&&(g=t.respond),sn({ok:!0});if(t.respond&&(g=t.respond),Array.isArray(t.event)){const o=await Promise.all(t.event.map(async t=>{const o=n(t),r=fn(e,o);return tn(e,r,{id:i,ingest:v,respond:g},h)}));if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const n=e.status.sources[i];n.count+=t.event.length,n.lastAt=Date.now(),n.duration+=Date.now()-s}return null!=(r=o[0])?r:sn({ok:!0})}p=t.event}const m=n(p),y=fn(e,m),w=await tn(e,y,{id:i,ingest:v,respond:g},h);if(i){e.status.sources[i]||(e.status.sources[i]={count:0,duration:0});const n=e.status.sources[i];n.count++,n.lastAt=Date.now(),n.duration+=Date.now()-s}return w},n=>{if(n instanceof ae)throw n;return e.status.failed++,e.logger.error("push failed",{event:t,ingest:o.ingest,error:n}),sn({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=un,fe(async(e,n,t)=>await ie(async()=>await c(a,e,n,t),t=>{if(t instanceof ae)throw t;return a.status.failed++,a.logger.error("command failed",{command:e,data:n,error:t}),sn({ok:!1})})(),"Command",(a=i).hooks,a.logger));const l=e.stores||{};return i.stores=await async function(e,n={}){var t;const o={};for(const[t,r]of Object.entries(n)){const{code:n,config:s={},env:i={}}=r,a=e.logger.scope("store").scope(t),c={collector:e,logger:a,id:t,config:s,env:i},l=await n(c);o[t]=l}const r=n,s=function(e){const n={};for(const t of Object.keys(e))n[t]="WHITE";const t=[],o=[];function r(s){var i;const a=n[s];if("BLACK"===a)return;if("GRAY"===a){const e=o.indexOf(s),n=o.slice(-1===e?0:e).concat(s).join(" -> ");throw new Error(`Cycle in cache.store chain: ${n}`)}n[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(),n[s]="BLACK",t.push(s)}for(const t of Object.keys(e))"WHITE"===n[t]&&r(t);return t}(r);for(const n of s){const s=r[n].cache;if(!s)continue;let i,a;void 0!==s.store?(i=o[s.store],a=s.store):(o.__cache||(o.__cache=dn()),i=o.__cache,a="__cache");const c=null!=(t=s.namespace)?t:n;e.logger.scope("store-cache").scope(n).info(`store "${n}" caches with namespace "${c}:" via ${a}`),o[n]=gn(o[n],{storeId:n,cacheConfig:s,cacheStore:i,namespace:c,logger:e.logger.scope("store-cache").scope(n)})}for(const[n,t]of Object.entries(o))"__cache"!==n&&pn(e,t);return o}(i,l),function(e,n,t){const o=new Map;for(const[t,r]of Object.entries(e))n[t]&&o.set(r,n[t]);if(0!==o.size)for(const e of[t.transformers,t.destinations,t.sources])if(e)for(const n of Object.values(e))r(n.env);function r(e){if(e)for(const[n,t]of Object.entries(e))if("object"==typeof t&&null!==t){const r=o.get(t);r&&(e[n]=r)}}}(l,i.stores,e),i.stores.__cache||(i.stores.__cache=dn()),i.destinations=await async function(e,n={}){var t,o;const r={};for(const[s,i]of Object.entries(n))(null==(o=null==(t=i.config)?void 0:t.require)?void 0:o.length)?e.pending.destinations[s]=i:r[s]=an(i);return r}(i,e.destinations||{}),i.transformers=await async function(e,n={}){var t,o,r,s;const i={};for(const[a,c]of Object.entries(n)){const{code:n,env:l={}}=c,u=qe(c,"Transformer");if(!u.ok){e.logger.warn(`Transformer ${a} invalid (${u.code}): ${u.reason}. Skipping.`);continue}const{config:f}=Pe(c,"before"),{config:d}=Pe({...c,config:f},"next"),g=Object.keys(l).length>0?{...d,env:l}:d,{cache:p}=c,h=p?{...g,cache:p}:g,v=e.logger.scope("transformer").scope(a),m={collector:e,logger:v,id:a,ingest:N(a),config:h,env:l},y=null!=n?n:e=>{const n=c.mapping;if(n){const t=[];if(void 0!==n.data&&t.push("data"),n.mapping)for(const[e,o]of Object.entries(n.mapping))if("object"==typeof o&&null!==o)for(const[n,r]of Object.entries(o)){if("object"!=typeof r||null===r)continue;const o=r;void 0!==o.data&&t.push(`mapping[${e}][${n}].data`),void 0!==o.silent&&t.push(`mapping[${e}][${n}].silent`)}return t.length>0&&e.collector.logger.warn(`Transformer ${a}: \`${t.join(", ")}\` ignored at transformer position (only event-mutating fields apply).`),{type:"pass",config:e.config,push:async t=>{const o=await ue(t,n,e.collector);return!o.ignore&&{event:o.event}}}}return{type:"pass",config:e.config,push:e=>({event:e})}},w=await y(m);void 0!==c.before&&void 0===(null==(t=w.config)?void 0:t.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!=(s=w.config)?s:{},next:c.next}),i[a]=w}return i}(i,e.transformers||{}),i}async function vn(e){e=e||{};const n=await hn(e),t=(o=n,{type:"elb",config:{},push:async(e,n,t,r,s)=>{if("string"==typeof e&&e.startsWith("walker ")){const t=e.replace("walker ","");return o.command(t,n)}let i;if("string"==typeof e)i={name:e},n&&"object"==typeof n&&!Array.isArray(n)&&(i.data=n);else{if(!e||"object"!=typeof e)return sn({ok:!1});i=e,n&&"object"==typeof n&&!Array.isArray(n)&&(i.data={...i.data||{},...n})}return t&&"object"==typeof t&&(i.context=t),r&&Array.isArray(r)&&(i.nested=r),s&&"object"==typeof s&&(i.custom=s),o.push(i)}});var o;n.sources.elb=t,await async function(e,n={}){var t;const o={};for(const[r,s]of Object.entries(n)){const n=await Ge(e,r,s);if(!n)continue;const i=null==(t=s.config)?void 0:t.require;n.config={...n.config,init:!1,...i?{require:[...i]}:{}},o[r]=n}Object.assign(e.sources,o);for(const n of Object.keys(o)){const t=e.sources[n];let o=!1;t.init&&await ie(t.init.bind(t),t=>{if(t instanceof ae)throw t;o=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:n,error:t})})(),o||(t.config.init=!0,ze(t)&&await Be(e,t,n))}return o}(n,e.sources||{});const{consent:r,user:s,globals:i,custom:a}=e;r&&await n.command("consent",r),s&&await n.command("user",s),i&&Object.assign(n.globals,i),a&&Object.assign(n.custom,a),n.config.run&&await n.command("run");let c=t.push;const l=Object.values(n.sources).filter(e=>"elb"!==e.type),u=l.find(e=>e.config.primary);return u?c=u.push:l.length>0&&(c=l[0].push),{collector:n,elb:c}}var mn,yn=async e=>{let n;return{get flow(){return n},trigger:()=>async t=>{var o;const r=window;if(r.OptanonActiveGroups=t,r.OneTrust={IsAlertBoxClosed:()=>!0},!n){const t=await vn({...e,run:null==(o=e.run)||o});n={collector:t.collector,elb:t.elb}}}}},wn=(e,n)=>{const t=n.window;"string"==typeof e&&(t.OptanonActiveGroups=e,t.OneTrust={IsAlertBoxClosed:()=>!0})},bn={C0001:"functional",C0002:"analytics",C0003:"functional",C0004:"marketing",C0005:"marketing"},kn=async e=>{var n,t,o,r,s,i,a,c;const{config:l,env:u}=e,{elb:f}=u,d=null!=(n=u.window)?n:void 0!==globalThis.window?globalThis.window:void 0,g={...bn,...null!=(o=null==(t=null==l?void 0:l.settings)?void 0:t.categoryMap)?o:{}},p={};Object.entries(g).forEach(([e,n])=>{p[e.toLowerCase()]=n});const h={categoryMap:g,explicitOnly:null==(s=null==(r=null==l?void 0:l.settings)?void 0:r.explicitOnly)||s,globalName:null!=(a=null==(i=null==l?void 0:l.settings)?void 0:i.globalName)?a:"OneTrust"},v={settings:h};let m,y,w=!1;if(d){const e=null!=(c=h.globalName)?c:"OneTrust",n=new Set(Object.values(p)),t=e=>{const t={};return n.forEach(e=>{t[e]=!1}),e.split(",").filter(e=>e.length>0).forEach(e=>{const n=p[e.toLowerCase()];n&&(t[n]=!0)}),t},o=()=>{const n=d.OptanonActiveGroups;if(null==n)return;if(h.explicitOnly){const n=d[e];if((null==n?void 0:n.IsAlertBoxClosed)&&!n.IsAlertBoxClosed())return}const o=t(n);Object.keys(o).length>0&&f("walker consent",o)},r=d[e];r&&void 0!==d.OptanonActiveGroups&&o(),r||(y=d.OptanonWrapper,w=!0,d.OptanonWrapper=()=>{y&&y(),o(),d.OptanonWrapper=y,w=!1}),m=()=>{o()},d.addEventListener("OneTrustGroupsUpdated",m)}return{type:"cookiepro",config:v,push:f,destroy:async e=>{d&&m&&d.removeEventListener("OneTrustGroupsUpdated",m),d&&w&&(d.OptanonWrapper=y)}}},On=kn;return mn=s,((r,s,i,a)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let c of t(s))o.call(r,c)||c===i||e(r,c,{get:()=>s[c],enumerable:!(a=n(s,c))||a.enumerable});return r})(e({},"__esModule",{value:!0}),mn)})();
package/dist/index.es5.js CHANGED
@@ -1 +1 @@
1
- "use strict";function _array_like_to_array(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];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,n,t,r,o,a,i){try{var s=e[a](i),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function _async_to_generator(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);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,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function _instanceof(e,n){return null!=n&&"undefined"!=typeof Symbol&&n[Symbol.hasInstance]?!!n[Symbol.hasInstance](e):e instanceof n}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,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,a=[],i=!0,s=!1;try{for(t=t.call(e);!(i=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);i=!0);}catch(e){s=!0,o=e}finally{try{i||null==t.return||t.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 n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},r=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.forEach(function(n){_define_property(e,n,t[n])})}return e}function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function _object_spread_props(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e}function _sliced_to_array(e,n){return _array_with_holes(e)||_iterable_to_array_limit(e,n)||_unsupported_iterable_to_array(e,n)||_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,n){if(e){if("string"==typeof e)return _array_like_to_array(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(t):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_array_like_to_array(e,n):void 0}}function _ts_generator(e,n){var t,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(t)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(t=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=n.call(e,a)}catch(e){s=[6,e],r=0}finally{t=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 n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.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(n?"Object is not iterable.":"Symbol.iterator is not defined.")}var SourceCookiePro=function(){var e=function(e){return{_meta:{hops:0,path:[e]}}},n=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};t=_object_spread({},Te,t);var r=Object.entries(n).reduce(function(n,r){var o=_sliced_to_array(r,2),a=o[0],i=o[1],s=e[a];return t.merge&&Array.isArray(s)&&Array.isArray(i)?n[a]=i.reduce(function(e,n){return e.includes(n)?e:_to_consumable_array(e).concat([n])},_to_consumable_array(s)):(t.extend||a in e)&&(n[a]=i),n},{});return t.shallow?_object_spread({},e,r):(Object.assign(e,r),e)},t=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&&!t(e)&&"[object Object]"===Object.prototype.toString.call(e)},i=function(e){return"string"==typeof e},s=function(e,n,t){if(!a(e))return e;for(var r=Re(e),o=n.split("."),i=r,s=0;s<o.length;s++){var c=o[s];s===o.length-1?i[c]=t:(c in i&&"object"==_type_of(i[c])&&null!==i[c]||(i[c]={}),i=i[c])}return r},c=function(e){var n=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),t={},r=!e||0===Object.keys(e).length;return Object.keys(n).forEach(function(o){n[o]&&(t[o]=!0,e&&e[o]&&(r=!0))}),!!r&&t},u=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,n=arguments.length>1?arguments[1]:void 0;if(n){for(var t=n.length,r="",o=0;o<e;o++)r+=n[Math.random()*t|0];return r}for(var a="";a.length<e;)a+=(36*Math.random()|0).toString(36);return a},l=function(e){var n,t=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||(n=e.apply(void 0,_to_consumable_array(s)),i(n))},t),c&&(a=!0,n=e.apply(void 0,_to_consumable_array(s)),i(n))})}},f=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},d=function(e,n){var t,r={};return _instanceof(e,Error)?(t=e.message,r.error=f(e)):t=e,void 0!==n&&(_instanceof(n,Error)?r.error=f(n):"object"==(void 0===n?"undefined":_type_of(n))&&null!==n?"error"in(r=_object_spread({},r,n))&&_instanceof(r.error,Error)&&(r.error=f(r.error)):r.value=n),{message:t,context:r}},_=function(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Ue({level:void 0!==n.level?(e=n.level,"string"==typeof e?Me[e]:e):0,handler:n.handler,jsonHandler:n.jsonHandler,scope:[]})},p=function(e){return He(e)?e:void 0},v=function(e,n,t){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(!n)return;return n(e)}finally{null==t||t()}}},g=function(e,n,t){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(),n?[4,n(r)]:[2];case 4:return[4,null==t?void 0:t()];case 5:return a.sent(),[7];case 6:return[2]}})})()}},y=function(e,n,r){return _async_to_generator(function(){var o,i,s,c,u,l,f,d,_,p;return _ts_generator(this,function(v){return i=_sliced_to_array((e.name||"").split(" "),2),s=i[0],c=i[1],n&&s&&c?(l="",d=c,_=function(n){if(n)return(t(n)?n:[n]).find(function(n){if(!n.condition)return!0;if(!r)return Boolean(n.condition(e,void 0));var t={event:e,mapping:n,collector:r,logger:r.logger,consent:a(e)&&e.consent||r.consent};return Boolean(n.condition(e,t))})},n[f=s]||(f="*"),[2,((p=n[f])&&(p[d]||(d="*"),u=_(p[d])),u||(f="*",d="*",u=_(null===(o=n[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 n,o,i,s,c,u,l,f,d,_,p,v,y,b,h,m,w=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:if(n=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:n,collector:o.collector,logger:o.collector.logger,consent:c},f=t(n)?n:[n],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=(y=v.next()).done)?[3,5]:(b=y.value,[4,g(We)(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,p=m,[3,8];case 7:try{d||null==v.return||v.return()}finally{if(_)throw p}return[7];case 8:return[2]}})}).apply(this,arguments)},h=function(e,t,r){return _async_to_generator(function(){var o,i,c,u,l,f,d,_,p,v,g;return _ts_generator(this,function(h){switch(h.label){case 0:return t.policy?[4,Promise.all(Object.entries(t.policy).map(function(n){var t=_sliced_to_array(n,2),o=t[0],a=t[1];return _async_to_generator(function(){var n;return _ts_generator(this,function(t){switch(t.label){case 0:return[4,b(e,a,{collector:r,event:e})];case 1:return n=t.sent(),e=s(e,o,n),[2]}})})()}))]:[3,2];case 1:h.sent(),h.label=2;case 2:return[4,y(e,t.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(n){var t=_sliced_to_array(n,2),o=t[0],a=t[1];return _async_to_generator(function(){var n;return _ts_generator(this,function(t){switch(t.label){case 0:return[4,b(e,a,{collector:r,event:e})];case 1:return n=t.sent(),e=s(e,o,n),[2]}})})()}))]:[3,5];case 4:h.sent(),h.label=5;case 5:return(f=t.data)?[4,b(e,t.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?(p=c.data)?[4,b(e,c.data,{collector:r,event:e})]:[3,9]:[3,10]):[3,10];case 8:p=h.sent(),h.label=9;case 9:_=p,l=a(l)&&a(_)?n(l,_):_,h.label=10;case 10:return(v=null!==(o=null==c?void 0:c.include)&&void 0!==o?o:t.include)&&v.length>0&&(g=function(e,n){var t={},r=n.includes("all")?Object.keys(Ge):n,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=Ge[l];if(f){var d=f(e),_=!0,p=!1,v=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;t["".concat(l,"_").concat(h)]=w}}}catch(e){p=!0,v=e}finally{try{_||null==y.return||y.return()}finally{if(p)throw v}}}}}catch(e){i=!0,s=e}finally{try{o||null==u.return||u.return()}finally{if(i)throw s}}return t}(e,v),Object.keys(g).length>0&&(l=a(l)?n(g,l):null!=l?l:g)),[2,{event:e,data:l,mapping:c,mappingKey:u,ignore:!1,silent:d}]}})})()},m=function(e,n,t,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"+n,u="post"+n,l=t[c],f=t[u],d=function(e,n){r?r.warn(e,{error:n}):console.warn(e,n)};if(l)try{s=l.apply(void 0,[{fn:e}].concat(_to_consumable_array(a)))}catch(n){d("Hook ".concat(String(c)," failed, falling back to original function"),n),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,n){var t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t},j=function(e){var n;return{stop:null!==(n=e.stop)&&void 0!==n&&n,storeId:e.store,namespace:e.namespace,rules:e.rules.map(function(e){return{match:e.match?Ke(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},k=function(e,n,t,r){var o=e.rules.find(function(e){return e.match(t)});if(!o)return null;var a=o.key.map(function(e){var n;return String(null!==(n=Ne(t,e))&&void 0!==n?n:"")});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=n.get(c);return void 0!==u?{status:"HIT",key:c,value:u,rule:o}:{status:"MISS",key:c,rule:o}},O=function(e,n,t,r){e.set(n,t,1e3*r)},C=function(e,n,t,r){return _async_to_generator(function(){var o,a,i,c,u,l,f,d,_,p,v;return _ts_generator(this,function(g){switch(g.label){case 0:if(!n)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(n)[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],p=[o,d],[4,b(t,_,{collector:r})]);case 3:o=s.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,c=v,[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,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache},S=function(e){var n={},t=!0,r=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s,c=_sliced_to_array(a.value,2),u=c[0],l=Le(null===(s=c[1].config)||void 0===s?void 0:s.next);n[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{t||null==i.return||i.return()}finally{if(r)throw o}}return n},A=function(e,n){var t=e.config||{},r=e[n];return void 0!==r?{config:_object_spread_props(_object_spread({},t),_define_property({},n,r)),chainValue:r}:{config:t,chainValue:void 0}},P=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return[];if(Array.isArray(e))return e;for(var t=[],r=new Set,o=e;o&&n[o]&&!r.has(o);){r.add(o),t.push(o);var a=n[o].next;if(Array.isArray(a)){var i;(i=t).push.apply(i,_to_consumable_array(a));break}o=a}return t},q=function(n,t,r){return _async_to_generator(function(){var o,a,i,s;return _ts_generator(this,function(c){switch(c.label){case 0:return!t.init||t.config.init?[3,2]:(o=t.type||"unknown",a=n.logger.scope("transformer:".concat(o)),i={collector:n,logger:a,id:r,ingest:e(r),config:t.config,env:I(t.config.env)},a.debug("init"),[4,m(t.init,"TransformerInit",n.hooks,n.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}),a.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},E=function(e,n,t,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=n.type||"unknown",s=e.logger.scope("transformer:".concat(i)),c={collector:e,logger:s,id:t,ingest:o,config:n.config,env:_object_spread({},I(n.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,m(n.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},D=function(e,n){var t;if(e)return null!==(t=Fe(Le(e),n))&&void 0!==t?t:void 0},I=function(e){return e&&a(e)?e:{}},M=function(e,n){return _async_to_generator(function(){var e,t,r,o,a,i,s,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:if(!n.on||!(null===(e=n.queueOn)||void 0===e?void 0:e.length))return[2];t=n.queueOn,n.queueOn=[],r=!0,o=!1,a=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),i=t[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(n.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]}})})()},T=function(e){var n;return Boolean(e.config.init)&&!(null===(n=e.config.require)||void 0===n?void 0:n.length)},R=function(n,t,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,_,p,v,y,h,m,A,q,E,D,I,M,T,R;return _ts_generator(this,function(N){switch(N.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,v=e(t),y=_?j(_object_spread_props(_object_spread({},_),{stop:null===(o=_.stop)||void 0===o||o})):void 0,h=Le(f),m="static"!==(null==h?void 0:h.type)&&"chain"!==(null==h?void 0:h.type)||!h?void 0:P(Fe(h),S(n.transformers)),A=Le(d),q="static"!==(null==A?void 0:A.type)&&"chain"!==(null==A?void 0:A.type)||!A?void 0:P(Fe(A),S(n.transformers)),E=n.logger.scope("source").scope(t),D=_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,E,D,I,M,T,R,N,G,B,U;return _ts_generator(this,function(H){switch(H.label){case 0:return a=null!=q?q:A?P(Fe(A,w(v)),S(n.transformers)):[],i=[e],a.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,Je(n,n.transformers,a,e,v,p,"source.".concat(t,".before"))]:[3,2];case 1:if(null===(c=H.sent()).event)return[2,{ok:!0}];if(c.stopped)return[2,(c.respond&&(p=c.respond),{ok:!0})];c.respond&&(p=c.respond),i=Array.isArray(c.event)?c.event:[c.event],H.label=2;case 2:return y&&(u=x(y,n))?(l=w(v),(f=k(y,u,l))?"HIT"===f.status&&void 0!==f.value&&y.stop?(d=f.value,f.rule.update?[4,C(d,f.rule.update,_object_spread_props(_object_spread({},l),{cache:{status:"HIT"}}),n)]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=H.sent(),H.label=4;case 4:return[2,(null==p||p(d),{ok:!0})];case 5:"MISS"===f.status&&y.stop&&p&&(_=p,g=f.rule.update,b=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),j=f.key,E=f.rule.ttl,p=function(e){O(u,j,e,E),g?o=_async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,C(e,g,b,n)];case 1:return t=r.sent(),_(t),[2]}})})():_(e)}),"MISS"!==f.status||y.stop||O(u,f.key,!0,f.rule.ttl),H.label=6;case 6:D=null!=m?m:h?P(Fe(h,w(v)),S(n.transformers)):[],I={ok:!0},M=!0,T=!1,R=void 0,H.label=7;case 7:H.trys.push([7,12,13,14]),N=i[Symbol.iterator](),H.label=8;case 8:return(M=(G=N.next()).done)?[3,11]:(B=G.value,[4,n.push(B,_object_spread_props(_object_spread({},r),{id:t,ingest:v,respond:p,mapping:s,preChain:D}))]);case 9:I=H.sent(),H.label=10;case 10:return M=!0,[3,8];case 11:return[3,14];case 12:return U=H.sent(),T=!0,R=U,[3,14];case 13:try{M||null==N.return||N.return()}finally{if(T)throw R}return[7];case 14:return o?[4,o]:[3,16];case 15:H.sent(),H.label=16;case 16:return[2,I]}})})()},command:n.command,sources:n.sources,elb:n.sources.elb.push,logger:E},u),I={collector:n,logger:E,id:t,config:s,env:D,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:n})]:[2,void(v=e(t))];case 1:return o=i.sent(),a=e(t),v=_object_spread_props(_object_spread({},a,o),{_meta:a._meta}),[2]}})})()},setRespond:function(e){p=e}},[4,g(a)(I)];case 1:return(M=N.sent())?(T=M.type||"unknown",R=n.logger.scope(T).scope(t),[2,(D.logger=R,l&&(M.config=_object_spread_props(_object_spread({},M.config),{primary:l})),M)]):[2]}})})()},N=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,_,p,v,y,b,h,m,w,j,k=arguments;return _ts_generator(this,function(O){switch(O.label){case 0:n=k.length>1&&void 0!==k[1]?k[1]:{},t={},r=!0,o=!1,a=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),i=Object.entries(n)[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,R(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(_)}:{}),t[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,t),p=!0,v=!1,y=void 0,O.label=9;case 9:O.trys.push([9,17,18,19]),b=Object.keys(t)[Symbol.iterator](),O.label=10;case 10:return(p=(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,T(w)?[4,M(0,w)]:[3,14];case 13:O.sent(),O.label=14;case 14:O.label=15;case 15:return p=!0,[3,10];case 16:return[3,19];case 17:return j=O.sent(),v=!0,y=j,[3,19];case 18:try{p||null==b.return||b.return()}finally{if(v)throw y}return[7];case 19:return[2,t]}})}).apply(this,arguments)},G=function(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}},B=function(e,n,r){return _async_to_generator(function(){var o,a,i;return _ts_generator(this,function(s){return o=e.on,a=o[n]||[],(i=t(r)?r:[r]).forEach(function(e){a.push(e)}),o[n]=a,H(e,n,i),[2]})})()},U=function(e,n,t,r,o){if(n.on){var a=n.type||"unknown",i=e.logger.scope(a).scope("on").scope(r),s={collector:e,logger:i,id:t,config:n.config,data:o,env:Q(n.env,n.config.env)};v(n.on)(r,s)}},H=function(e,n,t,r){var o,a,i,s,c;switch(n){case ze.Commands.Consent:o=r||e.consent;break;case ze.Commands.Session:o=e.session;break;case ze.Commands.User:o=r||e.user;break;case ze.Commands.Custom:o=r||e.custom;break;case ze.Commands.Globals:o=r||e.globals;break;case ze.Commands.Config:o=r||e.config;break;case ze.Commands.Ready:case ze.Commands.Run:default:o=void 0}if(t.length)switch(n){case ze.Commands.Consent:a=e,i=t,s=r||a.consent,c=G(a,ze.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(n){return n in e}).forEach(function(n){v(e[n])(s,c)})});break;case ze.Commands.Ready:!function(e,n){if(e.allowed){var t=G(e,ze.Commands.Ready);n.forEach(function(e){v(e)(void 0,t)})}}(e,t);break;case ze.Commands.Run:!function(e,n){if(e.allowed){var t=G(e,ze.Commands.Run);n.forEach(function(e){v(e)(void 0,t)})}}(e,t);break;case ze.Commands.Session:!function(e,n){if(e.session){var t=G(e,ze.Commands.Session);n.forEach(function(n){v(n)(e.session,t)})}}(e,t);break;default:var u=G(e,n);t.forEach(function(e){"function"==typeof e&&v(e)(o,u)})}},W=function(e,n,t,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,_,p,v,y,b,h,m,w,j,k,O;return _ts_generator(this,function(C){switch(C.label){case 0:switch(i=t||[],t||(i=e.on[n]||[]),n){case ze.Commands.Consent:a=r||e.consent;break;case ze.Commands.Session:a=e.session;break;case ze.Commands.User:a=r||e.user;break;case ze.Commands.Custom:a=r||e.custom;break;case ze.Commands.Globals:a=r||e.globals;break;case ze.Commands.Config:a=r||e.config;break;case ze.Commands.Ready:case ze.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,C.label=1;case 1:C.trys.push([1,7,8,9]),f=Object.values(e.sources)[Symbol.iterator](),C.label=2;case 2:return(c=(d=f.next()).done)?[3,6]:(_=d.value,(null===(p=_.config.require)||void 0===p?void 0:p.length)&&-1!==(v=_.config.require.indexOf(n))&&_.config.require.splice(v,1),_.on?T(_)?(y=!1,[4,g(_.on)(n,a)]):[3,4]:[3,5]);case 3:return y===C.sent()&&(s=!0),[3,5];case 4:_.queueOn=_.queueOn||[],_.queueOn.push({type:n,data:a}),C.label=5;case 5:return c=!0,[3,2];case 6:return[3,9];case 7:return O=C.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(t){var r=_sliced_to_array(t,2),o=r[0],i=r[1];if(i.on){if(!i.config.init)return i.queueOn=i.queueOn||[],void i.queueOn.push({type:n,data:a});U(e,i,o,n,a)}}),b=!0,h=!1,m=void 0,C.label=10;case 10:C.trys.push([10,16,17,18]),w=Object.values(e.sources)[Symbol.iterator](),C.label=11;case 11:return(b=(j=w.next()).done)?[3,15]:(k=j.value,T(k)&&(null===(o=k.queueOn)||void 0===o?void 0:o.length)?[4,M(0,k)]:[3,13]);case 12:C.sent(),C.label=13;case 13:C.label=14;case 14:return b=!0,[3,11];case 15:return[3,18];case 16:return O=C.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,n){return _async_to_generator(function(){var t,r,o,a,i,s,c,u,l,f,d,_;return _ts_generator(this,function(p){t=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(t=(i=a.next()).done);t=!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(n))&&(f.splice(d,1),f.length>0||(delete e.pending.destinations[c],!1!==(_=Y(u)).config.queue&&(_.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=_))}catch(e){r=!0,o=e}finally{try{t||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,n)]:[3,20];case 19:C.sent(),C.label=20;case 20:return[2,(H(e,n,i,r),!s)]}})})()},K=function(e,n,t,r){if(!e)return[];var o=Fe(null!=n?n:Le(e),w(r));return o?P(o,t):[]},L=function(e,n,t){return _async_to_generator(function(){var r,a,i,s,c,l,f,d,_,p,v,g;return _ts_generator(this,function(y){if(r=n.code,a=n.config,i=void 0===a?{}:a,s=n.env,c=void 0===s?{}:s,l=n.before,f=n.next,d=n.cache,!o(r.push))return[2,J({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(_=t||i||{init:!1},p=l?_object_spread_props(_object_spread({},_),{before:l}):_object_spread({},_),f&&(p=_object_spread_props(_object_spread({},p),{next:f})),d&&(p=_object_spread_props(_object_spread({},p),{cache:d})),v=_object_spread_props(_object_spread({},r),{config:p,env:Q(r.env,c)}),!(g=v.config.id))do{g=u(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[g]);return[2,(e.destinations[g]=v,!1!==v.config.queue&&(v.queuePush=_to_consumable_array(e.queue)),F(e,void 0,{},_define_property({},g,v)))]})})()},F=function(t,r,o){return _async_to_generator(function(t,r){var o,a,i,s,u,l,f,d,_,p,v,y,b,h,m,C,A,P,q,E,D=arguments;return _ts_generator(this,function(I){switch(I.label){case 0:return o=D.length>2&&void 0!==D[2]?D[2]:{},a=D.length>3?D[3]:void 0,i=t.allowed,s=t.consent,u=t.globals,l=t.user,i?(r&&(t.queue.push(r),t.status.in++),a||(a=t.destinations),f=t.transformers?S(t.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,p,v,y,b,h,m,C,S,A,P,q,E,D,I,M,T,R,N,G,B,U,H;return _ts_generator(this,function(W){switch(W.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(Re(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===(p=_.queueOn)||void 0===p?void 0:p.length))return[3,5];h=!1,W.label=1;case 1:return W.trys.push([1,3,,4]),[4,V(t,_,d)];case 2:return h=W.sent(),[3,4];case 3:return m=W.sent(),C=_.type||"unknown",t.logger.scope(C).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(S=[],A=y.filter(function(e){var n=c(_.config.consent,s,e.consent);return!n||(e.consent=n,S.push(e),!1)}),(a=_.queuePush).push.apply(a,_to_consumable_array(A)),!S.length)return[2,{id:d,destination:_,queue:y}];E=!1,W.label=6;case 6:return W.trys.push([6,8,,9]),[4,V(t,_,d)];case 7:return E=W.sent(),[3,9];case 8:return D=W.sent(),I=_.type||"unknown",t.logger.scope(I).error("Destination init threw",{error:_instanceof(D,Error)?D.message:String(D)}),[3,9];case 9:return E?(_.dlq||(_.dlq=[]),M=_.config.before,T=K(M,M&&Array.isArray(M)?Le(M):void 0,f,b),R=_.config.next,N=R&&Array.isArray(R)?Le(R):void 0,G=null===(v=_.config)||void 0===v?void 0:v.cache,B=G?j(G):void 0,U=B?x(B,t):void 0,H=0,[4,Promise.all(S.map(function(e){return _async_to_generator(function(){var r,a,i,s,c,p,v,y,h,m,j,C,x;return _ts_generator(this,function(S){switch(S.label){case 0:if(e.globals=n(u,e.globals),e.user=n(l,e.user),(null==B?void 0:B.stop)&&U){if(a=w(b,e),"HIT"===(null==(i=k(B,U,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,T.length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Je(t,t.transformers,T,e,b,o.respond,"destination.".concat(d,".before"))]:[3,2];case 1:if(null===(p=S.sent()).event)return[2,e];p.respond&&(c=p.respond),s=Array.isArray(p.event)?p.event[0]:p.event,S.label=2;case 2:if(B&&!B.stop&&U){if(v=w(b,s),"HIT"===(null==(y=k(B,U,v))?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(z,function(e){var n=_.type||"unknown";t.logger.scope(n).error("Push failed",{error:e,event:s.name}),P=e,m=!0,_.dlq.push([s,e])})(t,_,d,s,b,c)];case 3:return j=S.sent(),H+=Date.now()-h,r&&U&&void 0===_.config.mock&&O(U,r.key,null==j||j,r.ttl),void 0!==j&&(q=j),m||!R?[3,5]:(void 0!==j&&(b._response=j),(C=K(R,N,f,b)).length>0&&t.transformers&&Object.keys(t.transformers).length>0?[4,Je(t,t.transformers,C,s,b,c,"destination.".concat(d,".next"))]:[3,5]);case 4:(x=S.sent()).respond&&(c=x.respond),S.label=5;case 5:return[2,e]}})})()}))]):[2,{id:d,destination:_,queue:y}];case 10:return[2,(W.sent(),{id:d,destination:_,error:P,response:q,totalDuration:H})]}})})()}))]):[2,J({ok:!1})];case 1:d=I.sent(),_={},p={},v={},y=!0,b=!1,h=void 0;try{for(m=d[Symbol.iterator]();!(y=(C=m.next()).done);y=!0)(A=C.value).skipped||(P={type:A.destination.type||"unknown",data:A.response},t.status.destinations[A.id]||(t.status.destinations[A.id]={count:0,failed:0,duration:0}),q=t.status.destinations[A.id],E=Date.now(),A.error?(P.error=A.error,v[A.id]=P,q.failed++,q.lastAt=E,q.duration+=A.totalDuration||0,t.status.failed++):A.queue&&A.queue.length?p[A.id]=P:(_[A.id]=P,q.count++,q.lastAt=E,q.duration+=A.totalDuration||0,t.status.out++))}catch(e){b=!0,h=e}finally{try{y||null==m.return||m.return()}finally{if(b)throw h}}return[2,J(_object_spread({event:r},Object.keys(_).length&&{done:_},Object.keys(p).length&&{queued:p},Object.keys(v).length&&{failed:v}))]}})}).apply(this,arguments)},V=function(e,n,t){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!n.init||n.config.init?[3,2]:(o=n.type||"unknown",a=e.logger.scope(o),i={collector:e,logger:a,id:t,config:n.config,env:Q(n.env,n.config.env)},a.debug("init"),[4,m(n.init,"DestinationInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=y.sent()))return[2,s];if(n.config=_object_spread_props(_object_spread({},s||n.config),{init:!0}),null===(r=n.queueOn)||void 0===r?void 0:r.length){c=n.queueOn,n.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,U(e,n,t,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]}})})()},z=function(e,n,t,o,a,i){return _async_to_generator(function(){var s,c,u,f,d,_,p,v,g,y;return _ts_generator(this,function(b){switch(b.label){case 0:return s=n.config,[4,h(o,s,e)];case 1:return(c=b.sent()).ignore?[2,!1]:(u=n.type||"unknown",f=e.logger.scope(u),d={collector:e,logger:f,id:t,config:s,data:c.data,rule:c.mapping,ingest:a,env:_object_spread({},Q(n.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(f.debug("mock",{event:c.event.name}),s.mock)]:(_=c.mapping,p=c.mappingKey||"* *",(null==_?void 0:_.batch)&&n.pushBatch&&void 0===s.mock?[3,3]:(f.debug("push",{event:c.event.name}),[4,m(n.push,"DestinationPush",e.hooks,e.logger)(c.event,d)])));case 2:return v=b.sent(),[2,(f.debug("push done"),v)];case 3:return n.batches=n.batches||{},n.batches[p]||(g={key:p,events:[],data:[]},n.batches[p]={batched:g,batchFn:l(function(){var r=n.batches[p].batched,o={collector:e,logger:f,id:t,config:s,data:void 0,rule:_,ingest:a,env:_object_spread({},Q(n.env,s.env),i?{respond:i}:{})};f.debug("push batch",{events:r.events.length}),m(n.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(r,o),f.debug("push batch done"),r.events=[],r.data=[]},_.batch)}),(y=n.batches[p]).batched.events.push(c.event),r(c.data)&&y.batched.data.push(c.data),y.batchFn(),[2,!0]}})})()},J=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},Y=function(e){var n=e.code,t=e.config,r=void 0===t?{}:t,o=e.env,a=void 0===o?{}:o,i=e.cache,s=A(e,"before").config,c=A(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},n.config,r,c);i&&(u.cache=i);var l=Q(n.env,a);return _object_spread_props(_object_spread({},n),{config:u,env:l})},$=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,_=arguments;return _ts_generator(this,function(p){n=_.length>1&&void 0!==_[1]?_[1]:{},o={},a=!0,i=!1,s=void 0;try{for(c=Object.entries(n)[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===(t=r.require)||void 0===t?void 0:t.length)?e.pending.destinations[f]=d:o[f]=Y(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)},Q=function(e,n){return e||n?n?e&&a(e)&&a(n)?_object_spread({},e,n):n:e:{}},X=function(e,n,t){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=t.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,t){return setTimeout(function(){return t(new Error("".concat(n," '").concat(o,"' destroy timed out")))},5e3)})])];case 2:return l.sent(),[3,4];case 3:return u=l.sent(),s.error("".concat(n," '").concat(o,"' destroy failed: ").concat(u)),[3,4];case 4:return[2]}})})()}),[4,Promise.allSettled(r)];case 1:return o.sent(),[2]}})})()},Z=function(e,t,r,s){return _async_to_generator(function(){var c,u,l,f,d,_,p;return _ts_generator(this,function(v){switch(v.label){case 0:switch(l=!1,t){case ze.Commands.Config:return[3,1];case ze.Commands.Consent:return[3,2];case ze.Commands.Custom:return[3,3];case ze.Commands.Destination:return[3,4];case ze.Commands.Globals:return[3,11];case ze.Commands.On:return[3,12];case ze.Commands.Ready:return[3,15];case ze.Commands.Run:return[3,16];case ze.Commands.Session:return[3,18];case ze.Commands.Shutdown:return[3,19];case ze.Commands.User:return[3,21]}return[3,22];case 1:return a(r)&&(n(e.config,r,{shallow:!1}),u=r,l=!0),[3,22];case 2:return a(r)&&(f=function(e,t){var r={};return Object.entries(t).forEach(function(e){var n=_sliced_to_array(e,2),t=n[0],o=n[1];r[t]=!!o}),e.consent=n(e.consent,r),{update:r}}(e,r),d=f.update,u=d,l=!0),[3,22];case 3:return a(r)&&(e.custom=n(e.custom,r),u=r,l=!0),[3,22];case 4:return a(r)?"code"in r&&a(r.code)?[4,L(e,r,s)]:[3,6]:[3,10];case 5:return _=c=v.sent(),[3,9];case 6:return(p=o(r.push))?[4,L(e,{code:r},s)]:[3,8];case 7:p=c=v.sent(),v.label=8;case 8:_=p,v.label=9;case 9:v.label=10;case 10:return[3,22];case 11:return a(r)&&(e.globals=n(e.globals,r),u=r,l=!0),[3,22];case 12:return i(r)?[4,B(e,r,s)]:[3,14];case 13:v.sent(),v.label=14;case 14:return[3,22];case 15:return l=!0,[3,22];case 16:return[4,ne(e,r)];case 17:return c=v.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(n){switch(n.label){case 0:return e=g.logger,[4,X(g.sources,"source",e)];case 1:return n.sent(),[4,X(g.destinations,"destination",e)];case 2:return n.sent(),[4,X(g.transformers,"transformer",e)];case 3:return n.sent(),[4,X(g.stores,"store",e)];case 4:return n.sent(),[2]}})})())];case 20:return v.sent(),[3,22];case 21:a(r)&&(n(e.user,r,{shallow:!1}),u=r,l=!0),v.label=22;case 22:return l?[4,W(e,t,void 0,u)]:[3,25];case 23:return v.sent(),[4,F(e)];case 24:c=v.sent(),v.label=25;case 25:return[2,c||J({ok:!0})]}var g})})()},ee=function(e,n){if(!n.name)throw new Error("Event name is required");var t=_sliced_to_array(n.name.split(" "),2),r=t[0],o=t[1];if(!r||!o)throw new Error("Event name is invalid");var a=n.timestamp,i=void 0===a?Date.now():a,s=n.name,c=void 0===s?"".concat(r," ").concat(o):s,u=n.data,l=void 0===u?{}:u,f=n.context,d=void 0===f?{}:f,_=n.globals,p=void 0===_?e.globals:_,v=n.custom,g=void 0===v?{}:v,y=n.user,b=void 0===y?e.user:y,h=n.nested,m=void 0===h?[]:h,w=n.consent,j=void 0===w?e.consent:w,k=n.id,O=void 0===k?function(){for(var e="",n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}():k,C=n.trigger,x=void 0===C?"":C,S=n.entity,A=void 0===S?r:S,P=n.action,q=void 0===P?o:P,E=n.timing,D=void 0===E?0:E,I=n.source;return{name:c,data:l,context:d,globals:p,custom:g,user:b,nested:m,consent:j,id:O,trigger:x,entity:A,action:q,timestamp:i,timing:D,source:void 0===I?{type:"collector",schema:"4"}:I}},ne=function(e,t){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return e.allowed=!0,e.timing=Date.now(),t&&(t.consent&&(e.consent=n(e.consent,t.consent)),t.user&&(e.user=n(e.user,t.user)),t.globals&&(e.globals=n(e.config.globalsStatic||{},t.globals)),t.custom&&(e.custom=n(e.custom,t.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,F(e)];case 1:return[2,r.sent()]}})})()},te=function(t){return _async_to_generator(function(){var r,o,a,i,s,u,l,f,d;return _ts_generator(this,function(p){switch(p.label){case 0:return a=n({globalsStatic:{},sessionStatic:{},run:!0},t,{merge:!1,extend:!1}),i={level:null===(r=t.logger)||void 0===r?void 0:r.level,handler:null===(o=t.logger)||void 0===o?void 0:o.handler},s=_(i),u=_object_spread({},a.globalsStatic,t.globals),(l={allowed:!1,config:a,consent:t.consent||{},custom:t.custom||{},destinations:{},transformers:{},stores:{},globals:u,hooks:t.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:t.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0}).push=function(n,t){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,_,p,v,g,y,b,m,w,j,k,O,C,x,S;return _ts_generator(this,function(A){switch(A.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,p=u,v=r,g=d||_?function(e,n,t){var r=e;return n&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var t=_sliced_to_array(e,1)[0];return n.includes(t)}))),t&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var n=_sliced_to_array(e,1)[0];return!t.includes(n)}))),r}(n.destinations,d,_):void 0,y=null!=s?s:e(i||"unknown"),l?[4,h(v,l,n)]:[3,2];case 1:if((b=A.sent()).ignore)return[2,J({ok:!0})];if(l.consent&&!c(l.consent,n.consent,b.event.consent))return[2,J({ok:!0})];v=b.event,A.label=2;case 2:return(null==f?void 0:f.length)&&n.transformers&&Object.keys(n.transformers).length>0?[4,Je(n,n.transformers,f,v,y,p,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(m=A.sent()).event?[2,J({ok:!0})]:m.stopped?[2,(m.respond&&(p=m.respond),J({ok:!0}))]:(m.respond&&(p=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=t(e),o=ee(n,r),[2,F(n,o,{id:i,ingest:y,respond:p},g)]})})()}))]:[3,5]);case 4:return j=A.sent(),i&&(n.status.sources[i]||(n.status.sources[i]={count:0,duration:0}),(k=n.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:J({ok:!0})];case 5:v=m.event,A.label=6;case 6:return O=t(v),C=ee(n,O),[4,F(n,C,{id:i,ingest:y,respond:p},g)];case 7:return x=A.sent(),i&&(n.status.sources[i]||(n.status.sources[i]={count:0,duration:0}),(S=n.status.sources[i]).count++,S.lastAt=Date.now(),S.duration+=Date.now()-a),[2,x]}})})()},function(){return J({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Push",n.hooks,n.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,n){return m(function(t,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,n(e,t,r,o)];case 1:return[2,a.sent()]}})})()},function(){return J({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(l,Z),f=t.stores||{},[4,function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,_,p,v,g,y,b,h,w,j,k=arguments;return _ts_generator(this,function(O){switch(O.label){case 0:n=k.length>1&&void 0!==k[1]?k[1]:{},t={},r=!0,o=!1,a=void 0,O.label=1;case 1:O.trys.push([1,6,7,8]),i=Object.entries(n)[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,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=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),t[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,t]}})}).apply(this,arguments)}(l,f)];case 1:return l.stores=p.sent(),function(e,n,t){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];n[l]&&r.set(f,n[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=[t.transformers,t.destinations,t.sources];v<g.length;v++){var y=g[v];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,p=e}finally{try{d||null==h.return||h.return()}finally{if(_)throw p}}}function m(e){if(e){var n=!0,t=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!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){t=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(t)throw o}}}}}(f,l.stores,t),l.stores.__cache||(d=new Map,l.stores.__cache={type:"memory",config:{},get:function(e){var n=d.get(e);if(n){if(!(n.expires&&Date.now()>n.expires))return n.value;d.delete(e)}},set:function(e,n,t){d.set(e,{value:n,expires:t?Date.now()+t:void 0})},delete:function(e){d.delete(e)}}),[4,$(l,t.destinations||{})];case 2:return l.destinations=p.sent(),[4,function(n){return _async_to_generator(function(n){var t,r,o,a,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]:{},r={},o=!0,a=!1,i=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=function(){var t,o,a,i,s,c,l,f,d,_,p,v,g,y,b,m,w,j,k,O,C,x;return _ts_generator(this,function(S){switch(S.label){case 0:return t=_sliced_to_array(u.value,2),o=t[0],a=t[1],f=a.code,d=a.env,_=void 0===d?{}:d,p=function(e){var n=!0,t=!1,r=void 0;try{for(var o,a=Object.keys(e)[Symbol.iterator]();!(n=(o=a.next()).done);n=!0){var i=o.value;if(!Ve.has(i))return{ok:!1,code:"UNKNOWN_KEY",key:i,reason:'Unknown key "'.concat(i,'". Allowed: ').concat(_to_consumable_array(Ve).join(", "),".")}}}catch(e){t=!0,r=e}finally{try{n||null==a.return||a.return()}finally{if(t)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),p.ok?(v=A(a,"before"),g=v.config,y=A(_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=n.logger.scope("transformer").scope(o),O={collector:n,logger:k,id:o,ingest:e(o),config:j,env:_},C=null!=f?f:function(e){var n=a.mapping;if(n){var t=[];if(void 0!==n.data&&t.push("data"),n.mapping){var r=!0,i=!1,s=void 0,c=!0,u=!1,l=void 0;try{for(var f,d=Object.entries(n.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]();!(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&&t.push("mapping[".concat(p,"][").concat(m,"].data")),void 0!==j.silent&&t.push("mapping[".concat(p,"][").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 t.length>0&&e.collector.logger.warn("Transformer ".concat(o,": `").concat(t.join(", "),"` ignored at transformer position (only event-mutating fields apply).")),{type:"pass",config:e.config,push:function(t){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return[4,h(t,n,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,C(O)]):(n.logger.warn("Transformer ".concat(o," invalid (").concat(p.code,"): ").concat(p.reason,". Skipping.")),[2,"continue"]);case 1:return x=S.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(t)[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,t.transformers||{})];case 3:return[2,(l.transformers=p.sent(),l)]}})})()},re=function(e){return _async_to_generator(function(){var n,t,r,o,a,i,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,te(e=e||{})];case 1:return n=f.sent(),r=n,t={type:"elb",config:{},push:function(e,n,t,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,n,t)];if("string"==typeof e)c={name:e},n&&"object"==(void 0===n?"undefined":_type_of(n))&&!Array.isArray(n)&&(c.data=n);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,J({ok:!1})];c=e,n&&"object"==(void 0===n?"undefined":_type_of(n))&&!Array.isArray(n)&&(c.data=_object_spread({},c.data||{},n))}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))]})})()}},n.sources.elb=t,[4,N(n,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,i=e.globals,s=e.custom,o?[4,n.command("consent",o)]:[3,4];case 3:f.sent(),f.label=4;case 4:return a?[4,n.command("user",a)]:[3,6];case 5:f.sent(),f.label=6;case 6:return i&&Object.assign(n.globals,i),s&&Object.assign(n.custom,s),n.config.run?[4,n.command("run")]:[3,8];case 7:f.sent(),f.label=8;case 8:return c=t.push,u=Object.values(n.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:n,elb:c})]}})})()},oe=Object.defineProperty,ae=Object.getOwnPropertyDescriptor,ie=Object.getOwnPropertyNames,se=Object.prototype.hasOwnProperty,ce=function(e,n){for(var t in n)oe(e,t,{get:n[t],enumerable:!0})},ue={};ce(ue,{DEFAULT_CATEGORY_MAP:function(){return Xe},SourceCookiePro:function(){return le},analyticsOnlyConsent:function(){return pe},analyticsOnlyMapped:function(){return we},createMockElbFn:function(){return Oe},createMockOneTrustAPI:function(){return xe},createTrigger:function(){return $e},customCategoryConsent:function(){return ye},default:function(){return en},emptyConsent:function(){return ge},fullConsent:function(){return fe},fullConsentMapped:function(){return be},marketingOnlyConsent:function(){return ve},marketingOnlyMapped:function(){return je},minimalConsent:function(){return _e},minimalConsentMapped:function(){return me},noopLogger:function(){return Ce},partialConsent:function(){return de},partialConsentMapped:function(){return he},sourceCookiePro:function(){return Ze},step:function(){return Se},trigger:function(){return Qe}});var le={},fe=",C0001,C0002,C0003,C0004,C0005,",de=",C0001,C0003,",_e=",C0001,",pe=",C0001,C0002,",ve=",C0001,C0004,",ge="",ye=",C0001,CUSTOM01,CUSTOM02,",be={functional:!0,analytics:!0,marketing:!0},he={functional:!0,analytics:!1,marketing:!1},me={functional:!0,analytics:!1,marketing:!1},we={functional:!0,analytics:!0,marketing:!1},je={functional:!0,analytics:!1,marketing:!0},ke=function(){},Oe=function(){return function(){return Promise.resolve({ok:!0})}},Ce={error:ke,warn:ke,info:ke,debug:ke,throw:function(e){throw"string"==typeof e?new Error(e):e},json:ke,scope:function(){return Ce}},xe=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return{IsAlertBoxClosed:function(){return e}}},Se={};ce(Se,{categoryMapOverride:function(){return qe},fullConsent:function(){return Ae},minimalConsent:function(){return Pe},sdkLoadedDetection:function(){return Ee}});var Ae={title:"Full consent",description:"A CookiePro OptanonConsent cookie listing all groups is translated into a walker consent command with all true.",trigger:{type:"consent"},in:",C0001,C0002,C0003,C0004,C0005,",out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!0}]]},Pe={title:"Minimal consent",description:"Only the necessary CookiePro group is granted so analytics and marketing map to false in the walker consent command.",trigger:{type:"consent"},in:",C0001,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!1}]]},qe={title:"Category map override",description:"Custom categoryMap remaps C0002 from analytics to statistics",trigger:{type:"consent"},in:",C0001,C0002,",mapping:{categoryMap:{C0002:"statistics"}},out:[["elb","walker consent",{functional:!0,statistics:!0,marketing:!1}]]},Ee={title:"SDK loaded detection",description:"Immediate detection when OneTrust SDK is already loaded with IsAlertBoxClosed() = true",trigger:{type:"consent"},in:",C0001,C0003,C0004,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!0}]]},De=Object.defineProperty;!function(e,n){for(var t in n)De(e,t,{get:n[t],enumerable:!0})}({},{Level:function(){return Me}});var Ie,Me=((Ie=Me||{})[Ie.ERROR=0]="ERROR",Ie[Ie.WARN=1]="WARN",Ie[Ie.INFO=2]="INFO",Ie[Ie.DEBUG=3]="DEBUG",Ie),Te={merge:!0,shallow:!0,extend:!0};function Re(e){var n=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(n.has(e))return n.get(e);var t=Object.prototype.toString.call(e);if("[object Object]"===t){var r={};for(var o in n.set(e,r),e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=Re(e[o],n));return r}if("[object Array]"===t){var a=[];return n.set(e,a),e.forEach(function(e){a.push(Re(e,n))}),a}if("[object Date]"===t)return new Date(e.getTime());if("[object RegExp]"===t){var i=e;return new RegExp(i.source,i.flags)}return e}function Ne(e){for(var n=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&&t(a)){var c=o.slice(i+1).join("."),u=[],l=!0,f=!1,d=void 0;try{for(var _,p=a[Symbol.iterator]();!(l=(_=p.next()).done);l=!0){var v=Ne(_.value,c,n);u.push(v)}}catch(e){f=!0,d=e}finally{try{l||null==p.return||p.return()}finally{if(f)throw d}}return u}if(void 0===(a=_instanceof(a,Object)?a[s]:void 0))break}return r(a)?a:n}var Ge={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,n,t,r){var o="".concat(Me[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(t).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(o,n,t):i(o,n)};function Ue(e){var n=e.level,t=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=n){var i=d(r,a);t?t(e,i.message,i.context,o,Be):Be(e,i.message,i.context,o)}};return{error:function(e,n){return a(0,e,n)},warn:function(e,n){return a(1,e,n)},info:function(e,n){return a(2,e,n)},debug:function(e,n){return a(3,e,n)},throw:function(e,n){var r=d(e,n);throw t?t(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 Ue({level:n,handler:t,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function He(e){return function(e){return"boolean"==typeof e}(e)||i(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!r(e)||t(e)&&e.every(He)||a(e)&&Object.values(e).every(He)}function We(e,n,o){return _async_to_generator(function(){return _ts_generator(this,function(a){return[2,(t(n)?n:[n]).reduce(function(n,a){return _async_to_generator(function(){var s,u,l,f,d,_,v,y,h,m,w,j,k,O,C,x,S,A,P,q,E,D;return _ts_generator(this,function(I){switch(I.label){case 0:return[4,n];case 1:return(s=I.sent())?[2,s]:(u=i(a)?{key:a}:a,Object.keys(u).length?(l=u.condition,f=u.consent,d=u.fn,_=u.key,v=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=!I.sent(),I.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=I.sent(),I.label=5;case 5:return _&&(O=Ne(e,_,w)),v?(C=_sliced_to_array(v,2),x=C[0],S=C[1],"this"!==x?[3,6]:(P=[e],[3,8])):[3,11];case 6:return[4,b(e,x,j)];case 7:P=I.sent(),I.label=8;case 8:return t(A=P)?[4,Promise.all(A.map(function(e){return b(e,S,j)}))]:[3,10];case 9:O=I.sent().filter(r),I.label=10;case 10:return[3,17];case 11:return y?[4,Object.entries(y).reduce(function(n,t){var o=_sliced_to_array(t,2),a=o[0],i=o[1];return _async_to_generator(function(){var t,o;return _ts_generator(this,function(s){switch(s.label){case 0:return[4,n];case 1:return t=s.sent(),[4,b(e,i,j)];case 2:return o=s.sent(),[2,(r(o)&&(t[a]=o),t)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=I.sent(),[3,16];case 13:return(q=h)?[4,Promise.all(h.map(function(n){return We(e,n,j)}))]:[3,15];case 14:q=O=I.sent(),I.label=15;case 15:I.label=16;case 16:I.label=17;case 17:return(E=m)?[4,g(m)(O,j)]:[3,19];case 18:E=!I.sent(),I.label=19;case 19:return E&&(O=void 0),D=p(O),[2,r(D)?D:p(w)]}})})()},Promise.resolve(void 0))]})})()}function Ke(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var n=e.and.map(Ke);return function(e){return n.every(function(n){return n(e)})}}if("or"in e){var t=e.or.map(Ke);return function(e){return t.some(function(n){return n(e)})}}return function(e){var n=e.key,t=e.operator,r=e.value,o=e.not,a=function(e,n){switch(e){case"eq":return function(e){return String(null!=e?e:"")===n};case"contains":return function(e){return String(null!=e?e:"").includes(n)};case"prefix":return function(e){return String(null!=e?e:"").startsWith(n)};case"suffix":return function(e){return String(null!=e?e:"").endsWith(n)};case"regex":var t=new RegExp(n);return function(e){return t.test(String(null!=e?e:""))};case"gt":var r=Number(n);return function(e){return Number(e)>r};case"lt":var o=Number(n);return function(e){return Number(e)<o};case"exists":return function(e){return null!=e}}}(t,r);return function(e){var t=Ne(e,n),r=a(t);return o?!r:r}}(e)}function Le(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===(n=e)?"undefined":_type_of(n))&&null!==n&&!Array.isArray(n)&&("match"in n||"next"in n||"case"in n);var n})}(e))return Le({case:e});if(e.every(function(e){return"string"==typeof e}))return{type:"chain",value:e};var n=[],t=!0,r=!1,o=void 0;try{for(var a,i=e[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=Le(a.value);void 0!==s&&n.push(s)}}catch(e){r=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(r)throw o}}if(0===n.length)return;return{type:"sequence",value:n}}var c=e;if("next"in c&&void 0!==c.next)return c.match?{type:"gate",match:Ke(c.match),next:Le(c.next)}:Le(c.next);if("case"in c&&c.case){var u=c.case.map(function(e){var 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:Le(e)};var t=e;return{match:t.match?Ke(t.match):function(){return!0},next:null!==(n=Le(t))&&void 0!==n?n:{type:"chain",value:[]}}});return c.match?{type:"gate",match:Ke(c.match),next:{type:"case",routes:u}}:{type:"case",routes:u}}return c.match?{type:"gate",match:Ke(c.match)}:void 0}}function Fe(e){var n=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(n))return;return Fe(e.next,n)}if("sequence"===e.type){var t=[],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=Fe(i.value,n);void 0!==u&&(Array.isArray(u)?(c=t).push.apply(c,_to_consumable_array(u)):t.push(u))}}catch(e){o=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return t.length>0?t:void 0}var l=!0,f=!1,d=void 0;try{for(var _,p=e.routes[Symbol.iterator]();!(l=(_=p.next()).done);l=!0){var v=_.value;if(v.match(n))return Fe(v.next,n)}}catch(e){f=!0,d=e}finally{try{l||null==p.return||p.return()}finally{if(f)throw d}}}}var Ve=new Set(_to_consumable_array(["code","package","before","next","cache","mapping"]).concat(["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"])),ze={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 Je(n,t,r,o,a,i,s){return _async_to_generator(function(){var c,u,l,f,d,_,p,v,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,_,p,y,b,h,m,C,A,I,M,T,R,N,G,B,U,H,W,K,L,F,V,z,J,Y,$,Q,X,Z,ee,ne,te,re,oe,ae,ie;return _ts_generator(this,function(se){switch(se.label){case 0:return o=v.value,(p=t[o])?a&&a._meta&&a._meta.path.length>256?[2,{v:(n.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(q)(n,p,o)]):(n.logger.warn("Transformer not found: ".concat(o)),[2,"continue"]);case 1:if(!se.sent())return[2,{v:(n.logger.error("Transformer init failed: ".concat(o)),{event:null,respond:u})}];if(s&&void 0!==(null===(l=p.config)||void 0===l||null===(i=l.chainMocks)||void 0===i?void 0:i[s]))return y=p.config.chainMocks[s],n.logger.scope("transformer:".concat(p.type||"unknown")).debug("chainMock",{chain:s}),c=y,[2,"continue"];if(void 0!==(null===(f=p.config)||void 0===f?void 0:f.mock))return n.logger.scope("transformer:".concat(p.type||"unknown")).debug("mock"),c=p.config.mock,[2,"continue"];if(null===(d=p.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(b=null===(_=p.config)||void 0===_?void 0:_.cache,h=b?j(b):void 0,m=h?x(h,n):void 0,C=void 0,h&&m){if(A=w(a,c),"HIT"===(null==(I=k(h,m,A))?void 0:I.status)&&I.value)return c=I.value,h.stop?[2,{v:{event:c,respond:u,stopped:!0}}]:[2,"continue"];"MISS"===(null==I?void 0:I.status)&&(C={key:I.key,ttl:I.rule.ttl})}return(M=p.config.before)&&(T=P(D(M,w(a,c)),S(t))).length>0?[4,Je(n,t,T,c,a,u,s)]:[3,3];case 2:if(null===(G=se.sent()).event)return[2,{v:{event:null,respond:null!==(R=G.respond)&&void 0!==R?R:u}}];if(G.stopped)return[2,{v:{event:Array.isArray(G.event)?G.event[0]:G.event,respond:null!==(N=G.respond)&&void 0!==N?N:u,stopped:!0}}];G.respond&&(u=G.respond),c=Array.isArray(G.event)?G.event[0]:G.event,se.label=3;case 3:return[4,g(E,function(e){return n.logger.scope("transformer:".concat(p.type||"unknown")).error("Push failed",{error:e}),!1})(n,p,o,c,a,u)];case 4:return!1===(B=se.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(B)?(U=r.slice(r.indexOf(o)+1),[4,Promise.all(B.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=D(r.next,w(i,o)))&&(f=P(l,S(t))).length>0?[2,Je(n,t,f,o,i,u,s)]:[2,{event:o,respond:u}]:[2,U.length>0?Je(n,t,U,o,i,u,s):{event:o,respond:u}]})})()}))]):[3,6];case 5:H=se.sent(),W=u,K=[],L=!0,F=!1,V=void 0;try{for(z=H.flat()[Symbol.iterator]();!(L=(J=z.next()).done);L=!0)if(null!==(Y=J.value))if(Y&&"object"==(void 0===Y?"undefined":_type_of(Y))&&"event"in Y){if((Q=Y).respond&&(W=Q.respond),null===Q.event)continue;Array.isArray(Q.event)?($=K).push.apply($,_to_consumable_array(Q.event)):K.push(Q.event)}else K.push(Y)}catch(e){F=!0,V=e}finally{try{L||null==z.return||z.return()}finally{if(F)throw V}}return[2,{v:0===K.length?{event:null,respond:W}:1===K.length?{event:K[0],respond:W}:{event:K,respond:W}}];case 6:if(B&&"object"==(void 0===B?"undefined":_type_of(B))){if(X=B.event,Z=B.respond,ee=B.next,Z&&(u=Z),ee)return(ne=D(ee,w(a,c)))?[2,{v:(te=P(ne,S(t))).length>0?Je(n,t,te,X||c,a,u,s):(n.logger.warn("Branch target not found: ".concat(JSON.stringify(ee))),{event:null,respond:u})}]:(X&&(c=X),[2,"continue"]);X&&(c=X)}return C&&m&&O(m,C.key,c,C.ttl),re=p.config.next?Le(p.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),(!B||"object"==(void 0===B?"undefined":_type_of(B))&&!B.next)&&re&&oe?(ae=Fe(re,w(a,c)))&&(ie=P(ae,S(t))).length>0?[2,{v:Je(n,t,ie,c,a,u,s)}]:[2,{v:{event:c,respond:u}}]:[2]}})},p=r[Symbol.iterator](),h.label=2;case 2:return(l=(v=p.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==p.return||p.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var Ye,$e=function(e){return _async_to_generator(function(){var n,t;return _ts_generator(this,function(r){return t=function(){return function(t){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){switch(i.label){case 0:return(r=window).OptanonActiveGroups=t,r.OneTrust={IsAlertBoxClosed:function(){return!0}},n?[3,2]:[4,re(_object_spread_props(_object_spread({},e),{run:null===(o=e.run)||void 0===o||o}))];case 1:a=i.sent(),n={collector:a.collector,elb:a.elb},i.label=2;case 2:return[2]}})})()}},[2,{get flow(){return n},trigger:t}]})})()},Qe=function(e,n){var t=n.window;"string"==typeof e&&(t.OptanonActiveGroups=e,t.OneTrust={IsAlertBoxClosed:function(){return!0}})},Xe={C0001:"functional",C0002:"analytics",C0003:"functional",C0004:"marketing",C0005:"marketing"},Ze=function(e){return _async_to_generator(function(){var n,t,r,o,a,i,s,c,u,l,f,d,_,p,v,g,y,b,h,m,w,j,k,O;return _ts_generator(this,function(C){return c=e.config,u=e.env,l=u.elb,f=null!==(n=u.window)&&void 0!==n?n:void 0!==globalThis.window?globalThis.window:void 0,d=_object_spread({},Xe,null!==(t=null==c||null===(a=c.settings)||void 0===a?void 0:a.categoryMap)&&void 0!==t?t:{}),_={},Object.entries(d).forEach(function(e){var n=_sliced_to_array(e,2),t=n[0],r=n[1];_[t.toLowerCase()]=r}),p={categoryMap:d,explicitOnly:null===(r=null==c||null===(i=c.settings)||void 0===i?void 0:i.explicitOnly)||void 0===r||r,globalName:null!==(o=null==c||null===(s=c.settings)||void 0===s?void 0:s.globalName)&&void 0!==o?o:"OneTrust"},v={settings:p},b=!1,f&&(m=null!==(h=p.globalName)&&void 0!==h?h:"OneTrust",w=new Set(Object.values(_)),j=function(e){var n={};return w.forEach(function(e){n[e]=!1}),e.split(",").filter(function(e){return e.length>0}).forEach(function(e){var t=_[e.toLowerCase()];t&&(n[t]=!0)}),n},k=function(){var e=f.OptanonActiveGroups;if(null!=e){if(p.explicitOnly){var n=f[m];if((null==n?void 0:n.IsAlertBoxClosed)&&!n.IsAlertBoxClosed())return}var t=j(e);Object.keys(t).length>0&&l("walker consent",t)}},(O=f[m])&&void 0!==f.OptanonActiveGroups&&k(),O||(y=f.OptanonWrapper,b=!0,f.OptanonWrapper=function(){y&&y(),k(),f.OptanonWrapper=y,b=!1}),g=function(){k()},f.addEventListener("OneTrustGroupsUpdated",g)),[2,{type:"cookiepro",config:v,push:l,destroy:function(e){return _async_to_generator(function(){return _ts_generator(this,function(e){return f&&g&&f.removeEventListener("OneTrustGroupsUpdated",g),f&&b&&(f.OptanonWrapper=y),[2]})})()}}]})})()},en=Ze;return Ye=ue,function(e,n,t,r){if(n&&"object"===(void 0===n?"undefined":_type_of(n))||"function"==typeof n){var o=!0,a=!1,i=void 0;try{for(var s,c=function(){var o=s.value;se.call(e,o)||o===t||oe(e,o,{get:function(){return n[o]},enumerable:!(r=ae(n,o))||r.enumerable})},u=ie(n)[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}(oe({},"__esModule",{value:!0}),Ye)}();
1
+ "use strict";function _array_like_to_array(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];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,n,t,r,o,a,i){try{var s=e[a](i),c=s.value}catch(e){return void t(e)}s.done?n(c):Promise.resolve(c).then(r,o)}function _async_to_generator(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var a=e.apply(n,t);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,n,t){return n=_get_prototype_of(n),_possible_constructor_return(e,_is_native_reflect_construct()?Reflect.construct(n,t||[],_get_prototype_of(e).constructor):n.apply(e,t))}function _class_call_check(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function _construct(e,n,t){return _construct=_is_native_reflect_construct()?Reflect.construct:function(e,n,t){var r=[null];r.push.apply(r,n);var o=new(Function.bind.apply(e,r));return t&&_set_prototype_of(o,t.prototype),o},_construct.apply(null,arguments)}function _define_property(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,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,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(n&&n.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),n&&_set_prototype_of(e,n)}function _instanceof(e,n){return null!=n&&"undefined"!=typeof Symbol&&n[Symbol.hasInstance]?!!n[Symbol.hasInstance](e):e instanceof n}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,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,o,a=[],i=!0,s=!1;try{for(t=t.call(e);!(i=(r=t.next()).done)&&(a.push(r.value),!n||a.length!==n);i=!0);}catch(e){s=!0,o=e}finally{try{i||null==t.return||t.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 n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},r=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.forEach(function(n){_define_property(e,n,t[n])})}return e}function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,r)}return t}function _object_spread_props(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e}function _possible_constructor_return(e,n){return!n||"object"!==_type_of(n)&&"function"!=typeof n?_assert_this_initialized(e):n}function _set_prototype_of(e,n){return _set_prototype_of=Object.setPrototypeOf||function(e,n){return e.__proto__=n,e},_set_prototype_of(e,n)}function _sliced_to_array(e,n){return _array_with_holes(e)||_iterable_to_array_limit(e,n)||_unsupported_iterable_to_array(e,n)||_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,n){if(e){if("string"==typeof e)return _array_like_to_array(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(t):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_array_like_to_array(e,n):void 0}}function _wrap_native_super(e){var n="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!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return _construct(e,arguments,_get_prototype_of(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),_set_prototype_of(t,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,n){var t,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(t)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(t=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=n.call(e,a)}catch(e){s=[6,e],r=0}finally{t=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 n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.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(n?"Object is not iterable.":"Symbol.iterator is not defined.")}var SourceCookiePro=function(){var e=function(e,n){if("collector"===e)return"collector";if(!n)throw new Error("stepId(".concat(e,") requires an id"));return"".concat(e,".").concat(n)},n=function(e,n){var t=e.destinations[n];if(!t)throw new Error("Destination not found: ".concat(n));return t},t=function(e,n){var t=e.transformers[n];if(!t)throw new Error("Transformer not found: ".concat(n));return t},r=function(e,n){var t=e.sources[n];if(!t)throw new Error("Source not found: ".concat(n));return t},o=function(e,n){var t=e.stores[n];if(!t)throw new Error("Store not found: ".concat(n));return t},a=function(e){return{_meta:{hops:0,path:[e]}}},i=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};t=_object_spread({},nn,t);var r=Object.entries(n).reduce(function(n,r){var o=_sliced_to_array(r,2),a=o[0],i=o[1],s=e[a];return t.merge&&Array.isArray(s)&&Array.isArray(i)?n[a]=i.reduce(function(e,n){return e.includes(n)?e:_to_consumable_array(e).concat([n])},_to_consumable_array(s)):(t.extend||a in e)&&(n[a]=i),n},{});return t.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,n,t){if(!l(e))return e;for(var r=tn(e),o=n.split("."),a=r,i=0;i<o.length;i++){var s=o[i];i===o.length-1?a[s]=t:(s in a&&"object"==_type_of(a[s])&&null!==a[s]||(a[s]={}),a=a[s])}return r},p=function(e){var n=_object_spread({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),t={},r=!e||0===Object.keys(e).length;return Object.keys(n).forEach(function(o){n[o]&&(t[o]=!0,e&&e[o]&&(r=!0))}),!!r&&t},_=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6,n=arguments.length>1?arguments[1]:void 0;if(n){for(var t=n.length,r="",o=0;o<e;o++)r+=n[Math.random()*t|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,n){var t,r={};return _instanceof(e,Error)?(t=e.message,r.error=v(e)):t=e,void 0!==n&&(_instanceof(n,Error)?r.error=v(n):"object"==(void 0===n?"undefined":_type_of(n))&&null!==n?"error"in(r=_object_spread({},r,n))&&_instanceof(r.error,Error)&&(r.error=v(r.error)):r.value=n),{message:t,context:r}},y=function(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return sn({level:void 0!==n.level?(e=n.level,"string"==typeof e?en[e]:e):0,handler:n.handler,jsonHandler:n.jsonHandler,scope:[]})},h=function(e){return cn(e)?e:void 0},b=function(e,n,t){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(!n)return;return n(e)}finally{null==t||t()}}},m=function(e,n,t){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(),n?[4,n(r)]:[2];case 4:return[4,null==t?void 0:t()];case 5:return a.sent(),[7];case 6:return[2]}})})()}},w=function(e,n,t){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],n&&a&&i?(u="",d=i,p=function(n){if(n)return(s(n)?n:[n]).find(function(n){if(!n.condition)return!0;if(!t)return Boolean(n.condition(e,void 0));var r={event:e,mapping:n,collector:t,logger:t.logger,consent:l(e)&&e.consent||t.consent};return Boolean(n.condition(e,r))})},n[f=a]||(f="*"),[2,((_=n[f])&&(_[d]||(d="*"),c=p(_[d])),c||(f="*",d="*",c=p(null===(r=n[f])||void 0===r?void 0:r[d])),c&&(u="".concat(f," ").concat(d)),{eventMapping:c,mappingKey:u})]):[2,{}]})})()},k=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,u,f,d,p,_,v,g,y,h,b,w=arguments;return _ts_generator(this,function(k){switch(k.label){case 0:if(n=w.length>1&&void 0!==w[1]?w[1]:{},t=w.length>2&&void 0!==w[2]?w[2]:{},!c(e))return[2];if(a=l(e)&&e.consent||t.consent||(null===(o=t.collector)||void 0===o?void 0:o.consent),i=null!==(r=t.event)&&void 0!==r?r:l(e)?e:{},!t.collector)throw new Error("getMappingValue: context.collector is required");u={event:i,mapping:n,collector:t.collector,logger:t.collector.logger,consent:a},f=s(n)?n:[n],d=!0,p=!1,_=void 0,k.label=1;case 1:k.trys.push([1,6,7,8]),v=f[Symbol.iterator](),k.label=2;case 2:return(d=(g=v.next()).done)?[3,5]:(y=g.value,[4,m(ln,function(e){if(_instanceof(e,un))throw e;t.collector&&t.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=k.sent(),c(h))return[2,h];k.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return b=k.sent(),p=!0,_=b,[3,8];case 7:try{d||null==v.return||v.return()}finally{if(p)throw _}return[7];case 8:return[2]}})}).apply(this,arguments)},j=function(e,n,t){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 n.policy?[4,Promise.all(Object.entries(n.policy).map(function(n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];return _async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,k(e,a,{collector:t,event:e})];case 1:return n=r.sent(),e=d(e,o,n),[2]}})})()}))]:[3,2];case 1:y.sent(),y.label=2;case 2:return[4,w(e,n.mapping,t)];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(n){var r=_sliced_to_array(n,2),o=r[0],a=r[1];return _async_to_generator(function(){var n;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,k(e,a,{collector:t,event:e})];case 1:return n=r.sent(),e=d(e,o,n),[2]}})})()}))]:[3,5];case 4:y.sent(),y.label=5;case 5:return(u=n.data)?[4,k(e,n.data,{collector:t,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?(_=a.data)?[4,k(e,a.data,{collector:t,event:e})]:[3,9]:[3,10]):[3,10];case 8:_=y.sent(),y.label=9;case 9:p=_,c=l(c)&&l(p)?i(c,p):p,y.label=10;case 10:return(v=null!==(r=null==a?void 0:a.include)&&void 0!==r?r:n.include)&&v.length>0&&(g=function(e,n){var t={},r=n.includes("all")?Object.keys(on):n,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=on[u];if(f){var d=f(e),p=!0,_=!1,v=void 0;if(l(d))try{for(var g,y=Object.entries(d)[Symbol.iterator]();!(p=(g=y.next()).done);p=!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;t["".concat(u,"_").concat(b)]=w}}}catch(e){_=!0,v=e}finally{try{p||null==y.return||y.return()}finally{if(_)throw v}}}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return t}(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,n,t,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"+n,u="post"+n,l=t[c],f=t[u],d=function(e,n){r?r.warn(e,{error:n}):console.warn(e,n)};if(l)try{s=l.apply(void 0,[{fn:e}].concat(_to_consumable_array(a)))}catch(n){d("Hook ".concat(String(c)," failed, falling back to original function"),n),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}},x=function(e){return e.map(function(e){var n,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:null!==(n=dn(e))&&void 0!==n?n:{type:"chain",value:[]}};var r=e;return{match:r.match?fn(r.match):function(){return!0},next:null!==(t=dn(r))&&void 0!==t?t:{type:"chain",value:[]}}})},C=function(e){var n,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null==e)return[];if("object"==(void 0===e?"undefined":_type_of(e))){var r=pn.get(e);r?n=r:(n=dn(e))&&pn.set(e,n)}else n=dn(e);if(!n)return[];var o=_n(n,t);return void 0===o?[]:Array.isArray(o)?o:[o]},S=function(e,n){var t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t},A=function(e){var n;return{stop:null!==(n=e.stop)&&void 0!==n&&n,storeId:e.store,namespace:e.namespace,rules:e.rules.map(function(e){return{match:e.match?fn(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},q=function(e,n,t,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(t)}))?(a=o.key.map(function(e){var n;return String(null!==(n=rn(t,e))&&void 0!==n?n:"")})).every(function(e){return""===e})?[2,null]:(i=a.join(":"),s=null!=r?r:e.namespace,c=s?"".concat(s,":").concat(i):i,[4,n.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,n,t,r){e.set(n,t,1e3*r)},P=function(e,n,t,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(!n)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(n)[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],p=l[1],_=[o,f],[4,k(t,p,{collector:r})]);case 3:o=d.apply(void 0,_.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,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache},M=function(e){var n={},t=!0,r=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!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})?n[u]={next:l}:n[u]={}}}catch(e){r=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(r)throw o}}return n},T=function(e,n){var t=e.config||{},r=e[n];return void 0!==r?{config:_object_spread_props(_object_spread({},t),_define_property({},n,r)),chainValue:r}:{config:t,chainValue:void 0}},D=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return[];if(Array.isArray(e))return e;for(var t=[],r=new Set,o=e;o&&n[o]&&!r.has(o);){r.add(o),t.push(o);var a=n[o].next;if(Array.isArray(a)){var i;(i=t).push.apply(i,_to_consumable_array(a));break}o=a}return t},R=function(e,n,t){return _async_to_generator(function(){var r,o,i,s;return _ts_generator(this,function(c){switch(c.label){case 0:return!n.init||n.config.init?[3,2]:(r=n.type||"unknown",o=e.logger.scope("transformer:".concat(r)),i={collector:e,logger:o,id:t,ingest:a(t),config:n.config,env:z(n.config.env)},o.debug("init"),[4,O(n.init,"TransformerInit",e.hooks,e.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}),o.debug("init done"),c.label=2;case 2:return[2,!0]}})})()},N=function(e,n,t,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=n.type||"unknown",s=e.logger.scope("transformer:".concat(i)),c={collector:e,logger:s,id:t,ingest:o,config:n.config,env:_object_spread({},z(n.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,O(n.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},B=function(e,n){return e?_object_spread_props(_object_spread({},e),{_meta:_object_spread_props(_object_spread({},e._meta),{path:_to_consumable_array(e._meta.path)})}):a(n)},z=function(e){return e&&l(e)?e:{}},G=function(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(function(e){return"string"==typeof e}))},F=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,p;return _ts_generator(this,function(_){switch(_.label){case 0:if(!n.on||!(null===(r=n.queueOn)||void 0===r?void 0:r.length))return[2];a=n.queueOn,n.queueOn=[],i=t||(null===(o=n.config)||void 0===o?void 0:o.id)||"unknown",s=!0,c=!1,u=void 0,_.label=1;case 1:_.trys.push([1,6,7,8]),l=function(){var t,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return t=d.value,r=t.type,o=t.data,[4,m(n.on,function(n){if(_instanceof(n,un))throw n;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:r,error:n})})(r,o)];case 1:return a.sent(),[2]}})},f=a[Symbol.iterator](),_.label=2;case 2:return(s=(d=f.next()).done)?[3,5]:[5,_ts_values(l())];case 3:_.sent(),_.label=4;case 4:return s=!0,[3,2];case 5:return[3,8];case 6:return p=_.sent(),c=!0,u=p,[3,8];case 7:try{s||null==f.return||f.return()}finally{if(c)throw u}return[7];case 8:return[2]}})})()},H=function(e){var n;return Boolean(e.config.init)&&!(null===(n=e.config.require)||void 0===n?void 0:n.length)},L=function(e,n,t){return _async_to_generator(function(){var r,o,i,s,c,u,l,f,d,p,_,v,g,y,h,b,w,j,O,x,T,R,N,z,F;return _ts_generator(this,function(H){switch(H.label){case 0:return o=t.code,i=t.config,s=void 0===i?{}:i,c=t.env,u=void 0===c?{}:c,l=t.primary,f=t.next,d=t.before,p=t.cache,v=(_=p)?A(_object_spread_props(_object_spread({},_),{stop:null===(r=_.stop)||void 0===r||r})):void 0,g=G(f)?D(f,M(e.transformers)):void 0,y=G(d)?D(d,M(e.transformers)):void 0,h=u.push,b=null!=h?h:e.push,w=Boolean(h),j=function(t,r,o){return _async_to_generator(function(){var a,i,c,u,l,p,_,h,k,j,O,x,A,T,R,N,z,G,F,H,L,U,W,K;return _ts_generator(this,function(V){switch(V.label){case 0:return i=null!=y?y:void 0!==d?function(){var n=C(d,S(o.ingest));return 0===n.length?[]:D(1===n.length?n[0]:n,M(e.transformers))}():[],c=[t],i.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,mn(e,e.transformers,i,t,o.ingest,o.respond,"source.".concat(n,".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=I(v,e))?(p=S(o.ingest),[4,q(v,l,p)]):[3,7];case 3:return(_=V.sent())?"HIT"===_.status&&void 0!==_.value&&v.stop?(k=_.value,_.rule.update?[4,P(k,_.rule.update,_object_spread_props(_object_spread({},p),{cache:{status:"HIT"}}),e)]:[3,5]):[3,6]:[3,7];case 4:k=V.sent(),V.label=5;case 5:return[2,(null===(h=o.respond)||void 0===h||h.call(o,k),{ok:!0})];case 6:"MISS"===_.status&&v.stop&&o.respond&&(j=o.respond,O=_.rule.update,x=_object_spread_props(_object_spread({},p),{cache:{status:"MISS"}}),A=_.key,T=_.rule.ttl,R=function(n){E(l,A,n,T),O?a=_async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,P(n,O,x,e)];case 1:return t=r.sent(),j(t),[2]}})})():j(n)},o.respond=R),"MISS"!==_.status||v.stop||E(l,_.key,!0,_.rule.ttl),V.label=7;case 7:N=g?{kind:"single",preChain:g}:void 0!==f?function(){var n=C(f,S(o.ingest));return 0===n.length?{kind:"single",preChain:[]}:1===n.length?{kind:"single",preChain:D(n[0],M(e.transformers))}:{kind:"many",branches:n.map(function(n){return D(n,M(e.transformers))})}}():{kind:"single",preChain:[]},z={ok:!0},G=!0,F=!1,H=void 0,V.label=8;case 8:V.trys.push([8,13,14,15]),L=function(){var t,a;return _ts_generator(this,function(i){switch(i.label){case 0:return t=W.value,"many"!==N.kind?[3,2]:[4,Promise.all(N.branches.map(function(a,i){return m(function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return[2,w?b(t):b(t,_object_spread_props(_object_spread({},r),{id:n,ingest:B(o.ingest,"".concat(n,".").concat(i)),respond:void 0,mapping:s,preChain:a}))]})})()},function(n){return e.logger.scope("source:many").error("many branch ".concat(i," failed"),{error:n}),{ok:!0}})()}))];case 1:return i.sent(),z={ok:!0},[3,7];case 2:return w?[4,b(t)]:[3,4];case 3:return a=i.sent(),[3,6];case 4:return[4,b(t,_object_spread_props(_object_spread({},r),{id:n,ingest:o.ingest,respond:o.respond,mapping:s,preChain:N.preChain}))];case 5:a=i.sent(),i.label=6;case 6:z=a,i.label=7;case 7:return[2]}})},U=c[Symbol.iterator](),V.label=9;case 9:return(G=(W=U.next()).done)?[3,12]:[5,_ts_values(L())];case 10:V.sent(),V.label=11;case 11:return G=!0,[3,9];case 12:return[3,15];case 13:return K=V.sent(),F=!0,H=K,[3,15];case 14:try{G||null==U.return||U.return()}finally{if(F)throw H}return[7];case 15:return a?[4,a]:[3,17];case 16:V.sent(),V.label=17;case 17:return[2,z]}})})()},O=function(t){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(i){switch(i.label){case 0:return r=a(n),s.ingest&&void 0!==t?[4,k(t,s.ingest,{collector:e})]:[2,r];case 1:return o=i.sent(),[2,_object_spread_props(_object_spread({},r,o),{_meta:r._meta})]}})})()},x=e.logger.scope("source").scope(n),T=_object_spread_props(_object_spread({command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:x},u),{push:function(e){var t=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(n),respond:void 0},[2,j(e,t,r)]})})()}}),R={collector:e,logger:x,id:n,config:s,env:T,withScope:function(e,n,t){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=n,r=o,[2,t(_object_spread_props(_object_spread({},T),{push:function(e){return j(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r)},ingest:r.ingest,respond:r.respond}))]}})})()}},[4,m(o,function(t){if(_instanceof(t,un))throw t;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:n,error:t})})(R)];case 1:return(N=H.sent())?(z=N.type||"unknown",F=e.logger.scope(z).scope(n),[2,(T.logger=F,l&&(N.config=_object_spread_props(_object_spread({},N.config),{primary:l})),N)]):[2]}})})()},U=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,p,_,v,g,y,h,b,w,k=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:n=k.length>1&&void 0!==k[1]?k[1]:{},t={},r=!0,o=!1,a=void 0,j.label=1;case 1:j.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),j.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,L(e,u,l)]);case 3:if(!(d=j.sent()))return[3,4];p=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),p?{require:_to_consumable_array(p)}:{}),t[u]=d,j.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return w=j.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,t),_=!0,v=!1,g=void 0,j.label=9;case 9:j.trys.push([9,14,15,16]),y=function(){var n,t,r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return n=b.value,t=e.sources[n],r=!1,t.init?[4,m(t.init.bind(t),function(t){if(_instanceof(t,un))throw t;r=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:n,error:t})})()]:[3,2];case 1:a.sent(),a.label=2;case 2:return r?[3,5]:(t.config.init=!0,(o=H(t))?[4,F(e,t,n)]:[3,4]);case 3:o=a.sent(),a.label=4;case 4:a.label=5;case 5:return[2]}})},h=Object.keys(t)[Symbol.iterator](),j.label=10;case 10:return(_=(b=h.next()).done)?[3,13]:[5,_ts_values(y())];case 11:j.sent(),j.label=12;case 12:return _=!0,[3,10];case 13:return[3,16];case 14:return w=j.sent(),v=!0,g=w,[3,16];case 15:try{_||null==h.return||h.return()}finally{if(v)throw g}return[7];case 16:return[2,t]}})}).apply(this,arguments)},W=function(e,n,t,r){if(_instanceof(t,un))throw t;e.logger.scope("on").error("on callback failed",_object_spread_props(_object_spread({kind:n},r),{error:t}))},K=function(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}},V=function(e,n,t){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){return r=e.on,o=r[n]||[],(a=s(t)?t:[t]).forEach(function(e){o.push(e)}),r[n]=o,$(e,n,a),[2]})})()},Y=function(e,n,t,r,o){if(n.on){var a=n.type||"unknown",i=e.logger.scope(a).scope("on").scope(r),s={collector:e,logger:i,id:t,config:n.config,data:o,env:de(n.env,n.config.env)};b(n.on,function(n){return W(e,"destination",n,{destId:t,type:r})})(r,s)}},$=function(e,n,t,r){var o,a,i,s,c;switch(n){case bn.Commands.Consent:o=r||e.consent;break;case bn.Commands.Session:o=e.session;break;case bn.Commands.User:o=r||e.user;break;case bn.Commands.Custom:o=r||e.custom;break;case bn.Commands.Globals:o=r||e.globals;break;case bn.Commands.Config:o=r||e.config;break;case bn.Commands.Ready:case bn.Commands.Run:default:o=void 0}if(t.length)switch(n){case bn.Commands.Consent:a=e,i=t,s=r||a.consent,c=K(a,bn.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(n){return n in e}).forEach(function(n){b(e[n],function(e){return W(a,"consent",e,{key:n})})(s,c)})});break;case bn.Commands.Ready:!function(e,n){if(e.allowed){var t=K(e,bn.Commands.Ready);n.forEach(function(n){b(n,function(n){return W(e,"ready",n)})(void 0,t)})}}(e,t);break;case bn.Commands.Run:!function(e,n){if(e.allowed){var t=K(e,bn.Commands.Run);n.forEach(function(n){b(n,function(n){return W(e,"run",n)})(void 0,t)})}}(e,t);break;case bn.Commands.Session:!function(e,n){if(e.session){var t=K(e,bn.Commands.Session);n.forEach(function(n){b(n,function(n){return W(e,"session",n)})(e.session,t)})}}(e,t);break;default:var u=K(e,n);t.forEach(function(t){"function"==typeof t&&b(t,function(t){return W(e,"generic",t,{type:n})})(o,u)})}},J=function(e,n,t,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,p,_,v,g,y,h,b,w,k,j;return _ts_generator(this,function(O){switch(O.label){case 0:switch(i=t||[],t||(i=e.on[n]||[]),n){case bn.Commands.Consent:a=r||e.consent;break;case bn.Commands.Session:a=e.session;break;case bn.Commands.User:a=r||e.user;break;case bn.Commands.Custom:a=r||e.custom;break;case bn.Commands.Globals:a=r||e.globals;break;case bn.Commands.Config:a=r||e.config;break;case bn.Commands.Ready:case bn.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 t,r,o,i,c,u;return _ts_generator(this,function(l){switch(l.label){case 0:return t=_sliced_to_array(p.value,2),r=t[0],o=t[1],(null===(i=o.config.require)||void 0===i?void 0:i.length)&&-1!==(c=o.config.require.indexOf(n))&&o.config.require.splice(c,1),o.on?H(o)?(u=!1,[4,m(o.on,function(t){return W(e,"source",t,{sourceId:r,type:n})})(n,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:n,data:a}),l.label=3;case 3:return[2]}})},d=Object.entries(e.sources)[Symbol.iterator](),O.label=2;case 2:return(c=(p=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 j=O.sent(),u=!0,l=j,[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(t){var r=_sliced_to_array(t,2),o=r[0],i=r[1];if(i.on){if(!i.config.init)return i.queueOn=i.queueOn||[],void i.queueOn.push({type:n,data:a});Y(e,i,o,n,a)}}),_=!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(_=(h=y.next()).done)?[3,14]:(b=_sliced_to_array(h.value,2),w=b[0],k=b[1],H(k)&&(null===(o=k.queueOn)||void 0===o?void 0:o.length)?[4,F(e,k,w)]:[3,12]);case 11:O.sent(),O.label=12;case 12:O.label=13;case 13:return _=!0,[3,10];case 14:return[3,17];case 15:return j=O.sent(),v=!0,g=j,[3,17];case 16:try{_||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,n){return _async_to_generator(function(){var t,r,o,a,i,s,c,u,l,f,d,p;return _ts_generator(this,function(_){t=!0,r=!1,o=void 0;try{for(a=Object.entries(e.pending.destinations)[Symbol.iterator]();!(t=(i=a.next()).done);t=!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(n))&&(f.splice(d,1),f.length>0||(delete e.pending.destinations[c],!1!==(p=le(u)).config.queue&&(p.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=p))}catch(e){r=!0,o=e}finally{try{t||null==a.return||a.return()}finally{if(r)throw o}}return[2]})})()}(e,n)]:[3,19];case 18:O.sent(),O.label=19;case 19:return[2,($(e,n,i,r),!s)]}})})()},Z=function(e,n,t,r){var o;if(!Number.isFinite(t.max)||t.max<=0)throw new Error("pushBounded: max must be > 0 (got ".concat(t.max,")"));if("dropNewest"===(null!==(o=t.onOverflow)&&void 0!==o?o:"dropOldest"))return e.length>=t.max?(r&&r([n]),{appended:!1,dropped:1}):(e.push(n),{appended:!0,dropped:0});for(var a=[];e.length>=t.max;)a.push(e.shift());return e.push(n),a.length>0&&r&&r(a),{appended:!0,dropped:a.length}},Q=function(e,n,t,r){kn.get(e)||(kn.set(e,!0),n.warn(t,r))},X=function(e){kn.delete(e)},ee=function(e){return e===jn},ne=function(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}},te=function(e,n){return e.status.destinations[n]||(e.status.destinations[n]={count:0,failed:0,duration:0,queuePushSize:0,dlqSize:0}),e.status.destinations[n]},re=function(e,n,t,r){var o;e.dropped[n]||(e.dropped[n]={});var a=e.dropped[n];return a[t]=(null!==(o=a[t])&&void 0!==o?o:0)+r,a[t]},oe=function(e,n,t){if(!e)return[];if(Array.isArray(e)&&e.every(function(e){return"string"==typeof e}))return D(e,n);if("string"==typeof e)return D(e,n);var r=C(e,S(t));return 0===r.length?[]:1===r.length?D(r[0],n):D(r,n)},ae=function(e,n){return _async_to_generator(function(){var t,r,o,a,i,s,c,l,f,d,p,v;return _ts_generator(this,function(g){if(t=n.code,r=n.config,o=void 0===r?{}:r,a=n.env,i=void 0===a?{}:a,s=n.before,c=n.next,l=n.cache,!u(t.push))return[2,ue({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})),p=_object_spread_props(_object_spread({},t),{config:d,env:de(t.env,i)}),!(v=p.config.id))do{v=_(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[v]);return[2,(e.destinations[v]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),ie(e,void 0,{},_define_property({},v,p)))]})})()},ie=function(n,t,r){return _async_to_generator(function(n,t){var r,o,s,c,u,l,f,d,_,v,g,y,h,b,w,k,j,O,x,C,P,T,D,R,N,B,z,G,F,H,L,U,W=arguments;return _ts_generator(this,function(K){switch(K.label){case 0:if(r=W.length>2&&void 0!==W[2]?W[2]:{},o=W.length>3?W[3]:void 0,s=n.allowed,c=n.consent,u=n.globals,l=n.user,!s)return[2,ue({ok:!1})];if(t){if(void 0===(f=n.config.queueMax))throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");(d=Z(n.queue,t,{max:f})).dropped>0?(_=re(n.status,e("collector"),"queue",d.dropped),Q(n.queue,n.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:f,droppedCount:_})):n.queue.length<f&&X(n.queue),n.status.in++}return o||(o=n.destinations),v=n.transformers?M(n.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,_,g,y,h,b,w,k,j,O,x,C,P,M,T,D,R,N,B,z,G,F,H,L,U,W,K,V,Y,$,J,ne,ae;return _ts_generator(this,function(ie){switch(ie.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=[],t&&g.push(tn(t)),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,ie.label=1;case 1:return ie.trys.push([1,3,,4]),[4,se(n,d,f)];case 2:return h=ie.sent(),[3,4];case 3:return b=ie.sent(),n.status.failed++,w=d.type||"unknown",n.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(k=[],j=g.filter(function(e){var n=p(d.config.consent,c,e.consent);return!n||(e.consent=n,k.push(e),!1)}),j.length>0){x=d.queuePush,C=d.config.id||f,P={max:null!==(O=d.config.queueMax)&&void 0!==O?O:1e3},M=0,T=!0,D=!1,R=void 0;try{for(N=j[Symbol.iterator]();!(T=(B=N.next()).done);T=!0)z=B.value,M+=Z(x,z,P).dropped}catch(e){D=!0,R=e}finally{try{T||null==N.return||N.return()}finally{if(D)throw R}}M>0?(te(n,C),G=re(n.status,e("destination",C),"queue",M),Q(x,n.logger.scope(d.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:C,cap:P.max,droppedCount:G})):x.length<P.max&&X(x)}if(!k.length)return[2,{id:f,destination:d,queue:g}];L=!1,ie.label=6;case 6:return ie.trys.push([6,8,,9]),[4,se(n,d,f)];case 7:return L=ie.sent(),[3,9];case 8:return U=ie.sent(),n.status.failed++,W=d.type||"unknown",n.logger.scope(W).error("destination init failed",{error:_instanceof(U,Error)?U.message:String(U)}),[3,9];case 9:return L?(d.dlq||(d.dlq=[]),K=oe(d.config.before,v,y),V=d.config.next,Y=null===(_=d.config)||void 0===_?void 0:_.cache,$=Y?A(Y):void 0,J=$?I($,n):void 0,ne=0,ae=0,[4,Promise.all(k.map(function(t){return _async_to_generator(function(){var o,a,s,c,p,_,g,h,b,w,k,j,O;return _ts_generator(this,function(x){switch(x.label){case 0:return t.globals=i(u,t.globals),t.user=i(l,t.user),(null==$?void 0:$.stop)&&J?(a=S(y,t),[4,q($,J,a)]):[3,2];case 1:if("HIT"===(null==(s=x.sent())?void 0:s.status))return[2,t];"MISS"===(null==s?void 0:s.status)&&(o={key:s.key,ttl:s.rule.ttl}),x.label=2;case 2:return c=t,p=r.respond,K.length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,mn(n,n.transformers,K,t,y,r.respond,"destination.".concat(f,".before"))]:[3,4];case 3:if(null===(_=x.sent()).event)return[2,t];_.respond&&(p=_.respond),c=Array.isArray(_.event)?_.event[0]:_.event,x.label=4;case 4:return $&&!$.stop&&J?(g=S(y,c),[4,q($,J,g)]):[3,6];case 5:if("HIT"===(null==(h=x.sent())?void 0:h.status))return[2,t];"MISS"===(null==h?void 0:h.status)&&(o={key:h.key,ttl:h.rule.ttl}),x.label=6;case 6:return b=Date.now(),w=!1,[4,m(ce,function(t){var r,o=d.type||"unknown";n.logger.scope(o).error("Push failed",{error:t,event:c.name}),F=t,w=!0;var a=d.dlq,i=d.config.id||f,s={max:null!==(r=d.config.dlqMax)&&void 0!==r?r:100},u=Z(a,[c,t],s);if(u.dropped>0){te(n,i);var l=re(n.status,e("destination",i),"dlq",u.dropped);Q(a,n.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&&X(a)})(n,d,f,c,y,p)];case 7:return k=x.sent(),ne+=Date.now()-b,o&&J&&void 0===d.config.mock&&E(J,o.key,null==k||k,o.ttl),void 0===k||ee(k)||(H=k),ee(k)&&ae++,w||!V?[3,9]:(void 0!==k&&(y._response=k),(j=oe(V,v,y)).length>0&&n.transformers&&Object.keys(n.transformers).length>0?[4,mn(n,n.transformers,j,c,y,p,"destination.".concat(f,".next"))]:[3,9]);case 8:(O=x.sent()).respond&&(p=O.respond),x.label=9;case 9:return[2,t]}})})()}))]):[2,{id:f,destination:d,queue:g}];case 10:return[2,(ie.sent(),{id:f,destination:d,error:F,response:H,totalDuration:ne,batchedCount:ae,allowedCount:k.length})]}})})()}))];case 1:g=K.sent(),y={},h={},b={},w=!0,k=!1,j=void 0;try{for(O=g[Symbol.iterator]();!(w=(x=O.next()).done);w=!0)(C=x.value).skipped||(N=C.destination,B={type:N.type||"unknown",data:C.response},te(n,C.id),z=n.status.destinations[C.id],G=Date.now(),z.queuePushSize=null!==(P=null===(D=N.queuePush)||void 0===D?void 0:D.length)&&void 0!==P?P:0,z.dlqSize=null!==(T=null===(R=N.dlq)||void 0===R?void 0:R.length)&&void 0!==T?T:0,C.error?(B.error=C.error,b[C.id]=B,z.failed++,z.lastAt=G,z.duration+=C.totalDuration||0,n.status.failed++):C.queue&&C.queue.length?h[C.id]=B:(L=null!==(F=C.batchedCount)&&void 0!==F?F:0,U=null!==(H=C.allowedCount)&&void 0!==H?H:0,(Math.max(0,U-L)>0||0===U)&&(y[C.id]=B,z.count++,z.lastAt=G,z.duration+=C.totalDuration||0,n.status.out++)))}catch(e){k=!0,j=e}finally{try{w||null==O.return||O.return()}finally{if(k)throw j}}return[2,ue(_object_spread({event:t},Object.keys(y).length&&{done:y},Object.keys(h).length&&{queued:h},Object.keys(b).length&&{failed:b}))]}})}).apply(this,arguments)},se=function(e,n,t){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!n.init||n.config.init?[3,2]:(o=n.type||"unknown",a=e.logger.scope(o),i={collector:e,logger:a,id:t,config:n.config,env:de(n.env,n.config.env)},a.debug("init"),[4,O(n.init,"DestinationInit",e.hooks,e.logger)(i)]);case 1:if(!1===(s=y.sent()))return[2,s];if(n.config=_object_spread_props(_object_spread({},s||n.config),{init:!0}),null===(r=n.queueOn)||void 0===r?void 0:r.length){c=n.queueOn,n.queueOn=[],u=!0,l=!1,f=void 0;try{for(d=c[Symbol.iterator]();!(u=(p=d.next()).done);u=!0)_=p.value,v=_.type,g=_.data,Y(e,n,t,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]}})})()},ce=function(n,t,r,o,a,i){return _async_to_generator(function(){var s,u,l,f,d,p,_,v,g,y,h,b,w,k,x,C,S,A,q,E,P,I,M,T,D,R;return _ts_generator(this,function(N){switch(N.label){case 0:return s=t.config,[4,j(o,s,n)];case 1:return(u=N.sent()).ignore?[2,!1]:(l=t.type||"unknown",f=n.logger.scope(l),d={collector:n,logger:f,id:r,config:s,data:u.data,rule:u.mapping,ingest:a,env:_object_spread({},de(t.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(f.debug("mock",{event:u.event.name}),s.mock)]:(p=u.mapping,_=u.mappingKey||"* *",(null==p?void 0:p.batch)&&t.pushBatch&&void 0===s.mock?(t.batches=t.batches||{},t.batches[_]||(x={key:_,entries:[],events:[],data:[]},C=ne(p.batch),S=ne(s.batch),A=null!==(g=null!==(y=C.wait)&&void 0!==y?y:S.wait)&&void 0!==g?g:3e4,q=null!==(h=null!==(b=C.size)&&void 0!==b?b:S.size)&&void 0!==h?h:1e3,E=null!==(w=null!==(k=C.age)&&void 0!==k?k:S.age)&&void 0!==w?w:3e4,P=de(t.env,s.env),I=function(e){var n,t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=function(e,n){var t;return"number"==typeof e?{wait:e}:e?{wait:null!==(t=e.wait)&&void 0!==t?t:n,size:e.size,age:e.age}:{wait:n}}(arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,1e3),a=o.wait,i=o.size,s=o.age,c=null,u=null,l=!1,f=[],d=0,p=function(){c&&(clearTimeout(c),c=null),u&&(clearTimeout(u),u=null),d=0,t=void 0},_=function(){var r=t,o=f;if(p(),f=[],r)return n=e.apply(void 0,_to_consumable_array(r)),o.forEach(function(e){return e(n)}),n;o.forEach(function(e){return e(void 0)})},v=function(){for(var o=arguments.length,p=new Array(o),v=0;v<o;v++)p[v]=arguments[v];return new Promise(function(o){var v=r&&!l;if(t=p,d+=1,f.push(o),c&&clearTimeout(c),c=setTimeout(function(){c=null,r&&!l||_()},a),void 0===s||u||(u=setTimeout(function(){u=null,_()},s)),void 0!==i&&d>=i)_();else if(v){l=!0,n=e.apply(void 0,_to_consumable_array(p));var g=f;f=[],g.forEach(function(e){return e(n)})}})};return v.flush=function(){return t||0!==f.length?new Promise(function(e){f.push(e),_()}):Promise.resolve(void 0)},v.cancel=function(){var e=f;f=[],p(),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,p;return _ts_generator(this,function(v){switch(v.label){case 0:return 0===(a=t.batches[_].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:n,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=t.config.id||r,d=te(n,l),p=!0,[4,m(O(t.pushBatch,"DestinationPushBatch",n.hooks,n.logger),function(r){var o;p=!1;var a=t.dlq=t.dlq||[],s={max:null!==(o=t.config.dlqMax)&&void 0!==o?o:100},c=0,u=!0,_=!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+=Z(a,[h.event,r],s).dropped}}catch(e){_=!0,v=e}finally{try{u||null==y.return||y.return()}finally{if(_)throw v}}if(c>0){var b=re(n.status,e("destination",l),"dlq",c);Q(a,f,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:l,cap:s.max,droppedCount:b})}else a.length<s.max&&X(a);d.failed+=i.entries.length,d.dlqSize=a.length,n.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),p&&(d.count+=i.entries.length,d.lastAt=Date.now(),n.status.out+=i.entries.length),[2]}})})()},{wait:A,size:q,age:E}),t.batches[_]={batched:x,batchFn:function(){I()},flush:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){switch(e.label){case 0:return[4,I.flush()];case 1:return e.sent(),[2]}})})()}}),(M=t.batches[_]).batched.entries.push({event:u.event,ingest:a,respond:i,rule:p,data:u.data}),M.batched.events.push(u.event),c(u.data)&&M.batched.data.push(u.data),T=t.config.id||r,[2,((D=te(n,T)).inFlightBatch=(null!==(v=D.inFlightBatch)&&void 0!==v?v:0)+1,M.batchFn(),jn)]):(f.debug("push",{event:u.event.name}),[4,O(t.push,"DestinationPush",n.hooks,n.logger)(u.event,d)])));case 2:return R=N.sent(),[2,(f.debug("push done"),R)]}})})()},ue=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},le=function(e){var n=e.code,t=e.config,r=void 0===t?{}:t,o=e.env,a=void 0===o?{}:o,i=e.cache,s=T(e,"before").config,c=T(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},n.config,r,c);i&&(u.cache=i);var l=de(n.env,a);return _object_spread_props(_object_spread({},n),{config:u,env:l})},fe=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,p=arguments;return _ts_generator(this,function(_){n=p.length>1&&void 0!==p[1]?p[1]:{},o={},a=!0,i=!1,s=void 0;try{for(c=Object.entries(n)[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===(t=r.require)||void 0===t?void 0:t.length)?e.pending.destinations[f]=d:o[f]=le(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)},de=function(e,n){return e||n?n?e&&l(e)&&l(n)?_object_spread({},e,n):n:e:{}},pe=function(e,n,t){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=t.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,t){return setTimeout(function(){return t(new Error("".concat(n," '").concat(o,"' destroy timed out")))},5e3)})])];case 2:return l.sent(),[3,4];case 3:return u=l.sent(),s.error("".concat(n," '").concat(o,"' destroy failed: ").concat(u)),[3,4];case 4:return[2]}})})()}),[4,Promise.allSettled(r)];case 1:return o.sent(),[2]}})})()},_e=function(e,n,t){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,n){case bn.Commands.Config:return[3,1];case bn.Commands.Consent:return[3,2];case bn.Commands.Custom:return[3,3];case bn.Commands.Destination:return[3,4];case bn.Commands.Globals:return[3,7];case bn.Commands.Hook:return[3,8];case bn.Commands.On:return[3,9];case bn.Commands.Ready:return[3,12];case bn.Commands.Run:return[3,13];case bn.Commands.Session:return[3,15];case bn.Commands.Shutdown:return[3,16];case bn.Commands.User:return[3,18]}return[3,19];case 1:return l(t)&&(i(e.config,t,{shallow:!1}),o=t,a=!0),[3,19];case 2:return l(t)&&(s=function(e,n){var t={};return Object.entries(n).forEach(function(e){var n=_sliced_to_array(e,2),r=n[0],o=n[1];t[r]=!!o}),e.consent=i(e.consent,t),{update:t}}(e,t),c=s.update,o=c,a=!0),[3,19];case 3:return l(t)&&(e.custom=i(e.custom,t),o=t,a=!0),[3,19];case 4:return l(t)&&"code"in t&&l(t.code)?[4,ae(e,t)]:[3,6];case 5:r=g.sent(),g.label=6;case 6:return[3,19];case 7:return l(t)&&(e.globals=i(e.globals,t),o=t,a=!0),[3,19];case 8:return l(t)&&f(t.name)&&u(t.fn)&&(d=t.name,p=t.fn,e.hooks[d]=p,o=t,a=!0),[3,19];case 9:return l(t)&&f(t.type)?(_=t.type,v=t.rules,[4,V(e,_,v)]):[3,11];case 10:g.sent(),g.label=11;case 11:return[3,19];case 12:return a=!0,[3,19];case 13:return[4,ge(e,t)];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(n){switch(n.label){case 0:return e=y.logger,[4,pe(y.sources,"source",e)];case 1:return n.sent(),[4,pe(y.destinations,"destination",e)];case 2:return n.sent(),[4,pe(y.transformers,"transformer",e)];case 3:return n.sent(),[4,pe(y.stores,"store",e)];case 4:return n.sent(),[2]}})})())];case 17:return g.sent(),[3,19];case 18:l(t)&&(i(e.user,t,{shallow:!1}),o=t,a=!0),g.label=19;case 19:return a?[4,J(e,n,void 0,o)]:[3,22];case 20:return g.sent(),[4,ie(e)];case 21:r=g.sent(),g.label=22;case 22:return[2,r||ue({ok:!0})]}var y})})()},ve=function(e,n){if(!n.name)throw new Error("Event name is required");var t=_sliced_to_array(n.name.split(" "),2),r=t[0],o=t[1];if(!r||!o)throw new Error("Event name is invalid");var a=n.timestamp,i=void 0===a?Date.now():a,s=n.name,c=void 0===s?"".concat(r," ").concat(o):s,u=n.data,l=void 0===u?{}:u,f=n.context,d=void 0===f?{}:f,p=n.globals,_=void 0===p?e.globals:p,v=n.custom,g=void 0===v?{}:v,y=n.user,h=void 0===y?e.user:y,b=n.nested,m=void 0===b?[]:b,w=n.consent,k=void 0===w?e.consent:w,j=n.id,O=void 0===j?function(){for(var e="",n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}():j,x=n.trigger,C=void 0===x?"":x,S=n.entity,A=void 0===S?r:S,q=n.action,E=void 0===q?o:q,P=n.timing,I=void 0===P?0:P,M=n.source;return{name:c,data:l,context:d,globals:_,custom:g,user:h,nested:m,consent:k,id:O,trigger:C,entity:A,action:E,timestamp:i,timing:I,source:void 0===M?{type:"collector",schema:"4"}:M}},ge=function(e,n){return _async_to_generator(function(){return _ts_generator(this,function(t){switch(t.label){case 0:return e.allowed=!0,e.timing=Date.now(),n&&(n.consent&&(e.consent=i(e.consent,n.consent)),n.user&&(e.user=i(e.user,n.user)),n.globals&&(e.globals=i(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=i(e.custom,n.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,ie(e)];case 1:return[2,t.sent()]}})})()},ye=function(){var e,n,t,r,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=null!==(e=o.maxEntries)&&void 0!==e?e:1e4,i=null!==(n=o.lowWaterMark)&&void 0!==n?n:.8,s=null!==(t=o.sweepIntervalMs)&&void 0!==t?t: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(),n=0,t=!0,r=!1,o=void 0;try{for(var a,i=u[Symbol.iterator]();!(t=(a=i.next()).done);t=!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),n++)}}catch(e){r=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(r)throw o}}l.evictions_ttl+=n},s))&&"function"==typeof r.unref&&r.unref()),{type:"memory",config:{},get:function(e){var n=u.get(e);if(n)return void 0!==n.expires&&n.expires<=Date.now()?(u.delete(e),l.evictions_ttl++,void l.misses++):(u.delete(e),u.set(e,n),l.hits++,n.value);l.misses++},set:function(e,n,t){var r=!u.has(e);r||u.delete(e),u.set(e,{value:n,expires:void 0!==t?Date.now()+t:void 0}),l.writes++,r&&l.populates++,u.size>a&&function(){if(!(u.size<=a)){var e=u.size-c,n=0,t=!0,r=!1,o=void 0;try{for(var i,s=u.keys()[Symbol.iterator]();!(t=(i=s.next()).done);t=!0){var f=i.value;if(n>=e)break;u.delete(f),n++}}catch(e){r=!0,o=e}finally{try{t||null==s.return||s.return()}finally{if(r)throw o}}l.evictions_entries+=n}}()},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()}}},he=function(e,n){var t=n.cacheConfig,r=n.cacheStore,o=n.namespace,a=n.logger,i=n.storeId,s={hits:0,misses:0,populates:0,writes:0,deletes:0,inflight_dedups:0},c=t.rules.map(function(e){return{match:e.match?fn(e.match):function(){return!0},ttl:e.ttl}}),u=function(e){return"".concat(o,":").concat(e)};function l(e,n){var t=void 0===n?{key:e}:{key:e,value:n};return c.find(function(e){return e.match(t)})}var f=new Map;return{type:e.type,config:e.config,setup:e.setup,get counters(){return _object_spread({},s)},get:function(n){return _async_to_generator(function(){var t,o,a,i;return _ts_generator(this,function(c){switch(c.label){case 0:return t=u(n),[4,r.get(t)];case 1:return void 0!==(o=c.sent())?[2,(s.hits++,o)]:(a=f.get(t))?[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(n)];case 1:if(void 0===(o=c.sent()))return[2];if(!(a=l(n,o)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(t,o,1e3*a.ttl)];case 3:return c.sent(),s.populates++,[3,5];case 4:return i=c.sent(),d("set",n,i),[3,5];case 5:return[2,o];case 6:return f.delete(t),[7];case 7:return[2]}})})(),[2,(f.set(t,i),i)])}})})()},set:function(n,t,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(n,t,o)];case 1:if(c.sent(),!(a=l(n,t)))return[3,5];c.label=2;case 2:return c.trys.push([2,4,,5]),[4,r.set(u(n),t,1e3*a.ttl)];case 3:return c.sent(),[3,5];case 4:return i=c.sent(),d("set",n,i),[3,5];case 5:return[2]}})})()},delete:function(n){return _async_to_generator(function(){var t;return _ts_generator(this,function(o){switch(o.label){case 0:return s.deletes++,[4,e.delete(n)];case 1:o.sent(),o.label=2;case 2:return o.trys.push([2,4,,5]),[4,r.delete(u(n))];case 3:return o.sent(),[3,5];case 4:return t=o.sent(),d("delete",n,t),[3,5];case 5:return[2]}})})()}};function d(e,n,t){var r="store-cache(".concat(i,"): cache ").concat(e,' failed for "').concat(n,'"; backing succeeded, continuing');a?a.warn(r,{error:t}):console.warn(r,t)}},be=function(e,n){var t=n.get,r=n.set,o=n.delete;n.get=O(t,"StoreGet",e.hooks,e.logger),n.set=O(r,"StoreSet",e.hooks,e.logger),n.delete=O(o,"StoreDelete",e.hooks,e.logger)},me=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,p,_,v,g,y,h,b,m,w,k,j,O,x,C,S,A,q,E,P,I,M,T,D,R,N,B,z,G=arguments;return _ts_generator(this,function(F){switch(F.label){case 0:n=G.length>1&&void 0!==G[1]?G[1]:{},t={},r=!0,o=!1,a=void 0,F.label=1;case 1:F.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),F.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,p=void 0===d?{}:d,_=l.env,v=void 0===_?{}:_,g=e.logger.scope("store").scope(u),[4,f({collector:e,logger:g,id:u,config:p,env:v})]);case 3:y=F.sent(),t[u]=y,F.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return h=F.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 n={},t=!0,r=!1,o=void 0;try{for(var a,i=Object.keys(e)[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=a.value;n[s]="WHITE"}}catch(e){r=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(r)throw o}}var c=[],u=[];function l(t){var r,o=n[t];if("BLACK"!==o){if("GRAY"===o){var a=u.indexOf(t),i=u.slice(-1===a?0:a).concat(t).join(" -> ");throw new Error("Cycle in cache.store chain: ".concat(i))}n[t]="GRAY",u.push(t);var s=null===(r=e[t].cache)||void 0===r?void 0:r.store;if(void 0!==s){if(!(s in e))throw new Error('Store "'.concat(t,'" cache.store references "').concat(s,'", which is not declared in flow.stores'));l(s)}u.pop(),n[t]="BLACK",c.push(t)}}var f=!0,d=!1,p=void 0;try{for(var _,v=Object.keys(e)[Symbol.iterator]();!(f=(_=v.next()).done);f=!0){var g=_.value;"WHITE"===n[g]&&l(g)}}catch(e){d=!0,p=e}finally{try{f||null==v.return||v.return()}finally{if(d)throw p}}return c}(b=n),w=!0,k=!1,j=void 0;try{for(O=m[Symbol.iterator]();!(w=(x=O.next()).done);w=!0)C=x.value,(A=b[C].cache)&&(q=void 0,E=void 0,void 0!==A.store?(q=t[A.store],E=A.store):(t.__cache||(t.__cache=ye()),q=t.__cache,E="__cache"),P=null!==(S=A.namespace)&&void 0!==S?S:C,e.logger.scope("store-cache").scope(C).info('store "'.concat(C,'" caches with namespace "').concat(P,':" via ').concat(E)),t[C]=he(t[C],{storeId:C,cacheConfig:A,cacheStore:q,namespace:P,logger:e.logger.scope("store-cache").scope(C)}))}catch(e){k=!0,j=e}finally{try{w||null==O.return||O.return()}finally{if(k)throw j}}I=!0,M=!1,T=void 0;try{for(D=Object.entries(t)[Symbol.iterator]();!(I=(R=D.next()).done);I=!0)N=_sliced_to_array(R.value,2),B=N[0],z=N[1],"__cache"!==B&&be(e,z)}catch(e){M=!0,T=e}finally{try{I||null==D.return||D.return()}finally{if(M)throw T}}return[2,t]}})}).apply(this,arguments)},we=function(e){return _async_to_generator(function(){var n,t,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===(n=e.logger)||void 0===n?void 0:n.level,handler:null===(t=e.logger)||void 0===t?void 0:t.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,n){return O(function(t){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,_,v,g,y,h,b,m,w,k,O,x,C,S;return _ts_generator(this,function(A){switch(A.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,_=c,v=t,g=f||d?function(e,n,t){var r=e;return n&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var t=_sliced_to_array(e,1)[0];return n.includes(t)}))),t&&(r=Object.fromEntries(Object.entries(r).filter(function(e){var n=_sliced_to_array(e,1)[0];return!t.includes(n)}))),r}(e.destinations,f,d):void 0,y=null!=s?s:a(i||"unknown"),u?[4,j(v,u,e)]:[3,2];case 1:if((h=A.sent()).ignore)return[2,ue({ok:!0})];if(u.consent&&!p(u.consent,e.consent,h.event.consent))return[2,ue({ok:!0})];v=h.event,A.label=2;case 2:return(null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0?[4,mn(e,e.transformers,l,v,y,_,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(b=A.sent()).event?[2,ue({ok:!0})]:b.stopped?[2,(b.respond&&(_=b.respond),ue({ok:!0}))]:(b.respond&&(_=b.respond),Array.isArray(b.event)?[4,Promise.all(b.event.map(function(t){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=n(t),o=ve(e,r),[2,ie(e,o,{id:i,ingest:y,respond:_},g)]})})()}))]:[3,5]);case 4:return w=A.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(k=e.status.sources[i]).count+=b.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-o),[2,null!==(m=w[0])&&void 0!==m?m:ue({ok:!0})];case 5:v=b.event,A.label=6;case 6:return O=n(v),x=ve(e,O),[4,ie(e,x,{id:i,ingest:y,respond:_},g)];case 7:return C=A.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(S=e.status.sources[i]).count++,S.lastAt=Date.now(),S.duration+=Date.now()-o),[2,C]}})})()},function(n){if(_instanceof(n,un))throw n;return e.status.failed++,e.logger.error("push failed",{event:t,ingest:r.ingest,error:n}),ue({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=(_=_e,O(function(e,n,t){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,_(d,e,n,t)];case 1:return[2,r.sent()]}})})()},function(t){if(_instanceof(t,un))throw t;return d.status.failed++,d.logger.error("command failed",{command:e,data:n,error:t}),ue({ok:!1})})()];case 1:return[2,r.sent()]}})})()},"Command",(d=u).hooks,d.logger)),l=e.stores||{},[4,me(u,l)];case 1:return u.stores=f.sent(),function(e,n,t){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];n[l]&&r.set(f,n[l])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}if(0!==r.size)for(var d=!0,p=!1,_=void 0,v=0,g=[t.transformers,t.destinations,t.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){p=!0,_=e}finally{try{d||null==b.return||b.return()}finally{if(p)throw _}}}function m(e){if(e){var n=!0,t=!1,o=void 0;try{for(var a,i=Object.entries(e)[Symbol.iterator]();!(n=(a=i.next()).done);n=!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){t=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(t)throw o}}}}}(l,u.stores,e),u.stores.__cache||(u.stores.__cache=ye()),[4,fe(u,e.destinations||{})];case 2:return u.destinations=f.sent(),[4,function(e){return _async_to_generator(function(e){var n,t,r,o,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]:{},t={},r=!0,o=!1,i=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),s=function(){var n,r,o,i,s,c,l,f,d,p,_,v,g,y,h,b,m,w,k,O,x,C;return _ts_generator(this,function(S){switch(S.label){case 0:return n=_sliced_to_array(u.value,2),r=n[0],o=n[1],f=o.code,d=o.env,p=void 0===d?{}:d,_=function(e,n){var t,r=(t=n,new Set(_to_consumable_array(vn[t]).concat(_to_consumable_array(gn),_to_consumable_array(yn[t])))),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(n,". 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&&hn.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:"import must match ".concat(hn.source,". Got: ").concat(JSON.stringify(e.import),".")}}(o,"Transformer"),_.ok?(v=T(o,"before"),g=v.config,y=T(_object_spread_props(_object_spread({},o),{config:g}),"next"),h=y.config,b=Object.keys(p).length>0?_object_spread_props(_object_spread({},h),{env:p}):h,m=o.cache,w=m?_object_spread_props(_object_spread({},b),{cache:m}):b,k=e.logger.scope("transformer").scope(r),O={collector:e,logger:k,id:r,ingest:a(r),config:w,env:p},x=null!=f?f:function(e){var n=o.mapping;if(n){var t=[];if(void 0!==n.data&&t.push("data"),n.mapping){var a=!0,i=!1,s=void 0,c=!0,u=!1,l=void 0;try{for(var f,d=Object.entries(n.mapping)[Symbol.iterator]();!(c=(f=d.next()).done);c=!0){var p=_sliced_to_array(f.value,2),_=p[0],v=p[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&&t.push("mapping[".concat(_,"][").concat(b,"].data")),void 0!==w.silent&&t.push("mapping[".concat(_,"][").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 t.length>0&&e.collector.logger.warn("Transformer ".concat(r,": `").concat(t.join(", "),"` ignored at transformer position (only event-mutating fields apply).")),{type:"pass",config:e.config,push:function(t){return _async_to_generator(function(){var r;return _ts_generator(this,function(o){switch(o.label){case 0:return[4,j(t,n,e.collector)];case 1:return[2,!(r=o.sent()).ignore&&{event:r.event}]}})})()}}}return{type:"pass",config:e.config,push:function(e){return{event:e}}}},[4,x(O)]):(e.logger.warn("Transformer ".concat(r," invalid (").concat(_.code,"): ").concat(_.reason,". Skipping.")),[2,"continue"]);case 1:return C=S.sent(),void 0!==o.before&&void 0===(null===(c=C.config)||void 0===c?void 0:c.before)&&(C.config=_object_spread_props(_object_spread({},null!==(i=C.config)&&void 0!==i?i:{}),{before:o.before})),void 0!==o.next&&void 0===(null===(l=C.config)||void 0===l?void 0:l.next)&&(C.config=_object_spread_props(_object_spread({},null!==(s=C.config)&&void 0!==s?s:{}),{next:o.next})),t[r]=C,[2]}})},c=Object.entries(n)[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,t]}})}).apply(this,arguments)}(u,e.transformers||{})];case 3:return[2,(u.transformers=f.sent(),u)]}var d,_})})()},ke=function(e){return _async_to_generator(function(){var n,t,r,o,a,i,s,c,u,l;return _ts_generator(this,function(f){switch(f.label){case 0:return[4,we(e=e||{})];case 1:return n=f.sent(),r=n,t={type:"elb",config:{},push:function(e,n,t,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,n)];if("string"==typeof e)s={name:e},n&&"object"==(void 0===n?"undefined":_type_of(n))&&!Array.isArray(n)&&(s.data=n);else{if(!e||"object"!=(void 0===e?"undefined":_type_of(e)))return[2,ue({ok:!1})];s=e,n&&"object"==(void 0===n?"undefined":_type_of(n))&&!Array.isArray(n)&&(s.data=_object_spread({},s.data||{},n))}return[2,(t&&"object"==(void 0===t?"undefined":_type_of(t))&&(s.context=t),o&&Array.isArray(o)&&(s.nested=o),a&&"object"==(void 0===a?"undefined":_type_of(a))&&(s.custom=a),r.push(s))]})})()}},n.sources.elb=t,[4,U(n,e.sources||{})];case 2:return f.sent(),o=e.consent,a=e.user,i=e.globals,s=e.custom,o?[4,n.command("consent",o)]:[3,4];case 3:f.sent(),f.label=4;case 4:return a?[4,n.command("user",a)]:[3,6];case 5:f.sent(),f.label=6;case 6:return i&&Object.assign(n.globals,i),s&&Object.assign(n.custom,s),n.config.run?[4,n.command("run")]:[3,8];case 7:f.sent(),f.label=8;case 8:return c=t.push,u=Object.values(n.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:n,elb:c})]}})})()},je=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,xe=Object.getOwnPropertyNames,Ce=Object.prototype.hasOwnProperty,Se=function(e,n){for(var t in n)je(e,t,{get:n[t],enumerable:!0})},Ae={};Se(Ae,{DEFAULT_CATEGORY_MAP:function(){return Cn},SourceCookiePro:function(){return qe},analyticsOnlyConsent:function(){return Me},analyticsOnlyMapped:function(){return Ge},createMockElbFn:function(){return Le},createMockOneTrustAPI:function(){return We},createTrigger:function(){return On},customCategoryConsent:function(){return Re},default:function(){return An},emptyConsent:function(){return De},fullConsent:function(){return Ee},fullConsentMapped:function(){return Ne},marketingOnlyConsent:function(){return Te},marketingOnlyMapped:function(){return Fe},minimalConsent:function(){return Ie},minimalConsentMapped:function(){return ze},noopLogger:function(){return Ue},partialConsent:function(){return Pe},partialConsentMapped:function(){return Be},sourceCookiePro:function(){return Sn},step:function(){return Ke},trigger:function(){return xn}});var qe={},Ee=",C0001,C0002,C0003,C0004,C0005,",Pe=",C0001,C0003,",Ie=",C0001,",Me=",C0001,C0002,",Te=",C0001,C0004,",De="",Re=",C0001,CUSTOM01,CUSTOM02,",Ne={functional:!0,analytics:!0,marketing:!0},Be={functional:!0,analytics:!1,marketing:!1},ze={functional:!0,analytics:!1,marketing:!1},Ge={functional:!0,analytics:!0,marketing:!1},Fe={functional:!0,analytics:!1,marketing:!0},He=function(){},Le=function(){return function(){return Promise.resolve({ok:!0})}},Ue={error:He,warn:He,info:He,debug:He,throw:function(e){throw"string"==typeof e?new Error(e):e},json:He,scope:function(){return Ue}},We=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return{IsAlertBoxClosed:function(){return e}}},Ke={};Se(Ke,{categoryMapOverride:function(){return $e},fullConsent:function(){return Ve},minimalConsent:function(){return Ye},sdkLoadedDetection:function(){return Je}});var Ve={title:"Full consent",description:"A CookiePro OptanonConsent cookie listing all groups is translated into a walker consent command with all true.",trigger:{type:"consent"},in:",C0001,C0002,C0003,C0004,C0005,",out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!0}]]},Ye={title:"Minimal consent",description:"Only the necessary CookiePro group is granted so analytics and marketing map to false in the walker consent command.",trigger:{type:"consent"},in:",C0001,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!1}]]},$e={title:"Category map override",description:"Custom categoryMap remaps C0002 from analytics to statistics",trigger:{type:"consent"},in:",C0001,C0002,",mapping:{categoryMap:{C0002:"statistics"}},out:[["elb","walker consent",{functional:!0,statistics:!0,marketing:!1}]]},Je={title:"SDK loaded detection",description:"Immediate detection when OneTrust SDK is already loaded with IsAlertBoxClosed() = true",trigger:{type:"consent"},in:",C0001,C0003,C0004,",out:[["elb","walker consent",{functional:!0,analytics:!1,marketing:!0}]]},Ze=Object.defineProperty,Qe=function(e,n){for(var t in n)Ze(e,t,{get:n[t],enumerable:!0})};Qe({},{stepId:function(){return e}});Qe({},{getDestination:function(){return n}});Qe({},{Level:function(){return en}});var Xe,en=((Xe=en||{})[Xe.ERROR=0]="ERROR",Xe[Xe.WARN=1]="WARN",Xe[Xe.INFO=2]="INFO",Xe[Xe.DEBUG=3]="DEBUG",Xe);Qe({},{getTransformer:function(){return t}});Qe({},{getSource:function(){return r}});Qe({},{getStore:function(){return o}});var nn={merge:!0,shallow:!0,extend:!0};function tn(e){var n=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(n.has(e))return n.get(e);var t=Object.prototype.toString.call(e);if("[object Object]"===t){var r={};for(var o in n.set(e,r),e)Object.prototype.hasOwnProperty.call(e,o)&&(r[o]=tn(e[o],n));return r}if("[object Array]"===t){var a=[];return n.set(e,a),e.forEach(function(e){a.push(tn(e,n))}),a}if("[object Date]"===t)return new Date(e.getTime());if("[object RegExp]"===t){var i=e;return new RegExp(i.source,i.flags)}return e}function rn(e){for(var n=arguments.length>2?arguments[2]:void 0,t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").split("."),r=e,o=0;o<t.length;o++){var a=t[o];if("*"===a&&s(r)){var i=t.slice(o+1).join("."),u=[],f=!0,d=!1,p=void 0;try{for(var _,v=r[Symbol.iterator]();!(f=(_=v.next()).done);f=!0){var g=rn(_.value,i,n);u.push(g)}}catch(e){d=!0,p=e}finally{try{f||null==v.return||v.return()}finally{if(d)throw p}}return u}if(void 0===(r=l(r)||s(r)?r[a]:void 0))break}return c(r)?r:n}var on={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}}},an=function(e,n,t,r){var o="".concat(en[e]).concat(r.length>0?" [".concat(r.join(":"),"]"):""),a=Object.keys(t).length>0,i=0===e?console.error:1===e?console.warn:console.log;a?i(o,n,t):i(o,n)};function sn(e){var n=e.level,t=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=n){var i=g(r,a);t?t(e,i.message,i.context,o,an):an(e,i.message,i.context,o)}};return{error:function(e,n){return a(0,e,n)},warn:function(e,n){return a(1,e,n)},info:function(e,n){return a(2,e,n)},debug:function(e,n){return a(3,e,n)},throw:function(e,n){var r=g(e,n);throw t?t(0,r.message,r.context,o,an):an(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 sn({level:n,handler:t,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function cn(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(cn)||l(e)&&Object.values(e).every(cn)}var un=function(){function e(n,t){var r;return _class_call_check(this,e),(r=_call_super(this,e,[n,t])).name="FatalError",Object.setPrototypeOf(r,e.prototype),r}return _inherits(e,_wrap_native_super(Error)),e}();function ln(e,n,t){return _async_to_generator(function(){return _ts_generator(this,function(r){return[2,(s(n)?n:[n]).reduce(function(n,r){return _async_to_generator(function(){var o,a,i,u,l,d,_,v,g,y,b,w,j,O,x,C,S,A,q,E,P,I;return _ts_generator(this,function(M){switch(M.label){case 0:return[4,n];case 1:return(o=M.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,_=a.loop,v=a.map,g=a.set,y=a.validate,b=a.value,w=_object_spread_props(_object_spread({},t),{mapping:r}),(j=i)?[4,m(i,function(e){if(_instanceof(e,un))throw e;return w.logger.error("mapping condition failed",{event:w.event,error:e}),!1})(e,w)]:[3,3]):[2]);case 2:j=!M.sent(),M.label=3;case 3:return j?[2]:u&&!p(u,w.consent)?[2,b]:(O=c(b)?b:e,l?[4,m(l,function(e){if(_instanceof(e,un))throw e;w.logger.error("mapping fn failed",{event:w.event,error:e})})(e,w)]:[3,5]);case 4:O=M.sent(),M.label=5;case 5:return d&&(O=rn(e,d,b)),_?(x=_sliced_to_array(_,2),C=x[0],S=x[1],"this"!==C?[3,6]:(q=[e],[3,8])):[3,11];case 6:return[4,k(e,C,w)];case 7:q=M.sent(),M.label=8;case 8:return s(A=q)?[4,Promise.all(A.map(function(e){return k(e,S,w)}))]:[3,10];case 9:O=M.sent().filter(c),M.label=10;case 10:return[3,17];case 11:return v?[4,Object.entries(v).reduce(function(n,t){var r=_sliced_to_array(t,2),o=r[0],a=r[1];return _async_to_generator(function(){var t,r;return _ts_generator(this,function(i){switch(i.label){case 0:return[4,n];case 1:return t=i.sent(),[4,k(e,a,w)];case 2:return r=i.sent(),[2,(c(r)&&(t[o]=r),t)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=M.sent(),[3,16];case 13:return(E=g)?[4,Promise.all(g.map(function(n){return ln(e,n,w)}))]:[3,15];case 14:E=O=M.sent(),M.label=15;case 15:M.label=16;case 16:M.label=17;case 17:return(P=y)?[4,m(y,function(e){if(_instanceof(e,un))throw e;return w.logger.error("mapping validate failed",{event:w.event,error:e}),!1})(O,w)]:[3,19];case 18:P=!M.sent(),M.label=19;case 19:return P&&(O=void 0),I=h(O),[2,c(I)?I:h(b)]}})})()},Promise.resolve(void 0))]})})()}function fn(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var n=e.and.map(fn);return function(e){return n.every(function(n){return n(e)})}}if("or"in e){var t=e.or.map(fn);return function(e){return t.some(function(n){return n(e)})}}return function(e){var n=e.key,t=e.operator,r=e.value,o=e.not,a=function(e,n){switch(e){case"eq":return function(e){return String(null!=e?e:"")===n};case"contains":return function(e){return String(null!=e?e:"").includes(n)};case"prefix":return function(e){return String(null!=e?e:"").startsWith(n)};case"suffix":return function(e){return String(null!=e?e:"").endsWith(n)};case"regex":var t=new RegExp(n);return function(e){return t.test(String(null!=e?e:""))};case"gt":var r=Number(n);return function(e){return Number(e)>r};case"lt":var o=Number(n);return function(e){return Number(e)<o};case"exists":return function(e){return null!=e}}}(t,r);return function(e){var t=rn(e,n),r=a(t);return o?!r:r}}(e)}function dn(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===(n=e)?"undefined":_type_of(n))&&null!==n&&!Array.isArray(n)&&("match"in n||"next"in n||"one"in n||"many"in n);var n})}(e))return dn({one:e});if(e.every(function(e){return"string"==typeof e}))return{type:"chain",value:e};var n=[],t=!0,r=!1,o=void 0;try{for(var a,i=e[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var s=dn(a.value);void 0!==s&&n.push(s)}}catch(e){r=!0,o=e}finally{try{t||null==i.return||i.return()}finally{if(r)throw o}}if(0===n.length)return;return{type:"sequence",value:n}}var c=e;if("next"in c&&void 0!==c.next)return c.match?{type:"gate",match:fn(c.match),next:dn(c.next)}:dn(c.next);if("one"in c&&c.one){var u=x(c.one);return c.match?{type:"gate",match:fn(c.match),next:{type:"one",routes:u}}:{type:"one",routes:u}}if("many"in c&&c.many){var l=x(c.many);return c.match?{type:"gate",match:fn(c.match),next:{type:"many",routes:l}}:{type:"many",routes:l}}return c.match?{type:"gate",match:fn(c.match)}:void 0}}var pn=new WeakMap;function _n(e){var n=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(n))return;return _n(e.next,n)}if("sequence"===e.type){var t=[],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=_n(i.value,n);void 0!==u&&(Array.isArray(u)?(c=t).push.apply(c,_to_consumable_array(u)):t.push(u))}}catch(e){o=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw a}}return t.length>0?t:void 0}if("many"===e.type){var l=[],f=!0,d=!1,p=void 0;try{for(var _,v=e.routes[Symbol.iterator]();!(f=(_=v.next()).done);f=!0){var g,y=_.value;if(y.match(n)){var h=_n(y.next,n);void 0!==h&&(Array.isArray(h)?(g=l).push.apply(g,_to_consumable_array(h)):l.push(h))}}}catch(e){d=!0,p=e}finally{try{f||null==v.return||v.return()}finally{if(d)throw p}}return l.length>0?l:void 0}var b=!0,m=!1,w=void 0;try{for(var k,j=e.routes[Symbol.iterator]();!(b=(k=j.next()).done);b=!0){var O=k.value;if(O.match(n))return _n(O.next,n)}}catch(e){m=!0,w=e}finally{try{b||null==j.return||j.return()}finally{if(m)throw w}}}}var vn={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"]},gn=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],yn={Source:["primary"],Transformer:[],Destination:[],Store:[]},hn=/^[A-Za-z_$][A-Za-z0-9_$]*$/,bn={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 mn(e,n,t,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=t[0])&&void 0!==c?c:"chain")),s&&o._meta&&(o._meta.chainPath=s),u=r,l=i,f=!0,d=!1,p=void 0,b.label=1;case 1:b.trys.push([1,6,7,8]),_=function(){var r,a,i,c,f,d,p,_,v,y,h,b,w,k,j,O,x,P,T,z,G,F,H,L,U,W,K,V,Y,$,J,Z,Q,X,ee,ne,te,re,oe,ae,ie,se,ce,ue,le,fe;return _ts_generator(this,function(de){switch(de.label){case 0:return r=g.value,(p=n[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(R,function(n){if(_instanceof(n,un))throw n;return e.status.failed++,e.logger.scope("transformer:".concat(p.type||"unknown")).error("transformer init failed",{transformer:r,error:n}),!1})(e,p,r)]):(e.logger.warn("Transformer not found: ".concat(r)),[2,"continue"]);case 1:return de.sent()?s&&void 0!==(null===(i=p.config)||void 0===i||null===(a=i.chainMocks)||void 0===a?void 0:a[s])?(_=p.config.chainMocks[s],e.logger.scope("transformer:".concat(p.type||"unknown")).debug("chainMock",{chain:s}),u=_,[2,"continue"]):void 0!==(null===(c=p.config)||void 0===c?void 0:c.mock)?(e.logger.scope("transformer:".concat(p.type||"unknown")).debug("mock"),u=p.config.mock,[2,"continue"]):(null===(f=p.config)||void 0===f?void 0:f.disabled)?[2,"continue"]:(v=null===(d=p.config)||void 0===d?void 0:d.cache,y=v?A(v):void 0,h=y?I(y,e):void 0,b=void 0,y&&h?(w=S(o,u),[4,q(y,h,w)]):[3,3]):[2,{v:{event:null,respond:l}}];case 2:if("HIT"===(null==(k=de.sent())?void 0:k.status)&&k.value)return u=k.value,y.stop?[2,{v:{event:u,respond:l,stopped:!0}}]:[2,"continue"];"MISS"===(null==k?void 0:k.status)&&(b={key:k.key,ttl:k.rule.ttl}),de.label=3;case 3:return(j=p.config.before)?1!==(O=C(j,S(o,u))).length?[3,6]:(x=D(O[0],M(n))).length>0?[4,mn(e,n,x,u,o,l,s)]:[3,5]:[3,9];case 4:if(null===(z=de.sent()).event)return[2,{v:{event:null,respond:null!==(P=z.respond)&&void 0!==P?P:l}}];if(z.stopped)return[2,{v:{event:Array.isArray(z.event)?z.event[0]:z.event,respond:null!==(T=z.respond)&&void 0!==T?T:l,stopped:!0}}];z.respond&&(l=z.respond),u=Array.isArray(z.event)?z.event[0]:z.event,de.label=5;case 5:return[3,9];case 6:return O.length>1?[4,Promise.all(O.map(function(t){return m(mn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,D(t,M(n)),u,B(o,t),void 0,s)}))]:[3,8];case 7:de.sent(),de.label=8;case 8:de.label=9;case 9:return[4,m(N,function(n){return e.logger.scope("transformer:".concat(p.type||"unknown")).error("Push failed",{error:n}),!1})(e,p,r,u,o,l)];case 10:return!1===(G=de.sent())?[2,{v:{event:null,respond:l}}]:Array.isArray(G)?(F=t.slice(t.indexOf(r)+1),[4,Promise.all(G.map(function(t){return _async_to_generator(function(){var r,a,i,c;return _ts_generator(this,function(f){switch(f.label){case 0:return r=t.event||u,a=B(o,"unknown"),t.next?0===(i=C(t.next,S(a,r))).length?[2,{event:r,respond:l}]:1===i.length?[2,(c=D(i[0],M(n))).length>0?mn(e,n,c,r,a,l,s):{event:r,respond:l}]:[4,Promise.all(i.map(function(t){return m(mn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,D(t,M(n)),r,B(a,t),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,F.length>0?mn(e,n,F,r,a,l,s):{event:r,respond:l}]}})})()}))]):[3,12];case 11:H=de.sent(),L=l,U=[],W=!0,K=!1,V=void 0;try{for(Y=H.flat()[Symbol.iterator]();!(W=($=Y.next()).done);W=!0)if(null!==(J=$.value))if(J&&"object"==(void 0===J?"undefined":_type_of(J))&&"event"in J){if((Q=J).respond&&(L=Q.respond),null===Q.event)continue;Array.isArray(Q.event)?(Z=U).push.apply(Z,_to_consumable_array(Q.event)):U.push(Q.event)}else U.push(J)}catch(e){K=!0,V=e}finally{try{W||null==Y.return||Y.return()}finally{if(K)throw V}}return[2,{v:0===U.length?{event:null,respond:L}:1===U.length?{event:U[0],respond:L}:{event:U,respond:L}}];case 12:return G&&"object"==(void 0===G?"undefined":_type_of(G))?(X=G.event,ee=G.respond,ne=G.next,ee&&(l=ee),void 0===ne?[3,14]:0===(te=C(ne,S(o,u))).length?(X&&(u=X),[2,"continue"]):1===te.length?[2,{v:(re=D(te[0],M(n))).length>0?mn(e,n,re,X||u,o,l,s):(e.logger.warn("Branch target not found: ".concat(JSON.stringify(ne))),{event:null,respond:l})}]:(oe={},[4,Promise.all(te.map(function(t){return m(mn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,D(t,M(n)),X||u,B(o,t),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=p.config.next,ie="string"==typeof ae||Array.isArray(ae)&&ae.every(function(e){return"string"==typeof e}),se=void 0!==ae&&!ie,G&&("object"!=(void 0===G?"undefined":_type_of(G))||G.next)||!se?[3,19]:1===(ce=C(p.config.next,S(o,u))).length?[2,{v:(ue=D(ce[0],M(n))).length>0?mn(e,n,ue,u,o,l,s):{event:u,respond:l}}]:(le={},ce.length>1?[4,Promise.all(ce.map(function(t){return m(mn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,D(t,M(n)),u,B(o,t),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=t[Symbol.iterator](),b.label=2;case 2:return(f=(g=v.next()).done)?[3,5]:[5,_ts_values(_())];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,p=h,[3,8];case 7:try{f||null==v.return||v.return()}finally{if(d)throw p}return[7];case 8:return[2,{event:u,respond:l}]}})})()}var wn,kn=new WeakMap,jn=Object.freeze({batched:!0}),On=function(e){return _async_to_generator(function(){var n,t;return _ts_generator(this,function(r){return t=function(){return function(t){return _async_to_generator(function(){var r,o,a;return _ts_generator(this,function(i){switch(i.label){case 0:return(r=window).OptanonActiveGroups=t,r.OneTrust={IsAlertBoxClosed:function(){return!0}},n?[3,2]:[4,ke(_object_spread_props(_object_spread({},e),{run:null===(o=e.run)||void 0===o||o}))];case 1:a=i.sent(),n={collector:a.collector,elb:a.elb},i.label=2;case 2:return[2]}})})()}},[2,{get flow(){return n},trigger:t}]})})()},xn=function(e,n){var t=n.window;"string"==typeof e&&(t.OptanonActiveGroups=e,t.OneTrust={IsAlertBoxClosed:function(){return!0}})},Cn={C0001:"functional",C0002:"analytics",C0003:"functional",C0004:"marketing",C0005:"marketing"},Sn=function(e){return _async_to_generator(function(){var n,t,r,o,a,i,s,c,u,l,f,d,p,_,v,g,y,h,b,m,w,k,j,O;return _ts_generator(this,function(x){return c=e.config,u=e.env,l=u.elb,f=null!==(n=u.window)&&void 0!==n?n:void 0!==globalThis.window?globalThis.window:void 0,d=_object_spread({},Cn,null!==(t=null==c||null===(a=c.settings)||void 0===a?void 0:a.categoryMap)&&void 0!==t?t:{}),p={},Object.entries(d).forEach(function(e){var n=_sliced_to_array(e,2),t=n[0],r=n[1];p[t.toLowerCase()]=r}),_={categoryMap:d,explicitOnly:null===(r=null==c||null===(i=c.settings)||void 0===i?void 0:i.explicitOnly)||void 0===r||r,globalName:null!==(o=null==c||null===(s=c.settings)||void 0===s?void 0:s.globalName)&&void 0!==o?o:"OneTrust"},v={settings:_},h=!1,f&&(m=null!==(b=_.globalName)&&void 0!==b?b:"OneTrust",w=new Set(Object.values(p)),k=function(e){var n={};return w.forEach(function(e){n[e]=!1}),e.split(",").filter(function(e){return e.length>0}).forEach(function(e){var t=p[e.toLowerCase()];t&&(n[t]=!0)}),n},j=function(){var e=f.OptanonActiveGroups;if(null!=e){if(_.explicitOnly){var n=f[m];if((null==n?void 0:n.IsAlertBoxClosed)&&!n.IsAlertBoxClosed())return}var t=k(e);Object.keys(t).length>0&&l("walker consent",t)}},(O=f[m])&&void 0!==f.OptanonActiveGroups&&j(),O||(y=f.OptanonWrapper,h=!0,f.OptanonWrapper=function(){y&&y(),j(),f.OptanonWrapper=y,h=!1}),g=function(){j()},f.addEventListener("OneTrustGroupsUpdated",g)),[2,{type:"cookiepro",config:v,push:l,destroy:function(e){return _async_to_generator(function(){return _ts_generator(this,function(e){return f&&g&&f.removeEventListener("OneTrustGroupsUpdated",g),f&&h&&(f.OptanonWrapper=y),[2]})})()}}]})})()},An=Sn;return wn=Ae,function(e,n,t,r){if(n&&"object"===(void 0===n?"undefined":_type_of(n))||"function"==typeof n){var o=!0,a=!1,i=void 0;try{for(var s,c=function(){var o=s.value;Ce.call(e,o)||o===t||je(e,o,{get:function(){return n[o]},enumerable:!(r=Oe(n,o))||r.enumerable})},u=xe(n)[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}(je({},"__esModule",{value:!0}),wn)}();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$meta": {
3
3
  "package": "@walkeros/web-source-cmp-cookiepro",
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-cmp-cookiepro",
3
3
  "description": "CookiePro/OneTrust consent management source for walkerOS",
4
- "version": "4.1.0-next-1778668930820",
4
+ "version": "4.1.0",
5
5
  "license": "MIT",
6
6
  "walkerOS": {
7
7
  "type": "source",
@@ -33,7 +33,8 @@
33
33
  "./walkerOS.json": "./dist/walkerOS.json"
34
34
  },
35
35
  "files": [
36
- "dist/**"
36
+ "dist/**",
37
+ "CHANGELOG.md"
37
38
  ],
38
39
  "scripts": {
39
40
  "build": "tsup --silent",
@@ -45,8 +46,8 @@
45
46
  "update": "npx npm-check-updates -u && npm update"
46
47
  },
47
48
  "dependencies": {
48
- "@walkeros/core": "4.1.0-next-1778668930820",
49
- "@walkeros/collector": "4.1.0-next-1778668930820"
49
+ "@walkeros/core": "4.1.0",
50
+ "@walkeros/collector": "4.1.0"
50
51
  },
51
52
  "devDependencies": {},
52
53
  "repository": {