@walkeros/web-source-cmp-usercentrics 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 +277 -0
- package/README.md +24 -112
- package/dist/index.browser.js +1 -1
- package/dist/index.es5.js +1 -1
- package/dist/walkerOS.json +1 -1
- package/package.json +5 -4
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
# @walkeros/web-source-cmp-usercentrics
|
|
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
|
+
- ada8316: Support both Usercentrics V2 (`window.UC_UI`) and V3
|
|
90
|
+
(`window.__ucCmp`) APIs. The source now performs a static consent read at init
|
|
91
|
+
when the CMP has already initialized — fixing the race where consent events
|
|
92
|
+
fire before walkerOS loads. New `apiVersion: 'auto' | 'v2' | 'v3'` setting
|
|
93
|
+
(default `'auto'`) controls detection. When both APIs are present, V3 is
|
|
94
|
+
preferred. When neither is present yet, listeners for both are registered so
|
|
95
|
+
late-loading CMPs are still caught. New `v3EventName` setting (default
|
|
96
|
+
`'UC_UI_CMP_EVENT'`) allows pointing at an admin-configured custom V3 event
|
|
97
|
+
name.
|
|
98
|
+
- @walkeros/collector@3.4.2
|
|
99
|
+
- @walkeros/core@3.4.2
|
|
100
|
+
|
|
101
|
+
## 3.4.1
|
|
102
|
+
|
|
103
|
+
### Patch Changes
|
|
104
|
+
|
|
105
|
+
- Updated dependencies [12adf24]
|
|
106
|
+
- Updated dependencies [75aa26b]
|
|
107
|
+
- @walkeros/core@3.4.1
|
|
108
|
+
- @walkeros/collector@3.4.1
|
|
109
|
+
|
|
110
|
+
## 3.4.0
|
|
111
|
+
|
|
112
|
+
### Minor Changes
|
|
113
|
+
|
|
114
|
+
- 724f97e: Migrate every step example in every walkerOS package to the
|
|
115
|
+
standardized `[callable, ...args][]` shape introduced in `@walkeros/core`.
|
|
116
|
+
Every step example's `out` is now an array of effect tuples whose first
|
|
117
|
+
element is the callable's public SDK name (`'gtag'`, `'analytics.track'`,
|
|
118
|
+
`'fbq'`, `'dataLayer.push'`, `'sendServer'`, `'fetch'`, `'trackClient.track'`,
|
|
119
|
+
`'amplitude.track'`, `'fs.writeFile'`, `'producer.send'`, `'client.xadd'`,
|
|
120
|
+
`'client.send'`, `'dataset.table.insert'`, etc.). Source examples use `'elb'`
|
|
121
|
+
as the callable; transformer examples use the reserved `'return'` keyword;
|
|
122
|
+
store examples use store-operation callables (`'get'`, `'set'`). Tests capture
|
|
123
|
+
real calls on each component's spy and assert against `example.out` directly —
|
|
124
|
+
the hardcoded `PACKAGE_CALLS` registry in the app is no longer consulted
|
|
125
|
+
(emptied; plan #3 removes it structurally).
|
|
126
|
+
|
|
127
|
+
### Patch Changes
|
|
128
|
+
|
|
129
|
+
- Updated dependencies [74940cc]
|
|
130
|
+
- Updated dependencies [525f5d9]
|
|
131
|
+
- @walkeros/core@3.4.0
|
|
132
|
+
- @walkeros/collector@3.4.0
|
|
133
|
+
|
|
134
|
+
## 3.3.1
|
|
135
|
+
|
|
136
|
+
### Patch Changes
|
|
137
|
+
|
|
138
|
+
- Updated dependencies [b10144a]
|
|
139
|
+
- Updated dependencies [206185a]
|
|
140
|
+
- Updated dependencies [50e5d09]
|
|
141
|
+
- Updated dependencies [32ff626]
|
|
142
|
+
- @walkeros/collector@3.3.1
|
|
143
|
+
- @walkeros/core@3.3.1
|
|
144
|
+
|
|
145
|
+
## 3.3.0
|
|
146
|
+
|
|
147
|
+
### Patch Changes
|
|
148
|
+
|
|
149
|
+
- Updated dependencies [2849acb]
|
|
150
|
+
- Updated dependencies [08c365a]
|
|
151
|
+
- Updated dependencies [08c365a]
|
|
152
|
+
- Updated dependencies [08c365a]
|
|
153
|
+
- Updated dependencies [08c365a]
|
|
154
|
+
- @walkeros/core@3.3.0
|
|
155
|
+
- @walkeros/collector@3.3.0
|
|
156
|
+
|
|
157
|
+
## 3.2.0
|
|
158
|
+
|
|
159
|
+
### Patch Changes
|
|
160
|
+
|
|
161
|
+
- Updated dependencies [eb865e1]
|
|
162
|
+
- Updated dependencies [c0a53f9]
|
|
163
|
+
- Updated dependencies [8cdc0bb]
|
|
164
|
+
- Updated dependencies [f007c9f]
|
|
165
|
+
- Updated dependencies [bf2dc5b]
|
|
166
|
+
- Updated dependencies [da0b640]
|
|
167
|
+
- Updated dependencies [a5d25bc]
|
|
168
|
+
- Updated dependencies [9a99298]
|
|
169
|
+
- Updated dependencies [884527d]
|
|
170
|
+
- @walkeros/core@3.2.0
|
|
171
|
+
- @walkeros/collector@3.2.0
|
|
172
|
+
|
|
173
|
+
## 3.1.1
|
|
174
|
+
|
|
175
|
+
### Patch Changes
|
|
176
|
+
|
|
177
|
+
- @walkeros/core@3.1.1
|
|
178
|
+
- @walkeros/collector@3.1.1
|
|
179
|
+
|
|
180
|
+
## 3.1.0
|
|
181
|
+
|
|
182
|
+
### Minor Changes
|
|
183
|
+
|
|
184
|
+
- 956c337: Add createTrigger following unified Trigger.CreateFn interface. Step
|
|
185
|
+
examples updated with trigger metadata.
|
|
186
|
+
|
|
187
|
+
### Patch Changes
|
|
188
|
+
|
|
189
|
+
- Updated dependencies [a9149e4]
|
|
190
|
+
- Updated dependencies [dfc6738]
|
|
191
|
+
- Updated dependencies [966342b]
|
|
192
|
+
- Updated dependencies [bee8ba7]
|
|
193
|
+
- Updated dependencies [966342b]
|
|
194
|
+
- Updated dependencies [df990d4]
|
|
195
|
+
- @walkeros/collector@3.1.0
|
|
196
|
+
- @walkeros/core@3.1.0
|
|
197
|
+
|
|
198
|
+
## 3.0.2
|
|
199
|
+
|
|
200
|
+
### Patch Changes
|
|
201
|
+
|
|
202
|
+
- @walkeros/core@3.0.2
|
|
203
|
+
- @walkeros/collector@3.0.2
|
|
204
|
+
|
|
205
|
+
## 3.0.1
|
|
206
|
+
|
|
207
|
+
### Patch Changes
|
|
208
|
+
|
|
209
|
+
- @walkeros/core@3.0.1
|
|
210
|
+
- @walkeros/collector@3.0.1
|
|
211
|
+
|
|
212
|
+
## 3.0.0
|
|
213
|
+
|
|
214
|
+
### Patch Changes
|
|
215
|
+
|
|
216
|
+
- 499e27a: Add sideEffects declarations to all packages for bundler tree-shaking
|
|
217
|
+
support.
|
|
218
|
+
- Updated dependencies [2b259b6]
|
|
219
|
+
- Updated dependencies [2614014]
|
|
220
|
+
- Updated dependencies [6ae0ee3]
|
|
221
|
+
- Updated dependencies [37299a9]
|
|
222
|
+
- Updated dependencies [499e27a]
|
|
223
|
+
- Updated dependencies [499e27a]
|
|
224
|
+
- Updated dependencies [0e5eede]
|
|
225
|
+
- Updated dependencies [d11f574]
|
|
226
|
+
- Updated dependencies [d11f574]
|
|
227
|
+
- Updated dependencies [1fe337a]
|
|
228
|
+
- Updated dependencies [5cb84c1]
|
|
229
|
+
- Updated dependencies [23f218a]
|
|
230
|
+
- Updated dependencies [499e27a]
|
|
231
|
+
- Updated dependencies [c83d909]
|
|
232
|
+
- Updated dependencies [a2aa491]
|
|
233
|
+
- Updated dependencies [b6c8fa8]
|
|
234
|
+
- @walkeros/core@3.0.0
|
|
235
|
+
- @walkeros/collector@3.0.0
|
|
236
|
+
|
|
237
|
+
## 2.1.1
|
|
238
|
+
|
|
239
|
+
### Patch Changes
|
|
240
|
+
|
|
241
|
+
- Updated dependencies [fab477d]
|
|
242
|
+
- @walkeros/core@2.1.1
|
|
243
|
+
- @walkeros/collector@2.1.1
|
|
244
|
+
|
|
245
|
+
## 2.1.0
|
|
246
|
+
|
|
247
|
+
### Minor Changes
|
|
248
|
+
|
|
249
|
+
- 97df0b2: Step examples: upgrade all packages to blueprint pattern with inline
|
|
250
|
+
mapping, no intermediate variables, no `all` export
|
|
251
|
+
|
|
252
|
+
### Patch Changes
|
|
253
|
+
|
|
254
|
+
- 60f0a1c: Add setup functions and renderer metadata for source simulation
|
|
255
|
+
- Updated dependencies [7fc4cee]
|
|
256
|
+
- Updated dependencies [7fc4cee]
|
|
257
|
+
- Updated dependencies [cb2da05]
|
|
258
|
+
- Updated dependencies [2bbe8c8]
|
|
259
|
+
- Updated dependencies [3eb6416]
|
|
260
|
+
- Updated dependencies [02a7958]
|
|
261
|
+
- Updated dependencies [97df0b2]
|
|
262
|
+
- Updated dependencies [97df0b2]
|
|
263
|
+
- Updated dependencies [026c412]
|
|
264
|
+
- Updated dependencies [7d38d9d]
|
|
265
|
+
- @walkeros/core@2.1.0
|
|
266
|
+
- @walkeros/collector@2.1.0
|
|
267
|
+
|
|
268
|
+
## 2.0.1
|
|
269
|
+
|
|
270
|
+
## 0.1.1
|
|
271
|
+
|
|
272
|
+
### Patch Changes
|
|
273
|
+
|
|
274
|
+
- Updated dependencies [32bfc92]
|
|
275
|
+
- Updated dependencies [7b2d750]
|
|
276
|
+
- @walkeros/collector@2.0.0
|
|
277
|
+
- @walkeros/core@1.4.0
|
package/README.md
CHANGED
|
@@ -1,9 +1,20 @@
|
|
|
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-usercentrics
|
|
2
8
|
|
|
3
|
-
Usercentrics consent management
|
|
9
|
+
Integrates Usercentrics consent management with walkerOS by listening for a
|
|
10
|
+
configured window event and mapping category or service consent state to
|
|
11
|
+
walkerOS consent groups.
|
|
4
12
|
|
|
5
|
-
|
|
6
|
-
|
|
13
|
+
[Documentation](https://www.walkeros.io/docs/sources/web/cmps/usercentrics)
|
|
14
|
+
•
|
|
15
|
+
[NPM Package](https://www.npmjs.com/package/@walkeros/web-source-cmp-usercentrics)
|
|
16
|
+
•
|
|
17
|
+
[Source Code](https://github.com/elbwalker/walkerOS/tree/main/packages/web/sources/cmps/usercentrics)
|
|
7
18
|
|
|
8
19
|
## Installation
|
|
9
20
|
|
|
@@ -11,131 +22,32 @@ translates consent states to walkerOS consent commands.
|
|
|
11
22
|
npm install @walkeros/web-source-cmp-usercentrics
|
|
12
23
|
```
|
|
13
24
|
|
|
14
|
-
##
|
|
25
|
+
## Quick start
|
|
15
26
|
|
|
16
|
-
```
|
|
27
|
+
```ts
|
|
17
28
|
import { startFlow } from '@walkeros/collector';
|
|
18
29
|
import { sourceUsercentrics } from '@walkeros/web-source-cmp-usercentrics';
|
|
19
|
-
// import { destinationGtag } from '@walkeros/web-destination-gtag';
|
|
20
|
-
|
|
21
|
-
await startFlow({
|
|
22
|
-
sources: {
|
|
23
|
-
consent: {
|
|
24
|
-
code: sourceUsercentrics,
|
|
25
|
-
},
|
|
26
|
-
},
|
|
27
|
-
destinations: {
|
|
28
|
-
gtag: {
|
|
29
|
-
code: destinationGtag,
|
|
30
|
-
config: {
|
|
31
|
-
consent: { marketing: true }, // Requires marketing consent
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
},
|
|
35
|
-
});
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
## Configuration
|
|
39
|
-
|
|
40
|
-
### Settings
|
|
41
|
-
|
|
42
|
-
| Setting | Type | Default | Description |
|
|
43
|
-
| -------------- | ------------------------ | ----------- | ------------------------------------------------------- |
|
|
44
|
-
| `eventName` | `string` | `'ucEvent'` | Window event name configured in Usercentrics admin |
|
|
45
|
-
| `categoryMap` | `Record<string, string>` | `{}` | Maps Usercentrics categories to walkerOS consent groups |
|
|
46
|
-
| `explicitOnly` | `boolean` | `true` | Only process explicit consent (user made a choice) |
|
|
47
|
-
|
|
48
|
-
### Usercentrics setup
|
|
49
|
-
|
|
50
|
-
Configure a **Window Event** in your Usercentrics admin: Implementation > Data
|
|
51
|
-
Layer & Events > Window Event Name (e.g., `ucEvent`).
|
|
52
30
|
|
|
53
|
-
Alternatively, set `eventName: 'UC_SDK_EVENT'` to use the built-in Browser SDK
|
|
54
|
-
event (no admin configuration required).
|
|
55
|
-
|
|
56
|
-
### Custom mapping example
|
|
57
|
-
|
|
58
|
-
```typescript
|
|
59
31
|
await startFlow({
|
|
60
32
|
sources: {
|
|
61
33
|
consent: {
|
|
62
34
|
code: sourceUsercentrics,
|
|
63
|
-
config: {
|
|
64
|
-
settings: {
|
|
65
|
-
eventName: 'ucEvent',
|
|
66
|
-
categoryMap: {
|
|
67
|
-
essential: 'functional',
|
|
68
|
-
functional: 'functional',
|
|
69
|
-
marketing: 'marketing',
|
|
70
|
-
},
|
|
71
|
-
explicitOnly: true,
|
|
72
|
-
},
|
|
73
|
-
},
|
|
74
35
|
},
|
|
75
36
|
},
|
|
76
37
|
});
|
|
77
38
|
```
|
|
78
39
|
|
|
79
|
-
##
|
|
80
|
-
|
|
81
|
-
1. **Event listener**: Registers a listener for the configured window event
|
|
82
|
-
(default: `ucEvent`).
|
|
83
|
-
|
|
84
|
-
2. **Group vs. service detection**: When the event fires, checks if `ucCategory`
|
|
85
|
-
values are all booleans:
|
|
86
|
-
- **Group-level**: Uses `ucCategory` as consent state (maps categories via
|
|
87
|
-
`categoryMap`)
|
|
88
|
-
- **Service-level**: Extracts individual service booleans from `event.detail`
|
|
89
|
-
(normalized to `lowercase_underscores`) and applies `categoryMap` to
|
|
90
|
-
boolean `ucCategory` entries
|
|
91
|
-
|
|
92
|
-
3. **Explicit filtering**: By default, only processes events where
|
|
93
|
-
`type === 'explicit'` (user actively made a choice). Set
|
|
94
|
-
`explicitOnly: false` to also process implicit/default consent.
|
|
95
|
-
|
|
96
|
-
4. **Consent command**: Calls `elb('walker consent', state)` with the mapped
|
|
97
|
-
consent state.
|
|
98
|
-
|
|
99
|
-
### Timing considerations
|
|
100
|
-
|
|
101
|
-
The source should be initialized before the Usercentrics script loads to avoid
|
|
102
|
-
missing the initial consent event. When using `explicitOnly: true` (default),
|
|
103
|
-
this is not a concern since the implicit init event is filtered anyway. For
|
|
104
|
-
`explicitOnly: false`, ensure the consent source has no `require` constraints so
|
|
105
|
-
it initializes immediately.
|
|
106
|
-
|
|
107
|
-
## Usercentrics event reference
|
|
108
|
-
|
|
109
|
-
The source listens for `CustomEvent` with this `detail` structure:
|
|
110
|
-
|
|
111
|
-
```typescript
|
|
112
|
-
{
|
|
113
|
-
event: 'consent_status',
|
|
114
|
-
type: 'explicit' | 'implicit',
|
|
115
|
-
action: 'onAcceptAllServices' | 'onDenyAllServices' | 'onUpdateServices',
|
|
116
|
-
ucCategory: { marketing: true, functional: false, ... },
|
|
117
|
-
'Google Analytics': true,
|
|
118
|
-
'Facebook Pixel': false,
|
|
119
|
-
...
|
|
120
|
-
}
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
- [Usercentrics Custom Events Documentation](https://support.usercentrics.com/hc/en-us/articles/17104002464668-How-can-I-create-a-custom-event)
|
|
124
|
-
|
|
125
|
-
## walkerOS.json
|
|
126
|
-
|
|
127
|
-
```json
|
|
128
|
-
{ "walkerOS": { "type": "source", "platform": "web" } }
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
## Type definitions
|
|
40
|
+
## Documentation
|
|
132
41
|
|
|
133
|
-
|
|
42
|
+
Full configuration, mapping, and examples live in the docs:
|
|
43
|
+
**https://www.walkeros.io/docs/sources/web/cmps/usercentrics**
|
|
134
44
|
|
|
135
|
-
##
|
|
45
|
+
## Contribute
|
|
136
46
|
|
|
137
|
-
|
|
138
|
-
|
|
47
|
+
Feel free to contribute by submitting an
|
|
48
|
+
[issue](https://github.com/elbwalker/walkerOS/issues), starting a
|
|
49
|
+
[discussion](https://github.com/elbwalker/walkerOS/discussions), or getting in
|
|
50
|
+
[contact](https://calendly.com/elb-alexander/30min).
|
|
139
51
|
|
|
140
52
|
## License
|
|
141
53
|
|
package/dist/index.browser.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var SourceUsercentrics=(()=>{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,{SourceUsercentrics:()=>d,createMockElbFn:()=>E,createTrigger:()=>Qe,default:()=>nn,fullConsent:()=>p,fullConsentCustomMapped:()=>x,fullConsentMapped:()=>k,fullConsentUpperCase:()=>h,implicitConsent:()=>m,minimalConsent:()=>y,minimalConsentMapped:()=>O,nonConsentEvent:()=>w,noopLogger:()=>S,partialConsent:()=>v,partialConsentMapped:()=>j,serviceLevelConsent:()=>b,serviceLevelMapped:()=>A,sourceUsercentrics:()=>en,step:()=>_,trigger:()=>Ze});var i=["action","event","type","ucCategory"];function a(e,n,t){e[n]=(void 0===e[n]||Boolean(e[n]))&&t}function c(e,n){const t={};var o;return e.ucCategory&&(o=e.ucCategory,Object.values(o).every(e=>"boolean"==typeof e))?Object.entries(e.ucCategory).forEach(([e,o])=>{var r,s;if("boolean"!=typeof o)return;const i=null!=(s=null==(r=n.categoryMap)?void 0:r[e])?s:e;a(t,i,o)}):(e.ucCategory&&Object.entries(e.ucCategory).forEach(([e,o])=>{var r,s;if("boolean"==typeof o){const i=null!=(s=null==(r=n.categoryMap)?void 0:r[e])?s:e;a(t,i,o)}}),Object.entries(e).forEach(([e,n])=>{if(i.includes(e))return;if("boolean"!=typeof n)return;const o=e.toLowerCase().replace(/ /g,"_");a(t,o,n)})),t}function l(e){const n={};return e.forEach(e=>{var t,o;const r=e.categorySlug,s=null!=(o=null==(t=e.consent)?void 0:t.status)&&o;n[r]=(void 0===n[r]||n[r])&&s}),n}function u(e){var n,t;const{window:o,elb:r,settings:s,logger:i}=e,a=null!=(n=s.eventName)?n:"ucEvent",u=e=>{var n;if(i.debug("event received",e),"consent_status"!==e.event)return;if(s.explicitOnly&&"explicit"!==(null==(n=e.type)?void 0:n.toLowerCase()))return;const t=c(e,s);Object.keys(t).length>0&&r("walker consent",t)},f=e=>{const n=e;n.detail&&u(n.detail)};o.addEventListener(a,f);const g=o.UC_UI;if((null==(t=null==g?void 0:g.isInitialized)?void 0:t.call(g))&&g.getServicesBaseInfo){const e=g.getServicesBaseInfo();e.length>0&&u(function(e){return{event:"consent_status",type:"implicit",ucCategory:l(e)}}(e))}return()=>{o.removeEventListener(a,f)}}var f=new Set(["ACCEPT_ALL","DENY_ALL","SAVE"]);async function g(e){var n;const{window:t,elb:o,settings:r,logger:s}=e,i=null!=(n=r.v3EventName)?n:"UC_UI_CMP_EVENT",a=async e=>{const n=function(e){const n={};return Object.entries(e.categories).forEach(([e,t])=>{n[e]="ALL_ACCEPTED"===t.state}),{event:"consent_status",type:"EXPLICIT"===e.consent.type?"explicit":"implicit",ucCategory:n}}(await e.getConsentDetails());if(s.debug("event received",n),r.explicitOnly&&"explicit"!==n.type)return;const t=c(n,r);Object.keys(t).length>0&&o("walker consent",t)},l=e=>{const n=t.__ucCmp;if(!n)return;const o=e.detail;o&&"CMP"===o.source&&o.type&&f.has(o.type)&&a(n).catch(()=>{})};t.addEventListener(i,l);const u=t.__ucCmp;if(u)try{await u.isInitialized()&&await a(u)}catch(e){s.warn("v3 static consent read failed",e)}return()=>{t.removeEventListener(i,l)}}var d={},p={event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0},"Google Analytics":!0,"Google Ads Remarketing":!0},v={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:!0,marketing:!1},"Google Analytics":!0,"Google Ads Remarketing":!1},y={event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},m={event:"consent_status",type:"implicit",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},h={event:"consent_status",type:"EXPLICIT",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},b={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:"partial",marketing:"partial"},"Google Analytics":!0,"Google Ads Remarketing":!1,Hotjar:!0},w={event:"other_event",type:"explicit"},k={essential:!0,functional:!0,marketing:!0},j={essential:!0,functional:!0,marketing:!1},O={essential:!0,functional:!1,marketing:!1},x={functional:!0,marketing:!0},A={essential:!0,google_analytics:!0,google_ads_remarketing:!1,hotjar:!0},C=()=>{},E=()=>()=>Promise.resolve({ok:!0}),S={error:C,warn:C,info:C,debug:C,throw:e=>{throw"string"==typeof e?new Error(e):e},json:C,scope:()=>S},_={};r(_,{categoryMapOverride:()=>P,customEventName:()=>$,fullConsent:()=>q,minimalConsent:()=>D});var q={title:"Full consent",description:"A Usercentrics onAcceptAllServices event emits a walker consent command with essential, functional, and marketing granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},D={title:"Minimal consent",description:"A Usercentrics onDenyAllServices event emits a walker consent command with only essential granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1}},out:[["elb","walker consent",{essential:!0,functional:!1,marketing:!1}]]},P={title:"Category map override",description:"Custom categoryMap remaps essential to functional and functional to analytics",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!1}},mapping:{categoryMap:{essential:"functional",functional:"analytics"}},out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!1}]]},$={title:"Custom event name",description:"Using UC_SDK_EVENT instead of ucEvent for Usercentrics SDK v2",trigger:{type:"consent",options:{eventName:"UC_SDK_EVENT"}},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!0}},mapping:{eventName:"UC_SDK_EVENT"},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},M=Object.defineProperty;((e,n)=>{for(var t in n)M(e,t,{get:n[t],enumerable:!0})})({},{Level:()=>N});var I,N=((I=N||{})[I.ERROR=0]="ERROR",I[I.WARN=1]="WARN",I[I.INFO=2]="INFO",I[I.DEBUG=3]="DEBUG",I);function U(e){return{_meta:{hops:0,path:[e]}}}var R={merge:!0,shallow:!0,extend:!0};function T(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 L(e){return Array.isArray(e)}function G(e){return void 0!==e}function H(e){return"function"==typeof e}function B(e){return"object"==typeof e&&null!==e&&!L(e)&&"[object Object]"===Object.prototype.toString.call(e)}function V(e){return"string"==typeof e}function K(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]=K(e[o],n));return t}if("[object Array]"===t){const t=[];return n.set(e,t),e.forEach(e=>{t.push(K(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 W(e,n="",t){const o=n.split(".");let r=e;for(let e=0;e<o.length;e++){const n=o[e];if("*"===n&&L(r)){const n=o.slice(e+1).join("."),s=[];for(const e of r){const o=W(e,n,t);s.push(o)}return s}if(r=r instanceof Object?r[n]:void 0,void 0===r)break}return G(r)?r:t}function F(e,n,t){if(!B(e))return e;const o=K(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 z={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 J(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 X(){let e="";for(let n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}function Y(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,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 Z(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function ee(e,n){let t,o={};return e instanceof Error?(t=e.message,o.error=Z(e)):t=e,void 0!==n&&(n instanceof Error?o.error=Z(n):"object"==typeof n&&null!==n?(o={...o,...n},"error"in o&&o.error instanceof Error&&(o.error=Z(o.error))):o.value=n),{message:t,context:o}}var ne=(e,n,t,o)=>{const r=`${N[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 te(e={}){return oe({level:void 0!==e.level?(n=e.level,"string"==typeof n?N[n]:n):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var n}function oe(e){const{level:n,handler:t,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=n){const n=ee(o,s);t?t(e,n.message,n.context,r,ne):ne(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=ee(e,n);throw t?t(0,o.message,o.context,r,ne):ne(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>oe({level:n,handler:t,jsonHandler:o,scope:[...r,e]})}}function re(e){return function(e){return"boolean"==typeof e}(e)||V(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!G(e)||L(e)&&e.every(re)||B(e)&&Object.values(e).every(re)}function se(e){return re(e)?e:void 0}function ie(e,n,t){return function(...o){try{return e(...o)}catch(e){if(!n)return;return n(e)}finally{null==t||t()}}}function ae(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 ce(e,n={},t={}){var o,r;if(!G(e))return;const s=B(e)&&e.consent||t.consent||(null==(o=t.collector)?void 0:o.consent),i=null!=(r=t.event)?r:B(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=L(n)?n:[n];for(const n of c){const t=await ae(le)(e,n,{...a,mapping:n});if(G(t))return t}}async function le(e,n,t){return(L(n)?n:[n]).reduce(async(n,o)=>{const r=await n;if(r)return r;const s=V(o)?{key:o}:o;if(!Object.keys(s).length)return;const{condition:i,consent:a,fn:c,key:l,loop:u,map:f,set:g,validate:d,value:p}=s,v={...t,mapping:o};if(i&&!await ae(i)(e,v))return;if(a&&!J(a,v.consent))return p;let y=G(p)?p:e;if(c&&(y=await ae(c)(e,v)),l&&(y=W(e,l,p)),u){const[n,t]=u,o="this"===n?[e]:await ce(e,n,v);L(o)&&(y=(await Promise.all(o.map(e=>ce(e,t,v)))).filter(G))}else f?y=await Object.entries(f).reduce(async(n,[t,o])=>{const r=await n,s=await ce(e,o,v);return G(s)&&(r[t]=s),r},Promise.resolve({})):g&&(y=await Promise.all(g.map(n=>le(e,n,v))));d&&!await ae(d)(y,v)&&(y=void 0);const m=se(y);return G(m)?m:se(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=F(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(L(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:B(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=F(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=B(i)&&B(n)?T(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(z):n;for(const n of o){const o=z[n];if(!o)continue;const r=o(e);if(B(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=B(i)?T(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 ge(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const n=e.and.map(ge);return e=>n.every(n=>n(e))}if("or"in e){const n=e.or.map(ge);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=W(e,n),o=s(t);return r?!o:o}}(e)}function de(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 de({case:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const n=[];for(const t of e){const e=de(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:ge(n.match),next:de(n.next)}:de(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:de(e)};const t=e;return{match:t.match?ge(t.match):()=>!0,next:null!=(n=de(t))?n:{type:"chain",value:[]}}});return n.match?{type:"gate",match:ge(n.match),next:{type:"case",routes:e}}:{type:"case",routes:e}}return n.match?{type:"gate",match:ge(n.match)}:void 0}function pe(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 pe(e.next,n)}if("sequence"===e.type){const t=[];for(const o of e.value){const e=pe(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 pe(t.next,n)}}function ve(e,n){const t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t}function ye(e){var n;return{stop:null!=(n=e.stop)&&n,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?ge(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}function me(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=W(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=n.get(c);return void 0!==l?{status:"HIT",key:c,value:l,rule:r}:{status:"MISS",key:c,rule:r}}function he(e,n,t,o){e.set(n,t,1e3*o)}async function be(e,n,t,o){if(!n)return e;let r=e;for(const[e,s]of Object.entries(n))r=F(r,e,await ce(t,s,{collector:o}));return r}var we=new Set(["code","package","before","next","cache","mapping","config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"]);function ke(e){for(const n of Object.keys(e))if(!we.has(n))return{ok:!1,code:"UNKNOWN_KEY",key:n,reason:`Unknown key "${n}". Allowed: ${[...we].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 je={Action:"action",Actions:"actions",Config:"config",Consent:"consent",Context:"context",Custom:"custom",Destination:"destination",Elb:"elb",Globals:"globals",Hook:"hook",Init:"init",Link:"link",On:"on",Prefix:"data-elb",Ready:"ready",Run:"run",Session:"session",Shutdown:"shutdown",User:"user",Walker:"walker"};function Oe(e,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache}function xe(e){var n;const t={};for(const[o,r]of Object.entries(e)){const e=de(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 Ae(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 Ce(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 Ee(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:U(t),config:n.config,env:De(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 Se(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:{...De(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 _e(e,n){var t;if(e)return null!=(t=pe(de(e),n))?t:void 0}async function qe(e,n,t,o,r,s,i){var a,c,l,u,f,g,d;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 ae(Ee)(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==(l=s.config)?void 0:l.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),p=s.config.mock;continue}if(null==(u=s.config)?void 0:u.disabled)continue;const y=null==(f=s.config)?void 0:f.cache,m=y?ye(y):void 0,h=m?Oe(m,e):void 0;let b;if(m&&h){const e=me(m,h,ve(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=Ce(_e(w,ve(r,p)),xe(n));if(t.length>0){const o=await qe(e,n,t,p,r,v,i);if(null===o.event)return{event:null,respond:null!=(g=o.respond)?g:v};if(o.stopped)return{event:Array.isArray(o.event)?o.event[0]:o.event,respond:null!=(d=o.respond)?d:v,stopped:!0};o.respond&&(v=o.respond),p=Array.isArray(o.event)?o.event[0]:o.event}}const k=await ae(Se,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]}}:U("unknown");if(t.next){const r=_e(t.next,ve(a,o));if(r){const t=Ce(r,xe(n));if(t.length>0)return qe(e,n,t,o,a,v,i)}return{event:o,respond:v}}return s.length>0?qe(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),s){const o=_e(s,ve(r,p));if(!o){t&&(p=t);continue}const a=Ce(o,xe(n));return a.length>0?qe(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&&he(h,b.key,p,b.ttl);const j=s.config.next?de(s.config.next):void 0,O="case"===(null==j?void 0:j.type)||"gate"===(null==j?void 0:j.type)||"sequence"===(null==j?void 0:j.type);if((!k||"object"==typeof k&&!k.next)&&j&&O){const t=pe(j,ve(r,p));if(t){const o=Ce(t,xe(n));if(o.length>0)return qe(e,n,o,p,r,v,i)}return{event:p,respond:v}}}return{event:p,respond:v}}function De(e){return e&&B(e)?e:{}}async function Pe(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 ae(n.on)(e,t)}function $e(e){var n;return Boolean(e.config.init)&&!(null==(n=e.config.require)?void 0:n.length)}async function Me(e,n,t){var o;const{code:r,config:s={},env:i={},primary:a,next:c,before:l,cache:u}=t;let f,g=U(n);const d=u?ye({...u,stop:null==(o=u.stop)||o}):void 0,p=de(c),v="static"!==(null==p?void 0:p.type)&&"chain"!==(null==p?void 0:p.type)||!p?void 0:Ce(pe(p),xe(e.transformers)),y=de(l),m="static"!==(null==y?void 0:y.type)&&"chain"!==(null==y?void 0:y.type)||!y?void 0:Ce(pe(y),xe(e.transformers)),h=e.logger.scope("source").scope(n),b={push:async(t,o={})=>{let r;const i=null!=m?m:y?Ce(pe(y,ve(g)),xe(e.transformers)):[];let a=[t];if(i.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await qe(e,e.transformers,i,t,g,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(d){const n=Oe(d,e);if(n){const t=ve(g),o=me(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 be(n,o.rule.update,{...t,cache:{status:"HIT"}},e)),null==f||f(n),{ok:!0}}if("MISS"===o.status&&d.stop&&f){const s=f,i=o.rule.update,a={...t,cache:{status:"MISS"}},c=o.key,l=o.rule.ttl;f=t=>{he(n,c,t,l),i?r=(async()=>{const n=await be(t,i,a,e);s(n)})():s(t)}}"MISS"!==o.status||d.stop||he(n,o.key,!0,o.rule.ttl)}}}const c=null!=v?v:p?Ce(pe(p,ve(g)),xe(e.transformers)):[];let l={ok:!0};for(const t of a)l=await e.push(t,{...o,id:n,ingest:g,respond:f,mapping:s,preChain:c});return r&&await r,l},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(g=U(n));const o=await ce(t,s.ingest,{collector:e}),r=U(n);g={...r,...o,_meta:r._meta}},setRespond:e=>{f=e}},k=await ae(r)(w);if(!k)return;const j=k.type||"unknown",O=e.logger.scope(j).scope(n);return b.logger=O,a&&(k.config={...k.config,primary:a}),k}function Ie(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}}function Ne(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:Ke(n.env,n.config.env)};ie(n.on)(o,a)}function Ue(e,n,t,o){let r;switch(n){case je.Consent:r=o||e.consent;break;case je.Session:r=e.session;break;case je.User:r=o||e.user;break;case je.Custom:r=o||e.custom;break;case je.Globals:r=o||e.globals;break;case je.Config:r=o||e.config;break;case je.Ready:case je.Run:default:r=void 0}if(t.length)switch(n){case je.Consent:!function(e,n,t){const o=t||e.consent,r=Ie(e,je.Consent);n.forEach(e=>{Object.keys(o).filter(n=>n in e).forEach(n=>{ie(e[n])(o,r)})})}(e,t,o);break;case je.Ready:!function(e,n){if(!e.allowed)return;const t=Ie(e,je.Ready);n.forEach(e=>{ie(e)(void 0,t)})}(e,t);break;case je.Run:!function(e,n){if(!e.allowed)return;const t=Ie(e,je.Run);n.forEach(e=>{ie(e)(void 0,t)})}(e,t);break;case je.Session:!function(e,n){if(!e.session)return;const t=Ie(e,je.Session);n.forEach(n=>{ie(n)(e.session,t)})}(e,t);break;default:{const o=Ie(e,n);t.forEach(e=>{"function"==typeof e&&ie(e)(r,o)});break}}}function Re(e,n,t,o){if(!e)return[];const r=pe(null!=n?n:de(e),ve(o));return r?Ce(r,t):[]}async function Te(e,n,t){const{code:o,config:r={},env:s={},before:i,next:a,cache:c}=n;if(!H(o.push))return Be({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}});const l=t||r||{init:!1};let u=i?{...l,before:i}:{...l};a&&(u={...u,next:a}),c&&(u={...u,cache:c});const f={...o,config:u,env:Ke(o.env,s)};let g=f.config.id;if(!g)do{g=Y(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[g]);return e.destinations[g]=f,!1!==f.config.queue&&(f.queuePush=[...e.queue]),Le(e,void 0,{},{[g]:f})}async function Le(e,n,t={},o){const{allowed:r,consent:s,globals:i,user:a}=e;if(!r)return Be({ok:!1});n&&(e.queue.push(n),e.status.in++),o||(o=e.destinations);const c=e.transformers?xe(e.transformers):{},l=await Promise.all(Object.entries(o||{}).map(async([o,r])=>{var l,u,f;if(r.config.disabled)return{id:o,destination:r,skipped:!0};let g=(r.queuePush||[]).map(e=>({...e,consent:s}));r.queuePush=[],n&&g.push(K(n));const d=t.ingest?{...t.ingest,_meta:{...t.ingest._meta,path:[...t.ingest._meta.path]}}:U("unknown");if(!g.length&&!(null==(l=r.queueOn)?void 0:l.length))return{id:o,destination:r,skipped:!0};if(!g.length&&(null==(u=r.queueOn)?void 0:u.length)){let n=!1;try{n=await Ge(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=g.filter(e=>{const n=J(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:g};let y,m,h=!1;try{h=await Ge(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:g};r.dlq||(r.dlq=[]);const b=r.config.before,w=Re(b,b&&Array.isArray(b)?de(b):void 0,c,d),k=r.config.next,j=k&&Array.isArray(k)?de(k):void 0,O=null==(f=r.config)?void 0:f.cache,x=O?ye(O):void 0,A=x?Oe(x,e):void 0;let C=0;return await Promise.all(p.map(async n=>{let s;if(n.globals=T(i,n.globals),n.user=T(a,n.user),(null==x?void 0:x.stop)&&A){const e=ve(d,n),t=me(x,A,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 l=n,u=t.respond;if(w.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const r=await qe(e,e.transformers,w,n,d,t.respond,`destination.${o}.before`);if(null===r.event)return n;r.respond&&(u=r.respond),l=Array.isArray(r.event)?r.event[0]:r.event}if(x&&!x.stop&&A){const e=ve(d,l),t=me(x,A,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 g=!1;const p=await ae(He,n=>{const t=r.type||"unknown";e.logger.scope(t).error("Push failed",{error:n,event:l.name}),y=n,g=!0,r.dlq.push([l,n])})(e,r,o,l,d,u);if(C+=Date.now()-f,s&&A&&void 0===r.config.mock&&he(A,s.key,null==p||p,s.ttl),void 0!==p&&(m=p),!g&&k){void 0!==p&&(d._response=p);const n=Re(k,j,c,d);if(n.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const t=await qe(e,e.transformers,n,l,d,u,`destination.${o}.next`);t.respond&&(u=t.respond)}}return n})),{id:o,destination:r,error:y,response:m,totalDuration:C}})),u={},f={},g={};for(const n of l){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,g[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:(u[n.id]=t,o.count++,o.lastAt=r,o.duration+=n.totalDuration||0,e.status.out++)}return Be({event:n,...Object.keys(u).length&&{done:u},...Object.keys(f).length&&{queued:f},...Object.keys(g).length&&{failed:g}})}async function Ge(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:Ke(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)Ne(e,n,t,r,s)}s.debug("init done")}return!0}async function He(e,n,t,o,r,s){const{config:i}=n,a=await ue(o,i,e);if(a.ignore)return!1;const c=n.type||"unknown",l=e.logger.scope(c),u={collector:e,logger:l,id:t,config:i,data:a.data,rule:a.mapping,ingest:r,env:{...Ke(n.env,i.env),...s?{respond:s}:{}}};if(void 0!==i.mock)return l.debug("mock",{event:a.event.name}),i.mock;const f=a.mapping,g=a.mappingKey||"* *";if(!(null==f?void 0:f.batch)||!n.pushBatch||void 0!==i.mock){l.debug("push",{event:a.event.name});const t=await fe(n.push,"DestinationPush",e.hooks,e.logger)(a.event,u);return l.debug("push done"),t}{if(n.batches=n.batches||{},!n.batches[g]){const o={key:g,events:[],data:[]};n.batches[g]={batched:o,batchFn:Q(()=>{const o=n.batches[g].batched,a={collector:e,logger:l,id:t,config:i,data:void 0,rule:f,ingest:r,env:{...Ke(n.env,i.env),...s?{respond:s}:{}}};l.debug("push batch",{events:o.events.length}),fe(n.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(o,a),l.debug("push batch done"),o.events=[],o.data=[]},f.batch)}}const o=n.batches[g];o.batched.events.push(a.event),G(a.data)&&o.batched.data.push(a.data),o.batchFn()}return!0}function Be(e){return{ok:!(null==e?void 0:e.failed),...e}}function Ve(e){const{code:n,config:t={},env:o={},cache:r}=e,{config:s}=Ae(e,"before"),{config:i}=Ae({...e,config:s},"next"),a={...n.config,...t,...i};r&&(a.cache=r);const c=Ke(n.env,o);return{...n,config:a,env:c}}function Ke(e,n){return e||n?n?e&&B(e)&&B(n)?{...e,...n}:n:e:{}}async function We(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 Fe(e,n,t,o){let r,s,i=!1;switch(n){case je.Config:B(t)&&(T(e.config,t,{shallow:!1}),s=t,i=!0);break;case je.Consent:if(B(t)){const{update:n}=function(e,n){const t={};return Object.entries(n).forEach(([e,n])=>{t[e]=!!n}),e.consent=T(e.consent,t),{update:t}}(e,t);s=n,i=!0}break;case je.Custom:B(t)&&(e.custom=T(e.custom,t),s=t,i=!0);break;case je.Destination:B(t)&&("code"in t&&B(t.code)?r=await Te(e,t,o):H(t.push)&&(r=await Te(e,{code:t},o)));break;case je.Globals:B(t)&&(e.globals=T(e.globals,t),s=t,i=!0);break;case je.On:V(t)&&await async function(e,n,t){const o=e.on,r=o[n]||[],s=L(t)?t:[t];s.forEach(e=>{r.push(e)}),o[n]=r,Ue(e,n,s)}(e,t,o);break;case je.Ready:i=!0;break;case je.Run:r=await async function(e,n){return e.allowed=!0,e.timing=Date.now(),n&&(n.consent&&(e.consent=T(e.consent,n.consent)),n.user&&(e.user=T(e.user,n.user)),n.globals&&(e.globals=T(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=T(e.custom,n.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await Le(e)}(e,t),i=!0;break;case je.Session:i=!0;break;case je.Shutdown:await async function(e){const n=e.logger;await We(e.sources,"source",n),await We(e.destinations,"destination",n),await We(e.transformers,"transformer",n),await We(e.stores,"store",n)}(e);break;case je.User:B(t)&&(T(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 je.Consent:i=o||e.consent;break;case je.Session:i=e.session;break;case je.User:i=o||e.user;break;case je.Custom:i=o||e.custom;break;case je.Globals:i=o||e.globals;break;case je.Config:i=o||e.config;break;case je.Ready:case je.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&&($e(t)?!1===await ae(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});Ne(e,o,t,n,i)}});for(const n of Object.values(e.sources))$e(n)&&(null==(s=n.queueOn)?void 0:s.length)&&await Pe(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=Ve(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,n),Ue(e,n,a,o),!c}(e,n,void 0,s),r=await Le(e)),r||Be({ok:!0})}function ze(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:g=e.consent,id:d=X(),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:l,user:u,nested:f,consent:g,id:d,trigger:p,entity:v,action:y,timestamp:r,timing:m,source:h}}async function Je(e){var n,t;const o=T({globalsStatic:{},sessionStatic:{},run:!0},e,{merge:!1,extend:!1}),r=te({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 fe(async(t,o={})=>await ae(async()=>{var r;const s=Date.now(),{id:i,ingest:a,respond:c,mapping:l,preChain:u,include:f,exclude:g}=o;let d=c,p=t;const v=f||g?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,g):void 0,y=null!=a?a:U(i||"unknown");if(l){const n=await ue(p,l,e);if(n.ignore)return Be({ok:!0});if(l.consent&&!J(l.consent,e.consent,n.event.consent))return Be({ok:!0});p=n.event}if((null==u?void 0:u.length)&&e.transformers&&Object.keys(e.transformers).length>0){const t=await qe(e,e.transformers,u,p,y,d,i?`source.${i}.next`:void 0);if(null===t.event)return Be({ok:!0});if(t.stopped)return t.respond&&(d=t.respond),Be({ok:!0});if(t.respond&&(d=t.respond),Array.isArray(t.event)){const o=await Promise.all(t.event.map(async t=>{const o=n(t),r=ze(e,o);return Le(e,r,{id:i,ingest:y,respond:d},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:Be({ok:!0})}p=t.event}const m=n(p),h=ze(e,m),b=await Le(e,h,{id:i,ingest:y,respond:d},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},()=>Be({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=Fe,fe(async(e,n,t)=>await ae(async()=>await c(a,e,n,t),()=>Be({ok:!1}))(),"Command",(a=i).hooks,a.logger));const l=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},l=await n(c),u=l.get,f=l.set,g=l.delete;l.get=fe(u,"StoreGet",e.hooks,e.logger),l.set=fe(f,"StoreSet",e.hooks,e.logger),l.delete=fe(g,"StoreDelete",e.hooks,e.logger),t[o]=l}return t}(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){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]=Ve(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=ke(c);if(!u.ok){e.logger.warn(`Transformer ${a} invalid (${u.code}): ${u.reason}. Skipping.`);continue}const{config:f}=Ae(c,"before"),{config:g}=Ae({...c,config:f},"next"),d=Object.keys(l).length>0?{...g,env:l}:g,{cache:p}=c,v=p?{...d,cache:p}:d,y=e.logger.scope("transformer").scope(a),m={collector:e,logger:y,id:a,ingest:U(a),config:v,env:l},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 ue(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 Xe(e){e=e||{};const n=await Je(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 Be({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 Me(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 ae(t.init.bind(t))(),t.config.init=!0,$e(t)&&await Pe(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 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 Ye,Qe=async e=>{let n;return{get flow(){return n},trigger:(t,o)=>async t=>{var r;if(!n){const t=await Xe({...e,run:null==(r=e.run)||r});n={collector:t.collector,elb:t.elb}}const s=(null==o?void 0:o.eventName)||"ucEvent";window.dispatchEvent(new CustomEvent(s,{detail:t}))}}},Ze=(e,n)=>{if(e&&"object"==typeof e)return()=>{n.window.dispatchEvent(new CustomEvent("ucEvent",{detail:e}))}},en=async e=>{var n,t,o,r,s,i,a,c,l,f,d,p;const{config:v,env:y}=e,{elb:m,logger:h}=y,b=null!=(n=y.window)?n:void 0!==globalThis.window?globalThis.window:void 0,w={eventName:null!=(o=null==(t=null==v?void 0:v.settings)?void 0:t.eventName)?o:"ucEvent",categoryMap:null!=(s=null==(r=null==v?void 0:v.settings)?void 0:r.categoryMap)?s:{},explicitOnly:null==(a=null==(i=null==v?void 0:v.settings)?void 0:i.explicitOnly)||a,apiVersion:null!=(l=null==(c=null==v?void 0:v.settings)?void 0:c.apiVersion)?l:"auto",v3EventName:null!=(d=null==(f=null==v?void 0:v.settings)?void 0:f.v3EventName)?d:"UC_UI_CMP_EVENT"},k={settings:w},j=[];if(b){const e={window:b,elb:m,settings:w,logger:h},n=null!=(p=w.apiVersion)?p:"auto";"v2"===n?j.push(u(e)):"v3"===n||b.__ucCmp?j.push(await g(e)):b.UC_UI?j.push(u(e)):(j.push(u(e)),j.push(await g(e)))}return{type:"usercentrics",config:k,push:m,destroy:async()=>{j.forEach(e=>e())}}},nn=en;return Ye=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}),Ye)})();
|
|
1
|
+
"use strict";var SourceUsercentrics=(()=>{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,{SourceUsercentrics:()=>g,createMockElbFn:()=>E,createTrigger:()=>jn,default:()=>En,fullConsent:()=>p,fullConsentCustomMapped:()=>j,fullConsentMapped:()=>k,fullConsentUpperCase:()=>y,implicitConsent:()=>m,minimalConsent:()=>h,minimalConsentMapped:()=>x,nonConsentEvent:()=>b,noopLogger:()=>S,partialConsent:()=>v,partialConsentMapped:()=>O,serviceLevelConsent:()=>w,serviceLevelMapped:()=>A,sourceUsercentrics:()=>Cn,step:()=>_,trigger:()=>An});var i=["action","event","type","ucCategory"];function a(e,n,t){e[n]=(void 0===e[n]||Boolean(e[n]))&&t}function c(e,n){const t={};var o;return e.ucCategory&&(o=e.ucCategory,Object.values(o).every(e=>"boolean"==typeof e))?Object.entries(e.ucCategory).forEach(([e,o])=>{var r,s;if("boolean"!=typeof o)return;const i=null!=(s=null==(r=n.categoryMap)?void 0:r[e])?s:e;a(t,i,o)}):(e.ucCategory&&Object.entries(e.ucCategory).forEach(([e,o])=>{var r,s;if("boolean"==typeof o){const i=null!=(s=null==(r=n.categoryMap)?void 0:r[e])?s:e;a(t,i,o)}}),Object.entries(e).forEach(([e,n])=>{if(i.includes(e))return;if("boolean"!=typeof n)return;const o=e.toLowerCase().replace(/ /g,"_");a(t,o,n)})),t}function l(e){const n={};return e.forEach(e=>{var t,o;const r=e.categorySlug,s=null!=(o=null==(t=e.consent)?void 0:t.status)&&o;n[r]=(void 0===n[r]||n[r])&&s}),n}function u(e){var n,t;const{window:o,elb:r,settings:s,logger:i}=e,a=null!=(n=s.eventName)?n:"ucEvent",u=e=>{var n;if(i.debug("event received",e),"consent_status"!==e.event)return;if(s.explicitOnly&&"explicit"!==(null==(n=e.type)?void 0:n.toLowerCase()))return;const t=c(e,s);Object.keys(t).length>0&&r("walker consent",t)},f=e=>{const n=e;n.detail&&u(n.detail)};o.addEventListener(a,f);const d=o.UC_UI;if((null==(t=null==d?void 0:d.isInitialized)?void 0:t.call(d))&&d.getServicesBaseInfo){const e=d.getServicesBaseInfo();e.length>0&&u(function(e){return{event:"consent_status",type:"implicit",ucCategory:l(e)}}(e))}return()=>{o.removeEventListener(a,f)}}var f=new Set(["ACCEPT_ALL","DENY_ALL","SAVE"]);async function d(e){var n;const{window:t,elb:o,settings:r,logger:s}=e,i=null!=(n=r.v3EventName)?n:"UC_UI_CMP_EVENT",a=async e=>{const n=function(e){const n={};return Object.entries(e.categories).forEach(([e,t])=>{n[e]="ALL_ACCEPTED"===t.state}),{event:"consent_status",type:"EXPLICIT"===e.consent.type?"explicit":"implicit",ucCategory:n}}(await e.getConsentDetails());if(s.debug("event received",n),r.explicitOnly&&"explicit"!==n.type)return;const t=c(n,r);Object.keys(t).length>0&&o("walker consent",t)},l=e=>{const n=t.__ucCmp;if(!n)return;const o=e.detail;o&&"CMP"===o.source&&o.type&&f.has(o.type)&&a(n).catch(()=>{})};t.addEventListener(i,l);const u=t.__ucCmp;if(u)try{await u.isInitialized()&&await a(u)}catch(e){s.warn("v3 static consent read failed",e)}return()=>{t.removeEventListener(i,l)}}var g={},p={event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0},"Google Analytics":!0,"Google Ads Remarketing":!0},v={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:!0,marketing:!1},"Google Analytics":!0,"Google Ads Remarketing":!1},h={event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},m={event:"consent_status",type:"implicit",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},y={event:"consent_status",type:"EXPLICIT",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},w={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:"partial",marketing:"partial"},"Google Analytics":!0,"Google Ads Remarketing":!1,Hotjar:!0},b={event:"other_event",type:"explicit"},k={essential:!0,functional:!0,marketing:!0},O={essential:!0,functional:!0,marketing:!1},x={essential:!0,functional:!1,marketing:!1},j={functional:!0,marketing:!0},A={essential:!0,google_analytics:!0,google_ads_remarketing:!1,hotjar:!0},C=()=>{},E=()=>()=>Promise.resolve({ok:!0}),S={error:C,warn:C,info:C,debug:C,throw:e=>{throw"string"==typeof e?new Error(e):e},json:C,scope:()=>S},_={};r(_,{categoryMapOverride:()=>P,customEventName:()=>I,fullConsent:()=>q,minimalConsent:()=>$});var q={title:"Full consent",description:"A Usercentrics onAcceptAllServices event emits a walker consent command with essential, functional, and marketing granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},$={title:"Minimal consent",description:"A Usercentrics onDenyAllServices event emits a walker consent command with only essential granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1}},out:[["elb","walker consent",{essential:!0,functional:!1,marketing:!1}]]},P={title:"Category map override",description:"Custom categoryMap remaps essential to functional and functional to analytics",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!1}},mapping:{categoryMap:{essential:"functional",functional:"analytics"}},out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!1}]]},I={title:"Custom event name",description:"Using UC_SDK_EVENT instead of ucEvent for Usercentrics SDK v2",trigger:{type:"consent",options:{eventName:"UC_SDK_EVENT"}},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!0}},mapping:{eventName:"UC_SDK_EVENT"},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},M=Object.defineProperty,D=(e,n)=>{for(var t in n)M(e,t,{get:n[t],enumerable:!0})};function N(e,n){if("collector"===e)return"collector";if(!n)throw new Error(`stepId(${e}) requires an id`);return`${e}.${n}`}D({},{stepId:()=>N});function T(e,n){const t=e.destinations[n];if(!t)throw new Error(`Destination not found: ${n}`);return t}D({},{getDestination:()=>T});D({},{Level:()=>U});var R,U=((R=U||{})[R.ERROR=0]="ERROR",R[R.WARN=1]="WARN",R[R.INFO=2]="INFO",R[R.DEBUG=3]="DEBUG",R);function L(e,n){const t=e.transformers[n];if(!t)throw new Error(`Transformer not found: ${n}`);return t}D({},{getTransformer:()=>L});function z(e,n){const t=e.sources[n];if(!t)throw new Error(`Source not found: ${n}`);return t}D({},{getSource:()=>z});function G(e,n){const t=e.stores[n];if(!t)throw new Error(`Store not found: ${n}`);return t}function B(e){return{_meta:{hops:0,path:[e]}}}D({},{getStore:()=>G});var H={merge:!0,shallow:!0,extend:!0};function F(e,n={},t={}){t={...H,...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 K(e){return Array.isArray(e)}function V(e){return void 0!==e}function W(e){return"function"==typeof e}function Y(e){return"object"==typeof e&&null!==e&&!K(e)&&"[object Object]"===Object.prototype.toString.call(e)}function J(e){return"string"==typeof e}function X(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]=X(e[o],n));return t}if("[object Array]"===t){const t=[];return n.set(e,t),e.forEach(e=>{t.push(X(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 Z(e,n="",t){const o=n.split(".");let r=e;for(let e=0;e<o.length;e++){const n=o[e];if("*"===n&&K(r)){const n=o.slice(e+1).join("."),s=[];for(const e of r){const o=Z(e,n,t);s.push(o)}return s}if(r=Y(r)||K(r)?r[n]:void 0,void 0===r)break}return V(r)?r:t}function Q(e,n,t){if(!Y(e))return e;const o=X(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 ee={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 ne(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 te(){let e="";for(let n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}function oe(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 re(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}}function se(e,n){let t,o={};return e instanceof Error?(t=e.message,o.error=re(e)):t=e,void 0!==n&&(n instanceof Error?o.error=re(n):"object"==typeof n&&null!==n?(o={...o,...n},"error"in o&&o.error instanceof Error&&(o.error=re(o.error))):o.value=n),{message:t,context:o}}var ie=(e,n,t,o)=>{const r=`${U[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 ae(e={}){return ce({level:void 0!==e.level?(n=e.level,"string"==typeof n?U[n]:n):0,handler:e.handler,jsonHandler:e.jsonHandler,scope:[]});var n}function ce(e){const{level:n,handler:t,jsonHandler:o,scope:r}=e,s=(e,o,s)=>{if(e<=n){const n=se(o,s);t?t(e,n.message,n.context,r,ie):ie(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=se(e,n);throw t?t(0,o.message,o.context,r,ie):ie(0,o.message,o.context,r),new Error(o.message)},json:e=>{o?o(e):console.log(JSON.stringify(e,null,2))},scope:e=>ce({level:n,handler:t,jsonHandler:o,scope:[...r,e]})}}function le(e){return function(e){return"boolean"==typeof e}(e)||J(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!V(e)||K(e)&&e.every(le)||Y(e)&&Object.values(e).every(le)}function ue(e){return le(e)?e:void 0}function fe(e,n,t){return function(...o){try{return e(...o)}catch(e){if(!n)return;return n(e)}finally{null==t||t()}}}function de(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 ge=class e extends Error{constructor(n,t){super(n,t),this.name="FatalError",Object.setPrototypeOf(this,e.prototype)}};async function pe(e,n={},t={}){var o,r;if(!V(e))return;const s=Y(e)&&e.consent||t.consent||(null==(o=t.collector)?void 0:o.consent),i=null!=(r=t.event)?r:Y(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=K(n)?n:[n];for(const n of c){const o=await de(ve,e=>{if(e instanceof ge)throw e;t.collector&&t.collector.status.failed++,a.logger.error("mapping processing failed",{event:i,error:e})})(e,n,{...a,mapping:n});if(V(o))return o}}async function ve(e,n,t){return(K(n)?n:[n]).reduce(async(n,o)=>{const r=await n;if(r)return r;const s=J(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,v={...t,mapping:o};if(i&&!await de(i,e=>{if(e instanceof ge)throw e;return v.logger.error("mapping condition failed",{event:v.event,error:e}),!1})(e,v))return;if(a&&!ne(a,v.consent))return p;let h=V(p)?p:e;if(c&&(h=await de(c,e=>{if(e instanceof ge)throw e;v.logger.error("mapping fn failed",{event:v.event,error:e})})(e,v)),l&&(h=Z(e,l,p)),u){const[n,t]=u,o="this"===n?[e]:await pe(e,n,v);K(o)&&(h=(await Promise.all(o.map(e=>pe(e,t,v)))).filter(V))}else f?h=await Object.entries(f).reduce(async(n,[t,o])=>{const r=await n,s=await pe(e,o,v);return V(s)&&(r[t]=s),r},Promise.resolve({})):d&&(h=await Promise.all(d.map(n=>ve(e,n,v))));g&&!await de(g,e=>{if(e instanceof ge)throw e;return v.logger.error("mapping validate failed",{event:v.event,error:e}),!1})(h,v)&&(h=void 0);const m=ue(h);return V(m)?m:ue(p)},Promise.resolve(void 0))}async function he(e,n,t){var o;n.policy&&await Promise.all(Object.entries(n.policy).map(async([n,o])=>{const r=await pe(e,o,{collector:t,event:e});e=Q(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(K(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:Y(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 pe(e,o,{collector:t,event:e});e=Q(e,n,r)}));let i=n.data&&await pe(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 pe(e,r.data,{collector:t,event:e});i=Y(i)&&Y(n)?F(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(ee):n;for(const n of o){const o=ee[n];if(!o)continue;const r=o(e);if(Y(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=Y(i)?F(n,i):null!=i?i:n)}return{event:e,data:i,mapping:r,mappingKey:s,ignore:!1,silent:a}}function me(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 ye(e){if(void 0===e||"*"===e)return()=>!0;if("and"in e){const n=e.and.map(ye);return e=>n.every(n=>n(e))}if("or"in e){const n=e.or.map(ye);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=Z(e,n),o=s(t);return r?!o:o}}(e)}function we(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=be(e))?n:{type:"chain",value:[]}};const o=e;return{match:o.match?ye(o.match):()=>!0,next:null!=(t=be(o))?t:{type:"chain",value:[]}}})}function be(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 be({one:e});if(e.every(e=>"string"==typeof e))return{type:"chain",value:e};const n=[];for(const t of e){const e=be(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:ye(n.match),next:be(n.next)}:be(n.next);if("one"in n&&n.one){const e=we(n.one);return n.match?{type:"gate",match:ye(n.match),next:{type:"one",routes:e}}:{type:"one",routes:e}}if("many"in n&&n.many){const e=we(n.many);return n.match?{type:"gate",match:ye(n.match),next:{type:"many",routes:e}}:{type:"many",routes:e}}return n.match?{type:"gate",match:ye(n.match)}:void 0}var ke=new WeakMap;function Oe(e,n={}){if(null==e)return[];let t;if("object"==typeof e){const n=ke.get(e);n?t=n:(t=be(e),t&&ke.set(e,t))}else t=be(e);if(!t)return[];const o=xe(t,n);return void 0===o?[]:Array.isArray(o)?o:[o]}function xe(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 xe(e.next,n)}if("sequence"===e.type){const t=[];for(const o of e.value){const e=xe(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=xe(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 xe(t.next,n)}}function je(e,n){const t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t}function Ae(e){var n;return{stop:null!=(n=e.stop)&&n,storeId:e.store,namespace:e.namespace,rules:e.rules.map(e=>({match:e.match?ye(e.match):()=>!0,key:e.key,ttl:e.ttl,update:e.update}))}}async function Ce(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=Z(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 Ee(e,n,t,o){e.set(n,t,1e3*o)}async function Se(e,n,t,o){if(!n)return e;let r=e;for(const[e,s]of Object.entries(n))r=Q(r,e,await pe(t,s,{collector:o}));return r}var _e={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"]},qe=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],$e={Source:["primary"],Transformer:[],Destination:[],Store:[]},Pe=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function Ie(e,n){const t=(o=n,new Set([..._e[o],...qe,...$e[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&&Pe.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:`import must match ${Pe.source}. Got: ${JSON.stringify(e.import)}.`}}var Me={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 De(e,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache}function Ne(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 Te(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 Re(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 Ue(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:B(t),config:n.config,env:Be(n.config.env)};r.debug("init");const i=await me(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 Le(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:{...Be(n.config.env),...s?{respond:s}:{}}};a.debug("push",{event:o.name});const l=await me(n.push,"TransformerPush",e.hooks,e.logger)(o,c);return a.debug("push done"),l}function ze(e,n){return e?{...e,_meta:{...e._meta,path:[...e._meta.path]}}:B(n)}async function Ge(e,n,t,o,r,s,i){var a,c,l,u,f,d,g,p;r||(r=B(null!=(a=t[0])?a:"chain")),i&&r._meta&&(r._meta.chainPath=i);let v=o,h=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:h};if(r&&r._meta&&(r._meta.hops++,r._meta.path.push(o)),!await de(Ue,n=>{if(n instanceof ge)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:h};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}),v=n;continue}if(void 0!==(null==(u=s.config)?void 0:u.mock)){e.logger.scope(`transformer:${s.type||"unknown"}`).debug("mock"),v=s.config.mock;continue}if(null==(f=s.config)?void 0:f.disabled)continue;const a=null==(d=s.config)?void 0:d.cache,m=a?Ae(a):void 0,y=m?De(m,e):void 0;let w;if(m&&y){const e=je(r,v),n=await Ce(m,y,e);if("HIT"===(null==n?void 0:n.status)&&n.value){if(v=n.value,m.stop)return{event:v,respond:h,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=Oe(b,je(r,v));if(1===t.length){const o=Re(t[0],Ne(n));if(o.length>0){const t=await Ge(e,n,o,v,r,h,i);if(null===t.event)return{event:null,respond:null!=(g=t.respond)?g:h};if(t.stopped)return{event:Array.isArray(t.event)?t.event[0]:t.event,respond:null!=(p=t.respond)?p:h,stopped:!0};t.respond&&(h=t.respond),v=Array.isArray(t.event)?t.event[0]:t.event}}else t.length>1&&await Promise.all(t.map(t=>de(Ge,n=>(e.logger.scope("transformer:many").error(`many branch ${t} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Re(t,Ne(n)),v,ze(r,t),void 0,i)))}const k=await de(Le,n=>(e.logger.scope(`transformer:${s.type||"unknown"}`).error("Push failed",{error:n}),!1))(e,s,o,v,r,h);if(!1===k)return{event:null,respond:h};if(Array.isArray(k)){const s=t.slice(t.indexOf(o)+1),a=await Promise.all(k.map(async t=>{const o=t.event||v,a=ze(r,"unknown");if(t.next){const r=Oe(t.next,je(a,o));if(0===r.length)return{event:o,respond:h};if(1===r.length){const t=Re(r[0],Ne(n));return t.length>0?Ge(e,n,t,o,a,h,i):{event:o,respond:h}}return(await Promise.all(r.map(t=>de(Ge,n=>(e.logger.scope("transformer:many").error(`many branch ${t} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Re(t,Ne(n)),o,ze(a,t),void 0,i)))).map(e=>({event:e.event,respond:void 0}))}return s.length>0?Ge(e,n,s,o,a,h,i):{event:o,respond:h}}));let c=h;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&&(h=o),void 0!==s){const o=Oe(s,je(r,v));if(0===o.length){t&&(v=t);continue}if(1===o.length){const a=Re(o[0],Ne(n));return a.length>0?Ge(e,n,a,t||v,r,h,i):(e.logger.warn(`Branch target not found: ${JSON.stringify(s)}`),{event:null,respond:h})}return await Promise.all(o.map(o=>de(Ge,n=>(e.logger.scope("transformer:many").error(`many branch ${o} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Re(o,Ne(n)),t||v,ze(r,o),void 0,i))),{event:null,respond:void 0}}t&&(v=t)}w&&y&&Ee(y,w.key,v,w.ttl);const O=s.config.next,x="string"==typeof O||Array.isArray(O)&&O.every(e=>"string"==typeof e),j=void 0!==O&&!x;if((!k||"object"==typeof k&&!k.next)&&j){const t=Oe(s.config.next,je(r,v));if(1===t.length){const o=Re(t[0],Ne(n));return o.length>0?Ge(e,n,o,v,r,h,i):{event:v,respond:h}}return t.length>1?(await Promise.all(t.map(t=>de(Ge,n=>(e.logger.scope("transformer:many").error(`many branch ${t} failed`,{error:n}),{event:null,respond:void 0}))(e,n,Re(t,Ne(n)),v,ze(r,t),void 0,i))),{event:null,respond:void 0}):{event:v,respond:h}}}return{event:v,respond:h}}function Be(e){return e&&Y(e)?e:{}}function He(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(e=>"string"==typeof e))}async function Fe(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 de(n.on,n=>{if(n instanceof ge)throw n;e.status.failed++,e.logger.scope("source").error("source on flush failed",{sourceId:i,type:t,error:n})})(t,o)}function Ke(e){var n;return Boolean(e.config.init)&&!(null==(n=e.config.require)?void 0:n.length)}async function Ve(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?Ae({...f,stop:null==(o=f.stop)||o}):void 0,g=He(c)?Re(c,Ne(e.transformers)):void 0,p=He(l)?Re(l,Ne(e.transformers)):void 0,v=i.push,h=null!=v?v:e.push,m=Boolean(v),y=async(t,o,r)=>{var i;let a;const u=null!=p?p:void 0!==l?(()=>{const n=Oe(l,je(r.ingest));return 0===n.length?[]:Re(1===n.length?n[0]:n,Ne(e.transformers))})():[];let f=[t];if(u.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const o=await Ge(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=De(d,e);if(n){const t=je(r.ingest),o=await Ce(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 Se(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=>{Ee(n,l,t,u),i?a=(async()=>{const n=await Se(t,i,c,e);s(n)})():s(t)};r.respond=f}"MISS"!==o.status||d.stop||Ee(n,o.key,!0,o.rule.ttl)}}}const v=g?{kind:"single",preChain:g}:void 0!==c?(()=>{const n=Oe(c,je(r.ingest));return 0===n.length?{kind:"single",preChain:[]}:1===n.length?{kind:"single",preChain:Re(n[0],Ne(e.transformers))}:{kind:"many",branches:n.map(n=>Re(n,Ne(e.transformers)))}})():{kind:"single",preChain:[]};let y={ok:!0};for(const t of f)"many"===v.kind?(await Promise.all(v.branches.map((i,a)=>de(async()=>m?h(t):h(t,{...o,id:n,ingest:ze(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 h(t):await h(t,{...o,id:n,ingest:r.ingest,respond:r.respond,mapping:s,preChain:v.preChain});return a&&await a,y},w=async t=>{const o=B(n);if(!s.ingest||void 0===t)return o;const r=await pe(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:B(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 de(r,t=>{if(t instanceof ge)throw t;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:n,error:t})})(O);if(!x)return;const j=x.type||"unknown",A=e.logger.scope(j).scope(n);return k.logger=A,a&&(x.config={...x.config,primary:a}),x}function We(e,n,t,o){if(t instanceof ge)throw t;e.logger.scope("on").error("on callback failed",{kind:n,...o,error:t})}function Ye(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}}function Je(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:pn(n.env,n.config.env)};fe(n.on,n=>We(e,"destination",n,{destId:t,type:o}))(o,a)}function Xe(e,n,t,o){let r;switch(n){case Me.Consent:r=o||e.consent;break;case Me.Session:r=e.session;break;case Me.User:r=o||e.user;break;case Me.Custom:r=o||e.custom;break;case Me.Globals:r=o||e.globals;break;case Me.Config:r=o||e.config;break;case Me.Ready:case Me.Run:default:r=void 0}if(t.length)switch(n){case Me.Consent:!function(e,n,t){const o=t||e.consent,r=Ye(e,Me.Consent);n.forEach(n=>{Object.keys(o).filter(e=>e in n).forEach(t=>{fe(n[t],n=>We(e,"consent",n,{key:t}))(o,r)})})}(e,t,o);break;case Me.Ready:!function(e,n){if(!e.allowed)return;const t=Ye(e,Me.Ready);n.forEach(n=>{fe(n,n=>We(e,"ready",n))(void 0,t)})}(e,t);break;case Me.Run:!function(e,n){if(!e.allowed)return;const t=Ye(e,Me.Run);n.forEach(n=>{fe(n,n=>We(e,"run",n))(void 0,t)})}(e,t);break;case Me.Session:!function(e,n){if(!e.session)return;const t=Ye(e,Me.Session);n.forEach(n=>{fe(n,n=>We(e,"session",n))(e.session,t)})}(e,t);break;default:{const o=Ye(e,n);t.forEach(t=>{"function"==typeof t&&fe(t,t=>We(e,"generic",t,{type:n}))(r,o)});break}}}function Ze(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 Qe=new WeakMap;function en(e,n,t,o){Qe.get(e)||(Qe.set(e,!0),n.warn(t,o))}function nn(e){Qe.delete(e)}var tn=Object.freeze({batched:!0});function on(e){return e===tn}function rn(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}}function sn(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 an(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 cn(e,n,t){if(!e)return[];if(Array.isArray(e)&&e.every(e=>"string"==typeof e))return Re(e,n);if("string"==typeof e)return Re(e,n);const o=Oe(e,je(t));return 0===o.length?[]:1===o.length?Re(o[0],n):Re(o,n)}async function ln(e,n,t={},o){var r,s,i,a,c,l;const{allowed:u,consent:f,globals:d,user:g}=e;if(!u)return dn({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=Ze(e.queue,n,{max:t});if(o.dropped>0){const n=an(e.status,N("collector"),"queue",o.dropped);en(e.queue,e.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:t,droppedCount:n})}else e.queue.length<t&&nn(e.queue);e.status.in++}o||(o=e.destinations);const p=e.transformers?Ne(e.transformers):{},v=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(X(n));const u=t.ingest?{...t.ingest,_meta:{...t.ingest._meta,path:[...t.ingest._meta.path]}}:B("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 un(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 v=[],h=l.filter(e=>{const n=ne(r.config.consent,f,e.consent);return!n||(e.consent=n,v.push(e),!1)});if(h.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 h)i+=Ze(n,e,s).dropped;if(i>0){sn(e,t);const o=an(e.status,N("destination",t),"queue",i);en(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&&nn(n)}if(!v.length)return{id:o,destination:r,queue:l};let m,y,w=!1;try{w=await un(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=cn(r.config.before,p,u),k=r.config.next,O=null==(c=r.config)?void 0:c.cache,x=O?Ae(O):void 0,j=x?De(x,e):void 0;let A=0,C=0;return await Promise.all(v.map(async n=>{let s;if(n.globals=F(d,n.globals),n.user=F(g,n.user),(null==x?void 0:x.stop)&&j){const e=je(u,n),t=await Ce(x,j,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 Ge(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&&j){const e=je(u,i),t=await Ce(x,j,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 de(fn,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=Ze(a,[i,n],u);if(f.dropped>0){sn(e,c);const n=an(e.status,N("destination",c),"dlq",f.dropped);en(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&&nn(a)})(e,r,o,i,u,a);if(A+=Date.now()-c,s&&j&&void 0===r.config.mock&&Ee(j,s.key,null==f||f,s.ttl),void 0===f||on(f)||(y=f),on(f)&&C++,!l&&k){void 0!==f&&(u._response=f);const n=cn(k,p,u);if(n.length>0&&e.transformers&&Object.keys(e.transformers).length>0){const t=await Ge(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:A,batchedCount:C,allowedCount:v.length}})),h={},m={},y={};for(const n of v){if(n.skipped)continue;const t=n.destination,o={type:t.type||"unknown",data:n.response};sn(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)&&(h[n.id]=o,u.count++,u.lastAt=f,u.duration+=n.totalDuration||0,e.status.out++)}}return dn({event:n,...Object.keys(h).length&&{done:h},...Object.keys(m).length&&{queued:m},...Object.keys(y).length&&{failed:y}})}async function un(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:pn(n.env,n.config.env)};s.debug("init");const a=await me(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)Je(e,n,t,r,s)}s.debug("init done")}return!0}async function fn(e,n,t,o,r,s){var i,a,c,l,u,f,d;const{config:g}=n,p=await he(o,g,e);if(p.ignore)return!1;const v=n.type||"unknown",h=e.logger.scope(v),m={collector:e,logger:h,id:t,config:g,data:p.data,rule:p.mapping,ingest:r,env:{...pn(n.env,g.env),...s?{respond:s}:{}}};if(void 0!==g.mock)return h.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=rn(y.batch),s=rn(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,v=null!=(f=null!=(u=r.age)?u:s.age)?f:3e4,m=pn(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))},v=(...n)=>new Promise(g=>{const v=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(v){u=!0,i=e(...n);const t=f;f=[],t.forEach(e=>e(i))}});return v.flush=()=>a||0!==f.length?new Promise(e=>{f.push(e),p()}):Promise.resolve(void 0),v.cancel=()=>{const e=f;f=[],g(),e.forEach(e=>e(void 0))},v.size=()=>d,v}(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:h,id:t,config:g,data:void 0,rule:i.rule,ingest:i.ingest,env:{...m,...i.respond?{respond:i.respond}:{}}};h.debug("push batch",{events:s.entries.length});const c=n.config.id||t,l=sn(e,c);let u=!0;await de(me(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+=Ze(r,[e.event,t],i).dropped;if(a>0){const n=an(e.status,N("destination",c),"dlq",a);en(r,h,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:c,cap:i.max,droppedCount:n})}else r.length<i.max&&nn(r);l.failed+=s.entries.length,l.dlqSize=r.length,e.status.failed+=s.entries.length,h.error("Push batch failed",{error:t instanceof Error?t.message:String(t),entries:s.entries.length})})(s,a),h.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:v});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),V(p.data)&&o.batched.data.push(p.data);const v=n.config.id||t,m=sn(e,v);return m.inFlightBatch=(null!=(d=m.inFlightBatch)?d:0)+1,o.batchFn(),tn}{h.debug("push",{event:p.event.name});const t=await me(n.push,"DestinationPush",e.hooks,e.logger)(p.event,m);return h.debug("push done"),t}}function dn(e){return{ok:!(null==e?void 0:e.failed),...e}}function gn(e){const{code:n,config:t={},env:o={},cache:r}=e,{config:s}=Te(e,"before"),{config:i}=Te({...e,config:s},"next"),a={...n.config,...t,...i};r&&(a.cache=r);const c=pn(n.env,o);return{...n,config:a,env:c}}function pn(e,n){return e||n?n?e&&Y(e)&&Y(n)?{...e,...n}:n:e:{}}async function vn(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 hn(e,n,t){let o,r,s=!1;switch(n){case Me.Config:Y(t)&&(F(e.config,t,{shallow:!1}),r=t,s=!0);break;case Me.Consent:if(Y(t)){const{update:n}=function(e,n){const t={};return Object.entries(n).forEach(([e,n])=>{t[e]=!!n}),e.consent=F(e.consent,t),{update:t}}(e,t);r=n,s=!0}break;case Me.Custom:Y(t)&&(e.custom=F(e.custom,t),r=t,s=!0);break;case Me.Destination:Y(t)&&"code"in t&&Y(t.code)&&(o=await async function(e,n){const{code:t,config:o={},env:r={},before:s,next:i,cache:a}=n;if(!W(t.push))return dn({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:pn(t.env,r)};let f=u.config.id;if(!f)do{f=oe(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[f]);return e.destinations[f]=u,!1!==u.config.queue&&(u.queuePush=[...e.queue]),ln(e,void 0,{},{[f]:u})}(e,t));break;case Me.Globals:Y(t)&&(e.globals=F(e.globals,t),r=t,s=!0);break;case Me.Hook:if(Y(t)&&J(t.name)&&W(t.fn)){const{name:n,fn:o}=t;e.hooks[n]=o,r=t,s=!0}break;case Me.On:if(Y(t)&&J(t.type)){const{type:n,rules:o}=t;await async function(e,n,t){const o=e.on,r=o[n]||[],s=K(t)?t:[t];s.forEach(e=>{r.push(e)}),o[n]=r,Xe(e,n,s)}(e,n,o)}break;case Me.Ready:s=!0;break;case Me.Run:o=await async function(e,n){return e.allowed=!0,e.timing=Date.now(),n&&(n.consent&&(e.consent=F(e.consent,n.consent)),n.user&&(e.user=F(e.user,n.user)),n.globals&&(e.globals=F(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=F(e.custom,n.custom))),Object.values(e.destinations).forEach(e=>{e.queuePush=[]}),e.queue=[],e.round++,await ln(e)}(e,t),s=!0;break;case Me.Session:s=!0;break;case Me.Shutdown:await async function(e){const n=e.logger;await vn(e.sources,"source",n),await vn(e.destinations,"destination",n),await vn(e.transformers,"transformer",n),await vn(e.stores,"store",n)}(e);break;case Me.User:Y(t)&&(F(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 Me.Consent:i=o||e.consent;break;case Me.Session:i=e.session;break;case Me.User:i=o||e.user;break;case Me.Custom:i=o||e.custom;break;case Me.Globals:i=o||e.globals;break;case Me.Config:i=o||e.config;break;case Me.Ready:case Me.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&&(Ke(o)?!1===await de(o.on,o=>We(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});Je(e,o,t,n,i)}});for(const[n,t]of Object.entries(e.sources))Ke(t)&&(null==(s=t.queueOn)?void 0:s.length)&&await Fe(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=gn(r);!1!==a.config.queue&&(a.queuePush=[...e.queue]),e.destinations[o]=a}}(e,n),Xe(e,n,a,o),!c}(e,n,void 0,r),o=await ln(e)),o||dn({ok:!0})}function mn(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=te(),trigger:p="",entity:v=t,action:h=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:v,action:h,timestamp:r,timing:m,source:y}}function yn(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 wn(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?ye(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 bn(e,n){const t=n.get,o=n.set,r=n.delete;n.get=me(t,"StoreGet",e.hooks,e.logger),n.set=me(o,"StoreSet",e.hooks,e.logger),n.delete=me(r,"StoreDelete",e.hooks,e.logger)}async function kn(e){var n,t;const o=F({globalsStatic:{},sessionStatic:{},run:!0,queueMax:1e3},e,{merge:!1,extend:!1}),r=ae({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 me(async(t,o={})=>await de(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 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,h=null!=a?a:B(i||"unknown");if(l){const n=await he(p,l,e);if(n.ignore)return dn({ok:!0});if(l.consent&&!ne(l.consent,e.consent,n.event.consent))return dn({ok:!0});p=n.event}if((null==u?void 0:u.length)&&e.transformers&&Object.keys(e.transformers).length>0){const t=await Ge(e,e.transformers,u,p,h,g,i?`source.${i}.next`:void 0);if(null===t.event)return dn({ok:!0});if(t.stopped)return t.respond&&(g=t.respond),dn({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=mn(e,o);return ln(e,r,{id:i,ingest:h,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:dn({ok:!0})}p=t.event}const m=n(p),y=mn(e,m),w=await ln(e,y,{id:i,ingest:h,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 w},n=>{if(n instanceof ge)throw n;return e.status.failed++,e.logger.error("push failed",{event:t,ingest:o.ingest,error:n}),dn({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=hn,me(async(e,n,t)=>await de(async()=>await c(a,e,n,t),t=>{if(t instanceof ge)throw t;return a.status.failed++,a.logger.error("command failed",{command:e,data:n,error:t}),dn({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=yn()),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]=wn(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&&bn(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=yn()),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]=gn(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=Ie(c,"Transformer");if(!u.ok){e.logger.warn(`Transformer ${a} invalid (${u.code}): ${u.reason}. Skipping.`);continue}const{config:f}=Te(c,"before"),{config:d}=Te({...c,config:f},"next"),g=Object.keys(l).length>0?{...d,env:l}:d,{cache:p}=c,v=p?{...g,cache:p}:g,h=e.logger.scope("transformer").scope(a),m={collector:e,logger:h,id:a,ingest:B(a),config:v,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 he(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 On(e){e=e||{};const n=await kn(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 dn({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 Ve(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 de(t.init.bind(t),t=>{if(t instanceof ge)throw t;o=!0,e.status.failed++,e.logger.scope("source").error("source init failed",{sourceId:n,error:t})})(),o||(t.config.init=!0,Ke(t)&&await Fe(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 xn,jn=async e=>{let n;return{get flow(){return n},trigger:(t,o)=>async t=>{var r;if(!n){const t=await On({...e,run:null==(r=e.run)||r});n={collector:t.collector,elb:t.elb}}const s=(null==o?void 0:o.eventName)||"ucEvent";window.dispatchEvent(new CustomEvent(s,{detail:t}))}}},An=(e,n)=>{if(e&&"object"==typeof e)return()=>{n.window.dispatchEvent(new CustomEvent("ucEvent",{detail:e}))}},Cn=async e=>{var n,t,o,r,s,i,a,c,l,f,g,p;const{config:v,env:h}=e,{elb:m,logger:y}=h,w=null!=(n=h.window)?n:void 0!==globalThis.window?globalThis.window:void 0,b={eventName:null!=(o=null==(t=null==v?void 0:v.settings)?void 0:t.eventName)?o:"ucEvent",categoryMap:null!=(s=null==(r=null==v?void 0:v.settings)?void 0:r.categoryMap)?s:{},explicitOnly:null==(a=null==(i=null==v?void 0:v.settings)?void 0:i.explicitOnly)||a,apiVersion:null!=(l=null==(c=null==v?void 0:v.settings)?void 0:c.apiVersion)?l:"auto",v3EventName:null!=(g=null==(f=null==v?void 0:v.settings)?void 0:f.v3EventName)?g:"UC_UI_CMP_EVENT"},k={settings:b},O=[];if(w){const e={window:w,elb:m,settings:b,logger:y},n=null!=(p=b.apiVersion)?p:"auto";"v2"===n?O.push(u(e)):"v3"===n||w.__ucCmp?O.push(await d(e)):w.UC_UI?O.push(u(e)):(O.push(u(e)),O.push(await d(e)))}return{type:"usercentrics",config:k,push:m,destroy:async()=>{O.forEach(e=>e())}}},En=Cn;return xn=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}),xn)})();
|
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 SourceUsercentrics=function(){var e=function(e,n,t){e[n]=(void 0===e[n]||Boolean(e[n]))&&t},n=function(n,t){var r,o={};return n.ucCategory&&(r=n.ucCategory,Object.values(r).every(function(e){return"boolean"==typeof e}))?Object.entries(n.ucCategory).forEach(function(n){var r,a,i=_sliced_to_array(n,2),s=i[0],c=i[1];if("boolean"==typeof c){var u=null!==(r=null===(a=t.categoryMap)||void 0===a?void 0:a[s])&&void 0!==r?r:s;e(o,u,c)}}):(n.ucCategory&&Object.entries(n.ucCategory).forEach(function(n){var r=_sliced_to_array(n,2),a=r[0],i=r[1];if("boolean"==typeof i){var s,c,u=null!==(s=null===(c=t.categoryMap)||void 0===c?void 0:c[a])&&void 0!==s?s:a;e(o,u,i)}}),Object.entries(n).forEach(function(n){var t=_sliced_to_array(n,2),r=t[0],a=t[1];if(!pe.includes(r)&&"boolean"==typeof a){var i=r.toLowerCase().replace(/ /g,"_");e(o,i,a)}})),o},t=function(e){var n={};return e.forEach(function(e){var t,r,o=e.categorySlug,a=null!==(t=null===(r=e.consent)||void 0===r?void 0:r.status)&&void 0!==t&&t;n[o]=(void 0===n[o]||n[o])&&a}),n},r=function(e){var r,o,a=e.window,i=e.elb,s=e.settings,c=e.logger,u=null!==(r=s.eventName)&&void 0!==r?r:"ucEvent",l=function(e){var t;if(c.debug("event received",e),"consent_status"===e.event&&(!s.explicitOnly||"explicit"===(null===(t=e.type)||void 0===t?void 0:t.toLowerCase()))){var r=n(e,s);Object.keys(r).length>0&&i("walker consent",r)}},f=function(e){var n=e;n.detail&&l(n.detail)};a.addEventListener(u,f);var d=a.UC_UI;if((null==d||null===(o=d.isInitialized)||void 0===o?void 0:o.call(d))&&d.getServicesBaseInfo){var v=d.getServicesBaseInfo();v.length>0&&l(function(e){return{event:"consent_status",type:"implicit",ucCategory:t(e)}}(v))}return function(){a.removeEventListener(u,f)}},o=function(e){return _async_to_generator(function(){var t,r,o,a,i,s,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:if(r=e.window,o=e.elb,a=e.settings,i=e.logger,s=null!==(t=a.v3EventName)&&void 0!==t?t:ge,c=function(e){return _async_to_generator(function(){var t,r,s;return _ts_generator(this,function(c){switch(c.label){case 0:return[4,e.getConsentDetails()];case 1:return t=c.sent(),r=function(e){var n={};return Object.entries(e.categories).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],o=t[1];n[r]="ALL_ACCEPTED"===o.state}),{event:"consent_status",type:"EXPLICIT"===e.consent.type?"explicit":"implicit",ucCategory:n}}(t),i.debug("event received",r),a.explicitOnly&&"explicit"!==r.type?[2]:(s=n(r,a),Object.keys(s).length>0&&o("walker consent",s),[2])}})})()},u=function(e){var n=r.__ucCmp;if(n){var t=e.detail;t&&"CMP"===t.source&&t.type&&ye.has(t.type)&&c(n).catch(function(){})}},r.addEventListener(s,u),!(l=r.__ucCmp))return[3,6];d.label=1;case 1:return d.trys.push([1,5,,6]),[4,l.isInitialized()];case 2:return d.sent()?[4,c(l)]:[3,4];case 3:d.sent(),d.label=4;case 4:return[3,6];case 5:return f=d.sent(),i.warn("v3 static consent read failed",f),[3,6];case 6:return[2,function(){r.removeEventListener(s,u)}]}})})()},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({},Be,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=Ke(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},v=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},p=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))})}},g=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},y=function(e,n){var t,r={};return _instanceof(e,Error)?(t=e.message,r.error=g(e)):t=e,void 0!==n&&(_instanceof(n,Error)?r.error=g(n):"object"==(void 0===n?"undefined":_type_of(n))&&null!==n?"error"in(r=_object_spread({},r,n))&&_instanceof(r.error,Error)&&(r.error=g(r.error)):r.value=n),{message:t,context:r}},b=function(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ze({level:void 0!==n.level?(e=n.level,"string"==typeof e?He[e]:e):0,handler:n.handler,jsonHandler:n.jsonHandler,scope:[]})},h=function(e){return Je(e)?e:void 0},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];try{return e.apply(void 0,_to_consumable_array(o))}catch(e){if(!n)return;return n(e)}finally{null==t||t()}}},w=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]}})})()}},j=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,c,u,f,d,v,_;return _ts_generator(this,function(p){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],i=o[1],n&&a&&i?(u="",d=i,v=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=v(_[d])),c||(f="*",d="*",c=v(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,v,_,p,g,y,b,h,m=arguments;return _ts_generator(this,function(j){switch(j.label){case 0:if(n=m.length>1&&void 0!==m[1]?m[1]:{},t=m.length>2&&void 0!==m[2]?m[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,v=!1,_=void 0,j.label=1;case 1:j.trys.push([1,6,7,8]),p=f[Symbol.iterator](),j.label=2;case 2:return(d=(g=p.next()).done)?[3,5]:(y=g.value,[4,w(Xe)(e,y,_object_spread_props(_object_spread({},u),{mapping:y}))]);case 3:if(b=j.sent(),c(b))return[2,b];j.label=4;case 4:return d=!0,[3,2];case 5:return[3,8];case 6:return h=j.sent(),v=!0,_=h,[3,8];case 7:try{d||null==p.return||p.return()}finally{if(v)throw _}return[7];case 8:return[2]}})}).apply(this,arguments)},O=function(e,n,t){return _async_to_generator(function(){var r,o,a,s,c,u,f,v,_,p,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,j(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:v=_,c=l(c)&&l(v)?i(c,v):v,y.label=10;case 10:return(p=null!==(r=null==a?void 0:a.include)&&void 0!==r?r:n.include)&&p.length>0&&(g=function(e,n){var t={},r=n.includes("all")?Object.keys(We):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=We[u];if(f){var d=f(e),v=!0,_=!1,p=void 0;if(l(d))try{for(var g,y=Object.entries(d)[Symbol.iterator]();!(v=(g=y.next()).done);v=!0){var b=_sliced_to_array(g.value,2),h=b[0],m=b[1];if(void 0!==m){var w="context"===u&&Array.isArray(m)?m[0]:m;t["".concat(u,"_").concat(h)]=w}}}catch(e){_=!0,p=e}finally{try{v||null==y.return||y.return()}finally{if(_)throw p}}}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return t}(e,p),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}]}})})()},S=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,n){var t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t},C=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?Ye(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},A=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=Ve(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}},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,v,_,p;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],v=l[1],_=[o,f],[4,k(t,v,{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 p=g.sent(),i=!0,s=p,[3,8];case 7:try{a||null==c.return||c.return()}finally{if(i)throw s}return[7];case 8:return[2,o]}})})()},q=function(e,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache},D=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=$e(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},I=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}},M=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},N=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:R(n.config.env)},o.debug("init"),[4,S(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]}})})()},T=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({},R(n.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,S(n.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},U=function(e,n){var t;if(e)return null!==(t=Qe($e(e),n))&&void 0!==t?t:void 0},R=function(e){return e&&l(e)?e:{}},G=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,w(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]}})})()},L=function(e){var n;return Boolean(e.config.init)&&!(null===(n=e.config.require)||void 0===n?void 0:n.length)},H=function(e,n,t){return _async_to_generator(function(){var r,o,i,s,c,u,l,f,d,v,_,p,g,y,b,h,m,j,O,S,I,N,T;return _ts_generator(this,function(U){switch(U.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,v=t.cache,p=a(n),g=v?C(_object_spread_props(_object_spread({},v),{stop:null===(r=v.stop)||void 0===r||r})):void 0,y=$e(f),b="static"!==(null==y?void 0:y.type)&&"chain"!==(null==y?void 0:y.type)||!y?void 0:M(Qe(y),D(e.transformers)),h=$e(d),m="static"!==(null==h?void 0:h.type)&&"chain"!==(null==h?void 0:h.type)||!h?void 0:M(Qe(h),D(e.transformers)),j=e.logger.scope("source").scope(n),O=_object_spread({push:function(t){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,v,w,j,k,O,S,C,I,N,T,U,R,G,L;return _ts_generator(this,function(H){switch(H.label){case 0:return a=null!=m?m:h?M(Qe(h,x(p)),D(e.transformers)):[],i=[t],a.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,nn(e,e.transformers,a,t,p,_,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(c=H.sent()).event)return[2,{ok:!0}];if(c.stopped)return[2,(c.respond&&(_=c.respond),{ok:!0})];c.respond&&(_=c.respond),i=Array.isArray(c.event)?c.event:[c.event],H.label=2;case 2:return g&&(u=q(g,e))?(l=x(p),(f=A(g,u,l))?"HIT"===f.status&&void 0!==f.value&&g.stop?(d=f.value,f.rule.update?[4,P(d,f.rule.update,_object_spread_props(_object_spread({},l),{cache:{status:"HIT"}}),e)]:[3,4]):[3,5]:[3,6]):[3,6];case 3:d=H.sent(),H.label=4;case 4:return[2,(null==_||_(d),{ok:!0})];case 5:"MISS"===f.status&&g.stop&&_&&(v=_,w=f.rule.update,j=_object_spread_props(_object_spread({},l),{cache:{status:"MISS"}}),k=f.key,O=f.rule.ttl,_=function(n){E(u,k,n,O),w?o=_async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,P(n,w,j,e)];case 1:return t=r.sent(),v(t),[2]}})})():v(n)}),"MISS"!==f.status||g.stop||E(u,f.key,!0,f.rule.ttl),H.label=6;case 6:S=null!=b?b:y?M(Qe(y,x(p)),D(e.transformers)):[],C={ok:!0},I=!0,N=!1,T=void 0,H.label=7;case 7:H.trys.push([7,12,13,14]),U=i[Symbol.iterator](),H.label=8;case 8:return(I=(R=U.next()).done)?[3,11]:(G=R.value,[4,e.push(G,_object_spread_props(_object_spread({},r),{id:n,ingest:p,respond:_,mapping:s,preChain:S}))]);case 9:C=H.sent(),H.label=10;case 10:return I=!0,[3,8];case 11:return[3,14];case 12:return L=H.sent(),N=!0,T=L,[3,14];case 13:try{I||null==U.return||U.return()}finally{if(N)throw T}return[7];case 14:return o?[4,o]:[3,16];case 15:H.sent(),H.label=16;case 16:return[2,C]}})})()},command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:j},u),S={collector:e,logger:j,id:n,config:s,env:O,setIngest:function(t){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(i){switch(i.label){case 0:return s.ingest?[4,k(t,s.ingest,{collector:e})]:[2,void(p=a(n))];case 1:return r=i.sent(),o=a(n),p=_object_spread_props(_object_spread({},o,r),{_meta:o._meta}),[2]}})})()},setRespond:function(e){_=e}},[4,w(o)(S)];case 1:return(I=U.sent())?(N=I.type||"unknown",T=e.logger.scope(N).scope(n),[2,(O.logger=T,l&&(I.config=_object_spread_props(_object_spread({},I.config),{primary:l})),I)]):[2]}})})()},B=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,v,_,p,g,y,b,h,m,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,H(e,u,l)]);case 3:if(!(d=O.sent()))return[3,4];v=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),v?{require:_to_consumable_array(v)}:{}),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),_=!0,p=!1,g=void 0,O.label=9;case 9:O.trys.push([9,17,18,19]),y=Object.keys(t)[Symbol.iterator](),O.label=10;case 10:return(_=(b=y.next()).done)?[3,16]:(h=b.value,m=e.sources[h],m.init?[4,w(m.init.bind(m))()]:[3,12]);case 11:O.sent(),O.label=12;case 12:return m.config.init=!0,L(m)?[4,G(0,m)]:[3,14];case 13:O.sent(),O.label=14;case 14:O.label=15;case 15:return _=!0,[3,10];case 16:return[3,19];case 17:return j=O.sent(),p=!0,g=j,[3,19];case 18:try{_||null==y.return||y.return()}finally{if(p)throw g}return[7];case 19:return[2,t]}})}).apply(this,arguments)},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,F(e,n,a),[2]})})()},W=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:te(n.env,n.config.env)};m(n.on)(r,s)}},F=function(e,n,t,r){var o,a,i,s,c;switch(n){case en.Commands.Consent:o=r||e.consent;break;case en.Commands.Session:o=e.session;break;case en.Commands.User:o=r||e.user;break;case en.Commands.Custom:o=r||e.custom;break;case en.Commands.Globals:o=r||e.globals;break;case en.Commands.Config:o=r||e.config;break;case en.Commands.Ready:case en.Commands.Run:default:o=void 0}if(t.length)switch(n){case en.Commands.Consent:a=e,i=t,s=r||a.consent,c=K(a,en.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(n){return n in e}).forEach(function(n){m(e[n])(s,c)})});break;case en.Commands.Ready:!function(e,n){if(e.allowed){var t=K(e,en.Commands.Ready);n.forEach(function(e){m(e)(void 0,t)})}}(e,t);break;case en.Commands.Run:!function(e,n){if(e.allowed){var t=K(e,en.Commands.Run);n.forEach(function(e){m(e)(void 0,t)})}}(e,t);break;case en.Commands.Session:!function(e,n){if(e.session){var t=K(e,en.Commands.Session);n.forEach(function(n){m(n)(e.session,t)})}}(e,t);break;default:var u=K(e,n);t.forEach(function(e){"function"==typeof e&&m(e)(o,u)})}},z=function(e,n,t,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,v,_,p,g,y,b,h,m,j,k,O;return _ts_generator(this,function(S){switch(S.label){case 0:switch(i=t||[],t||(i=e.on[n]||[]),n){case en.Commands.Consent:a=r||e.consent;break;case en.Commands.Session:a=e.session;break;case en.Commands.User:a=r||e.user;break;case en.Commands.Custom:a=r||e.custom;break;case en.Commands.Globals:a=r||e.globals;break;case en.Commands.Config:a=r||e.config;break;case en.Commands.Ready:case en.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,S.label=1;case 1:S.trys.push([1,7,8,9]),f=Object.values(e.sources)[Symbol.iterator](),S.label=2;case 2:return(c=(d=f.next()).done)?[3,6]:(v=d.value,(null===(_=v.config.require)||void 0===_?void 0:_.length)&&-1!==(p=v.config.require.indexOf(n))&&v.config.require.splice(p,1),v.on?L(v)?(g=!1,[4,w(v.on)(n,a)]):[3,4]:[3,5]);case 3:return g===S.sent()&&(s=!0),[3,5];case 4:v.queueOn=v.queueOn||[],v.queueOn.push({type:n,data:a}),S.label=5;case 5:return c=!0,[3,2];case 6:return[3,9];case 7:return O=S.sent(),u=!0,l=O,[3,9];case 8:try{c||null==f.return||f.return()}finally{if(u)throw l}return[7];case 9:Object.entries(e.destinations).forEach(function(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});W(e,i,o,n,a)}}),y=!0,b=!1,h=void 0,S.label=10;case 10:S.trys.push([10,16,17,18]),m=Object.values(e.sources)[Symbol.iterator](),S.label=11;case 11:return(y=(j=m.next()).done)?[3,15]:(k=j.value,L(k)&&(null===(o=k.queueOn)||void 0===o?void 0:o.length)?[4,G(0,k)]:[3,13]);case 12:S.sent(),S.label=13;case 13:S.label=14;case 14:return y=!0,[3,11];case 15:return[3,18];case 16:return O=S.sent(),b=!0,h=O,[3,18];case 17:try{y||null==m.return||m.return()}finally{if(b)throw h}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,v;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!==(v=ee(u)).config.queue&&(v.queuePush=_to_consumable_array(e.queue)),e.destinations[c]=v))}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:S.sent(),S.label=20;case 20:return[2,(F(e,n,i,r),!s)]}})})()},J=function(e,n,t,r){if(!e)return[];var o=Qe(null!=n?n:$e(e),x(r));return o?M(o,t):[]},X=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,l,f,d,v,p,g;return _ts_generator(this,function(y){if(r=n.code,o=n.config,a=void 0===o?{}:o,i=n.env,s=void 0===i?{}:i,c=n.before,l=n.next,f=n.cache,!u(r.push))return[2,Z({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(d=t||a||{init:!1},v=c?_object_spread_props(_object_spread({},d),{before:c}):_object_spread({},d),l&&(v=_object_spread_props(_object_spread({},v),{next:l})),f&&(v=_object_spread_props(_object_spread({},v),{cache:f})),p=_object_spread_props(_object_spread({},r),{config:v,env:te(r.env,s)}),!(g=p.config.id))do{g=_(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[g]);return[2,(e.destinations[g]=p,!1!==p.config.queue&&(p.queuePush=_to_consumable_array(e.queue)),Y(e,void 0,{},_define_property({},g,p)))]})})()},Y=function(e,n,t){return _async_to_generator(function(e,n){var t,r,o,s,c,u,l,f,d,_,p,g,y,b,h,m,j,k,O,S,P=arguments;return _ts_generator(this,function(I){switch(I.label){case 0:return t=P.length>2&&void 0!==P[2]?P[2]:{},r=P.length>3?P[3]:void 0,o=e.allowed,s=e.consent,c=e.globals,u=e.user,o?(n&&(e.queue.push(n),e.status.in++),r||(r=e.destinations),l=e.transformers?D(e.transformers):{},[4,Promise.all(Object.entries(r||{}).map(function(r){var o=_sliced_to_array(r,2),f=o[0],d=o[1];return _async_to_generator(function(){var r,o,_,p,g,y,b,h,m,j,k,O,S,P,D,I,M,N,T,U,R,G,L,H;return _ts_generator(this,function(B){switch(B.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:s})}),d.queuePush=[],n&&g.push(Ke(n)),y=t.ingest?_object_spread_props(_object_spread({},t.ingest),{_meta:_object_spread_props(_object_spread({},t.ingest._meta),{path:_to_consumable_array(t.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===(_=d.queueOn)||void 0===_?void 0:_.length))return[3,5];b=!1,B.label=1;case 1:return B.trys.push([1,3,,4]),[4,$(e,d,f)];case 2:return b=B.sent(),[3,4];case 3:return h=B.sent(),m=d.type||"unknown",e.logger.scope(m).error("Destination init threw",{error:_instanceof(h,Error)?h.message:String(h)}),[3,4];case 4:return[2,{id:f,destination:d,skipped:!b}];case 5:if(j=[],k=g.filter(function(e){var n=v(d.config.consent,s,e.consent);return!n||(e.consent=n,j.push(e),!1)}),(r=d.queuePush).push.apply(r,_to_consumable_array(k)),!j.length)return[2,{id:f,destination:d,queue:g}];P=!1,B.label=6;case 6:return B.trys.push([6,8,,9]),[4,$(e,d,f)];case 7:return P=B.sent(),[3,9];case 8:return D=B.sent(),I=d.type||"unknown",e.logger.scope(I).error("Destination init threw",{error:_instanceof(D,Error)?D.message:String(D)}),[3,9];case 9:return P?(d.dlq||(d.dlq=[]),M=d.config.before,N=J(M,M&&Array.isArray(M)?$e(M):void 0,l,y),T=d.config.next,U=T&&Array.isArray(T)?$e(T):void 0,R=null===(p=d.config)||void 0===p?void 0:p.cache,G=R?C(R):void 0,L=G?q(G,e):void 0,H=0,[4,Promise.all(j.map(function(n){return _async_to_generator(function(){var r,o,a,s,v,_,p,g,b,h,m,j,k;return _ts_generator(this,function(C){switch(C.label){case 0:if(n.globals=i(c,n.globals),n.user=i(u,n.user),(null==G?void 0:G.stop)&&L){if(o=x(y,n),"HIT"===(null==(a=A(G,L,o))?void 0:a.status))return[2,n];"MISS"===(null==a?void 0:a.status)&&(r={key:a.key,ttl:a.rule.ttl})}return s=n,v=t.respond,N.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,nn(e,e.transformers,N,n,y,t.respond,"destination.".concat(f,".before"))]:[3,2];case 1:if(null===(_=C.sent()).event)return[2,n];_.respond&&(v=_.respond),s=Array.isArray(_.event)?_.event[0]:_.event,C.label=2;case 2:if(G&&!G.stop&&L){if(p=x(y,s),"HIT"===(null==(g=A(G,L,p))?void 0:g.status))return[2,n];"MISS"===(null==g?void 0:g.status)&&(r={key:g.key,ttl:g.rule.ttl})}return b=Date.now(),h=!1,[4,w(Q,function(n){var t=d.type||"unknown";e.logger.scope(t).error("Push failed",{error:n,event:s.name}),O=n,h=!0,d.dlq.push([s,n])})(e,d,f,s,y,v)];case 3:return m=C.sent(),H+=Date.now()-b,r&&L&&void 0===d.config.mock&&E(L,r.key,null==m||m,r.ttl),void 0!==m&&(S=m),h||!T?[3,5]:(void 0!==m&&(y._response=m),(j=J(T,U,l,y)).length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,nn(e,e.transformers,j,s,y,v,"destination.".concat(f,".next"))]:[3,5]);case 4:(k=C.sent()).respond&&(v=k.respond),C.label=5;case 5:return[2,n]}})})()}))]):[2,{id:f,destination:d,queue:g}];case 10:return[2,(B.sent(),{id:f,destination:d,error:O,response:S,totalDuration:H})]}})})()}))]):[2,Z({ok:!1})];case 1:f=I.sent(),d={},_={},p={},g=!0,y=!1,b=void 0;try{for(h=f[Symbol.iterator]();!(g=(m=h.next()).done);g=!0)(j=m.value).skipped||(k={type:j.destination.type||"unknown",data:j.response},e.status.destinations[j.id]||(e.status.destinations[j.id]={count:0,failed:0,duration:0}),O=e.status.destinations[j.id],S=Date.now(),j.error?(k.error=j.error,p[j.id]=k,O.failed++,O.lastAt=S,O.duration+=j.totalDuration||0,e.status.failed++):j.queue&&j.queue.length?_[j.id]=k:(d[j.id]=k,O.count++,O.lastAt=S,O.duration+=j.totalDuration||0,e.status.out++))}catch(e){y=!0,b=e}finally{try{g||null==h.return||h.return()}finally{if(y)throw b}}return[2,Z(_object_spread({event:n},Object.keys(d).length&&{done:d},Object.keys(_).length&&{queued:_},Object.keys(p).length&&{failed:p}))]}})}).apply(this,arguments)},$=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,d,v,_,p,g;return _ts_generator(this,function(y){switch(y.label){case 0:return!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:te(n.env,n.config.env)},a.debug("init"),[4,S(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=(v=d.next()).done);u=!0)_=v.value,p=_.type,g=_.data,W(e,n,t,p,g)}catch(e){l=!0,f=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw f}}}a.debug("init done"),y.label=2;case 2:return[2,!0]}})})()},Q=function(e,n,t,r,o,a){return _async_to_generator(function(){var i,s,u,l,f,d,v,_,g,y;return _ts_generator(this,function(b){switch(b.label){case 0:return i=n.config,[4,O(r,i,e)];case 1:return(s=b.sent()).ignore?[2,!1]:(u=n.type||"unknown",l=e.logger.scope(u),f={collector:e,logger:l,id:t,config:i,data:s.data,rule:s.mapping,ingest:o,env:_object_spread({},te(n.env,i.env),a?{respond:a}:{})},void 0!==i.mock?[2,(l.debug("mock",{event:s.event.name}),i.mock)]:(d=s.mapping,v=s.mappingKey||"* *",(null==d?void 0:d.batch)&&n.pushBatch&&void 0===i.mock?[3,3]:(l.debug("push",{event:s.event.name}),[4,S(n.push,"DestinationPush",e.hooks,e.logger)(s.event,f)])));case 2:return _=b.sent(),[2,(l.debug("push done"),_)];case 3:return n.batches=n.batches||{},n.batches[v]||(g={key:v,events:[],data:[]},n.batches[v]={batched:g,batchFn:p(function(){var r=n.batches[v].batched,s={collector:e,logger:l,id:t,config:i,data:void 0,rule:d,ingest:o,env:_object_spread({},te(n.env,i.env),a?{respond:a}:{})};l.debug("push batch",{events:r.events.length}),S(n.pushBatch,"DestinationPushBatch",e.hooks,e.logger)(r,s),l.debug("push batch done"),r.events=[],r.data=[]},d.batch)}),(y=n.batches[v]).batched.events.push(s.event),c(s.data)&&y.batched.data.push(s.data),y.batchFn(),[2,!0]}})})()},Z=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},ee=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=I(e,"before").config,c=I(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},n.config,r,c);i&&(u.cache=i);var l=te(n.env,a);return _object_spread_props(_object_spread({},n),{config:u,env:l})},ne=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,v=arguments;return _ts_generator(this,function(_){n=v.length>1&&void 0!==v[1]?v[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]=ee(d)}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}return[2,o]})}).apply(this,arguments)},te=function(e,n){return e||n?n?e&&l(e)&&l(n)?_object_spread({},e,n):n:e:{}},re=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]}})})()},oe=function(e,n,t,r){return _async_to_generator(function(){var o,a,s,c,d,v,_;return _ts_generator(this,function(p){switch(p.label){case 0:switch(s=!1,n){case en.Commands.Config:return[3,1];case en.Commands.Consent:return[3,2];case en.Commands.Custom:return[3,3];case en.Commands.Destination:return[3,4];case en.Commands.Globals:return[3,11];case en.Commands.On:return[3,12];case en.Commands.Ready:return[3,15];case en.Commands.Run:return[3,16];case en.Commands.Session:return[3,18];case en.Commands.Shutdown:return[3,19];case en.Commands.User:return[3,21]}return[3,22];case 1:return l(t)&&(i(e.config,t,{shallow:!1}),a=t,s=!0),[3,22];case 2:return l(t)&&(c=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),d=c.update,a=d,s=!0),[3,22];case 3:return l(t)&&(e.custom=i(e.custom,t),a=t,s=!0),[3,22];case 4:return l(t)?"code"in t&&l(t.code)?[4,X(e,t,r)]:[3,6]:[3,10];case 5:return v=o=p.sent(),[3,9];case 6:return(_=u(t.push))?[4,X(e,{code:t},r)]:[3,8];case 7:_=o=p.sent(),p.label=8;case 8:v=_,p.label=9;case 9:p.label=10;case 10:return[3,22];case 11:return l(t)&&(e.globals=i(e.globals,t),a=t,s=!0),[3,22];case 12:return f(t)?[4,V(e,t,r)]:[3,14];case 13:p.sent(),p.label=14;case 14:return[3,22];case 15:return s=!0,[3,22];case 16:return[4,ie(e,t)];case 17:return o=p.sent(),s=!0,[3,22];case 18:return s=!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,re(g.sources,"source",e)];case 1:return n.sent(),[4,re(g.destinations,"destination",e)];case 2:return n.sent(),[4,re(g.transformers,"transformer",e)];case 3:return n.sent(),[4,re(g.stores,"store",e)];case 4:return n.sent(),[2]}})})())];case 20:return p.sent(),[3,22];case 21:l(t)&&(i(e.user,t,{shallow:!1}),a=t,s=!0),p.label=22;case 22:return s?[4,z(e,n,void 0,a)]:[3,25];case 23:return p.sent(),[4,Y(e)];case 24:o=p.sent(),p.label=25;case 25:return[2,o||Z({ok:!0})]}var g})})()},ae=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,v=n.globals,_=void 0===v?e.globals:v,p=n.custom,g=void 0===p?{}:p,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,S=n.trigger,x=void 0===S?"":S,C=n.entity,A=void 0===C?r:C,E=n.action,P=void 0===E?o:E,q=n.timing,D=void 0===q?0:q,I=n.source;return{name:c,data:l,context:d,globals:_,custom:g,user:b,nested:m,consent:j,id:O,trigger:x,entity:A,action:P,timestamp:i,timing:D,source:void 0===I?{type:"collector",schema:"4"}:I}},ie=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,Y(e)];case 1:return[2,t.sent()]}})})()},se=function(e){return _async_to_generator(function(){var n,t,r,o,s,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:return r=i({globalsStatic:{},sessionStatic:{},run:!0},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=b(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:{}},timing:Date.now(),user:e.user||{},sources:{},pending:{destinations:{}},push:void 0,command:void 0}).push=function(e,n){return S(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,w(function(){return _async_to_generator(function(){var o,i,s,c,u,l,f,d,_,p,g,y,b,h,m,w,j,k,S,x,C;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,p=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,O(p,u,e)]:[3,2];case 1:if((b=A.sent()).ignore)return[2,Z({ok:!0})];if(u.consent&&!v(u.consent,e.consent,b.event.consent))return[2,Z({ok:!0})];p=b.event,A.label=2;case 2:return(null==l?void 0:l.length)&&e.transformers&&Object.keys(e.transformers).length>0?[4,nn(e,e.transformers,l,p,y,_,i?"source.".concat(i,".next"):void 0)]:[3,6];case 3:return null===(h=A.sent()).event?[2,Z({ok:!0})]:h.stopped?[2,(h.respond&&(_=h.respond),Z({ok:!0}))]:(h.respond&&(_=h.respond),Array.isArray(h.event)?[4,Promise.all(h.event.map(function(t){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){return r=n(t),o=ae(e,r),[2,Y(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}),(j=e.status.sources[i]).count+=h.event.length,j.lastAt=Date.now(),j.duration+=Date.now()-o),[2,null!==(m=w[0])&&void 0!==m?m:Z({ok:!0})];case 5:p=h.event,A.label=6;case 6:return k=n(p),S=ae(e,k),[4,Y(e,S,{id:i,ingest:y,respond:_},g)];case 7:return x=A.sent(),i&&(e.status.sources[i]||(e.status.sources[i]={count:0,duration:0}),(C=e.status.sources[i]).count++,C.lastAt=Date.now(),C.duration+=Date.now()-o),[2,x]}})})()},function(){return Z({ok:!1})})()];case 1:return[2,o.sent()]}})})()},"Push",e.hooks,e.logger)}(u,function(e){return _object_spread({timing:Math.round((Date.now()-u.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0-next-1778668930820"}},e)}),u.command=function(e,n){return S(function(t,r,o){return _async_to_generator(function(){return _ts_generator(this,function(a){switch(a.label){case 0:return[4,w(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 Z({ok:!1})})()];case 1:return[2,a.sent()]}})})()},"Command",e.hooks,e.logger)}(u,oe),l=e.stores||{},[4,function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,d,v,_,p,g,y,b,h,m,w,j=arguments;return _ts_generator(this,function(k){switch(k.label){case 0:n=j.length>1&&void 0!==j[1]?j[1]:{},t={},r=!0,o=!1,a=void 0,k.label=1;case 1:k.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),k.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,v=void 0===d?{}:d,_=l.env,p=void 0===_?{}:_,g=e.logger.scope("store").scope(u),[4,f({collector:e,logger:g,id:u,config:v,env:p})]);case 3:y=k.sent(),b=y.get,h=y.set,m=y.delete,y.get=S(b,"StoreGet",e.hooks,e.logger),y.set=S(h,"StoreSet",e.hooks,e.logger),y.delete=S(m,"StoreDelete",e.hooks,e.logger),t[u]=y,k.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return w=k.sent(),o=!0,a=w,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:return[2,t]}})}).apply(this,arguments)}(u,l)];case 1:return u.stores=d.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,v=!1,_=void 0,p=0,g=[t.transformers,t.destinations,t.sources];p<g.length;p++){var y=g[p];if(y)try{for(var b,h=Object.values(y)[Symbol.iterator]();!(d=(b=h.next()).done);d=!0){m(b.value.env)}}catch(e){v=!0,_=e}finally{try{d||null==h.return||h.return()}finally{if(v)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||(f=new Map,u.stores.__cache={type:"memory",config:{},get:function(e){var n=f.get(e);if(n){if(!(n.expires&&Date.now()>n.expires))return n.value;f.delete(e)}},set:function(e,n,t){f.set(e,{value:n,expires:t?Date.now()+t:void 0})},delete:function(e){f.delete(e)}}),[4,ne(u,e.destinations||{})];case 2:return u.destinations=d.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,v,_,p,g,y,b,h,m,w,j,k,S,x;return _ts_generator(this,function(C){switch(C.label){case 0:return n=_sliced_to_array(u.value,2),r=n[0],o=n[1],f=o.code,d=o.env,v=void 0===d?{}:d,_=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(!Ze.has(i))return{ok:!1,code:"UNKNOWN_KEY",key:i,reason:'Unknown key "'.concat(i,'". Allowed: ').concat(_to_consumable_array(Ze).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}}(o),_.ok?(p=I(o,"before"),g=p.config,y=I(_object_spread_props(_object_spread({},o),{config:g}),"next"),b=y.config,h=Object.keys(v).length>0?_object_spread_props(_object_spread({},b),{env:v}):b,m=o.cache,w=m?_object_spread_props(_object_spread({},h),{cache:m}):h,j=e.logger.scope("transformer").scope(r),k={collector:e,logger:j,id:r,ingest:a(r),config:w,env:v},S=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 v=_sliced_to_array(f.value,2),_=v[0],p=v[1];if("object"==(void 0===p?"undefined":_type_of(p))&&null!==p)try{for(var g,y=Object.entries(p)[Symbol.iterator]();!(a=(g=y.next()).done);a=!0){var b=_sliced_to_array(g.value,2),h=b[0],m=b[1];if("object"==(void 0===m?"undefined":_type_of(m))&&null!==m){var w=m;void 0!==w.data&&t.push("mapping[".concat(_,"][").concat(h,"].data")),void 0!==w.silent&&t.push("mapping[".concat(_,"][").concat(h,"].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,O(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,S(k)]):(e.logger.warn("Transformer ".concat(r," invalid (").concat(_.code,"): ").concat(_.reason,". Skipping.")),[2,"continue"]);case 1:return x=C.sent(),void 0!==o.before&&void 0===(null===(c=x.config)||void 0===c?void 0:c.before)&&(x.config=_object_spread_props(_object_spread({},null!==(i=x.config)&&void 0!==i?i:{}),{before:o.before})),void 0!==o.next&&void 0===(null===(l=x.config)||void 0===l?void 0:l.next)&&(x.config=_object_spread_props(_object_spread({},null!==(s=x.config)&&void 0!==s?s:{}),{next:o.next})),t[r]=x,[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=d.sent(),u)]}})})()},ce=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,se(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,Z({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,B(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})]}})})()},ue=Object.defineProperty,le=Object.getOwnPropertyDescriptor,fe=Object.getOwnPropertyNames,de=Object.prototype.hasOwnProperty,ve=function(e,n){for(var t in n)ue(e,t,{get:n[t],enumerable:!0})},_e={};ve(_e,{SourceUsercentrics:function(){return be},createMockElbFn:function(){return De},createTrigger:function(){return rn},default:function(){return sn},fullConsent:function(){return he},fullConsentCustomMapped:function(){return Ee},fullConsentMapped:function(){return xe},fullConsentUpperCase:function(){return ke},implicitConsent:function(){return je},minimalConsent:function(){return we},minimalConsentMapped:function(){return Ae},nonConsentEvent:function(){return Se},noopLogger:function(){return Ie},partialConsent:function(){return me},partialConsentMapped:function(){return Ce},serviceLevelConsent:function(){return Oe},serviceLevelMapped:function(){return Pe},sourceUsercentrics:function(){return an},step:function(){return Me},trigger:function(){return on}});var pe=["action","event","type","ucCategory"],ge="UC_UI_CMP_EVENT",ye=new Set(["ACCEPT_ALL","DENY_ALL","SAVE"]),be={},he={event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0},"Google Analytics":!0,"Google Ads Remarketing":!0},me={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:!0,marketing:!1},"Google Analytics":!0,"Google Ads Remarketing":!1},we={event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},je={event:"consent_status",type:"implicit",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},ke={event:"consent_status",type:"EXPLICIT",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},Oe={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:"partial",marketing:"partial"},"Google Analytics":!0,"Google Ads Remarketing":!1,Hotjar:!0},Se={event:"other_event",type:"explicit"},xe={essential:!0,functional:!0,marketing:!0},Ce={essential:!0,functional:!0,marketing:!1},Ae={essential:!0,functional:!1,marketing:!1},Ee={functional:!0,marketing:!0},Pe={essential:!0,google_analytics:!0,google_ads_remarketing:!1,hotjar:!0},qe=function(){},De=function(){return function(){return Promise.resolve({ok:!0})}},Ie={error:qe,warn:qe,info:qe,debug:qe,throw:function(e){throw"string"==typeof e?new Error(e):e},json:qe,scope:function(){return Ie}},Me={};ve(Me,{categoryMapOverride:function(){return Ue},customEventName:function(){return Re},fullConsent:function(){return Ne},minimalConsent:function(){return Te}});var Ne={title:"Full consent",description:"A Usercentrics onAcceptAllServices event emits a walker consent command with essential, functional, and marketing granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},Te={title:"Minimal consent",description:"A Usercentrics onDenyAllServices event emits a walker consent command with only essential granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1}},out:[["elb","walker consent",{essential:!0,functional:!1,marketing:!1}]]},Ue={title:"Category map override",description:"Custom categoryMap remaps essential to functional and functional to analytics",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!1}},mapping:{categoryMap:{essential:"functional",functional:"analytics"}},out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!1}]]},Re={title:"Custom event name",description:"Using UC_SDK_EVENT instead of ucEvent for Usercentrics SDK v2",trigger:{type:"consent",options:{eventName:"UC_SDK_EVENT"}},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!0}},mapping:{eventName:"UC_SDK_EVENT"},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},Ge=Object.defineProperty;!function(e,n){for(var t in n)Ge(e,t,{get:n[t],enumerable:!0})}({},{Level:function(){return He}});var Le,He=((Le=He||{})[Le.ERROR=0]="ERROR",Le[Le.WARN=1]="WARN",Le[Le.INFO=2]="INFO",Le[Le.DEBUG=3]="DEBUG",Le),Be={merge:!0,shallow:!0,extend:!0};function Ke(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]=Ke(e[o],n));return r}if("[object Array]"===t){var a=[];return n.set(e,a),e.forEach(function(e){a.push(Ke(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 Ve(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=[],l=!0,f=!1,d=void 0;try{for(var v,_=r[Symbol.iterator]();!(l=(v=_.next()).done);l=!0){var p=Ve(v.value,i,n);u.push(p)}}catch(e){f=!0,d=e}finally{try{l||null==_.return||_.return()}finally{if(f)throw d}}return u}if(void 0===(r=_instanceof(r,Object)?r[a]:void 0))break}return c(r)?r:n}var We={data:function(e){return e.data},globals:function(e){return e.globals},context:function(e){return e.context},user:function(e){return e.user},source:function(e){return e.source},event:function(e){return{entity:e.entity,action:e.action,id:e.id,timestamp:e.timestamp,name:e.name,trigger:e.trigger,timing:e.timing}}},Fe=function(e,n,t,r){var o="".concat(He[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 ze(e){var n=e.level,t=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=n){var i=y(r,a);t?t(e,i.message,i.context,o,Fe):Fe(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=y(e,n);throw t?t(0,r.message,r.context,o,Fe):Fe(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 ze({level:n,handler:t,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function Je(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(Je)||l(e)&&Object.values(e).every(Je)}function Xe(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,_,p,g,y,b,m,j,O,S,x,C,A,E,P,q,D;return _ts_generator(this,function(I){switch(I.label){case 0:return[4,n];case 1:return(o=I.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,p=a.map,g=a.set,y=a.validate,b=a.value,m=_object_spread_props(_object_spread({},t),{mapping:r}),(j=i)?[4,w(i)(e,m)]:[3,3]):[2]);case 2:j=!I.sent(),I.label=3;case 3:return j?[2]:u&&!v(u,m.consent)?[2,b]:(O=c(b)?b:e,l?[4,w(l)(e,m)]:[3,5]);case 4:O=I.sent(),I.label=5;case 5:return d&&(O=Ve(e,d,b)),_?(S=_sliced_to_array(_,2),x=S[0],C=S[1],"this"!==x?[3,6]:(E=[e],[3,8])):[3,11];case 6:return[4,k(e,x,m)];case 7:E=I.sent(),I.label=8;case 8:return s(A=E)?[4,Promise.all(A.map(function(e){return k(e,C,m)}))]:[3,10];case 9:O=I.sent().filter(c),I.label=10;case 10:return[3,17];case 11:return p?[4,Object.entries(p).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,m)];case 2:return r=i.sent(),[2,(c(r)&&(t[o]=r),t)]}})})()},Promise.resolve({}))]:[3,13];case 12:return O=I.sent(),[3,16];case 13:return(P=g)?[4,Promise.all(g.map(function(n){return Xe(e,n,m)}))]:[3,15];case 14:P=O=I.sent(),I.label=15;case 15:I.label=16;case 16:I.label=17;case 17:return(q=y)?[4,w(y)(O,m)]:[3,19];case 18:q=!I.sent(),I.label=19;case 19:return q&&(O=void 0),D=h(O),[2,c(D)?D:h(b)]}})})()},Promise.resolve(void 0))]})})()}function Ye(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var n=e.and.map(Ye);return function(e){return n.every(function(n){return n(e)})}}if("or"in e){var t=e.or.map(Ye);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=Ve(e,n),r=a(t);return o?!r:r}}(e)}function $e(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 $e({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=$e(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:Ye(c.match),next:$e(c.next)}:$e(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:$e(e)};var t=e;return{match:t.match?Ye(t.match):function(){return!0},next:null!==(n=$e(t))&&void 0!==n?n:{type:"chain",value:[]}}});return c.match?{type:"gate",match:Ye(c.match),next:{type:"case",routes:u}}:{type:"case",routes:u}}return c.match?{type:"gate",match:Ye(c.match)}:void 0}}function Qe(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 Qe(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=Qe(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 v,_=e.routes[Symbol.iterator]();!(l=(v=_.next()).done);l=!0){var p=v.value;if(p.match(n))return Qe(p.next,n)}}catch(e){f=!0,d=e}finally{try{l||null==_.return||_.return()}finally{if(f)throw d}}}}var Ze=new Set(_to_consumable_array(["code","package","before","next","cache","mapping"]).concat(["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"])),en={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 nn(e,n,t,r,o,i,s){return _async_to_generator(function(){var c,u,l,f,d,v,_,p,g,y;return _ts_generator(this,function(b){switch(b.label){case 0:s&&(null==o?void 0:o._meta)&&(o._meta.chainPath=s),c=r,u=i,l=!0,f=!1,d=void 0,b.label=1;case 1:b.trys.push([1,6,7,8]),v=function(){var r,i,l,f,d,v,_,g,y,b,h,m,j,k,O,S,P,I,R,G,L,H,B,K,V,W,F,z,J,X,Y,$,Q,Z,ee,ne,te,re,oe,ae,ie;return _ts_generator(this,function(se){switch(se.label){case 0:return r=p.value,(_=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:u})}]:(o&&o._meta&&(o._meta.hops++,o._meta.path.push(r)),[4,w(N)(e,_,r)]):(e.logger.warn("Transformer not found: ".concat(r)),[2,"continue"]);case 1:if(!se.sent())return[2,{v:(e.logger.error("Transformer init failed: ".concat(r)),{event:null,respond:u})}];if(s&&void 0!==(null===(l=_.config)||void 0===l||null===(i=l.chainMocks)||void 0===i?void 0:i[s]))return g=_.config.chainMocks[s],e.logger.scope("transformer:".concat(_.type||"unknown")).debug("chainMock",{chain:s}),c=g,[2,"continue"];if(void 0!==(null===(f=_.config)||void 0===f?void 0:f.mock))return e.logger.scope("transformer:".concat(_.type||"unknown")).debug("mock"),c=_.config.mock,[2,"continue"];if(null===(d=_.config)||void 0===d?void 0:d.disabled)return[2,"continue"];if(y=null===(v=_.config)||void 0===v?void 0:v.cache,b=y?C(y):void 0,h=b?q(b,e):void 0,m=void 0,b&&h){if(j=x(o,c),"HIT"===(null==(k=A(b,h,j))?void 0:k.status)&&k.value)return c=k.value,b.stop?[2,{v:{event:c,respond:u,stopped:!0}}]:[2,"continue"];"MISS"===(null==k?void 0:k.status)&&(m={key:k.key,ttl:k.rule.ttl})}return(O=_.config.before)&&(S=M(U(O,x(o,c)),D(n))).length>0?[4,nn(e,n,S,c,o,u,s)]:[3,3];case 2:if(null===(R=se.sent()).event)return[2,{v:{event:null,respond:null!==(P=R.respond)&&void 0!==P?P:u}}];if(R.stopped)return[2,{v:{event:Array.isArray(R.event)?R.event[0]:R.event,respond:null!==(I=R.respond)&&void 0!==I?I:u,stopped:!0}}];R.respond&&(u=R.respond),c=Array.isArray(R.event)?R.event[0]:R.event,se.label=3;case 3:return[4,w(T,function(n){return e.logger.scope("transformer:".concat(_.type||"unknown")).error("Push failed",{error:n}),!1})(e,_,r,c,o,u)];case 4:return!1===(G=se.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(G)?(L=t.slice(t.indexOf(r)+1),[4,Promise.all(G.map(function(t){return _async_to_generator(function(){var r,i,l,f;return _ts_generator(this,function(d){return r=t.event||c,i=o?_object_spread_props(_object_spread({},o),{_meta:_object_spread_props(_object_spread({},o._meta),{path:_to_consumable_array(o._meta.path)})}):a("unknown"),t.next?(l=U(t.next,x(i,r)))&&(f=M(l,D(n))).length>0?[2,nn(e,n,f,r,i,u,s)]:[2,{event:r,respond:u}]:[2,L.length>0?nn(e,n,L,r,i,u,s):{event:r,respond:u}]})})()}))]):[3,6];case 5:H=se.sent(),B=u,K=[],V=!0,W=!1,F=void 0;try{for(z=H.flat()[Symbol.iterator]();!(V=(J=z.next()).done);V=!0)if(null!==(X=J.value))if(X&&"object"==(void 0===X?"undefined":_type_of(X))&&"event"in X){if(($=X).respond&&(B=$.respond),null===$.event)continue;Array.isArray($.event)?(Y=K).push.apply(Y,_to_consumable_array($.event)):K.push($.event)}else K.push(X)}catch(e){W=!0,F=e}finally{try{V||null==z.return||z.return()}finally{if(W)throw F}}return[2,{v:0===K.length?{event:null,respond:B}:1===K.length?{event:K[0],respond:B}:{event:K,respond:B}}];case 6:if(G&&"object"==(void 0===G?"undefined":_type_of(G))){if(Q=G.event,Z=G.respond,ee=G.next,Z&&(u=Z),ee)return(ne=U(ee,x(o,c)))?[2,{v:(te=M(ne,D(n))).length>0?nn(e,n,te,Q||c,o,u,s):(e.logger.warn("Branch target not found: ".concat(JSON.stringify(ee))),{event:null,respond:u})}]:(Q&&(c=Q),[2,"continue"]);Q&&(c=Q)}return m&&h&&E(h,m.key,c,m.ttl),re=_.config.next?$e(_.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),(!G||"object"==(void 0===G?"undefined":_type_of(G))&&!G.next)&&re&&oe?(ae=Qe(re,x(o,c)))&&(ie=M(ae,D(n))).length>0?[2,{v:nn(e,n,ie,c,o,u,s)}]:[2,{v:{event:c,respond:u}}]:[2]}})},_=t[Symbol.iterator](),b.label=2;case 2:return(l=(p=_.next()).done)?[3,5]:[5,_ts_values(v())];case 3:if("object"===_type_of(g=b.sent()))return[2,g.v];b.label=4;case 4:return l=!0,[3,2];case 5:return[3,8];case 6:return y=b.sent(),f=!0,d=y,[3,8];case 7:try{l||null==_.return||_.return()}finally{if(f)throw d}return[7];case 8:return[2,{event:c,respond:u}]}})})()}var tn,rn=function(e){return _async_to_generator(function(){var n,t;return _ts_generator(this,function(r){return t=function(t,r){return function(t){return _async_to_generator(function(){var o,a,i;return _ts_generator(this,function(s){switch(s.label){case 0:return n?[3,2]:[4,ce(_object_spread_props(_object_spread({},e),{run:null===(o=e.run)||void 0===o||o}))];case 1:a=s.sent(),n={collector:a.collector,elb:a.elb},s.label=2;case 2:return i=(null==r?void 0:r.eventName)||"ucEvent",window.dispatchEvent(new CustomEvent(i,{detail:t})),[2]}})})()}},[2,{get flow(){return n},trigger:t}]})})()},on=function(e,n){if(e&&"object"===(void 0===e?"undefined":_type_of(e)))return function(){n.window.dispatchEvent(new CustomEvent("ucEvent",{detail:e}))}},an=function(e){return _async_to_generator(function(){var n,t,a,i,s,c,u,l,f,d,v,_,p,g,y,b,h,m,w,j,k,O,S,x,C;return _ts_generator(this,function(A){switch(A.label){case 0:return _=e.config,p=e.env,g=p.elb,y=p.logger,b=null!==(n=p.window)&&void 0!==n?n:void 0!==globalThis.window?globalThis.window:void 0,h={eventName:null!==(t=null==_||null===(u=_.settings)||void 0===u?void 0:u.eventName)&&void 0!==t?t:"ucEvent",categoryMap:null!==(a=null==_||null===(l=_.settings)||void 0===l?void 0:l.categoryMap)&&void 0!==a?a:{},explicitOnly:null===(i=null==_||null===(f=_.settings)||void 0===f?void 0:f.explicitOnly)||void 0===i||i,apiVersion:null!==(s=null==_||null===(d=_.settings)||void 0===d?void 0:d.apiVersion)&&void 0!==s?s:"auto",v3EventName:null!==(c=null==_||null===(v=_.settings)||void 0===v?void 0:v.v3EventName)&&void 0!==c?c:"UC_UI_CMP_EVENT"},m={settings:h},w=[],b?(k={window:b,elb:g,settings:h,logger:y},"v2"!==(O=null!==(j=h.apiVersion)&&void 0!==j?j:"auto")?[3,1]:(w.push(r(k)),[3,8])):[3,8];case 1:return"v3"!==O?[3,3]:(S=w.push,[4,o(k)]);case 2:return S.apply(w,[A.sent()]),[3,8];case 3:return b.__ucCmp?(x=w.push,[4,o(k)]):[3,5];case 4:return x.apply(w,[A.sent()]),[3,8];case 5:return b.UC_UI?(w.push(r(k)),[3,8]):[3,6];case 6:return w.push(r(k)),C=w.push,[4,o(k)];case 7:C.apply(w,[A.sent()]),A.label=8;case 8:return[2,{type:"usercentrics",config:m,push:g,destroy:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return w.forEach(function(e){return e()}),[2]})})()}}]}})})()},sn=an;return tn=_e,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;de.call(e,o)||o===t||ue(e,o,{get:function(){return n[o]},enumerable:!(r=le(n,o))||r.enumerable})},u=fe(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}(ue({},"__esModule",{value:!0}),tn)}();
|
|
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 SourceUsercentrics=function(){var e=function(e,n,t){e[n]=(void 0===e[n]||Boolean(e[n]))&&t},n=function(n,t){var r,o={};return n.ucCategory&&(r=n.ucCategory,Object.values(r).every(function(e){return"boolean"==typeof e}))?Object.entries(n.ucCategory).forEach(function(n){var r,a,i=_sliced_to_array(n,2),s=i[0],c=i[1];if("boolean"==typeof c){var u=null!==(r=null===(a=t.categoryMap)||void 0===a?void 0:a[s])&&void 0!==r?r:s;e(o,u,c)}}):(n.ucCategory&&Object.entries(n.ucCategory).forEach(function(n){var r=_sliced_to_array(n,2),a=r[0],i=r[1];if("boolean"==typeof i){var s,c,u=null!==(s=null===(c=t.categoryMap)||void 0===c?void 0:c[a])&&void 0!==s?s:a;e(o,u,i)}}),Object.entries(n).forEach(function(n){var t=_sliced_to_array(n,2),r=t[0],a=t[1];if(!De.includes(r)&&"boolean"==typeof a){var i=r.toLowerCase().replace(/ /g,"_");e(o,i,a)}})),o},t=function(e){var n={};return e.forEach(function(e){var t,r,o=e.categorySlug,a=null!==(t=null===(r=e.consent)||void 0===r?void 0:r.status)&&void 0!==t&&t;n[o]=(void 0===n[o]||n[o])&&a}),n},r=function(e){var r,o,a=e.window,i=e.elb,s=e.settings,c=e.logger,u=null!==(r=s.eventName)&&void 0!==r?r:"ucEvent",l=function(e){var t;if(c.debug("event received",e),"consent_status"===e.event&&(!s.explicitOnly||"explicit"===(null===(t=e.type)||void 0===t?void 0:t.toLowerCase()))){var r=n(e,s);Object.keys(r).length>0&&i("walker consent",r)}},f=function(e){var n=e;n.detail&&l(n.detail)};a.addEventListener(u,f);var d=a.UC_UI;if((null==d||null===(o=d.isInitialized)||void 0===o?void 0:o.call(d))&&d.getServicesBaseInfo){var p=d.getServicesBaseInfo();p.length>0&&l(function(e){return{event:"consent_status",type:"implicit",ucCategory:t(e)}}(p))}return function(){a.removeEventListener(u,f)}},o=function(e){return _async_to_generator(function(){var t,r,o,a,i,s,c,u,l,f;return _ts_generator(this,function(d){switch(d.label){case 0:if(r=e.window,o=e.elb,a=e.settings,i=e.logger,s=null!==(t=a.v3EventName)&&void 0!==t?t:Te,c=function(e){return _async_to_generator(function(){var t,r,s;return _ts_generator(this,function(c){switch(c.label){case 0:return[4,e.getConsentDetails()];case 1:return t=c.sent(),r=function(e){var n={};return Object.entries(e.categories).forEach(function(e){var t=_sliced_to_array(e,2),r=t[0],o=t[1];n[r]="ALL_ACCEPTED"===o.state}),{event:"consent_status",type:"EXPLICIT"===e.consent.type?"explicit":"implicit",ucCategory:n}}(t),i.debug("event received",r),a.explicitOnly&&"explicit"!==r.type?[2]:(s=n(r,a),Object.keys(s).length>0&&o("walker consent",s),[2])}})})()},u=function(e){var n=r.__ucCmp;if(n){var t=e.detail;t&&"CMP"===t.source&&t.type&&Ne.has(t.type)&&c(n).catch(function(){})}},r.addEventListener(s,u),!(l=r.__ucCmp))return[3,6];d.label=1;case 1:return d.trys.push([1,5,,6]),[4,l.isInitialized()];case 2:return d.sent()?[4,c(l)]:[3,4];case 3:d.sent(),d.label=4;case 4:return[3,6];case 5:return f=d.sent(),i.warn("v3 static consent read failed",f),[3,6];case 6:return[2,function(){r.removeEventListener(s,u)}]}})})()},a=function(e,n){if("collector"===e)return"collector";if(!n)throw new Error("stepId(".concat(e,") requires an id"));return"".concat(e,".").concat(n)},i=function(e,n){var t=e.destinations[n];if(!t)throw new Error("Destination not found: ".concat(n));return t},s=function(e,n){var t=e.transformers[n];if(!t)throw new Error("Transformer not found: ".concat(n));return t},c=function(e,n){var t=e.sources[n];if(!t)throw new Error("Source not found: ".concat(n));return t},u=function(e,n){var t=e.stores[n];if(!t)throw new Error("Store not found: ".concat(n));return t},l=function(e){return{_meta:{hops:0,path:[e]}}},f=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({},un,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)},d=function(e){return Array.isArray(e)},p=function(e){return void 0!==e},_=function(e){return"function"==typeof e},v=function(e){return"object"==(void 0===e?"undefined":_type_of(e))&&null!==e&&!d(e)&&"[object Object]"===Object.prototype.toString.call(e)},g=function(e){return"string"==typeof e},y=function(e,n,t){if(!v(e))return e;for(var r=ln(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},h=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},b=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},m=function(e){return{message:e.message,name:e.name,stack:e.stack,cause:e.cause}},w=function(e,n){var t,r={};return _instanceof(e,Error)?(t=e.message,r.error=m(e)):t=e,void 0!==n&&(_instanceof(n,Error)?r.error=m(n):"object"==(void 0===n?"undefined":_type_of(n))&&null!==n?"error"in(r=_object_spread({},r,n))&&_instanceof(r.error,Error)&&(r.error=m(r.error)):r.value=n),{message:t,context:r}},k=function(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return _n({level:void 0!==n.level?(e=n.level,"string"==typeof e?cn[e]:e):0,handler:n.handler,jsonHandler:n.jsonHandler,scope:[]})},j=function(e){return vn(e)?e:void 0},x=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()}}},O=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]}})})()}},S=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,f,p;return _ts_generator(this,function(_){return o=_sliced_to_array((e.name||"").split(" "),2),a=o[0],i=o[1],n&&a&&i?(c="",l=i,f=function(n){if(n)return(d(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:v(e)&&e.consent||t.consent};return Boolean(n.condition(e,r))})},n[u=a]||(u="*"),[2,((p=n[u])&&(p[l]||(l="*"),s=f(p[l])),s||(u="*",l="*",s=f(null===(r=n[u])||void 0===r?void 0:r[l])),s&&(c="".concat(u," ").concat(l)),{eventMapping:s,mappingKey:c})]):[2,{}]})})()},C=function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,l,f,_,g,y,h,b,m=arguments;return _ts_generator(this,function(w){switch(w.label){case 0:if(n=m.length>1&&void 0!==m[1]?m[1]:{},t=m.length>2&&void 0!==m[2]?m[2]:{},!p(e))return[2];if(a=v(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:v(e)?e:{},!t.collector)throw new Error("getMappingValue: context.collector is required");s={event:i,mapping:n,collector:t.collector,logger:t.collector.logger,consent:a},c=d(n)?n:[n],u=!0,l=!1,f=void 0,w.label=1;case 1:w.trys.push([1,6,7,8]),_=c[Symbol.iterator](),w.label=2;case 2:return(u=(g=_.next()).done)?[3,5]:(y=g.value,[4,O(yn,function(e){if(_instanceof(e,gn))throw e;t.collector&&t.collector.status.failed++,s.logger.error("mapping processing failed",{event:i,error:e})})(e,y,_object_spread_props(_object_spread({},s),{mapping:y}))]);case 3:if(h=w.sent(),p(h))return[2,h];w.label=4;case 4:return u=!0,[3,2];case 5:return[3,8];case 6:return b=w.sent(),l=!0,f=b,[3,8];case 7:try{u||null==_.return||_.return()}finally{if(l)throw f}return[7];case 8:return[2]}})}).apply(this,arguments)},A=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,d,p,_;return _ts_generator(this,function(g){switch(g.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,C(e,a,{collector:t,event:e})];case 1:return n=r.sent(),e=y(e,o,n),[2]}})})()}))]:[3,2];case 1:g.sent(),g.label=2;case 2:return[4,S(e,n.mapping,t)];case 3:return o=g.sent(),a=o.eventMapping,i=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,C(e,a,{collector:t,event:e})];case 1:return n=r.sent(),e=y(e,o,n),[2]}})})()}))]:[3,5];case 4:g.sent(),g.label=5;case 5:return(c=n.data)?[4,C(e,n.data,{collector:t,event:e})]:[3,7];case 6:c=g.sent(),g.label=7;case 7:return s=c,u=Boolean(null==a?void 0:a.silent),a?a.ignore?[2,{event:e,data:s,mapping:a,mappingKey:i,ignore:!0,silent:u}]:(a.name&&(e.name=a.name),a.data?(d=a.data)?[4,C(e,a.data,{collector:t,event:e})]:[3,9]:[3,10]):[3,10];case 8:d=g.sent(),g.label=9;case 9:l=d,s=v(s)&&v(l)?f(s,l):l,g.label=10;case 10:return(p=null!==(r=null==a?void 0:a.include)&&void 0!==r?r:n.include)&&p.length>0&&(_=function(e,n){var t={},r=n.includes("all")?Object.keys(dn):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,l=dn[u];if(l){var f=l(e),d=!0,p=!1,_=void 0;if(v(f))try{for(var g,y=Object.entries(f)[Symbol.iterator]();!(d=(g=y.next()).done);d=!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){p=!0,_=e}finally{try{d||null==y.return||y.return()}finally{if(p)throw _}}}}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return t}(e,p),Object.keys(_).length>0&&(s=v(s)?f(_,s):null!=s?s:_)),[2,{event:e,data:s,mapping:a,mappingKey:i,ignore:!1,silent:u}]}})})()},E=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}},q=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=bn(e))&&void 0!==n?n:{type:"chain",value:[]}};var r=e;return{match:r.match?hn(r.match):function(){return!0},next:null!==(t=bn(r))&&void 0!==t?t:{type:"chain",value:[]}}})},P=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=mn.get(e);r?n=r:(n=bn(e))&&mn.set(e,n)}else n=bn(e);if(!n)return[];var o=wn(n,t);return void 0===o?[]:Array.isArray(o)?o:[o]},I=function(e,n){var t={ingest:null!=e?e:{}};return void 0!==n&&(t.event=n),t},M=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?hn(e.match):function(){return!0},key:e.key,ttl:e.ttl,update:e.update}})}},D=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=fn(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}]}})})()},T=function(e,n,t,r){e.set(n,t,1e3*r)},N=function(e,n,t,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,d,p,_;return _ts_generator(this,function(v){switch(v.label){case 0:if(!n)return[2,e];o=e,a=!0,i=!1,s=void 0,v.label=1;case 1:v.trys.push([1,6,7,8]),c=Object.entries(n)[Symbol.iterator](),v.label=2;case 2:return(a=(u=c.next()).done)?[3,5]:(l=_sliced_to_array(u.value,2),f=l[0],d=l[1],p=[o,f],[4,C(t,d,{collector:r})]);case 3:o=y.apply(void 0,p.concat([v.sent()])),v.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return _=v.sent(),i=!0,s=_,[3,8];case 7:try{a||null==c.return||c.return()}finally{if(i)throw s}return[7];case 8:return[2,o]}})})()},R=function(e,n){return e.storeId&&n.stores[e.storeId]?n.stores[e.storeId]:n.stores.__cache},U=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},G=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}},L=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},z=function(e,n,t){return _async_to_generator(function(){var r,o,a,i;return _ts_generator(this,function(s){switch(s.label){case 0:return!n.init||n.config.init?[3,2]:(r=n.type||"unknown",o=e.logger.scope("transformer:".concat(r)),a={collector:e,logger:o,id:t,ingest:l(t),config:n.config,env:F(n.config.env)},o.debug("init"),[4,E(n.init,"TransformerInit",e.hooks,e.logger)(a)]);case 1:if(!1===(i=s.sent()))return[2,!1];n.config=_object_spread_props(_object_spread({},i||n.config),{env:(null==i?void 0:i.env)||n.config.env,init:!0}),o.debug("init done"),s.label=2;case 2:return[2,!0]}})})()},B=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({},F(n.config.env),a?{respond:a}:{})},s.debug("push",{event:r.name}),[4,E(n.push,"TransformerPush",e.hooks,e.logger)(r,c)];case 1:return u=l.sent(),[2,(s.debug("push done"),u)]}})})()},H=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)})}):l(n)},F=function(e){return e&&v(e)?e:{}},K=function(e){return"string"==typeof e||!(!Array.isArray(e)||!e.every(function(e){return"string"==typeof e}))},V=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,O(n.on,function(n){if(_instanceof(n,gn))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]}})})()},W=function(e){var n;return Boolean(e.config.init)&&!(null===(n=e.config.require)||void 0===n?void 0:n.length)},Y=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,u,f,d,p,_,v,g,y,h,b,m,w,k,j,x,S,A,E,q;return _ts_generator(this,function(G){switch(G.label){case 0:return o=t.code,a=t.config,i=void 0===a?{}:a,s=t.env,c=void 0===s?{}:s,u=t.primary,f=t.next,d=t.before,p=t.cache,v=(_=p)?M(_object_spread_props(_object_spread({},_),{stop:null===(r=_.stop)||void 0===r||r})):void 0,g=K(f)?L(f,U(e.transformers)):void 0,y=K(d)?L(d,U(e.transformers)):void 0,h=c.push,b=null!=h?h:e.push,m=Boolean(h),w=function(t,r,o){return _async_to_generator(function(){var a,s,c,u,l,p,_,h,w,k,j,x,S,C,A,E,q,M,G,z,B,F,K,V;return _ts_generator(this,function(W){switch(W.label){case 0:return s=null!=y?y:void 0!==d?function(){var n=P(d,I(o.ingest));return 0===n.length?[]:L(1===n.length?n[0]:n,U(e.transformers))}():[],c=[t],s.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,Cn(e,e.transformers,s,t,o.ingest,o.respond,"source.".concat(n,".before"))]:[3,2];case 1:if(null===(u=W.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],W.label=2;case 2:return v&&(l=R(v,e))?(p=I(o.ingest),[4,D(v,l,p)]):[3,7];case 3:return(_=W.sent())?"HIT"===_.status&&void 0!==_.value&&v.stop?(w=_.value,_.rule.update?[4,N(w,_.rule.update,_object_spread_props(_object_spread({},p),{cache:{status:"HIT"}}),e)]:[3,5]):[3,6]:[3,7];case 4:w=W.sent(),W.label=5;case 5:return[2,(null===(h=o.respond)||void 0===h||h.call(o,w),{ok:!0})];case 6:"MISS"===_.status&&v.stop&&o.respond&&(k=o.respond,j=_.rule.update,x=_object_spread_props(_object_spread({},p),{cache:{status:"MISS"}}),S=_.key,C=_.rule.ttl,A=function(n){T(l,S,n,C),j?a=_async_to_generator(function(){var t;return _ts_generator(this,function(r){switch(r.label){case 0:return[4,N(n,j,x,e)];case 1:return t=r.sent(),k(t),[2]}})})():k(n)},o.respond=A),"MISS"!==_.status||v.stop||T(l,_.key,!0,_.rule.ttl),W.label=7;case 7:E=g?{kind:"single",preChain:g}:void 0!==f?function(){var n=P(f,I(o.ingest));return 0===n.length?{kind:"single",preChain:[]}:1===n.length?{kind:"single",preChain:L(n[0],U(e.transformers))}:{kind:"many",branches:n.map(function(n){return L(n,U(e.transformers))})}}():{kind:"single",preChain:[]},q={ok:!0},M=!0,G=!1,z=void 0,W.label=8;case 8:W.trys.push([8,13,14,15]),B=function(){var t,a;return _ts_generator(this,function(s){switch(s.label){case 0:return t=K.value,"many"!==E.kind?[3,2]:[4,Promise.all(E.branches.map(function(a,s){return O(function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return[2,m?b(t):b(t,_object_spread_props(_object_spread({},r),{id:n,ingest:H(o.ingest,"".concat(n,".").concat(s)),respond:void 0,mapping:i,preChain:a}))]})})()},function(n){return e.logger.scope("source:many").error("many branch ".concat(s," failed"),{error:n}),{ok:!0}})()}))];case 1:return s.sent(),q={ok:!0},[3,7];case 2:return m?[4,b(t)]:[3,4];case 3:return a=s.sent(),[3,6];case 4:return[4,b(t,_object_spread_props(_object_spread({},r),{id:n,ingest:o.ingest,respond:o.respond,mapping:i,preChain:E.preChain}))];case 5:a=s.sent(),s.label=6;case 6:q=a,s.label=7;case 7:return[2]}})},F=c[Symbol.iterator](),W.label=9;case 9:return(M=(K=F.next()).done)?[3,12]:[5,_ts_values(B())];case 10:W.sent(),W.label=11;case 11:return M=!0,[3,9];case 12:return[3,15];case 13:return V=W.sent(),G=!0,z=V,[3,15];case 14:try{M||null==F.return||F.return()}finally{if(G)throw z}return[7];case 15:return a?[4,a]:[3,17];case 16:W.sent(),W.label=17;case 17:return[2,q]}})})()},k=function(t){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(a){switch(a.label){case 0:return r=l(n),i.ingest&&void 0!==t?[4,C(t,i.ingest,{collector:e})]:[2,r];case 1:return o=a.sent(),[2,_object_spread_props(_object_spread({},r,o),{_meta:r._meta})]}})})()},j=e.logger.scope("source").scope(n),x=_object_spread_props(_object_spread({command:e.command,sources:e.sources,elb:e.sources.elb.push,logger:j},c),{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:l(n),respond:void 0},[2,w(e,t,r)]})})()}}),S={collector:e,logger:j,id:n,config:i,env:x,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,k(e)];case 1:return o.ingest=a.sent(),o.respond=n,r=o,[2,t(_object_spread_props(_object_spread({},x),{push:function(e){return w(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r)},ingest:r.ingest,respond:r.respond}))]}})})()}},[4,O(o,function(t){if(_instanceof(t,gn))throw t;e.status.failed++,e.logger.scope("source").error("source factory failed",{sourceId:n,error:t})})(S)];case 1:return(A=G.sent())?(E=A.type||"unknown",q=e.logger.scope(E).scope(n),[2,(x.logger=q,u&&(A.config=_object_spread_props(_object_spread({},A.config),{primary:u})),A)]):[2]}})})()},$=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=arguments;return _ts_generator(this,function(k){switch(k.label){case 0:n=w.length>1&&void 0!==w[1]?w[1]:{},t={},r=!0,o=!1,a=void 0,k.label=1;case 1:k.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),k.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],[4,Y(e,u,l)]);case 3:if(!(d=k.sent()))return[3,4];p=null===(f=l.config)||void 0===f?void 0:f.require,d.config=_object_spread(_object_spread_props(_object_spread({},d.config),{init:!1}),p?{require:_to_consumable_array(p)}:{}),t[u]=d,k.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return m=k.sent(),o=!0,a=m,[3,8];case 7:try{r||null==i.return||i.return()}finally{if(o)throw a}return[7];case 8:Object.assign(e.sources,t),_=!0,v=!1,g=void 0,k.label=9;case 9:k.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,O(t.init.bind(t),function(t){if(_instanceof(t,gn))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=W(t))?[4,V(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](),k.label=10;case 10:return(_=(b=h.next()).done)?[3,13]:[5,_ts_values(y())];case 11:k.sent(),k.label=12;case 12:return _=!0,[3,10];case 13:return[3,16];case 14:return m=k.sent(),v=!0,g=m,[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)},J=function(e,n,t,r){if(_instanceof(t,gn))throw t;e.logger.scope("on").error("on callback failed",_object_spread_props(_object_spread({kind:n},r),{error:t}))},X=function(e,n){return{collector:e,logger:e.logger.scope("on").scope(String(n))}},Z=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=d(t)?t:[t]).forEach(function(e){o.push(e)}),r[n]=o,ee(e,n,a),[2]})})()},Q=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:ye(n.env,n.config.env)};x(n.on,function(n){return J(e,"destination",n,{destId:t,type:r})})(r,s)}},ee=function(e,n,t,r){var o,a,i,s,c;switch(n){case Sn.Commands.Consent:o=r||e.consent;break;case Sn.Commands.Session:o=e.session;break;case Sn.Commands.User:o=r||e.user;break;case Sn.Commands.Custom:o=r||e.custom;break;case Sn.Commands.Globals:o=r||e.globals;break;case Sn.Commands.Config:o=r||e.config;break;case Sn.Commands.Ready:case Sn.Commands.Run:default:o=void 0}if(t.length)switch(n){case Sn.Commands.Consent:a=e,i=t,s=r||a.consent,c=X(a,Sn.Commands.Consent),i.forEach(function(e){Object.keys(s).filter(function(n){return n in e}).forEach(function(n){x(e[n],function(e){return J(a,"consent",e,{key:n})})(s,c)})});break;case Sn.Commands.Ready:!function(e,n){if(e.allowed){var t=X(e,Sn.Commands.Ready);n.forEach(function(n){x(n,function(n){return J(e,"ready",n)})(void 0,t)})}}(e,t);break;case Sn.Commands.Run:!function(e,n){if(e.allowed){var t=X(e,Sn.Commands.Run);n.forEach(function(n){x(n,function(n){return J(e,"run",n)})(void 0,t)})}}(e,t);break;case Sn.Commands.Session:!function(e,n){if(e.session){var t=X(e,Sn.Commands.Session);n.forEach(function(n){x(n,function(n){return J(e,"session",n)})(e.session,t)})}}(e,t);break;default:var u=X(e,n);t.forEach(function(t){"function"==typeof t&&x(t,function(t){return J(e,"generic",t,{type:n})})(o,u)})}},ne=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,m,w,k;return _ts_generator(this,function(j){switch(j.label){case 0:switch(i=t||[],t||(i=e.on[n]||[]),n){case Sn.Commands.Consent:a=r||e.consent;break;case Sn.Commands.Session:a=e.session;break;case Sn.Commands.User:a=r||e.user;break;case Sn.Commands.Custom:a=r||e.custom;break;case Sn.Commands.Globals:a=r||e.globals;break;case Sn.Commands.Config:a=r||e.config;break;case Sn.Commands.Ready:case Sn.Commands.Run:default:a=void 0}s=!1,c=!0,u=!1,l=void 0,j.label=1;case 1:j.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?W(o)?(u=!1,[4,O(o.on,function(t){return J(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](),j.label=2;case 2:return(c=(p=d.next()).done)?[3,5]:[5,_ts_values(f())];case 3:j.sent(),j.label=4;case 4:return c=!0,[3,2];case 5:return[3,8];case 6:return k=j.sent(),u=!0,l=k,[3,8];case 7:try{c||null==d.return||d.return()}finally{if(u)throw l}return[7];case 8:Object.entries(e.destinations).forEach(function(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});Q(e,i,o,n,a)}}),_=!0,v=!1,g=void 0,j.label=9;case 9:j.trys.push([9,15,16,17]),y=Object.entries(e.sources)[Symbol.iterator](),j.label=10;case 10:return(_=(h=y.next()).done)?[3,14]:(b=_sliced_to_array(h.value,2),m=b[0],w=b[1],W(w)&&(null===(o=w.queueOn)||void 0===o?void 0:o.length)?[4,V(e,w,m)]:[3,12]);case 11:j.sent(),j.label=12;case 12:j.label=13;case 13:return _=!0,[3,10];case 14:return[3,17];case 15:return k=j.sent(),v=!0,g=k,[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=ve(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:j.sent(),j.label=19;case 19:return[2,(ee(e,n,i,r),!s)]}})})()},te=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}},re=function(e,n,t,r){En.get(e)||(En.set(e,!0),n.warn(t,r))},oe=function(e){En.delete(e)},ae=function(e){return e===qn},ie=function(e){return void 0===e?{}:"number"==typeof e?{wait:e}:{wait:e.wait,size:e.size,age:e.age}},se=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]},ce=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]},ue=function(e,n,t){if(!e)return[];if(Array.isArray(e)&&e.every(function(e){return"string"==typeof e}))return L(e,n);if("string"==typeof e)return L(e,n);var r=P(e,I(t));return 0===r.length?[]:1===r.length?L(r[0],n):L(r,n)},le=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(v){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,u=n.cache,!_(t.push))return[2,_e({ok:!1,failed:{invalid:{type:"invalid",error:"Destination code must have a push method"}}})];if(l=o||{init:!1},f=s?_object_spread_props(_object_spread({},l),{before:s}):_object_spread({},l),c&&(f=_object_spread_props(_object_spread({},f),{next:c})),u&&(f=_object_spread_props(_object_spread({},f),{cache:u})),d=_object_spread_props(_object_spread({},t),{config:f,env:ye(t.env,i)}),!(p=d.config.id))do{p=b(5,"abcdefghijklmnopqrstuvwxyz")}while(e.destinations[p]);return[2,(e.destinations[p]=d,!1!==d.config.queue&&(d.queuePush=_to_consumable_array(e.queue)),fe(e,void 0,{},_define_property({},p,d)))]})})()},fe=function(e,n,t){return _async_to_generator(function(e,n){var t,r,o,i,s,c,u,d,p,_,v,g,y,b,m,w,k,j,x,S,C,A,E,q,P,N,G,L,z,B,H,F,K=arguments;return _ts_generator(this,function(V){switch(V.label){case 0:if(t=K.length>2&&void 0!==K[2]?K[2]:{},r=K.length>3?K[3]:void 0,o=e.allowed,i=e.consent,s=e.globals,c=e.user,!o)return[2,_e({ok:!1})];if(n){if(void 0===(u=e.config.queueMax))throw new Error("Collector.Config.queueMax is undefined; defaults must be seeded by collector()");(d=te(e.queue,n,{max:u})).dropped>0?(p=ce(e.status,a("collector"),"queue",d.dropped),re(e.queue,e.logger,"collector.queue overflow; oldest events dropped",{buffer:"queue",cap:u,droppedCount:p})):e.queue.length<u&&oe(e.queue),e.status.in++}return r||(r=e.destinations),_=e.transformers?U(e.transformers):{},[4,Promise.all(Object.entries(r||{}).map(function(r){var o=_sliced_to_array(r,2),u=o[0],d=o[1];return _async_to_generator(function(){var r,o,p,v,g,y,b,m,w,k,j,x,S,C,A,E,q,P,N,U,G,L,z,B,H,F,K,V,W,Y,$,J,X,Z;return _ts_generator(this,function(Q){switch(Q.label){case 0:if(d.config.disabled)return[2,{id:u,destination:d,skipped:!0}];if(v=(d.queuePush||[]).map(function(e){return _object_spread_props(_object_spread({},e),{consent:i})}),d.queuePush=[],n&&v.push(ln(n)),g=t.ingest?_object_spread_props(_object_spread({},t.ingest),{_meta:_object_spread_props(_object_spread({},t.ingest._meta),{path:_to_consumable_array(t.ingest._meta.path)})}):l("unknown"),!v.length&&!(null===(r=d.queueOn)||void 0===r?void 0:r.length))return[2,{id:u,destination:d,skipped:!0}];if(v.length||!(null===(o=d.queueOn)||void 0===o?void 0:o.length))return[3,5];y=!1,Q.label=1;case 1:return Q.trys.push([1,3,,4]),[4,de(e,d,u)];case 2:return y=Q.sent(),[3,4];case 3:return b=Q.sent(),e.status.failed++,m=d.type||"unknown",e.logger.scope(m).error("destination init failed",{error:_instanceof(b,Error)?b.message:String(b)}),[3,4];case 4:return[2,{id:u,destination:d,skipped:!y}];case 5:if(w=[],k=v.filter(function(e){var n=h(d.config.consent,i,e.consent);return!n||(e.consent=n,w.push(e),!1)}),k.length>0){x=d.queuePush,S=d.config.id||u,C={max:null!==(j=d.config.queueMax)&&void 0!==j?j:1e3},A=0,E=!0,q=!1,P=void 0;try{for(N=k[Symbol.iterator]();!(E=(U=N.next()).done);E=!0)G=U.value,A+=te(x,G,C).dropped}catch(e){q=!0,P=e}finally{try{E||null==N.return||N.return()}finally{if(q)throw P}}A>0?(se(e,S),L=ce(e.status,a("destination",S),"queue",A),re(x,e.logger.scope(d.type||"unknown"),"destination.queuePush overflow; oldest events dropped",{buffer:"queuePush",destination:S,cap:C.max,droppedCount:L})):x.length<C.max&&oe(x)}if(!w.length)return[2,{id:u,destination:d,queue:v}];H=!1,Q.label=6;case 6:return Q.trys.push([6,8,,9]),[4,de(e,d,u)];case 7:return H=Q.sent(),[3,9];case 8:return F=Q.sent(),e.status.failed++,K=d.type||"unknown",e.logger.scope(K).error("destination init failed",{error:_instanceof(F,Error)?F.message:String(F)}),[3,9];case 9:return H?(d.dlq||(d.dlq=[]),V=ue(d.config.before,_,g),W=d.config.next,Y=null===(p=d.config)||void 0===p?void 0:p.cache,$=Y?M(Y):void 0,J=$?R($,e):void 0,X=0,Z=0,[4,Promise.all(w.map(function(n){return _async_to_generator(function(){var r,o,i,l,p,v,y,h,b,m,w,k,j;return _ts_generator(this,function(x){switch(x.label){case 0:return n.globals=f(s,n.globals),n.user=f(c,n.user),(null==$?void 0:$.stop)&&J?(o=I(g,n),[4,D($,J,o)]):[3,2];case 1:if("HIT"===(null==(i=x.sent())?void 0:i.status))return[2,n];"MISS"===(null==i?void 0:i.status)&&(r={key:i.key,ttl:i.rule.ttl}),x.label=2;case 2:return l=n,p=t.respond,V.length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,Cn(e,e.transformers,V,n,g,t.respond,"destination.".concat(u,".before"))]:[3,4];case 3:if(null===(v=x.sent()).event)return[2,n];v.respond&&(p=v.respond),l=Array.isArray(v.event)?v.event[0]:v.event,x.label=4;case 4:return $&&!$.stop&&J?(y=I(g,l),[4,D($,J,y)]):[3,6];case 5:if("HIT"===(null==(h=x.sent())?void 0:h.status))return[2,n];"MISS"===(null==h?void 0:h.status)&&(r={key:h.key,ttl:h.rule.ttl}),x.label=6;case 6:return b=Date.now(),m=!1,[4,O(pe,function(n){var t,r=d.type||"unknown";e.logger.scope(r).error("Push failed",{error:n,event:l.name}),z=n,m=!0;var o=d.dlq,i=d.config.id||u,s={max:null!==(t=d.config.dlqMax)&&void 0!==t?t:100},c=te(o,[l,n],s);if(c.dropped>0){se(e,i);var f=ce(e.status,a("destination",i),"dlq",c.dropped);re(o,e.logger.scope(d.type||"unknown"),"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:i,cap:s.max,droppedCount:f})}else o.length<s.max&&oe(o)})(e,d,u,l,g,p)];case 7:return w=x.sent(),X+=Date.now()-b,r&&J&&void 0===d.config.mock&&T(J,r.key,null==w||w,r.ttl),void 0===w||ae(w)||(B=w),ae(w)&&Z++,m||!W?[3,9]:(void 0!==w&&(g._response=w),(k=ue(W,_,g)).length>0&&e.transformers&&Object.keys(e.transformers).length>0?[4,Cn(e,e.transformers,k,l,g,p,"destination.".concat(u,".next"))]:[3,9]);case 8:(j=x.sent()).respond&&(p=j.respond),x.label=9;case 9:return[2,n]}})})()}))]):[2,{id:u,destination:d,queue:v}];case 10:return[2,(Q.sent(),{id:u,destination:d,error:z,response:B,totalDuration:X,batchedCount:Z,allowedCount:w.length})]}})})()}))];case 1:v=V.sent(),g={},y={},b={},m=!0,w=!1,k=void 0;try{for(j=v[Symbol.iterator]();!(m=(x=j.next()).done);m=!0)(S=x.value).skipped||(P=S.destination,N={type:P.type||"unknown",data:S.response},se(e,S.id),G=e.status.destinations[S.id],L=Date.now(),G.queuePushSize=null!==(C=null===(E=P.queuePush)||void 0===E?void 0:E.length)&&void 0!==C?C:0,G.dlqSize=null!==(A=null===(q=P.dlq)||void 0===q?void 0:q.length)&&void 0!==A?A:0,S.error?(N.error=S.error,b[S.id]=N,G.failed++,G.lastAt=L,G.duration+=S.totalDuration||0,e.status.failed++):S.queue&&S.queue.length?y[S.id]=N:(H=null!==(z=S.batchedCount)&&void 0!==z?z:0,F=null!==(B=S.allowedCount)&&void 0!==B?B:0,(Math.max(0,F-H)>0||0===F)&&(g[S.id]=N,G.count++,G.lastAt=L,G.duration+=S.totalDuration||0,e.status.out++)))}catch(e){w=!0,k=e}finally{try{m||null==j.return||j.return()}finally{if(w)throw k}}return[2,_e(_object_spread({event:n},Object.keys(g).length&&{done:g},Object.keys(y).length&&{queued:y},Object.keys(b).length&&{failed:b}))]}})}).apply(this,arguments)},de=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:ye(n.env,n.config.env)},a.debug("init"),[4,E(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,Q(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]}})})()},pe=function(e,n,t,r,o,i){return _async_to_generator(function(){var s,c,u,l,f,d,_,v,g,y,h,b,m,w,k,j,x,S,C,q,P,I,M,D,T,N;return _ts_generator(this,function(R){switch(R.label){case 0:return s=n.config,[4,A(r,s,e)];case 1:return(c=R.sent()).ignore?[2,!1]:(u=n.type||"unknown",l=e.logger.scope(u),f={collector:e,logger:l,id:t,config:s,data:c.data,rule:c.mapping,ingest:o,env:_object_spread({},ye(n.env,s.env),i?{respond:i}:{})},void 0!==s.mock?[2,(l.debug("mock",{event:c.event.name}),s.mock)]:(d=c.mapping,_=c.mappingKey||"* *",(null==d?void 0:d.batch)&&n.pushBatch&&void 0===s.mock?(n.batches=n.batches||{},n.batches[_]||(k={key:_,entries:[],events:[],data:[]},j=ie(d.batch),x=ie(s.batch),S=null!==(g=null!==(y=j.wait)&&void 0!==y?y:x.wait)&&void 0!==g?g:3e4,C=null!==(h=null!==(b=j.size)&&void 0!==b?b:x.size)&&void 0!==h?h:1e3,q=null!==(m=null!==(w=j.age)&&void 0!==w?w:x.age)&&void 0!==m?m:3e4,P=ye(n.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 r,o,i,c,u,f,d,p;return _ts_generator(this,function(v){switch(v.label){case 0:return 0===(o=n.batches[_].batched).entries.length?[2]:(i={key:o.key,entries:o.entries,events:o.events,data:o.data},o.entries=[],o.events=[],o.data=[],c=i.entries[0],u={collector:e,logger:l,id:t,config:s,data:void 0,rule:c.rule,ingest:c.ingest,env:_object_spread({},P,c.respond?{respond:c.respond}:{})},l.debug("push batch",{events:i.entries.length}),f=n.config.id||t,d=se(e,f),p=!0,[4,O(E(n.pushBatch,"DestinationPushBatch",e.hooks,e.logger),function(t){var r;p=!1;var o=n.dlq=n.dlq||[],s={max:null!==(r=n.config.dlqMax)&&void 0!==r?r: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+=te(o,[h.event,t],s).dropped}}catch(e){_=!0,v=e}finally{try{u||null==y.return||y.return()}finally{if(_)throw v}}if(c>0){var b=ce(e.status,a("destination",f),"dlq",c);re(o,l,"destination.dlq overflow; oldest entries dropped",{buffer:"dlq",destination:f,cap:s.max,droppedCount:b})}else o.length<s.max&&oe(o);d.failed+=i.entries.length,d.dlqSize=o.length,e.status.failed+=i.entries.length,l.error("Push batch failed",{error:_instanceof(t,Error)?t.message:String(t),entries:i.entries.length})})(i,u)]);case 1:return v.sent(),l.debug("push batch done"),d.inFlightBatch=Math.max(0,(null!==(r=d.inFlightBatch)&&void 0!==r?r:0)-i.entries.length),p&&(d.count+=i.entries.length,d.lastAt=Date.now(),e.status.out+=i.entries.length),[2]}})})()},{wait:S,size:C,age:q}),n.batches[_]={batched:k,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=n.batches[_]).batched.entries.push({event:c.event,ingest:o,respond:i,rule:d,data:c.data}),M.batched.events.push(c.event),p(c.data)&&M.batched.data.push(c.data),D=n.config.id||t,[2,((T=se(e,D)).inFlightBatch=(null!==(v=T.inFlightBatch)&&void 0!==v?v:0)+1,M.batchFn(),qn)]):(l.debug("push",{event:c.event.name}),[4,E(n.push,"DestinationPush",e.hooks,e.logger)(c.event,f)])));case 2:return N=R.sent(),[2,(l.debug("push done"),N)]}})})()},_e=function(e){return _object_spread({ok:!(null==e?void 0:e.failed)},e)},ve=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=G(e,"before").config,c=G(_object_spread_props(_object_spread({},e),{config:s}),"next").config,u=_object_spread({},n.config,r,c);i&&(u.cache=i);var l=ye(n.env,a);return _object_spread_props(_object_spread({},n),{config:u,env:l})},ge=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]=ve(d)}catch(e){i=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(i)throw s}}return[2,o]})}).apply(this,arguments)},ye=function(e,n){return e||n?n?e&&v(e)&&v(n)?_object_spread({},e,n):n:e:{}},he=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]}})})()},be=function(e,n,t){return _async_to_generator(function(){var r,o,a,i,s,c,u,l,d;return _ts_generator(this,function(p){switch(p.label){case 0:switch(a=!1,n){case Sn.Commands.Config:return[3,1];case Sn.Commands.Consent:return[3,2];case Sn.Commands.Custom:return[3,3];case Sn.Commands.Destination:return[3,4];case Sn.Commands.Globals:return[3,7];case Sn.Commands.Hook:return[3,8];case Sn.Commands.On:return[3,9];case Sn.Commands.Ready:return[3,12];case Sn.Commands.Run:return[3,13];case Sn.Commands.Session:return[3,15];case Sn.Commands.Shutdown:return[3,16];case Sn.Commands.User:return[3,18]}return[3,19];case 1:return v(t)&&(f(e.config,t,{shallow:!1}),o=t,a=!0),[3,19];case 2:return v(t)&&(i=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=f(e.consent,t),{update:t}}(e,t),s=i.update,o=s,a=!0),[3,19];case 3:return v(t)&&(e.custom=f(e.custom,t),o=t,a=!0),[3,19];case 4:return v(t)&&"code"in t&&v(t.code)?[4,le(e,t)]:[3,6];case 5:r=p.sent(),p.label=6;case 6:return[3,19];case 7:return v(t)&&(e.globals=f(e.globals,t),o=t,a=!0),[3,19];case 8:return v(t)&&g(t.name)&&_(t.fn)&&(c=t.name,u=t.fn,e.hooks[c]=u,o=t,a=!0),[3,19];case 9:return v(t)&&g(t.type)?(l=t.type,d=t.rules,[4,Z(e,l,d)]):[3,11];case 10:p.sent(),p.label=11;case 11:return[3,19];case 12:return a=!0,[3,19];case 13:return[4,we(e,t)];case 14:return r=p.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,he(y.sources,"source",e)];case 1:return n.sent(),[4,he(y.destinations,"destination",e)];case 2:return n.sent(),[4,he(y.transformers,"transformer",e)];case 3:return n.sent(),[4,he(y.stores,"store",e)];case 4:return n.sent(),[2]}})})())];case 17:return p.sent(),[3,19];case 18:v(t)&&(f(e.user,t,{shallow:!1}),o=t,a=!0),p.label=19;case 19:return a?[4,ne(e,n,void 0,o)]:[3,22];case 20:return p.sent(),[4,fe(e)];case 21:r=p.sent(),p.label=22;case 22:return[2,r||_e({ok:!0})]}var y})})()},me=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,x=void 0===j?function(){for(var e="",n=0;n<16;n++)e+=(16*Math.random()|0).toString(16);return e}():j,O=n.trigger,S=void 0===O?"":O,C=n.entity,A=void 0===C?r:C,E=n.action,q=void 0===E?o:E,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:x,trigger:S,entity:A,action:q,timestamp:i,timing:I,source:void 0===M?{type:"collector",schema:"4"}:M}},we=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=f(e.consent,n.consent)),n.user&&(e.user=f(e.user,n.user)),n.globals&&(e.globals=f(e.config.globalsStatic||{},n.globals)),n.custom&&(e.custom=f(e.custom,n.custom))),Object.values(e.destinations).forEach(function(e){e.queuePush=[]}),e.queue=[],e.round++,[4,fe(e)];case 1:return[2,t.sent()]}})})()},ke=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()}}},je=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?hn(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)}},xe=function(e,n){var t=n.get,r=n.set,o=n.delete;n.get=E(t,"StoreGet",e.hooks,e.logger),n.set=E(r,"StoreSet",e.hooks,e.logger),n.delete=E(o,"StoreDelete",e.hooks,e.logger)},Oe=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,x,O,S,C,A,E,q,P,I,M,D,T,N,R,U,G,L=arguments;return _ts_generator(this,function(z){switch(z.label){case 0:n=L.length>1&&void 0!==L[1]?L[1]:{},t={},r=!0,o=!1,a=void 0,z.label=1;case 1:z.trys.push([1,6,7,8]),i=Object.entries(n)[Symbol.iterator](),z.label=2;case 2:return(r=(s=i.next()).done)?[3,5]:(c=_sliced_to_array(s.value,2),u=c[0],l=c[1],f=l.code,d=l.config,p=void 0===d?{}:d,_=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=z.sent(),t[u]=y,z.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return h=z.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(x=m[Symbol.iterator]();!(w=(O=x.next()).done);w=!0)S=O.value,(A=b[S].cache)&&(E=void 0,q=void 0,void 0!==A.store?(E=t[A.store],q=A.store):(t.__cache||(t.__cache=ke()),E=t.__cache,q="__cache"),P=null!==(C=A.namespace)&&void 0!==C?C:S,e.logger.scope("store-cache").scope(S).info('store "'.concat(S,'" caches with namespace "').concat(P,':" via ').concat(q)),t[S]=je(t[S],{storeId:S,cacheConfig:A,cacheStore:E,namespace:P,logger:e.logger.scope("store-cache").scope(S)}))}catch(e){k=!0,j=e}finally{try{w||null==x.return||x.return()}finally{if(k)throw j}}I=!0,M=!1,D=void 0;try{for(T=Object.entries(t)[Symbol.iterator]();!(I=(N=T.next()).done);I=!0)R=_sliced_to_array(N.value,2),U=R[0],G=R[1],"__cache"!==U&&xe(e,G)}catch(e){M=!0,D=e}finally{try{I||null==T.return||T.return()}finally{if(M)throw D}}return[2,t]}})}).apply(this,arguments)},Se=function(e){return _async_to_generator(function(){var n,t,r,o,a,i,s,c;return _ts_generator(this,function(u){switch(u.label){case 0:return r=f({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},a=k(o),i=_object_spread({},r.globalsStatic,e.globals),(s={allowed:!1,config:r,consent:e.consent||{},custom:e.custom||{},destinations:{},transformers:{},stores:{},globals:i,hooks:e.hooks||{},logger:a,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 E(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,O(function(){return _async_to_generator(function(){var o,a,i,s,c,u,f,d,p,_,v,g,y,b,m,w,k,j,x,O,S;return _ts_generator(this,function(C){switch(C.label){case 0:return o=Date.now(),a=r.id,i=r.ingest,s=r.respond,c=r.mapping,u=r.preChain,f=r.include,d=r.exclude,p=s,_=t,v=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,g=null!=i?i:l(a||"unknown"),c?[4,A(_,c,e)]:[3,2];case 1:if((y=C.sent()).ignore)return[2,_e({ok:!0})];if(c.consent&&!h(c.consent,e.consent,y.event.consent))return[2,_e({ok:!0})];_=y.event,C.label=2;case 2:return(null==u?void 0:u.length)&&e.transformers&&Object.keys(e.transformers).length>0?[4,Cn(e,e.transformers,u,_,g,p,a?"source.".concat(a,".next"):void 0)]:[3,6];case 3:return null===(b=C.sent()).event?[2,_e({ok:!0})]:b.stopped?[2,(b.respond&&(p=b.respond),_e({ok:!0}))]:(b.respond&&(p=b.respond),Array.isArray(b.event)?[4,Promise.all(b.event.map(function(t){return _async_to_generator(function(){var r,o;return _ts_generator(this,function(i){return r=n(t),o=me(e,r),[2,fe(e,o,{id:a,ingest:g,respond:p},v)]})})()}))]:[3,5]);case 4:return w=C.sent(),a&&(e.status.sources[a]||(e.status.sources[a]={count:0,duration:0}),(k=e.status.sources[a]).count+=b.event.length,k.lastAt=Date.now(),k.duration+=Date.now()-o),[2,null!==(m=w[0])&&void 0!==m?m:_e({ok:!0})];case 5:_=b.event,C.label=6;case 6:return j=n(_),x=me(e,j),[4,fe(e,x,{id:a,ingest:g,respond:p},v)];case 7:return O=C.sent(),a&&(e.status.sources[a]||(e.status.sources[a]={count:0,duration:0}),(S=e.status.sources[a]).count++,S.lastAt=Date.now(),S.duration+=Date.now()-o),[2,O]}})})()},function(n){if(_instanceof(n,gn))throw n;return e.status.failed++,e.logger.error("push failed",{event:t,ingest:r.ingest,error:n}),_e({ok:!1})})()];case 1:return[2,o.sent()]}})})()},"Push",e.hooks,e.logger)}(s,function(e){return _object_spread({timing:Math.round((Date.now()-s.timing)/10)/100,source:{type:"collector",schema:"4",version:"4.1.0"}},e)}),s.command=(p=be,E(function(e,n,t){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,O(function(){return _async_to_generator(function(){return _ts_generator(this,function(r){switch(r.label){case 0:return[4,p(d,e,n,t)];case 1:return[2,r.sent()]}})})()},function(t){if(_instanceof(t,gn))throw t;return d.status.failed++,d.logger.error("command failed",{command:e,data:n,error:t}),_e({ok:!1})})()];case 1:return[2,r.sent()]}})})()},"Command",(d=s).hooks,d.logger)),c=e.stores||{},[4,Oe(s,c)];case 1:return s.stores=u.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}}}}}(c,s.stores,e),s.stores.__cache||(s.stores.__cache=ke()),[4,ge(s,e.destinations||{})];case 2:return s.destinations=u.sent(),[4,function(e){return _async_to_generator(function(e){var n,t,r,o,a,i,s,c,u,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,a=void 0,d.label=1;case 1:d.trys.push([1,6,7,8]),i=function(){var n,r,o,a,i,s,u,f,d,p,_,v,g,y,h,b,m,w,k,j,x,O;return _ts_generator(this,function(S){switch(S.label){case 0:return n=_sliced_to_array(c.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(kn[t]).concat(_to_consumable_array(jn),_to_consumable_array(xn[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&&On.test(e.import)?{ok:!0}:{ok:!1,code:"INVALID_IMPORT",key:"import",reason:"import must match ".concat(On.source,". Got: ").concat(JSON.stringify(e.import),".")}}(o,"Transformer"),_.ok?(v=G(o,"before"),g=v.config,y=G(_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),j={collector:e,logger:k,id:r,ingest:l(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,A(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(j)]):(e.logger.warn("Transformer ".concat(r," invalid (").concat(_.code,"): ").concat(_.reason,". Skipping.")),[2,"continue"]);case 1:return O=S.sent(),void 0!==o.before&&void 0===(null===(s=O.config)||void 0===s?void 0:s.before)&&(O.config=_object_spread_props(_object_spread({},null!==(a=O.config)&&void 0!==a?a:{}),{before:o.before})),void 0!==o.next&&void 0===(null===(u=O.config)||void 0===u?void 0:u.next)&&(O.config=_object_spread_props(_object_spread({},null!==(i=O.config)&&void 0!==i?i:{}),{next:o.next})),t[r]=O,[2]}})},s=Object.entries(n)[Symbol.iterator](),d.label=2;case 2:return(r=(c=s.next()).done)?[3,5]:[5,_ts_values(i())];case 3:d.sent(),d.label=4;case 4:return r=!0,[3,2];case 5:return[3,8];case 6:return u=d.sent(),o=!0,a=u,[3,8];case 7:try{r||null==s.return||s.return()}finally{if(o)throw a}return[7];case 8:return[2,t]}})}).apply(this,arguments)}(s,e.transformers||{})];case 3:return[2,(s.transformers=u.sent(),s)]}var d,p})})()},Ce=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,Se(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,_e({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,$(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})]}})})()},Ae=Object.defineProperty,Ee=Object.getOwnPropertyDescriptor,qe=Object.getOwnPropertyNames,Pe=Object.prototype.hasOwnProperty,Ie=function(e,n){for(var t in n)Ae(e,t,{get:n[t],enumerable:!0})},Me={};Ie(Me,{SourceUsercentrics:function(){return Re},createMockElbFn:function(){return Xe},createTrigger:function(){return Pn},default:function(){return Dn},fullConsent:function(){return Ue},fullConsentCustomMapped:function(){return Ye},fullConsentMapped:function(){return Ke},fullConsentUpperCase:function(){return Be},implicitConsent:function(){return ze},minimalConsent:function(){return Le},minimalConsentMapped:function(){return We},nonConsentEvent:function(){return Fe},noopLogger:function(){return Ze},partialConsent:function(){return Ge},partialConsentMapped:function(){return Ve},serviceLevelConsent:function(){return He},serviceLevelMapped:function(){return $e},sourceUsercentrics:function(){return Mn},step:function(){return Qe},trigger:function(){return In}});var De=["action","event","type","ucCategory"],Te="UC_UI_CMP_EVENT",Ne=new Set(["ACCEPT_ALL","DENY_ALL","SAVE"]),Re={},Ue={event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0},"Google Analytics":!0,"Google Ads Remarketing":!0},Ge={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:!0,marketing:!1},"Google Analytics":!0,"Google Ads Remarketing":!1},Le={event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},ze={event:"consent_status",type:"implicit",ucCategory:{essential:!0,functional:!1,marketing:!1},"Google Analytics":!1,"Google Ads Remarketing":!1},Be={event:"consent_status",type:"EXPLICIT",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},He={event:"consent_status",type:"explicit",action:"onUpdateServices",ucCategory:{essential:!0,functional:"partial",marketing:"partial"},"Google Analytics":!0,"Google Ads Remarketing":!1,Hotjar:!0},Fe={event:"other_event",type:"explicit"},Ke={essential:!0,functional:!0,marketing:!0},Ve={essential:!0,functional:!0,marketing:!1},We={essential:!0,functional:!1,marketing:!1},Ye={functional:!0,marketing:!0},$e={essential:!0,google_analytics:!0,google_ads_remarketing:!1,hotjar:!0},Je=function(){},Xe=function(){return function(){return Promise.resolve({ok:!0})}},Ze={error:Je,warn:Je,info:Je,debug:Je,throw:function(e){throw"string"==typeof e?new Error(e):e},json:Je,scope:function(){return Ze}},Qe={};Ie(Qe,{categoryMapOverride:function(){return tn},customEventName:function(){return rn},fullConsent:function(){return en},minimalConsent:function(){return nn}});var en={title:"Full consent",description:"A Usercentrics onAcceptAllServices event emits a walker consent command with essential, functional, and marketing granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onAcceptAllServices",ucCategory:{essential:!0,functional:!0,marketing:!0}},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},nn={title:"Minimal consent",description:"A Usercentrics onDenyAllServices event emits a walker consent command with only essential granted.",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",action:"onDenyAllServices",ucCategory:{essential:!0,functional:!1,marketing:!1}},out:[["elb","walker consent",{essential:!0,functional:!1,marketing:!1}]]},tn={title:"Category map override",description:"Custom categoryMap remaps essential to functional and functional to analytics",trigger:{type:"consent"},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!1}},mapping:{categoryMap:{essential:"functional",functional:"analytics"}},out:[["elb","walker consent",{functional:!0,analytics:!0,marketing:!1}]]},rn={title:"Custom event name",description:"Using UC_SDK_EVENT instead of ucEvent for Usercentrics SDK v2",trigger:{type:"consent",options:{eventName:"UC_SDK_EVENT"}},in:{event:"consent_status",type:"explicit",ucCategory:{essential:!0,functional:!0,marketing:!0}},mapping:{eventName:"UC_SDK_EVENT"},out:[["elb","walker consent",{essential:!0,functional:!0,marketing:!0}]]},on=Object.defineProperty,an=function(e,n){for(var t in n)on(e,t,{get:n[t],enumerable:!0})};an({},{stepId:function(){return a}});an({},{getDestination:function(){return i}});an({},{Level:function(){return cn}});var sn,cn=((sn=cn||{})[sn.ERROR=0]="ERROR",sn[sn.WARN=1]="WARN",sn[sn.INFO=2]="INFO",sn[sn.DEBUG=3]="DEBUG",sn);an({},{getTransformer:function(){return s}});an({},{getSource:function(){return c}});an({},{getStore:function(){return u}});var un={merge:!0,shallow:!0,extend:!0};function ln(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]=ln(e[o],n));return r}if("[object Array]"===t){var a=[];return n.set(e,a),e.forEach(function(e){a.push(ln(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 fn(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&&d(r)){var i=t.slice(o+1).join("."),s=[],c=!0,u=!1,l=void 0;try{for(var f,_=r[Symbol.iterator]();!(c=(f=_.next()).done);c=!0){var g=fn(f.value,i,n);s.push(g)}}catch(e){u=!0,l=e}finally{try{c||null==_.return||_.return()}finally{if(u)throw l}}return s}if(void 0===(r=v(r)||d(r)?r[a]:void 0))break}return p(r)?r:n}var dn={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}}},pn=function(e,n,t,r){var o="".concat(cn[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 _n(e){var n=e.level,t=e.handler,r=e.jsonHandler,o=e.scope,a=function(e,r,a){if(e<=n){var i=w(r,a);t?t(e,i.message,i.context,o,pn):pn(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=w(e,n);throw t?t(0,r.message,r.context,o,pn):pn(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 _n({level:n,handler:t,jsonHandler:r,scope:_to_consumable_array(o).concat([e])})}}}function vn(e){return function(e){return"boolean"==typeof e}(e)||g(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!p(e)||d(e)&&e.every(vn)||v(e)&&Object.values(e).every(vn)}var gn=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 yn(e,n,t){return _async_to_generator(function(){return _ts_generator(this,function(r){return[2,(d(n)?n:[n]).reduce(function(n,r){return _async_to_generator(function(){var o,a,i,s,c,u,l,f,_,v,y,b,m,w,k,x,S,A,E,q,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=g(r)?{key:r}:r,Object.keys(a).length?(i=a.condition,s=a.consent,c=a.fn,u=a.key,l=a.loop,f=a.map,_=a.set,v=a.validate,y=a.value,b=_object_spread_props(_object_spread({},t),{mapping:r}),(m=i)?[4,O(i,function(e){if(_instanceof(e,gn))throw e;return b.logger.error("mapping condition failed",{event:b.event,error:e}),!1})(e,b)]:[3,3]):[2]);case 2:m=!M.sent(),M.label=3;case 3:return m?[2]:s&&!h(s,b.consent)?[2,y]:(w=p(y)?y:e,c?[4,O(c,function(e){if(_instanceof(e,gn))throw e;b.logger.error("mapping fn failed",{event:b.event,error:e})})(e,b)]:[3,5]);case 4:w=M.sent(),M.label=5;case 5:return u&&(w=fn(e,u,y)),l?(k=_sliced_to_array(l,2),x=k[0],S=k[1],"this"!==x?[3,6]:(E=[e],[3,8])):[3,11];case 6:return[4,C(e,x,b)];case 7:E=M.sent(),M.label=8;case 8:return d(A=E)?[4,Promise.all(A.map(function(e){return C(e,S,b)}))]:[3,10];case 9:w=M.sent().filter(p),M.label=10;case 10:return[3,17];case 11:return f?[4,Object.entries(f).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,C(e,a,b)];case 2:return r=i.sent(),[2,(p(r)&&(t[o]=r),t)]}})})()},Promise.resolve({}))]:[3,13];case 12:return w=M.sent(),[3,16];case 13:return(q=_)?[4,Promise.all(_.map(function(n){return yn(e,n,b)}))]:[3,15];case 14:q=w=M.sent(),M.label=15;case 15:M.label=16;case 16:M.label=17;case 17:return(P=v)?[4,O(v,function(e){if(_instanceof(e,gn))throw e;return b.logger.error("mapping validate failed",{event:b.event,error:e}),!1})(w,b)]:[3,19];case 18:P=!M.sent(),M.label=19;case 19:return P&&(w=void 0),I=j(w),[2,p(I)?I:j(y)]}})})()},Promise.resolve(void 0))]})})()}function hn(e){if(void 0===e||"*"===e)return function(){return!0};if("and"in e){var n=e.and.map(hn);return function(e){return n.every(function(n){return n(e)})}}if("or"in e){var t=e.or.map(hn);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=fn(e,n),r=a(t);return o?!r:r}}(e)}function bn(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 bn({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=bn(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:hn(c.match),next:bn(c.next)}:bn(c.next);if("one"in c&&c.one){var u=q(c.one);return c.match?{type:"gate",match:hn(c.match),next:{type:"one",routes:u}}:{type:"one",routes:u}}if("many"in c&&c.many){var l=q(c.many);return c.match?{type:"gate",match:hn(c.match),next:{type:"many",routes:l}}:{type:"many",routes:l}}return c.match?{type:"gate",match:hn(c.match)}:void 0}}var mn=new WeakMap;function wn(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 wn(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=wn(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=wn(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 x=k.value;if(x.match(n))return wn(x.next,n)}}catch(e){m=!0,w=e}finally{try{b||null==j.return||j.return()}finally{if(m)throw w}}}}var kn={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"]},jn=["config","env","validate","variables","examples","disabled","id","logger","mock","chainMocks"],xn={Source:["primary"],Transformer:[],Destination:[],Store:[]},On=/^[A-Za-z_$][A-Za-z0-9_$]*$/,Sn={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 Cn(e,n,t,r,o,a,i){return _async_to_generator(function(){var s,c,u,f,d,p,_,v,g,y,h;return _ts_generator(this,function(b){switch(b.label){case 0:o||(o=l(null!==(s=t[0])&&void 0!==s?s:"chain")),i&&o._meta&&(o._meta.chainPath=i),c=r,u=a,f=!0,d=!1,p=void 0,b.label=1;case 1:b.trys.push([1,6,7,8]),_=function(){var r,a,s,l,f,d,p,_,v,y,h,b,m,w,k,j,x,S,C,A,E,q,N,G,F,K,V,W,Y,$,J,X,Z,Q,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:u})}]:(o&&o._meta&&(o._meta.hops++,o._meta.path.push(r)),[4,O(z,function(n){if(_instanceof(n,gn))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()?i&&void 0!==(null===(s=p.config)||void 0===s||null===(a=s.chainMocks)||void 0===a?void 0:a[i])?(_=p.config.chainMocks[i],e.logger.scope("transformer:".concat(p.type||"unknown")).debug("chainMock",{chain:i}),c=_,[2,"continue"]):void 0!==(null===(l=p.config)||void 0===l?void 0:l.mock)?(e.logger.scope("transformer:".concat(p.type||"unknown")).debug("mock"),c=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?M(v):void 0,h=y?R(y,e):void 0,b=void 0,y&&h?(m=I(o,c),[4,D(y,h,m)]):[3,3]):[2,{v:{event:null,respond:u}}];case 2:if("HIT"===(null==(w=de.sent())?void 0:w.status)&&w.value)return c=w.value,y.stop?[2,{v:{event:c,respond:u,stopped:!0}}]:[2,"continue"];"MISS"===(null==w?void 0:w.status)&&(b={key:w.key,ttl:w.rule.ttl}),de.label=3;case 3:return(k=p.config.before)?1!==(j=P(k,I(o,c))).length?[3,6]:(x=L(j[0],U(n))).length>0?[4,Cn(e,n,x,c,o,u,i)]:[3,5]:[3,9];case 4:if(null===(A=de.sent()).event)return[2,{v:{event:null,respond:null!==(S=A.respond)&&void 0!==S?S:u}}];if(A.stopped)return[2,{v:{event:Array.isArray(A.event)?A.event[0]:A.event,respond:null!==(C=A.respond)&&void 0!==C?C:u,stopped:!0}}];A.respond&&(u=A.respond),c=Array.isArray(A.event)?A.event[0]:A.event,de.label=5;case 5:return[3,9];case 6:return j.length>1?[4,Promise.all(j.map(function(t){return O(Cn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,L(t,U(n)),c,H(o,t),void 0,i)}))]:[3,8];case 7:de.sent(),de.label=8;case 8:de.label=9;case 9:return[4,O(B,function(n){return e.logger.scope("transformer:".concat(p.type||"unknown")).error("Push failed",{error:n}),!1})(e,p,r,c,o,u)];case 10:return!1===(E=de.sent())?[2,{v:{event:null,respond:u}}]:Array.isArray(E)?(q=t.slice(t.indexOf(r)+1),[4,Promise.all(E.map(function(t){return _async_to_generator(function(){var r,a,s,l;return _ts_generator(this,function(f){switch(f.label){case 0:return r=t.event||c,a=H(o,"unknown"),t.next?0===(s=P(t.next,I(a,r))).length?[2,{event:r,respond:u}]:1===s.length?[2,(l=L(s[0],U(n))).length>0?Cn(e,n,l,r,a,u,i):{event:r,respond:u}]:[4,Promise.all(s.map(function(t){return O(Cn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,L(t,U(n)),r,H(a,t),void 0,i)}))]:[3,2];case 1:return[2,f.sent().map(function(e){return{event:e.event,respond:void 0}})];case 2:return[2,q.length>0?Cn(e,n,q,r,a,u,i):{event:r,respond:u}]}})})()}))]):[3,12];case 11:N=de.sent(),G=u,F=[],K=!0,V=!1,W=void 0;try{for(Y=N.flat()[Symbol.iterator]();!(K=($=Y.next()).done);K=!0)if(null!==(J=$.value))if(J&&"object"==(void 0===J?"undefined":_type_of(J))&&"event"in J){if((Z=J).respond&&(G=Z.respond),null===Z.event)continue;Array.isArray(Z.event)?(X=F).push.apply(X,_to_consumable_array(Z.event)):F.push(Z.event)}else F.push(J)}catch(e){V=!0,W=e}finally{try{K||null==Y.return||Y.return()}finally{if(V)throw W}}return[2,{v:0===F.length?{event:null,respond:G}:1===F.length?{event:F[0],respond:G}:{event:F,respond:G}}];case 12:return E&&"object"==(void 0===E?"undefined":_type_of(E))?(Q=E.event,ee=E.respond,ne=E.next,ee&&(u=ee),void 0===ne?[3,14]:0===(te=P(ne,I(o,c))).length?(Q&&(c=Q),[2,"continue"]):1===te.length?[2,{v:(re=L(te[0],U(n))).length>0?Cn(e,n,re,Q||c,o,u,i):(e.logger.warn("Branch target not found: ".concat(JSON.stringify(ne))),{event:null,respond:u})}]:(oe={},[4,Promise.all(te.map(function(t){return O(Cn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,L(t,U(n)),Q||c,H(o,t),void 0,i)}))])):[3,15];case 13:return[2,(oe.v=(de.sent(),{event:null,respond:void 0}),oe)];case 14:Q&&(c=Q),de.label=15;case 15:return b&&h&&T(h,b.key,c,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,E&&("object"!=(void 0===E?"undefined":_type_of(E))||E.next)||!se?[3,19]:1===(ce=P(p.config.next,I(o,c))).length?[2,{v:(ue=L(ce[0],U(n))).length>0?Cn(e,n,ue,c,o,u,i):{event:c,respond:u}}]:(le={},ce.length>1?[4,Promise.all(ce.map(function(t){return O(Cn,function(n){return e.logger.scope("transformer:many").error("many branch ".concat(t," failed"),{error:n}),{event:null,respond:void 0}})(e,n,L(t,U(n)),c,H(o,t),void 0,i)}))]:[3,17]);case 16:return de.sent(),fe={event:null,respond:void 0},[3,18];case 17:fe={event:c,respond:u},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:c,respond:u}]}})})()}var An,En=new WeakMap,qn=Object.freeze({batched:!0}),Pn=function(e){return _async_to_generator(function(){var n,t;return _ts_generator(this,function(r){return t=function(t,r){return function(t){return _async_to_generator(function(){var o,a,i;return _ts_generator(this,function(s){switch(s.label){case 0:return n?[3,2]:[4,Ce(_object_spread_props(_object_spread({},e),{run:null===(o=e.run)||void 0===o||o}))];case 1:a=s.sent(),n={collector:a.collector,elb:a.elb},s.label=2;case 2:return i=(null==r?void 0:r.eventName)||"ucEvent",window.dispatchEvent(new CustomEvent(i,{detail:t})),[2]}})})()}},[2,{get flow(){return n},trigger:t}]})})()},In=function(e,n){if(e&&"object"===(void 0===e?"undefined":_type_of(e)))return function(){n.window.dispatchEvent(new CustomEvent("ucEvent",{detail:e}))}},Mn=function(e){return _async_to_generator(function(){var n,t,a,i,s,c,u,l,f,d,p,_,v,g,y,h,b,m,w,k,j,x,O,S,C;return _ts_generator(this,function(A){switch(A.label){case 0:return _=e.config,v=e.env,g=v.elb,y=v.logger,h=null!==(n=v.window)&&void 0!==n?n:void 0!==globalThis.window?globalThis.window:void 0,b={eventName:null!==(t=null==_||null===(u=_.settings)||void 0===u?void 0:u.eventName)&&void 0!==t?t:"ucEvent",categoryMap:null!==(a=null==_||null===(l=_.settings)||void 0===l?void 0:l.categoryMap)&&void 0!==a?a:{},explicitOnly:null===(i=null==_||null===(f=_.settings)||void 0===f?void 0:f.explicitOnly)||void 0===i||i,apiVersion:null!==(s=null==_||null===(d=_.settings)||void 0===d?void 0:d.apiVersion)&&void 0!==s?s:"auto",v3EventName:null!==(c=null==_||null===(p=_.settings)||void 0===p?void 0:p.v3EventName)&&void 0!==c?c:"UC_UI_CMP_EVENT"},m={settings:b},w=[],h?(j={window:h,elb:g,settings:b,logger:y},"v2"!==(x=null!==(k=b.apiVersion)&&void 0!==k?k:"auto")?[3,1]:(w.push(r(j)),[3,8])):[3,8];case 1:return"v3"!==x?[3,3]:(O=w.push,[4,o(j)]);case 2:return O.apply(w,[A.sent()]),[3,8];case 3:return h.__ucCmp?(S=w.push,[4,o(j)]):[3,5];case 4:return S.apply(w,[A.sent()]),[3,8];case 5:return h.UC_UI?(w.push(r(j)),[3,8]):[3,6];case 6:return w.push(r(j)),C=w.push,[4,o(j)];case 7:C.apply(w,[A.sent()]),A.label=8;case 8:return[2,{type:"usercentrics",config:m,push:g,destroy:function(){return _async_to_generator(function(){return _ts_generator(this,function(e){return w.forEach(function(e){return e()}),[2]})})()}}]}})})()},Dn=Mn;return An=Me,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;Pe.call(e,o)||o===t||Ae(e,o,{get:function(){return n[o]},enumerable:!(r=Ee(n,o))||r.enumerable})},u=qe(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}(Ae({},"__esModule",{value:!0}),An)}();
|
package/dist/walkerOS.json
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walkeros/web-source-cmp-usercentrics",
|
|
3
3
|
"description": "Usercentrics consent management source for walkerOS",
|
|
4
|
-
"version": "4.1.0
|
|
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/collector": "4.1.0
|
|
49
|
-
"@walkeros/core": "4.1.0
|
|
49
|
+
"@walkeros/collector": "4.1.0",
|
|
50
|
+
"@walkeros/core": "4.1.0"
|
|
50
51
|
},
|
|
51
52
|
"repository": {
|
|
52
53
|
"url": "git+https://github.com/elbwalker/walkerOS.git",
|