@tellescope/sdk 1.249.0 → 1.249.2

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 (31) hide show
  1. package/lib/cjs/enduser.d.ts +12 -2
  2. package/lib/cjs/enduser.d.ts.map +1 -1
  3. package/lib/cjs/enduser.js +11 -0
  4. package/lib/cjs/enduser.js.map +1 -1
  5. package/lib/cjs/tests/api_tests/enduser_cross_access_isolation.test.d.ts +6 -0
  6. package/lib/cjs/tests/api_tests/enduser_cross_access_isolation.test.d.ts.map +1 -0
  7. package/lib/cjs/tests/api_tests/enduser_cross_access_isolation.test.js +782 -0
  8. package/lib/cjs/tests/api_tests/enduser_cross_access_isolation.test.js.map +1 -0
  9. package/lib/cjs/tests/tests.d.ts.map +1 -1
  10. package/lib/cjs/tests/tests.js +182 -143
  11. package/lib/cjs/tests/tests.js.map +1 -1
  12. package/lib/esm/enduser.d.ts +12 -2
  13. package/lib/esm/enduser.d.ts.map +1 -1
  14. package/lib/esm/enduser.js +11 -0
  15. package/lib/esm/enduser.js.map +1 -1
  16. package/lib/esm/sdk.d.ts +2 -2
  17. package/lib/esm/session.d.ts +0 -1
  18. package/lib/esm/session.d.ts.map +1 -1
  19. package/lib/esm/tests/api_tests/enduser_cross_access_isolation.test.d.ts +6 -0
  20. package/lib/esm/tests/api_tests/enduser_cross_access_isolation.test.d.ts.map +1 -0
  21. package/lib/esm/tests/api_tests/enduser_cross_access_isolation.test.js +778 -0
  22. package/lib/esm/tests/api_tests/enduser_cross_access_isolation.test.js.map +1 -0
  23. package/lib/esm/tests/tests.d.ts.map +1 -1
  24. package/lib/esm/tests/tests.js +183 -144
  25. package/lib/esm/tests/tests.js.map +1 -1
  26. package/lib/tsconfig.tsbuildinfo +1 -1
  27. package/package.json +10 -10
  28. package/src/enduser.ts +8 -2
  29. package/src/tests/api_tests/enduser_cross_access_isolation.test.ts +542 -0
  30. package/src/tests/tests.ts +89 -7
  31. package/test_generated.pdf +0 -0
@@ -86,7 +86,7 @@ import { appointment_rescheduled_trigger_tests } from "./api_tests/appointment_r
86
86
  import { journey_error_branching_tests } from "./api_tests/journey_error_branching.test";
87
87
  import { afteraction_day_of_month_delay_tests } from "./api_tests/afteraction_day_of_month_delay.test";
88
88
  import { setup_tests } from "./setup";
89
- import { evaluate_conditional_logic_for_enduser_fields, FORM_LOGIC_CALCULATED_FIELDS, get_care_team_primary, get_flattened_fields, get_next_reminder_timestamp, object_is_empty, replace_enduser_template_values, responses_satisfy_conditions, truncate_string, weighted_round_robin, YYYY_MM_DD_to_MM_DD_YYYY } from "@tellescope/utilities";
89
+ import { evaluate_conditional_logic_for_enduser_fields, FORM_LOGIC_CALCULATED_FIELDS, get_care_team_primary, get_flattened_fields, get_next_reminder_timestamp, object_is_empty, replace_enduser_template_values, replace_form_field_template_values, responses_satisfy_conditions, truncate_string, weighted_round_robin, YYYY_MM_DD_to_MM_DD_YYYY } from "@tellescope/utilities";
90
90
  import { DEFAULT_OPERATIONS, PLACEHOLDER_ID, ZENDESK_INTEGRATIONS_TITLE, ZOOM_TITLE } from "@tellescope/constants";
91
91
  import { schema, } from "@tellescope/schema";
92
92
  import { assert, async_test, handleAnyError, log_header, passOnAnyResult, wait, } from "@tellescope/testing";
@@ -121,6 +121,7 @@ import { openloop_webhooks_tests } from "./api_tests/openloop_webhooks.test";
121
121
  import { beluga_pharmacy_mappings_tests } from "./api_tests/beluga_pharmacy_mappings.test";
122
122
  import { date_string_validation_tests } from "./api_tests/date_string_validation.test";
123
123
  import { enduser_session_invalidation_tests } from "./api_tests/enduser_session_invalidation.test";
