@suprsend/node-sdk 1.12.0 → 1.13.1

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 (44) hide show
  1. package/dist/constants.js +2 -8
  2. package/dist/event.js +2 -2
  3. package/dist/events_bulk.js +2 -2
  4. package/dist/index.js +21 -0
  5. package/dist/object_edit.js +6 -12
  6. package/dist/object_edit_internal_helper.js +40 -301
  7. package/dist/objects_api.js +193 -242
  8. package/dist/request_json/workflow.json +7 -29
  9. package/dist/request_json/workflow_trigger.json +7 -29
  10. package/dist/subscriber.js +10 -27
  11. package/dist/subscriber_helper.js +33 -291
  12. package/dist/subscriber_list.js +2 -2
  13. package/dist/user_edit.js +412 -0
  14. package/dist/user_edit_internal_helper.js +363 -0
  15. package/dist/users_api.js +400 -98
  16. package/dist/users_edit_bulk.js +312 -0
  17. package/dist/workflow.js +2 -2
  18. package/dist/workflow_request.js +2 -2
  19. package/dist/workflow_trigger_bulk.js +2 -2
  20. package/dist/workflows_bulk.js +2 -2
  21. package/package.json +1 -1
  22. package/src/constants.js +0 -4
  23. package/src/event.js +4 -5
  24. package/src/events_bulk.js +3 -5
  25. package/src/index.js +6 -0
  26. package/src/object_edit.js +6 -6
  27. package/src/object_edit_internal_helper.js +37 -295
  28. package/src/objects_api.js +97 -93
  29. package/src/request_json/workflow.json +7 -29
  30. package/src/request_json/workflow_trigger.json +7 -29
  31. package/src/subscriber.js +8 -20
  32. package/src/subscriber_helper.js +34 -284
  33. package/src/subscriber_list.js +4 -4
  34. package/src/user_edit.js +360 -0
  35. package/src/user_edit_internal_helper.js +297 -0
  36. package/src/users_api.js +208 -28
  37. package/src/users_edit_bulk.js +211 -0
  38. package/src/workflow.js +4 -5
  39. package/src/workflow_request.js +4 -4
  40. package/src/workflow_trigger_bulk.js +2 -4
  41. package/src/workflows_bulk.js +3 -5
  42. package/types/index.d.ts +113 -8
  43. package/dist/language_codes.js +0 -197
  44. package/src/language_codes.js +0 -188
