@suprsend/node-sdk 1.8.1 → 1.9.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/dist/attachment.js +0 -13
- package/dist/brands.js +24 -55
- package/dist/bulk_response.js +2 -11
- package/dist/constants.js +14 -10
- package/dist/event.js +16 -62
- package/dist/events_bulk.js +13 -93
- package/dist/index.js +2 -35
- package/dist/language_codes.js +0 -3
- package/dist/request_json/event.json +5 -0
- package/dist/request_json/list_broadcast.json +7 -1
- package/dist/request_json/workflow.json +55 -2
- package/dist/signature.js +0 -9
- package/dist/subscriber.js +84 -105
- package/dist/subscriber_helper.js +190 -219
- package/dist/subscriber_list.js +386 -140
- package/dist/subscribers_bulk.js +13 -95
- package/dist/tenant.js +214 -0
- package/dist/utils.js +12 -101
- package/dist/workflow.js +12 -53
- package/dist/workflows_bulk.js +13 -92
- package/package.json +2 -2
- package/src/event.js +7 -0
- package/src/index.js +3 -0
- package/src/request_json/event.json +5 -0
- package/src/request_json/list_broadcast.json +7 -1
- package/src/request_json/workflow.json +55 -2
- package/src/subscriber.js +84 -0
- package/src/subscriber_helper.js +88 -0
- package/src/subscriber_list.js +228 -2
- package/src/tenant.js +120 -0
- package/src/workflow.js +7 -0
- package/types/index.d.ts +59 -4
package/dist/events_bulk.js
CHANGED
|
@@ -1,54 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.BulkEventsFactory = void 0;
|
|
9
|
-
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
-
|
|
14
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
-
|
|
16
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
-
|
|
18
12
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
19
|
-
|
|
20
13
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
21
|
-
|
|
22
14
|
var _constants = require("./constants");
|
|
23
|
-
|
|
24
15
|
var _signature = _interopRequireDefault(require("./signature"));
|
|
25
|
-
|
|
26
16
|
var _bulk_response = _interopRequireDefault(require("./bulk_response"));
|
|
27
|
-
|
|
28
17
|
var _event = _interopRequireDefault(require("./event"));
|
|
29
|
-
|
|
30
18
|
var _utils = require("./utils");
|
|
31
|
-
|
|
32
19
|
var _lodash = require("lodash");
|
|
33
|
-
|
|
34
20
|
var _axios = _interopRequireDefault(require("axios"));
|
|
35
|
-
|
|
36
21
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
37
|
-
|
|
38
22
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
39
|
-
|
|
40
23
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
41
|
-
|
|
42
24
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
43
|
-
|
|
44
25
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
45
|
-
|
|
46
26
|
var BulkEventsFactory = /*#__PURE__*/function () {
|
|
47
27
|
function BulkEventsFactory(config) {
|
|
48
28
|
(0, _classCallCheck2["default"])(this, BulkEventsFactory);
|
|
49
29
|
this.config = config;
|
|
50
30
|
}
|
|
51
|
-
|
|
52
31
|
(0, _createClass2["default"])(BulkEventsFactory, [{
|
|
53
32
|
key: "new_instance",
|
|
54
33
|
value: function new_instance() {
|
|
@@ -57,9 +36,7 @@ var BulkEventsFactory = /*#__PURE__*/function () {
|
|
|
57
36
|
}]);
|
|
58
37
|
return BulkEventsFactory;
|
|
59
38
|
}();
|
|
60
|
-
|
|
61
39
|
exports.BulkEventsFactory = BulkEventsFactory;
|
|
62
|
-
|
|
63
40
|
var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
64
41
|
function _BulkEventsChunk(config) {
|
|
65
42
|
(0, _classCallCheck2["default"])(this, _BulkEventsChunk);
|
|
@@ -71,7 +48,6 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
71
48
|
this.__running_length = 0;
|
|
72
49
|
this.response;
|
|
73
50
|
}
|
|
74
|
-
|
|
75
51
|
(0, _createClass2["default"])(_BulkEventsChunk, [{
|
|
76
52
|
key: "__get_url",
|
|
77
53
|
value: function __get_url() {
|
|
@@ -98,9 +74,7 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
98
74
|
value: function __add_event_to_chunk(event, event_size) {
|
|
99
75
|
// First add size, then body to reduce effects of race condition
|
|
100
76
|
this.__running_size += event_size;
|
|
101
|
-
|
|
102
77
|
this.__chunk.push(event);
|
|
103
|
-
|
|
104
78
|
this.__running_length += 1;
|
|
105
79
|
}
|
|
106
80
|
}, {
|
|
@@ -118,25 +92,19 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
118
92
|
if (!event) {
|
|
119
93
|
return true;
|
|
120
94
|
}
|
|
121
|
-
|
|
122
95
|
if (this.__check_limit_reached()) {
|
|
123
96
|
return false;
|
|
124
97
|
}
|
|
125
|
-
|
|
126
98
|
if (event_size > _constants.SINGLE_EVENT_MAX_APPARENT_SIZE_IN_BYTES) {
|
|
127
99
|
throw new _utils.InputValueError("Event properties too big - ".concat(event_size, " Bytes, must not cross ").concat(_constants.SINGLE_EVENT_MAX_APPARENT_SIZE_IN_BYTES_READABLE));
|
|
128
100
|
}
|
|
129
|
-
|
|
130
101
|
if (this.__running_size + event_size > _constants.BODY_MAX_APPARENT_SIZE_IN_BYTES) {
|
|
131
102
|
return false;
|
|
132
103
|
}
|
|
133
|
-
|
|
134
104
|
if (!_constants.ALLOW_ATTACHMENTS_IN_BULK_API) {
|
|
135
105
|
delete event.properties["$attachments"];
|
|
136
106
|
}
|
|
137
|
-
|
|
138
107
|
this.__add_event_to_chunk(event, event_size);
|
|
139
|
-
|
|
140
108
|
return true;
|
|
141
109
|
}
|
|
142
110
|
}, {
|
|
@@ -157,11 +125,9 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
157
125
|
return _axios["default"].post(this.__url, content_text, {
|
|
158
126
|
headers: headers
|
|
159
127
|
});
|
|
160
|
-
|
|
161
128
|
case 7:
|
|
162
129
|
response = _context.sent;
|
|
163
130
|
ok_response = Math.floor(response.status / 100) == 2;
|
|
164
|
-
|
|
165
131
|
if (ok_response) {
|
|
166
132
|
this.response = {
|
|
167
133
|
status: "success",
|
|
@@ -187,10 +153,8 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
187
153
|
})
|
|
188
154
|
};
|
|
189
155
|
}
|
|
190
|
-
|
|
191
156
|
_context.next = 16;
|
|
192
157
|
break;
|
|
193
|
-
|
|
194
158
|
case 12:
|
|
195
159
|
_context.prev = 12;
|
|
196
160
|
_context.t0 = _context["catch"](4);
|
|
@@ -210,7 +174,6 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
210
174
|
};
|
|
211
175
|
})
|
|
212
176
|
};
|
|
213
|
-
|
|
214
177
|
case 16:
|
|
215
178
|
case "end":
|
|
216
179
|
return _context.stop();
|
|
@@ -218,17 +181,14 @@ var _BulkEventsChunk = /*#__PURE__*/function () {
|
|
|
218
181
|
}
|
|
219
182
|
}, _callee, this, [[4, 12]]);
|
|
220
183
|
}));
|
|
221
|
-
|
|
222
184
|
function trigger() {
|
|
223
185
|
return _trigger.apply(this, arguments);
|
|
224
186
|
}
|
|
225
|
-
|
|
226
187
|
return trigger;
|
|
227
188
|
}()
|
|
228
189
|
}]);
|
|
229
190
|
return _BulkEventsChunk;
|
|
230
191
|
}();
|
|
231
|
-
|
|
232
192
|
var BulkEvents = /*#__PURE__*/function () {
|
|
233
193
|
function BulkEvents(config) {
|
|
234
194
|
(0, _classCallCheck2["default"])(this, BulkEvents);
|
|
@@ -236,33 +196,27 @@ var BulkEvents = /*#__PURE__*/function () {
|
|
|
236
196
|
this.__events = [];
|
|
237
197
|
this.__pending_records = [];
|
|
238
198
|
this.chunks = [];
|
|
239
|
-
this.response = new _bulk_response["default"]();
|
|
240
|
-
|
|
199
|
+
this.response = new _bulk_response["default"]();
|
|
200
|
+
// invalid_record json: {"record": event-json, "error": error_str, "code": 500}
|
|
241
201
|
this.__invalid_records = [];
|
|
242
202
|
}
|
|
243
|
-
|
|
244
203
|
(0, _createClass2["default"])(BulkEvents, [{
|
|
245
204
|
key: "__validate_events",
|
|
246
205
|
value: function __validate_events() {
|
|
247
206
|
var _iterator = _createForOfIteratorHelper(this.__events),
|
|
248
|
-
|
|
249
|
-
|
|
207
|
+
_step;
|
|
250
208
|
try {
|
|
251
209
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
252
210
|
var ev = _step.value;
|
|
253
|
-
|
|
254
211
|
try {
|
|
255
212
|
var is_part_of_bulk = true;
|
|
256
|
-
|
|
257
213
|
var _ev$get_final_json = ev.get_final_json(this.config, is_part_of_bulk),
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
214
|
+
_ev$get_final_json2 = (0, _slicedToArray2["default"])(_ev$get_final_json, 2),
|
|
215
|
+
ev_json = _ev$get_final_json2[0],
|
|
216
|
+
body_size = _ev$get_final_json2[1];
|
|
262
217
|
this.__pending_records.push([ev_json, body_size]);
|
|
263
218
|
} catch (ex) {
|
|
264
219
|
var inv_rec = (0, _utils.invalid_record_json)(ev.as_json(), ex);
|
|
265
|
-
|
|
266
220
|
this.__invalid_records.push(inv_rec);
|
|
267
221
|
}
|
|
268
222
|
}
|
|
@@ -278,25 +232,19 @@ var BulkEvents = /*#__PURE__*/function () {
|
|
|
278
232
|
var start_idx = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
279
233
|
var curr_chunk = new _BulkEventsChunk(this.config);
|
|
280
234
|
this.chunks.push(curr_chunk);
|
|
281
|
-
|
|
282
235
|
var entries = this.__pending_records.slice(start_idx).entries();
|
|
283
|
-
|
|
284
236
|
var _iterator2 = _createForOfIteratorHelper(entries),
|
|
285
|
-
|
|
286
|
-
|
|
237
|
+
_step2;
|
|
287
238
|
try {
|
|
288
239
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
289
240
|
var _step2$value = (0, _slicedToArray2["default"])(_step2.value, 2),
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
241
|
+
rel_idx = _step2$value[0],
|
|
242
|
+
rec = _step2$value[1];
|
|
293
243
|
var is_added = curr_chunk.try_to_add_into_chunk(rec[0], rec[1]);
|
|
294
|
-
|
|
295
244
|
if (!is_added) {
|
|
296
245
|
// create chunks from remaining records
|
|
297
|
-
this.__chunkify(start_idx + rel_idx);
|
|
298
|
-
|
|
299
|
-
|
|
246
|
+
this.__chunkify(start_idx + rel_idx);
|
|
247
|
+
// Don't forget to break. As current loop must not continue further
|
|
300
248
|
break;
|
|
301
249
|
}
|
|
302
250
|
}
|
|
@@ -312,17 +260,13 @@ var BulkEvents = /*#__PURE__*/function () {
|
|
|
312
260
|
for (var _len = arguments.length, events = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
313
261
|
events[_key] = arguments[_key];
|
|
314
262
|
}
|
|
315
|
-
|
|
316
263
|
if (!events) {
|
|
317
264
|
return;
|
|
318
265
|
}
|
|
319
|
-
|
|
320
266
|
for (var _i = 0, _events = events; _i < _events.length; _i++) {
|
|
321
267
|
var ev = _events[_i];
|
|
322
|
-
|
|
323
268
|
if (ev && ev instanceof _event["default"]) {
|
|
324
269
|
var ev_copy = (0, _lodash.cloneDeep)(ev);
|
|
325
|
-
|
|
326
270
|
this.__events.push(ev_copy);
|
|
327
271
|
}
|
|
328
272
|
}
|
|
@@ -332,85 +276,63 @@ var BulkEvents = /*#__PURE__*/function () {
|
|
|
332
276
|
value: function () {
|
|
333
277
|
var _trigger2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
334
278
|
var ch_response, _iterator3, _step3, _step3$value, c_idx, ch;
|
|
335
|
-
|
|
336
279
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
337
280
|
while (1) {
|
|
338
281
|
switch (_context2.prev = _context2.next) {
|
|
339
282
|
case 0:
|
|
340
283
|
this.__validate_events();
|
|
341
|
-
|
|
342
284
|
if (this.__invalid_records.length > 0) {
|
|
343
285
|
ch_response = _bulk_response["default"].invalid_records_chunk_response(this.__invalid_records);
|
|
344
286
|
this.response.merge_chunk_response(ch_response);
|
|
345
287
|
}
|
|
346
|
-
|
|
347
288
|
if (!this.__pending_records.length) {
|
|
348
289
|
_context2.next = 25;
|
|
349
290
|
break;
|
|
350
291
|
}
|
|
351
|
-
|
|
352
292
|
this.__chunkify();
|
|
353
|
-
|
|
354
293
|
_iterator3 = _createForOfIteratorHelper(this.chunks.entries());
|
|
355
294
|
_context2.prev = 5;
|
|
356
|
-
|
|
357
295
|
_iterator3.s();
|
|
358
|
-
|
|
359
296
|
case 7:
|
|
360
297
|
if ((_step3 = _iterator3.n()).done) {
|
|
361
298
|
_context2.next = 15;
|
|
362
299
|
break;
|
|
363
300
|
}
|
|
364
|
-
|
|
365
301
|
_step3$value = (0, _slicedToArray2["default"])(_step3.value, 2), c_idx = _step3$value[0], ch = _step3$value[1];
|
|
366
|
-
|
|
367
302
|
if (this.config.req_log_level > 0) {
|
|
368
303
|
console.log("DEBUG: triggering api call for chunk: ".concat(c_idx));
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
|
|
304
|
+
}
|
|
305
|
+
// do api call
|
|
372
306
|
_context2.next = 12;
|
|
373
307
|
return ch.trigger();
|
|
374
|
-
|
|
375
308
|
case 12:
|
|
376
309
|
// merge response
|
|
377
310
|
this.response.merge_chunk_response(ch.response);
|
|
378
|
-
|
|
379
311
|
case 13:
|
|
380
312
|
_context2.next = 7;
|
|
381
313
|
break;
|
|
382
|
-
|
|
383
314
|
case 15:
|
|
384
315
|
_context2.next = 20;
|
|
385
316
|
break;
|
|
386
|
-
|
|
387
317
|
case 17:
|
|
388
318
|
_context2.prev = 17;
|
|
389
319
|
_context2.t0 = _context2["catch"](5);
|
|
390
|
-
|
|
391
320
|
_iterator3.e(_context2.t0);
|
|
392
|
-
|
|
393
321
|
case 20:
|
|
394
322
|
_context2.prev = 20;
|
|
395
|
-
|
|
396
323
|
_iterator3.f();
|
|
397
|
-
|
|
398
324
|
return _context2.finish(20);
|
|
399
|
-
|
|
400
325
|
case 23:
|
|
401
326
|
_context2.next = 26;
|
|
402
327
|
break;
|
|
403
|
-
|
|
404
328
|
case 25:
|
|
405
329
|
// if no records. i.e. invalid_records.length and pending_records.length both are 0
|
|
406
330
|
// then add empty success response
|
|
407
331
|
if (this.__invalid_records.length === 0) {
|
|
408
332
|
this.response.merge_chunk_response(_bulk_response["default"].empty_chunk_success_response());
|
|
409
333
|
}
|
|
410
|
-
|
|
411
334
|
case 26:
|
|
412
335
|
return _context2.abrupt("return", this.response);
|
|
413
|
-
|
|
414
336
|
case 27:
|
|
415
337
|
case "end":
|
|
416
338
|
return _context2.stop();
|
|
@@ -418,11 +340,9 @@ var BulkEvents = /*#__PURE__*/function () {
|
|
|
418
340
|
}
|
|
419
341
|
}, _callee2, this, [[5, 17, 20, 23]]);
|
|
420
342
|
}));
|
|
421
|
-
|
|
422
343
|
function trigger() {
|
|
423
344
|
return _trigger2.apply(this, arguments);
|
|
424
345
|
}
|
|
425
|
-
|
|
426
346
|
return trigger;
|
|
427
347
|
}()
|
|
428
348
|
}]);
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
@@ -26,39 +24,23 @@ Object.defineProperty(exports, "Workflow", {
|
|
|
26
24
|
return _workflow["default"];
|
|
27
25
|
}
|
|
28
26
|
});
|
|
29
|
-
|
|
30
27
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
31
|
-
|
|
32
28
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
33
|
-
|
|
34
29
|
var _utils = require("./utils");
|
|
35
|
-
|
|
36
30
|
var _attachment = _interopRequireDefault(require("./attachment"));
|
|
37
|
-
|
|
38
31
|
var _workflow = _interopRequireWildcard(require("./workflow"));
|
|
39
|
-
|
|
40
32
|
var _workflows_bulk = require("./workflows_bulk");
|
|
41
|
-
|
|
42
33
|
var _event = _interopRequireWildcard(require("./event"));
|
|
43
|
-
|
|
44
34
|
var _events_bulk = require("./events_bulk");
|
|
45
|
-
|
|
46
35
|
var _subscriber = _interopRequireDefault(require("./subscriber"));
|
|
47
|
-
|
|
48
36
|
var _subscribers_bulk = _interopRequireDefault(require("./subscribers_bulk"));
|
|
49
|
-
|
|
50
37
|
var _subscriber_list = require("./subscriber_list");
|
|
51
|
-
|
|
52
38
|
var _brands = _interopRequireDefault(require("./brands"));
|
|
53
|
-
|
|
39
|
+
var _tenant = _interopRequireDefault(require("./tenant"));
|
|
54
40
|
var _constants = require("./constants");
|
|
55
|
-
|
|
56
41
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
57
|
-
|
|
58
42
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
59
|
-
|
|
60
43
|
var package_json = require("../package.json");
|
|
61
|
-
|
|
62
44
|
var Suprsend = /*#__PURE__*/function () {
|
|
63
45
|
function Suprsend(workspace_key, workspace_secret) {
|
|
64
46
|
var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
@@ -75,11 +57,10 @@ var Suprsend = /*#__PURE__*/function () {
|
|
|
75
57
|
this._bulk_users = new _subscribers_bulk["default"](this);
|
|
76
58
|
this._user = new _subscriber["default"](this);
|
|
77
59
|
this.brands = new _brands["default"](this);
|
|
60
|
+
this.tenants = new _tenant["default"](this);
|
|
78
61
|
this.subscriber_lists = new _subscriber_list.SubscriberListsApi(this);
|
|
79
|
-
|
|
80
62
|
this._validate();
|
|
81
63
|
}
|
|
82
|
-
|
|
83
64
|
(0, _createClass2["default"])(Suprsend, [{
|
|
84
65
|
key: "bulk_workflows",
|
|
85
66
|
get: function get() {
|
|
@@ -117,7 +98,6 @@ var Suprsend = /*#__PURE__*/function () {
|
|
|
117
98
|
if (base_url) {
|
|
118
99
|
base_url = base_url.trim();
|
|
119
100
|
}
|
|
120
|
-
|
|
121
101
|
if (!base_url) {
|
|
122
102
|
if (this.config.is_staging) {
|
|
123
103
|
base_url = _constants.DEFAULT_UAT_URL;
|
|
@@ -125,38 +105,29 @@ var Suprsend = /*#__PURE__*/function () {
|
|
|
125
105
|
base_url = _constants.DEFAULT_URL;
|
|
126
106
|
}
|
|
127
107
|
}
|
|
128
|
-
|
|
129
108
|
base_url = base_url.trim();
|
|
130
|
-
|
|
131
109
|
if (!base_url.endsWith("/")) {
|
|
132
110
|
base_url += "/";
|
|
133
111
|
}
|
|
134
|
-
|
|
135
112
|
return base_url;
|
|
136
113
|
}
|
|
137
114
|
}, {
|
|
138
115
|
key: "add_attachment",
|
|
139
116
|
value: function add_attachment(body, file_path) {
|
|
140
117
|
var _kwargs$ignore_if_err;
|
|
141
|
-
|
|
142
118
|
var kwargs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
143
119
|
var file_name = kwargs === null || kwargs === void 0 ? void 0 : kwargs.file_name;
|
|
144
120
|
var ignore_if_error = (_kwargs$ignore_if_err = kwargs === null || kwargs === void 0 ? void 0 : kwargs.ignore_if_error) !== null && _kwargs$ignore_if_err !== void 0 ? _kwargs$ignore_if_err : false;
|
|
145
|
-
|
|
146
121
|
if (!(body !== null && body !== void 0 && body.data)) {
|
|
147
122
|
body.data = {};
|
|
148
123
|
}
|
|
149
|
-
|
|
150
124
|
if (!(body.data instanceof Object)) {
|
|
151
125
|
throw new _utils.InputValueError("data must be an object");
|
|
152
126
|
}
|
|
153
|
-
|
|
154
127
|
var attachment = (0, _attachment["default"])(file_path, file_name, ignore_if_error);
|
|
155
|
-
|
|
156
128
|
if (!body.data["$attachments"]) {
|
|
157
129
|
body["data"]["$attachments"] = [];
|
|
158
130
|
}
|
|
159
|
-
|
|
160
131
|
body["data"]["$attachments"].push(attachment);
|
|
161
132
|
return body;
|
|
162
133
|
}
|
|
@@ -164,13 +135,11 @@ var Suprsend = /*#__PURE__*/function () {
|
|
|
164
135
|
key: "trigger_workflow",
|
|
165
136
|
value: function trigger_workflow(data) {
|
|
166
137
|
var wf_ins;
|
|
167
|
-
|
|
168
138
|
if (data instanceof _workflow["default"]) {
|
|
169
139
|
wf_ins = data;
|
|
170
140
|
} else {
|
|
171
141
|
wf_ins = new _workflow["default"](data);
|
|
172
142
|
}
|
|
173
|
-
|
|
174
143
|
return this._workflow_trigger.trigger(wf_ins);
|
|
175
144
|
}
|
|
176
145
|
}, {
|
|
@@ -187,11 +156,9 @@ var Suprsend = /*#__PURE__*/function () {
|
|
|
187
156
|
if (!(event instanceof _event["default"])) {
|
|
188
157
|
throw new _utils.InputValueError("argument must be an instance of suprsend.Event");
|
|
189
158
|
}
|
|
190
|
-
|
|
191
159
|
return this._eventcollector.collect(event);
|
|
192
160
|
}
|
|
193
161
|
}]);
|
|
194
162
|
return Suprsend;
|
|
195
163
|
}();
|
|
196
|
-
|
|
197
164
|
exports.Suprsend = Suprsend;
|
package/dist/language_codes.js
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = void 0;
|
|
9
|
-
|
|
10
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
-
|
|
12
9
|
var LANG_CODE_NAME_MAPPING = {
|
|
13
10
|
aa: "Afar",
|
|
14
11
|
ab: "Abkhazian",
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
"maxLength": 255,
|
|
12
12
|
"description": "unique id provided by client for request"
|
|
13
13
|
},
|
|
14
|
+
"tenant_id": {
|
|
15
|
+
"type": ["string", "null"],
|
|
16
|
+
"maxLength": 64,
|
|
17
|
+
"description": "tenant id for workflow to be run in context of a tenant"
|
|
18
|
+
},
|
|
14
19
|
"brand_id": {
|
|
15
20
|
"type": ["string", "null"],
|
|
16
21
|
"maxLength": 64,
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
"maxLength": 255,
|
|
12
12
|
"description": "unique id provided by client for request"
|
|
13
13
|
},
|
|
14
|
+
"tenant_id": {
|
|
15
|
+
"type": ["string", "null"],
|
|
16
|
+
"maxLength": 64,
|
|
17
|
+
"description": "tenant id for workflow to be run in context of a tenant"
|
|
18
|
+
},
|
|
14
19
|
"brand_id": {
|
|
15
20
|
"type": ["string", "null"],
|
|
16
21
|
"maxLength": 64,
|
|
@@ -44,7 +49,8 @@
|
|
|
44
49
|
"whatsapp",
|
|
45
50
|
"slack",
|
|
46
51
|
"inbox",
|
|
47
|
-
"messenger"
|
|
52
|
+
"messenger",
|
|
53
|
+
"ms_teams"
|
|
48
54
|
]
|
|
49
55
|
},
|
|
50
56
|
"minItems": 0,
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
"maxLength": 255,
|
|
12
12
|
"description": "unique id provided by client for request"
|
|
13
13
|
},
|
|
14
|
+
"tenant_id": {
|
|
15
|
+
"type": ["string", "null"],
|
|
16
|
+
"maxLength": 64,
|
|
17
|
+
"description": "tenant id for workflow to be run in context of a tenant"
|
|
18
|
+
},
|
|
14
19
|
"brand_id": {
|
|
15
20
|
"type": ["string", "null"],
|
|
16
21
|
"maxLength": 64,
|
|
@@ -124,6 +129,40 @@
|
|
|
124
129
|
},
|
|
125
130
|
"additionalProperties": false
|
|
126
131
|
},
|
|
132
|
+
"ms_teams_setting": {
|
|
133
|
+
"type": "object",
|
|
134
|
+
"properties": {
|
|
135
|
+
"tenant_id": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"description": "ms teams tenant id"
|
|
138
|
+
},
|
|
139
|
+
"service_url": {
|
|
140
|
+
"type": "string",
|
|
141
|
+
"format": "uri",
|
|
142
|
+
"pattern": "^https://smba.trafficmanager.net/",
|
|
143
|
+
"description": "service webhook url. e.g https://smba.trafficmanager.net/XXXXXXXXXX"
|
|
144
|
+
},
|
|
145
|
+
"conversation_id": {
|
|
146
|
+
"type": "string",
|
|
147
|
+
"description": "ms team conversation id"
|
|
148
|
+
},
|
|
149
|
+
"user_id": {
|
|
150
|
+
"type": "string",
|
|
151
|
+
"description": "ms team user id"
|
|
152
|
+
},
|
|
153
|
+
"incoming_webhook": {
|
|
154
|
+
"type": "object",
|
|
155
|
+
"properties": {
|
|
156
|
+
"url": {
|
|
157
|
+
"type": "string",
|
|
158
|
+
"format": "uri",
|
|
159
|
+
"description": "incoming webhook url. e.g https://XXXXX.webhook.office.com/webhookb2/XXXXXXXXXX@XXXXXXXXXX/IncomingWebhook/XXXXXXXXXX/XXXXXXXXXX"
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"additionalProperties": false
|
|
165
|
+
},
|
|
127
166
|
"androidpush_settings": {
|
|
128
167
|
"type": "object",
|
|
129
168
|
"properties": {
|
|
@@ -184,7 +223,8 @@
|
|
|
184
223
|
"whatsapp",
|
|
185
224
|
"slack",
|
|
186
225
|
"inbox",
|
|
187
|
-
"messenger"
|
|
226
|
+
"messenger",
|
|
227
|
+
"ms_teams"
|
|
188
228
|
]
|
|
189
229
|
},
|
|
190
230
|
"minItems": 0,
|
|
@@ -290,6 +330,18 @@
|
|
|
290
330
|
}
|
|
291
331
|
]
|
|
292
332
|
},
|
|
333
|
+
"$ms_teams": {
|
|
334
|
+
"oneOf": [
|
|
335
|
+
{ "$ref": "#/definitions/ms_teams_setting" },
|
|
336
|
+
{
|
|
337
|
+
"type": "array",
|
|
338
|
+
"uniqueItems": false,
|
|
339
|
+
"maxItems": 10,
|
|
340
|
+
"minItems": 1,
|
|
341
|
+
"items": { "$ref": "#/definitions/ms_teams_setting" }
|
|
342
|
+
}
|
|
343
|
+
]
|
|
344
|
+
},
|
|
293
345
|
"$inbox": {
|
|
294
346
|
"oneOf": [
|
|
295
347
|
{ "$ref": "#/definitions/non_empty_string" },
|
|
@@ -349,7 +401,8 @@
|
|
|
349
401
|
"whatsapp",
|
|
350
402
|
"slack",
|
|
351
403
|
"inbox",
|
|
352
|
-
"messenger"
|
|
404
|
+
"messenger",
|
|
405
|
+
"ms_teams"
|
|
353
406
|
]
|
|
354
407
|
},
|
|
355
408
|
"minItems": 0,
|
package/dist/signature.js
CHANGED
|
@@ -1,33 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = get_request_signature;
|
|
9
|
-
|
|
10
8
|
var _crypto = _interopRequireDefault(require("crypto"));
|
|
11
|
-
|
|
12
9
|
function get_path(url) {
|
|
13
10
|
var url_info = new URL(url);
|
|
14
11
|
return url_info.pathname + url_info.search;
|
|
15
12
|
}
|
|
16
|
-
|
|
17
13
|
function get_request_signature(url, http_verb, content, headers, secret) {
|
|
18
14
|
var content_md5 = "";
|
|
19
15
|
var content_type = headers["Content-Type"] || "";
|
|
20
|
-
|
|
21
16
|
if (content) {
|
|
22
17
|
content_md5 = _crypto["default"].createHash("md5").update(content).digest("hex");
|
|
23
18
|
}
|
|
24
|
-
|
|
25
19
|
var request_uri = get_path(url);
|
|
26
20
|
var sign_string = http_verb + "\n" + content_md5 + "\n" + content_type + "\n" + headers["Date"] + "\n" + request_uri;
|
|
27
|
-
|
|
28
21
|
var hash = _crypto["default"].createHmac("sha256", secret).update(sign_string);
|
|
29
|
-
|
|
30
22
|
return hash.digest("base64");
|
|
31
23
|
}
|
|
32
|
-
|
|
33
24
|
module.exports = exports.default;
|