124
+ import { enduser_cross_access_isolation_tests } from "./api_tests/enduser_cross_access_isolation.test";
124
125
  var UniquenessViolationMessage = 'Uniqueness Violation';
125
126
  var host = process.env.API_URL || 'http://localhost:8080';
126
127
  var _a = [process.env.TEST_EMAIL, process.env.TEST_PASSWORD], email = _a[0], password = _a[1];
@@ -14587,6 +14588,38 @@ var replace_enduser_template_values_tests = function () { return __awaiter(void
14587
14588
  }
14588
14589
  });
14589
14590
  }); };
14591
+ var replace_form_field_template_values_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
14592
+ var enduserWithMultilineField, enduserWithLiteralEscapeField, enduserWithCRLFField;
14593
+ return __generator(this, function (_a) {
14594
+ log_header("Replace Form Field Template Values Tests");
14595
+ enduserWithMultilineField = {
14596
+ fname: "Multi",
14597
+ lname: "Line",
14598
+ fields: { Locations: 'NYC\nSF\nLA' },
14599
+ };
14600
+ // With escapeNewlinesAsHTMLBreaks: true — newlines in substituted value become <br />
14601
+ assert(replace_form_field_template_values('<p>Locations: {{enduser.Locations}}</p>', { enduser: enduserWithMultilineField, escapeNewlinesAsHTMLBreaks: true }) === '<p>Locations: NYC<br />SF<br />LA</p>', 'fail escapeNewlinesAsHTMLBreaks true', 'escapeNewlinesAsHTMLBreaks true');
14602
+ // Default (option absent) — newlines preserved as \n
14603
+ assert(replace_form_field_template_values('<p>Locations: {{enduser.Locations}}</p>', { enduser: enduserWithMultilineField }) === '<p>Locations: NYC\nSF\nLA</p>', 'fail default newline preserved', 'default newline preserved');
14604
+ // Explicit false — same as default
14605
+ assert(replace_form_field_template_values('<p>Locations: {{enduser.Locations}}</p>', { enduser: enduserWithMultilineField, escapeNewlinesAsHTMLBreaks: false }) === '<p>Locations: NYC\nSF\nLA</p>', 'fail escapeNewlinesAsHTMLBreaks false', 'escapeNewlinesAsHTMLBreaks false');
14606
+ // \n in original template (not in substituted value) is left alone
14607
+ assert(replace_form_field_template_values('<p>Header</p>\n<p>{{enduser.fname}}</p>', { enduser: enduserWithMultilineField, escapeNewlinesAsHTMLBreaks: true }) === '<p>Header</p>\n<p>Multi</p>', 'fail template newline untouched', 'template newline untouched');
14608
+ // Single-line value unaffected when option is enabled
14609
+ assert(replace_form_field_template_values('<p>Hello {{enduser.fname}}</p>', { enduser: enduserWithMultilineField, escapeNewlinesAsHTMLBreaks: true }) === '<p>Hello Multi</p>', 'fail single-line value', 'single-line value');
14610
+ enduserWithLiteralEscapeField = {
14611
+ fname: "Multi",
14612
+ fields: { Locations: 'NYC\\nSF\\nLA' },
14613
+ };
14614
+ assert(replace_form_field_template_values('<p>Locations: {{enduser.Locations}}</p>', { enduser: enduserWithLiteralEscapeField, escapeNewlinesAsHTMLBreaks: true }) === '<p>Locations: NYC<br />SF<br />LA</p>', 'fail literal \\n escape in substituted value', 'literal \\n escape in substituted value');
14615
+ enduserWithCRLFField = {
14616
+ fname: "Multi",
14617
+ fields: { Locations: 'NYC\r\nSF\r\nLA' },
14618
+ };
14619
+ assert(replace_form_field_template_values('<p>Locations: {{enduser.Locations}}</p>', { enduser: enduserWithCRLFField, escapeNewlinesAsHTMLBreaks: true }) === '<p>Locations: NYC<br />SF<br />LA</p>', 'fail CRLF in substituted value', 'CRLF in substituted value');
14620
+ return [2 /*return*/];
14621
+ });
14622
+ }); };
14590
14623
  var inbox_threads_building_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
