@tellescope/sdk 1.246.2 → 1.248.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.
Files changed (83) hide show
  1. package/lib/cjs/sdk.d.ts +7 -1
  2. package/lib/cjs/sdk.d.ts.map +1 -1
  3. package/lib/cjs/sdk.js +2 -0
  4. package/lib/cjs/sdk.js.map +1 -1
  5. package/lib/cjs/tests/api_tests/date_string_validation.test.d.ts +6 -0
  6. package/lib/cjs/tests/api_tests/date_string_validation.test.d.ts.map +1 -0
  7. package/lib/cjs/tests/api_tests/date_string_validation.test.js +142 -0
  8. package/lib/cjs/tests/api_tests/date_string_validation.test.js.map +1 -0
  9. package/lib/cjs/tests/api_tests/enduser_session_invalidation.test.d.ts +6 -0
  10. package/lib/cjs/tests/api_tests/enduser_session_invalidation.test.d.ts.map +1 -0
  11. package/lib/cjs/tests/api_tests/enduser_session_invalidation.test.js +243 -0
  12. package/lib/cjs/tests/api_tests/enduser_session_invalidation.test.js.map +1 -0
  13. package/lib/cjs/tests/api_tests/field_redaction.test.d.ts +13 -0
  14. package/lib/cjs/tests/api_tests/field_redaction.test.d.ts.map +1 -0
  15. package/lib/cjs/tests/api_tests/field_redaction.test.js +818 -0
  16. package/lib/cjs/tests/api_tests/field_redaction.test.js.map +1 -0
  17. package/lib/cjs/tests/api_tests/form_submitted_trigger.test.d.ts +6 -0
  18. package/lib/cjs/tests/api_tests/form_submitted_trigger.test.d.ts.map +1 -0
  19. package/lib/cjs/tests/api_tests/form_submitted_trigger.test.js +429 -0
  20. package/lib/cjs/tests/api_tests/form_submitted_trigger.test.js.map +1 -0
  21. package/lib/cjs/tests/api_tests/integrations_redacted.test.d.ts +6 -0
  22. package/lib/cjs/tests/api_tests/integrations_redacted.test.d.ts.map +1 -0
  23. package/lib/cjs/tests/api_tests/integrations_redacted.test.js +273 -0
  24. package/lib/cjs/tests/api_tests/integrations_redacted.test.js.map +1 -0
  25. package/lib/cjs/tests/api_tests/mdb_sort.test.d.ts +6 -0
  26. package/lib/cjs/tests/api_tests/mdb_sort.test.d.ts.map +1 -0
  27. package/lib/cjs/tests/api_tests/mdb_sort.test.js +370 -0
  28. package/lib/cjs/tests/api_tests/mdb_sort.test.js.map +1 -0
  29. package/lib/cjs/tests/api_tests/openloop_webhooks.test.d.ts.map +1 -1
  30. package/lib/cjs/tests/api_tests/openloop_webhooks.test.js +108 -24
  31. package/lib/cjs/tests/api_tests/openloop_webhooks.test.js.map +1 -1
  32. package/lib/cjs/tests/tests.d.ts.map +1 -1
  33. package/lib/cjs/tests/tests.js +303 -180
  34. package/lib/cjs/tests/tests.js.map +1 -1
  35. package/lib/esm/sdk.d.ts +7 -1
  36. package/lib/esm/sdk.d.ts.map +1 -1
  37. package/lib/esm/sdk.js +2 -0
  38. package/lib/esm/sdk.js.map +1 -1
  39. package/lib/esm/tests/api_tests/date_string_validation.test.d.ts +6 -0
  40. package/lib/esm/tests/api_tests/date_string_validation.test.d.ts.map +1 -0
  41. package/lib/esm/tests/api_tests/date_string_validation.test.js +138 -0
  42. package/lib/esm/tests/api_tests/date_string_validation.test.js.map +1 -0
  43. package/lib/esm/tests/api_tests/enduser_session_invalidation.test.d.ts +6 -0
  44. package/lib/esm/tests/api_tests/enduser_session_invalidation.test.d.ts.map +1 -0
  45. package/lib/esm/tests/api_tests/enduser_session_invalidation.test.js +239 -0
  46. package/lib/esm/tests/api_tests/enduser_session_invalidation.test.js.map +1 -0
  47. package/lib/esm/tests/api_tests/field_redaction.test.d.ts +13 -0
  48. package/lib/esm/tests/api_tests/field_redaction.test.d.ts.map +1 -0
  49. package/lib/esm/tests/api_tests/field_redaction.test.js +814 -0
  50. package/lib/esm/tests/api_tests/field_redaction.test.js.map +1 -0
  51. package/lib/esm/tests/api_tests/form_submitted_trigger.test.d.ts +6 -0
  52. package/lib/esm/tests/api_tests/form_submitted_trigger.test.d.ts.map +1 -0
  53. package/lib/esm/tests/api_tests/form_submitted_trigger.test.js +425 -0
  54. package/lib/esm/tests/api_tests/form_submitted_trigger.test.js.map +1 -0
  55. package/lib/esm/tests/api_tests/integrations_redacted.test.d.ts +6 -0
  56. package/lib/esm/tests/api_tests/integrations_redacted.test.d.ts.map +1 -0
  57. package/lib/esm/tests/api_tests/integrations_redacted.test.js +269 -0
  58. package/lib/esm/tests/api_tests/integrations_redacted.test.js.map +1 -0
  59. package/lib/esm/tests/api_tests/mdb_sort.test.d.ts +6 -0
  60. package/lib/esm/tests/api_tests/mdb_sort.test.d.ts.map +1 -0
  61. package/lib/esm/tests/api_tests/mdb_sort.test.js +366 -0
  62. package/lib/esm/tests/api_tests/mdb_sort.test.js.map +1 -0
  63. package/lib/esm/tests/api_tests/openloop_webhooks.test.d.ts.map +1 -1
  64. package/lib/esm/tests/api_tests/openloop_webhooks.test.js +108 -24
  65. package/lib/esm/tests/api_tests/openloop_webhooks.test.js.map +1 -1
  66. package/lib/esm/tests/tests.d.ts.map +1 -1
  67. package/lib/esm/tests/tests.js +303 -180
  68. package/lib/esm/tests/tests.js.map +1 -1
  69. package/lib/tsconfig.tsbuildinfo +1 -1
  70. package/package.json +10 -10
  71. package/src/sdk.ts +11 -0
  72. package/src/tests/api_tests/calendar_events_bulk_update.test.ts +418 -0
  73. package/src/tests/api_tests/date_string_validation.test.ts +107 -0
  74. package/src/tests/api_tests/enduser_session_invalidation.test.ts +138 -0
  75. package/src/tests/api_tests/field_redaction.test.ts +669 -0
  76. package/src/tests/api_tests/form_started_trigger.test.ts +1 -1
  77. package/src/tests/api_tests/form_submitted_trigger.test.ts +281 -0
  78. package/src/tests/api_tests/integrations_redacted.test.ts +245 -0
  79. package/src/tests/api_tests/mdb_sort.test.ts +259 -0
  80. package/src/tests/api_tests/openloop_webhooks.test.ts +64 -0
  81. package/src/tests/api_tests/organization_settings_duplicates.test.ts +201 -0
  82. package/src/tests/tests.ts +92 -6
  83. package/test_generated.pdf +0 -0
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.date_string_validation_tests = void 0;
40
+ require('source-map-support').install();
41
+ var sdk_1 = require("../../sdk");
42
+ var testing_1 = require("@tellescope/testing");
43
+ var setup_1 = require("../setup");
44
+ var validation_1 = require("@tellescope/validation");
45
+ var host = process.env.API_URL || 'http://localhost:8080';
46
+ var date_string_validation_tests = function (_a) {
47
+ var sdk = _a.sdk, sdkNonAdmin = _a.sdkNonAdmin;
48
+ return __awaiter(void 0, void 0, void 0, function () {
49
+ return __generator(this, function (_b) {
50
+ (0, testing_1.log_header)("Date String Validation Tests (is_valid_mm_dd_yyyy)");
51
+ // --- Valid standard dates ---
52
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-15-1990') === true, 'Expected 01-15-1990 to be valid', 'valid: 01-15-1990');
53
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('12-31-2024') === true, 'Expected 12-31-2024 to be valid', 'valid: 12-31-2024');
54
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('06-15-2000') === true, 'Expected 06-15-2000 to be valid', 'valid: 06-15-2000');
55
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-01-2000') === true, 'Expected 01-01-2000 to be valid', 'valid: 01-01-2000');
56
+ // --- Leap year: Feb 29 accepted ---
57
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-2024') === true, 'Expected 02-29-2024 to be valid (2024 is leap year, div by 4)', 'valid: 02-29-2024 (leap year)');
58
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-2000') === true, 'Expected 02-29-2000 to be valid (2000 is leap year, div by 400)', 'valid: 02-29-2000 (leap year)');
59
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-2400') === true, 'Expected 02-29-2400 to be valid (2400 is leap year, div by 400)', 'valid: 02-29-2400 (leap year)');
60
+ // --- Non-leap year: Feb 29 rejected ---
61
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-2023') === false, 'Expected 02-29-2023 to be invalid (2023 is not a leap year)', 'invalid: 02-29-2023 (not leap year)');
62
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-1900') === false, 'Expected 02-29-1900 to be invalid (1900 div by 100 but not 400)', 'invalid: 02-29-1900 (not leap year)');
63
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-2100') === false, 'Expected 02-29-2100 to be invalid (2100 div by 100 but not 400)', 'invalid: 02-29-2100 (not leap year)');
64
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-29-2025') === false, 'Expected 02-29-2025 to be invalid (2025 is not a leap year)', 'invalid: 02-29-2025 (not leap year)');
65
+ // --- Feb 30 and Feb 31 always rejected (the original bug) ---
66
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-30-2024') === false, 'Expected 02-30-2024 to be invalid (Feb never has 30 days)', 'invalid: 02-30-2024 (Feb 30 leap year)');
67
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-31-2024') === false, 'Expected 02-31-2024 to be invalid (Feb never has 31 days)', 'invalid: 02-31-2024 (Feb 31 leap year)');
68
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-30-2023') === false, 'Expected 02-30-2023 to be invalid (Feb never has 30 days)', 'invalid: 02-30-2023 (Feb 30 non-leap)');
69
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-31-2023') === false, 'Expected 02-31-2023 to be invalid (Feb never has 31 days)', 'invalid: 02-31-2023 (Feb 31 non-leap)');
70
+ // --- Feb 28 always valid ---
71
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-28-2024') === true, 'Expected 02-28-2024 to be valid', 'valid: 02-28-2024');
72
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('02-28-2023') === true, 'Expected 02-28-2023 to be valid', 'valid: 02-28-2023');
73
+ // --- 30-day months: day 31 rejected ---
74
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('04-31-2024') === false, 'Expected 04-31-2024 to be invalid (April has 30 days)', 'invalid: 04-31 (April)');
75
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('06-31-2024') === false, 'Expected 06-31-2024 to be invalid (June has 30 days)', 'invalid: 06-31 (June)');
76
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('09-31-2024') === false, 'Expected 09-31-2024 to be invalid (September has 30 days)', 'invalid: 09-31 (September)');
77
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('11-31-2024') === false, 'Expected 11-31-2024 to be invalid (November has 30 days)', 'invalid: 11-31 (November)');
78
+ // --- 30-day months: day 30 accepted ---
79
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('04-30-2024') === true, 'Expected 04-30-2024 to be valid', 'valid: 04-30 (April)');
80
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('06-30-2024') === true, 'Expected 06-30-2024 to be valid', 'valid: 06-30 (June)');
81
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('09-30-2024') === true, 'Expected 09-30-2024 to be valid', 'valid: 09-30 (September)');
82
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('11-30-2024') === true, 'Expected 11-30-2024 to be valid', 'valid: 11-30 (November)');
83
+ // --- 31-day months: day 31 accepted ---
84
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-31-2024') === true, 'Expected 01-31-2024 to be valid', 'valid: 01-31 (January)');
85
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('03-31-2024') === true, 'Expected 03-31-2024 to be valid', 'valid: 03-31 (March)');
86
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('05-31-2024') === true, 'Expected 05-31-2024 to be valid', 'valid: 05-31 (May)');
87
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('07-31-2024') === true, 'Expected 07-31-2024 to be valid', 'valid: 07-31 (July)');
88
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('08-31-2024') === true, 'Expected 08-31-2024 to be valid', 'valid: 08-31 (August)');
89
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('10-31-2024') === true, 'Expected 10-31-2024 to be valid', 'valid: 10-31 (October)');
90
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('12-31-2024') === true, 'Expected 12-31-2024 to be valid', 'valid: 12-31 (December)');
91
+ // --- Invalid month values ---
92
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('00-15-2024') === false, 'Expected month 00 to be invalid', 'invalid: month 00');
93
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('13-15-2024') === false, 'Expected month 13 to be invalid', 'invalid: month 13');
94
+ // --- Invalid day values ---
95
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-00-2024') === false, 'Expected day 00 to be invalid', 'invalid: day 00');
96
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-32-2024') === false, 'Expected day 32 to be invalid', 'invalid: day 32');
97
+ // --- Malformed strings ---
98
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('') === false, 'Expected empty string to be invalid', 'invalid: empty string');
99
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('not-a-date') === false, 'Expected text to be invalid', 'invalid: text');
100
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('2024-01-15') === false, 'Expected YYYY-MM-DD to be invalid', 'invalid: YYYY-MM-DD format');
101
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('1-15-2024') === false, 'Expected single-digit month to be invalid', 'invalid: single-digit month');
102
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01/15/2024') === false, 'Expected slashes to be invalid', 'invalid: slashes');
103
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-15-24') === false, 'Expected 2-digit year to be invalid', 'invalid: 2-digit year');
104
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-5-2024') === false, 'Expected single-digit day to be invalid', 'invalid: single-digit day');
105
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)('01-15-20240') === false, 'Expected 5-digit year to be invalid', 'invalid: 5-digit year');
106
+ // --- Whitespace trimming ---
107
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)(' 01-15-1990 ') === true, 'Expected trimmed whitespace to be valid', 'valid: whitespace trimmed');
108
+ (0, testing_1.assert)((0, validation_1.is_valid_mm_dd_yyyy)(' 02-28-2024 ') === true, 'Expected trimmed whitespace to be valid', 'valid: whitespace trimmed (2)');
109
+ return [2 /*return*/];
110
+ });
111
+ });
112
+ };
113
+ exports.date_string_validation_tests = date_string_validation_tests;
114
+ // Allow running this test file independently
115
+ if (require.main === module) {
116
+ console.log("Using API URL: ".concat(host));
117
+ var sdk_2 = new sdk_1.Session({ host: host });
118
+ var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
119
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
120
+ return __generator(this, function (_a) {
121
+ switch (_a.label) {
122
+ case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
123
+ case 1:
124
+ _a.sent();
125
+ return [4 /*yield*/, (0, exports.date_string_validation_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
126
+ case 2:
127
+ _a.sent();
128
+ return [2 /*return*/];
129
+ }
130
+ });
131
+ }); };
132
+ runTests()
133
+ .then(function () {
134
+ console.log("Date string validation test suite completed successfully");
135
+ process.exit(0);
136
+ })
137
+ .catch(function (error) {
138
+ console.error("Date string validation test suite failed:", error);
139
+ process.exit(1);
140
+ });
141
+ }
142
+ //# sourceMappingURL=date_string_validation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date_string_validation.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/date_string_validation.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Session } from "../../sdk";
2
+ export declare const enduser_session_invalidation_tests: ({ sdk, sdkNonAdmin }: {
3
+ sdk: Session;
4
+ sdkNonAdmin: Session;
5
+ }) => Promise<void>;
6
+ //# sourceMappingURL=enduser_session_invalidation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enduser_session_invalidation.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/enduser_session_invalidation.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAA;AAanD,eAAO,MAAM,kCAAkC;SAAwC,OAAO;iBAAe,OAAO;mBAoGnH,CAAA"}
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.enduser_session_invalidation_tests = void 0;
40
+ require('source-map-support').install();
41
+ var sdk_1 = require("../../sdk");
42
+ var testing_1 = require("@tellescope/testing");
43
+ var setup_1 = require("../setup");
44
+ var host = process.env.API_URL || 'http://localhost:8080';
45
+ var businessId = '60398b1131a295e64f084ff6';
46
+ // Main test function that can be called independently
47
+ var enduser_session_invalidation_tests = function (_a) {
48
+ var sdk = _a.sdk, sdkNonAdmin = _a.sdkNonAdmin;
49
+ return __awaiter(void 0, void 0, void 0, function () {
50
+ var testEnduser, authToken, enduserSDK_1, error_1;
51
+ return __generator(this, function (_b) {
52
+ switch (_b.label) {
53
+ case 0:
54
+ (0, testing_1.log_header)("Enduser Session Invalidation Tests");
55
+ return [4 /*yield*/, sdk.api.endusers.createOne({ email: "session-invalidation-test-".concat(Date.now(), "@tellescope.com") })];
56
+ case 1:
57
+ testEnduser = _b.sent();
58
+ _b.label = 2;
59
+ case 2:
60
+ _b.trys.push([2, , 10, 14]);
61
+ return [4 /*yield*/, sdk.api.endusers.generate_auth_token({ id: testEnduser.id })];
62
+ case 3:
63
+ authToken = (_b.sent()).authToken;
64
+ enduserSDK_1 = new sdk_1.EnduserSession({ host: host, authToken: authToken, businessId: sdk.userInfo.businessId });
65
+ // Test 1: Enduser authenticated before invalidation
66
+ return [4 /*yield*/, (0, testing_1.async_test)('enduser authenticated before invalidation', function () { return enduserSDK_1.test_authenticated(); }, { expectedResult: 'Authenticated!' })
67
+ // Wait to ensure time separation between token creation and invalidation
68
+ ];
69
+ case 4:
70
+ // Test 1: Enduser authenticated before invalidation
71
+ _b.sent();
72
+ // Wait to ensure time separation between token creation and invalidation
73
+ return [4 /*yield*/, (0, testing_1.wait)(undefined, 2000)
74
+ // Test 2: Setting invalidateSessionsBefore rejects old token (401)
75
+ ];
76
+ case 5:
77
+ // Wait to ensure time separation between token creation and invalidation
78
+ _b.sent();
79
+ // Test 2: Setting invalidateSessionsBefore rejects old token (401)
80
+ return [4 /*yield*/, (0, testing_1.async_test)('setting invalidateSessionsBefore rejects old token', function () { return __awaiter(void 0, void 0, void 0, function () {
81
+ var e_1;
82
+ return __generator(this, function (_a) {
83
+ switch (_a.label) {
84
+ case 0: return [4 /*yield*/, sdk.api.endusers.updateOne(testEnduser.id, { invalidateSessionsBefore: new Date() })
85
+ // Old token should now be rejected
86
+ ];
87
+ case 1:
88
+ _a.sent();
89
+ _a.label = 2;
90
+ case 2:
91
+ _a.trys.push([2, 4, , 5]);
92
+ return [4 /*yield*/, enduserSDK_1.test_authenticated()];
93
+ case 3:
94
+ _a.sent();
95
+ return [2 /*return*/, 'should have thrown'];
96
+ case 4:
97
+ e_1 = _a.sent();
98
+ return [2 /*return*/, 'rejected'];
99
+ case 5: return [2 /*return*/];
100
+ }
101
+ });
102
+ }); }, { expectedResult: 'rejected' })
103
+ // Test 3: New token after invalidation works
104
+ ];
105
+ case 6:
106
+ // Test 2: Setting invalidateSessionsBefore rejects old token (401)
107
+ _b.sent();
108
+ // Test 3: New token after invalidation works
109
+ return [4 /*yield*/, (0, testing_1.async_test)('new token after invalidation works', function () { return __awaiter(void 0, void 0, void 0, function () {
110
+ var newAuthToken, newEnduserSDK;
111
+ return __generator(this, function (_a) {
112
+ switch (_a.label) {
113
+ case 0:
114
+ // Wait to ensure new token iat is after invalidateSessionsBefore
115
+ return [4 /*yield*/, (0, testing_1.wait)(undefined, 2000)];
116
+ case 1:
117
+ // Wait to ensure new token iat is after invalidateSessionsBefore
118
+ _a.sent();
119
+ return [4 /*yield*/, sdk.api.endusers.generate_auth_token({ id: testEnduser.id })];
120
+ case 2:
121
+ newAuthToken = (_a.sent()).authToken;
122
+ newEnduserSDK = new sdk_1.EnduserSession({ host: host, authToken: newAuthToken, businessId: sdk.userInfo.businessId });
123
+ return [4 /*yield*/, newEnduserSDK.test_authenticated()];
124
+ case 3: return [2 /*return*/, _a.sent()];
125
+ }
126
+ });
127
+ }); }, { expectedResult: 'Authenticated!' })
128
+ // Test 4: Cannot set invalidateSessionsBefore backwards (constraint error)
129
+ ];
130
+ case 7:
131
+ // Test 3: New token after invalidation works
132
+ _b.sent();
133
+ // Test 4: Cannot set invalidateSessionsBefore backwards (constraint error)
134
+ return [4 /*yield*/, (0, testing_1.async_test)('cannot set invalidateSessionsBefore backwards', function () { return __awaiter(void 0, void 0, void 0, function () {
135
+ var pastDate;
136
+ return __generator(this, function (_a) {
137
+ switch (_a.label) {
138
+ case 0:
139
+ pastDate = new Date(Date.now() - 24 * 60 * 60 * 1000) // 1 day ago
140
+ ;
141
+ return [4 /*yield*/, sdk.api.endusers.updateOne(testEnduser.id, { invalidateSessionsBefore: pastDate })];
142
+ case 1:
143
+ _a.sent();
144
+ return [2 /*return*/];
145
+ }
146
+ });
147
+ }); }, testing_1.handleAnyError)
148
+ // Test 5: Deleted enduser token rejected (401)
149
+ ];
150
+ case 8:
151
+ // Test 4: Cannot set invalidateSessionsBefore backwards (constraint error)
152
+ _b.sent();
153
+ // Test 5: Deleted enduser token rejected (401)
154
+ return [4 /*yield*/, (0, testing_1.async_test)('deleted enduser token rejected', function () { return __awaiter(void 0, void 0, void 0, function () {
155
+ var tempEnduser, tempAuthToken, tempEnduserSDK, e_2;
156
+ return __generator(this, function (_a) {
157
+ switch (_a.label) {
158
+ case 0: return [4 /*yield*/, sdk.api.endusers.createOne({ email: "temp-session-test-".concat(Date.now(), "@tellescope.com") })];
159
+ case 1:
160
+ tempEnduser = _a.sent();
161
+ return [4 /*yield*/, sdk.api.endusers.generate_auth_token({ id: tempEnduser.id })];
162
+ case 2:
163
+ tempAuthToken = (_a.sent()).authToken;
164
+ tempEnduserSDK = new sdk_1.EnduserSession({ host: host, authToken: tempAuthToken, businessId: sdk.userInfo.businessId });
165
+ // Verify token works before deletion
166
+ return [4 /*yield*/, tempEnduserSDK.test_authenticated()
167
+ // Delete the enduser
168
+ ];
169
+ case 3:
170
+ // Verify token works before deletion
171
+ _a.sent();
172
+ // Delete the enduser
173
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(tempEnduser.id)
174
+ // Token should now be rejected
175
+ ];
176
+ case 4:
177
+ // Delete the enduser
178
+ _a.sent();
179
+ _a.label = 5;
180
+ case 5:
181
+ _a.trys.push([5, 7, , 8]);
182
+ return [4 /*yield*/, tempEnduserSDK.test_authenticated()];
183
+ case 6:
184
+ _a.sent();
185
+ return [2 /*return*/, 'should have thrown'];
186
+ case 7:
187
+ e_2 = _a.sent();
188
+ return [2 /*return*/, 'rejected'];
189
+ case 8: return [2 /*return*/];
190
+ }
191
+ });
192
+ }); }, { expectedResult: 'rejected' })];
193
+ case 9:
194
+ // Test 5: Deleted enduser token rejected (401)
195
+ _b.sent();
196
+ console.log("✅ All Enduser Session Invalidation tests passed!");
197
+ return [3 /*break*/, 14];
198
+ case 10:
199
+ _b.trys.push([10, 12, , 13]);
200
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(testEnduser.id)];
201
+ case 11:
202
+ _b.sent();
203
+ return [3 /*break*/, 13];
204
+ case 12:
205
+ error_1 = _b.sent();
206
+ console.error('Cleanup error:', error_1);
207
+ return [3 /*break*/, 13];
208
+ case 13: return [7 /*endfinally*/];
209
+ case 14: return [2 /*return*/];
210
+ }
211
+ });
212
+ });
213
+ };
214
+ exports.enduser_session_invalidation_tests = enduser_session_invalidation_tests;
215
+ // Allow running this test file independently
216
+ if (require.main === module) {
217
+ console.log("\uD83C\uDF10 Using API URL: ".concat(host));
218
+ var sdk_2 = new sdk_1.Session({ host: host });
219
+ var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
220
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
221
+ return __generator(this, function (_a) {
222
+ switch (_a.label) {
223
+ case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
224
+ case 1:
225
+ _a.sent();
226
+ return [4 /*yield*/, (0, exports.enduser_session_invalidation_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
227
+ case 2:
228
+ _a.sent();
229
+ return [2 /*return*/];
230
+ }
231
+ });
232
+ }); };
233
+ runTests()
234
+ .then(function () {
235
+ console.log("✅ Enduser session invalidation test suite completed successfully");
236
+ process.exit(0);
237
+ })
238
+ .catch(function (error) {
239
+ console.error("❌ Enduser session invalidation test suite failed:", error);
240
+ process.exit(1);
241
+ });
242
+ }
243
+ //# sourceMappingURL=enduser_session_invalidation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enduser_session_invalidation.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/enduser_session_invalidation.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { Session } from "../../sdk";
2
+ /**
3
+ * Tests for role-based field redactions on phone_calls.
4
+ *
5
+ * Verifies that fieldRedactions configured on a RoleBasedAccessPermission
6
+ * properly hide specified fields from API responses across all read paths
7
+ * (getOne, getSome) and write responses (updateOne).
8
+ */
9
+ export declare const field_redaction_tests: ({ sdk, sdkNonAdmin }: {
10
+ sdk: Session;
11
+ sdkNonAdmin: Session;
12
+ }) => Promise<void>;
13
+ //# sourceMappingURL=field_redaction.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field_redaction.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/field_redaction.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAqBnC;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB;SAAwC,OAAO;iBAAe,OAAO;mBAwmBtG,CAAA"}