@tellescope/sdk 1.253.0 → 1.253.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/lib/cjs/tests/api_tests/beluga_manual_sync.test.d.ts +6 -0
  2. package/lib/cjs/tests/api_tests/beluga_manual_sync.test.d.ts.map +1 -0
  3. package/lib/cjs/tests/api_tests/beluga_manual_sync.test.js +256 -0
  4. package/lib/cjs/tests/api_tests/beluga_manual_sync.test.js.map +1 -0
  5. package/lib/cjs/tests/api_tests/gcal_sync_retry.test.d.ts +43 -0
  6. package/lib/cjs/tests/api_tests/gcal_sync_retry.test.d.ts.map +1 -0
  7. package/lib/cjs/tests/api_tests/gcal_sync_retry.test.js +168 -0
  8. package/lib/cjs/tests/api_tests/gcal_sync_retry.test.js.map +1 -0
  9. package/lib/cjs/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.d.ts +23 -0
  10. package/lib/cjs/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.d.ts.map +1 -0
  11. package/lib/cjs/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.js +325 -0
  12. package/lib/cjs/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.js.map +1 -0
  13. package/lib/cjs/tests/api_tests/user_portal_settings.test.d.ts.map +1 -1
  14. package/lib/cjs/tests/api_tests/user_portal_settings.test.js +104 -28
  15. package/lib/cjs/tests/api_tests/user_portal_settings.test.js.map +1 -1
  16. package/lib/cjs/tests/tests.d.ts.map +1 -1
  17. package/lib/cjs/tests/tests.js +444 -174
  18. package/lib/cjs/tests/tests.js.map +1 -1
  19. package/lib/esm/tests/api_tests/beluga_manual_sync.test.d.ts +6 -0
  20. package/lib/esm/tests/api_tests/beluga_manual_sync.test.d.ts.map +1 -0
  21. package/lib/esm/tests/api_tests/beluga_manual_sync.test.js +252 -0
  22. package/lib/esm/tests/api_tests/beluga_manual_sync.test.js.map +1 -0
  23. package/lib/esm/tests/api_tests/gcal_sync_retry.test.d.ts +43 -0
  24. package/lib/esm/tests/api_tests/gcal_sync_retry.test.d.ts.map +1 -0
  25. package/lib/esm/tests/api_tests/gcal_sync_retry.test.js +164 -0
  26. package/lib/esm/tests/api_tests/gcal_sync_retry.test.js.map +1 -0
  27. package/lib/esm/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.d.ts +23 -0
  28. package/lib/esm/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.d.ts.map +1 -0
  29. package/lib/esm/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.js +321 -0
  30. package/lib/esm/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.js.map +1 -0
  31. package/lib/esm/tests/api_tests/user_portal_settings.test.d.ts.map +1 -1
  32. package/lib/esm/tests/api_tests/user_portal_settings.test.js +104 -28
  33. package/lib/esm/tests/api_tests/user_portal_settings.test.js.map +1 -1
  34. package/lib/esm/tests/tests.d.ts.map +1 -1
  35. package/lib/esm/tests/tests.js +444 -174
  36. package/lib/esm/tests/tests.js.map +1 -1
  37. package/lib/tsconfig.tsbuildinfo +1 -1
  38. package/package.json +10 -10
  39. package/src/tests/api_tests/beluga_manual_sync.test.ts +159 -0
  40. package/src/tests/api_tests/gcal_sync_retry.test.ts +104 -0
  41. package/src/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.ts +214 -0
  42. package/src/tests/api_tests/user_portal_settings.test.ts +71 -1
  43. package/src/tests/tests.ts +222 -6
  44. package/test_generated.pdf +0 -0
