@tellescope/sdk 1.6.1 → 1.7.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.
@@ -3302,7 +3302,7 @@ var addToJourneyTests = function () { return __awaiter(void 0, void 0, void 0, f
3302
3302
  return [4 /*yield*/, (0, testing_1.wait)(undefined, 250)];
3303
3303
  case 6:
3304
3304
  _a.sent();
3305
- return [4 /*yield*/, (0, testing_1.async_test)("Journey state correctly set by add_to_journey (to default state)", function () { return sdk.api.endusers.getOne(enduser.id); }, { onResult: function (e) { var _a; return ((_a = e.journeys) === null || _a === void 0 ? void 0 : _a[journey.id]) === 'New'; } })];
3305
+ return [4 /*yield*/, (0, testing_1.async_test)("Journey state correctly set by add_to_journey (to default state)", function () { return sdk.api.endusers.getOne(enduser.id); }, { onResult: function (e) { var _a; return ((_a = e.journeys) === null || _a === void 0 ? void 0 : _a[journey.id]) === ''; } })];
3306
3306
  case 7:
3307
3307
  _a.sent();
3308
3308
  return [4 /*yield*/, (0, testing_1.wait)(undefined, 4000)]; // allow onJourneyStart step to trigger
@@ -3418,6 +3418,128 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
3418
3418
  }
3419
3419
  });
3420
3420
  }); };
