@walkeros/cli 4.0.0-next-1777463920154 → 4.0.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.
@@ -0,0 +1,1020 @@
1
+ // src/config/validators.ts
2
+ import { isObject } from "@walkeros/core";
3
+ import { schemas } from "@walkeros/core/dev";
4
+ var { safeParseConfig } = schemas;
5
+ function isFlowConfig(data) {
6
+ const result = safeParseConfig(data);
7
+ return result.success;
8
+ }
9
+ function validateFlowConfig(data) {
10
+ if (isFlowConfig(data)) return data;
11
+ const result = safeParseConfig(data);
12
+ if (result.success) {
13
+ throw new Error("Invalid configuration: failed Flow.Json type guard.");
14
+ }
15
+ const errors = result.error.issues.map((issue) => {
16
+ const path = issue.path.length > 0 ? issue.path.map(String).join(".") : "root";
17
+ return ` - ${path}: ${issue.message}`;
18
+ }).join("\n");
19
+ throw new Error(`Invalid configuration:
20
+ ${errors}`);
21
+ }
22
+
23
+ // examples/flow-complete.json
24
+ var flow_complete_default = {
25
+ $schema: "https://walkeros.io/schema/flow/v4.json",
26
+ version: 4,
27
+ variables: {
28
+ currency: "EUR",
29
+ flowVersion: "1.0.0",
30
+ ga4MeasurementId: "$env.GA4_MEASUREMENT_ID:G-DEMO123456",
31
+ apiUrl: "$env.API_URL:http://localhost:8080/collect"
32
+ },
33
+ definitions: {
34
+ ga4ItemsLoop: {
35
+ loop: [
36
+ "nested",
37
+ {
38
+ condition: "$code:(value, context) => value.entity === 'product'",
39
+ map: {
40
+ item_id: "data.id",
41
+ item_name: "data.name",
42
+ price: "data.price",
43
+ quantity: {
44
+ key: "data.quantity",
45
+ value: 1
46
+ }
47
+ }
48
+ }
49
+ ]
50
+ },
51
+ metaContentsLoop: {
52
+ loop: [
53
+ "nested",
54
+ {
55
+ map: {
56
+ id: "data.id",
57
+ item_price: "data.price",
58
+ quantity: {
59
+ key: "data.quantity",
60
+ value: 1
61
+ }
62
+ }
63
+ }
64
+ ]
65
+ }
66
+ },
67
+ contract: {
68
+ default: {
69
+ description: "Web shop tracking contract",
70
+ globals: {
71
+ type: "object",
72
+ properties: {
73
+ environment: {
74
+ type: "string"
75
+ },
76
+ version: {
77
+ type: "string"
78
+ }
79
+ }
80
+ },
81
+ consent: {
82
+ type: "object",
83
+ required: ["functional"],
84
+ properties: {
85
+ functional: {
86
+ type: "boolean",
87
+ const: true
88
+ }
89
+ }
90
+ },
91
+ events: {
92
+ product: {
93
+ "*": {
94
+ description: "A product in the catalog",
95
+ properties: {
96
+ data: {
97
+ type: "object",
98
+ required: ["id", "name"],
99
+ properties: {
100
+ id: {
101
+ type: "string",
102
+ description: "Product SKU"
103
+ },
104
+ name: {
105
+ type: "string",
106
+ description: "Display name"
107
+ }
108
+ }
109
+ }
110
+ }
111
+ },
112
+ add: {
113
+ description: "Product added to cart",
114
+ properties: {
115
+ data: {
116
+ type: "object",
117
+ required: ["quantity"],
118
+ properties: {
119
+ quantity: {
120
+ type: "integer",
121
+ minimum: 1
122
+ }
123
+ }
124
+ }
125
+ }
126
+ }
127
+ },
128
+ order: {
129
+ complete: {
130
+ description: "Purchase completed",
131
+ properties: {
132
+ data: {
133
+ type: "object",
134
+ required: ["id", "total"],
135
+ properties: {
136
+ id: {
137
+ type: "string"
138
+ },
139
+ total: {
140
+ type: "number",
141
+ minimum: 0
142
+ }
143
+ }
144
+ }
145
+ }
146
+ }
147
+ }
148
+ }
149
+ }
150
+ },
151
+ flows: {
152
+ web: {
153
+ sources: {
154
+ browser: {
155
+ package: "@walkeros/web-source-browser",
156
+ primary: true,
157
+ config: {
158
+ settings: {
159
+ prefix: "data-elb",
160
+ pageview: true,
161
+ session: {
162
+ consent: {
163
+ marketing: true
164
+ }
165
+ },
166
+ elb: "elb",
167
+ elbLayer: true
168
+ }
169
+ }
170
+ },
171
+ dataLayer: {
172
+ package: "@walkeros/web-source-datalayer",
173
+ next: "enricher",
174
+ config: {
175
+ require: ["session"],
176
+ settings: {
177
+ name: "dataLayer",
178
+ prefix: "gtag"
179
+ },
180
+ mapping: {
181
+ add_to_cart: {
182
+ "*": {
183
+ name: "product add",
184
+ data: {
185
+ map: {
186
+ id: "items.0.item_id",
187
+ name: "items.0.item_name",
188
+ price: "items.0.price",
189
+ currency: "currency",
190
+ quantity: {
191
+ key: "items.0.quantity",
192
+ value: 1
193
+ }
194
+ }
195
+ }
196
+ }
197
+ },
198
+ purchase: {
199
+ "*": {
200
+ name: "order complete",
201
+ data: {
202
+ map: {
203
+ id: "transaction_id",
204
+ total: "value",
205
+ currency: "currency",
206
+ tax: "tax",
207
+ shipping: "shipping"
208
+ }
209
+ }
210
+ }
211
+ }
212
+ }
213
+ }
214
+ },
215
+ demo: {
216
+ package: "@walkeros/source-demo",
217
+ config: {
218
+ settings: {
219
+ events: [
220
+ {
221
+ name: "page view",
222
+ data: {
223
+ title: "Home",
224
+ path: "/"
225
+ },
226
+ delay: 0
227
+ },
228
+ {
229
+ name: "product view",
230
+ data: {
231
+ id: "SKU-001",
232
+ name: "Blue Shirt",
233
+ price: 49.99,
234
+ currency: "EUR",
235
+ category: "Clothing"
236
+ },
237
+ delay: 300
238
+ },
239
+ {
240
+ name: "product add",
241
+ data: {
242
+ id: "SKU-001",
243
+ name: "Blue Shirt",
244
+ price: 49.99,
245
+ currency: "EUR",
246
+ quantity: 2
247
+ },
248
+ delay: 600
249
+ },
250
+ {
251
+ name: "test debug",
252
+ data: {
253
+ message: "This should be ignored"
254
+ },
255
+ delay: 800
256
+ },
257
+ {
258
+ name: "order complete",
259
+ data: {
260
+ id: "ORD-123",
261
+ total: 149.97,
262
+ currency: "EUR",
263
+ tax: 12.5,
264
+ shipping: 5.99
265
+ },
266
+ user: {
267
+ email: "customer@example.com",
268
+ id: "U-456",
269
+ device: "d3v1c3",
270
+ session: "s3ss10n"
271
+ },
272
+ nested: [
273
+ {
274
+ entity: "product",
275
+ data: {
276
+ id: "SKU-001",
277
+ name: "Blue Shirt",
278
+ price: 49.99,
279
+ quantity: 2
280
+ }
281
+ },
282
+ {
283
+ entity: "product",
284
+ data: {
285
+ id: "SKU-002",
286
+ name: "Red Cap",
287
+ price: 24.99,
288
+ quantity: 1
289
+ }
290
+ }
291
+ ],
292
+ delay: 1e3
293
+ }
294
+ ]
295
+ }
296
+ }
297
+ }
298
+ },
299
+ transformers: {
300
+ enricher: {
301
+ code: {
302
+ type: "enricher",
303
+ push: "$code:(event) => ({ ...event, context: { ...event.context, enrichedAt: Date.now() } })"
304
+ },
305
+ next: "dataLayerValidator",
306
+ config: {}
307
+ },
308
+ dataLayerValidator: {
309
+ package: "@walkeros/transformer-validator",
310
+ config: {
311
+ settings: {
312
+ events: "$contract.default.events",
313
+ globals: "$contract.default.globals"
314
+ }
315
+ }
316
+ }
317
+ },
318
+ destinations: {
319
+ ga4: {
320
+ package: "@walkeros/web-destination-gtag",
321
+ config: {
322
+ require: ["consent", "user"],
323
+ consent: {
324
+ marketing: true
325
+ },
326
+ settings: {
327
+ ga4: {
328
+ measurementId: "$var.ga4MeasurementId"
329
+ }
330
+ },
331
+ mapping: {
332
+ page: {
333
+ view: {
334
+ name: "page_view",
335
+ data: {
336
+ map: {
337
+ page_title: "data.title",
338
+ page_location: "data.path"
339
+ }
340
+ }
341
+ }
342
+ },
343
+ product: {
344
+ view: {
345
+ name: "view_item",
346
+ data: {
347
+ map: {
348
+ currency: {
349
+ key: "data.currency",
350
+ value: "$var.currency"
351
+ },
352
+ value: "data.price",
353
+ items: {
354
+ loop: [
355
+ "this",
356
+ {
357
+ map: {
358
+ item_id: [
359
+ {
360
+ key: "data.sku"
361
+ },
362
+ {
363
+ key: "data.id"
364
+ }
365
+ ],
366
+ item_name: "data.name",
367
+ item_category: "data.category",
368
+ price: "data.price"
369
+ }
370
+ }
371
+ ]
372
+ }
373
+ }
374
+ }
375
+ },
376
+ add: {
377
+ name: "add_to_cart",
378
+ data: {
379
+ map: {
380
+ currency: {
381
+ key: "data.currency",
382
+ value: "$var.currency"
383
+ },
384
+ value: "data.price",
385
+ items: {
386
+ loop: [
387
+ "this",
388
+ {
389
+ map: {
390
+ item_id: "data.id",
391
+ item_name: "data.name",
392
+ quantity: {
393
+ key: "data.quantity",
394
+ value: 1
395
+ }
396
+ }
397
+ }
398
+ ]
399
+ }
400
+ }
401
+ }
402
+ }
403
+ },
404
+ order: {
405
+ complete: {
406
+ name: "purchase",
407
+ data: {
408
+ map: {
409
+ transaction_id: "data.id",
410
+ value: {
411
+ key: "data.total",
412
+ fn: "$code:(v) => Math.round(v * 100)"
413
+ },
414
+ currency: {
415
+ key: "data.currency",
416
+ value: "$var.currency"
417
+ },
418
+ tax: "data.tax",
419
+ shipping: "data.shipping",
420
+ items: "$def.ga4ItemsLoop"
421
+ }
422
+ }
423
+ }
424
+ },
425
+ test: {
426
+ "*": {
427
+ ignore: true
428
+ }
429
+ }
430
+ }
431
+ },
432
+ examples: {
433
+ "page-view": {
434
+ in: {
435
+ name: "page view",
436
+ data: {
437
+ title: "Home",
438
+ path: "/"
439
+ },
440
+ entity: "page",
441
+ action: "view"
442
+ },
443
+ mapping: {
444
+ name: "page_view",
445
+ data: {
446
+ map: {
447
+ page_title: "data.title",
448
+ page_location: "data.path"
449
+ }
450
+ }
451
+ },
452
+ out: [
453
+ "event",
454
+ "page_view",
455
+ {
456
+ page_title: "Home",
457
+ page_location: "/"
458
+ }
459
+ ]
460
+ },
461
+ "product-add": {
462
+ in: {
463
+ name: "product add",
464
+ data: {
465
+ id: "SKU-001",
466
+ name: "Blue Shirt",
467
+ price: 49.99,
468
+ currency: "EUR",
469
+ quantity: 2
470
+ },
471
+ entity: "product",
472
+ action: "add"
473
+ },
474
+ mapping: {
475
+ name: "add_to_cart",
476
+ data: {
477
+ map: {
478
+ currency: {
479
+ key: "data.currency",
480
+ value: "EUR"
481
+ },
482
+ value: "data.price",
483
+ items: {
484
+ loop: [
485
+ "this",
486
+ {
487
+ map: {
488
+ item_id: "data.id",
489
+ item_name: "data.name",
490
+ quantity: {
491
+ key: "data.quantity",
492
+ value: 1
493
+ }
494
+ }
495
+ }
496
+ ]
497
+ }
498
+ }
499
+ }
500
+ },
501
+ out: [
502
+ "event",
503
+ "add_to_cart",
504
+ {
505
+ currency: "EUR",
506
+ value: 49.99,
507
+ items: [
508
+ {
509
+ item_id: "SKU-001",
510
+ item_name: "Blue Shirt",
511
+ quantity: 2
512
+ }
513
+ ]
514
+ }
515
+ ]
516
+ },
517
+ "test-ignored": {
518
+ in: {
519
+ name: "test debug",
520
+ data: {
521
+ message: "This should be ignored"
522
+ },
523
+ entity: "test",
524
+ action: "debug"
525
+ },
526
+ out: false
527
+ }
528
+ }
529
+ },
530
+ api: {
531
+ package: "@walkeros/web-destination-api",
532
+ config: {
533
+ settings: {
534
+ url: "$var.apiUrl",
535
+ batch: 5,
536
+ transform: "$code:(data) => JSON.stringify(data)"
537
+ },
538
+ data: {
539
+ map: {
540
+ sent_at: {
541
+ fn: "$code:() => Date.now()"
542
+ },
543
+ flow_version: "$var.flowVersion"
544
+ }
545
+ },
546
+ mapping: {
547
+ order: {
548
+ complete: {
549
+ data: {
550
+ map: {
551
+ transaction_id: "data.id",
552
+ value: "data.total",
553
+ currency: "data.currency",
554
+ user_email: {
555
+ key: "user.email",
556
+ consent: {
557
+ marketing: true
558
+ }
559
+ },
560
+ items: "$def.ga4ItemsLoop"
561
+ }
562
+ }
563
+ }
564
+ },
565
+ test: {
566
+ "*": {
567
+ ignore: true
568
+ }
569
+ }
570
+ }
571
+ }
572
+ },
573
+ debug: {
574
+ code: {
575
+ type: "debug-logger",
576
+ push: "$code:(event, ctx) => { ctx.logger.info('[DEBUG]', event.name, event.data); }"
577
+ },
578
+ config: {
579
+ consent: {}
580
+ }
581
+ }
582
+ },
583
+ collector: {
584
+ consent: {
585
+ functional: true,
586
+ marketing: false
587
+ },
588
+ user: {
589
+ id: "anonymous"
590
+ },
591
+ globals: {
592
+ environment: "demo",
593
+ version: "$var.flowVersion"
594
+ },
595
+ custom: {
596
+ campaign: "flow-demo"
597
+ }
598
+ },
599
+ config: {
600
+ platform: "web",
601
+ settings: {
602
+ windowCollector: "collector",
603
+ windowElb: "elb"
604
+ },
605
+ bundle: {
606
+ packages: {
607
+ "@walkeros/collector": {},
608
+ "@walkeros/web-source-browser": {},
609
+ "@walkeros/web-source-datalayer": {},
610
+ "@walkeros/source-demo": {},
611
+ "@walkeros/web-destination-gtag": {},
612
+ "@walkeros/web-destination-api": {},
613
+ "@walkeros/transformer-validator": {}
614
+ }
615
+ }
616
+ }
617
+ },
618
+ server: {
619
+ variables: {
620
+ metaPixelId: "$env.META_PIXEL_ID:123456789012345",
621
+ metaAccessToken: "$env.META_ACCESS_TOKEN:demo_token"
622
+ },
623
+ stores: {
624
+ cache: {
625
+ package: "@walkeros/store-memory",
626
+ config: {
627
+ settings: {
628
+ maxSize: 10485760,
629
+ maxEntries: 1e3
630
+ }
631
+ }
632
+ }
633
+ },
634
+ sources: {
635
+ http: {
636
+ package: "@walkeros/server-source-express",
637
+ primary: true,
638
+ next: ["filter"],
639
+ cache: {
640
+ store: "cache",
641
+ rules: [
642
+ {
643
+ match: {
644
+ key: "ingest.method",
645
+ operator: "eq",
646
+ value: "GET"
647
+ },
648
+ key: ["ingest.method", "ingest.path"],
649
+ ttl: 300,
650
+ update: {
651
+ "headers.X-Cache": {
652
+ key: "cache.status"
653
+ }
654
+ }
655
+ }
656
+ ]
657
+ },
658
+ config: {
659
+ settings: {
660
+ path: "/collect",
661
+ port: 8080,
662
+ cors: true,
663
+ healthCheck: true
664
+ },
665
+ ingest: {
666
+ "context.ip": "ip",
667
+ "context.userAgent": "headers.user-agent",
668
+ "context.language": "headers.accept-language",
669
+ "context.referer": "headers.referer",
670
+ "context.anonymizedIp": {
671
+ key: "ip",
672
+ fn: "$code:(ip) => ip ? ip.replace(/\\.\\d+$/, '.0') : ''"
673
+ }
674
+ }
675
+ },
676
+ examples: {
677
+ "post-event": {
678
+ in: {
679
+ method: "POST",
680
+ path: "/collect",
681
+ headers: {
682
+ "content-type": "application/json"
683
+ },
684
+ body: {
685
+ name: "page view",
686
+ data: {
687
+ title: "Home",
688
+ url: "https://example.com"
689
+ }
690
+ }
691
+ },
692
+ out: {
693
+ name: "page view",
694
+ data: {
695
+ title: "Home",
696
+ url: "https://example.com"
697
+ },
698
+ entity: "page",
699
+ action: "view"
700
+ }
701
+ }
702
+ }
703
+ }
704
+ },
705
+ transformers: {
706
+ filter: {
707
+ code: {
708
+ type: "filter",
709
+ push: "$code:(event) => event.name.startsWith('internal_') || event.name.startsWith('debug_') ? false : event"
710
+ },
711
+ next: "fingerprint",
712
+ env: {
713
+ store: "$store.cache"
714
+ },
715
+ config: {},
716
+ examples: {
717
+ "passes-normal": {
718
+ in: {
719
+ name: "page view",
720
+ data: {
721
+ title: "Home"
722
+ },
723
+ entity: "page",
724
+ action: "view"
725
+ },
726
+ out: {
727
+ name: "page view",
728
+ data: {
729
+ title: "Home"
730
+ },
731
+ entity: "page",
732
+ action: "view"
733
+ }
734
+ },
735
+ "filters-internal": {
736
+ in: {
737
+ name: "internal_heartbeat",
738
+ data: {},
739
+ entity: "internal",
740
+ action: "heartbeat"
741
+ },
742
+ out: false
743
+ }
744
+ }
745
+ },
746
+ fingerprint: {
747
+ package: "@walkeros/server-transformer-fingerprint",
748
+ next: "serverValidator",
749
+ config: {
750
+ settings: {
751
+ fields: [
752
+ "context.ip",
753
+ "context.userAgent",
754
+ "context.language",
755
+ {
756
+ fn: "$code:() => new Date().toISOString().slice(0, 10)"
757
+ }
758
+ ],
759
+ output: "user.hash",
760
+ length: 16
761
+ }
762
+ }
763
+ },
764
+ serverValidator: {
765
+ package: "@walkeros/transformer-validator",
766
+ config: {
767
+ settings: {
768
+ format: true,
769
+ events: "$contract.default.events",
770
+ globals: "$contract.default.globals",
771
+ consent: "$contract.default.consent"
772
+ }
773
+ }
774
+ }
775
+ },
776
+ destinations: {
777
+ meta: {
778
+ package: "@walkeros/server-destination-meta",
779
+ before: ["fingerprint", "serverValidator"],
780
+ config: {
781
+ settings: {
782
+ pixelId: "$var.metaPixelId",
783
+ accessToken: "$var.metaAccessToken",
784
+ user_data: {
785
+ external_id: {
786
+ set: ["user.device", "user.session"]
787
+ }
788
+ }
789
+ },
790
+ policy: {
791
+ "user_data.em": {
792
+ key: "user.email",
793
+ consent: {
794
+ marketing: true
795
+ }
796
+ },
797
+ "user_data.external_id": "user.id",
798
+ "custom_data.server_processed": {
799
+ value: true
800
+ },
801
+ "custom_data.request_meta": {
802
+ map: {
803
+ ip: "context.ip",
804
+ ua: "context.userAgent"
805
+ }
806
+ }
807
+ },
808
+ mapping: {
809
+ page: {
810
+ view: {
811
+ name: "PageView",
812
+ data: "data"
813
+ }
814
+ },
815
+ product: {
816
+ view: {
817
+ name: "ViewContent",
818
+ data: {
819
+ map: {
820
+ value: "data.price",
821
+ currency: {
822
+ key: "data.currency",
823
+ value: "$var.currency"
824
+ },
825
+ content_type: {
826
+ value: "product"
827
+ },
828
+ content_ids: {
829
+ set: ["data.id"]
830
+ }
831
+ }
832
+ }
833
+ },
834
+ add: {
835
+ name: "AddToCart",
836
+ data: {
837
+ map: {
838
+ value: "data.price",
839
+ currency: {
840
+ key: "data.currency",
841
+ value: "$var.currency"
842
+ },
843
+ content_type: {
844
+ value: "product"
845
+ },
846
+ contents: {
847
+ loop: [
848
+ "this",
849
+ {
850
+ map: {
851
+ id: "data.id",
852
+ quantity: {
853
+ key: "data.quantity",
854
+ value: 1
855
+ }
856
+ }
857
+ }
858
+ ]
859
+ }
860
+ }
861
+ }
862
+ }
863
+ },
864
+ order: {
865
+ complete: {
866
+ name: "Purchase",
867
+ data: {
868
+ map: {
869
+ value: "data.total",
870
+ currency: {
871
+ key: "data.currency",
872
+ value: "$var.currency"
873
+ },
874
+ order_id: "data.id",
875
+ contents: "$def.metaContentsLoop"
876
+ }
877
+ }
878
+ }
879
+ },
880
+ test: {
881
+ "*": {
882
+ ignore: true
883
+ }
884
+ },
885
+ "*": {
886
+ click: {
887
+ name: "CustomEvent",
888
+ data: "data"
889
+ }
890
+ }
891
+ }
892
+ },
893
+ examples: {
894
+ purchase: {
895
+ in: {
896
+ name: "order complete",
897
+ data: {
898
+ id: "ORD-123",
899
+ total: 149.97,
900
+ currency: "EUR"
901
+ },
902
+ entity: "order",
903
+ action: "complete"
904
+ },
905
+ mapping: {
906
+ name: "Purchase",
907
+ data: {
908
+ map: {
909
+ value: "data.total",
910
+ currency: {
911
+ key: "data.currency",
912
+ value: "EUR"
913
+ },
914
+ order_id: "data.id"
915
+ }
916
+ }
917
+ },
918
+ out: {
919
+ data: [
920
+ {
921
+ event_name: "Purchase",
922
+ custom_data: {
923
+ value: 149.97,
924
+ currency: "EUR",
925
+ order_id: "ORD-123"
926
+ }
927
+ }
928
+ ]
929
+ }
930
+ }
931
+ }
932
+ },
933
+ demo: {
934
+ package: "@walkeros/destination-demo",
935
+ config: {
936
+ settings: {
937
+ name: "Server Events",
938
+ values: ["name", "data", "nested", "user", "consent", "context"]
939
+ }
940
+ }
941
+ }
942
+ },
943
+ collector: {
944
+ consent: {
945
+ functional: true
946
+ },
947
+ globals: {
948
+ environment: "demo",
949
+ version: "$var.flowVersion",
950
+ platform: "server",
951
+ startedAt: "$code:Date.now()"
952
+ }
953
+ },
954
+ config: {
955
+ platform: "server",
956
+ bundle: {
957
+ packages: {
958
+ "@walkeros/core": {
959
+ path: "../../core"
960
+ },
961
+ "@walkeros/collector": {
962
+ path: "../../collector"
963
+ },
964
+ "@walkeros/server-source-express": {},
965
+ "@walkeros/server-destination-meta": {},
966
+ "@walkeros/destination-demo": {},
967
+ "@walkeros/transformer-validator": {},
968
+ "@walkeros/server-transformer-fingerprint": {},
969
+ "@walkeros/store-memory": {
970
+ path: "../../stores/memory"
971
+ }
972
+ }
973
+ }
974
+ }
975
+ }
976
+ }
977
+ };
978
+
979
+ // examples/flow-simple.json
980
+ var flow_simple_default = {
981
+ version: 4,
982
+ flows: {
983
+ default: {
984
+ destinations: {
985
+ demo: {
986
+ package: "@walkeros/destination-demo",
987
+ config: {
988
+ settings: {
989
+ name: "Simple Demo",
990
+ values: ["name", "data", "user", "consent"]
991
+ }
992
+ }
993
+ }
994
+ },
995
+ config: {
996
+ platform: "web",
997
+ bundle: {
998
+ packages: {
999
+ "@walkeros/collector": {
1000
+ version: "latest",
1001
+ imports: ["startFlow"]
1002
+ },
1003
+ "@walkeros/destination-demo": {
1004
+ version: "latest"
1005
+ }
1006
+ }
1007
+ }
1008
+ }
1009
+ }
1010
+ }
1011
+ };
1012
+
1013
+ // src/examples/index.ts
1014
+ var flowComplete = validateFlowConfig(flow_complete_default);
1015
+ var flowSimple = validateFlowConfig(flow_simple_default);
1016
+ export {
1017
+ flowComplete,
1018
+ flowSimple
1019
+ };
1020
+ //# sourceMappingURL=index.js.map