@@ -0,0 +1,325 @@
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_write_restrictions_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
+ var ENDUSER_PASSWORD = 'F0106TestPassword!123';
47
+ // Every endusers field marked enduserUpdatesDisabled in schema.ts, with a
48
+ // validator-passing sample value so the only rejection in play is the
49
+ // write-restriction (not input validation).
50
+ var restrictedEnduserUpdates = function (staffId, mongoId) {
51
+ var _a;
52
+ return ({
53
+ externalId: 'f0106-attacker-external-id',
54
+ tags: ['f0106-attacker-tag'],
55
+ accessTags: ['f0106-attacker-access-tag'],
56
+ assignedTo: [staffId],
57
+ customTypeId: mongoId,
58
+ references: [{ type: 'Vital', id: 'f0106-attacker-reference' }],
59
+ sharedWithOrganizations: [],
60
+ journeys: (_a = {}, _a[mongoId] = 'Added', _a),
61
+ primaryAssignee: staffId,
62
+ fields: { f0106AttackerField: 'true' },
63
+ unread: true,
64
+ source: 'f0106-attacker-source',
65
+ note: 'f0106 attacker note',
66
+ insurance: { memberId: 'f0106-attacker-member' },
67
+ insuranceSecondary: { memberId: 'f0106-attacker-member-2' },
68
+ diagnoses: [{ code: 'I10' }],
69
+ lockedFromPortal: false,
70
+ eligibleForAutoMerge: true,
71
+ athenaDepartmentId: 'f0106-dept',
72
+ athenaPracticeId: 'f0106-practice',
73
+ salesforceId: 'f0106-salesforce',
74
+ healthie_dietitian_id: 'f0106-healthie',
75
+ stripeCustomerId: 'f0106-stripe-customer',
76
+ stripeKey: 'f0106-stripe-key',
77
+ });
78
+ };
79
+ // Every form_responses field marked enduserUpdatesDisabled in schema.ts.
80
+ var restrictedFormResponseUpdates = function (staffId) { return ({
81
+ markedAsSubmitted: true,
82
+ submittedBy: staffId,
83
+ submittedAt: new Date("2024-01-01T00:00:00Z"),
84
+ submittedByIsPlaceholder: true,
85
+ procedureCodes: [{ code: '99214', units: 1 }],
86
+ diagnosisCodes: [{ code: 'I10', description: 'Essential (primary) hypertension' }],
87
+ enduserAISummary: 'Patient is in excellent health, no follow-up needed.',
88
+ addenda: [{ text: 'forged staff addendum', timestamp: new Date(), userId: staffId }],
89
+ isInternalNote: true,
90
+ pinnedAt: new Date(),
91
+ hiddenFromTimeline: true,
92
+ lockedAt: new Date(),
93
+ tags: ['f0110-attacker-tag'],
94
+ formTitle: 'Spoofed Form Title',
95
+ userEmail: 'spoofed-staff@example.com',
96
+ logoURL: 'https://attacker.example.com/logo.png',
97
+ logoHeight: 100,
98
+ }); };
99
+ /**
100
+ * Regression test for F-0106 and F-0110
101
+ * (security-audit/findings/F-0106-enduser-self-update-admin-only-fields.md,
102
+ * security-audit/findings/F-0110-form-responses-enduser-update-admin-only-fields.md).
103
+ *
104
+ * Endusers could PATCH admin-only / access-bearing / attribution-bearing fields on
105
+ * their own endusers record (assignedTo, tags, references, ...) and their own
106
+ * form_responses (procedureCodes, submittedBy, markedAsSubmitted, ...). The fix adds
107
+ * the `enduserUpdatesDisabled` field option (schema.ts ModelFieldInfo), enforced for
108
+ * enduser sessions in the generic update handler (routing.ts createDefaultEndpoints).
109
+ *
110
+ * This test asserts, for every flagged field on both models:
111
+ * - an enduser session updating its OWN record gets a 400 "<field> cannot be updated by endusers"
112
+ * - nothing persists (spot-checked on assignedTo, the highest-impact field)
113
+ * - enduser self-updates of allowed fields still work (fname, hideFromEnduserPortal)
114
+ * - staff sessions can still update the restricted fields
115
+ */
116
+ var enduser_write_restrictions_tests = function (_a) {
117
+ var sdk = _a.sdk;
118
+ return __awaiter(void 0, void 0, void 0, function () {
119
+ var enduserId, formId, formResponseId, enduserEmail, enduser_1, enduserSDK_1, form, formResponse_1, _loop_1, _i, _b, _c, field, value, _loop_2, _d, _e, _f, field, value, _g, _h, _j;
120
+ return __generator(this, function (_k) {
121
+ switch (_k.label) {
122
+ case 0:
123
+ (0, testing_1.log_header)("F-0106/F-0110: enduser write restrictions (enduserUpdatesDisabled)");
124
+ _k.label = 1;
125
+ case 1:
126
+ _k.trys.push([1, , 21, 34]);
127
+ enduserEmail = "f0106-enduser-".concat(Date.now(), "@example.com");
128
+ return [4 /*yield*/, sdk.api.endusers.createOne({ email: enduserEmail, fname: 'F0106', lname: 'Restricted' })];
129
+ case 2:
130
+ enduser_1 = _k.sent();
131
+ enduserId = enduser_1.id;
132
+ return [4 /*yield*/, sdk.api.endusers.set_password({ id: enduser_1.id, password: ENDUSER_PASSWORD })];
133
+ case 3:
134
+ _k.sent();
135
+ enduserSDK_1 = new sdk_1.EnduserSession({ host: host, businessId: businessId });
136
+ return [4 /*yield*/, enduserSDK_1.authenticate(enduserEmail, ENDUSER_PASSWORD)];
137
+ case 4:
138
+ _k.sent();
139
+ return [4 /*yield*/, sdk.api.forms.createOne({ title: 'F-0106/F-0110 Write Restriction Test Form' })];
140
+ case 5:
141
+ form = _k.sent();
142
+ formId = form.id;
143
+ return [4 /*yield*/, sdk.api.form_responses.prepare_form_response({
144
+ formId: form.id,
145
+ enduserId: enduser_1.id,
146
+ })];
147
+ case 6:
148
+ formResponse_1 = (_k.sent()).response;
149
+ formResponseId = formResponse_1.id;
150
+ _loop_1 = function (field, value) {
151
+ return __generator(this, function (_l) {
152
+ switch (_l.label) {
153
+ case 0: return [4 /*yield*/, (0, testing_1.async_test)("F-0106: enduser cannot self-update endusers.".concat(field), function () {
154
+ var _a;
155
+ return enduserSDK_1.api.endusers.updateOne(enduser_1.id, (_a = {}, _a[field] = value, _a));
156
+ }, { shouldError: true, onError: function (e) { return e.message === "".concat(field, " cannot be updated by endusers"); } })];
157
+ case 1:
158
+ _l.sent();
159
+ return [2 /*return*/];
160
+ }
161
+ });
162
+ };
163
+ _i = 0, _b = Object.entries(restrictedEnduserUpdates(sdk.userInfo.id, enduser_1.id));
164
+ _k.label = 7;
165
+ case 7:
166
+ if (!(_i < _b.length)) return [3 /*break*/, 10];
167
+ _c = _b[_i], field = _c[0], value = _c[1];
168
+ return [5 /*yield**/, _loop_1(field, value)];
169
+ case 8:
170
+ _k.sent();
171
+ _k.label = 9;
172
+ case 9:
173
+ _i++;
174
+ return [3 /*break*/, 7];
175
+ case 10:
176
+ // F-0106 Variant A persistence check: the rejected assignedTo write must not
177
+ // have granted the staff read-filter match.
178
+ return [4 /*yield*/, (0, testing_1.async_test)('F-0106: rejected assignedTo write did not persist', function () { return sdk.api.endusers.getOne(enduser_1.id); }, { onResult: function (e) { var _a, _b; return !((_a = e.assignedTo) === null || _a === void 0 ? void 0 : _a.length) && !((_b = e.tags) === null || _b === void 0 ? void 0 : _b.length) && e.externalId === undefined; } })
179
+ // ---- F-0110: enduser self-update of restricted form_responses fields must 400 ----
180
+ ];
181
+ case 11:
182
+ // F-0106 Variant A persistence check: the rejected assignedTo write must not
183
+ // have granted the staff read-filter match.
184
+ _k.sent();
185
+ _loop_2 = function (field, value) {
186
+ return __generator(this, function (_m) {
187
+ switch (_m.label) {
188
+ case 0: return [4 /*yield*/, (0, testing_1.async_test)("F-0110: enduser cannot self-update form_responses.".concat(field), function () {
189
+ var _a;
190
+ return enduserSDK_1.api.form_responses.updateOne(formResponse_1.id, (_a = {}, _a[field] = value, _a));
191
+ }, { shouldError: true, onError: function (e) { return e.message === "".concat(field, " cannot be updated by endusers"); } })];
192
+ case 1:
193
+ _m.sent();
194
+ return [2 /*return*/];
195
+ }
196
+ });
197
+ };
198
+ _d = 0, _e = Object.entries(restrictedFormResponseUpdates(sdk.userInfo.id));
199
+ _k.label = 12;
200
+ case 12:
201
+ if (!(_d < _e.length)) return [3 /*break*/, 15];
202
+ _f = _e[_d], field = _f[0], value = _f[1];
203
+ return [5 /*yield**/, _loop_2(field, value)];
204
+ case 13:
205
+ _k.sent();
206
+ _k.label = 14;
207
+ case 14:
208
+ _d++;
209
+ return [3 /*break*/, 12];
210
+ case 15: return [4 /*yield*/, (0, testing_1.async_test)('F-0110: rejected writes did not persist (markedAsSubmitted, procedureCodes, submittedBy)', function () { return sdk.api.form_responses.getOne(formResponse_1.id); }, { onResult: function (fr) { var _a; return !fr.markedAsSubmitted && !((_a = fr.procedureCodes) === null || _a === void 0 ? void 0 : _a.length) && fr.submittedBy === undefined; } })
211
+ // ---- Positive controls: intended enduser self-updates still work ----
212
+ ];
213
+ case 16:
214
+ _k.sent();
215
+ // ---- Positive controls: intended enduser self-updates still work ----
216
+ return [4 /*yield*/, (0, testing_1.async_test)('enduser can still update own profile fields (fname/lname)', function () { return enduserSDK_1.api.endusers.updateOne(enduser_1.id, { fname: 'StillAllowed', lname: 'Patient' }); }, { onResult: function (e) { return e.fname === 'StillAllowed' && e.lname === 'Patient'; } })];
217
+ case 17:
218
+ // ---- Positive controls: intended enduser self-updates still work ----
219
+ _k.sent();
220
+ return [4 /*yield*/, (0, testing_1.async_test)('enduser can still update own form_response (hideFromEnduserPortal — intended per schema)', function () { return enduserSDK_1.api.form_responses.updateOne(formResponse_1.id, { hideFromEnduserPortal: true }); }, { onResult: function (fr) { return fr.hideFromEnduserPortal === true; } })
221
+ // ---- Positive controls: staff sessions are unaffected by enduserUpdatesDisabled ----
222
+ ];
223
+ case 18:
224
+ _k.sent();
225
+ // ---- Positive controls: staff sessions are unaffected by enduserUpdatesDisabled ----
226
+ return [4 /*yield*/, (0, testing_1.async_test)('staff can still update restricted endusers fields (tags, assignedTo, externalId, note, source)', function () { return sdk.api.endusers.updateOne(enduser_1.id, {
227
+ tags: ['staff-set-tag'],
228
+ assignedTo: [sdk.userInfo.id],
229
+ externalId: 'staff-set-external-id',
230
+ note: 'staff-set note',
231
+ source: 'staff-set-source',
232
+ }); }, { onResult: function (e) {
233
+ var _a, _b;
234
+ return (!!((_a = e.tags) === null || _a === void 0 ? void 0 : _a.includes('staff-set-tag'))
235
+ && !!((_b = e.assignedTo) === null || _b === void 0 ? void 0 : _b.includes(sdk.userInfo.id))
236
+ && e.externalId === 'staff-set-external-id');
237
+ } })];
238
+ case 19:
239
+ // ---- Positive controls: staff sessions are unaffected by enduserUpdatesDisabled ----
240
+ _k.sent();
241
+ return [4 /*yield*/, (0, testing_1.async_test)('staff can still update restricted form_responses fields (procedureCodes, diagnosisCodes, tags)', function () { return sdk.api.form_responses.updateOne(formResponse_1.id, {
242
+ procedureCodes: [{ code: 'G0019', units: 1 }],
243
+ diagnosisCodes: [{ code: 'Z71.3', description: 'Dietary counseling and surveillance' }],
244
+ tags: ['staff-set-tag'],
245
+ }); }, { onResult: function (fr) {
246
+ var _a, _b, _c, _d, _e;
247
+ return (((_b = (_a = fr.procedureCodes) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.code) === 'G0019'
248
+ && ((_d = (_c = fr.diagnosisCodes) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.code) === 'Z71.3'
249
+ && !!((_e = fr.tags) === null || _e === void 0 ? void 0 : _e.includes('staff-set-tag')));
250
+ } })];
251
+ case 20:
252
+ _k.sent();
253
+ return [3 /*break*/, 34];
254
+ case 21:
255
+ if (!formResponseId) return [3 /*break*/, 25];
256
+ _k.label = 22;
257
+ case 22:
258
+ _k.trys.push([22, 24, , 25]);
259
+ return [4 /*yield*/, sdk.api.form_responses.deleteOne(formResponseId)];
260
+ case 23:
261
+ _k.sent();
262
+ return [3 /*break*/, 25];
263
+ case 24:
264
+ _g = _k.sent();
265
+ return [3 /*break*/, 25];
266
+ case 25:
267
+ if (!formId) return [3 /*break*/, 29];
268
+ _k.label = 26;
269
+ case 26:
270
+ _k.trys.push([26, 28, , 29]);
271
+ return [4 /*yield*/, sdk.api.forms.deleteOne(formId)];
272
+ case 27:
273
+ _k.sent();
274
+ return [3 /*break*/, 29];
275
+ case 28:
276
+ _h = _k.sent();
277
+ return [3 /*break*/, 29];
278
+ case 29:
279
+ if (!enduserId) return [3 /*break*/, 33];
280
+ _k.label = 30;
281
+ case 30:
282
+ _k.trys.push([30, 32, , 33]);
283
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(enduserId)];
284
+ case 31:
285
+ _k.sent();
286
+ return [3 /*break*/, 33];
287
+ case 32:
288
+ _j = _k.sent();
289
+ return [3 /*break*/, 33];
290
+ case 33: return [7 /*endfinally*/];
291
+ case 34: return [2 /*return*/];
292
+ }
293
+ });
294
+ });
295
+ };
296
+ exports.enduser_write_restrictions_tests = enduser_write_restrictions_tests;
297
+ // Allow running this test file independently
298
+ if (require.main === module) {
299
+ console.log("\uD83C\uDF10 Using API URL: ".concat(host));
300
+ var sdk_2 = new sdk_1.Session({ host: host });
301
+ var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
302
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
303
+ return __generator(this, function (_a) {
304
+ switch (_a.label) {
305
+ case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
306
+ case 1:
307
+ _a.sent();
308
+ return [4 /*yield*/, (0, exports.enduser_write_restrictions_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
309
+ case 2:
310
+ _a.sent();
311
+ return [2 /*return*/];
312
+ }
313
+ });
314
+ }); };
315
+ runTests()
316
+ .then(function () {
317
+ console.log("✅ F-0106/F-0110 enduser write-restriction test suite completed successfully");
318
+ process.exit(0);
319
+ })
320
+ .catch(function (error) {
321
+ console.error("❌ F-0106/F-0110 enduser write-restriction test suite failed:", error);
322
+ process.exit(1);
323
+ });
324
+ }
325
+ //# sourceMappingURL=F-0106-F-0110-enduser-write-restrictions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"F-0106-F-0110-enduser-write-restrictions.test.js","sourceRoot":"","sources":["../../../../../src/tests/api_tests/security/F-0106-F-0110-enduser-write-restrictions.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"user_portal_settings.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/user_portal_settings.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAA;AAanD,eAAO,MAAM,0BAA0B;SAAuC,OAAO;iBAAe,OAAO;mBAmL1G,CAAA"}
1
+ {"version":3,"file":"user_portal_settings.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/api_tests/user_portal_settings.test.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAA;AAanD,eAAO,MAAM,0BAA0B;SAAuC,OAAO;iBAAe,OAAO;mBAyP1G,CAAA"}
@@ -47,7 +47,7 @@ var businessId = '60398b1131a295e64f084ff6';
47
47
  var user_portal_settings_tests = function (_a) {
48
48
  var sdk = _a.sdk, sdkNonAdmin = _a.sdkNonAdmin;
49
49
  return __awaiter(void 0, void 0, void 0, function () {
50
- var testUser, testEnduserId, enduserSDK;
50
+ var testUser, testEnduserId, enduserSDK, orgId, originalOnboardingStatus;
51
51
  return __generator(this, function (_b) {
52
52
  switch (_b.label) {
53
53
  case 0:
@@ -59,9 +59,13 @@ var user_portal_settings_tests = function (_a) {
59
59
  ];
60
60
  case 1:
61
61
  testUser = _b.sent();
62
- _b.label = 2;
62
+ orgId = sdk.userInfo.businessId;
63
+ return [4 /*yield*/, sdk.api.organizations.getOne(orgId)];
63
64
  case 2:
64
- _b.trys.push([2, , 13, 21]);
65
+ originalOnboardingStatus = (_b.sent()).onboardingStatus;
66
+ _b.label = 3;
67
+ case 3:
68
+ _b.trys.push([3, , 18, 29]);
65
69
  // ===== Valid: string values =====
66
70
  return [4 /*yield*/, (0, testing_1.async_test)('portalSettings - string values accepted', function () { return __awaiter(void 0, void 0, void 0, function () {
67
71
  var updated;
@@ -80,7 +84,7 @@ var user_portal_settings_tests = function (_a) {
80
84
  }); }, { onResult: function (r) { return r === 'dark'; } })
81
85
  // ===== Valid: boolean values + round-trip as real booleans =====
82
86
  ];
83
- case 3:
87
+ case 4:
84
88
  // ===== Valid: string values =====
85
89
  _b.sent();
86
90
  // ===== Valid: boolean values + round-trip as real booleans =====
@@ -108,7 +112,7 @@ var user_portal_settings_tests = function (_a) {
108
112
  })
109
113
  // ===== Valid: mixed string + boolean values, strings stay strings =====
110
114
  ];
111
- case 4:
115
+ case 5:
112
116
  // ===== Valid: boolean values + round-trip as real booleans =====
113
117
  _b.sent();
114
118
  // ===== Valid: mixed string + boolean values, strings stay strings =====
@@ -135,7 +139,7 @@ var user_portal_settings_tests = function (_a) {
135
139
  })
136
140
  // ===== Valid: empty object (zero-iteration loop passes) =====
137
141
  ];
138
- case 5:
142
+ case 6:
139
143
  // ===== Valid: mixed string + boolean values, strings stay strings =====
140
144
  _b.sent();
141
145
  // ===== Valid: empty object (zero-iteration loop passes) =====
@@ -155,14 +159,14 @@ var user_portal_settings_tests = function (_a) {
155
159
  }); }, { onResult: function (r) { return !!r && typeof r === 'object' && Object.keys(r).length === 0; } })