@@ -0,0 +1,363 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _utils = require("./utils");
12
+ // ---------- Identity keys
13
+ var IDENT_KEY_EMAIL = "$email";
14
+ var IDENT_KEY_SMS = "$sms";
15
+ var IDENT_KEY_ANDROIDPUSH = "$androidpush";
16
+ var IDENT_KEY_IOSPUSH = "$iospush";
17
+ var IDENT_KEY_WHATSAPP = "$whatsapp";
18
+ var IDENT_KEY_WEBPUSH = "$webpush";
19
+ var IDENT_KEY_SLACK = "$slack";
20
+ var IDENT_KEY_MS_TEAMS = "$ms_teams";
21
+ var IDENT_KEYS_ALL = [IDENT_KEY_EMAIL, IDENT_KEY_SMS, IDENT_KEY_ANDROIDPUSH, IDENT_KEY_IOSPUSH, IDENT_KEY_WHATSAPP, IDENT_KEY_WEBPUSH, IDENT_KEY_SLACK, IDENT_KEY_MS_TEAMS];
22
+ var KEY_ID_PROVIDER = "$id_provider";
23
+ var KEY_PREFERRED_LANGUAGE = "$preferred_language";
24
+ var KEY_TIMEZONE = "$timezone";
25
+ var _UserEditInternalHelper = /*#__PURE__*/function () {
26
+ function _UserEditInternalHelper() {
27
+ (0, _classCallCheck2["default"])(this, _UserEditInternalHelper);
28
+ this.__dict_set = {};
29
+ this.__dict_set_once = {};
30
+ this.__dict_increment = {};
31
+ this.__dict_append = {};
32
+ this.__dict_remove = {};
33
+ this.__list_unset = [];
34
+ this.__errors = [];
35
+ this.__info = [];
36
+ }
37
+ (0, _createClass2["default"])(_UserEditInternalHelper, [{
38
+ key: "reset",
39
+ value: function reset() {
40
+ this.__dict_set = {};
41
+ this.__dict_append = {};
42
+ this.__dict_remove = {};
43
+ this.__list_unset = [];
44
+ this.__dict_set_once = {};
45
+ this.__dict_increment = {};
46
+ this.__errors = [];
47
+ this.__info = [];
48
+ }
49
+ }, {
50
+ key: "get_operation_result",
51
+ value: function get_operation_result() {
52
+ var operation = this.__form_operation();
53
+ var ret_val = {
54
+ errors: this.__errors,
55
+ info: this.__info,
56
+ operation: operation
57
+ };
58
+ this.reset();
59
+ return ret_val;
60
+ }
61
+ }, {
62
+ key: "__form_operation",
63
+ value: function __form_operation() {
64
+ var event = {};
65
+ if (!(0, _utils.is_empty)(this.__dict_set)) {
66
+ event["$set"] = this.__dict_set;
67
+ }
68
+ if (!(0, _utils.is_empty)(this.__dict_set_once)) {
69
+ event["$set_once"] = this.__dict_set_once;
70
+ }
71
+ if (!(0, _utils.is_empty)(this.__dict_increment)) {
72
+ event["$add"] = this.__dict_increment;
73
+ }
74
+ if (!(0, _utils.is_empty)(this.__dict_append)) {
75
+ event["$append"] = this.__dict_append;
76
+ }
77
+ if (!(0, _utils.is_empty)(this.__dict_remove)) {
78
+ event["$remove"] = this.__dict_remove;
79
+ }
80
+ if (!(0, _utils.is_empty)(this.__list_unset)) {
81
+ event["$unset"] = this.__list_unset;
82
+ }
83
+ return event;
84
+ }
85
+
86
+ // ------------------------
87
+ }, {
88
+ key: "__validate_key_basic",
89
+ value: function __validate_key_basic(key, caller) {
90
+ if (!(0, _utils.is_string)(key)) {
91
+ this.__info.push("[".concat(caller, "] skipping key: ").concat(key, ". key must be a string"));
92
+ return [key, false];
93
+ }
94
+ key = key.trim();
95
+ if (!key) {
96
+ this.__info.push("[".concat(caller, "] skipping key: empty string"));
97
+ return [key, false];
98
+ }
99
+ return [key, true];
100
+ }
101
+ }, {
102
+ key: "__is_identity_key",
103
+ value: function __is_identity_key(key) {
104
+ return IDENT_KEYS_ALL.includes(key);
105
+ }
106
+
107
+ // -------------------------
108
+ }, {
109
+ key: "_append_kv",
110
+ value: function _append_kv(key, val) {
111
+ var kwargs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
112
+ var caller = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "append";
113
+ var _this$__validate_key_ = this.__validate_key_basic(key, caller),
114
+ _this$__validate_key_2 = (0, _slicedToArray2["default"])(_this$__validate_key_, 2),
115
+ k = _this$__validate_key_2[0],
116
+ is_k_valid = _this$__validate_key_2[1];
117
+ if (!is_k_valid) return;
118
+ if (this.__is_identity_key(k)) {
119
+ this.__add_identity(k, val, kwargs, caller);
120
+ } else {
121
+ this.__dict_append[k] = val;
122
+ }
123
+ }
124
+ }, {
125
+ key: "_remove_kv",
126
+ value: function _remove_kv(key, val) {
127
+ var kwargs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
128
+ var caller = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "remove";
129
+ var _this$__validate_key_3 = this.__validate_key_basic(key, caller),
130
+ _this$__validate_key_4 = (0, _slicedToArray2["default"])(_this$__validate_key_3, 2),
131
+ k = _this$__validate_key_4[0],
132
+ is_k_valid = _this$__validate_key_4[1];
133
+ if (!is_k_valid) return;
134
+ if (this.__is_identity_key(k)) {
135
+ this.__remove_identity(k, val, kwargs, caller);
136
+ } else {
137
+ this.__dict_remove[k] = val;
138
+ }
139
+ }
140
+ }, {
141
+ key: "_unset_k",
142
+ value: function _unset_k(key) {
143
+ var caller = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "unset";
144
+ var _this$__validate_key_5 = this.__validate_key_basic(key, caller),
145
+ _this$__validate_key_6 = (0, _slicedToArray2["default"])(_this$__validate_key_5, 2),
146
+ k = _this$__validate_key_6[0],
147
+ is_k_valid = _this$__validate_key_6[1];
148
+ if (!is_k_valid) return;
149
+ this.__list_unset.push(k);
150
+ }
151
+ }, {
152
+ key: "_set_kv",
153
+ value: function _set_kv(key, val) {
154
+ var caller = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "set";
155
+ var _this$__validate_key_7 = this.__validate_key_basic(key, caller),
156
+ _this$__validate_key_8 = (0, _slicedToArray2["default"])(_this$__validate_key_7, 2),
157
+ k = _this$__validate_key_8[0],
158
+ is_k_valid = _this$__validate_key_8[1];
159
+ if (!is_k_valid) return;
160
+ this.__dict_set[k] = val;
161
+ }
162
+ }, {
163
+ key: "_set_once_kv",
164
+ value: function _set_once_kv(key, val) {
165
+ var caller = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "set_once";
166
+ var _this$__validate_key_9 = this.__validate_key_basic(key, caller),
167
+ _this$__validate_key_10 = (0, _slicedToArray2["default"])(_this$__validate_key_9, 2),
168
+ k = _this$__validate_key_10[0],
169
+ is_k_valid = _this$__validate_key_10[1];
170
+ if (!is_k_valid) return;
171
+ this.__dict_set_once[k] = val;
172
+ }
173
+ }, {
174
+ key: "_increment_kv",
175
+ value: function _increment_kv(key, val) {
176
+ var caller = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "increment";
177
+ var _this$__validate_key_11 = this.__validate_key_basic(key, caller),
178
+ _this$__validate_key_12 = (0, _slicedToArray2["default"])(_this$__validate_key_11, 2),
179
+ k = _this$__validate_key_12[0],
180
+ is_k_valid = _this$__validate_key_12[1];
181
+ if (!is_k_valid) return;
182
+ this.__dict_increment[k] = val;
183
+ }
184
+ }, {
185
+ key: "_set_preferred_language",
186
+ value: function _set_preferred_language(lang_code, caller) {
187
+ this.__dict_set[KEY_PREFERRED_LANGUAGE] = lang_code;
188
+ }
189
+ }, {
190
+ key: "_set_timezone",
191
+ value: function _set_timezone(timezone, caller) {
192
+ this.__dict_set[KEY_TIMEZONE] = timezone;
193
+ }
194
+ }, {
195
+ key: "__add_identity",
196
+ value: function __add_identity(key, val, kwargs, caller) {
197
+ var new_caller = "".concat(caller, ":").concat(key);
198
+ switch (key) {
199
+ case IDENT_KEY_EMAIL:
200
+ this._add_email(val, new_caller);
201
+ break;
202
+ case IDENT_KEY_SMS:
203
+ this._add_sms(val, new_caller);
204
+ break;
205
+ case IDENT_KEY_WHATSAPP:
206
+ this._add_whatsapp(val, new_caller);
207
+ break;
208
+ case IDENT_KEY_ANDROIDPUSH:
209
+ this._add_androidpush(val, kwargs[KEY_ID_PROVIDER], new_caller);
210
+ break;
211
+ case IDENT_KEY_IOSPUSH:
212
+ this._add_iospush(val, kwargs[KEY_ID_PROVIDER], new_caller);
213
+ break;
214
+ case IDENT_KEY_WEBPUSH:
215
+ this._add_webpush(val, kwargs[KEY_ID_PROVIDER], new_caller);
216
+ break;
217
+ case IDENT_KEY_SLACK:
218
+ this._add_slack(val, new_caller);
219
+ break;
220
+ case IDENT_KEY_MS_TEAMS:
221
+ this._add_ms_teams(val, new_caller);
222
+ break;
223
+ }
224
+ }
225
+ }, {
226
+ key: "__remove_identity",
227
+ value: function __remove_identity(key, val, kwargs, caller) {
228
+ var new_caller = "".concat(caller, ":").concat(key);
229
+ switch (key) {
230
+ case IDENT_KEY_EMAIL:
231
+ this._remove_email(val, new_caller);
232
+ break;
233
+ case IDENT_KEY_SMS:
234
+ this._remove_sms(val, new_caller);
235
+ break;
236
+ case IDENT_KEY_WHATSAPP:
237
+ this._remove_whatsapp(val, new_caller);
238
+ break;
239
+ case IDENT_KEY_ANDROIDPUSH:
240
+ this._remove_androidpush(val, kwargs[KEY_ID_PROVIDER], new_caller);
241
+ break;
242
+ case IDENT_KEY_IOSPUSH:
243
+ this._remove_iospush(val, kwargs[KEY_ID_PROVIDER], new_caller);
244
+ break;
245
+ case IDENT_KEY_WEBPUSH:
246
+ this._remove_webpush(val, kwargs[KEY_ID_PROVIDER], new_caller);
247
+ break;
248
+ case IDENT_KEY_SLACK:
249
+ this._remove_slack(val, new_caller);
250
+ break;
251
+ case IDENT_KEY_MS_TEAMS:
252
+ this._remove_ms_teams(val, new_caller);
253
+ break;
254
+ }
255
+ }
256
+
257
+ // ------------------------ Email
258
+ }, {
259
+ key: "_add_email",
260
+ value: function _add_email(value, caller) {
261
+ this.__dict_append[IDENT_KEY_EMAIL] = value;
262
+ }
263
+ }, {
264
+ key: "_remove_email",
265
+ value: function _remove_email(value, caller) {
266
+ this.__dict_remove[IDENT_KEY_EMAIL] = value;
267
+ }
268
+
269
+ // ------------------------ SMS
270
+ }, {
271
+ key: "_add_sms",
272
+ value: function _add_sms(value, caller) {
273
+ this.__dict_append[IDENT_KEY_SMS] = value;
274
+ }
275
+ }, {
276
+ key: "_remove_sms",
277
+ value: function _remove_sms(value, caller) {
278
+ this.__dict_remove[IDENT_KEY_SMS] = value;
279
+ }
280
+
281
+ // ------------------------ Whatsapp
282
+ }, {
283
+ key: "_add_whatsapp",
284
+ value: function _add_whatsapp(value, caller) {
285
+ this.__dict_append[IDENT_KEY_WHATSAPP] = value;
286
+ }
287
+ }, {
288
+ key: "_remove_whatsapp",
289
+ value: function _remove_whatsapp(value, caller) {
290
+ this.__dict_remove[IDENT_KEY_WHATSAPP] = value;
291
+ }
292
+
293
+ // ------------------------ Androidpush
294
+ }, {
295
+ key: "_add_androidpush",
296
+ value: function _add_androidpush(value, provider, caller) {
297
+ this.__dict_append[IDENT_KEY_ANDROIDPUSH] = value;
298
+ this.__dict_append[KEY_ID_PROVIDER] = provider;
299
+ }
300
+ }, {
301
+ key: "_remove_androidpush",
302
+ value: function _remove_androidpush(value, provider, caller) {
303
+ this.__dict_remove[IDENT_KEY_ANDROIDPUSH] = value;
304
+ this.__dict_remove[KEY_ID_PROVIDER] = provider;
305
+ }
306
+
307
+ // ------------------------ Iospush
308
+ }, {
309
+ key: "_add_iospush",
310
+ value: function _add_iospush(value, provider, caller) {
311
+ this.__dict_append[IDENT_KEY_IOSPUSH] = value;
312
+ this.__dict_append[KEY_ID_PROVIDER] = provider;
313
+ }
314
+ }, {
315
+ key: "_remove_iospush",
316
+ value: function _remove_iospush(value, provider, caller) {
317
+ this.__dict_remove[IDENT_KEY_IOSPUSH] = value;
318
+ this.__dict_remove[KEY_ID_PROVIDER] = provider;
319
+ }
320
+
321
+ // ------------------------ Webpush
322
+ }, {
323
+ key: "_add_webpush",
324
+ value: function _add_webpush(value, provider, caller) {
325
+ this.__dict_append[IDENT_KEY_WEBPUSH] = value;
326
+ this.__dict_append[KEY_ID_PROVIDER] = provider;
327
+ }
328
+ }, {
329
+ key: "_remove_webpush",
330
+ value: function _remove_webpush(value, provider, caller) {
331
+ this.__dict_remove[IDENT_KEY_WEBPUSH] = value;
332
+ this.__dict_remove[KEY_ID_PROVIDER] = provider;
333
+ }
334
+
335
+ // ------------------------ Slack
336
+ }, {
337
+ key: "_add_slack",
338
+ value: function _add_slack(value, caller) {
339
+ this.__dict_append[IDENT_KEY_SLACK] = value;
340
+ }
341
+ }, {
342
+ key: "_remove_slack",
343
+ value: function _remove_slack(value, caller) {
344
+ this.__dict_remove[IDENT_KEY_SLACK] = value;
345
+ }
346
+
347
+ // ------------------------ MS Teams
348
+ }, {
349
+ key: "_add_ms_teams",
350
+ value: function _add_ms_teams(value, caller) {
351
+ this.__dict_append[IDENT_KEY_MS_TEAMS] = value;
352
+ }
353
+ }, {
354
+ key: "_remove_ms_teams",
355
+ value: function _remove_ms_teams(value, caller) {
356
+ this.__dict_remove[IDENT_KEY_MS_TEAMS] = value;
357
+ }
358
+ }]);
359
+ return _UserEditInternalHelper;
360
+ }();
361
+ var _default = _UserEditInternalHelper;
362
+ exports["default"] = _default;
363
+ module.exports = exports.default;