3421
+ var formSubmittedTriggerTests = function () { return __awaiter(void 0, void 0, void 0, function () {
3422
+ var enduser, journey1, journey2, journey3, form, field, active, dupActive, inactive, accessCode;
3423
+ return __generator(this, function (_a) {
3424
+ switch (_a.label) {
3425
+ case 0:
3426
+ (0, testing_1.log_header)("Automation Trigger: Form Response --> Add To Journey");
3427
+ return [4 /*yield*/, sdk.api.endusers.createOne({ fname: 'test' })];
3428
+ case 1:
3429
+ enduser = _a.sent();
3430
+ return [4 /*yield*/, sdk.api.journeys.createOne({ title: 'journey' })];
3431
+ case 2:
3432
+ journey1 = _a.sent();
3433
+ return [4 /*yield*/, sdk.api.journeys.createOne({ title: 'journey2' })];
3434
+ case 3:
3435
+ journey2 = _a.sent();
3436
+ return [4 /*yield*/, sdk.api.journeys.createOne({ title: 'journey3' })];
3437
+ case 4:
3438
+ journey3 = _a.sent();
3439
+ return [4 /*yield*/, sdk.api.forms.createOne({ title: 'form' })];
3440
+ case 5:
3441
+ form = _a.sent();
3442
+ return [4 /*yield*/, sdk.api.form_fields.createOne({
3443
+ formId: form.id,
3444
+ type: 'string',
3445
+ title: 'Test',
3446
+ previousFields: [
3447
+ {
3448
+ type: 'root',
3449
+ info: {},
3450
+ }
3451
+ ],
3452
+ })];
3453
+ case 6:
3454
+ field = _a.sent();
3455
+ return [4 /*yield*/, sdk.api.automation_triggers.createOne({
3456
+ event: { type: 'Form Submitted', info: { formId: form.id } },
3457
+ action: { type: 'Add To Journey', info: { journeyId: journey1.id } },
3458
+ status: 'Active',
3459
+ title: "Active"
3460
+ })];
3461
+ case 7:
3462
+ active = _a.sent();
3463
+ return [4 /*yield*/, sdk.api.automation_triggers.createOne({
3464
+ event: { type: 'Form Submitted', info: { formId: form.id } },
3465
+ action: { type: 'Add To Journey', info: { journeyId: journey2.id } },
3466
+ status: 'Active',
3467
+ title: "Dup Active"
3468
+ })];
3469
+ case 8:
3470
+ dupActive = _a.sent();
3471
+ return [4 /*yield*/, sdk.api.automation_triggers.createOne({
3472
+ event: { type: 'Form Submitted', info: { formId: form.id } },
3473
+ action: { type: 'Add To Journey', info: { journeyId: journey3.id } },
3474
+ status: 'Inactive',
3475
+ title: "Inactive"
3476
+ })];
3477
+ case 9:
3478
+ inactive = _a.sent();
3479
+ return [4 /*yield*/, sdk.api.form_responses.prepare_form_response({
3480
+ enduserId: enduser.id,
3481
+ formId: form.id,
3482
+ })];
3483
+ case 10:
3484
+ accessCode = (_a.sent()).accessCode;
3485
+ return [4 /*yield*/, sdk.api.form_responses.submit_form_response({
3486
+ accessCode: accessCode,
3487
+ responses: [
3488
+ {
3489
+ fieldId: field.id,
3490
+ fieldTitle: field.title,
3491
+ answer: {
3492
+ type: 'string',
3493
+ value: 'trigger 2',
3494
+ },
3495
+ },
3496
+ ],
3497
+ })
3498
+ // allow triggers to happen
3499
+ ];
3500
+ case 11:
3501
+ _a.sent();
3502
+ // allow triggers to happen
3503
+ return [4 /*yield*/, (0, testing_1.wait)(undefined, 1000)];
3504
+ case 12:
3505
+ // allow triggers to happen
3506
+ _a.sent();
3507
+ return [4 /*yield*/, (0, testing_1.async_test)("Automated triggers work", function () { return sdk.api.endusers.getOne(enduser.id); }, { onResult: function (e) {
3508
+ var _a, _b, _c;
3509
+ return !!(((_a = e.journeys) === null || _a === void 0 ? void 0 : _a[journey1.id]) === ''
3510
+ && ((_b = e.journeys) === null || _b === void 0 ? void 0 : _b[journey2.id]) === ''
3511
+ && ((_c = e.journeys) === null || _c === void 0 ? void 0 : _c[journey3.id]) === undefined);
3512
+ } })];
3513
+ case 13:
3514
+ _a.sent();
3515
+ return [4 /*yield*/, Promise.all([
3516
+ sdk.api.journeys.deleteOne(journey1.id),
3517
+ sdk.api.journeys.deleteOne(journey2.id),
3518
+ sdk.api.journeys.deleteOne(journey3.id),
3519
+ sdk.api.endusers.deleteOne(enduser.id),
3520
+ sdk.api.forms.deleteOne(form.id),
3521
+ sdk.api.automation_triggers.deleteOne(active.id),
3522
+ sdk.api.automation_triggers.deleteOne(dupActive.id),
3523
+ sdk.api.automation_triggers.deleteOne(inactive.id),
3524
+ ])];
3525
+ case 14:
3526
+ _a.sent();
3527
+ return [2 /*return*/];
3528
+ }
3529
+ });
3530
+ }); };
3531
+ var automation_trigger_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
3532
+ return __generator(this, function (_a) {
3533
+ switch (_a.label) {
3534
+ case 0:
3535
+ (0, testing_1.log_header)("Automation Trigger Tests");
3536
+ return [4 /*yield*/, formSubmittedTriggerTests()];
3537
+ case 1:
3538
+ _a.sent();
3539
+ return [2 /*return*/];
3540
+ }
3541
+ });
3542
+ }); };
3421
3543
  var form_response_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
3422
3544
  var stringResponse, stringIntakeField, stringTitle, enduser, form, field, field2, accessCode, enduserWithUpdate, recordedResponse;
3423
3545
  var _a, _b, _c;
@@ -4831,6 +4953,7 @@ var auto_reply_tests = function () { return __awaiter(void 0, void 0, void 0, fu
4831
4953
  }); };
4832
4954
  var NO_TEST = function () { };