14591
14624
  var e, e2, deleteBuiltThreads, start, i, resetThreadBuildingDates, resetThreadsAndDates, readBy, defaultEmail, defaultSMS, email, sms, groupMMS, call, room, from, beforeSecondThreads, email2, sms2, groupMMS2, call2, room2, beforeSecondEnduserThreads, e2_email, e2_sms, e2_groupMMS, e2_call, e2_room, beforeReplies, emailReply, smsReply, chatReply, newlyBuilt, threadsWithOlderLoad, emailReplyOutbound, smsReplyOutbound, chatOutboundReply, outboundCall;
14592
14625
  var _a;
@@ -15025,12 +15058,12 @@ var inbox_threads_building_tests = function () { return __awaiter(void 0, void 0
15025
15058
  &&
15026
15059
  threads
15027
15060
  .filter(function (t) {
15028
- return t.threadId === outboundCall.id
15029
- || (!!t.outboundTimestamp
15030
- && !!t.outboundPreview
15031
- && new Date(t.outboundTimestamp).getTime() > new Date(t.timestamp).getTime());
15061
+ return !!t.outboundTimestamp
15062
+ && !!t.outboundPreview
15063
+ // SMS uses ObjectId second-precision for both fields; allow equal when inbound/outbound land in the same second
15064
+ && new Date(t.outboundTimestamp).getTime() >= new Date(t.timestamp).getTime();
15032
15065
  })
15033
- .length === 4 // all channels except call
15066
+ .length === 4 // all channels except call
15034
15067
  );
15035
15068
  } })];
15036
15069
  case 59:
@@ -15949,7 +15982,7 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
15949
15982
  assert(truncate_string(null, { length: 4, showEllipsis: false }) === '', 'truncate doesnt work for non string', 'trucate works for non-string');
15950
15983
  _l.label = 2;
15951
15984
  case 2:
15952
- _l.trys.push([2, 125, , 126]);
15985
+ _l.trys.push([2, 127, , 128]);
15953
15986
  get_next_reminder_timestamp_tests();
15954
15987
  form_conditional_logic_tests();
15955
15988
  return [4 /*yield*/, test_weighted_round_robin()];
@@ -16084,342 +16117,348 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
16084
16117
  return [4 /*yield*/, replace_enduser_template_values_tests()];
16085
16118
  case 14:
16086
16119
  _l.sent();
16087
- return [4 /*yield*/, mfa_tests()];
16120
+ return [4 /*yield*/, replace_form_field_template_values_tests()];
16088
16121
  case 15:
16089
16122
  _l.sent();
16090
- return [4 /*yield*/, setup_tests(sdk, sdkNonAdmin)];
16123
+ return [4 /*yield*/, mfa_tests()];
16091
16124
  case 16:
16092
16125
  _l.sent();
