@walkeros/cli 4.8.1 → 4.8.3-next-1793115089237

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.
Files changed (51) hide show
  1. package/CHANGELOG.md +115 -3
  2. package/README.md +2 -2
  3. package/dist/cli.js +4149 -4149
  4. package/dist/dev.d.ts +51 -3
  5. package/dist/dev.js +186 -0
  6. package/dist/dev.js.map +1 -1
  7. package/dist/examples/README.md +12 -1
  8. package/dist/examples/contracts/app.json +261 -0
  9. package/dist/examples/contracts/base.json +708 -0
  10. package/dist/examples/contracts/ecommerce.json +963 -0
  11. package/dist/examples/contracts/leadgen.json +240 -0
  12. package/dist/examples/contracts/publisher.json +372 -0
  13. package/dist/examples/contracts/saas.json +229 -0
  14. package/dist/examples/contracts/travel.json +234 -0
  15. package/dist/examples/customers/README.md +4 -1
  16. package/dist/examples/event.json +1 -1
  17. package/dist/examples/flow-complete.json +107 -130
  18. package/dist/examples/flow-complete.md +12 -10
  19. package/dist/examples/flow-order-complete.json +1 -1
  20. package/dist/examples/flow.json +1 -1
  21. package/dist/examples/index.d.ts +34 -4
  22. package/dist/examples/index.js +128 -139
  23. package/dist/examples/index.js.map +1 -1
  24. package/dist/examples/shared/README.md +4 -0
  25. package/dist/index.d.ts +63 -223
  26. package/dist/index.js +572 -992
  27. package/dist/index.js.map +1 -1
  28. package/dist/validate.d.ts +1 -1
  29. package/dist/validate.js +337 -204
  30. package/dist/validate.js.map +1 -1
  31. package/examples/README.md +12 -1
  32. package/examples/contracts/app.json +261 -0
  33. package/examples/contracts/base.json +708 -0
  34. package/examples/contracts/ecommerce.json +963 -0
  35. package/examples/contracts/leadgen.json +240 -0
  36. package/examples/contracts/publisher.json +372 -0
  37. package/examples/contracts/saas.json +229 -0
  38. package/examples/contracts/travel.json +234 -0
  39. package/examples/customers/README.md +4 -1
  40. package/examples/event.json +1 -1
  41. package/examples/flow-complete.json +107 -130
  42. package/examples/flow-complete.md +12 -10
  43. package/examples/flow-order-complete.json +1 -1
  44. package/examples/flow.json +1 -1
  45. package/examples/shared/README.md +4 -0
  46. package/package.json +30 -30
  47. package/src/telemetry/flow.json +42 -34
  48. package/dist/examples/test.html +0 -43
  49. package/dist/examples/web-serve.js +0 -25503
  50. package/examples/test.html +0 -43
  51. package/examples/web-serve.js +0 -25503
@@ -256,7 +256,7 @@ curl -I http://localhost:8080/walker.js
256
256
 
257
257
  ```bash
258
258
  walkeros validate packages/cli/examples/flow-complete.json -f web --path destinations.collect
259
- walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order complete","data":{"id":"ORD-100","total":149.8,"currency":"EUR"}}' --simulate destination.ga4
259
+ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order complete","data":{"id":"ORD-100","value":149.8,"currency":"EUR"}}' --simulate destination.ga4
260
260
  ```
261
261
 
262
262
  - The second line prints `mapping: none (skipped before mapping)`: the event has
@@ -294,8 +294,8 @@ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order
294
294
  key reads a path from the event.
295
295
  - `value-fn` at
296
296
  `/flows/web/destinations/ga4/config/mapping/order/complete/data/map/value/fn`:
297
- fn computes a value from the event, here the total rounded to cents. fn and
298
- key are alternatives: next to a key, fn never runs.
297
+ fn computes a value from the event, here the order value rounded to cents.
298
+ fn and key are alternatives: next to a key, fn never runs.
299
299
  - `value-loop` at
300
300
  `/flows/web/destinations/ga4/config/mapping/order/complete/data/map/items/loop`:
301
301
  loop turns nested products into GA4 items.
@@ -314,7 +314,7 @@ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order
314
314
  value is a constant.
315
315
  - `rule-condition` at
316
316
  `/flows/web/destinations/ga4/config/mapping/order/complete/condition`: A
