@tellescope/sdk 1.256.9 → 1.256.10

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.
@@ -0,0 +1,29 @@
1
+ import { Session } from "../../../sdk";
2
+ /**
3
+ * Regression test for F-0138
4
+ * (security-audit/findings/F-0138-endusers-generate-auth-token-no-admin-gate.md).
5
+ *
6
+ * `endusers.generate_auth_token` (the "View portal as patient" preview flow) requires only
7
+ * `endusers.read`, yet mints a FULLY-PRIVILEGED enduser session. A staff user who cannot update a
8
+ * patient can therefore act AS that patient: edit the record, submit forms, send chats, book
9
+ * appointments, even set the portal password.
10
+ *
11
+ * The fix mints the preview token with `sessionScopes: ['portal-preview']` whenever the calling
12
+ * staff user lacks update access to that specific enduser (record-level, honoring `Assigned`
13
+ * scoping). The scope's allowlist (api/modules/session_scopes.ts) grants exactly the portal's read
14
+ * surface plus session maintenance; every write path 403s via existing path confinement.
15
+ *
16
+ * RED (pre-fix): section A fails — the response carries no sessionScopes and every write in A2
17
+ * SUCCEEDS. Sections D/E (controls) pass pre-fix. GREEN (post-fix): all sections pass.
18
+ *
19
+ * Probes use raw axios rather than the SDK: parseError (sdk/src/session.ts) discards the status
20
+ * code, and a path-confinement denial (403 "Inaccessible") is byte-identical in message to a
21
+ * permissions denial. Write/blocked-read probes additionally confirm an UNCONFINED enduser token
22
+ * gets a non-403 on the same path in the same run, so a 403 can only be confinement, never bad
23
+ * permissions or a bad body.
24
+ */
25
+ export declare const readonly_enduser_preview_tests: ({ sdk }: {
26
+ sdk: Session;
27
+ sdkNonAdmin: Session;
28
+ }) => Promise<void>;
29
+ //# sourceMappingURL=readonly-enduser-preview.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readonly-enduser-preview.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/api_tests/security/readonly-enduser-preview.test.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAkB,MAAM,cAAc,CAAA;AA8BtD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,8BAA8B;SAA2B,OAAO;iBAAe,OAAO;mBA6NlG,CAAA"}
@@ -0,0 +1,472 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ 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;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ exports.readonly_enduser_preview_tests = void 0;
54
+ require('source-map-support').install();
55
+ var axios_1 = __importDefault(require("axios"));
56
+ var sdk_1 = require("../../../sdk");
57
+ var testing_1 = require("@tellescope/testing");
58
+ var constants_1 = require("@tellescope/constants");
59
+ var setup_1 = require("../../setup");
60
+ var host = process.env.API_URL || 'http://localhost:8080';
61
+ var RAND = function () { return Math.random().toString(36).slice(2, 10); };
62
+ var ALL = 'All';
63
+ var READ_ONLY = { create: constants_1.NO_ACCESS, read: ALL, update: constants_1.NO_ACCESS, delete: constants_1.NO_ACCESS };
64
+ var FULL_ACCESS = { create: ALL, read: ALL, update: ALL, delete: ALL };
65
+ var ASSIGNED_UPDATE = { create: constants_1.NO_ACCESS, read: ALL, update: 'Assigned', delete: constants_1.NO_ACCESS };
66
+ var PORTAL_PREVIEW_SCOPE = 'portal-preview';
67
+ /**
68
+ * Regression test for F-0138
69
+ * (security-audit/findings/F-0138-endusers-generate-auth-token-no-admin-gate.md).
70
+ *
71
+ * `endusers.generate_auth_token` (the "View portal as patient" preview flow) requires only
72
+ * `endusers.read`, yet mints a FULLY-PRIVILEGED enduser session. A staff user who cannot update a
73
+ * patient can therefore act AS that patient: edit the record, submit forms, send chats, book
74
+ * appointments, even set the portal password.
75
+ *
76
+ * The fix mints the preview token with `sessionScopes: ['portal-preview']` whenever the calling
77
+ * staff user lacks update access to that specific enduser (record-level, honoring `Assigned`
78
+ * scoping). The scope's allowlist (api/modules/session_scopes.ts) grants exactly the portal's read
79
+ * surface plus session maintenance; every write path 403s via existing path confinement.
80
+ *
81
+ * RED (pre-fix): section A fails — the response carries no sessionScopes and every write in A2
82
+ * SUCCEEDS. Sections D/E (controls) pass pre-fix. GREEN (post-fix): all sections pass.
83
+ *
84
+ * Probes use raw axios rather than the SDK: parseError (sdk/src/session.ts) discards the status
85
+ * code, and a path-confinement denial (403 "Inaccessible") is byte-identical in message to a
86
+ * permissions denial. Write/blocked-read probes additionally confirm an UNCONFINED enduser token
87
+ * gets a non-403 on the same path in the same run, so a 403 can only be confinement, never bad
88
+ * permissions or a bad body.
89
+ */
90
+ var readonly_enduser_preview_tests = function (_a) {
91
+ var sdk = _a.sdk;
92
+ return __awaiter(void 0, void 0, void 0, function () {
93
+ var checks, record, request, isPathDenial, expectDenied, expectAllowed, hasScope, readonlyRole, fullUpdateRole, assignedUpdateRole, roleIds, userIds, enduserIds, _i, _b, _c, role, endusersPerm, rbap, mkUser, readonlyUser, fullUpdateUser, assignedUpdateUser, staffSession, readonlyStaff, fullUpdateStaff, assignedUpdateStaff, enduser, assignedEnduser, form, formResponse, previewMint, previewToken, baselineEnduserToken, refreshed, refreshedToken, cMint, cToken, adminMint, fullMint, assignedMint, assignedMintUnassigned, _d, checks_1, c, _e, checks_2, c, _f, enduserIds_1, id, _g, _h, userIds_1, id, _j, _k, roleIds_1, id, _l;
94
+ var _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
95
+ return __generator(this, function (_y) {
96
+ switch (_y.label) {
97
+ case 0:
98
+ (0, testing_1.log_header)("F-0138: portal-preview scope for read-only staff generate_auth_token");
99
+ checks = [];
100
+ record = function (label, pass, detail) { return checks.push({ label: label, pass: pass, detail: detail }); };
101
+ request = function (token, method, path, data) { return __awaiter(void 0, void 0, void 0, function () {
102
+ var r;
103
+ return __generator(this, function (_a) {
104
+ switch (_a.label) {
105
+ case 0: return [4 /*yield*/, axios_1.default.request(__assign(__assign({ method: method, url: "".concat(host, "/v1").concat(path) }, method === 'get' ? { params: data } : { data: data }), { headers: { Authorization: "Bearer ".concat(token) }, validateStatus: function () { return true; } }))];
106
+ case 1:
107
+ r = _a.sent();
108
+ return [2 /*return*/, { status: r.status, body: r.data }];
109
+ }
110
+ });
111
+ }); };
112
+ isPathDenial = function (r) {
113
+ var _a;
114
+ return (r.status === 403 && ((_a = r.body) === null || _a === void 0 ? void 0 : _a.message) === 'Inaccessible');
115
+ };
116
+ expectDenied = function (label, confinedToken, baselineToken, method, path, data) { return __awaiter(void 0, void 0, void 0, function () {
117
+ var baseline, confined, badProbe;
118
+ return __generator(this, function (_a) {
119
+ switch (_a.label) {
120
+ case 0: return [4 /*yield*/, request(baselineToken, method, path, data)];
121
+ case 1:
122
+ baseline = _a.sent();
123
+ return [4 /*yield*/, request(confinedToken, method, path, data)];
124
+ case 2:
125
+ confined = _a.sent();
126
+ badProbe = baseline.status === 403;
127
+ record(label, !badProbe && isPathDenial(confined), "".concat(method, ":").concat(path, " confined=").concat(confined.status, " baseline=").concat(baseline.status) + (badProbe ? ' BAD PROBE: baseline also 403' : ''));
128
+ return [2 /*return*/];
129
+ }
130
+ });
131
+ }); };
132
+ expectAllowed = function (label, token, method, path, data) { return __awaiter(void 0, void 0, void 0, function () {
133
+ var r;
134
+ return __generator(this, function (_a) {
135
+ switch (_a.label) {
136
+ case 0: return [4 /*yield*/, request(token, method, path, data)];
137
+ case 1:
138
+ r = _a.sent();
139
+ record(label, r.status !== 403 && r.status !== 401, "".concat(method, ":").concat(path, " status=").concat(r.status));
140
+ return [2 /*return*/];
141
+ }
142
+ });
143
+ }); };
144
+ hasScope = function (enduser) { var _a, _b; return !!((_b = (_a = enduser === null || enduser === void 0 ? void 0 : enduser.sessionScopes) === null || _a === void 0 ? void 0 : _a.includes) === null || _b === void 0 ? void 0 : _b.call(_a, PORTAL_PREVIEW_SCOPE)); };
145
+ readonlyRole = "f0138-readonly-".concat(RAND());
146
+ fullUpdateRole = "f0138-full-".concat(RAND());
147
+ assignedUpdateRole = "f0138-assigned-".concat(RAND());
148
+ roleIds = [];
149
+ userIds = [];
150
+ enduserIds = [];
151
+ _y.label = 1;
152
+ case 1:
153
+ _y.trys.push([1, , 47, 66]);
154
+ _i = 0, _b = [
155
+ [readonlyRole, READ_ONLY],
156
+ [fullUpdateRole, FULL_ACCESS],
157
+ [assignedUpdateRole, ASSIGNED_UPDATE],
158
+ ];
159
+ _y.label = 2;
160
+ case 2:
161
+ if (!(_i < _b.length)) return [3 /*break*/, 5];
162
+ _c = _b[_i], role = _c[0], endusersPerm = _c[1];
163
+ return [4 /*yield*/, sdk.api.role_based_access_permissions.createOne({
164
+ role: role,
165
+ permissions: __assign(__assign({}, constants_1.PROVIDER_PERMISSIONS), { endusers: endusersPerm }),
166
+ })];
167
+ case 3:
168
+ rbap = _y.sent();
169
+ roleIds.push(rbap.id);
170
+ _y.label = 4;
171
+ case 4:
172
+ _i++;
173
+ return [3 /*break*/, 2];
174
+ case 5:
175
+ mkUser = function (role) { return __awaiter(void 0, void 0, void 0, function () {
176
+ var u;
177
+ return __generator(this, function (_a) {
178
+ switch (_a.label) {
179
+ case 0: return [4 /*yield*/, sdk.api.users.createOne({
180
+ email: "f0138-".concat(role, "-").concat(RAND(), "@tellescope.example"),
181
+ fname: 'F0138', lname: 'Staff',
182
+ verifiedEmail: true,
183
+ notificationEmailsDisabled: true,
184
+ roles: [role],
185
+ })];
186
+ case 1:
187
+ u = _a.sent();
188
+ userIds.push(u.id);
189
+ return [2 /*return*/, u];
190
+ }
191
+ });
192
+ }); };
193
+ return [4 /*yield*/, mkUser(readonlyRole)];
194
+ case 6:
195
+ readonlyUser = _y.sent();
196
+ return [4 /*yield*/, mkUser(fullUpdateRole)];
197
+ case 7:
198
+ fullUpdateUser = _y.sent();
199
+ return [4 /*yield*/, mkUser(assignedUpdateRole)
200
+ // Staff sessions from admin-minted tokens (avoids the password / login-rate-limit dance).
201
+ ];
202
+ case 8:
203
+ assignedUpdateUser = _y.sent();
204
+ staffSession = function (userId) { return __awaiter(void 0, void 0, void 0, function () {
205
+ var authToken;
206
+ return __generator(this, function (_a) {
207
+ switch (_a.label) {
208
+ case 0: return [4 /*yield*/, sdk.api.users.generate_auth_token({ id: userId })];
209
+ case 1:
210
+ authToken = (_a.sent()).authToken;
211
+ return [2 /*return*/, new sdk_1.Session({ host: host, authToken: authToken })];
212
+ }
213
+ });
214
+ }); };
215
+ return [4 /*yield*/, staffSession(readonlyUser.id)];
216
+ case 9:
217
+ readonlyStaff = _y.sent();
218
+ return [4 /*yield*/, staffSession(fullUpdateUser.id)];
219
+ case 10:
220
+ fullUpdateStaff = _y.sent();
221
+ return [4 /*yield*/, staffSession(assignedUpdateUser.id)
222
+ // Endusers: unassigned patient, a bystander, and one assigned to the assigned-update user.
223
+ ];
224
+ case 11:
225
+ assignedUpdateStaff = _y.sent();
226
+ return [4 /*yield*/, sdk.api.endusers.createOne({
227
+ email: "f0138-patient-".concat(RAND(), "@tellescope.example"), fname: 'F0138', lname: 'Patient',
228
+ })];
229
+ case 12:
230
+ enduser = _y.sent();
231
+ enduserIds.push(enduser.id);
232
+ return [4 /*yield*/, sdk.api.endusers.createOne({
233
+ email: "f0138-assigned-".concat(RAND(), "@tellescope.example"), fname: 'F0138', lname: 'Assigned',
234
+ assignedTo: [assignedUpdateUser.id],
235
+ })];
236
+ case 13:
237
+ assignedEnduser = _y.sent();
238
+ enduserIds.push(assignedEnduser.id);
239
+ return [4 /*yield*/, sdk.api.forms.createOne({ title: "F-0138 preview form ".concat(RAND()) })];
240
+ case 14:
241
+ form = _y.sent();
242
+ return [4 /*yield*/, sdk.api.form_responses.prepare_form_response({
243
+ formId: form.id, enduserId: enduser.id,
244
+ })
245
+ /* ===== A1: read-only staff mints a scoped preview token ===== */
246
+ ];
247
+ case 15:
248
+ formResponse = (_y.sent()).response;
249
+ return [4 /*yield*/, readonlyStaff.api.endusers.generate_auth_token({ id: enduser.id })];
250
+ case 16:
251
+ previewMint = _y.sent();
252
+ previewToken = previewMint.authToken;
253
+ record('A1: read-only staff receives an authToken', !!previewToken, "authToken present=".concat(!!previewToken));
254
+ record('A1: read-only staff mint is scoped to portal-preview', hasScope(previewMint.enduser), "sessionScopes=".concat(JSON.stringify((_m = previewMint.enduser) === null || _m === void 0 ? void 0 : _m.sessionScopes), " (F-0138 vuln if absent)"));
255
+ record('A1(E): scoped preview token carries denySocket', ((_o = previewMint.enduser) === null || _o === void 0 ? void 0 : _o.denySocket) === true, "denySocket=".concat((_p = previewMint.enduser) === null || _p === void 0 ? void 0 : _p.denySocket));
256
+ return [4 /*yield*/, sdk.api.endusers.generate_auth_token({ id: enduser.id })
257
+ /* ===== A2: writes blocked for the scoped session ===== */
258
+ ];
259
+ case 17:
260
+ baselineEnduserToken = (_y.sent()).authToken;
261
+ /* ===== A2: writes blocked for the scoped session ===== */
262
+ return [4 /*yield*/, expectDenied('A2: cannot self-update the patient record', previewToken, baselineEnduserToken, 'patch', "/enduser/".concat(enduser.id), { updates: { fname: 'Hacked' } })];
263
+ case 18:
264
+ /* ===== A2: writes blocked for the scoped session ===== */
265
+ _y.sent();
266
+ return [4 /*yield*/, expectDenied('A2: cannot set the patient portal password', previewToken, baselineEnduserToken, 'post', '/set-enduser-password', { id: enduser.id, password: "F0138Pw!".concat(RAND()) })];
267
+ case 19:
268
+ _y.sent();
269
+ return [4 /*yield*/, expectDenied('A2: cannot send a chat as the patient', previewToken, baselineEnduserToken, 'post', '/chat', { message: 'hi from preview' })];
270
+ case 20:
271
+ _y.sent();
272
+ return [4 /*yield*/, expectDenied('A2: cannot submit a form as the patient', previewToken, baselineEnduserToken, 'patch', '/submit-form-response', { id: formResponse.id, responses: [] })];
273
+ case 21:
274
+ _y.sent();
275
+ return [4 /*yield*/, expectDenied('A2: cannot book an appointment as the patient', previewToken, baselineEnduserToken, 'post', '/book-appointment', {})];
276
+ case 22:
277
+ _y.sent();
278
+ return [4 /*yield*/, expectDenied('A2: cannot start a file upload as the patient', previewToken, baselineEnduserToken, 'post', '/prepare-file-upload', { name: 'x.pdf', type: 'application/pdf', enduserId: enduser.id })
279
+ /* ===== B: no laundering via refresh ===== */
280
+ ];
281
+ case 23:
282
+ _y.sent();
283
+ return [4 /*yield*/, request(previewToken, 'post', '/refresh-enduser-session', {})];
284
+ case 24:
285
+ refreshed = _y.sent();
286
+ refreshedToken = (_q = refreshed.body) === null || _q === void 0 ? void 0 : _q.authToken;
287
+ record('B: refresh succeeds', refreshed.status === 200 && !!refreshedToken, "status=".concat(refreshed.status, " token=").concat(!!refreshedToken));
288
+ record('B: refreshed session still carries portal-preview scope', hasScope((_r = refreshed.body) === null || _r === void 0 ? void 0 : _r.enduser), "sessionScopes=".concat(JSON.stringify((_t = (_s = refreshed.body) === null || _s === void 0 ? void 0 : _s.enduser) === null || _t === void 0 ? void 0 : _t.sessionScopes), " (laundering if absent)"));
289
+ if (!refreshedToken) return [3 /*break*/, 26];
290
+ return [4 /*yield*/, expectDenied('B: refreshed token still cannot write', refreshedToken, baselineEnduserToken, 'patch', "/enduser/".concat(enduser.id), { updates: { fname: 'HackedAfterRefresh' } })];
291
+ case 25:
292
+ _y.sent();
293
+ _y.label = 26;
294
+ case 26: return [4 /*yield*/, expectAllowed('B: logout allowed', previewToken, 'post', '/logout-enduser')
295
+ /* ===== C: ungranted mutating "reads" blocked ===== */
296
+ // Re-mint (the previous token was just logged out).
297
+ ];
298
+ case 27:
299
+ _y.sent();
300
+ return [4 /*yield*/, readonlyStaff.api.endusers.generate_auth_token({ id: enduser.id })];
301
+ case 28:
302
+ cMint = _y.sent();
303
+ cToken = cMint.authToken;
304
+ return [4 /*yield*/, expectDenied('C: proxy_read blocked', cToken, baselineEnduserToken, 'get', '/integrations/proxy-read', { integration: 'Stripe', type: 'subscriptions' })];
305
+ case 29:
306
+ _y.sent();
307
+ return [4 /*yield*/, expectDenied('C: booking_info (mints a token) blocked', cToken, baselineEnduserToken, 'get', '/form-fields/booking-info', { bookingPageId: 'x' })];
308
+ case 30:
309
+ _y.sent();
310
+ return [4 /*yield*/, expectDenied('C: form_responses stripe_details blocked', cToken, baselineEnduserToken, 'get', '/form-responses/stripe-details', {})];
311
+ case 31:
312
+ _y.sent();
313
+ return [4 /*yield*/, expectDenied('C: products stripe-portal-session blocked', cToken, baselineEnduserToken, 'get', '/products/stripe-portal-session', {})
314
+ /* ===== D: granted portal reads still work ===== */
315
+ ];
316
+ case 32:
317
+ _y.sent();
318
+ /* ===== D: granted portal reads still work ===== */
319
+ return [4 /*yield*/, expectAllowed('D: portal-customizations', cToken, 'get', '/portal-customizations')];
320
+ case 33:
321
+ /* ===== D: granted portal reads still work ===== */
322
+ _y.sent();
323
+ return [4 /*yield*/, expectAllowed('D: calendar-events', cToken, 'get', '/calendar-events')];
324
+ case 34:
325
+ _y.sent();
326
+ return [4 /*yield*/, expectAllowed('D: my-meetings', cToken, 'get', '/my-meetings')];
327
+ case 35:
328
+ _y.sent();
329
+ return [4 /*yield*/, expectAllowed('D: chat-rooms', cToken, 'get', '/chat-rooms')];
330
+ case 36:
331
+ _y.sent();
332
+ return [4 /*yield*/, expectAllowed('D: care-plans', cToken, 'get', '/care-plans')];
333
+ case 37:
334
+ _y.sent();
335
+ return [4 /*yield*/, expectAllowed('D: form-responses', cToken, 'get', '/form-responses')];
336
+ case 38:
337
+ _y.sent();
338
+ return [4 /*yield*/, expectAllowed('D: self enduser read', cToken, 'get', "/enduser/".concat(enduser.id))];
339
+ case 39:
340
+ _y.sent();
341
+ return [4 /*yield*/, expectAllowed('D: file-download-URL', cToken, 'get', '/file-download-URL', { secureName: 'nonexistent' })];
342
+ case 40:
343
+ _y.sent();
344
+ return [4 /*yield*/, expectAllowed('D: enduser-session-info', cToken, 'get', '/enduser-session-info')
345
+ /* ===== E: zero behavior change controls ===== */
346
+ ];
347
+ case 41:
348
+ _y.sent();
349
+ return [4 /*yield*/, sdk.api.endusers.generate_auth_token({ id: enduser.id })];
350
+ case 42:
351
+ adminMint = _y.sent();
352
+ record('E: admin-minted token is NOT scoped', !hasScope(adminMint.enduser), "sessionScopes=".concat(JSON.stringify((_u = adminMint.enduser) === null || _u === void 0 ? void 0 : _u.sessionScopes)));
353
+ return [4 /*yield*/, expectAllowed('E: admin-minted token can write', adminMint.authToken, 'patch', "/enduser/".concat(enduser.id), { updates: { fname: 'AdminEditOk' } })];
354
+ case 43:
355
+ _y.sent();
356
+ return [4 /*yield*/, fullUpdateStaff.api.endusers.generate_auth_token({ id: enduser.id })];
357
+ case 44:
358
+ fullMint = _y.sent();
359
+ record('E: update:All staff mints an UNSCOPED token', !hasScope(fullMint.enduser), "sessionScopes=".concat(JSON.stringify((_v = fullMint.enduser) === null || _v === void 0 ? void 0 : _v.sessionScopes)));
360
+ return [4 /*yield*/, assignedUpdateStaff.api.endusers.generate_auth_token({ id: assignedEnduser.id })];
361
+ case 45:
362
+ assignedMint = _y.sent();
363
+ record('E: assigned-update staff UNSCOPED for an assigned patient', !hasScope(assignedMint.enduser), "sessionScopes=".concat(JSON.stringify((_w = assignedMint.enduser) === null || _w === void 0 ? void 0 : _w.sessionScopes)));
364
+ return [4 /*yield*/, assignedUpdateStaff.api.endusers.generate_auth_token({ id: enduser.id })];
365
+ case 46:
366
+ assignedMintUnassigned = _y.sent();
367
+ record('E: assigned-update staff SCOPED for an unassigned patient', hasScope(assignedMintUnassigned.enduser), "sessionScopes=".concat(JSON.stringify((_x = assignedMintUnassigned.enduser) === null || _x === void 0 ? void 0 : _x.sessionScopes)));
368
+ /* ===== report: print full table first, then assert (harness exits on first failure) ===== */
369
+ console.log('\n F-0138 check summary:');
370
+ for (_d = 0, checks_1 = checks; _d < checks_1.length; _d++) {
371
+ c = checks_1[_d];
372
+ console.log(" ".concat(c.pass ? 'PASS' : 'FAIL', " ").concat(c.label, " \u2014 ").concat(c.detail));
373
+ }
374
+ console.log('');
375
+ for (_e = 0, checks_2 = checks; _e < checks_2.length; _e++) {
376
+ c = checks_2[_e];
377
+ (0, testing_1.assert)(c.pass, "".concat(c.label, " \u2014 ").concat(c.detail), c.label);
378
+ }
379
+ return [3 /*break*/, 66];
380
+ case 47:
381
+ _f = 0, enduserIds_1 = enduserIds;
382
+ _y.label = 48;
383
+ case 48:
384
+ if (!(_f < enduserIds_1.length)) return [3 /*break*/, 53];
385
+ id = enduserIds_1[_f];
386
+ _y.label = 49;
387
+ case 49:
388
+ _y.trys.push([49, 51, , 52]);
389
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(id)];
390
+ case 50:
391
+ _y.sent();
392
+ return [3 /*break*/, 52];
393
+ case 51:
394
+ _g = _y.sent();
395
+ return [3 /*break*/, 52];
396
+ case 52:
397
+ _f++;
398
+ return [3 /*break*/, 48];
399
+ case 53:
400
+ _h = 0, userIds_1 = userIds;
401
+ _y.label = 54;
402
+ case 54:
403
+ if (!(_h < userIds_1.length)) return [3 /*break*/, 59];
404
+ id = userIds_1[_h];
405
+ _y.label = 55;
406
+ case 55:
407
+ _y.trys.push([55, 57, , 58]);
408
+ return [4 /*yield*/, sdk.api.users.deleteOne(id)];
409
+ case 56:
410
+ _y.sent();
411
+ return [3 /*break*/, 58];
412
+ case 57:
413
+ _j = _y.sent();
414
+ return [3 /*break*/, 58];
415
+ case 58:
416
+ _h++;
417
+ return [3 /*break*/, 54];
418
+ case 59:
419
+ _k = 0, roleIds_1 = roleIds;
420
+ _y.label = 60;
421
+ case 60:
422
+ if (!(_k < roleIds_1.length)) return [3 /*break*/, 65];
423
+ id = roleIds_1[_k];
424
+ _y.label = 61;
425
+ case 61:
426
+ _y.trys.push([61, 63, , 64]);
427
+ return [4 /*yield*/, sdk.api.role_based_access_permissions.deleteOne(id)];
428
+ case 62:
429
+ _y.sent();
430
+ return [3 /*break*/, 64];
431
+ case 63:
432
+ _l = _y.sent();
433
+ return [3 /*break*/, 64];
434
+ case 64:
435
+ _k++;
436
+ return [3 /*break*/, 60];
437
+ case 65: return [7 /*endfinally*/];
438
+ case 66: return [2 /*return*/];
439
+ }
440
+ });
441
+ });
442
+ };
443
+ exports.readonly_enduser_preview_tests = readonly_enduser_preview_tests;
444
+ // Allow running this test file independently
445
+ if (require.main === module) {
446
+ console.log("\uD83C\uDF10 Using API URL: ".concat(host));
447
+ var sdk_2 = new sdk_1.Session({ host: host });
448
+ var sdkNonAdmin_1 = new sdk_1.Session({ host: host });
449
+ var runTests = function () { return __awaiter(void 0, void 0, void 0, function () {
450
+ return __generator(this, function (_a) {
451
+ switch (_a.label) {
452
+ case 0: return [4 /*yield*/, (0, setup_1.setup_tests)(sdk_2, sdkNonAdmin_1)];
453
+ case 1:
454
+ _a.sent();
455
+ return [4 /*yield*/, (0, exports.readonly_enduser_preview_tests)({ sdk: sdk_2, sdkNonAdmin: sdkNonAdmin_1 })];
456
+ case 2:
457
+ _a.sent();
458
+ return [2 /*return*/];
459
+ }
460
+ });
461
+ }); };
462
+ runTests()
463
+ .then(function () {
464
+ console.log("✅ F-0138 portal-preview scope test suite completed successfully");
465
+ process.exit(0);
466
+ })
467
+ .catch(function (error) {
468
+ console.error("❌ F-0138 portal-preview scope test suite failed:", error);
469
+ process.exit(1);
470
+ });
471
+ }
472
+ //# sourceMappingURL=readonly-enduser-preview.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readonly-enduser-preview.test.js","sourceRoot":"","sources":["../../../../../src/tests/api_tests/security/readonly-enduser-preview.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="node" />
1
2
  import { Session, SessionOptions } from "./session";
