@snowplow/snowtype-core 0.1.1 → 0.2.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.
Files changed (59) hide show
  1. package/dist/index.js +593 -10
  2. package/package.json +13 -3
  3. package/dist/index.d.ts +0 -21
  4. package/dist/json-schema-to-jsdoc/index.d.ts +0 -1
  5. package/dist/json-schema-to-jsdoc/index.js +0 -231
  6. package/dist/languages/go.d.ts +0 -18
  7. package/dist/languages/go.js +0 -61
  8. package/dist/languages/index.d.ts +0 -40
  9. package/dist/languages/index.js +0 -42
  10. package/dist/languages/javascript.d.ts +0 -2
  11. package/dist/languages/javascript.js +0 -117
  12. package/dist/languages/kotlin.d.ts +0 -1
  13. package/dist/languages/kotlin.js +0 -98
  14. package/dist/languages/precompiled-templates/go/go.d.ts +0 -10
  15. package/dist/languages/precompiled-templates/go/go.js +0 -110
  16. package/dist/languages/precompiled-templates/index.d.ts +0 -124
  17. package/dist/languages/precompiled-templates/index.js +0 -61
  18. package/dist/languages/precompiled-templates/javascript/browser-tracker.d.ts +0 -10
  19. package/dist/languages/precompiled-templates/javascript/browser-tracker.js +0 -107
  20. package/dist/languages/precompiled-templates/javascript/javascript-tracker.d.ts +0 -10
  21. package/dist/languages/precompiled-templates/javascript/javascript-tracker.js +0 -107
  22. package/dist/languages/precompiled-templates/javascript/node-tracker.d.ts +0 -10
  23. package/dist/languages/precompiled-templates/javascript/node-tracker.js +0 -107
  24. package/dist/languages/precompiled-templates/kotlin/kotlin.d.ts +0 -57
  25. package/dist/languages/precompiled-templates/kotlin/kotlin.js +0 -569
  26. package/dist/languages/precompiled-templates/swift/swift.d.ts +0 -46
  27. package/dist/languages/precompiled-templates/swift/swift.js +0 -474
  28. package/dist/languages/precompiled-templates/typescript/browser-tracker.d.ts +0 -10
  29. package/dist/languages/precompiled-templates/typescript/browser-tracker.js +0 -87
  30. package/dist/languages/precompiled-templates/typescript/node-tracker.d.ts +0 -11
  31. package/dist/languages/precompiled-templates/typescript/node-tracker.js +0 -97
  32. package/dist/languages/swift.d.ts +0 -17
  33. package/dist/languages/swift.js +0 -91
  34. package/dist/languages/types.d.ts +0 -70
  35. package/dist/languages/types.js +0 -2
  36. package/dist/languages/typescript.d.ts +0 -2
  37. package/dist/languages/typescript.js +0 -64
  38. package/dist/quicktype/generator.d.ts +0 -11
  39. package/dist/quicktype/generator.js +0 -99
  40. package/dist/quicktype/handlebars-helpers.d.ts +0 -1
  41. package/dist/quicktype/handlebars-helpers.js +0 -29
  42. package/dist/quicktype/index.d.ts +0 -43
  43. package/dist/quicktype/index.js +0 -39
  44. package/dist/quicktype/metadata.d.ts +0 -15
  45. package/dist/quicktype/metadata.js +0 -27
  46. package/dist/quicktype/quicktype-utils.d.ts +0 -59
  47. package/dist/quicktype/quicktype-utils.js +0 -140
  48. package/dist/quicktype/renderer-helpers.d.ts +0 -8
  49. package/dist/quicktype/renderer-helpers.js +0 -38
  50. package/dist/quicktype/templates.d.ts +0 -12
  51. package/dist/quicktype/templates.js +0 -70
  52. package/dist/quicktype/utils.d.ts +0 -8
  53. package/dist/quicktype/utils.js +0 -27
  54. package/dist/test/index.test.d.ts +0 -1
  55. package/dist/test/index.test.js +0 -33
  56. package/dist/test/mocks/input.d.ts +0 -285
  57. package/dist/test/mocks/input.js +0 -425
  58. package/dist/utils/index.d.ts +0 -6
  59. package/dist/utils/index.js +0 -10