16093
- return [4 /*yield*/, eom_procedure_codes_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16126
+ return [4 /*yield*/, setup_tests(sdk, sdkNonAdmin)];
16094
16127
  case 17:
16095
16128
  _l.sent();
16096
- return [4 /*yield*/, cross_org_api_key_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16129
+ return [4 /*yield*/, enduser_cross_access_isolation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16097
16130
  case 18:
16098
16131
  _l.sent();
16099
- return [4 /*yield*/, organization_settings_duplicates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16132
+ return [4 /*yield*/, eom_procedure_codes_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16100
16133
  case 19:
16101
16134
  _l.sent();
16102
- return [4 /*yield*/, enduser_session_invalidation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16135
+ return [4 /*yield*/, cross_org_api_key_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16103
16136
  case 20:
16104
16137
  _l.sent();
16105
- return [4 /*yield*/, chats_analytics_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16138
+ return [4 /*yield*/, organization_settings_duplicates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16106
16139
  case 21:
16107
16140
  _l.sent();
16108
- return [4 /*yield*/, field_redaction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16141
+ return [4 /*yield*/, enduser_session_invalidation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16109
16142
  case 22:
16110
16143
  _l.sent();
16111
- return [4 /*yield*/, form_submitted_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16144
+ return [4 /*yield*/, chats_analytics_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16112
16145
  case 23:
16113
16146
  _l.sent();
16114
- return [4 /*yield*/, date_string_validation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16147
+ return [4 /*yield*/, field_redaction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16115
16148
  case 24:
16116
16149
  _l.sent();
16117
- return [4 /*yield*/, openloop_webhooks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16150
+ return [4 /*yield*/, form_submitted_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16118
16151
  case 25:
16119
16152
  _l.sent();
16120
- return [4 /*yield*/, automation_trigger_tests()];
16153
+ return [4 /*yield*/, date_string_validation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16121
16154
  case 26:
16122
16155
  _l.sent();
16123
- return [4 /*yield*/, integrations_redacted_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16156
+ return [4 /*yield*/, openloop_webhooks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16124
16157
  case 27:
16125
16158
  _l.sent();
16126
- return [4 /*yield*/, mdb_sort_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16159
+ return [4 /*yield*/, automation_trigger_tests()];
16127
16160
  case 28:
16128
16161
  _l.sent();
16129
- return [4 /*yield*/, search_tests()];
16162
+ return [4 /*yield*/, integrations_redacted_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16130
16163
  case 29:
16131
16164
  _l.sent();
16132
- return [4 /*yield*/, time_tracks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16165
+ return [4 /*yield*/, mdb_sort_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16133
16166
  case 30:
16134
16167
  _l.sent();
16135
- return [4 /*yield*/, time_tracks_historical_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16168
+ return [4 /*yield*/, search_tests()];
16136
16169
  case 31:
16137
16170
  _l.sent();
16138
- return [4 /*yield*/, time_tracks_correction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16171
+ return [4 /*yield*/, time_tracks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16139
16172
  case 32:
16140
16173
  _l.sent();
16141
- return [4 /*yield*/, time_tracks_review_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16174
+ return [4 /*yield*/, time_tracks_historical_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16142
16175
  case 33:
16143
16176
  _l.sent();
16144
- return [4 /*yield*/, time_tracks_lock_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16177
+ return [4 /*yield*/, time_tracks_correction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16145
16178
  case 34:
16146
16179
  _l.sent();
16147
- return [4 /*yield*/, time_tracks_edge_case_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16180
+ return [4 /*yield*/, time_tracks_review_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16148
16181
  case 35:
16149
16182
  _l.sent();
16150
- return [4 /*yield*/, calendar_event_limits_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16183
+ return [4 /*yield*/, time_tracks_lock_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16151
16184
  case 36:
16152
16185
  _l.sent();
16153
- return [4 /*yield*/, get_some_projection_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16186
+ return [4 /*yield*/, time_tracks_edge_case_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16154
16187
  case 37:
16155
16188
  _l.sent();
16156
- return [4 /*yield*/, elation_user_id_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16189
+ return [4 /*yield*/, calendar_event_limits_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16157
16190
  case 38:
16158
16191
  _l.sent();
16159
- return [4 /*yield*/, custom_dashboards_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16192
+ return [4 /*yield*/, get_some_projection_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16160
16193
  case 39:
16161
16194
  _l.sent();
16162
- return [4 /*yield*/, concurrent_build_threads_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16195
+ return [4 /*yield*/, elation_user_id_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16163
16196
  case 40:
16164
16197
  _l.sent();
16165
- return [4 /*yield*/, custom_aggregation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16198
+ return [4 /*yield*/, custom_dashboards_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16166
16199
  case 41:
16167
16200
  _l.sent();
16168
- return [4 /*yield*/, no_access_permission_checks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16201
+ return [4 /*yield*/, concurrent_build_threads_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16169
16202
  case 42:
16170
16203
  _l.sent();
16171
- return [4 /*yield*/, enduser_tests()];
16204
+ return [4 /*yield*/, custom_aggregation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16172
16205
  case 43:
16173
16206
  _l.sent();
16174
- return [4 /*yield*/, form_started_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16207
+ return [4 /*yield*/, no_access_permission_checks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16175
16208
  case 44:
16176
16209
  _l.sent();
16177
- return [4 /*yield*/, load_team_chat_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16210
+ return [4 /*yield*/, enduser_tests()];
16178
16211
  case 45:
16179
16212
  _l.sent();
16180
- return [4 /*yield*/, ai_conversations_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16213
+ return [4 /*yield*/, form_started_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16181
16214
  case 46:
16182
16215
  _l.sent();
16183
- return [4 /*yield*/, inbox_thread_assignment_updates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16216
+ return [4 /*yield*/, load_team_chat_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16184
16217
  case 47:
16185
16218
  _l.sent();
16186
- return [4 /*yield*/, inbox_thread_draft_scheduled_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16219
+ return [4 /*yield*/, ai_conversations_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16187
16220
  case 48:
16188
16221
  _l.sent();
16189
- return [4 /*yield*/, load_threads_autobuild_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16222
+ return [4 /*yield*/, inbox_thread_assignment_updates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16190
16223
  case 49:
16191
16224
  _l.sent();
16192
- return [4 /*yield*/, inbox_threads_new_fields_tests()];
16225
+ return [4 /*yield*/, inbox_thread_draft_scheduled_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16193
16226
  case 50:
16194
16227
  _l.sent();
16195
- return [4 /*yield*/, auto_merge_form_submission_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16228
+ return [4 /*yield*/, load_threads_autobuild_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16196
16229
  case 51:
16197
16230
  _l.sent();
16198
- return [4 /*yield*/, beluga_pharmacy_mappings_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16231
+ return [4 /*yield*/, inbox_threads_new_fields_tests()];
16199
16232
  case 52:
16200
16233
  _l.sent();
16201
- return [4 /*yield*/, threadKeyTests()];
16234
+ return [4 /*yield*/, auto_merge_form_submission_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16202
16235
  case 53:
16203
16236
  _l.sent();
16204
- return [4 /*yield*/, managed_content_enduser_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16237
+ return [4 /*yield*/, beluga_pharmacy_mappings_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16205
16238
  case 54:
16206
16239
  _l.sent();
16207
- return [4 /*yield*/, managed_content_file_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16240
+ return [4 /*yield*/, threadKeyTests()];
16208
16241
  case 55:
16209
16242
  _l.sent();
16210
- return [4 /*yield*/, afteraction_day_of_month_delay_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16243
+ return [4 /*yield*/, managed_content_enduser_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16211
16244
  case 56:
16212
16245
  _l.sent();
16213
- return [4 /*yield*/, bulk_assignment_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16246
+ return [4 /*yield*/, managed_content_file_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16214
16247
  case 57:
16215
16248
  _l.sent();
16216
- return [4 /*yield*/, formsort_tests()];
16249
+ return [4 /*yield*/, afteraction_day_of_month_delay_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16217
16250
  case 58:
16218
16251
  _l.sent();
16219
- return [4 /*yield*/, self_serve_appointment_booking_tests()];
16252
+ return [4 /*yield*/, bulk_assignment_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16220
16253
  case 59:
16221
16254
  _l.sent();
16222
- return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
16255
+ return [4 /*yield*/, formsort_tests()];
16223
16256
  case 60:
16224
16257
  _l.sent();
16225
- return [4 /*yield*/, monthly_availability_restrictions_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16258
+ return [4 /*yield*/, self_serve_appointment_booking_tests()];
16226
16259
  case 61:
16227
16260
  _l.sent();
16228
- return [4 /*yield*/, journey_error_branching_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16261
+ return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
16229
16262
  case 62:
16230
16263
  _l.sent();
16231
- return [4 /*yield*/, message_assignment_trigger_tests({ sdk: sdk })];
16264
+ return [4 /*yield*/, monthly_availability_restrictions_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16232
16265
  case 63:
16233
16266
  _l.sent();
16234
- return [4 /*yield*/, inbox_threads_building_tests()];
16267
+ return [4 /*yield*/, journey_error_branching_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16235
16268
  case 64:
16236
16269
  _l.sent();
16237
- return [4 /*yield*/, inbox_threads_loading_tests()];
16270
+ return [4 /*yield*/, message_assignment_trigger_tests({ sdk: sdk })];
16238
16271
  case 65:
16239
16272
  _l.sent();
16240
- return [4 /*yield*/, load_inbox_data_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16273
+ return [4 /*yield*/, inbox_threads_building_tests()];
16241
16274
  case 66:
16242
16275
  _l.sent();
16243
- return [4 /*yield*/, enduser_observations_acknowledge_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16276
+ return [4 /*yield*/, inbox_threads_loading_tests()];
16244
16277
  case 67:
16245
16278
  _l.sent();
16246
- return [4 /*yield*/, create_user_notifications_trigger_tests({ sdk: sdk })];
16279
+ return [4 /*yield*/, load_inbox_data_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16247
16280
  case 68:
16248
16281
  _l.sent();
16249
- return [4 /*yield*/, group_mms_active_tests()];
16282
+ return [4 /*yield*/, enduser_observations_acknowledge_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
16250
16283
  case 69:
16251
16284
  _l.sent();
16252
- return [4 /*yield*/, auto_reply_tests()];
16285
+ return [4 /*yield*/, create_user_notifications_trigger_tests({ sdk: sdk })];
16253
16286
  case 70:
16254
16287
  _l.sent();
16255
- return [4 /*yield*/, relationships_tests()];
16288
+ return [4 /*yield*/, group_mms_active_tests()];
16256
16289
  case 71:
16257
16290
  _l.sent();
16258
- return [4 /*yield*/, rate_limit_tests()];
16291
+ return [4 /*yield*/, auto_reply_tests()];
16259
16292
  case 72:
16260
16293
  _l.sent();
16261
- return [4 /*yield*/, ip_address_form_tests()];
16294
+ return [4 /*yield*/, relationships_tests()];
16262
16295
  case 73:
16263
16296
  _l.sent();
16264
- return [4 /*yield*/, bulk_update_tests()];
16297
+ return [4 /*yield*/, rate_limit_tests()];
16265
16298
  case 74:
16266
16299
  _l.sent();
16267
- return [4 /*yield*/, calendar_events_bulk_update_tests({ sdk: sdk })];
16300
+ return [4 /*yield*/, ip_address_form_tests()];
16268
16301
  case 75:
16269
16302
  _l.sent();
16270
- return [4 /*yield*/, cancel_upcoming_appointments_journey_action_test()];
16303
+ return [4 /*yield*/, bulk_update_tests()];
16271
16304
  case 76:
16272
16305
  _l.sent();
16273
- return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
16306
+ return [4 /*yield*/, calendar_events_bulk_update_tests({ sdk: sdk })];
16274
16307
  case 77:
16308
+ _l.sent();
16309
+ return [4 /*yield*/, cancel_upcoming_appointments_journey_action_test()];
16310
+ case 78:
16311
+ _l.sent();
16312
+ return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
16313
+ case 79:
16275
16314
  _l.sent(); // should come right after setup tests
16276
16315
  return [4 /*yield*/, sync_tests_with_access_tags()]; // should come directly after setup to avoid extra sync values
16277
- case 78:
16316
+ case 80:
16278
16317
  _l.sent(); // should come directly after setup to avoid extra sync values
16279
16318
  return [4 /*yield*/, sync_tests()]; // should come directly after setup to avoid extra sync values
16280
- case 79:
16319
+ case 81:
16281
16320
  _l.sent(); // should come directly after setup to avoid extra sync values
16282
16321
  return [4 /*yield*/, get_templated_message_tests()];
16283
- case 80:
16322
+ case 82:
16284
16323
  _l.sent();
16285
16324
  return [4 /*yield*/, updatedAt_tests()];
16286
- case 81:
16325
+ case 83:
16287
16326
  _l.sent();
16288
16327
  return [4 /*yield*/, file_source_tests()];
16289
- case 82:
16328
+ case 84:
16290
16329
  _l.sent();
16291
16330
  return [4 /*yield*/, enduser_access_tags_tests()];
16292
- case 83:
16331
+ case 85:
16293
16332
  _l.sent();
16294
16333
  return [4 /*yield*/, enduserAccessTests()];
16295
- case 84:
16334
+ case 86:
16296
16335
  _l.sent();
16297
16336
  return [4 /*yield*/, test_form_response_search()];
16298
- case 85:
16337
+ case 87:
16299
16338
  _l.sent();
16300
16339
  return [4 /*yield*/, date_parsing_tests()];
16301
- case 86:
16340
+ case 88:
16302
16341
  _l.sent();
16303
16342
  return [4 /*yield*/, fromEmailOverride_tests()];
16304
- case 87:
16343
+ case 89:
16305
16344
  _l.sent();
16306
16345
  return [4 /*yield*/, ticket_tests()];
16307
- case 88:
16346
+ case 90:
16308
16347
  _l.sent();
16309
16348
  return [4 /*yield*/, uniqueness_tests()];
16310
- case 89:
16349
+ case 91:
16311
16350
  _l.sent();
16312
16351
  return [4 /*yield*/, enduser_orders_tests()];
16313
- case 90:
16352
+ case 92:
16314
16353
  _l.sent();
16315
16354
  return [4 /*yield*/, calendar_event_care_team_tests()];
16316
- case 91:
16355
+ case 93:
16317
16356
  _l.sent();
16318
16357
  return [4 /*yield*/, merge_enduser_tests()];
16319
- case 92:
16358
+ case 94:
16320
16359
  _l.sent();
16321
16360
  return [4 /*yield*/, input_modifier_tests()];
16322
- case 93:
16361
+ case 95:
16323
16362
  _l.sent();
16324
16363
  return [4 /*yield*/, switch_to_related_contacts_tests()];
16325
- case 94:
16364
+ case 96:
16326
16365
  _l.sent();
16327
16366
  return [4 /*yield*/, redaction_tests()];
16328
- case 95:
16367
+ case 97:
16329
16368
  _l.sent();
16330
16369
  return [4 /*yield*/, no_chained_triggers_tests()];
16331
- case 96:
16370
+ case 98:
16332
16371
  _l.sent();
16333
16372
  return [4 /*yield*/, mdb_filter_tests()];
16334
- case 97:
16373
+ case 99:
16335
16374
  _l.sent();
16336
16375
  return [4 /*yield*/, superadmin_tests()];
16337
- case 98:
16376
+ case 100:
16338
16377
  _l.sent();
16339
16378
  return [4 /*yield*/, ticket_queue_tests()];
16340
- case 99:
16379
+ case 101:
16341
16380
  _l.sent();
16342
16381
  return [4 /*yield*/, vital_trigger_tests()];
16343
- case 100:
16382
+ case 102:
16344
16383
  _l.sent();
16345
16384
  return [4 /*yield*/, close_reasons_no_duplicates_tests()];
16346
- case 101:
16385
+ case 103:
16347
16386
  _l.sent();
16348
16387
  return [4 /*yield*/, register_as_enduser_tests()];
16349
- case 102:
16388
+ case 104:
16350
16389
  _l.sent();
16351
16390
  return [4 /*yield*/, lockout_tests()];
16352
- case 103:
16391
+ case 105:
16353
16392
  _l.sent();
16354
16393
  return [4 /*yield*/, delete_user_tests()
16355
16394
  // await test_send_with_template()
16356
16395
  ];
16357
- case 104:
16396
+ case 106:
16358
16397
  _l.sent();
16359
16398
  // await test_send_with_template()
16360
16399
  return [4 /*yield*/, bulk_read_tests()];
16361
- case 105:
16400
+ case 107:
16362
16401
  // await test_send_with_template()
16363
16402
  _l.sent();
16364
16403
  return [4 /*yield*/, ticket_reminder_tests()];
16365
- case 106:
16404
+ case 108:
16366
16405
  _l.sent();
16367
16406
  return [4 /*yield*/, marketing_email_unsubscribe_tests()];
16368
- case 107:
16407
+ case 109:
16369
16408
  _l.sent();
16370
16409
  return [4 /*yield*/, unique_strings_tests()];
16371
- case 108:
16410
+ case 110:
16372
16411
  _l.sent();
16373
16412
  return [4 /*yield*/, alternate_phones_tests()];
16374
- case 109:
16413
+ case 111:
16375
16414
  _l.sent();
16376
16415
  return [4 /*yield*/, role_based_access_tests()];
16377
- case 110:
16416
+ case 112:
16378
16417
  _l.sent();
16379
16418
  return [4 /*yield*/, enduser_session_tests()];
16380
- case 111:
16419
+ case 113:
16381
16420
  _l.sent();
16382
16421
  return [4 /*yield*/, nextReminderInMS_tests()];
16383
- case 112:
16422
+ case 114:
16384
16423
  _l.sent();
16385
16424
  return [4 /*yield*/, wait_for_trigger_tests()];
16386
- case 113:
16425
+ case 115:
16387
16426
  _l.sent();
16388
16427
  return [4 /*yield*/, pdf_generation()];
16389
- case 114:
16428
+ case 116:
16390
16429
  _l.sent();
16391
16430
  return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests().catch(console.error)]; // timing is unreliable, uncomment if changing logic
16392
- case 115:
16431
+ case 117:
16393
16432
  _l.sent(); // timing is unreliable, uncomment if changing logic
16394
16433
  return [4 /*yield*/, sub_organization_enduser_tests()];
16395
- case 116:
16434
+ case 118:
16396
16435
  _l.sent();
16397
16436
  return [4 /*yield*/, sub_organization_tests()];
16398
- case 117:
16437
+ case 119:
16399
16438
  _l.sent();
16400
16439
  return [4 /*yield*/, filter_by_date_tests()];
16401
- case 118:
16440
+ case 120:
16402
16441
  _l.sent();
16403
16442
  return [4 /*yield*/, generate_user_auth_tests()];
16404
- case 119:
16443
+ case 121:
16405
16444
  _l.sent();
16406
16445
  return [4 /*yield*/, generateEnduserAuthTests()];
16407
- case 120:
16446
+ case 122:
16408
16447
  _l.sent();
16409
16448
  return [4 /*yield*/, public_form_tests()];
16410
- case 121:
16449
+ case 123:
16411
16450
  _l.sent();
16412
16451
  return [4 /*yield*/, badInputTests()];
16413
- case 122:
16452
+ case 124:
16414
16453
  _l.sent();
16415
16454
  return [4 /*yield*/, filterTests()];
16416
- case 123:
16455
+ case 125:
16417
16456
  _l.sent();
16418
16457
  return [4 /*yield*/, updatesTests()];
16419
- case 124:
16458
+ case 126:
16420
16459
  _l.sent();
16421
- return [3 /*break*/, 126];
16422
- case 125:
16460
+ return [3 /*break*/, 128];
16461
+ case 127:
16423
16462
  err_1 = _l.sent();
16424
16463
  console.error("Failed during custom test");
16425
16464
  if (err_1.message && err_1.info) {
@@ -16429,18 +16468,18 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
16429
16468
  console.error(err_1);
16430
16469
  }
16431
16470
  process.exit(1);
16432
- return [3 /*break*/, 126];
16433
- case 126:
16471
+ return [3 /*break*/, 128];
16472
+ case 128:
16434
16473
  _a = schema;
16435
16474
  _b = [];
16436
16475
  for (_c in _a)
16437
16476
  _b.push(_c);
16438
16477
  _i = 0;
16439
- _l.label = 127;
16440
- case 127:
16441
- if (!(_i < _b.length)) return [3 /*break*/, 130];
16478
+ _l.label = 129;
16479
+ case 129:
16480
+ if (!(_i < _b.length)) return [3 /*break*/, 132];
16442
16481
  _c = _b[_i];
16443
- if (!(_c in _a)) return [3 /*break*/, 129];
16482
+ if (!(_c in _a)) return [3 /*break*/, 131];
16444
16483
  n = _c;
16445
16484
  returnValidation = (_k = (_j = schema[n].customActions) === null || _j === void 0 ? void 0 : _j.create) === null || _k === void 0 ? void 0 : _k.returns;
16446
16485
  return [4 /*yield*/, run_generated_tests({
@@ -16451,41 +16490,41 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
16451
16490
  create: returnValidation // ModelFields<ClientModel>,
16452
16491
  }
16453
16492
  })];
16454
- case 128:
16493
+ case 130:
16455
16494
  _l.sent();
16456
- _l.label = 129;
16457
- case 129:
16495
+ _l.label = 131;
16496
+ case 131:
16458
16497
  _i++;
16459
- return [3 /*break*/, 127];
16460
- case 130:
16498
+ return [3 /*break*/, 129];
16499
+ case 132:
16461
16500
  _d = tests;
16462
16501
  _f = [];
16463
16502
  for (_g in _d)
16464
16503
  _f.push(_g);
16465
16504
  _h = 0;
16466
- _l.label = 131;
16467
- case 131:
16468
- if (!(_h < _f.length)) return [3 /*break*/, 136];
16505
+ _l.label = 133;
16506
+ case 133:
16507
+ if (!(_h < _f.length)) return [3 /*break*/, 138];
16469
16508
  _g = _f[_h];
16470
- if (!(_g in _d)) return [3 /*break*/, 135];
16509
+ if (!(_g in _d)) return [3 /*break*/, 137];
16471
16510
  t = _g;
16472
- _l.label = 132;
16473
- case 132:
16474
- _l.trys.push([132, 134, , 135]);
16511
+ _l.label = 134;
16512
+ case 134:
16513
+ _l.trys.push([134, 136, , 137]);
16475
16514
  return [4 /*yield*/, tests[t]()];
16476
- case 133:
16515
+ case 135:
16477
16516
  _l.sent();
16478
- return [3 /*break*/, 135];
16479
- case 134:
16517
+ return [3 /*break*/, 137];
16518
+ case 136:
16480
16519
  err_2 = _l.sent();
16481
16520
  console.error("Error running test:");
16482
16521
  console.error(err_2);
16483
16522
  process.exit(1);
16484
- return [3 /*break*/, 135];
16485
- case 135:
16523
+ return [3 /*break*/, 137];
16524
+ case 137:
16486
16525
  _h++;
16487
- return [3 /*break*/, 131];
16488
- case 136:
16526
+ return [3 /*break*/, 133];
16527
+ case 138:
16489
16528
  process.exit();
16490
16529
  return [2 /*return*/];
16491
16530
  }