2
3
  import { APIQuery, BulkLoadOptions } from "./sdk";
3
4
  import { FileDetails, ReactNativeFile, S3PresignedPost, SessionType, UserIdentity } from "@tellescope/types-utilities";
@@ -1 +1 @@
1
- {"version":3,"file":"enduser.d.ts","sourceRoot":"","sources":["../../src/enduser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAGjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AACtH,OAAO,EACL,QAAQ,EACR,SAAS,EACV,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAEL,2BAA2B,EAC3B,OAAO,EACP,IAAI,EACJ,OAAO,EACP,eAAe,EAChB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAU,aAAa,EAAE,aAAa,EAAE,aAAa,EAAgB,MAAM,oBAAoB,CAAA;AAEtG,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IAAG,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAEvG,KAAK,uBAAuB,GAAG,CAC3B,UAAU,GACV,2BAA2B,GAC3B,OAAO,GACP,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,aAAa,GACb,SAAS,GACT,iBAAiB,GACjB,0BAA0B,GAC1B,mBAAmB,GACnB,sBAAsB,GACtB,aAAa,GACb,QAAQ,GACR,yBAAyB,GACzB,oCAAoC,GACpC,eAAe,GACf,YAAY,GACZ,eAAe,GACf,UAAU,GACV,uBAAuB,GACvB,sBAAsB,GACtB,YAAY,GACZ,eAAe,GACf,cAAc,GACd,UAAU,GACV,WAAW,GACX,kBAAkB,GAClB,uBAAuB,GACvB,qBAAqB,GACrB,gBAAgB,GAChB,wBAAwB,GACxB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,eAAe,GACf,OAAO,GACP,6BAA6B,GAC7B,gBAAgB,CACnB,CAAA;AAED,eAAO,MAAM,cAAc,uEACtB,cAAc,KAAK,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"enduser.d.ts","sourceRoot":"","sources":["../../src/enduser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAGjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AACtH,OAAO,EACL,QAAQ,EACR,SAAS,EACV,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAEL,2BAA2B,EAC3B,OAAO,EACP,IAAI,EACJ,OAAO,EACP,eAAe,EAChB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAU,aAAa,EAAE,aAAa,EAAE,aAAa,EAAgB,MAAM,oBAAoB,CAAA;AAEtG,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IAAG,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAEvG,KAAK,uBAAuB,GAAG,CAC3B,UAAU,GACV,2BAA2B,GAC3B,OAAO,GACP,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,aAAa,GACb,SAAS,GACT,iBAAiB,GACjB,0BAA0B,GAC1B,mBAAmB,GACnB,sBAAsB,GACtB,aAAa,GACb,QAAQ,GACR,yBAAyB,GACzB,oCAAoC,GACpC,eAAe,GACf,YAAY,GACZ,eAAe,GACf,UAAU,GACV,uBAAuB,GACvB,sBAAsB,GACtB,YAAY,GACZ,eAAe,GACf,cAAc,GACd,UAAU,GACV,WAAW,GACX,kBAAkB,GAClB,uBAAuB,GACvB,qBAAqB,GACrB,gBAAgB,GAChB,wBAAwB,GACxB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,eAAe,GACf,OAAO,GACP,6BAA6B,GAC7B,gBAAgB,CACnB,CAAA;AAED,eAAO,MAAM,cAAc,uEACtB,cAAc,KAAK,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBxD,CAAA;AAED,KAAK,cAAc,GAAG;KAAG,CAAC,IAAI,uBAAuB,GAAG,QAAQ,CAAC,CAAC,CAAC;CAAE,GAAG;IACtE,QAAQ,EAAE;QACR,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5B,oBAAoB,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACjH,cAAc,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAClG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC/E,CAAC;QACF,YAAY,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC9F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC7E,CAAC;QACF,WAAW,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC5F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC5E,CAAC;QACF,eAAe,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACpG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAChF,CAAC;QACF,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACtF,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACzE,CAAC;QACF,UAAU,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC1F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC3E,CAAC;KACH,CAAC;IACF,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,CAAA;KAC/C,CAAC;IACF,KAAK,EAAE;QACL,mBAAmB,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG;YAAE,UAAU,CAAC,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,OAAO,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,KAAK,OAAO,CAAC;YAAE,eAAe,EAAE,eAAe,CAAC;YAAC,IAAI,EAAE,IAAI,CAAA;SAAE,CAAC,CAAC;QAC5L,iBAAiB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,KAC5E,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,mBAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACrG,mBAAmB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,YAAY,CAAC,CAAC,KAChF,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;KACxG,CAAC;IACF,WAAW,EAAE;QACX,0BAA0B,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,4BAA4B,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC7H,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC9F,CAAC;QACF,YAAY,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACjG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAChF,CAAC;KAIH,CAAC;IACF,cAAc,EAAE;QACd,mBAAmB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAClH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC1F,CAAC;QACF,oBAAoB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,sBAAsB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACpH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC3F,CAAC;QACF,qBAAqB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACtH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC5F,CAAC;QACF,uBAAuB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,yBAAyB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC1H,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC9F,CAAC;QACF,oBAAoB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,sBAAsB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACpH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC3F,CAAC;QACF,cAAc,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACxG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACrF,CAAC;QACF,iBAAiB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC9G,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,mBAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACxF,CAAC;KACH,CAAC;IACF,QAAQ,EAAE;QACR,aAAa,EAAE,CAAC,IAAI,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC;YAAE,QAAQ,EAAE,QAAQ,CAAC;YAAC,MAAM,EAAE,YAAY,EAAE,CAAA;SAAE,CAAC,CAAC;QACjG,WAAW,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,sBAAsB,EAAE,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,wBAAwB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACnH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,wBAAwB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACvF,CAAC;KACH,CAAC;IACF,UAAU,EAAE;QACV,YAAY,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAChG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC/E,CAAC;QACF,SAAS,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC1F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC5E,CAAC;KACH,CAAC;IACF,UAAU,EAAE;QACV,MAAM,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACpF,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACzE,CAAC;QACF,WAAW,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC9F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC9E,CAAC;KACH,CAAC;IACF,aAAa,EAAE;QACb,SAAS,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC7F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC/E,CAAC;KACH,CAAC;IACF,YAAY,EAAE;QACZ,aAAa,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACpG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAClF,CAAC;KACH,CAAC;IACF,eAAe,EAAE;QACf,4BAA4B,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,8BAA8B,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACrI,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACpG,CAAC;QACF,gBAAgB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC7G,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACxF,CAAC;QACF,cAAc,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACzG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACtF,CAAC;QACF,sCAAsC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,wCAAwC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACzJ,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC9G,CAAC;QACF,qBAAqB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACvH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC7F,CAAC;QACF,oCAAoC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,sCAAsC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACrJ,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC5G,CAAC;QACF,iBAAiB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC/G,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,mBAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACzF,CAAC;KACH,CAAC;IACF,uBAAuB,EAAE;QACvB,MAAM,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACjG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACtF,CAAC;KACH,CAAC;IACF,KAAK,EAAE;QACL,mBAAmB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACzG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACjF,CAAC;KACH,CAAC;IACF,yBAAyB,EAAE;QACzB,qBAAqB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACjI,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACvG,CAAC;KACH,CAAC;IACF,QAAQ,EAAE;QACR,uBAAuB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,yBAAyB,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACpH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACxF,CAAC;QACF,yBAAyB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,2BAA2B,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CACxH,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,2BAA2B,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC1F,CAAC;KACH,CAAC;IACF,YAAY,EAAE;QACZ,UAAU,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC9F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAC/E,CAAC;QACF,WAAW,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAChG,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAChF,CAAC;KACH,CAAC;IACF,oBAAoB,EAAE;QACpB,IAAI,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAC1F,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACjF,CAAC;KACH,CAAC;CACH,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;AA8C7I,qBAAa,cAAe,SAAQ,OAAO;IACzC,QAAQ,EAAG,OAAO,GAAG;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACzE,GAAG,EAAE,cAAc,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,WAAW,CAAa;gBAElB,CAAC,EAAE,qBAAqB;IA8EpC,SAAS,SAAgB;QAAE,IAAI,EAAE;YAAE,KAAK,EAAE,SAAS,CAAC;YAAC,OAAO,CAAC,EAAE,eAAe,CAAA;SAAE,EAAE,CAAA;KAAE;iBAEnC,CAAC,IAAI,GAAG;YAAE,OAAO,EAAE,GAAG,EAAE,CAAA;SAAE,CAAC,EAAE;OAC7E;IAED,KAAK,0BAA8B,MAAM,+DAGxC;IAED,IAAI,0BAA8B,MAAM,6DAA4C;QAAE,YAAY,CAAC,EAAE,aAAa,CAAA;KAAE,gBAGnH;IAED,MAAM,0BAA8B,MAAM,iEAGzC;IAED,OAAO,0BAA8B,MAAM,+DAG1C;IAED,uBAAuB;;;;;;aAA6I,IAAI,GAAG,MAAM,GAAG,eAAe;;;OAQlM;IAED,kBAAkB;mBAA+C,MAAM;iBAAW,OAAO;;;;;;;OAQxF;IAED,YAAY,UAAiB,MAAM,YAAY,MAAM,MAAM;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;OAKxF;IAED,gBAAgB,MAAa,KAAK,cAAc,aAAa,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,GAAG,iBAAiB,CAAC;;;;OAS9I;IAED,QAAQ,SAAgB,KAAK,cAAc,aAAa,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,iBAIvI;IAED,sBAAsB,SAAgB,cAAc,aAAa,CAAC,UAAU,CAAC,CAAC,wBAAwB,CAAC,CAAC,YAAY,CAAC,CAAC,iBAMrH;IAED,cAAc,SAAgB,cAAc,aAAa,CAAC,UAAU,CAAC,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,iBAMrG;IAED,eAAe,UAAiB;QAAE,uBAAuB,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;OAGpE;IAED,gCAAgC;;;;;;mBAM/B;IAED,MAAM,sBAGL;IAED,kBAAkB,wBAAuD;CAC1E"}