156
160
  // ===== Invalid: value string > 250 chars =====
157
161
  ];
158
- case 6:
162
+ case 7:
159
163
  // ===== Valid: empty object (zero-iteration loop passes) =====
160
164
  _b.sent();
161
165
  // ===== Invalid: value string > 250 chars =====
162
166
  return [4 /*yield*/, (0, testing_1.async_test)('portalSettings - value string > 250 chars rejected', function () { return sdk.api.users.updateOne(testUser.id, { portalSettings: { tooLong: 'a'.repeat(251) } }, { replaceObjectFields: true }); }, testing_1.handleAnyError)
163
167
  // ===== Invalid: key > 250 chars =====
164
168
  ];
165
- case 7:
169
+ case 8:
166
170
  // ===== Invalid: value string > 250 chars =====
167
171
  _b.sent();
168
172
  // ===== Invalid: key > 250 chars =====
@@ -172,14 +176,14 @@ var user_portal_settings_tests = function (_a) {
172
176
  }, testing_1.handleAnyError)
173
177
  // ===== Invalid: nested object value (disallowed type) =====
174
178
  ];
175
- case 8:
179
+ case 9:
176
180
  // ===== Invalid: key > 250 chars =====
177
181
  _b.sent();
178
182
  // ===== Invalid: nested object value (disallowed type) =====