317
- rule condition skips the rule, here for orders without a total.
317
+ rule condition skips the rule, here for orders without a value.
318
318
  - `rule-settings` at
319
319
  `/flows/server/destinations/piwikpro/config/mapping/order/complete/settings`:
320
320
  Rule settings are per-event package options: the Piwik PRO goal for orders.
@@ -332,7 +332,7 @@ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order
332
332
  - **CLI:** the GA4 purchase, with consent and one product:
333
333
 
334
334
  ```bash
335
- walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order complete","data":{"id":"ORD-100","total":149.8,"currency":"EUR"},"nested":[{"entity":"product","data":{"id":"SKU-1","name":"Linen shirt","price":74.9,"quantity":2}}],"consent":{"functional":true}}' --simulate destination.ga4
335
+ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order complete","data":{"id":"ORD-100","value":149.8,"currency":"EUR"},"nested":[{"entity":"product","data":{"id":"SKU-1","name":"Linen shirt","price":74.9,"quantity":2}}],"consent":{"functional":true}}' --simulate destination.ga4
336
336
  ```
337
337
 
338
338
  - Output:
@@ -349,7 +349,8 @@ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order
349
349
  - **Features:**
350
350
  - `cmp-category-map` at
351
351
  `/flows/web/sources/usercentrics/config/settings/categoryMap`: categoryMap
352
- maps CMP categories onto exactly the consent keys the contract names.
352
+ maps CMP categories onto exactly the consent keys the contract names; folded
353
+ in, essential never grants functional alone.
353
354
  - `cmp-explicit-only` at
354
355
  `/flows/web/sources/usercentrics/config/settings/explicitOnly`: explicitOnly
355
356
  publishes consent only after a real decision, so consent.functional present
@@ -389,8 +390,9 @@ walkeros push packages/cli/examples/flow-complete.json -f web -e '{"name":"order
389
390
  - `pubsub-before` at `/flows/server/destinations/pubsub/before`: A conditional
390
391
  next on Pub/Sub runs pseudonymize only when an email exists; other events
391
392
  pass untouched.
392
- - `ga4-como` at `/flows/web/destinations/ga4/config/settings/como`: como turns
393
- walker consent into Google Consent Mode calls.
393
+ - `ga4-como` at `/flows/web/destinations/ga4/config/settings/como`: como maps
394
+ this flow's consent keys to Google Consent Mode: functional to
395
+ analytics_storage, marketing to the ad parameters.
394
396
  - **Consent keys:** there are no collector consent defaults, only granted keys
395
397
  travel. `consent.functional` is set only by Usercentrics with `explicitOnly`,
396
398
  so its presence means the user decided.
@@ -636,7 +638,7 @@ walkeros push packages/cli/examples/flow-complete.json -f server -e '{"name":"pr
636
638
 
637
639
  ```bash
638
640
  walkeros validate packages/cli/examples/flow-complete.json -t contract
639
- walkeros push packages/cli/examples/flow-complete.json -f server -e '{"name":"order complete","data":{"id":"ORD-100","total":149.8,"currency":"EUR"},"globals":{"language":"en"},"consent":{"functional":true}}' --simulate transformer.validate
641
+ walkeros push packages/cli/examples/flow-complete.json -f server -e '{"name":"order complete","data":{"id":"ORD-100","value":149.8,"currency":"EUR"},"globals":{"language":"en"},"consent":{"functional":true}}' --simulate transformer.validate
640
642
  ```
641
643
 
642
644
  - **MCP:** `flow_validate`, `flow_simulate`.
@@ -760,7 +762,7 @@ walkeros push packages/cli/examples/flow-complete.json -f server -e '{"name":"pa
760
762
  (`user.ltv: 420`, `user.segment: "loyal"`):
761
763
 
762
764
  ```bash
763
- walkeros push packages/cli/examples/flow-complete.json -f server -e '{"name":"order complete","data":{"id":"ORD-100","total":149.8,"currency":"EUR"},"user":{"id":"cust-42"}}' --simulate transformer.loadUser
765
+ walkeros push packages/cli/examples/flow-complete.json -f server -e '{"name":"order complete","data":{"id":"ORD-100","value":149.8,"currency":"EUR"},"user":{"id":"cust-42"}}' --simulate transformer.loadUser
764
766
  ```
765
767
 