package/dist/index.js CHANGED
@@ -1,10 +1,593 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generate = void 0;
4
- const languages_1 = require("./languages");
5
- const FILE_HEADER = ["Automatically generated by Snowtype"];
6
- function generate(input) {
7
- const selectedLanguageGenerator = languages_1.supportedLanguages.find((lang) => lang.id === input.language);
8
- return selectedLanguageGenerator === null || selectedLanguageGenerator === void 0 ? void 0 : selectedLanguageGenerator.generate(input.schemas, input.dataProducts, Object.assign({ header: FILE_HEADER, outputFilename: "snowplow", tracker: input.tracker }, {}));
9
- }
10
- exports.generate = generate;
1
+ "use strict";var nl=Object.create;var U=Object.defineProperty;var ll=Object.getOwnPropertyDescriptor;var el=Object.getOwnPropertyNames;var ol=Object.getPrototypeOf,al=Object.prototype.hasOwnProperty;var O=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),tl=(l,n)=>{for(var r in n)U(l,r,{get:n[r],enumerable:!0})},an=(l,n,r,f)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of el(n))!al.call(l,a)&&a!==r&&U(l,a,{get:()=>n[a],enumerable:!(f=ll(n,a))||f.enumerable});return l};var g=(l,n,r)=>(r=l!=null?nl(ol(l)):{},an(n||!l||!l.__esModule?U(r,"default",{value:l,enumerable:!0}):r,l)),rl=l=>an(U({},"__esModule",{value:!0}),l);var bn=O((le,Pn)=>{"use strict";Pn.exports={id:{language:"javascript",tracker:"@snowplow/browser-tracker"},1:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.hooks.helperMissing,o="function",u=l.escapeExpression,i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return`/**
2
+ * Track a Snowplow event for `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:5,column:30},end:{line:5,column:42}}}):t))+`.
3
+ * `+u((t=(t=i(r,"description")||(n!=null?i(n,"description"):n))!=null?t:s,typeof t===o?t.call(e,{name:"description",hash:{},data:a,loc:{start:{line:6,column:3},end:{line:6,column:18}}}):t))+`
4
+ * @param { `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:7,column:12},end:{line:7,column:24}}}):t))+" & Timestamp & Context } "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:7,column:49},end:{line:7,column:70}}}))+" - Attributes for "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:7,column:88},end:{line:7,column:100}}}):t))+`.
5
+ * @param {string[]} [trackers] - Tracker names to send the event to.
6
+ */
7
+ export function track`+u((t=(t=i(r,"functionName")||(n!=null?i(n,"functionName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"functionName",hash:{},data:a,loc:{start:{line:10,column:21},end:{line:10,column:37}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:10,column:38},end:{line:10,column:59}}}))+`, trackers){
8
+ const { context, timestamp, ...data } = `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:11,column:42},end:{line:11,column:63}}}))+`;
9
+ trackSelfDescribingEvent({
10
+ event: {
11
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:14,column:15},end:{line:14,column:26}}}):t))+`',
12
+ data
13
+ },
14
+ context,
15
+ timestamp,
16
+ }, trackers);
17
+ }
18
+
19
+ /**
20
+ * Creates a Snowplow `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:23,column:22},end:{line:23,column:34}}}):t))+` entity.
21
+ * @param { `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:24,column:12},end:{line:24,column:24}}}):t))+" } "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:24,column:27},end:{line:24,column:48}}}))+" - Attributes for "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:24,column:66},end:{line:24,column:78}}}):t))+`.
22
+ */
23
+ export function create`+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:26,column:22},end:{line:26,column:34}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:26,column:35},end:{line:26,column:56}}}))+`){
24
+ return {
25
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:28,column:13},end:{line:28,column:24}}}):t))+`',
26
+ data: `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:29,column:10},end:{line:29,column:31}}}))+`
27
+ }
28
+ }
29
+ `},3:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lambda,c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`
30
+ `+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(4,a,0),inverse:l.noop,data:a,loc:{start:{line:36,column:0},end:{line:43,column:9}}}))!=null?t:"")+`
31
+ /**
32
+ * Typedef for `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:46,column:15},end:{line:46,column:23}}}):e))+` event specification contexts.
33
+ * @typedef {object} `+i(m(n!=null?c(n,"event"):n,n))+`Contexts
34
+ * @property {(`+((t=c(r,"join").call(s,n!=null?c(n,"entities"):n," | ","Context",{name:"join",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:48,column:15},end:{line:48,column:63}}}))!=null?t:"")+")[]} [context] Contexts to include in the "+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:48,column:105},end:{line:48,column:113}}}):e))+` event specification.
35
+ */
36
+
37
+ /**
38
+ * Tracks a `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:52,column:12},end:{line:52,column:20}}}):e))+` event specification.
39
+ * @param { `+i(m(n!=null?c(n,"event"):n,n))+" & Timestamp & "+i(m(n!=null?c(n,"event"):n,n))+"Contexts } "+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:53,column:66},end:{line:53,column:83}}}))+" - Attributes for "+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:53,column:101},end:{line:53,column:109}}}):e))+` event specification.
40
+ * @param {string[]} [trackers] - Tracker names to send the event specification to.
41
+ */
42
+ export function track`+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:56,column:21},end:{line:56,column:29}}}):e))+"("+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:56,column:30},end:{line:56,column:47}}}))+`, trackers){
43
+ track`+i(m(n!=null?c(n,"event"):n,n))+"("+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:57,column:22},end:{line:57,column:39}}}))+`, trackers);
44
+ }
45
+ `},4:function(l,n,r,f,a){var t=l.lambda,e=l.escapeExpression;return`/**
46
+ * Typedef for a `+e(t(n,n))+` entity context.
47
+ * @typedef {object} `+e(t(n,n))+`Context
48
+ * @property {string} schema The schema of the context.
49
+ * @property { `+e(t(n,n))+` } data The data to send for the context.
50
+ */
51
+ `},6:function(l,n,r,f,a){return""},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a){var t,e,s,o=n??(l.nullContext||{}),u=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]},i=`import { trackSelfDescribingEvent } from '@snowplow/browser-tracker';
52
+
53
+ `;return t=(e=(e=u(r,"type")||(n!=null?u(n,"type"):n))!=null?e:l.hooks.helperMissing,s={name:"type",hash:{},fn:l.program(1,a,0),inverse:l.noop,data:a,loc:{start:{line:3,column:0},end:{line:32,column:9}}},typeof e=="function"?e.call(o,s):e),u(r,"type")||(t=l.hooks.blockHelperMissing.call(n,t,s)),t!=null&&(i+=t),i+`
54
+ `+((t=u(r,"each").call(o,n!=null?u(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:34,column:0},end:{line:59,column:9}}}))!=null?t:"")},useData:!0}});var jn=O((ee,On)=>{"use strict";On.exports={id:{language:"javascript",tracker:"@snowplow/javascript-tracker"},1:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.hooks.helperMissing,o="function",u=l.escapeExpression,i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return`/**
55
+ * Track a Snowplow event for `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:3,column:30},end:{line:3,column:42}}}):t))+`.
56
+ * `+u((t=(t=i(r,"description")||(n!=null?i(n,"description"):n))!=null?t:s,typeof t===o?t.call(e,{name:"description",hash:{},data:a,loc:{start:{line:4,column:3},end:{line:4,column:18}}}):t))+`
57
+ * @param { `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:5,column:12},end:{line:5,column:24}}}):t))+" & Timestamp & Context } "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:5,column:49},end:{line:5,column:70}}}))+" - Attributes for "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:5,column:88},end:{line:5,column:100}}}):t))+`.
58
+ * @param {string[]} [trackers] - Tracker names to send the event to.
59
+ */
60
+ function track`+u((t=(t=i(r,"functionName")||(n!=null?i(n,"functionName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"functionName",hash:{},data:a,loc:{start:{line:8,column:14},end:{line:8,column:30}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:8,column:31},end:{line:8,column:52}}}))+`, trackers){
61
+ const trackerNames = (trackers && trackers.length) ? ':' + trackers.join(';') : '';
62
+ const { context, timestamp, ...data } = `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:10,column:42},end:{line:10,column:63}}}))+`;
63
+ window.snowplow('trackSelfDescribingEvent' + trackerNames, {
64
+ event: {
65
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:13,column:15},end:{line:13,column:26}}}):t))+`',
66
+ data
67
+ },
68
+ context,
69
+ timestamp,
70
+ });
71
+ }
72
+
73
+ /**
74
+ * Creates a Snowplow `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:22,column:22},end:{line:22,column:34}}}):t))+` entity.
75
+ * @param { `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:23,column:12},end:{line:23,column:24}}}):t))+" } "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:23,column:27},end:{line:23,column:48}}}))+" - Attributes for "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:23,column:66},end:{line:23,column:78}}}):t))+`.
76
+ */
77
+ function create`+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:25,column:15},end:{line:25,column:27}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:25,column:28},end:{line:25,column:49}}}))+`){
78
+ return {
79
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:27,column:13},end:{line:27,column:24}}}):t))+`',
80
+ data: `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:28,column:10},end:{line:28,column:31}}}))+`
81
+ }
82
+ }
83
+ `},3:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.lambda,u=l.escapeExpression,i=l.hooks.helperMissing,m="function",c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`
84
+ `+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(4,a,0),inverse:l.noop,data:a,loc:{start:{line:35,column:0},end:{line:42,column:9}}}))!=null?t:"")+`
85
+ /**
86
+ * Typedef for a `+u(o(n!=null?c(n,"event"):n,n))+`Contexts
87
+ * @typedef {object} `+u(o(n!=null?c(n,"event"):n,n))+`Contexts
88
+ * @property {(`+((t=c(r,"join").call(s,n!=null?c(n,"entities"):n," | ","Context",{name:"join",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:47,column:15},end:{line:47,column:63}}}))!=null?t:"")+")[]} [context] Contexts to include in the "+u((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:47,column:105},end:{line:47,column:113}}}):e))+` event specification.
89
+ */
90
+
91
+ /**
92
+ * Tracks a `+u((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:51,column:12},end:{line:51,column:20}}}):e))+` event specification.
93
+ * @param { `+u(o(n!=null?c(n,"event"):n,n))+" & Timestamp & "+u(o(n!=null?c(n,"event"):n,n))+"Contexts } "+u((c(r,"startLow")||n&&c(n,"startLow")||i).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:52,column:66},end:{line:52,column:83}}}))+" - Attributes for "+u((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:52,column:101},end:{line:52,column:109}}}):e))+` event specification.
94
+ * @param {string[]} [trackers] - Tracker names to send the event specification to.
95
+ */
96
+ function track`+u((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:55,column:14},end:{line:55,column:22}}}):e))+"("+u((c(r,"startLow")||n&&c(n,"startLow")||i).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:55,column:23},end:{line:55,column:40}}}))+`, trackers){
97
+ track`+u(o(n!=null?c(n,"event"):n,n))+"("+u((c(r,"startLow")||n&&c(n,"startLow")||i).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:56,column:22},end:{line:56,column:39}}}))+`, trackers);
98
+ }
99
+ `},4:function(l,n,r,f,a){var t=l.lambda,e=l.escapeExpression;return`/**
100
+ * Typedef for a `+e(t(n,n))+`Context
101
+ * @typedef {object} `+e(t(n,n))+`Context
102
+ * @property {string} schema The schema of the context.
103
+ * @property { `+e(t(n,n))+` } data The data to send for the context.
104
+ */
105
+ `},6:function(l,n,r,f,a){return""},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a){var t,e,s,o=n??(l.nullContext||{}),u=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]},i="";return t=(e=(e=u(r,"type")||(n!=null?u(n,"type"):n))!=null?e:l.hooks.helperMissing,s={name:"type",hash:{},fn:l.program(1,a,0),inverse:l.noop,data:a,loc:{start:{line:1,column:0},end:{line:31,column:9}}},typeof e=="function"?e.call(o,s):e),u(r,"type")||(t=l.hooks.blockHelperMissing.call(n,t,s)),t!=null&&(i+=t),i+`
106
+ `+((t=u(r,"each").call(o,n!=null?u(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:33,column:0},end:{line:58,column:9}}}))!=null?t:"")},useData:!0}});var Tn=O((oe,Sn)=>{"use strict";Sn.exports={id:{language:"javascript",tracker:"@snowplow/node-tracker"},1:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.hooks.helperMissing,o="function",u=l.escapeExpression,i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return`/**
107
+ * Track a Snowplow event for `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:10,column:30},end:{line:10,column:42}}}):t))+`.
108
+ * `+u((t=(t=i(r,"description")||(n!=null?i(n,"description"):n))!=null?t:s,typeof t===o?t.call(e,{name:"description",hash:{},data:a,loc:{start:{line:11,column:3},end:{line:11,column:18}}}):t))+`
109
+ * @param {Tracker} tracker - Tracker to send the event to.
110
+ * @param { `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:13,column:12},end:{line:13,column:24}}}):t))+" & Timestamp & Context } "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:13,column:49},end:{line:13,column:70}}}))+" - Attributes for "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:13,column:88},end:{line:13,column:100}}}):t))+`.
111
+ */
112
+ export function track`+u((t=(t=i(r,"functionName")||(n!=null?i(n,"functionName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"functionName",hash:{},data:a,loc:{start:{line:15,column:21},end:{line:15,column:37}}}):t))+"(tracker, "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:15,column:47},end:{line:15,column:68}}}))+`){
113
+ const { context, timestamp, ...data } = `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:16,column:42},end:{line:16,column:63}}}))+`;
114
+ tracker.track(buildSelfDescribingEvent({
115
+ event: {
116
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:19,column:15},end:{line:19,column:26}}}):t))+`',
117
+ data
118
+ }
119
+ }), context, timestamp);
120
+ }
121
+
122
+ /**
123
+ * Creates a Snowplow `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:26,column:22},end:{line:26,column:34}}}):t))+` entity.
124
+ * @param { `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:27,column:12},end:{line:27,column:24}}}):t))+" } "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:27,column:27},end:{line:27,column:48}}}))+" - Attributes for "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:27,column:66},end:{line:27,column:78}}}):t))+`.
125
+ */
126
+ export function create`+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:29,column:22},end:{line:29,column:34}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:29,column:35},end:{line:29,column:56}}}))+`){
127
+ return {
128
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:31,column:13},end:{line:31,column:24}}}):t))+`',
129
+ data: `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:32,column:10},end:{line:32,column:31}}}))+`
130
+ }
131
+ }
132
+ `},3:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lambda,c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`
133
+ `+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(4,a,0),inverse:l.noop,data:a,loc:{start:{line:39,column:0},end:{line:46,column:9}}}))!=null?t:"")+`
134
+ /**
135
+ * Typedef for `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:49,column:15},end:{line:49,column:23}}}):e))+` event specification contexts.
136
+ * @typedef {object} `+i(m(n!=null?c(n,"event"):n,n))+`Contexts
137
+ * @property {(`+((t=c(r,"join").call(s,n!=null?c(n,"entities"):n," | ","Context",{name:"join",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:51,column:15},end:{line:51,column:63}}}))!=null?t:"")+")[]} [context] Contexts to include in the "+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:51,column:105},end:{line:51,column:113}}}):e))+` event specification.
138
+ */
139
+
140
+ /**
141
+ * Tracks a `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:55,column:12},end:{line:55,column:20}}}):e))+` event specification.
142
+ * @param {Tracker} tracker - Tracker to send the tracking event specification to.
143
+ * @param { `+i(m(n!=null?c(n,"event"):n,n))+" & Timestamp & "+i(m(n!=null?c(n,"event"):n,n))+"Contexts } "+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:57,column:66},end:{line:57,column:83}}}))+" - Attributes for "+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:57,column:101},end:{line:57,column:109}}}):e))+` event specification.
144
+ */
145
+ export function track`+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:59,column:21},end:{line:59,column:29}}}):e))+"(tracker, "+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:59,column:39},end:{line:59,column:56}}}))+`){
146
+ track`+i(m(n!=null?c(n,"event"):n,n))+"(tracker, "+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:60,column:31},end:{line:60,column:48}}}))+`);
147
+ }
148
+ `},4:function(l,n,r,f,a){var t=l.lambda,e=l.escapeExpression;return`/**
149
+ * Typedef for a `+e(t(n,n))+` entity context.
150
+ * @typedef {object} `+e(t(n,n))+`Context
151
+ * @property {string} schema The schema of the context.
152
+ * @property { `+e(t(n,n))+` } data The data to send for the context.
153
+ */
154
+ `},6:function(l,n,r,f,a){return""},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a){var t,e,s,o=n??(l.nullContext||{}),u=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]},i=`import { buildSelfDescribingEvent } from '@snowplow/node-tracker';
155
+
156
+ /**
157
+ * Typedef for a Node.js tracker object.
158
+ * @typedef {object} Tracker
159
+ */
160
+
161
+ `;return t=(e=(e=u(r,"type")||(n!=null?u(n,"type"):n))!=null?e:l.hooks.helperMissing,s={name:"type",hash:{},fn:l.program(1,a,0),inverse:l.noop,data:a,loc:{start:{line:8,column:0},end:{line:35,column:9}}},typeof e=="function"?e.call(o,s):e),u(r,"type")||(t=l.hooks.blockHelperMissing.call(n,t,s)),t!=null&&(i+=t),i+`
162
+ `+((t=u(r,"each").call(o,n!=null?u(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:37,column:0},end:{line:62,column:9}}}))!=null?t:"")},useData:!0}});var Cn=O((ae,Nn)=>{"use strict";Nn.exports={id:{language:"typescript",tracker:"@snowplow/browser-tracker"},1:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.hooks.helperMissing,o="function",u=l.escapeExpression,i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return`/**
163
+ * Track a Snowplow event for `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:5,column:30},end:{line:5,column:42}}}):t))+`.
164
+ * `+u((t=(t=i(r,"description")||(n!=null?i(n,"description"):n))!=null?t:s,typeof t===o?t.call(e,{name:"description",hash:{},data:a,loc:{start:{line:6,column:3},end:{line:6,column:18}}}):t))+`
165
+ */
166
+ export function track`+u((t=(t=i(r,"functionName")||(n!=null?i(n,"functionName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"functionName",hash:{},data:a,loc:{start:{line:8,column:21},end:{line:8,column:37}}}):t))+"<T extends {} = any>("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:8,column:58},end:{line:8,column:79}}}))+": "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:8,column:81},end:{line:8,column:93}}}):t))+` & CommonEventProperties<T>, trackers?: string[]){
167
+ const { context, timestamp, ...data } = `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:9,column:42},end:{line:9,column:63}}}))+`;
168
+ trackSelfDescribingEvent({
169
+ event: {
170
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:12,column:15},end:{line:12,column:26}}}):t))+`',
171
+ data
172
+ },
173
+ context,
174
+ timestamp,
175
+ }, trackers);
176
+ }
177
+
178
+ /**
179
+ * Creates a Snowplow `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:21,column:22},end:{line:21,column:34}}}):t))+` entity.
180
+ */
181
+ export function create`+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:23,column:22},end:{line:23,column:34}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:23,column:35},end:{line:23,column:56}}}))+": "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:23,column:58},end:{line:23,column:70}}}):t))+`){
182
+ return {
183
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:25,column:13},end:{line:25,column:24}}}):t))+`',
184
+ data: `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:26,column:10},end:{line:26,column:31}}}))+`
185
+ }
186
+ }
187
+ `},3:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lambda,c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`/**
188
+ * Tracks a `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:33,column:12},end:{line:33,column:20}}}):e))+` event specification.
189
+ */
190
+ export function track`+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:35,column:21},end:{line:35,column:29}}}):e))+"("+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:35,column:30},end:{line:35,column:47}}}))+": "+i(m(n!=null?c(n,"event"):n,n))+" & CommonEventProperties"+((t=c(r,"if").call(s,n!=null?c(n,"entities"):n,{name:"if",hash:{},fn:l.program(4,a,0),inverse:l.noop,data:a,loc:{start:{line:35,column:87},end:{line:35,column:155}}}))!=null?t:"")+`, trackers?: string[]){
191
+ track`+i(m(n!=null?c(n,"event"):n,n))+((t=c(r,"if").call(s,n!=null?c(n,"entities"):n,{name:"if",hash:{},fn:l.program(4,a,0),inverse:l.noop,data:a,loc:{start:{line:36,column:21},end:{line:36,column:89}}}))!=null?t:"")+"("+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:36,column:90},end:{line:36,column:107}}}))+`, trackers);
192
+ }
193
+ `},4:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return"<"+((t=e(r,"join").call(n??(l.nullContext||{}),n!=null?e(n,"entities"):n," | ",{name:"join",hash:{},fn:l.program(5,a,0),inverse:l.noop,data:a,loc:{start:{line:35,column:109},end:{line:35,column:147}}}))!=null?t:"")+">"},5:function(l,n,r,f,a){return""},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a){var t,e,s,o=n??(l.nullContext||{}),u=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]},i=`import { trackSelfDescribingEvent, CommonEventProperties } from '@snowplow/browser-tracker';
194
+
195
+ `;return t=(e=(e=u(r,"type")||(n!=null?u(n,"type"):n))!=null?e:l.hooks.helperMissing,s={name:"type",hash:{},fn:l.program(1,a,0),inverse:l.noop,data:a,loc:{start:{line:3,column:0},end:{line:29,column:9}}},typeof e=="function"?e.call(o,s):e),u(r,"type")||(t=l.hooks.blockHelperMissing.call(n,t,s)),t!=null&&(i+=t),i+`
196
+ `+((t=u(r,"each").call(o,n!=null?u(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:31,column:0},end:{line:38,column:9}}}))!=null?t:"")},useData:!0}});var En=O((te,Ln)=>{"use strict";Ln.exports={id:{language:"typescript",tracker:"@snowplow/node-tracker"},1:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.hooks.helperMissing,o="function",u=l.escapeExpression,i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return`/**
197
+ * Track a Snowplow event for `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:12,column:30},end:{line:12,column:42}}}):t))+`.
198
+ * `+u((t=(t=i(r,"description")||(n!=null?i(n,"description"):n))!=null?t:s,typeof t===o?t.call(e,{name:"description",hash:{},data:a,loc:{start:{line:13,column:3},end:{line:13,column:18}}}):t))+`
199
+ */
200
+ export function track`+u((t=(t=i(r,"functionName")||(n!=null?i(n,"functionName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"functionName",hash:{},data:a,loc:{start:{line:15,column:21},end:{line:15,column:37}}}):t))+"<T extends {} = any>(tracker: Tracker, "+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:15,column:76},end:{line:15,column:97}}}))+": "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:15,column:99},end:{line:15,column:111}}}):t))+` & CommonEventProperties<T>){
201
+ const { context, timestamp, ...data } = `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:16,column:42},end:{line:16,column:63}}}))+`;
202
+ tracker.track(buildSelfDescribingEvent({
203
+ event: {
204
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:19,column:15},end:{line:19,column:26}}}):t))+`',
205
+ data
206
+ }
207
+ }), context, timestamp);
208
+ }
209
+
210
+ /**
211
+ * Creates a Snowplow `+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:26,column:22},end:{line:26,column:34}}}):t))+` entity.
212
+ */
213
+ export function create`+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:28,column:22},end:{line:28,column:34}}}):t))+"("+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:28,column:35},end:{line:28,column:56}}}))+": "+u((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===o?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:28,column:58},end:{line:28,column:70}}}):t))+`){
214
+ return {
215
+ schema: '`+u((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===o?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:30,column:13},end:{line:30,column:24}}}):t))+`',
216
+ data: `+u((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:31,column:10},end:{line:31,column:31}}}))+`
217
+ }
218
+ }
219
+ `},3:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lambda,c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`/**
220
+ * Tracks a `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:38,column:12},end:{line:38,column:20}}}):e))+` event specification.
221
+ */
222
+ export function track`+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:40,column:21},end:{line:40,column:29}}}):e))+"(tracker: Tracker, "+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:40,column:48},end:{line:40,column:65}}}))+": "+i(m(n!=null?c(n,"event"):n,n))+" & CommonEventProperties"+((t=c(r,"if").call(s,n!=null?c(n,"entities"):n,{name:"if",hash:{},fn:l.program(4,a,0),inverse:l.noop,data:a,loc:{start:{line:40,column:105},end:{line:40,column:173}}}))!=null?t:"")+`){
223
+ track`+i(m(n!=null?c(n,"event"):n,n))+((t=c(r,"if").call(s,n!=null?c(n,"entities"):n,{name:"if",hash:{},fn:l.program(7,a,0),inverse:l.noop,data:a,loc:{start:{line:41,column:21},end:{line:41,column:90}}}))!=null?t:"")+"(tracker, "+i((c(r,"startLow")||n&&c(n,"startLow")||o).call(s,a&&c(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:41,column:100},end:{line:41,column:117}}}))+`);
224
+ }
225
+ `},4:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return"<"+((t=e(r,"join").call(n??(l.nullContext||{}),n!=null?e(n,"entities"):n," | ",{name:"join",hash:{},fn:l.program(5,a,0),inverse:l.noop,data:a,loc:{start:{line:40,column:127},end:{line:40,column:165}}}))!=null?t:"")+">"},5:function(l,n,r,f,a){return""},7:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return"<"+((t=e(r,"join").call(n??(l.nullContext||{}),n!=null?e(n,"entities"):n," | ",{name:"join",hash:{},fn:l.program(5,a,0),inverse:l.noop,data:a,loc:{start:{line:41,column:43},end:{line:41,column:81}}}))!=null?t:"")+"> "},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a){var t,e,s,o=n??(l.nullContext||{}),u=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]},i=`import { buildSelfDescribingEvent, SelfDescribingJson, Timestamp, Tracker } from '@snowplow/node-tracker';
226
+
227
+ interface CommonEventProperties<T = Record<string, unknown>> {
228
+ /** Add context to an event by setting an Array of Self Describing JSON */
229
+ context?: Array<SelfDescribingJson<T>> | null;
230
+ /** Set the true timestamp or overwrite the device sent timestamp on an event */
231
+ timestamp?: Timestamp | null;
232
+ }
233
+
234
+ `;return t=(e=(e=u(r,"type")||(n!=null?u(n,"type"):n))!=null?e:l.hooks.helperMissing,s={name:"type",hash:{},fn:l.program(1,a,0),inverse:l.noop,data:a,loc:{start:{line:10,column:0},end:{line:34,column:9}}},typeof e=="function"?e.call(o,s):e),u(r,"type")||(t=l.hooks.blockHelperMissing.call(n,t,s)),t!=null&&(i+=t),i+`
235
+ `+((t=u(r,"each").call(o,n!=null?u(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:36,column:0},end:{line:43,column:9}}}))!=null?t:"")},useData:!0}});var An=O((re,Mn)=>{"use strict";Mn.exports={id:{language:"kotlin",tracker:"snowplow-android-tracker"},1:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return(t=e(r,"each").call(n??(l.nullContext||{}),n!=null?e(n,"properties"):n,{name:"each",hash:{},fn:l.program(2,a,0),inverse:l.noop,data:a,loc:{start:{line:10,column:0},end:{line:20,column:9}}}))!=null?t:""},2:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.lookupProperty||function(o,u){if(Object.prototype.hasOwnProperty.call(o,u))return o[u]};return((t=s(r,"if").call(e,n!=null?s(n,"description"):n,{name:"if",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:11,column:0},end:{line:14,column:7}}}))!=null?t:"")+((t=s(r,"if").call(e,n!=null?s(n,"isNullable"):n,{name:"if",hash:{},fn:l.program(5,a,0),inverse:l.program(8,a,0),data:a,loc:{start:{line:15,column:0},end:{line:19,column:7}}}))!=null?t:"")},3:function(l,n,r,f,a){var t,e,s=l.lookupProperty||function(o,u){if(Object.prototype.hasOwnProperty.call(o,u))return o[u]};return`
236
+ /** `+((t=(e=(e=s(r,"description")||(n!=null?s(n,"description"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(n??(l.nullContext||{}),{name:"description",hash:{},data:a,loc:{start:{line:13,column:8},end:{line:13,column:25}}}):e))!=null?t:"")+` */
237
+ `},5:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return" var "+l.escapeExpression((e=(e=i(r,"name")||(n!=null?i(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:16,column:8},end:{line:16,column:16}}}):e))+": "+((t=(e=(e=i(r,"type")||(n!=null?i(n,"type"):n))!=null?e:o,typeof e===u?e.call(s,{name:"type",hash:{},data:a,loc:{start:{line:16,column:18},end:{line:16,column:28}}}):e))!=null?t:"")+" = null"+((t=i(r,"unless").call(s,a&&i(a,"last"),{name:"unless",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:16,column:35},end:{line:16,column:65}}}))!=null?t:"")+`
238
+ `},6:function(l,n,r,f,a){return", "},8:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return" var "+l.escapeExpression((e=(e=i(r,"name")||(n!=null?i(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:18,column:8},end:{line:18,column:16}}}):e))+": "+((t=(e=(e=i(r,"type")||(n!=null?i(n,"type"):n))!=null?e:o,typeof e===u?e.call(s,{name:"type",hash:{},data:a,loc:{start:{line:18,column:18},end:{line:18,column:28}}}):e))!=null?t:"")+((t=i(r,"unless").call(s,a&&i(a,"last"),{name:"unless",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:18,column:28},end:{line:18,column:58}}}))!=null?t:"")+`
239
+ `},10:function(l,n,r,f,a,t,e){var s,o,u=n??(l.nullContext||{}),i=l.hooks.helperMissing,m="function",c=l.escapeExpression,y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+c((o=(o=y(r,"indent")||(n!=null?y(n,"indent"):n))!=null?o:i,typeof o===m?o.call(u,{name:"indent",hash:{},data:a,loc:{start:{line:25,column:8},end:{line:25,column:18}}}):o))+`val payload = HashMap<String, Any?>()
240
+ `+((s=y(r,"each").call(u,n!=null?y(n,"properties"):n,{name:"each",hash:{},fn:l.program(11,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:26,column:0},end:{line:71,column:9}}}))!=null?s:"")+" "+c((o=(o=y(r,"indent")||(n!=null?y(n,"indent"):n))!=null?o:i,typeof o===m?o.call(u,{name:"indent",hash:{},data:a,loc:{start:{line:72,column:8},end:{line:72,column:18}}}):o))+`return payload
241
+ `},11:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isNullable"):n,{name:"if",hash:{},fn:l.program(12,a,0,t,e),inverse:l.program(41,a,0,t,e),data:a,loc:{start:{line:27,column:0},end:{line:70,column:7}}}))!=null?s:""},12:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isOptional"):n,{name:"if",hash:{},fn:l.program(13,a,0,t,e),inverse:l.program(27,a,0,t,e),data:a,loc:{start:{line:28,column:0},end:{line:55,column:7}}}))!=null?s:""},13:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfEnums"):n,{name:"if",hash:{},fn:l.program(14,a,0,t,e),inverse:l.program(16,a,0,t,e),data:a,loc:{start:{line:29,column:0},end:{line:40,column:7}}}))!=null?s:""},14:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:31,column:21},end:{line:31,column:29}}}):o))+'?.let { payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:31,column:46},end:{line:31,column:60}}}):o))!=null?s:"")+`"] = it.map { e -> e.string } }
242
+ `},16:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfObjects"):n,{name:"if",hash:{},fn:l.program(17,a,0,t,e),inverse:l.program(19,a,0,t,e),data:a,loc:{start:{line:32,column:0},end:{line:40,column:0}}}))!=null?s:""},17:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:33,column:21},end:{line:33,column:29}}}):o))+'?.let { payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:33,column:46},end:{line:33,column:60}}}):o))!=null?s:"")+`"] = it.map { e -> e.payload } }
243
+ `},19:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isEnum"):n,{name:"if",hash:{},fn:l.program(20,a,0,t,e),inverse:l.program(22,a,0,t,e),data:a,loc:{start:{line:34,column:0},end:{line:40,column:0}}}))!=null?s:""},20:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:35,column:21},end:{line:35,column:29}}}):o))+'?.let { payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:35,column:46},end:{line:35,column:60}}}):o))!=null?s:"")+`"] = it.string }
244
+ `},22:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isObject"):n,{name:"if",hash:{},fn:l.program(23,a,0,t,e),inverse:l.program(25,a,0,t,e),data:a,loc:{start:{line:36,column:0},end:{line:40,column:0}}}))!=null?s:""},23:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:37,column:21},end:{line:37,column:29}}}):o))+'?.let { payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:37,column:46},end:{line:37,column:60}}}):o))!=null?s:"")+`"] = it.payload }
245
+ `},25:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:39,column:21},end:{line:39,column:29}}}):o))+'?.let { payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:39,column:46},end:{line:39,column:60}}}):o))!=null?s:"")+`"] = it }
246
+ `},27:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfEnums"):n,{name:"if",hash:{},fn:l.program(28,a,0,t,e),inverse:l.program(30,a,0,t,e),data:a,loc:{start:{line:43,column:0},end:{line:54,column:7}}}))!=null?s:""},28:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:45,column:30},end:{line:45,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:45,column:49},end:{line:45,column:57}}}):o))+`?.map { e -> e.string }
247
+ `},30:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfObjects"):n,{name:"if",hash:{},fn:l.program(31,a,0,t,e),inverse:l.program(33,a,0,t,e),data:a,loc:{start:{line:46,column:0},end:{line:54,column:0}}}))!=null?s:""},31:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:47,column:30},end:{line:47,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:47,column:49},end:{line:47,column:57}}}):o))+`?.map { e -> e.payload }
248
+ `},33:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isEnum"):n,{name:"if",hash:{},fn:l.program(34,a,0,t,e),inverse:l.program(36,a,0,t,e),data:a,loc:{start:{line:48,column:0},end:{line:54,column:0}}}))!=null?s:""},34:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:49,column:30},end:{line:49,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:49,column:49},end:{line:49,column:57}}}):o))+`?.string
249
+ `},36:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isObject"):n,{name:"if",hash:{},fn:l.program(37,a,0,t,e),inverse:l.program(39,a,0,t,e),data:a,loc:{start:{line:50,column:0},end:{line:54,column:0}}}))!=null?s:""},37:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:51,column:30},end:{line:51,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:51,column:49},end:{line:51,column:57}}}):o))+`?.payload
250
+ `},39:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:53,column:30},end:{line:53,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:53,column:49},end:{line:53,column:57}}}):o))+`
251
+ `},41:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfEnums"):n,{name:"if",hash:{},fn:l.program(42,a,0,t,e),inverse:l.program(44,a,0,t,e),data:a,loc:{start:{line:58,column:0},end:{line:69,column:7}}}))!=null?s:""},42:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:60,column:30},end:{line:60,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:60,column:49},end:{line:60,column:57}}}):o))+`.map { e -> e.string }
252
+ `},44:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfObjects"):n,{name:"if",hash:{},fn:l.program(45,a,0,t,e),inverse:l.program(47,a,0,t,e),data:a,loc:{start:{line:61,column:0},end:{line:69,column:0}}}))!=null?s:""},45:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:62,column:30},end:{line:62,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:62,column:49},end:{line:62,column:57}}}):o))+`.map { e -> e.payload }
253
+ `},47:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isEnum"):n,{name:"if",hash:{},fn:l.program(48,a,0,t,e),inverse:l.program(50,a,0,t,e),data:a,loc:{start:{line:63,column:0},end:{line:69,column:0}}}))!=null?s:""},48:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:64,column:30},end:{line:64,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:64,column:49},end:{line:64,column:57}}}):o))+`.string
254
+ `},50:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isObject"):n,{name:"if",hash:{},fn:l.program(51,a,0,t,e),inverse:l.program(39,a,0,t,e),data:a,loc:{start:{line:65,column:0},end:{line:69,column:0}}}))!=null?s:""},51:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:66,column:30},end:{line:66,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:66,column:49},end:{line:66,column:57}}}):o))+`.payload
255
+ `},53:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return`/**
256
+ `+((t=m(r,"if").call(s,n!=null?m(n,"description"):n,{name:"if",hash:{},fn:l.program(54,a,0),inverse:l.noop,data:a,loc:{start:{line:78,column:0},end:{line:80,column:7}}}))!=null?t:"")+"* Schema: `"+i((e=(e=m(r,"igluUrl")||(n!=null?m(n,"igluUrl"):n))!=null?e:o,typeof e===u?e.call(s,{name:"igluUrl",hash:{},data:a,loc:{start:{line:81,column:11},end:{line:81,column:22}}}):e))+"`\n*\n* Example:\n* ```kotlin\n* val data = "+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:85,column:13},end:{line:85,column:25}}}):e))+`(
257
+ `+((t=m(r,"each").call(s,n!=null?m(n,"properties"):n,{name:"each",hash:{},fn:l.program(56,a,0),inverse:l.noop,data:a,loc:{start:{line:86,column:0},end:{line:88,column:9}}}))!=null?t:"")+`* )
258
+ * // Track as an event
259
+ * Snowplow.defaultTracker?.track(data.toEvent())
260
+ * // Add as an entity to another event
261
+ * val event = ScreenView(name = "Product")
262
+ * event.entities.add(data.toEntity())
263
+ * Snowplow.defaultTracker?.track(event)
264
+ * \`\`\`
265
+ */
266
+ data class `+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:98,column:11},end:{line:98,column:23}}}):e))+`(
267
+ `+((t=l.invokePartial(m(f,"classProperties"),n,{name:"classProperties",data:a,helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+`) {
268
+ private val schema = "`+i((e=(e=m(r,"igluUrl")||(n!=null?m(n,"igluUrl"):n))!=null?e:o,typeof e===u?e.call(s,{name:"igluUrl",hash:{},data:a,loc:{start:{line:101,column:26},end:{line:101,column:37}}}):e))+`"
269
+
270
+ private val payload: Map<String, Any?>
271
+ get() {
272
+ `+((t=l.invokePartial(m(f,"createAndReturnPayloadDictionary"),n,{name:"createAndReturnPayloadDictionary",data:a,indent:" ",helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+` }
273
+
274
+ /** Creates an event instance to be tracked by the tracker. */
275
+ fun toEvent() : SelfDescribing {
276
+ return SelfDescribing(schema, payload)
277
+ }
278
+
279
+ /** Creates an entity that can be added to events. */
280
+ fun toEntity() : SelfDescribingJson {
281
+ return SelfDescribingJson(schema, payload)
282
+ }
283
+ }
284
+
285
+ `},54:function(l,n,r,f,a){var t,e,s=l.lookupProperty||function(o,u){if(Object.prototype.hasOwnProperty.call(o,u))return o[u]};return"* "+((t=(e=(e=s(r,"description")||(n!=null?s(n,"description"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(n??(l.nullContext||{}),{name:"description",hash:{},data:a,loc:{start:{line:79,column:2},end:{line:79,column:19}}}):e))!=null?t:"")+`
286
+ `},56:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return"* "+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:87,column:6},end:{line:87,column:14}}}):e))+" = "+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:87,column:17},end:{line:87,column:25}}}):e))+((t=m(r,"unless").call(s,a&&m(a,"last"),{name:"unless",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:87,column:25},end:{line:87,column:55}}}))!=null?t:"")+`
287
+ `},58:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return`
288
+
289
+ `+((t=o(r,"if").call(s,n!=null?o(n,"description"):n,{name:"if",hash:{},fn:l.program(59,a,0),inverse:l.noop,data:a,loc:{start:{line:124,column:0},end:{line:128,column:7}}}))!=null?t:"")+"data class "+l.escapeExpression((e=(e=o(r,"typeName")||(n!=null?o(n,"typeName"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:129,column:11},end:{line:129,column:23}}}):e))+`(
290
+ `+((t=l.invokePartial(o(f,"classProperties"),n,{name:"classProperties",data:a,helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+`) {
291
+ val payload: Map<String, Any?>
292
+ get() {
293
+ `+((t=l.invokePartial(o(f,"createAndReturnPayloadDictionary"),n,{name:"createAndReturnPayloadDictionary",data:a,indent:" ",helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+` }
294
+ }
295
+ `},59:function(l,n,r,f,a){var t,e,s=l.lookupProperty||function(o,u){if(Object.prototype.hasOwnProperty.call(o,u))return o[u]};return`/**
296
+ * `+((t=(e=(e=s(r,"description")||(n!=null?s(n,"description"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(n??(l.nullContext||{}),{name:"description",hash:{},data:a,loc:{start:{line:126,column:2},end:{line:126,column:19}}}):e))!=null?t:"")+`
297
+ */
298
+ `},61:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return`
299
+ `+((t=o(r,"if").call(s,n!=null?o(n,"description"):n,{name:"if",hash:{},fn:l.program(59,a,0),inverse:l.noop,data:a,loc:{start:{line:141,column:0},end:{line:145,column:7}}}))!=null?t:"")+"enum class "+l.escapeExpression((e=(e=o(r,"name")||(n!=null?o(n,"name"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:146,column:11},end:{line:146,column:19}}}):e))+`(val string: String) {
300
+ `+((t=o(r,"each").call(s,n!=null?o(n,"cases"):n,{name:"each",hash:{},fn:l.program(62,a,0),inverse:l.noop,data:a,loc:{start:{line:147,column:0},end:{line:149,column:9}}}))!=null?t:"")+`}
301
+ `},62:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return" "+l.escapeExpression((e=(e=i(r,"name")||(n!=null?i(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:148,column:4},end:{line:148,column:12}}}):e))+'("'+((t=(e=(e=i(r,"jsonName")||(n!=null?i(n,"jsonName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"jsonName",hash:{},data:a,loc:{start:{line:148,column:14},end:{line:148,column:28}}}):e))!=null?t:"")+'")'+((t=i(r,"unless").call(s,a&&i(a,"last"),{name:"unless",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:148,column:30},end:{line:148,column:60}}}))!=null?t:"")+`
302
+ `},64:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lambda,c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`
303
+ /**
304
+ * Creates an event with entities for a `+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:157,column:39},end:{line:157,column:47}}}):e))+" event specification.\n* Example:\n* ```kotlin\n* val data = "+i(m(n!=null?c(n,"event"):n,n))+`(...)
305
+ `+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(65,a,0),inverse:l.noop,data:a,loc:{start:{line:161,column:0},end:{line:163,column:9}}}))!=null?t:"")+"* val event = data.to"+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:164,column:21},end:{line:164,column:29}}}):e))+"("+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(67,a,0),inverse:l.noop,data:a,loc:{start:{line:164,column:30},end:{line:164,column:105}}}))!=null?t:"")+`)
306
+ * // Track as an event
307
+ * Snowplow.defaultTracker?.track(event)
308
+ * \`\`\`
309
+ */
310
+ fun `+i(m(n!=null?c(n,"event"):n,n))+".to"+i((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:o,typeof e===u?e.call(s,{name:"key",hash:{},data:a,loc:{start:{line:169,column:21},end:{line:169,column:29}}}):e))+"("+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(69,a,0),inverse:l.noop,data:a,loc:{start:{line:169,column:30},end:{line:169,column:117}}}))!=null?t:"")+`) : SelfDescribing {
311
+ val event = toEvent()
312
+ `+((t=c(r,"each").call(s,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(71,a,0),inverse:l.noop,data:a,loc:{start:{line:171,column:0},end:{line:173,column:9}}}))!=null?t:"")+` return event
313
+ }
314
+ `},65:function(l,n,r,f,a){var t=l.lambda,e=l.escapeExpression;return"* val data"+e(t(n,n))+" = "+e(t(n,n))+`(...)
315
+ `},67:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return"data"+l.escapeExpression(l.lambda(n,n))+((t=e(r,"unless").call(n??(l.nullContext||{}),a&&e(a,"last"),{name:"unless",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:164,column:66},end:{line:164,column:96}}}))!=null?t:"")},69:function(l,n,r,f,a){var t,e=l.lambda,s=l.escapeExpression,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return"entity"+s(e(n,n))+": "+s(e(n,n))+((t=o(r,"unless").call(n??(l.nullContext||{}),a&&o(a,"last"),{name:"unless",hash:{},fn:l.program(6,a,0),inverse:l.noop,data:a,loc:{start:{line:169,column:78},end:{line:169,column:108}}}))!=null?t:"")},71:function(l,n,r,f,a){return" event.entities.add(entity"+l.escapeExpression(l.lambda(n,n))+`.toEntity())
316
+ `},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a,t,e){var s,o,u,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.hooks.blockHelperMissing,p=l.lookupProperty||function(b,A){if(Object.prototype.hasOwnProperty.call(b,A))return b[A]},k=`// Automatically generated by Snowtype
317
+
318
+ package Snowtype
319
+
320
+ import com.snowplowanalytics.snowplow.event.SelfDescribing
321
+ import com.snowplowanalytics.snowplow.payload.SelfDescribingJson
322
+
323
+ `;return s=(o=(o=p(r,"type")||(n!=null?p(n,"type"):n))!=null?o:m,u={name:"type",hash:{},fn:l.program(53,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:75,column:0},end:{line:119,column:9}}},typeof o===c?o.call(i,u):o),p(r,"type")||(s=y.call(n,s,u)),s!=null&&(k+=s),s=(o=(o=p(r,"nestedTypes")||(n!=null?p(n,"nestedTypes"):n))!=null?o:m,u={name:"nestedTypes",hash:{},fn:l.program(58,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:120,column:0},end:{line:137,column:16}}},typeof o===c?o.call(i,u):o),p(r,"nestedTypes")||(s=y.call(n,s,u)),s!=null&&(k+=s),k+((s=p(r,"each").call(i,n!=null?p(n,"enums"):n,{name:"each",hash:{},fn:l.program(61,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:138,column:0},end:{line:151,column:9}}}))!=null?s:"")+((s=p(r,"each").call(i,n!=null?p(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(64,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:154,column:0},end:{line:176,column:9}}}))!=null?s:"")},main_d:function(l,n,r,f,a,t,e){var s=r.decorators,o=r.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return l=o(s,"inline")(l,n,r,{name:"inline",hash:{},fn:r.program(1,a,0,t,e),inverse:r.noop,args:["classProperties"],data:a,loc:{start:{line:8,column:0},end:{line:21,column:11}}})||l,l=o(s,"inline")(l,n,r,{name:"inline",hash:{},fn:r.program(10,a,0,t,e),inverse:r.noop,args:["createAndReturnPayloadDictionary"],data:a,loc:{start:{line:23,column:0},end:{line:73,column:11}}})||l,l},useDecorators:!0,usePartial:!0,useData:!0,useDepths:!0}});var Rn=O((ie,Dn)=>{"use strict";Dn.exports={id:{language:"swift",tracker:"snowplow-ios-tracker"},1:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return(t=e(r,"each").call(n??(l.nullContext||{}),n!=null?e(n,"properties"):n,{name:"each",hash:{},fn:l.program(2,a,0),inverse:l.noop,data:a,loc:{start:{line:5,column:0},end:{line:10,column:9}}}))!=null?t:""},2:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return((t=m(r,"if").call(s,n!=null?m(n,"description"):n,{name:"if",hash:{},fn:l.program(3,a,0),inverse:l.noop,data:a,loc:{start:{line:6,column:0},end:{line:8,column:7}}}))!=null?t:"")+" var "+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:9,column:8},end:{line:9,column:16}}}):e))+": "+i((e=(e=m(r,"type")||(n!=null?m(n,"type"):n))!=null?e:o,typeof e===u?e.call(s,{name:"type",hash:{},data:a,loc:{start:{line:9,column:18},end:{line:9,column:26}}}):e))+`
324
+ `},3:function(l,n,r,f,a){var t,e,s=l.lookupProperty||function(o,u){if(Object.prototype.hasOwnProperty.call(o,u))return o[u]};return" /// "+((t=(e=(e=s(r,"description")||(n!=null?s(n,"description"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(n??(l.nullContext||{}),{name:"description",hash:{},data:a,loc:{start:{line:7,column:8},end:{line:7,column:25}}}):e))!=null?t:"")+`
325
+ `},5:function(l,n,r,f,a,t,e){var s,o,u=n??(l.nullContext||{}),i=l.hooks.helperMissing,m="function",c=l.escapeExpression,y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+c((o=(o=y(r,"indent")||(n!=null?y(n,"indent"):n))!=null?o:i,typeof o===m?o.call(u,{name:"indent",hash:{},data:a,loc:{start:{line:14,column:8},end:{line:14,column:18}}}):o))+`var payload: [String : Any] = [:]
326
+ `+((s=y(r,"each").call(u,n!=null?y(n,"properties"):n,{name:"each",hash:{},fn:l.program(6,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:15,column:0},end:{line:47,column:9}}}))!=null?s:"")+" "+c((o=(o=y(r,"indent")||(n!=null?y(n,"indent"):n))!=null?o:i,typeof o===m?o.call(u,{name:"indent",hash:{},data:a,loc:{start:{line:48,column:8},end:{line:48,column:18}}}):o))+`return payload
327
+ `},6:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isNullableOrOptional"):n,{name:"if",hash:{},fn:l.program(7,a,0,t,e),inverse:l.program(23,a,0,t,e),data:a,loc:{start:{line:16,column:0},end:{line:46,column:7}}}))!=null?s:""},7:function(l,n,r,f,a,t,e){var s,o,u=l.lambda,i=l.escapeExpression,m=n??(l.nullContext||{}),c=l.hooks.helperMissing,y="function",p=l.lookupProperty||function(k,b){if(Object.prototype.hasOwnProperty.call(k,b))return k[b]};return" "+i(u(e[1]!=null?p(e[1],"indent"):e[1],n))+"if let "+i((o=(o=p(r,"name")||(n!=null?p(n,"name"):n))!=null?o:c,typeof o===y?o.call(m,{name:"name",hash:{},data:a,loc:{start:{line:17,column:28},end:{line:17,column:36}}}):o))+" = "+i((o=(o=p(r,"name")||(n!=null?p(n,"name"):n))!=null?o:c,typeof o===y?o.call(m,{name:"name",hash:{},data:a,loc:{start:{line:17,column:39},end:{line:17,column:47}}}):o))+` {
328
+ `+((s=p(r,"if").call(m,n!=null?p(n,"isArrayOfEnums"):n,{name:"if",hash:{},fn:l.program(8,a,0,t,e),inverse:l.program(10,a,0,t,e),data:a,loc:{start:{line:18,column:0},end:{line:28,column:7}}}))!=null?s:"")+((s=p(r,"unless").call(m,n!=null?p(n,"isOptional"):n,{name:"unless",hash:{},fn:l.program(21,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:29,column:0},end:{line:32,column:11}}}))!=null?s:"")+" "+i(u(e[1]!=null?p(e[1],"indent"):e[1],n))+` }
329
+ `},8:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:19,column:34},end:{line:19,column:48}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:19,column:53},end:{line:19,column:61}}}):o))+`.map { $0.rawValue }
330
+ `},10:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfObjects"):n,{name:"if",hash:{},fn:l.program(11,a,0,t,e),inverse:l.program(13,a,0,t,e),data:a,loc:{start:{line:20,column:0},end:{line:28,column:0}}}))!=null?s:""},11:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:21,column:34},end:{line:21,column:48}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:21,column:53},end:{line:21,column:61}}}):o))+`.map { $0.payload }
331
+ `},13:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isEnum"):n,{name:"if",hash:{},fn:l.program(14,a,0,t,e),inverse:l.program(16,a,0,t,e),data:a,loc:{start:{line:22,column:0},end:{line:28,column:0}}}))!=null?s:""},14:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:23,column:34},end:{line:23,column:48}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:23,column:53},end:{line:23,column:61}}}):o))+`.rawValue
332
+ `},16:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isObject"):n,{name:"if",hash:{},fn:l.program(17,a,0,t,e),inverse:l.program(19,a,0,t,e),data:a,loc:{start:{line:24,column:0},end:{line:28,column:0}}}))!=null?s:""},17:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:25,column:34},end:{line:25,column:48}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:25,column:53},end:{line:25,column:61}}}):o))+`.payload
333
+ `},19:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:27,column:34},end:{line:27,column:48}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:27,column:53},end:{line:27,column:61}}}):o))+`
334
+ `},21:function(l,n,r,f,a,t,e){var s,o,u=l.lambda,i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return" "+i(u(e[1]!=null?m(e[1],"indent"):e[1],n))+` } else {
335
+ `+i(u(e[1]!=null?m(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=m(r,"jsonName")||(n!=null?m(n,"jsonName"):n))!=null?o:l.hooks.helperMissing,typeof o=="function"?o.call(n??(l.nullContext||{}),{name:"jsonName",hash:{},data:a,loc:{start:{line:31,column:34},end:{line:31,column:48}}}):o))!=null?s:"")+`"] = NSNull()
336
+ `},23:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfEnums"):n,{name:"if",hash:{},fn:l.program(24,a,0,t,e),inverse:l.program(26,a,0,t,e),data:a,loc:{start:{line:35,column:0},end:{line:45,column:7}}}))!=null?s:""},24:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:36,column:30},end:{line:36,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:36,column:49},end:{line:36,column:57}}}):o))+`.map { $0.rawValue }
337
+ `},26:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isArrayOfObjects"):n,{name:"if",hash:{},fn:l.program(27,a,0,t,e),inverse:l.program(29,a,0,t,e),data:a,loc:{start:{line:37,column:0},end:{line:45,column:0}}}))!=null?s:""},27:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:38,column:30},end:{line:38,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:38,column:49},end:{line:38,column:57}}}):o))+`.map { $0.payload }
338
+ `},29:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isEnum"):n,{name:"if",hash:{},fn:l.program(30,a,0,t,e),inverse:l.program(32,a,0,t,e),data:a,loc:{start:{line:39,column:0},end:{line:45,column:0}}}))!=null?s:""},30:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:40,column:30},end:{line:40,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:40,column:49},end:{line:40,column:57}}}):o))+`.rawValue
339
+ `},32:function(l,n,r,f,a,t,e){var s,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return(s=o(r,"if").call(n??(l.nullContext||{}),n!=null?o(n,"isObject"):n,{name:"if",hash:{},fn:l.program(33,a,0,t,e),inverse:l.program(35,a,0,t,e),data:a,loc:{start:{line:41,column:0},end:{line:45,column:0}}}))!=null?s:""},33:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:42,column:30},end:{line:42,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:42,column:49},end:{line:42,column:57}}}):o))+`.payload
340
+ `},35:function(l,n,r,f,a,t,e){var s,o,u=l.escapeExpression,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return" "+u(l.lambda(e[1]!=null?y(e[1],"indent"):e[1],n))+'payload["'+((s=(o=(o=y(r,"jsonName")||(n!=null?y(n,"jsonName"):n))!=null?o:m,typeof o===c?o.call(i,{name:"jsonName",hash:{},data:a,loc:{start:{line:44,column:30},end:{line:44,column:44}}}):o))!=null?s:"")+'"] = '+u((o=(o=y(r,"name")||(n!=null?y(n,"name"):n))!=null?o:m,typeof o===c?o.call(i,{name:"name",hash:{},data:a,loc:{start:{line:44,column:49},end:{line:44,column:57}}}):o))+`
341
+ `},37:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return`
342
+ // MARK: - `+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:54,column:11},end:{line:54,column:23}}}):e))+`
343
+
344
+ `+((t=m(r,"if").call(s,n!=null?m(n,"description"):n,{name:"if",hash:{},fn:l.program(38,a,0),inverse:l.noop,data:a,loc:{start:{line:56,column:0},end:{line:58,column:7}}}))!=null?t:"")+"/// Schema: `"+i((e=(e=m(r,"igluUrl")||(n!=null?m(n,"igluUrl"):n))!=null?e:o,typeof e===u?e.call(s,{name:"igluUrl",hash:{},data:a,loc:{start:{line:59,column:13},end:{line:59,column:24}}}):e))+"`\n///\n/// Example:\n/// ```swift\n/// let data = "+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:63,column:15},end:{line:63,column:27}}}):e))+`(
345
+ `+((t=m(r,"each").call(s,n!=null?m(n,"properties"):n,{name:"each",hash:{},fn:l.program(40,a,0),inverse:l.noop,data:a,loc:{start:{line:64,column:0},end:{line:66,column:9}}}))!=null?t:"")+`/// )
346
+ /// // Track as an event
347
+ /// Snowplow.defaultTracker()?.track(data.toEvent())
348
+ /// // Add as an entity to another event
349
+ /// let event = ScreenView(name: "Product")
350
+ /// event.entities.append(data.toEntity())
351
+ /// Snowplow.defaultTracker()?.track(event)
352
+ /// \`\`\`
353
+ struct `+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:75,column:7},end:{line:75,column:19}}}):e))+` {
354
+
355
+ `+((t=l.invokePartial(m(f,"structProperties"),n,{name:"structProperties",data:a,helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+`
356
+ private var schema: String {
357
+ return "`+i((e=(e=m(r,"igluUrl")||(n!=null?m(n,"igluUrl"):n))!=null?e:o,typeof e===u?e.call(s,{name:"igluUrl",hash:{},data:a,loc:{start:{line:80,column:16},end:{line:80,column:27}}}):e))+`"
358
+ }
359
+
360
+ private var payload: [String : Any] {
361
+ `+((t=l.invokePartial(m(f,"createAndReturnPayloadDictionary"),n,{name:"createAndReturnPayloadDictionary",data:a,helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+` }
362
+
363
+ /// Creates an event instance to be tracked by the tracker.
364
+ func toEvent() -> SelfDescribing {
365
+ return SelfDescribing(schema: schema, payload: payload)
366
+ }
367
+
368
+ /// Creates an entity that can be added to events.
369
+ func toEntity() -> SelfDescribingJson {
370
+ return SelfDescribingJson(schema: schema, andData: payload)
371
+ }
372
+
373
+ }
374
+ `},38:function(l,n,r,f,a){var t,e,s=l.lookupProperty||function(o,u){if(Object.prototype.hasOwnProperty.call(o,u))return o[u]};return"/// "+((t=(e=(e=s(r,"description")||(n!=null?s(n,"description"):n))!=null?e:l.hooks.helperMissing,typeof e=="function"?e.call(n??(l.nullContext||{}),{name:"description",hash:{},data:a,loc:{start:{line:57,column:4},end:{line:57,column:21}}}):e))!=null?t:"")+`
375
+ `},40:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return"/// "+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:65,column:8},end:{line:65,column:16}}}):e))+": "+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:65,column:18},end:{line:65,column:26}}}):e))+((t=m(r,"unless").call(s,a&&m(a,"last"),{name:"unless",hash:{},fn:l.program(41,a,0),inverse:l.noop,data:a,loc:{start:{line:65,column:26},end:{line:65,column:56}}}))!=null?t:"")+`
376
+ `},41:function(l,n,r,f,a){return", "},43:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return`
377
+ // MARK: - `+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:102,column:11},end:{line:102,column:23}}}):e))+`
378
+
379
+ `+((t=m(r,"if").call(s,n!=null?m(n,"description"):n,{name:"if",hash:{},fn:l.program(38,a,0),inverse:l.noop,data:a,loc:{start:{line:104,column:0},end:{line:106,column:7}}}))!=null?t:"")+"struct "+i((e=(e=m(r,"typeName")||(n!=null?m(n,"typeName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"typeName",hash:{},data:a,loc:{start:{line:107,column:7},end:{line:107,column:19}}}):e))+` {
380
+
381
+ `+((t=l.invokePartial(m(f,"structProperties"),n,{name:"structProperties",data:a,helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+`
382
+ var payload: [String : Any] {
383
+ `+((t=l.invokePartial(m(f,"createAndReturnPayloadDictionary"),n,{name:"createAndReturnPayloadDictionary",data:a,helpers:r,partials:f,decorators:l.decorators}))!=null?t:"")+` }
384
+
385
+ }
386
+ `},45:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.escapeExpression,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return`
387
+ // MARK: - `+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:120,column:11},end:{line:120,column:19}}}):e))+`
388
+
389
+ `+((t=m(r,"if").call(s,n!=null?m(n,"description"):n,{name:"if",hash:{},fn:l.program(38,a,0),inverse:l.noop,data:a,loc:{start:{line:122,column:0},end:{line:124,column:7}}}))!=null?t:"")+"enum "+i((e=(e=m(r,"name")||(n!=null?m(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:125,column:5},end:{line:125,column:13}}}):e))+`: String {
390
+ `+((t=m(r,"each").call(s,n!=null?m(n,"cases"):n,{name:"each",hash:{},fn:l.program(46,a,0),inverse:l.noop,data:a,loc:{start:{line:126,column:0},end:{line:128,column:9}}}))!=null?t:"")+`}
391
+ `},46:function(l,n,r,f,a){var t,e,s=n??(l.nullContext||{}),o=l.hooks.helperMissing,u="function",i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return" case "+l.escapeExpression((e=(e=i(r,"name")||(n!=null?i(n,"name"):n))!=null?e:o,typeof e===u?e.call(s,{name:"name",hash:{},data:a,loc:{start:{line:127,column:9},end:{line:127,column:17}}}):e))+' = "'+((t=(e=(e=i(r,"jsonName")||(n!=null?i(n,"jsonName"):n))!=null?e:o,typeof e===u?e.call(s,{name:"jsonName",hash:{},data:a,loc:{start:{line:127,column:21},end:{line:127,column:35}}}):e))!=null?t:"")+`"
392
+ `},48:function(l,n,r,f,a){var t,e,s=l.lambda,o=l.escapeExpression,u=n??(l.nullContext||{}),i=l.hooks.helperMissing,m="function",c=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]};return`
393
+ extension `+o(s(n!=null?c(n,"event"):n,n))+` {
394
+ /// Creates an event with entities for a `+o((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(u,{name:"key",hash:{},data:a,loc:{start:{line:134,column:45},end:{line:134,column:53}}}):e))+" event specification.\n /// Example:\n /// ```swift\n /// let data = "+o(s(n!=null?c(n,"event"):n,n))+`(...)
395
+ `+((t=c(r,"each").call(u,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(49,a,0),inverse:l.noop,data:a,loc:{start:{line:138,column:0},end:{line:140,column:9}}}))!=null?t:"")+" /// let event = data.to"+o((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(u,{name:"key",hash:{},data:a,loc:{start:{line:141,column:27},end:{line:141,column:35}}}):e))+"("+((t=c(r,"each").call(u,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(51,a,0),inverse:l.noop,data:a,loc:{start:{line:141,column:36},end:{line:141,column:111}}}))!=null?t:"")+`)
396
+ /// // Track as an event
397
+ /// Snowplow.defaultTracker()?.track(event)
398
+ /// \`\`\`
399
+ func to`+o((e=(e=c(r,"key")||a&&c(a,"key"))!=null?e:i,typeof e===m?e.call(u,{name:"key",hash:{},data:a,loc:{start:{line:145,column:11},end:{line:145,column:19}}}):e))+"("+((t=c(r,"each").call(u,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(53,a,0),inverse:l.noop,data:a,loc:{start:{line:145,column:20},end:{line:145,column:109}}}))!=null?t:"")+`) -> SelfDescribing {
400
+ let event = toEvent()
401
+ `+((t=c(r,"each").call(u,n!=null?c(n,"entities"):n,{name:"each",hash:{},fn:l.program(55,a,0),inverse:l.noop,data:a,loc:{start:{line:147,column:0},end:{line:149,column:9}}}))!=null?t:"")+` return event
402
+ }
403
+ }
404
+ `},49:function(l,n,r,f,a){var t=l.lambda,e=l.escapeExpression;return" /// let data"+e(t(n,n))+" = "+e(t(n,n))+`(...)
405
+ `},51:function(l,n,r,f,a){var t,e=l.lookupProperty||function(s,o){if(Object.prototype.hasOwnProperty.call(s,o))return s[o]};return"data"+l.escapeExpression(l.lambda(n,n))+((t=e(r,"unless").call(n??(l.nullContext||{}),a&&e(a,"last"),{name:"unless",hash:{},fn:l.program(41,a,0),inverse:l.noop,data:a,loc:{start:{line:141,column:72},end:{line:141,column:102}}}))!=null?t:"")},53:function(l,n,r,f,a){var t,e=l.lambda,s=l.escapeExpression,o=l.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return"_ entity"+s(e(n,n))+": "+s(e(n,n))+((t=o(r,"unless").call(n??(l.nullContext||{}),a&&o(a,"last"),{name:"unless",hash:{},fn:l.program(41,a,0),inverse:l.noop,data:a,loc:{start:{line:145,column:70},end:{line:145,column:100}}}))!=null?t:"")},55:function(l,n,r,f,a){return" event.entities.append(entity"+l.escapeExpression(l.lambda(n,n))+`.toEntity())
406
+ `},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a,t,e){var s,o,u,i=n??(l.nullContext||{}),m=l.hooks.helperMissing,c="function",y=l.hooks.blockHelperMissing,p=l.lookupProperty||function(b,A){if(Object.prototype.hasOwnProperty.call(b,A))return b[A]},k=`import Foundation
407
+ import SnowplowTracker
408
+
409
+ `;return s=(o=(o=p(r,"type")||(n!=null?p(n,"type"):n))!=null?o:m,u={name:"type",hash:{},fn:l.program(37,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:51,column:0},end:{line:98,column:9}}},typeof o===c?o.call(i,u):o),p(r,"type")||(s=y.call(n,s,u)),s!=null&&(k+=s),s=(o=(o=p(r,"nestedTypes")||(n!=null?p(n,"nestedTypes"):n))!=null?o:m,u={name:"nestedTypes",hash:{},fn:l.program(43,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:99,column:0},end:{line:116,column:16}}},typeof o===c?o.call(i,u):o),p(r,"nestedTypes")||(s=y.call(n,s,u)),s!=null&&(k+=s),k+((s=p(r,"each").call(i,n!=null?p(n,"enums"):n,{name:"each",hash:{},fn:l.program(45,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:117,column:0},end:{line:130,column:9}}}))!=null?s:"")+((s=p(r,"each").call(i,n!=null?p(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(48,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:131,column:0},end:{line:153,column:9}}}))!=null?s:"")},main_d:function(l,n,r,f,a,t,e){var s=r.decorators,o=r.lookupProperty||function(u,i){if(Object.prototype.hasOwnProperty.call(u,i))return u[i]};return l=o(s,"inline")(l,n,r,{name:"inline",hash:{},fn:r.program(1,a,0,t,e),inverse:r.noop,args:["structProperties"],data:a,loc:{start:{line:3,column:0},end:{line:11,column:11}}})||l,l=o(s,"inline")(l,n,r,{name:"inline",hash:{},fn:r.program(5,a,0,t,e),inverse:r.noop,args:["createAndReturnPayloadDictionary"],data:a,loc:{start:{line:12,column:0},end:{line:49,column:11}}})||l,l},useDecorators:!0,usePartial:!0,useData:!0,useDepths:!0}});var In=O((se,Un)=>{"use strict";Un.exports={id:{language:"go",tracker:"snowplow-golang-tracker"},1:function(l,n,r,f,a){var t,e=n??(l.nullContext||{}),s=l.hooks.helperMissing,o=l.escapeExpression,u="function",i=l.lookupProperty||function(m,c){if(Object.prototype.hasOwnProperty.call(m,c))return m[c]};return`
410
+ // SnowplowFormat implements SnowplowApplicable
411
+ func (`+o((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:65,column:6},end:{line:65,column:27}}}))+" "+o((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===u?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:65,column:28},end:{line:65,column:40}}}):t))+`) SnowplowFormat() (*sp.SelfDescribingJson, error) {
412
+ var decodedMap map[string]interface{}
413
+ err := mapstructure.Decode(`+o((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:67,column:28},end:{line:67,column:49}}}))+`, &decodedMap)
414
+ if err != nil {
415
+ return nil, err
416
+ }
417
+
418
+ sdj := sp.InitSelfDescribingJson("`+o((t=(t=i(r,"igluUrl")||(n!=null?i(n,"igluUrl"):n))!=null?t:s,typeof t===u?t.call(e,{name:"igluUrl",hash:{},data:a,loc:{start:{line:72,column:35},end:{line:72,column:46}}}):t))+`", decodedMap)
419
+ return sdj, nil
420
+ }
421
+
422
+ // Track`+o((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===u?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:76,column:8},end:{line:76,column:20}}}):t))+" tracks a "+o((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===u?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:76,column:30},end:{line:76,column:42}}}):t))+`
423
+ func Track`+o((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===u?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:77,column:10},end:{line:77,column:22}}}):t))+"(tracker *sp.Tracker, "+o((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:77,column:44},end:{line:77,column:65}}}))+" "+o((t=(t=i(r,"typeName")||(n!=null?i(n,"typeName"):n))!=null?t:s,typeof t===u?t.call(e,{name:"typeName",hash:{},data:a,loc:{start:{line:77,column:66},end:{line:77,column:78}}}):t))+`, opts ...option) error {
424
+ sdj, err := `+o((i(r,"startLow")||n&&i(n,"startLow")||s).call(e,n!=null?i(n,"typeName"):n,{name:"startLow",hash:{},data:a,loc:{start:{line:78,column:13},end:{line:78,column:34}}}))+`.SnowplowFormat()
425
+ if err != nil {
426
+ return err
427
+ }
428
+
429
+ sde := &sp.SelfDescribingEvent{Event: sdj}
430
+ for _, opt := range opts {
431
+ opt(sde)
432
+ }
433
+
434
+ tracker.TrackSelfDescribingEvent(*sde)
435
+ return nil
436
+ }
437
+
438
+ `},3:function(l,n,r,f,a,t,e){var s,o,u=n??(l.nullContext||{}),i=l.hooks.helperMissing,m="function",c=l.escapeExpression,y=l.lookupProperty||function(p,k){if(Object.prototype.hasOwnProperty.call(p,k))return p[k]};return`
439
+ // `+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:96,column:3},end:{line:96,column:11}}}):o))+"Applicable represents a context applicable to "+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:96,column:57},end:{line:96,column:65}}}):o))+` event specification
440
+ type `+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:97,column:5},end:{line:97,column:13}}}):o))+`Applicable interface {
441
+ `+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:98,column:1},end:{line:98,column:9}}}):o))+`Format() (*sp.SelfDescribingJson, error)
442
+ }
443
+
444
+ `+((s=y(r,"each").call(u,n!=null?y(n,"entities"):n,{name:"each",hash:{},fn:l.program(4,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:101,column:0},end:{line:108,column:9}}}))!=null?s:"")+`
445
+ // `+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:110,column:3},end:{line:110,column:11}}}):o))+` Event Specification
446
+ type `+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:111,column:5},end:{line:111,column:13}}}):o))+` struct {
447
+ Event `+c(l.lambda(n!=null?y(n,"event"):n,n))+`
448
+ Contexts []`+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:113,column:12},end:{line:113,column:20}}}):o))+`Applicable
449
+ }
450
+
451
+ // Track`+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:116,column:8},end:{line:116,column:16}}}):o))+" tracks "+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:116,column:24},end:{line:116,column:32}}}):o))+` event specification
452
+ func Track`+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:117,column:10},end:{line:117,column:18}}}):o))+"(tracker *sp.Tracker, "+c((y(r,"startLow")||n&&y(n,"startLow")||i).call(u,a&&y(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:117,column:40},end:{line:117,column:57}}}))+" "+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:117,column:58},end:{line:117,column:66}}}):o))+`, opts ...option) error {
453
+ event := `+c((y(r,"startLow")||n&&y(n,"startLow")||i).call(u,a&&y(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:118,column:10},end:{line:118,column:27}}}))+`.Event
454
+ sdj, err := event.SnowplowFormat()
455
+ if err != nil {
456
+ return err
457
+ }
458
+
459
+ sde := &sp.SelfDescribingEvent{Event: sdj}
460
+ var optErr error
461
+ for _, opt := range opts {
462
+ optErr = opt(sde)
463
+ if optErr != nil {
464
+ break
465
+ }
466
+ }
467
+ if optErr != nil {
468
+ return optErr
469
+ }
470
+
471
+ eventSpecificationCtx := make([]sp.SelfDescribingJson, len(`+c((y(r,"startLow")||n&&y(n,"startLow")||i).call(u,a&&y(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:136,column:60},end:{line:136,column:77}}}))+`.Contexts))
472
+ var ctxErr error
473
+ for i, val := range `+c((y(r,"startLow")||n&&y(n,"startLow")||i).call(u,a&&y(a,"key"),{name:"startLow",hash:{},data:a,loc:{start:{line:138,column:21},end:{line:138,column:38}}}))+`.Contexts {
474
+ ctxSdj, ctxErr := val.`+c((o=(o=y(r,"key")||a&&y(a,"key"))!=null?o:i,typeof o===m?o.call(u,{name:"key",hash:{},data:a,loc:{start:{line:139,column:24},end:{line:139,column:32}}}):o))+`Format()
475
+ if ctxErr != nil {
476
+ break
477
+ }
478
+ eventSpecificationCtx[i] = *ctxSdj
479
+ }
480
+ if ctxErr != nil {
481
+ return ctxErr
482
+ }
483
+
484
+ sde.Contexts = append(sde.Contexts, eventSpecificationCtx...)
485
+ tracker.TrackSelfDescribingEvent(*sde)
486
+ return nil
487
+ }
488
+
489
+ `},4:function(l,n,r,f,a,t,e){var s=l.lambda,o=l.escapeExpression,u=n??(l.nullContext||{}),i=l.hooks.helperMissing,m=l.lookupProperty||function(c,y){if(Object.prototype.hasOwnProperty.call(c,y))return c[y]};return`
490
+ // `+o(s(l.data(a,1)&&m(l.data(a,1),"key"),n))+"Format implements "+o(s(l.data(a,1)&&m(l.data(a,1),"key"),n))+`Applicable
491
+ func (`+o((m(r,"startLow")||n&&m(n,"startLow")||i).call(u,n,{name:"startLow",hash:{},data:a,loc:{start:{line:104,column:6},end:{line:104,column:23}}}))+" "+o(s(n,n))+") "+o(s(l.data(a,1)&&m(l.data(a,1),"key"),n))+`Format() (*sp.SelfDescribingJson, error) {
492
+ return `+o((m(r,"startLow")||n&&m(n,"startLow")||i).call(u,n,{name:"startLow",hash:{},data:a,loc:{start:{line:105,column:8},end:{line:105,column:25}}}))+`.SnowplowFormat()
493
+ }
494
+
495
+ `},compiler:[8,">= 4.3.0"],main:function(l,n,r,f,a,t,e){var s,o,u,i=n??(l.nullContext||{}),m=l.lookupProperty||function(y,p){if(Object.prototype.hasOwnProperty.call(y,p))return y[p]},c=`// SnowplowApplicable signifies ability to be formatted as self-describing json
496
+ type SnowplowApplicable interface {
497
+ // SnowplowFormat constructs a Snowplow SelfDescribingJson
498
+ SnowplowFormat() (*sp.SelfDescribingJson, error)
499
+ }
500
+
501
+ // internal type to provide functional options for the API
502
+ type option func(*sp.SelfDescribingEvent) error
503
+
504
+ // WithTimestamp returns an option to set the device timestamp
505
+ func WithTimestamp(tstamp int64) option {
506
+ return func(sde *sp.SelfDescribingEvent) error {
507
+ sde.Timestamp = &tstamp
508
+ return nil
509
+ }
510
+ }
511
+
512
+ // WithEventID returns an option to set the event_id
513
+ func WithEventID(id string) option {
514
+ return func(sde *sp.SelfDescribingEvent) error {
515
+ sde.EventId = &id
516
+ return nil
517
+ }
518
+ }
519
+
520
+ // WithTrueTimestamp returns an option to set the true timestamp
521
+ func WithTrueTimestamp(tstamp int64) option {
522
+ return func(sde *sp.SelfDescribingEvent) error {
523
+ sde.TrueTimestamp = &tstamp
524
+ return nil
525
+ }
526
+ }
527
+
528
+ // WithContexts returns an option to set the contexts of an event
529
+ func WithContexts(ctx ...SnowplowApplicable) option {
530
+ return func(sde *sp.SelfDescribingEvent) error {
531
+ finalCtx := make([]sp.SelfDescribingJson, len(ctx))
532
+ var ctxErr error
533
+ for i, val := range ctx {
534
+ ctxSdj, ctxErr := val.SnowplowFormat()
535
+ if ctxErr != nil {
536
+ break
537
+ }
538
+ finalCtx[i] = *ctxSdj
539
+ }
540
+ if ctxErr != nil {
541
+ return ctxErr
542
+ }
543
+ sde.Contexts = finalCtx
544
+ return nil
545
+ }
546
+ }
547
+
548
+ // WithSubject returns an option to set the Subject
549
+ func WithSubject(subject *sp.Subject) option {
550
+ return func(sde *sp.SelfDescribingEvent) error {
551
+ sde.Subject = subject
552
+ return nil
553
+ }
554
+ }
555
+
556
+ `;return s=(o=(o=m(r,"type")||(n!=null?m(n,"type"):n))!=null?o:l.hooks.helperMissing,u={name:"type",hash:{},fn:l.program(1,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:62,column:0},end:{line:92,column:9}}},typeof o=="function"?o.call(i,u):o),m(r,"type")||(s=l.hooks.blockHelperMissing.call(n,s,u)),s!=null&&(c+=s),c+`
557
+ `+((s=m(r,"each").call(i,n!=null?m(n,"eventSpecifications"):n,{name:"each",hash:{},fn:l.program(3,a,0,t,e),inverse:l.noop,data:a,loc:{start:{line:94,column:0},end:{line:154,column:9}}}))!=null?s:"")},useData:!0,useDepths:!0}});var Ll={};tl(Ll,{generate:()=>Cl});module.exports=rl(Ll);var tn=require("quicktype-core"),il=4;function sl(l,n,r){return`${n??""} ${l} ${r??""}`}function N(l,n,r,f,a){let{prefix:t,suffix:e}=n.typeNameModifiers??{},s=sl(f,t,e);return l(r,s,a)}function rn(l,n=[],r=[]){let f=(0,tn.getTargetLanguage)(l),a=[],t=r;for(let e of f.optionDefinitions)n.includes(e.name);return{id:f.name,name:f.displayName,extension:f.extension,requiredOptions:t,advancedOptions:a}}function ul(l,n=il){let r=l.length,f=0;for(let a=0;a<r;a++){let t=l.charAt(a);if(t===" ")f+=1;else if(t===" ")f=(f/n+1)*n;else return{indent:f,text:l.substring(a)}}return{indent:0,text:null}}function I(l,n,r=4){let f=n.split(`
558
+ `),a=f.length;if(a===0)return;l.emitLine(f[0]);let t=0;for(let e=1;e<a;e++){let s=f[e],{indent:o,text:u}=ul(s,r);if(u!==null){let i=Math.floor(o/r),m=o%r;l.changeIndent(i-t),t=i,l.emitLine(" ".repeat(m),u)}else l.emitLine()}t!==0&&l.changeIndent(-t)}function v(l,n){if(n.length!==0){l.ensureBlankLine();for(let r of n)r(l)}}function sn(l,n={},r=[]){let f=Object.fromEntries(Object.entries(l).filter(([a])=>!r.includes(a)));return{...n,...f}}var S=require("quicktype-core");var un=require("quicktype-core"),$="__sp";function cn(l,n,r){return typeof l!="object"?void 0:{forType:D.makeAttributes({raw:l,...l[$]})}}var J=class extends un.TypeAttributeKind{constructor(){super("eventMetadata")}combine(n){return n[0]}makeInferred(n){}},D=new J;var kn=g(require("handlebars"));var mn=require("quicktype-core"),fn=require("quicktype-core/dist/support/Strings");function Q(l,n,r,f){let a=l.descriptionForType(n)?.join(" "),t=l.sourcelikeToString((0,mn.modifySource)(f?.functionName??fn.originalWord,r)),e=l.sourcelikeToString(r);return{description:a,functionName:t,typeName:e}}function yn(l,n,r,f){typeof r>"u"||(l[r]=l[r]||{},f?Array.isArray(l[r].entities)?l[r].entities.push(n):l[r].entities=[n]:l[r].event=n)}var G=g(require("handlebars"));function pn(){G.default.registerHelper("join",function(l,n,r){return r&&typeof r=="string"?l.map(f=>f+r).join(n):l.join(n)}),G.default.registerHelper("firstLow",function(l){return l&&typeof l=="string"?l.charAt(0).toLowerCase():""}),G.default.registerHelper("startLow",function(l){return l&&typeof l=="string"?l.charAt(0).toLowerCase().concat(l.slice(1)):""})}function gn(l,n){try{pn();let r=kn.default.template(l);return f=>{let a={type:[],nestedTypes:[],enums:[],eventSpecifications:{}};return f.forEachNamedType("leading-and-interposing",(t,e)=>{let s=t.getAttributes().get(D),o=Q(f,t,e,n),u={...o,...f.getClassData&&f.getClassData(t)};if(s!==void 0&&s.raw.self!==void 0){let{raw:i,eventSpecificationName:m,isEntity:c}=s,y=`iglu:${i.self.vendor}/${i.self.name}/${i.self.format}/${i.self.version}`;yn(a.eventSpecifications,o.typeName,m,c),a.type.push({igluUrl:y,...u})}else a.nestedTypes.push(u)},(t,e)=>{let s=[],{description:o}=Q(f,t,e,n);f.forEachEnumCase(t,"none",(u,i)=>{s.push({name:f.sourcelikeToString(u),jsonName:i})}),a.enums.push({name:f.sourcelikeToString(e),description:o,cases:s})},()=>console.error("Unions are not yet supported in Snowtype")),f.emitMultiline(r(a))}}catch(r){throw new Error(`${JSON.stringify(r)}`)}}var L=require("quicktype-core");function wn(l,n){if(l instanceof C){let r="",f='import "github.com/mitchellh/mapstructure"',a='import sp "github.com/snowplow/snowplow-golang-tracker/v3/tracker"',t=n.lines;Array.isArray(t)&&t.splice(1,0,r,f,a)}return n}var vn=require("quicktype-core/dist/support/Strings");async function xn(l,n,r,f){let{header:a,sdk:t,outputFilename:e,...s}=f,o=new L.JSONSchemaInput(void 0,[cn]),u=new Set;await ml(o,n,u),await cl(o,r,u);let i=new L.InputData;i.addInput(o);let m=await(0,L.quicktype)({inputData:i,lang:l,leadingComments:a,rendererOptions:s});return wn(l,m)}async function cl(l,n,r){for(let f of n){let a=(0,vn.pascalCase)(f.eventSpecification.name),t=f.eventSpecification.id;if(f.eventSchema[$]={isEntity:!1,eventSpecificationId:t,eventSpecificationName:a},await q(l,f.eventSchema,r),!Array.isArray(f.entitiesSchemas))return;await Promise.all(f.entitiesSchemas.map(async e=>{e[$]={isEntity:!0,eventSpecificationId:t,eventSpecificationName:a},await q(l,e,r)}))}}async function ml(l,n,r){for(let f of n)await q(l,f,r)}function fl({name:l,vendor:n,version:r}){return l+"/"+n+"/"+r}async function q(l,n,r){let f=fl(n.self);r.has(f)||(await l.addSource({name:n.self.name,schema:JSON.stringify(n)}),r.add(f))}var yl=g(bn()),pl=g(jn()),kl=g(Tn()),gl=g(Cn()),wl=g(En()),vl=g(An()),xl=g(Rn()),Pl=g(In()),R=g(require("joi"));var $n=["@snowplow/browser-tracker","@snowplow/javascript-tracker","snowplow-android-tracker","snowplow-ios-tracker","@snowplow/node-tracker","snowplow-golang-tracker"],Gn=["typescript","javascript","kotlin","swift","go"];function bl(l){let r=R.default.object().required().keys({id:R.default.object().required().keys({tracker:R.default.string().required().valid(...$n),language:R.default.string().required().valid(...Gn)})}).validate(l,{abortEarly:!1,convert:!1,allowUnknown:!0});if(r.error)throw new Error(r.error.annotate())}var Fn=[yl,pl,kl,gl,wl,vl,xl,Pl].map(l=>(bl(l),l));function x(l){let{name:n,quicktypeLanguage:r,defaultOptions:f,unsupportedOptions:a,requiredOptions:t}=l,e=rn(n,a,t);return{id:e.id,name:e.name,extension:e.extension,generate:(s,o,u)=>{let{prefixes:i,suffixes:m}=u,c=[],y=Fn.find(({id:p})=>p.language===e.id&&p.tracker===u.tracker);return y&&c.push(gn(y)),xn(new r({generators:c,typeNameModifiers:{prefix:i?.typeName,suffix:m?.typeName}}),s,o,sn(u,f,a))}}}var j=g(require("json-pointer"));function Jn({propertyNameAsType:l,capitalizeProperty:n,defaultPropertyType:r},f){let a="*";return f!==void 0&&l?n?Vn(f):f:r===null||r===""?r:r||a}function Qn(l,n){let{maxLength:r}=l;if(!r)return[n];let f=[];for(;;){if(n.length-l.indentMaxDelta<=0){n&&f.push(n);break}let t=n.slice(0,l.indentMaxDelta),e=t.search(/\s\S*$/),s;if(e===-1){let o=n.slice(l.indentMaxDelta).match(/^\S+/);s=t+(o||"")}else s=t.slice(0,e);f.push(s),n=n.slice(s.length+1)}return f}function qn(l,n={}){let r=[];if(!l||Object.keys(l).length===0)return"";let f=Ol(n);return r.push(...jl(l,f)),j.default.has(l,"/properties")&&r.push(...W(l,l,null,f)),j.default.has(l,"/items")&&r.push(...V(l,l,null,f)),Tl(f.outerIndent,r)}function Ol(l){let r=(l.indentChar||" ").repeat(l.indent||0),f=l.maxLength-r.length-3;return{...l,outerIndent:r,indentMaxDelta:f}}function V(l,n,r,f){let a=j.default.get(l,"/items");if(!Array.isArray(a))return[];let t=[];return a.forEach((e,s)=>{let u=(r?`${r}.`:"")+s,i=e.default,m=!l.minItems||s>=l.minItems;if(e.type==="array"&&e.items)t.push(...E("array",u,e.description,m,i,f)),t.push(...V(e,n,u,f));else if(e.type==="object"&&e.properties)t.push(...E("object",u,e.description,m,i,f)),t.push(...W(e,n,u,f));else{let c=F(e,n)||Jn(f);t.push(...E(c,u,e.description,m,i,f))}}),t}function W(l,n,r,f){let a=j.default.get(l,"/properties"),t=j.default.has(l,"/required")?j.default.get(l,"/required"):[],e=[];for(let s in a)if(!(Array.isArray(f.ignore)&&f.ignore.includes(s))){let o=a[s],i=(r?`${r}.`:"")+s,m=a[s].default,c=!t.includes(s);if(o.type==="object"&&o.properties)e.push(...E("object",i,o.description,c,m,f)),e.push(...W(o,n,i,f));else if(o.type==="array"&&o.items)e.push(...E("array",i,o.description,c,m,f)),e.push(...V(o,n,i,f));else{let y=F(o,n)||Jn(f,s);e.push(...E(y,i,o.description,c,m,f))}}return e}function jl(l,n){let r=[],{objectTagName:f="typedef"}=n,{description:a}=l;a===void 0&&(a=n.autoDescribe?Sl(l.title,l.type):"");let t=n.types&&n.types[l.type],e;n.types===null?e="":e=` {${t===""?"":t||F(l,l)}}`,(a||n.addDescriptionLineBreak)&&r.push(...Qn(n,a));let s=l.title?` ${n.capitalizeTitle?Vn(l.title):l.title}`:"";return r.push(`@${f}${e}${s}`),r}function E(l,n,r="",f,a,t){let e;f?e=`[${n}${a===void 0?"":`=${JSON.stringify(a)}`}]`:e=n;let s;!r&&!t.descriptionPlaceholder?s="":t.hyphenatedDescriptions?s=` - ${r}`:s=` ${r}`;let o=l===null?"":`{${l}} `;return Qn(t,`@property ${o}${e}${s}`)}function F(l,n){if(l.$ref){let r=j.default.get(n,l.$ref.slice(1));return F(r,n)}return l.enum?(l.type||(typeof l.enum[0]=="string"&&(l.type="string"),(typeof l.enum[0]).match(/number|boolean/)&&(l.type="number")),Array.isArray(l.type)&&l.type.indexOf("string")!==-1&&l.type.indexOf("null")!==-1?`"${l.enum.filter(Boolean).join('"|"')}"|null`:l.type==="string"?`"${l.enum.join('"|"')}"`:l.type==="number"||l.type==="integer"||l.type==="boolean"?`${l.enum.join("|")}`:l.type==="null"?"null":"enum"):Array.isArray(l.type)?l.type.includes("null")?`?${l.type[0]}`:l.type.join("|"):l.type}function Vn(l){return l.slice(0,1).toUpperCase()+l.slice(1)}function Sl(l,n){let r=l?`${l} ${n}`:n;return`Represents ${`a${"aeiou".split("").includes(r.charAt())?"n":""}`} ${r}`}function Tl(l,n){let r=[`${l}/**`];return r.push(...n.map(f=>f?`${l} * ${f}`:" *")),r.push(`${l} */
559
+ `),r.join(`
560
+ `)}var Hn=require("quicktype-core/dist/support/Strings"),H=class extends S.JavaScriptRenderer{constructor(r,f,a,t){super(r,f,a);this.snowtypeOptions=t}emitMultiline(r){I(this,r,2)}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageComments()}emitPredefinedJSDocTypes(){this.emitMultiline(`
561
+ /**
562
+ * Typedef for a DeviceTimestamp
563
+ * @typedef {object} DeviceTimestamp
564
+ * @property {string} type The value of 'dtm'
565
+ * @property {number} value The value of the device timestamp
566
+ */
567
+
568
+ /**
569
+ * Typedef for a TrueTimestamp
570
+ * @typedef {object} TrueTimestamp
571
+ * @property {string} type The value of 'ttm'
572
+ * @property {number} value The value of the true timestamp
573
+ */
574
+
575
+ /**
576
+ * Typedef for a Timestamp
577
+ * @typedef {object} Timestamp
578
+ * @property {number|TrueTimestamp|DeviceTimestamp} [timestamp] The value of the timestamp
579
+ */
580
+
581
+ /**
582
+ * Typedef for a SelfDescribingJson
583
+ * @typedef {object} SelfDescribingJson
584
+ * @property {string} schema The schema of the context
585
+ * @property {object} data The data to send for the context
586
+ */
587
+
588
+ /**
589
+ * Typedef for a Context
590
+ * @typedef {object} Context
591
+ * @property {SelfDescribingJson[]} [context] Contexts to include in the event
592
+ */
593
+ `),this.ensureBlankLine()}emitSource(r){super.emitSource(r),this.ensureBlankLine(),this.emitPredefinedJSDocTypes(),this.forEachTopLevel("none",(f,a)=>{let t=this.sourcelikeToString(a),{raw:e}=f.getAttributes().get(D);e.title=e.title||t,this.emitMultiline(qn(e))}),v(this,this.snowtypeOptions.generators)}makeNameForTopLevel(r,f,a){return N((...t)=>super.makeNameForTopLevel(...t),this.snowtypeOptions,r,f,a)}},_=class extends S.JavaScriptTargetLanguage{constructor(r){super();this.snowtypeOptions=r}makeRenderer(r,f){return new H(this,r,(0,S.getOptionValues)(S.tsFlowOptions,f),this.snowtypeOptions)}},Wn=x({name:"javascript",quicktypeLanguage:_,defaultOptions:{"runtime-typecheck":!1},nameModifiers:{functionName:Hn.camelCase}}),B={...Wn,generate:async(l,n,r)=>{let{sdk:f,prefixes:a,suffixes:t}=r;return await Wn.generate(l,n,r)}};var P=require("quicktype-core"),_n=require("quicktype-core/dist/language/Kotlin"),Bn=require("quicktype-core/dist/support/Strings");var K=class extends _n.KotlinXRenderer{constructor(r,f,a,t){super(r,f,a);this.snowtypeOptions=t}getClassData(r){let f=[];return this.forEachClassProperty(r,"none",(a,t,e)=>{let s=this.getArrayTypes(e.type);f.push({name:this.sourcelikeToString(a),jsonName:t,description:this.descriptionForClassProperty(r,t),type:this.sourcelikeToString(this.kotlinType(e.type)),isOptional:e.isOptional,isNullable:this.isNullable(e),isNullableOrOptional:e.isOptional||this.isNullable(e),isArrayOfEnums:s&&s.get("array").includes("enum"),isArrayOfObjects:s&&s.get("array").includes("class"),isEnum:this.isEnum(e),isObject:this.isObject(e)})}),{properties:f}}emitSource(r){super.emitSource(r),v(this,this.snowtypeOptions.generators)}emitSourceStructure(){}getArrayTypes(r){if(r.kind.toString()!=="array")return null;let f=new Map;return f.set("array",[]),r.getChildren().forEach(a=>{a.kind.toString()==="union"?a.getChildren().forEach(t=>{f.get("array").push(t.kind.toString())}):f.get("array").push(a.kind.toString())}),f}isEnum(r){return r.type.kind==="enum"||this.isNullable(r)&&(0,P.nullableFromUnion)(r.type)?.kind==="enum"}isObject(r){return r.type.kind==="class"||this.isNullable(r)&&(0,P.nullableFromUnion)(r.type)?.kind==="class"}isNullable(r){return r.type.kind==="union"&&(0,P.nullableFromUnion)(r.type)!==null}},z=class extends P.KotlinTargetLanguage{constructor(r){super();this.snowtypeOptions=r}makeRenderer(r,f){return new K(this,r,(0,P.getOptionValues)(P.kotlinOptions,f),this.snowtypeOptions)}},X=x({name:"kotlin",quicktypeLanguage:z,defaultOptions:{framework:"kotlinx",package:"Snowtype","just-types":!0},requiredOptions:["package"],unsupportedOptions:["framework"],nameModifiers:{functionName:Bn.camelCase}});var w=require("quicktype-core"),Kn=require("quicktype-core/dist/support/Strings");var Z=class extends w.SwiftRenderer{constructor(r,f,a,t){super(r,f,a);this.snowtypeOptions=t}getClassData(r){let f=[];return this.forEachClassProperty(r,"none",(a,t,e)=>{let s=this.getArrayTypes(e.type);f.push({name:this.sourcelikeToString(a),jsonName:t,description:this.descriptionForClassProperty(r,t),type:this.sourcelikeToString(this.swiftPropertyType(e)),isOptional:e.isOptional,isNullable:this.isNullable(e),isNullableOrOptional:e.isOptional||this.isNullable(e),isArrayOfEnums:s&&s.get("array").includes("enum"),isArrayOfObjects:s&&s.get("array").includes("class"),isEnum:this.isEnum(e),isObject:this.isObject(e)})}),{properties:f}}emitSource(r){super.emitSource(r),v(this,this.snowtypeOptions.generators)}emitSourceStructure(){}getArrayTypes(r){if(r.kind.toString()!=="array")return null;let f=new Map;return f.set("array",[]),r.getChildren().forEach(a=>{a.kind.toString()==="union"?a.getChildren().forEach(t=>{f.get("array").push(t.kind.toString())}):f.get("array").push(a.kind.toString())}),f}isEnum(r){return r.type.kind==="enum"||this.isNullable(r)&&(0,w.nullableFromUnion)(r.type)?.kind==="enum"}isObject(r){return r.type.kind==="class"||this.isNullable(r)&&(0,w.nullableFromUnion)(r.type)?.kind==="class"}isNullable(r){return r.type.kind==="union"&&(0,w.nullableFromUnion)(r.type)!==null}},Y=class extends w.SwiftTargetLanguage{constructor(r){super();this.snowtypeOptions=r}makeRenderer(r,f){return new Z(this,r,(0,w.getOptionValues)(w.swiftOptions,f),this.snowtypeOptions)}},d=x({name:"swift",quicktypeLanguage:Y,nameModifiers:{functionName:Kn.camelCase}});var M=require("quicktype-core"),Xn=require("quicktype-core/dist/RendererOptions"),Zn=require("quicktype-core/dist/support/Strings");var h=class extends M.TypeScriptRenderer{constructor(r,f,a,t){super(r,f,a);this.snowtypeOptions=t}emitMultiline(r){I(this,r,2)}emitSource(r){super.emitSource(r),v(this,this.snowtypeOptions.generators)}makeNameForTopLevel(r,f,a){return N((...t)=>super.makeNameForTopLevel(...t),this.snowtypeOptions,r,f,a)}},nn=class extends M.TypeScriptTargetLanguage{constructor(r){super();this.snowtypeOptions=r}makeRenderer(r,f){return new h(this,r,(0,Xn.getOptionValues)(M.tsFlowOptions,f),this.snowtypeOptions)}},zn=x({name:"typescript",quicktypeLanguage:nn,defaultOptions:{"just-types":!0,"prefer-unions":!0},nameModifiers:{functionName:Zn.camelCase}}),ln={...zn,generate:async(l,n,r)=>{let{sdk:f,prefixes:a,suffixes:t}=r;return await zn.generate(l,n,r)}};var T=require("quicktype-core");var dn=require("quicktype-core/dist/support/Strings"),en=class extends T.GoRenderer{constructor(r,f,a,t){super(r,f,a);this.snowtypeOptions=t}emitSource(r){super.emitSource(r),v(this,this.snowtypeOptions.generators)}makeNameForTopLevel(r,f,a){return N((...t)=>super.makeNameForTopLevel(...t),this.snowtypeOptions,r,f,a)}},C=class extends T.GoTargetLanguage{constructor(r){super();this.snowtypeOptions=r}makeRenderer(r,f){return new en(this,r,(0,T.getOptionValues)(T.goOptions,f),this.snowtypeOptions)}},Yn=x({name:"go",quicktypeLanguage:C,defaultOptions:{"just-types":!0,"just-types-and-package":!0,package:"main","multi-file-output":!1,"field-tags":"mapstructure"},nameModifiers:{functionName:dn.camelCase}}),on={...Yn,generate:async(l,n,r)=>{let{sdk:f,prefixes:a,suffixes:t}=r;return await Yn.generate(l,n,r)}};var hn=[ln,B,X,d,on];var Nl=["Automatically generated by Snowtype"];function Cl(l){return hn.find(r=>r.id===l.language)?.generate(l.schemas,l.eventSpecifications,{header:Nl,outputFilename:"snowplow",tracker:l.tracker})}0&&(module.exports={generate});