179
183
  return [4 /*yield*/, (0, testing_1.async_test)('portalSettings - nested object value rejected', function () { return sdk.api.users.updateOne(testUser.id, { portalSettings: { k: { nested: 1 } } }, { replaceObjectFields: true }); }, testing_1.handleAnyError)
180
184
  // ===== Invalid: array value (disallowed type) =====
181
185
  ];
182
- case 9:
186
+ case 10:
183
187
  // ===== Invalid: nested object value (disallowed type) =====
184
188
  _b.sent();
185
189
  // ===== Invalid: array value (disallowed type) =====
@@ -188,7 +192,7 @@ var user_portal_settings_tests = function (_a) {
188
192
  // stringValidator250's escapeString throws on non-strings, so a number is
189
193
  // rejected by both branches => API validation error. =====
190
194
  ];
191
- case 10:
195
+ case 11:
192
196
  // ===== Invalid: array value (disallowed type) =====
193
197
  _b.sent();
194
198
  // ===== Number value (secondary): orValidator tries boolean then string;
@@ -197,7 +201,7 @@ var user_portal_settings_tests = function (_a) {
197
201
  return [4 /*yield*/, (0, testing_1.async_test)('portalSettings - number value rejected', function () { return sdk.api.users.updateOne(testUser.id, { portalSettings: { k: 1 } }, { replaceObjectFields: true }); }, testing_1.handleAnyError)
198
202
  // ===== Enduser visibility: portalSettings readable by endusers, un-redacted =====
199
203
  ];
200
- case 11:
204
+ case 12:
201
205
  // ===== Number value (secondary): orValidator tries boolean then string;
202
206
  // stringValidator250's escapeString throws on non-strings, so a number is
203
207
  // rejected by both branches => API validation error. =====
@@ -239,32 +243,104 @@ var user_portal_settings_tests = function (_a) {
239
243
  // field is present and un-redacted for endusers
240
244
  return (r === null || r === void 0 ? void 0 : r.showNameInSecureMessaging) === true && (r === null || r === void 0 ? void 0 : r.theme) === 'dark';
241
245
  },
242
- })];
243
- case 12:
246
+ })
247
+ // ===== Organization.onboardingStatus: same key-value shape as portalSettings =====
248
+ ];
249
+ case 13:
244
250
  // ===== Enduser visibility: portalSettings readable by endusers, un-redacted =====