766
768
  - Build the web bundle straight into the shared folder (web builds ignore root
@@ -20,7 +20,7 @@
20
20
  "data": {
21
21
  "map": {
22
22
  "transaction_id": "data.id",
23
- "value": "data.total",
23
+ "value": "data.value",
24
24
  "currency": "data.currency",
25
25
  "tax": "data.tax",
26
26
  "shipping": "data.shipping",
@@ -21,7 +21,7 @@
21
21
  "data": {
22
22
  "map": {
23
23
  "transaction_id": "data.id",
24
- "value": "data.total",
24
+ "value": "data.value",
25
25
  "currency": "data.currency",
26
26
  "tax": "data.tax",
27
27
  "shipping": "data.shipping",
@@ -1688,10 +1688,6 @@ declare const teaching: {
1688
1688
  docs: {
1689
1689
  page: string;
1690
1690
  }[];
1691
- example: {
1692
- step: string;
1693
- name: string;
1694
- };
1695
1691
  cli: string[];
1696
1692
  };
1697
1693
  'file-headers': {
@@ -2002,6 +1998,15 @@ declare const flowCompleteCoverage: {
2002
1998
  init: {
2003
1999
  excluded: string;
2004
2000
  };
2001
+ pushBatch: {
2002
+ excluded: string;
2003
+ };
2004
+ on: {
2005
+ excluded: string;
2006
+ };
2007
+ destroy: {
2008
+ excluded: string;
2009
+ };
2005
2010
  };
2006
2011
  source: {
2007
2012
  package: "step-package";
@@ -2082,6 +2087,8 @@ declare const flowCompleteCoverage: {
2082
2087
  mapping: "example-mapping";
2083
2088
  out: "example-out";
2084
2089
  command: "example-command";
2090
+ outcome: Excluded;
2091
+ respond: Excluded;
2085
2092
  };
2086
2093
  sourceConfig: {
2087
2094
  settings: "step-settings";
@@ -2152,6 +2159,9 @@ declare const flowCompleteCoverage: {
2152
2159
  state: "state-set";
2153
2160
  init: Excluded;
2154
2161
  disabled: Excluded;
2162
+ timeout: {
2163
+ excluded: string;
2164
+ };
2155
2165
  mock: Excluded;
2156
2166
  chainMocks: Excluded;
2157
2167
  mapping: "ga4-consent-map";
@@ -2179,6 +2189,9 @@ declare const flowCompleteCoverage: {
2179
2189
  queueMax: {
2180
2190
  excluded: string;
2181
2191
  };
2192
+ consentDenied: {
2193
+ excluded: string;
2194
+ };
2182
2195
  name: Excluded;
2183
2196
  release: {
2184
2197
  excluded: string;
@@ -2377,6 +2390,15 @@ declare const flowCompleteManifest: {
2377
2390
  init: {
2378
2391
  excluded: string;
2379
2392
  };
2393
+ pushBatch: {
2394
+ excluded: string;
2395
+ };
2396
+ on: {
2397
+ excluded: string;
2398
+ };
2399
+ destroy: {
2400
+ excluded: string;
2401
+ };
2380
2402
  };
2381
2403
  source: {
2382
2404
  package: "step-package";
@@ -2457,6 +2479,8 @@ declare const flowCompleteManifest: {
2457
2479
  mapping: "example-mapping";
2458
2480
  out: "example-out";
2459
2481
  command: "example-command";
2482
+ outcome: Excluded;
2483
+ respond: Excluded;
2460
2484
  };
2461
2485
  sourceConfig: {
2462
2486
  settings: "step-settings";
@@ -2527,6 +2551,9 @@ declare const flowCompleteManifest: {
2527
2551
  state: "state-set";
2528
2552
  init: Excluded;
2529
2553
  disabled: Excluded;
2554
+ timeout: {
2555
+ excluded: string;
2556
+ };
2530
2557
  mock: Excluded;
2531
2558
  chainMocks: Excluded;
2532
2559
  mapping: "ga4-consent-map";
@@ -2554,6 +2581,9 @@ declare const flowCompleteManifest: {
2554
2581
  queueMax: {
2555
2582
  excluded: string;
2556
2583
  };
2584
+ consentDenied: {
2585
+ excluded: string;
2586
+ };
2557
2587
  name: Excluded;
2558
2588
  release: {
2559
2589
  excluded: string;