4833
4955
  var tests = {
4956
+ automation_triggers: NO_TEST,
4834
4957
  automation_steps: automation_events_tests,
4835
4958
  background_errors: NO_TEST,
4836
4959
  enduser_views: NO_TEST,
@@ -4894,7 +5017,7 @@ var tests = {
4894
5017
  (0, testing_1.log_header)("API");
4895
5018
  _k.label = 1;
4896
5019
  case 1:
4897
- _k.trys.push([1, 22, , 23]);
5020
+ _k.trys.push([1, 23, , 24]);
4898
5021
  return [4 /*yield*/, Promise.all([
4899
5022
  sdk.authenticate(email, password),
4900
5023
  sdkSub.authenticate(subUserEmail, password),
@@ -4910,59 +5033,62 @@ var tests = {
4910
5033
  return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
4911
5034
  case 4:
4912
5035
  _k.sent(); // should come right after setup tests
4913
- return [4 /*yield*/, sub_organization_enduser_tests()];
5036
+ return [4 /*yield*/, automation_trigger_tests()];
4914
5037
  case 5:
4915
5038
  _k.sent();
4916
- return [4 /*yield*/, auto_reply_tests()];
5039
+ return [4 /*yield*/, sub_organization_enduser_tests()];
4917
5040
  case 6:
4918
5041
  _k.sent();
4919
- return [4 /*yield*/, sub_organization_tests()];
5042
+ return [4 /*yield*/, auto_reply_tests()];
4920
5043
  case 7:
4921
5044
  _k.sent();
4922
- return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
5045
+ return [4 /*yield*/, sub_organization_tests()];
4923
5046
  case 8:
4924
5047
  _k.sent();
4925
- return [4 /*yield*/, (0, exports.filter_by_date_tests)()];
5048
+ return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
4926
5049
  case 9:
4927
5050
  _k.sent();
4928
- return [4 /*yield*/, generate_user_auth_tests()];
5051
+ return [4 /*yield*/, (0, exports.filter_by_date_tests)()];
4929
5052
  case 10:
4930
5053
  _k.sent();
4931
- return [4 /*yield*/, role_based_access_tests()];
5054
+ return [4 /*yield*/, generate_user_auth_tests()];
4932
5055
  case 11:
4933
5056
  _k.sent();
4934
- return [4 /*yield*/, generateEnduserAuthTests()];
5057
+ return [4 /*yield*/, role_based_access_tests()];
4935
5058
  case 12:
4936
5059
  _k.sent();
4937
- return [4 /*yield*/, public_form_tests()];
5060
+ return [4 /*yield*/, generateEnduserAuthTests()];
4938
5061
  case 13:
4939
5062
  _k.sent();
4940
- return [4 /*yield*/, search_tests()];
5063
+ return [4 /*yield*/, public_form_tests()];
4941
5064
  case 14:
4942
5065
  _k.sent();
4943
- return [4 /*yield*/, badInputTests()];
5066
+ return [4 /*yield*/, search_tests()];
4944
5067
  case 15:
4945
5068
  _k.sent();
4946
- return [4 /*yield*/, filterTests()];
5069
+ return [4 /*yield*/, badInputTests()];
4947
5070
  case 16:
4948
5071
  _k.sent();
4949
- return [4 /*yield*/, updatesTests()];
5072
+ return [4 /*yield*/, filterTests()];
4950
5073
  case 17:
4951
5074
  _k.sent();
4952
- return [4 /*yield*/, threadKeyTests()];
5075
+ return [4 /*yield*/, updatesTests()];
4953
5076
  case 18:
4954
5077
  _k.sent();
4955
- return [4 /*yield*/, enduserAccessTests()];
5078
+ return [4 /*yield*/, threadKeyTests()];
4956
5079
  case 19:
4957
5080
  _k.sent();
4958
- return [4 /*yield*/, enduser_session_tests()];
5081
+ return [4 /*yield*/, enduserAccessTests()];
4959
5082
  case 20:
4960
5083
  _k.sent();
4961
- return [4 /*yield*/, enduser_redaction_tests()];
5084
+ return [4 /*yield*/, enduser_session_tests()];
4962
5085
  case 21:
4963
5086
  _k.sent();
4964
- return [3 /*break*/, 23];
5087
+ return [4 /*yield*/, enduser_redaction_tests()];
4965
5088
  case 22:
5089
+ _k.sent();
5090
+ return [3 /*break*/, 24];
5091
+ case 23:
4966
5092
  err_1 = _k.sent();
4967
5093
  console.error("Failed during custom test");
4968
5094
  if (err_1.message && err_1.info) {
@@ -4972,18 +5098,18 @@ var tests = {
4972
5098
  console.error(err_1);
4973
5099
  }
4974
5100
  process.exit(1);
4975
- return [3 /*break*/, 23];
4976
- case 23:
5101
+ return [3 /*break*/, 24];
5102
+ case 24:
4977
5103
  _a = schema_1.schema;
4978
5104
  _b = [];
4979
5105
  for (_c in _a)
4980
5106
  _b.push(_c);
4981
5107
  _i = 0;
4982
- _k.label = 24;
4983
- case 24:
4984
- if (!(_i < _b.length)) return [3 /*break*/, 27];
5108
+ _k.label = 25;
5109
+ case 25:
5110
+ if (!(_i < _b.length)) return [3 /*break*/, 28];
4985
5111
  _c = _b[_i];
4986
- if (!(_c in _a)) return [3 /*break*/, 26];
5112
+ if (!(_c in _a)) return [3 /*break*/, 27];
4987
5113
  n = _c;
4988
5114
  returnValidation = (_j = (_h = schema_1.schema[n].customActions) === null || _h === void 0 ? void 0 : _h.create) === null || _j === void 0 ? void 0 : _j.returns;
4989
5115
  return [4 /*yield*/, run_generated_tests({
@@ -4994,41 +5120,41 @@ var tests = {
4994
5120
  create: returnValidation // ModelFields<ClientModel>,
4995
5121
  }
4996
5122
  })];
4997
- case 25:
4998
- _k.sent();
4999
- _k.label = 26;
5000
5123
  case 26:
5001
- _i++;
5002
- return [3 /*break*/, 24];
5124
+ _k.sent();
5125
+ _k.label = 27;
5003
5126
  case 27:
5127
+ _i++;
5128
+ return [3 /*break*/, 25];
5129
+ case 28:
5004
5130
  _d = tests;
5005
5131
  _e = [];
5006
5132
  for (_f in _d)
5007
5133
  _e.push(_f);
5008
5134
  _g = 0;
5009
- _k.label = 28;
5010
- case 28:
5011
- if (!(_g < _e.length)) return [3 /*break*/, 33];
5012
- _f = _e[_g];
5013
- if (!(_f in _d)) return [3 /*break*/, 32];
5014
- t = _f;
5015
5135
  _k.label = 29;
5016
5136
  case 29:
5017
- _k.trys.push([29, 31, , 32]);
5018
- return [4 /*yield*/, tests[t]()];
5137
+ if (!(_g < _e.length)) return [3 /*break*/, 34];
5138
+ _f = _e[_g];
5139
+ if (!(_f in _d)) return [3 /*break*/, 33];
5140
+ t = _f;
5141
+ _k.label = 30;
5019
5142
  case 30:
5020
- _k.sent();
5021
- return [3 /*break*/, 32];
5143
+ _k.trys.push([30, 32, , 33]);
5144
+ return [4 /*yield*/, tests[t]()];
5022
5145
  case 31:
5146
+ _k.sent();
5147
+ return [3 /*break*/, 33];
5148
+ case 32:
5023
5149
  err_2 = _k.sent();
5024
5150
  console.error("Error running test:");
5025
5151
  console.error(err_2);
5026
5152
  process.exit(1);
5027
- return [3 /*break*/, 32];
5028
- case 32:
5029
- _g++;
5030
- return [3 /*break*/, 28];
5153
+ return [3 /*break*/, 33];
5031
5154
  case 33:
5155
+ _g++;
5156
+ return [3 /*break*/, 29];
5157
+ case 34:
5032
5158
  process.exit();
5033
5159
  return [2 /*return*/];
5034
5160
  }