245
251
  _b.sent();
246
- console.log("✅ All User portalSettings tests passed!");
247
- return [3 /*break*/, 21];
248
- case 13:
249
- _b.trys.push([13, , 18, 20]);
250
- if (!enduserSDK) return [3 /*break*/, 15];
251
- return [4 /*yield*/, enduserSDK.api.endusers.logout().catch(function () { })];
252
+ // ===== Organization.onboardingStatus: same key-value shape as portalSettings =====
253
+ return [4 /*yield*/, (0, testing_1.async_test)('onboardingStatus - mixed string and boolean values round-trip', function () { return __awaiter(void 0, void 0, void 0, function () {
254
+ var updated;
255
+ return __generator(this, function (_a) {
256
+ switch (_a.label) {
257
+ case 0: return [4 /*yield*/, sdk.api.organizations.updateOne(orgId, { onboardingStatus: { completedIntro: true, currentStep: 'billing', skippedTour: false } }, { replaceObjectFields: true })];
258
+ case 1:
259
+ _a.sent();
260
+ return [4 /*yield*/, sdk.api.organizations.getOne(orgId)];
261
+ case 2:
262
+ updated = _a.sent();
263
+ return [2 /*return*/, updated.onboardingStatus];
264
+ }
265
+ });
266
+ }); }, {
267
+ onResult: function (r) {
268
+ return (r === null || r === void 0 ? void 0 : r.completedIntro) === true &&
269
+ typeof (r === null || r === void 0 ? void 0 : r.completedIntro) === 'boolean' &&
270
+ (r === null || r === void 0 ? void 0 : r.currentStep) === 'billing' &&
271
+ typeof (r === null || r === void 0 ? void 0 : r.currentStep) === 'string' &&
272
+ (r === null || r === void 0 ? void 0 : r.skippedTour) === false &&
273
+ typeof (r === null || r === void 0 ? void 0 : r.skippedTour) === 'boolean';
274
+ },
275
+ })];
252
276
  case 14:
