@metarouter/ajs-starter-kit 1.0.143 → 1.0.145
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.dist/actioniq/kit.etag.json +1 -1
- package/.dist/actioniq/metadata.json +4 -0
- package/.dist/actioniq/playbook.etag.json +1 -1
- package/.dist/actioniq/playbook.json +2 -1
- package/.dist/adjust/kit.etag.json +1 -1
- package/.dist/adjust/metadata.json +4 -0
- package/.dist/adjust/playbook.etag.json +1 -1
- package/.dist/adjust/playbook.json +2 -1
- package/.dist/adobe-bdia/connection.etag.json +1 -0
- package/.dist/adobe-bdia/connection.json +42 -0
- package/.dist/adobe-bdia/kit.etag.json +1 -0
- package/.dist/adobe-bdia/metadata.json +25 -0
- package/.dist/adobe-bdia/playbook.etag.json +1 -0
- package/.dist/adobe-bdia/playbook.json +251 -0
- package/.dist/amazon-data-firehose/kit.etag.json +1 -1
- package/.dist/amazon-data-firehose/metadata.json +4 -0
- package/.dist/amazon-data-firehose/playbook.etag.json +1 -1
- package/.dist/amazon-data-firehose/playbook.json +3 -2
- package/.dist/amazon-kinesis/kit.etag.json +1 -1
- package/.dist/amazon-kinesis/metadata.json +4 -0
- package/.dist/amazon-kinesis/playbook.etag.json +1 -1
- package/.dist/amazon-kinesis/playbook.json +3 -2
- package/.dist/amplitude/kit.etag.json +1 -1
- package/.dist/amplitude/metadata.json +4 -0
- package/.dist/amplitude/playbook.etag.json +1 -1
- package/.dist/amplitude/playbook.json +9 -1
- package/.dist/blob/connection.etag.json +1 -1
- package/.dist/blob/connection.json +2 -1
- package/.dist/blob/kit.etag.json +1 -1
- package/.dist/blob/metadata.json +8 -0
- package/.dist/blob/playbook.etag.json +1 -1
- package/.dist/blob/playbook.json +3 -2
- package/.dist/blueshift/kit.etag.json +1 -1
- package/.dist/blueshift/metadata.json +4 -0
- package/.dist/blueshift/playbook.etag.json +1 -1
- package/.dist/blueshift/playbook.json +3 -1
- package/.dist/braze/kit.etag.json +1 -1
- package/.dist/braze/metadata.json +4 -0
- package/.dist/braze/playbook.etag.json +1 -1
- package/.dist/braze/playbook.json +2 -1
- package/.dist/build-your-own/kit.etag.json +1 -1
- package/.dist/build-your-own/metadata.json +4 -0
- package/.dist/build-your-own/playbook.etag.json +1 -1
- package/.dist/build-your-own/playbook.json +3 -2
- package/.dist/clinch/kit.etag.json +1 -1
- package/.dist/clinch/metadata.json +4 -0
- package/.dist/clinch/playbook.etag.json +1 -1
- package/.dist/clinch/playbook.json +3 -2
- package/.dist/connection-schemas.json +32 -0
- package/.dist/criteo/kit.etag.json +1 -1
- package/.dist/gcs/kit.etag.json +1 -1
- package/.dist/gcs/metadata.json +4 -0
- package/.dist/gcs/playbook.etag.json +1 -1
- package/.dist/gcs/playbook.json +3 -2
- package/.dist/google-ads/kit.etag.json +1 -1
- package/.dist/google-ads/metadata.json +4 -0
- package/.dist/google-ads/playbook.etag.json +1 -1
- package/.dist/google-ads/playbook.json +2 -1
- package/.dist/google-ads-audience/kit.etag.json +1 -1
- package/.dist/google-ads-audience/metadata.json +4 -0
- package/.dist/google-ads-audience/playbook.etag.json +1 -1
- package/.dist/google-ads-audience/playbook.json +3 -1
- package/.dist/google-analytics/kit.etag.json +1 -1
- package/.dist/google-analytics/metadata.json +4 -0
- package/.dist/google-analytics/playbook.etag.json +1 -1
- package/.dist/google-analytics/playbook.json +5 -1
- package/.dist/google-analytics-4-collect/kit.etag.json +1 -1
- package/.dist/google-analytics-4-collect/metadata.json +4 -0
- package/.dist/google-analytics-4-collect/playbook.etag.json +1 -1
- package/.dist/google-analytics-4-collect/playbook.json +10 -3
- package/.dist/google-cm360/kit.etag.json +1 -1
- package/.dist/google-cm360/metadata.json +4 -0
- package/.dist/google-cm360/playbook.etag.json +1 -1
- package/.dist/google-cm360/playbook.json +2 -1
- package/.dist/google-pubsub/kit.etag.json +1 -1
- package/.dist/google-pubsub/metadata.json +4 -0
- package/.dist/google-pubsub/playbook.etag.json +1 -1
- package/.dist/google-pubsub/playbook.json +3 -2
- package/.dist/impact-radius/kit.etag.json +1 -1
- package/.dist/impact-radius/metadata.json +4 -0
- package/.dist/impact-radius/playbook.etag.json +1 -1
- package/.dist/impact-radius/playbook.json +2 -1
- package/.dist/kafka/kit.etag.json +1 -1
- package/.dist/kafka/metadata.json +4 -0
- package/.dist/kafka/playbook.etag.json +1 -1
- package/.dist/kafka/playbook.json +3 -2
- package/.dist/nextdoor-capi/kit.etag.json +1 -1
- package/.dist/nextdoor-capi/metadata.json +4 -0
- package/.dist/nextdoor-capi/playbook.etag.json +1 -1
- package/.dist/nextdoor-capi/playbook.json +150 -10
- package/.dist/perion/kit.etag.json +1 -1
- package/.dist/perion/metadata.json +4 -0
- package/.dist/perion/playbook.etag.json +1 -1
- package/.dist/perion/playbook.json +4 -1
- package/.dist/pinterest/kit.etag.json +1 -1
- package/.dist/pinterest/metadata.json +4 -0
- package/.dist/pinterest/playbook.etag.json +1 -1
- package/.dist/pinterest/playbook.json +6 -1
- package/.dist/podscribe/kit.etag.json +1 -1
- package/.dist/podscribe/metadata.json +4 -0
- package/.dist/podscribe/playbook.etag.json +1 -1
- package/.dist/podscribe/playbook.json +4 -3
- package/.dist/reddit-ads/connection.etag.json +1 -1
- package/.dist/reddit-ads/connection.json +10 -38
- package/.dist/reddit-ads/kit.etag.json +1 -1
- package/.dist/reddit-ads/metadata.json +5 -1
- package/.dist/reddit-ads/playbook.etag.json +1 -1
- package/.dist/reddit-ads/playbook.json +57 -41
- package/.dist/roomvo/kit.etag.json +1 -1
- package/.dist/roomvo/metadata.json +4 -0
- package/.dist/roomvo/playbook.etag.json +1 -1
- package/.dist/roomvo/playbook.json +2 -1
- package/.dist/s3/kit.etag.json +1 -1
- package/.dist/s3/metadata.json +4 -0
- package/.dist/s3/playbook.etag.json +1 -1
- package/.dist/s3/playbook.json +3 -2
- package/.dist/snapchat/kit.etag.json +1 -1
- package/.dist/snapchat/metadata.json +4 -0
- package/.dist/snapchat/playbook.etag.json +1 -1
- package/.dist/snapchat/playbook.json +2 -1
- package/.dist/snowflake/kit.etag.json +1 -1
- package/.dist/snowflake/metadata.json +4 -0
- package/.dist/snowflake/playbook.etag.json +1 -1
- package/.dist/snowflake/playbook.json +3 -2
- package/.dist/ttd-conversions/kit.etag.json +1 -1
- package/.dist/ttd-conversions/metadata.json +4 -0
- package/.dist/ttd-conversions/playbook.etag.json +1 -1
- package/.dist/ttd-conversions/playbook.json +3 -2
- package/README.md +63 -40
- package/index.js +10 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"40857deb723db9f0b945ab0219339abd -"
|
|
@@ -56,6 +56,10 @@
|
|
|
56
56
|
{
|
|
57
57
|
"date": "2025-07-30T00:00:00.000Z",
|
|
58
58
|
"note": "Version: 1.3.0\nUpdated Lua timestamp fallback logic to use input.timestamp"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"date": "2025-10-15T00:00:00.000Z",
|
|
62
|
+
"note": "Version: 1.3.1\nAdded friendly names to expressions"
|
|
59
63
|
}
|
|
60
64
|
]
|
|
61
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"51aa8ea68595dfde3fd641476c1418f4 -"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.3.
|
|
2
|
+
"version": "1.3.1",
|
|
3
3
|
"global": {
|
|
4
4
|
"mappings": [
|
|
5
5
|
{
|
|
@@ -156,6 +156,7 @@
|
|
|
156
156
|
"expressions": [
|
|
157
157
|
{
|
|
158
158
|
"lang": "lua",
|
|
159
|
+
"name": "Generalized Event Mappings",
|
|
159
160
|
"body": "if input.event then\n local eventName = REPLACE(LOWER(input.event), \" \", \"_\")\n local results = {}\n local flatten = FLATTEN(input.properties, \"\", \"_\", 2, { array_start_index = 1 })\n results[eventName] = flatten\n return { properties = results }\nend"
|
|
160
161
|
}
|
|
161
162
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"90fcba6101786ab400809a974dac4cfa -"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"ccb100bef4bf87054ef17c9a239aefc2 -"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.1.
|
|
2
|
+
"version": "0.1.1",
|
|
3
3
|
"params": [
|
|
4
4
|
{
|
|
5
5
|
"name": "APP_TOKEN",
|
|
@@ -42,6 +42,7 @@
|
|
|
42
42
|
"expressions": [
|
|
43
43
|
{
|
|
44
44
|
"lang": "lua",
|
|
45
|
+
"name": "Mobile Advertising and Device IDs",
|
|
45
46
|
"body": "local result = {}\n\n-- Device ID / advertisingId respectively\nif input.context.device.type == 'ios' then\n result.idfv = UPPER(input.context.device.id)\n result.idfa = input.context.device.advertisingId\nelseif input.context.device.type == 'android' then\n result.android_id = LOWER(REPLACE(input.context.device.id, \"-\", \"\"))\n result.gps_adid = input.context.device.advertisingId\nend\n\nreturn result"
|
|
46
47
|
}
|
|
47
48
|
]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"9dd363ed21e8441906c1363beafac9ec -"
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"params": [
|
|
3
|
+
{
|
|
4
|
+
"name": "TOKEN_URL",
|
|
5
|
+
"exampleValue": "my-token-url",
|
|
6
|
+
"isOptional": true
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"name": "CLIENT_ID",
|
|
10
|
+
"exampleValue": "my-client-id",
|
|
11
|
+
"isOptional": false
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "CLIENT_SECRET",
|
|
15
|
+
"exampleValue": "my-client-secret",
|
|
16
|
+
"isOptional": false
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "TOKEN_SCOPES",
|
|
20
|
+
"exampleValue": "my-auth-token-scopes",
|
|
21
|
+
"isOptional": false
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"name": "EVENT_ENDPOINT",
|
|
25
|
+
"exampleValue": "my-event-endpoint",
|
|
26
|
+
"isOptional": true
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "COLUMN_NAMES",
|
|
30
|
+
"exampleValue": "my-csv-column-names",
|
|
31
|
+
"isOptional": true
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
"adobe-bdia": {
|
|
35
|
+
"token_url": "https://ims-na1.adobelogin.com/ims/token/v3",
|
|
36
|
+
"client_id": "$$CLIENT_ID$$",
|
|
37
|
+
"client_secret": "$$CLIENT_SECRET$$",
|
|
38
|
+
"token_scopes": "openid,AdobeID,additional_info.projectedProductContext",
|
|
39
|
+
"event_endpoint": "https://analytics-collection.adobe.io/aa/collect/v1/events",
|
|
40
|
+
"column_names": "timestamp,reportSuiteID,visitorID,userAgent,pageName,queryString,events,products,purchaseID"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"9f4eff319559e9105d63791341a104b0 -"
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"isDraft": false,
|
|
3
|
+
"isDeprecated": false,
|
|
4
|
+
"isBeta": true,
|
|
5
|
+
"friendlyName": "Adobe Analytics",
|
|
6
|
+
"description": "Adobe Analytics is a digital analytics platform that helps businesses collect, measure, and analyze data from websites, mobile apps, and other digital channels.",
|
|
7
|
+
"logo": "https://cdn.metarouter.io/adobe-analytics.png",
|
|
8
|
+
"color": "#140933",
|
|
9
|
+
"eventSource": {
|
|
10
|
+
"isAndroidApp": true,
|
|
11
|
+
"isIosApp": true,
|
|
12
|
+
"isWebApp": true
|
|
13
|
+
},
|
|
14
|
+
"inputSchema": "analytics_js",
|
|
15
|
+
"releaseNotes": [
|
|
16
|
+
{
|
|
17
|
+
"date": "2025-10-08T21:00:00.000Z",
|
|
18
|
+
"note": "Version: 0.1.0\nBeta Version\nAdobe Analytics initial release"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"date": "2025-10-08T21:00:00.000Z",
|
|
22
|
+
"note": "Version: 0.1.1\nConnection parameter fixes"
|
|
23
|
+
}
|
|
24
|
+
]
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"73e7f0ad0ceb79513b4b5aa8fcf14987 -"
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "0.1.1",
|
|
3
|
+
"default": {
|
|
4
|
+
"filters": [
|
|
5
|
+
{
|
|
6
|
+
"byEventNames": {
|
|
7
|
+
"action": "allow",
|
|
8
|
+
"events": [
|
|
9
|
+
"page",
|
|
10
|
+
""
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
"global": {
|
|
17
|
+
"enrichments": [
|
|
18
|
+
{
|
|
19
|
+
"staticString": "ADD_REPORT_SUITE_ID_HERE",
|
|
20
|
+
"outputKey": "reportSuiteID"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"mappings": [
|
|
24
|
+
{
|
|
25
|
+
"inputKey": "input",
|
|
26
|
+
"outputKey": "visitorID",
|
|
27
|
+
"transforms": [
|
|
28
|
+
{
|
|
29
|
+
"expression": {
|
|
30
|
+
"lang": "lua",
|
|
31
|
+
"body": "return REPLACE(input.anonymousId, \"-\", \"\")"
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"inputKey": "timestamp",
|
|
38
|
+
"outputKey": "timestamp",
|
|
39
|
+
"transforms": [
|
|
40
|
+
{
|
|
41
|
+
"expression": {
|
|
42
|
+
"lang": "lua",
|
|
43
|
+
"body": "return SECONDS_SINCE_EPOCH_FROM_RFC3999(input.timestamp)"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"inputKey": "context.page.url",
|
|
50
|
+
"outputKey": "pageURL"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"inputKey": "context.page.title",
|
|
54
|
+
"outputKey": "pageName"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"inputKey": "context.userAgent",
|
|
58
|
+
"outputKey": "userAgent"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"inputKey": "context.ip",
|
|
62
|
+
"outputKey": "ipaddress"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"inputKey": "context.page.referrer",
|
|
66
|
+
"outputKey": "referrer"
|
|
67
|
+
}
|
|
68
|
+
],
|
|
69
|
+
"expressions": [
|
|
70
|
+
{
|
|
71
|
+
"lang": "lua",
|
|
72
|
+
"name": "Mobile Device Mappings",
|
|
73
|
+
"body": "if input.context.device then\nreturn {\n [\"hints.mobile\"] = true,\n [\"hints.model\"] = input.context.device.model,\n [\"hints.platform\"] = input.context.os.name,\n [\"hints.platformversion\"] = input.context.os.version\n}\nend\nreturn { [\"hints.mobile\"] = false }"
|
|
74
|
+
}
|
|
75
|
+
]
|
|
76
|
+
},
|
|
77
|
+
"eventSpecific": {
|
|
78
|
+
"order_completed": {
|
|
79
|
+
"enrichments": [
|
|
80
|
+
{
|
|
81
|
+
"staticString": "purchase",
|
|
82
|
+
"outputKey": "events"
|
|
83
|
+
}
|
|
84
|
+
],
|
|
85
|
+
"mappings": [
|
|
86
|
+
{
|
|
87
|
+
"inputKey": "input",
|
|
88
|
+
"outputKey": "products",
|
|
89
|
+
"transforms": [
|
|
90
|
+
{
|
|
91
|
+
"expression": {
|
|
92
|
+
"lang": "lua",
|
|
93
|
+
"body": "return JOIN(MAP(input.properties.products, function(p)\n local category = p.category or \"\"\n local name = p.name or \"\"\n local qty = p.quantity or 1\n -- Strip out ; , | to avoid breaking Adobe parsing\n category = category:gsub(\"[;,|]\", \"\")\n name = name:gsub(\"[;,|]\", \"\")\n return category .. \";\" .. name .. \";\" .. TO_STRING(qty) .. \";\" .. TOTAL_VALUE(p)\nend), \",\")"
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
]
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"inputKey": "properties.currency",
|
|
100
|
+
"outputKey": "currencyCode",
|
|
101
|
+
"transforms": [
|
|
102
|
+
{
|
|
103
|
+
"modifyString": "uppercase"
|
|
104
|
+
}
|
|
105
|
+
]
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"inputKey": "properties.order_id",
|
|
109
|
+
"outputKey": "purchaseID"
|
|
110
|
+
}
|
|
111
|
+
]
|
|
112
|
+
},
|
|
113
|
+
"product_viewed": {
|
|
114
|
+
"enrichments": [
|
|
115
|
+
{
|
|
116
|
+
"staticString": "prodView",
|
|
117
|
+
"outputKey": "events"
|
|
118
|
+
}
|
|
119
|
+
],
|
|
120
|
+
"mappings": [
|
|
121
|
+
{
|
|
122
|
+
"inputKey": "input",
|
|
123
|
+
"outputKey": "products",
|
|
124
|
+
"transforms": [
|
|
125
|
+
{
|
|
126
|
+
"expression": {
|
|
127
|
+
"lang": "lua",
|
|
128
|
+
"body": "local p = input.properties\nlocal category = p.category or \"\"\nlocal name = p.name or \"\"\nlocal qty = p.quantity or 1\nlocal price = p.price or 0\n-- Strip out ; , | to avoid breaking Adobe parsing\ncategory = category:gsub(\"[;,|]\", \"\")\nname = name:gsub(\"[;,|]\", \"\")\nreturn category .. \";\" .. name .. \";\" .. TO_STRING(qty) .. \";\" .. TOTAL_VALUE(p)"
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
]
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"inputKey": "properties.currency",
|
|
135
|
+
"outputKey": "currencyCode",
|
|
136
|
+
"transforms": [
|
|
137
|
+
{
|
|
138
|
+
"modifyString": "uppercase"
|
|
139
|
+
}
|
|
140
|
+
]
|
|
141
|
+
}
|
|
142
|
+
]
|
|
143
|
+
},
|
|
144
|
+
"product_added": {
|
|
145
|
+
"enrichments": [
|
|
146
|
+
{
|
|
147
|
+
"staticString": "scAdd",
|
|
148
|
+
"outputKey": "events"
|
|
149
|
+
}
|
|
150
|
+
],
|
|
151
|
+
"mappings": [
|
|
152
|
+
{
|
|
153
|
+
"inputKey": "input",
|
|
154
|
+
"outputKey": "products",
|
|
155
|
+
"transforms": [
|
|
156
|
+
{
|
|
157
|
+
"expression": {
|
|
158
|
+
"lang": "lua",
|
|
159
|
+
"body": "local p = input.properties\nlocal category = p.category or \"\"\nlocal name = p.name or \"\"\nlocal qty = p.quantity or 1\n-- Strip out ; , | to avoid breaking Adobe parsing\ncategory = category:gsub(\"[;,|]\", \"\")\nname = name:gsub(\"[;,|]\", \"\")\nreturn category .. \";\" .. name .. \";\" .. TO_STRING(qty) .. \";\" .. TOTAL_VALUE(p)"
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
]
|
|
163
|
+
}
|
|
164
|
+
]
|
|
165
|
+
},
|
|
166
|
+
"product_removed": {
|
|
167
|
+
"enrichments": [
|
|
168
|
+
{
|
|
169
|
+
"staticString": "scRemove",
|
|
170
|
+
"outputKey": "events"
|
|
171
|
+
}
|
|
172
|
+
],
|
|
173
|
+
"mappings": [
|
|
174
|
+
{
|
|
175
|
+
"inputKey": "input",
|
|
176
|
+
"outputKey": "products",
|
|
177
|
+
"transforms": [
|
|
178
|
+
{
|
|
179
|
+
"expression": {
|
|
180
|
+
"lang": "lua",
|
|
181
|
+
"body": "local p = input.properties\nlocal category = p.category or \"\"\nlocal name = p.name or \"\"\nlocal qty = p.quantity or 1\n-- Strip out ; , | to avoid breaking Adobe parsing\ncategory = category:gsub(\"[;,|]\", \"\")\nname = name:gsub(\"[;,|]\", \"\")\nreturn category .. \";\" .. name .. \";\" .. TO_STRING(qty) .. \";\" .. TOTAL_VALUE(p)"
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
]
|
|
185
|
+
}
|
|
186
|
+
]
|
|
187
|
+
},
|
|
188
|
+
"cart_viewed": {
|
|
189
|
+
"enrichments": [
|
|
190
|
+
{
|
|
191
|
+
"staticString": "scView",
|
|
192
|
+
"outputKey": "events"
|
|
193
|
+
}
|
|
194
|
+
],
|
|
195
|
+
"mappings": [
|
|
196
|
+
{
|
|
197
|
+
"inputKey": "input",
|
|
198
|
+
"outputKey": "products",
|
|
199
|
+
"transforms": [
|
|
200
|
+
{
|
|
201
|
+
"expression": {
|
|
202
|
+
"lang": "lua",
|
|
203
|
+
"body": "return JOIN(MAP(input.properties.products, function(p)\n local category = p.category or \"\"\n local name = p.name or \"\"\n local qty = p.quantity or 1\n -- Strip out ; , | to avoid breaking Adobe parsing\n category = category:gsub(\"[;,|]\", \"\")\n name = name:gsub(\"[;,|]\", \"\")\n return category .. \";\" .. name .. \";\" .. TO_STRING(qty) .. \";\" .. TOTAL_VALUE(p)\nend), \",\")"
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
]
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"inputKey": "properties.currency",
|
|
210
|
+
"outputKey": "currencyCode",
|
|
211
|
+
"transforms": [
|
|
212
|
+
{
|
|
213
|
+
"modifyString": "uppercase"
|
|
214
|
+
}
|
|
215
|
+
]
|
|
216
|
+
}
|
|
217
|
+
]
|
|
218
|
+
},
|
|
219
|
+
"checkout_started": {
|
|
220
|
+
"enrichments": [
|
|
221
|
+
{
|
|
222
|
+
"staticString": "scCheckout",
|
|
223
|
+
"outputKey": "events"
|
|
224
|
+
}
|
|
225
|
+
],
|
|
226
|
+
"mappings": [
|
|
227
|
+
{
|
|
228
|
+
"inputKey": "input",
|
|
229
|
+
"outputKey": "products",
|
|
230
|
+
"transforms": [
|
|
231
|
+
{
|
|
232
|
+
"expression": {
|
|
233
|
+
"lang": "lua",
|
|
234
|
+
"body": "return JOIN(MAP(input.properties.products, function(p)\n local category = p.category or \"\"\n local name = p.name or \"\"\n local qty = p.quantity or 1\n -- Strip out ; , | to avoid breaking Adobe parsing\n category = category:gsub(\"[;,|]\", \"\")\n name = name:gsub(\"[;,|]\", \"\")\n return category .. \";\" .. name .. \";\" .. TO_STRING(qty) .. \";\" .. TOTAL_VALUE(p)\nend), \",\")"
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
]
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
"inputKey": "properties.currency",
|
|
241
|
+
"outputKey": "currencyCode",
|
|
242
|
+
"transforms": [
|
|
243
|
+
{
|
|
244
|
+
"modifyString": "uppercase"
|
|
245
|
+
}
|
|
246
|
+
]
|
|
247
|
+
}
|
|
248
|
+
]
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"0ef6096cf1b5d876beb6e4eb43d22785 -"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"17e07cbd48d74443a47c41766180389f -"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"7f405880b38b7932914e5bd6e751e194 -"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"1024a4471ea092ba1df34ac8d2af53f6 -"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"a2e36e2dd5ffa23be4b91aceba5aa55d -"
|
|
@@ -56,6 +56,10 @@
|
|
|
56
56
|
{
|
|
57
57
|
"date": "2025-03-12T00:00:00.000Z",
|
|
58
58
|
"note": "Version: 1.2.0\nAdded API_URL param to accommodate Amplitude's EU residency server"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"date": "2025-10-15T00:00:00.000Z",
|
|
62
|
+
"note": "Version: 1.2.1\nAdded friendly names to expressions"
|
|
59
63
|
}
|
|
60
64
|
]
|
|
61
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"f9ca245a3aae4b37aa8b23bad0ee8cd5 -"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.2.
|
|
2
|
+
"version": "1.2.1",
|
|
3
3
|
"params": [
|
|
4
4
|
{
|
|
5
5
|
"name": "API_KEY",
|
|
@@ -134,6 +134,7 @@
|
|
|
134
134
|
"expressions": [
|
|
135
135
|
{
|
|
136
136
|
"lang": "lua",
|
|
137
|
+
"name": "Click IDs and Platform",
|
|
137
138
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nreturn {\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
138
139
|
}
|
|
139
140
|
]
|
|
@@ -231,6 +232,7 @@
|
|
|
231
232
|
"expressions": [
|
|
232
233
|
{
|
|
233
234
|
"lang": "lua",
|
|
235
|
+
"name": "Click IDs and Platform",
|
|
234
236
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nreturn {\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
235
237
|
}
|
|
236
238
|
]
|
|
@@ -332,6 +334,7 @@
|
|
|
332
334
|
"expressions": [
|
|
333
335
|
{
|
|
334
336
|
"lang": "lua",
|
|
337
|
+
"name": "Click IDs and Platform",
|
|
335
338
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nreturn {\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
336
339
|
}
|
|
337
340
|
]
|
|
@@ -445,6 +448,7 @@
|
|
|
445
448
|
"expressions": [
|
|
446
449
|
{
|
|
447
450
|
"lang": "lua",
|
|
451
|
+
"name": "Click IDs and Platform",
|
|
448
452
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nreturn {\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
449
453
|
}
|
|
450
454
|
]
|
|
@@ -562,6 +566,7 @@
|
|
|
562
566
|
"expressions": [
|
|
563
567
|
{
|
|
564
568
|
"lang": "lua",
|
|
569
|
+
"name": "Click IDs and Platform",
|
|
565
570
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nreturn {\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
566
571
|
}
|
|
567
572
|
]
|
|
@@ -659,6 +664,7 @@
|
|
|
659
664
|
"expressions": [
|
|
660
665
|
{
|
|
661
666
|
"lang": "lua",
|
|
667
|
+
"name": "Cart Values, Click IDs and Platform",
|
|
662
668
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nreturn {\n event_properties = {\n total_cart_size = #input.properties.products,\n total_cart_value = SUM(MAP(input.properties.products, function (p) return p.price * (p.quantity or 1) end)),\n },\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
663
669
|
}
|
|
664
670
|
]
|
|
@@ -752,6 +758,7 @@
|
|
|
752
758
|
"expressions": [
|
|
753
759
|
{
|
|
754
760
|
"lang": "lua",
|
|
761
|
+
"name": "Order Values, Click IDs and Platform",
|
|
755
762
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nlocal props = {\n cart_id = input.properties.cart_id,\n total_cart_size = #input.properties.products,\n total_cart_value = SUM(MAP(input.properties.products, function (p) return p.price * (p.quantity or 1) end)),\n promo_code_applied = input.properties.coupon,\n order_total = input.properties.total,\n total_discounts = input.properties.discount,\n order_id = input.properties.order_id,\n total_shipping = input.properties.shipping,\n total_tax = input.properties.tax,\n}\n\nprops['$revenue'] = TO_FLOAT(input.properties.revenue)\n\nreturn {\n event_properties = props,\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
756
763
|
}
|
|
757
764
|
]
|
|
@@ -844,6 +851,7 @@
|
|
|
844
851
|
"expressions": [
|
|
845
852
|
{
|
|
846
853
|
"lang": "lua",
|
|
854
|
+
"name": "Click IDs and Platform",
|
|
847
855
|
"body": "function getPlatform (type)\n local t = LOWER(type) or ''\n if t == 'ios' then\n return 'iOS'\n elseif t == 'android' then\n return 'Android'\n else\n return 'Web'\n end\nend\n\nlocal props = input.properties or {}\n\nreturn {\n event_properties = props,\n user_properties = {\n referring_domain = SPLIT(SPLIT(input.context.page.referrer, \"//\", 2)[2], \"/\", 2)[1] or \"\",\n gclid = DECODE_URL_QUERY(input.context.page.url).gclid,\n dclid = DECODE_URL_QUERY(input.context.page.url).dclid,\n fbclid = DECODE_URL_QUERY(input.context.page.url).fbclid,\n },\n platform = getPlatform(input.context.device.type),\n}"
|
|
848
856
|
}
|
|
849
857
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"c0e6f8ff1cbf0fb398b5d534ab4a8c58 -"
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
"account_name": "my-account-name",
|
|
5
5
|
"account_key": "my-account-key",
|
|
6
6
|
"compression": 1,
|
|
7
|
-
"sas_token": "sp=r&st=2024-04-30T15:26:15Z&se=2024-04-30T23:26:15Z&spr=https&sv=2022-11-02&sr=c&sig=au1XEXcJOWntSxxjnStY1fNACvZtQ%2FJhik0OpZUl%2FGA%3D"
|
|
7
|
+
"sas_token": "sp=r&st=2024-04-30T15:26:15Z&se=2024-04-30T23:26:15Z&spr=https&sv=2022-11-02&sr=c&sig=au1XEXcJOWntSxxjnStY1fNACvZtQ%2FJhik0OpZUl%2FGA%3D",
|
|
8
|
+
"use_managed_identity": false
|
|
8
9
|
}
|
|
9
10
|
}
|
package/.dist/blob/kit.etag.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"fb41dd1bfdbb23bca00baa5777379fd1 -"
|
package/.dist/blob/metadata.json
CHANGED
|
@@ -40,6 +40,14 @@
|
|
|
40
40
|
{
|
|
41
41
|
"date": "2024-04-29T00:00:00.000Z",
|
|
42
42
|
"note": "Added SAS Token"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"date": "2025-10-08T00:00:00.000Z",
|
|
46
|
+
"note": "Version: 1.2.0\nAdded Managed Identity authentication."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"date": "2025-10-15T00:00:00.000Z",
|
|
50
|
+
"note": "Version: 1.2.1\nAdded friendly names to expressions"
|
|
43
51
|
}
|
|
44
52
|
]
|
|
45
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"a87f00ebcfe07b76ea247c05f60618ba -"
|
package/.dist/blob/playbook.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"60af6d421ed89984520e68508c4f8a6d -"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"
|
|
1
|
+
"63754161071ceae4120de9fcfae0e63e -"
|