@blotoutio/providers-tiktok-sdk 0.29.0 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs.js CHANGED
@@ -1,5 +1,9 @@
1
1
  'use strict';
2
2
 
3
+ const packageName = 'tiktok';
4
+ const sdkUrl = 'https://analytics.tiktok.com/i18n/pixel/events.js';
5
+
6
+ // eslint-disable-next-line @nx/enforce-module-boundaries
3
7
  /* eslint-enable */
4
8
  const snippet = () => {
5
9
  if (!window || !document || window.ttq) {
@@ -40,7 +44,7 @@ const snippet = () => {
40
44
  return e;
41
45
  };
42
46
  ttq.load = function (e, n) {
43
- const i = 'https://analytics.tiktok.com/i18n/pixel/events.js';
47
+ const i = sdkUrl;
44
48
  ttq._i = ttq._i || {};
45
49
  ttq._i[e] = [];
46
50
  ttq._i[e]['_u'] = i;
@@ -84,7 +88,16 @@ const getEventName = (event, manifestVariables) => {
84
88
  }
85
89
  return event;
86
90
  };
87
- const prepareData = (data) => {
91
+ const getProductId = (item, productIdMapping) => {
92
+ if (productIdMapping === '1') {
93
+ return item['variantId'];
94
+ }
95
+ if (productIdMapping === '2') {
96
+ return item['sku'];
97
+ }
98
+ return item['id'];
99
+ };
100
+ const prepareData = (data, productIdMapping) => {
88
101
  const payload = {};
89
102
  if (data['search']) {
90
103
  payload['query'] = data['search'];
@@ -112,8 +125,9 @@ const prepareData = (data) => {
112
125
  payload['content_type'] = data['contents'][0].type;
113
126
  payload['contents'] = data['contents'].map((item) => {
114
127
  const content = {};
115
- if (item.id) {
116
- content['content_id'] = item.id;
128
+ const contentId = getProductId(item, productIdMapping);
129
+ if (contentId) {
130
+ content['content_id'] = contentId;
117
131
  }
118
132
  if (item.quantity) {
119
133
  content['quantity'] = item.quantity;
@@ -140,8 +154,9 @@ const prepareData = (data) => {
140
154
  if (data['contents'][0].quantity) {
141
155
  payload['quantity'] = data['contents'][0].quantity;
142
156
  }
143
- if (data['contents'][0].id) {
144
- payload['content_id'] = data['contents'][0].id;
157
+ const contentId = getProductId(data['contents'][0], productIdMapping);
158
+ if (contentId) {
159
+ payload['content_id'] = contentId;
145
160
  }
146
161
  if (data['contents'][0].title) {
147
162
  payload['content_name'] = data['contents'][0].title;
@@ -161,7 +176,9 @@ const tag = ({ data, eventName, manifestVariables, eventId }) => {
161
176
  const name = data['skipTransformation']
162
177
  ? eventName
163
178
  : getEventName(eventName, manifestVariables);
164
- const eventData = data['skipTransformation'] ? data : prepareData(data);
179
+ const eventData = data['skipTransformation']
180
+ ? data
181
+ : prepareData(data, manifestVariables['productIdMapping']);
165
182
  delete eventData['skipTransformation'];
166
183
  window.ttq.instance(manifestVariables['pixelId']).track(name, {
167
184
  ...eventData,
@@ -169,13 +186,14 @@ const tag = ({ data, eventName, manifestVariables, eventId }) => {
169
186
  });
170
187
  }
171
188
  return {
172
- sdkVersion: "0.29.0" ,
189
+ sdkVersion: "0.30.0" ,
173
190
  };
174
191
  };
175
192
 
193
+ // eslint-disable-next-line @nx/enforce-module-boundaries
176
194
  /* eslint-enable */
177
195
  const data = {
178
- name: 'tiktok',
196
+ name: packageName,
179
197
  tag,
180
198
  init,
181
199
  };
package/index.js CHANGED
@@ -1,6 +1,10 @@
1
1
  var ProvidersTiktokSdk = (function () {
2
2
  'use strict';
3
3
 
4
+ const packageName = 'tiktok';
5
+ const sdkUrl = 'https://analytics.tiktok.com/i18n/pixel/events.js';
6
+
7
+ // eslint-disable-next-line @nx/enforce-module-boundaries
4
8
  /* eslint-enable */
5
9
  const snippet = () => {
6
10
  if (!window || !document || window.ttq) {
@@ -41,7 +45,7 @@ var ProvidersTiktokSdk = (function () {
41
45
  return e;
42
46
  };
43
47
  ttq.load = function (e, n) {
44
- const i = 'https://analytics.tiktok.com/i18n/pixel/events.js';
48
+ const i = sdkUrl;
45
49
  ttq._i = ttq._i || {};
46
50
  ttq._i[e] = [];
47
51
  ttq._i[e]['_u'] = i;
@@ -85,7 +89,16 @@ var ProvidersTiktokSdk = (function () {
85
89
  }
86
90
  return event;
87
91
  };
88
- const prepareData = (data) => {
92
+ const getProductId = (item, productIdMapping) => {
93
+ if (productIdMapping === '1') {
94
+ return item['variantId'];
95
+ }
96
+ if (productIdMapping === '2') {
97
+ return item['sku'];
98
+ }
99
+ return item['id'];
100
+ };
101
+ const prepareData = (data, productIdMapping) => {
89
102
  const payload = {};
90
103
  if (data['search']) {
91
104
  payload['query'] = data['search'];
@@ -113,8 +126,9 @@ var ProvidersTiktokSdk = (function () {
113
126
  payload['content_type'] = data['contents'][0].type;
114
127
  payload['contents'] = data['contents'].map((item) => {
115
128
  const content = {};
116
- if (item.id) {
117
- content['content_id'] = item.id;
129
+ const contentId = getProductId(item, productIdMapping);
130
+ if (contentId) {
131
+ content['content_id'] = contentId;
118
132
  }
119
133
  if (item.quantity) {
120
134
  content['quantity'] = item.quantity;
@@ -141,8 +155,9 @@ var ProvidersTiktokSdk = (function () {
141
155
  if (data['contents'][0].quantity) {
142
156
  payload['quantity'] = data['contents'][0].quantity;
143
157
  }
144
- if (data['contents'][0].id) {
145
- payload['content_id'] = data['contents'][0].id;
158
+ const contentId = getProductId(data['contents'][0], productIdMapping);
159
+ if (contentId) {
160
+ payload['content_id'] = contentId;
146
161
  }
147
162
  if (data['contents'][0].title) {
148
163
  payload['content_name'] = data['contents'][0].title;
@@ -162,7 +177,9 @@ var ProvidersTiktokSdk = (function () {
162
177
  const name = data['skipTransformation']
163
178
  ? eventName
164
179
  : getEventName(eventName, manifestVariables);
165
- const eventData = data['skipTransformation'] ? data : prepareData(data);
180
+ const eventData = data['skipTransformation']
181
+ ? data
182
+ : prepareData(data, manifestVariables['productIdMapping']);
166
183
  delete eventData['skipTransformation'];
167
184
  window.ttq.instance(manifestVariables['pixelId']).track(name, {
168
185
  ...eventData,
@@ -170,13 +187,14 @@ var ProvidersTiktokSdk = (function () {
170
187
  });
171
188
  }
172
189
  return {
173
- sdkVersion: "0.29.0" ,
190
+ sdkVersion: "0.30.0" ,
174
191
  };
175
192
  };
176
193
 
194
+ // eslint-disable-next-line @nx/enforce-module-boundaries
177
195
  /* eslint-enable */
178
196
  const data = {
179
- name: 'tiktok',
197
+ name: packageName,
180
198
  tag,
181
199
  init,
182
200
  };
package/index.mjs CHANGED
@@ -1,3 +1,7 @@
1
+ const packageName = 'tiktok';
2
+ const sdkUrl = 'https://analytics.tiktok.com/i18n/pixel/events.js';
3
+
4
+ // eslint-disable-next-line @nx/enforce-module-boundaries
1
5
  /* eslint-enable */
2
6
  const snippet = () => {
3
7
  if (!window || !document || window.ttq) {
@@ -38,7 +42,7 @@ const snippet = () => {
38
42
  return e;
39
43
  };
40
44
  ttq.load = function (e, n) {
41
- const i = 'https://analytics.tiktok.com/i18n/pixel/events.js';
45
+ const i = sdkUrl;
42
46
  ttq._i = ttq._i || {};
43
47
  ttq._i[e] = [];
44
48
  ttq._i[e]['_u'] = i;
@@ -82,7 +86,16 @@ const getEventName = (event, manifestVariables) => {
82
86
  }
83
87
  return event;
84
88
  };
85
- const prepareData = (data) => {
89
+ const getProductId = (item, productIdMapping) => {
90
+ if (productIdMapping === '1') {
91
+ return item['variantId'];
92
+ }
93
+ if (productIdMapping === '2') {
94
+ return item['sku'];
95
+ }
96
+ return item['id'];
97
+ };
98
+ const prepareData = (data, productIdMapping) => {
86
99
  const payload = {};
87
100
  if (data['search']) {
88
101
  payload['query'] = data['search'];
@@ -110,8 +123,9 @@ const prepareData = (data) => {
110
123
  payload['content_type'] = data['contents'][0].type;
111
124
  payload['contents'] = data['contents'].map((item) => {
112
125
  const content = {};
113
- if (item.id) {
114
- content['content_id'] = item.id;
126
+ const contentId = getProductId(item, productIdMapping);
127
+ if (contentId) {
128
+ content['content_id'] = contentId;
115
129
  }
116
130
  if (item.quantity) {
117
131
  content['quantity'] = item.quantity;
@@ -138,8 +152,9 @@ const prepareData = (data) => {
138
152
  if (data['contents'][0].quantity) {
139
153
  payload['quantity'] = data['contents'][0].quantity;
140
154
  }
141
- if (data['contents'][0].id) {
142
- payload['content_id'] = data['contents'][0].id;
155
+ const contentId = getProductId(data['contents'][0], productIdMapping);
156
+ if (contentId) {
157
+ payload['content_id'] = contentId;
143
158
  }
144
159
  if (data['contents'][0].title) {
145
160
  payload['content_name'] = data['contents'][0].title;
@@ -159,7 +174,9 @@ const tag = ({ data, eventName, manifestVariables, eventId }) => {
159
174
  const name = data['skipTransformation']
160
175
  ? eventName
161
176
  : getEventName(eventName, manifestVariables);
162
- const eventData = data['skipTransformation'] ? data : prepareData(data);
177
+ const eventData = data['skipTransformation']
178
+ ? data
179
+ : prepareData(data, manifestVariables['productIdMapping']);
163
180
  delete eventData['skipTransformation'];
164
181
  window.ttq.instance(manifestVariables['pixelId']).track(name, {
165
182
  ...eventData,
@@ -167,13 +184,14 @@ const tag = ({ data, eventName, manifestVariables, eventId }) => {
167
184
  });
168
185
  }
169
186
  return {
170
- sdkVersion: "0.29.0" ,
187
+ sdkVersion: "0.30.0" ,
171
188
  };
172
189
  };
173
190
 
191
+ // eslint-disable-next-line @nx/enforce-module-boundaries
174
192
  /* eslint-enable */
175
193
  const data = {
176
- name: 'tiktok',
194
+ name: packageName,
177
195
  tag,
178
196
  init,
179
197
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blotoutio/providers-tiktok-sdk",
3
- "version": "0.29.0",
3
+ "version": "0.30.0",
4
4
  "description": "Tiktok Browser SDK for EdgeTag",
5
5
  "author": "Blotout",
6
6
  "license": "MIT",