277
+ // ===== Organization.onboardingStatus: same key-value shape as portalSettings =====
253
278
  _b.sent();
254
- _b.label = 15;
279
+ return [4 /*yield*/, (0, testing_1.async_test)('onboardingStatus - empty object accepted', function () { return __awaiter(void 0, void 0, void 0, function () {
280
+ var updated;
281
+ return __generator(this, function (_a) {
282
+ switch (_a.label) {
283
+ case 0: return [4 /*yield*/, sdk.api.organizations.updateOne(orgId, { onboardingStatus: {} }, { replaceObjectFields: true })];
284
+ case 1:
285
+ _a.sent();
286
+ return [4 /*yield*/, sdk.api.organizations.getOne(orgId)];
287
+ case 2:
288
+ updated = _a.sent();
289
+ return [2 /*return*/, updated.onboardingStatus];
290
+ }
291
+ });
292
+ }); }, { onResult: function (r) { return !!r && typeof r === 'object' && Object.keys(r).length === 0; } })
293
+ // breaking change: the previous string shape must no longer be accepted
294
+ ];
255
295
  case 15:
256
- if (!testEnduserId) return [3 /*break*/, 17];
257
- return [4 /*yield*/, sdk.api.endusers.deleteOne(testEnduserId)];
296
+ _b.sent();
297
+ // breaking change: the previous string shape must no longer be accepted
298
+ return [4 /*yield*/, (0, testing_1.async_test)('onboardingStatus - plain string (old shape) rejected', function () { return sdk.api.organizations.updateOne(orgId, { onboardingStatus: 'started' }, { replaceObjectFields: true }); }, testing_1.handleAnyError)
299
+ // representative validator rejection, confirming the indexable validator is
300
+ // enforced on the organizations route (full coverage lives in the
301
+ // portalSettings cases above, which use the same validator)
302
+ ];
258
303
  case 16:
