@tellescope/sdk 1.110.0 → 1.111.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.
@@ -1 +1 @@
1
- {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../src/tests/tests.ts"],"names":[],"mappings":"AAmqEA,eAAO,MAAM,kCAAkC,qBAgJ9C,CAAA;AAED,eAAO,MAAM,mCAAmC,qBA2K/C,CAAA;AAGD,eAAO,MAAM,oBAAoB,qBAoHhC,CAAA;AAED,eAAO,MAAM,+BAA+B,qBAsF3C,CAAA;AAID,eAAO,MAAM,0BAA0B,qBAqCtC,CAAA;AAsfD,eAAO,MAAM,cAAc,qBAqC1B,CAAA;AAsjBD,eAAO,MAAM,6BAA6B,qBAgCzC,CAAA;AAED,eAAO,MAAM,0BAA0B,qBAmFtC,CAAA;AAqED,eAAO,MAAM,eAAe,qBAgD3B,CAAA;AAED,eAAO,MAAM,oBAAoB,6BAsBhC,CAAA;AAED,eAAO,MAAM,oCAAoC,qBAmWhD,CAAA;AAED,eAAO,MAAM,mCAAmC,qBAkE/C,CAAA;AAsuCD,eAAO,MAAM,yBAAyB,qBA0DrC,CAAA;AAED,eAAO,MAAM,kBAAkB,qBAmK9B,CAAA;AAED,eAAO,MAAM,sBAAsB,qBA0BlC,CAAA;AA+fD,eAAO,MAAM,4BAA4B,qBAoExC,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAwIjC,CAAA"}
1
+ {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../src/tests/tests.ts"],"names":[],"mappings":"AAmqEA,eAAO,MAAM,kCAAkC,qBAgJ9C,CAAA;AAED,eAAO,MAAM,mCAAmC,qBA2K/C,CAAA;AAGD,eAAO,MAAM,oBAAoB,qBAoHhC,CAAA;AAED,eAAO,MAAM,+BAA+B,qBAsF3C,CAAA;AAID,eAAO,MAAM,0BAA0B,qBAqCtC,CAAA;AAsfD,eAAO,MAAM,cAAc,qBAqC1B,CAAA;AAsjBD,eAAO,MAAM,6BAA6B,qBAgCzC,CAAA;AAED,eAAO,MAAM,0BAA0B,qBAmFtC,CAAA;AAqED,eAAO,MAAM,eAAe,qBAgD3B,CAAA;AAED,eAAO,MAAM,oBAAoB,6BAsBhC,CAAA;AAED,eAAO,MAAM,oCAAoC,qBAmWhD,CAAA;AAED,eAAO,MAAM,mCAAmC,qBAkE/C,CAAA;AA6xCD,eAAO,MAAM,yBAAyB,qBA0DrC,CAAA;AAED,eAAO,MAAM,kBAAkB,qBAmK9B,CAAA;AAED,eAAO,MAAM,sBAAsB,qBA0BlC,CAAA;AA+fD,eAAO,MAAM,4BAA4B,qBAoExC,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAwIjC,CAAA"}
@@ -5837,93 +5837,133 @@ var wait_for_trigger_tests = function () { return __awaiter(void 0, void 0, void
5837
5837
  }); };
5838
5838
  var handleRateLimitError = { shouldError: true, onError: function (e) { return e.message === 'Rate limit exceeded'; } };
5839
5839
  var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
5840
- var _a, e1, e2, _b, email1, email2, _c, sms1, sms2, _d, email3, email4, email5;
5840
+ var _a, e1, e2, e3, _b, email1, email2, _c, sms1, sms2, _d, email3, email4, email5;
5841
5841
  return __generator(this, function (_f) {
5842
5842
  switch (_f.label) {
5843
5843
  case 0:
5844
5844
  (0, testing_1.log_header)("Rate Limits");
5845
5845
  return [4 /*yield*/, sdk.api.endusers.createSome([
5846
- { fname: '1', email: 'e1@tellescope.com', phone: '+15555555555' },
5847
- { fname: '2', email: 'e2@tellescope.com', phone: '+15555555555' },
5846
+ { fname: '1', email: 'dontsend@tellescope.com', phone: '+15555555555' },
5847
+ { fname: '2', email: 'dontsend2@tellescope.com', phone: '+15555555555' },
5848
+ { fname: 'Logonly', email: 'dontsend3@tellescope.com', phone: '+15555555555' },
5848
5849
  ])];
5849
5850
  case 1:
5850
- _a = (_f.sent()).created, e1 = _a[0], e2 = _a[1];
5851
+ _a = (_f.sent()).created, e1 = _a[0], e2 = _a[1], e3 = _a[2];
5851
5852
  return [4 /*yield*/, (0, testing_1.async_test)("Same template email rate limit 1-per-minute", function () { return sdk.api.emails.createSome([
5852
- { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5853
- { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5853
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5854
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5854
5855
  ]); }, handleRateLimitError)
5855
5856
  // these should work, as 1 each is safe
5856
5857
  ];
5857
5858
  case 2:
5858
5859
  _f.sent();
5859
5860
  return [4 /*yield*/, sdk.api.emails.createSome([
5860
- { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5861
- { logOnly: true, enduserId: e2.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5861
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5862
+ { enduserId: e2.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID },
5862
5863
  ])];
5863
5864
  case 3:
5864
5865
  _b = (_f.sent()).created, email1 = _b[0], email2 = _b[1];
5865
5866
  // already has 1 created
5866
5867
  return [4 /*yield*/, (0, testing_1.async_test)("Same enduser rate limit 5 per 5 seconds", function () { return sdk.api.emails.createSome([
5868
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5869
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5870
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5871
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5872
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5873
+ ]); }, handleRateLimitError)];
5874
+ case 4:
5875
+ // already has 1 created
5876
+ _f.sent();
5877
+ return [4 /*yield*/, (0, testing_1.async_test)("Same enduser rate limit 5 per 5 seconds not for log only", function () { return sdk.api.emails.createSome([
5867
5878
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5868
5879
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5869
5880
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5870
5881
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
5871
5882
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5872
- ]); }, handleRateLimitError)];
5873
- case 4:
5874
- // already has 1 created
5883
+ ]); }, passOnAnyResult)];
5884
+ case 5:
5875
5885
  _f.sent();
5876
5886
  return [4 /*yield*/, (0, testing_1.wait)(undefined, 2500)]; // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
5877
- case 5:
5887
+ case 6:
5878
5888
  _f.sent(); // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
5879
5889
  return [4 /*yield*/, (0, testing_1.async_test)("Same template email rate limit 1-per-minute after creating", function () { return sdk.api.emails.createOne({
5880
- logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID
5890
+ enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID
5881
5891
  }); }, handleRateLimitError)];
5882
- case 6:
5892
+ case 7:
5893
+ _f.sent();
5894
+ return [4 /*yield*/, (0, testing_1.async_test)("Same template email rate limit 1-per-minute not for logOnly 1", function () { return sdk.api.emails.createOne({
5895
+ logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID
5896
+ }); }, passOnAnyResult)];
5897
+ case 8:
5898
+ _f.sent();
5899
+ return [4 /*yield*/, (0, testing_1.async_test)("Same template email rate limit 1-per-minute not for logOnly 2", function () { return sdk.api.emails.createOne({
5900
+ logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: constants_1.PLACEHOLDER_ID
5901
+ }); }, passOnAnyResult)];
5902
+ case 9:
5883
5903
  _f.sent();
5884
5904
  return [4 /*yield*/, (0, testing_1.async_test)("Same template sms rate limit 1-per-minute", function () { return sdk.api.sms_messages.createSome([
5885
- { logOnly: true, enduserId: e1.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5886
- { logOnly: true, enduserId: e1.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5905
+ { enduserId: e1.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5906
+ { enduserId: e1.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5887
5907
  ]); }, handleRateLimitError)
5888
5908
  // these should work, as 1 each is safe
5889
5909
  ];
5890
- case 7:
5910
+ case 10:
5891
5911
  _f.sent();
5892
5912
  return [4 /*yield*/, sdk.api.sms_messages.createSome([
5893
- { logOnly: true, enduserId: e1.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5894
- { logOnly: true, enduserId: e2.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5913
+ { enduserId: e1.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5914
+ { enduserId: e2.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi' },
5895
5915
  ])];
5896
- case 8:
5916
+ case 11:
5897
5917
  _c = (_f.sent()).created, sms1 = _c[0], sms2 = _c[1];
5898
5918
  // already has 1 created, so 3 new should error (4 > 3)
5899
5919
  return [4 /*yield*/, (0, testing_1.async_test)("Same enduser sms rate limit 3 per 3 seconds", function () { return sdk.api.sms_messages.createSome([
5900
- { logOnly: true, enduserId: e1.id, message: 'hi' },
5901
- { logOnly: true, enduserId: e1.id, message: 'hi' },
5902
- { logOnly: true, enduserId: e1.id, message: 'hi' },
5920
+ { enduserId: e1.id, message: 'hi' },
5921
+ { enduserId: e1.id, message: 'hi' },
5922
+ { enduserId: e1.id, message: 'hi' },
5903
5923
  ]); }, handleRateLimitError)];
5904
- case 9:
5924
+ case 12:
5905
5925
  // already has 1 created, so 3 new should error (4 > 3)
5926
+ _f.sent();
5927
+ return [4 /*yield*/, (0, testing_1.async_test)("Same enduser sms rate limit not applied on logOnly 3 per 3 seconds", function () { return sdk.api.sms_messages.createSome([
5928
+ { logOnly: true, enduserId: e3.id, message: 'hi' },
5929
+ { logOnly: true, enduserId: e3.id, message: 'hi' },
5930
+ { logOnly: true, enduserId: e3.id, message: 'hi' },
5931
+ { logOnly: true, enduserId: e3.id, message: 'hi' },
5932
+ { logOnly: true, enduserId: e3.id, message: 'hi' },
5933
+ ]); }, passOnAnyResult)];
5934
+ case 13:
5906
5935
  _f.sent();
5907
5936
  return [4 /*yield*/, (0, testing_1.wait)(undefined, 2500)]; // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
5908
- case 10:
5937
+ case 14:
5909
5938
  _f.sent(); // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
5910
5939
  return [4 /*yield*/, (0, testing_1.async_test)("Same template sms rate limit 1-per-minute after creating", function () { return sdk.api.sms_messages.createOne({
5940
+ enduserId: e2.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi'
5941
+ }); }, handleRateLimitError)];
5942
+ case 15:
5943
+ _f.sent();
5944
+ return [4 /*yield*/, (0, testing_1.async_test)("Same template sms rate limit 1-per-minute logonly does not apply 1", function () { return sdk.api.sms_messages.createOne({
5911
5945
  logOnly: true, enduserId: e2.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi'
5912
- }); }, handleRateLimitError)
5946
+ }); }, passOnAnyResult)];
5947
+ case 16:
5948
+ _f.sent();
5949
+ return [4 /*yield*/, (0, testing_1.async_test)("Same template sms rate limit 1-per-minute logonly does not apply 2", function () { return sdk.api.sms_messages.createOne({
5950
+ logOnly: true, enduserId: e2.id, templateId: constants_1.PLACEHOLDER_ID, message: 'hi'
5951
+ }); }, passOnAnyResult)
5913
5952
  // these should work, as they do not have the same template
5914
5953
  ];
5915
- case 11:
5954
+ case 17:
5916
5955
  _f.sent();
5917
5956
  return [4 /*yield*/, sdk.api.emails.createSome([
5918
- { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5919
- { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5920
- { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5957
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5958
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5959
+ { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
5921
5960
  ])];
5922
- case 12:
5961
+ case 18:
5923
5962
  _d = (_f.sent()).created, email3 = _d[0], email4 = _d[1], email5 = _d[2];
5924
5963
  return [4 /*yield*/, Promise.all([
5925
5964
  sdk.api.endusers.deleteOne(e1.id),
5926
5965
  sdk.api.endusers.deleteOne(e2.id),
5966
+ sdk.api.endusers.deleteOne(e3.id),
5927
5967
  sdk.api.emails.deleteOne(email1.id),
5928
5968
  sdk.api.emails.deleteOne(email2.id),
5929
5969
  sdk.api.emails.deleteOne(email3.id),
@@ -5932,7 +5972,7 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
5932
5972
  sdk.api.sms_messages.deleteOne(sms1.id),
5933
5973
  sdk.api.sms_messages.deleteOne(sms2.id),
5934
5974
  ])];
5935
- case 13:
5975
+ case 19:
5936
5976
  _f.sent();
5937
5977
  return [2 /*return*/];
5938
5978
  }
@@ -9558,92 +9598,92 @@ var mdb_filter_tests = function () { return __awaiter(void 0, void 0, void 0, fu
9558
9598
  return [4 /*yield*/, sync_tests()]; // should come directly after setup to avoid extra sync values
9559
9599
  case 14:
9560
9600
  _l.sent(); // should come directly after setup to avoid extra sync values
9561
- return [4 /*yield*/, mdb_filter_tests()];
9601
+ return [4 /*yield*/, rate_limit_tests()];
9562
9602
  case 15:
9563
9603
  _l.sent();
9564
- return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
9604
+ return [4 /*yield*/, mdb_filter_tests()];
9565
9605
  case 16:
9566
9606
  _l.sent();
9567
- return [4 /*yield*/, superadmin_tests()];
9607
+ return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
9568
9608
  case 17:
9569
9609
  _l.sent();
9570
- return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
9610
+ return [4 /*yield*/, superadmin_tests()];
9571
9611
  case 18:
9572
9612
  _l.sent();
9573
- return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
9613
+ return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
9574
9614
  case 19:
9575
9615
  _l.sent();
9576
- return [4 /*yield*/, merge_enduser_tests()];
9616
+ return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
9577
9617
  case 20:
9578
9618
  _l.sent();
9579
- return [4 /*yield*/, vital_trigger_tests()];
9619
+ return [4 /*yield*/, merge_enduser_tests()];
9580
9620
  case 21:
9581
9621
  _l.sent();
9582
- return [4 /*yield*/, close_reasons_no_duplicates_tests()];
9622
+ return [4 /*yield*/, vital_trigger_tests()];
9583
9623
  case 22:
9584
9624
  _l.sent();
9585
- return [4 /*yield*/, register_as_enduser_tests()];
9625
+ return [4 /*yield*/, close_reasons_no_duplicates_tests()];
9586
9626
  case 23:
9587
9627
  _l.sent();
9588
- return [4 /*yield*/, lockout_tests()];
9628
+ return [4 /*yield*/, register_as_enduser_tests()];
9589
9629
  case 24:
9630
+ _l.sent();
9631
+ return [4 /*yield*/, lockout_tests()];
9632
+ case 25:
9590
9633
  _l.sent();
9591
9634
  return [4 /*yield*/, delete_user_tests()
9592
9635
  // await test_send_with_template()
9593
9636
  ];
9594
- case 25:
9637
+ case 26:
9595
9638
  _l.sent();
9596
9639
  // await test_send_with_template()
9597
9640
  return [4 /*yield*/, bulk_read_tests()];
9598
- case 26:
9641
+ case 27:
9599
9642
  // await test_send_with_template()
9600
9643
  _l.sent();
9601
9644
  return [4 /*yield*/, (0, exports.ticket_reminder_tests)()];
9602
- case 27:
9603
- _l.sent();
9604
- return [4 /*yield*/, enduser_access_tags_tests()];
9605
9645
  case 28:
9606
9646
  _l.sent();
9607
- return [4 /*yield*/, marketing_email_unsubscribe_tests()];
9647
+ return [4 /*yield*/, enduser_access_tags_tests()];
9608
9648
  case 29:
9609
9649
  _l.sent();
9610
- return [4 /*yield*/, unique_strings_tests()];
9650
+ return [4 /*yield*/, marketing_email_unsubscribe_tests()];
9611
9651
  case 30:
9612
9652
  _l.sent();
9613
- return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
9653
+ return [4 /*yield*/, unique_strings_tests()];
9614
9654
  case 31:
9615
9655
  _l.sent();
9616
- return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
9656
+ return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
9617
9657
  case 32:
9618
9658
  _l.sent();
9619
- return [4 /*yield*/, field_equals_trigger_tests()];
9659
+ return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
9620
9660
  case 33:
9621
9661
  _l.sent();
9622
- return [4 /*yield*/, role_based_access_tests()];
9662
+ return [4 /*yield*/, field_equals_trigger_tests()];
9623
9663
  case 34:
9624
9664
  _l.sent();
9625
- return [4 /*yield*/, automation_trigger_tests()];
9665
+ return [4 /*yield*/, role_based_access_tests()];
9626
9666
  case 35:
9627
9667
  _l.sent();
9628
- return [4 /*yield*/, enduser_session_tests()];
9668
+ return [4 /*yield*/, automation_trigger_tests()];
9629
9669
  case 36:
9630
9670
  _l.sent();
9631
- return [4 /*yield*/, nextReminderInMS_tests()];
9671
+ return [4 /*yield*/, enduser_session_tests()];
9632
9672
  case 37:
9633
9673
  _l.sent();
9634
- return [4 /*yield*/, search_tests()];
9674
+ return [4 /*yield*/, nextReminderInMS_tests()];
9635
9675
  case 38:
9636
9676
  _l.sent();
9637
- return [4 /*yield*/, wait_for_trigger_tests()];
9677
+ return [4 /*yield*/, search_tests()];
9638
9678
  case 39:
9639
9679
  _l.sent();
9640
- return [4 /*yield*/, pdf_generation()];
9680
+ return [4 /*yield*/, wait_for_trigger_tests()];
9641
9681
  case 40:
9642
9682
  _l.sent();
9643
- return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
9683
+ return [4 /*yield*/, pdf_generation()];
9644
9684
  case 41:
9645
9685
  _l.sent();
9646
- return [4 /*yield*/, rate_limit_tests()];
9686
+ return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
9647
9687
  case 42:
9648
9688
  _l.sent();
9649
9689
  return [4 /*yield*/, auto_reply_tests()];