304
+ // breaking change: the previous string shape must no longer be accepted
259
305
  _b.sent();
260
- _b.label = 17;
261
- case 17: return [3 /*break*/, 20];
262
- case 18: return [4 /*yield*/, sdk.api.users.deleteOne(testUser.id)];
306
+ // representative validator rejection, confirming the indexable validator is
307
+ // enforced on the organizations route (full coverage lives in the
308
+ // portalSettings cases above, which use the same validator)
309
+ return [4 /*yield*/, (0, testing_1.async_test)('onboardingStatus - number value rejected', function () { return sdk.api.organizations.updateOne(orgId, { onboardingStatus: { k: 1 } }, { replaceObjectFields: true }); }, testing_1.handleAnyError)];
310
+ case 17:
311
+ // representative validator rejection, confirming the indexable validator is
312
+ // enforced on the organizations route (full coverage lives in the
313
+ // portalSettings cases above, which use the same validator)
314
+ _b.sent();
315
+ console.log("✅ All User portalSettings tests passed!");
316
+ return [3 /*break*/, 29];
317
+ case 18:
318
+ _b.trys.push([18, , 23, 28]);
319
+ if (!enduserSDK) return [3 /*break*/, 20];
320
+ return [4 /*yield*/, enduserSDK.api.endusers.logout().catch(function () { })];
263
321
  case 19:
322
+ _b.sent();
323
+ _b.label = 20;
324
+ case 20:
325
+ if (!testEnduserId) return [3 /*break*/, 22];
326
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(testEnduserId)];
327
+ case 21:
328
+ _b.sent();
329
+ _b.label = 22;
330
+ case 22: return [3 /*break*/, 28];
331
+ case 23:
332
+ _b.trys.push([23, , 25, 27]);
333
+ return [4 /*yield*/, sdk.api.organizations.updateOne(orgId, { onboardingStatus: originalOnboardingStatus !== null && originalOnboardingStatus !== void 0 ? originalOnboardingStatus : {} }, { replaceObjectFields: true })];
334
+ case 24:
335
+ _b.sent();
336
+ return [3 /*break*/, 27];
337
+ case 25: return [4 /*yield*/, sdk.api.users.deleteOne(testUser.id)];
338
+ case 26:
264
339
  _b.sent();
265
340
  return [7 /*endfinally*/];
266
- case 20: return [7 /*endfinally*/];
267
- case 21: return [2 /*return*/];
341
+ case 27: return [7 /*endfinally*/];
342
+ case 28: return [7 /*endfinally*/];
343
+ case 29: return [2 /*return*/];
268
344
  }
269
345
  });
270
346
  });
@@ -1 +1 @@
1
- {"version":3,"file":"user_portal_settings.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/user_portal_settings.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user_portal_settings.test.js","sourceRoot":"","sources":["../../../../src/tests/api_tests/user_portal_settings.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../src/tests/tests.ts"],"names":[],"mappings":"AAizEA,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;AA8vED,eAAO,MAAM,cAAc,qBAqC1B,CAAA;AAotBD,eAAO,MAAM,0BAA0B,qBAmFtC,CAAA;AAqED,eAAO,MAAM,eAAe,qBAmD3B,CAAA;AAED,eAAO,MAAM,oBAAoB,6BAsBhC,CAAA;AAED,eAAO,MAAM,oCAAoC,qBAylBhD,CAAA;AAED,eAAO,MAAM,mCAAmC,qBAkE/C,CAAA;AAw7CD,eAAO,MAAM,yBAAyB,qBA0DrC,CAAA;AAED,eAAO,MAAM,kBAAkB,qBAmK9B,CAAA;AAED,eAAO,MAAM,sBAAsB,qBA0BlC,CAAA;AAGD,eAAO,MAAM,mBAAmB,qBAmC/B,CAAA;AAED,eAAO,MAAM,gCAAgC,mCA2C5C,CAAA;AAED,eAAO,MAAM,cAAc,qBAwb1B,CAAA;AAGD,eAAO,MAAM,oBAAoB,uBAuBhC,CAAA;AA4wBD,eAAO,MAAM,4BAA4B,qBAoExC,CAAA;AAED,eAAO,MAAM,+BAA+B,qBA4U3C,CAAA;AAED,eAAO,MAAM,gDAAgD,qBAwC5D,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAwIjC,CAAA"}
1
+ {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../src/tests/tests.ts"],"names":[],"mappings":"AAmzEA,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;AAk8ED,eAAO,MAAM,cAAc,qBAqC1B,CAAA;AAotBD,eAAO,MAAM,0BAA0B,qBAmFtC,CAAA;AAqED,eAAO,MAAM,eAAe,qBAmD3B,CAAA;AAED,eAAO,MAAM,oBAAoB,6BAsBhC,CAAA;AAED,eAAO,MAAM,oCAAoC,qBAylBhD,CAAA;AAED,eAAO,MAAM,mCAAmC,qBAkE/C,CAAA;AAw7CD,eAAO,MAAM,yBAAyB,qBA0DrC,CAAA;AAED,eAAO,MAAM,kBAAkB,qBAmK9B,CAAA;AAED,eAAO,MAAM,sBAAsB,qBA0BlC,CAAA;AAGD,eAAO,MAAM,mBAAmB,qBAmC/B,CAAA;AAED,eAAO,MAAM,gCAAgC,mCA2C5C,CAAA;AAED,eAAO,MAAM,cAAc,qBAwb1B,CAAA;AAGD,eAAO,MAAM,oBAAoB,uBAuBhC,CAAA;AA4wBD,eAAO,MAAM,4BAA4B,qBAoExC,CAAA;AAED,eAAO,MAAM,+BAA+B,qBA4U3C,CAAA;AAED,eAAO,MAAM,gDAAgD,qBAwC5D,CAAA;AAED,eAAO,MAAM,qBAAqB,qBAwIjC,CAAA"}