@astram/frontend-core 0.7.0 → 0.8.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.
@@ -1,32 +1,70 @@
1
- export function createIdentityService(http) {
2
- /**
3
- * Build a `?page&limit&search&sortBy&sortOrder` query string from a DataTable
4
- * options bag, omitting anything absent/empty so the server applies its defaults.
5
- * Values are URL-encoded. Returns '' (no leading '?') when nothing is set.
6
- *
7
- * Built with plain `encodeURIComponent` (not `URLSearchParams`) — this package has
8
- * no `lib.dom`/Node ambient types (it must run unchanged on web AND React Native,
9
- * where `URLSearchParams` isn't guaranteed to exist), and every key here is set at
10
- * most once, so a manual `key=value` join is byte-identical to the source's
11
- * `URLSearchParams#toString()` output.
12
- */
13
- function listQueryString(opts) {
14
- const o = opts ?? {};
15
- const parts = [];
16
- if (Number.isFinite(o.page) && o.page >= 1)
17
- parts.push(`page=${encodeURIComponent(String(o.page))}`);
18
- if (Number.isFinite(o.limit) && o.limit >= 1) {
19
- parts.push(`limit=${encodeURIComponent(String(o.limit))}`);
20
- }
21
- const search = typeof o.search === 'string' ? o.search.trim() : '';
22
- if (search.length > 0)
23
- parts.push(`search=${encodeURIComponent(search)}`);
24
- if (typeof o.sortBy === 'string' && o.sortBy.length > 0) {
25
- parts.push(`sortBy=${encodeURIComponent(o.sortBy)}`);
26
- parts.push(`sortOrder=${encodeURIComponent(o.sortOrder === 'desc' ? 'desc' : 'asc')}`);
27
- }
28
- return parts.length > 0 ? `?${parts.join('&')}` : '';
1
+ const SIGN_IN_ADMIN_MESSAGES = {
2
+ code_required: 'Enter your authenticator code.',
3
+ invalid_code: 'That code is not valid. Try a new one.',
4
+ admin_needs_mfa: 'Set up two-factor sign-in on your own account first.',
5
+ forbidden: 'You do not have access to do this.',
6
+ not_authenticated: 'Not authenticated (no/invalid token).',
7
+ not_found: 'User not found.',
8
+ rate_limited: 'Too many attempts. Please wait a few minutes and try again.',
9
+ unavailable: 'The service is temporarily unavailable. Nothing was changed; please try again.',
10
+ partially_applied: 'The action was only partly applied. It is safe to try again.',
11
+ unreachable: 'Cannot reach the server. Is it running?',
12
+ failed: 'The action failed. Please try again.',
13
+ };
14
+ /** Map an admin sign-in action's failure to its reason (never echoes the server body). */
15
+ function signInAdminReason(status, data) {
16
+ const code = data !== null && typeof data === 'object' ? data.error : undefined;
17
+ switch (status) {
18
+ case 0:
19
+ return 'unreachable';
20
+ case 400:
21
+ return code === 'mfa_required' ? 'code_required' : 'invalid_code';
22
+ case 401:
23
+ return 'not_authenticated';
24
+ case 403:
25
+ return 'forbidden';
26
+ case 404:
27
+ return 'not_found';
28
+ case 409:
29
+ return code === 'mfa_required' ? 'admin_needs_mfa' : 'failed';
30
+ case 429:
31
+ return 'rate_limited';
32
+ case 503:
33
+ return code === 'partially_applied' ? 'partially_applied' : 'unavailable';
34
+ default:
35
+ return 'failed';
29
36
  }
37
+ }
38
+ /**
39
+ * Build a `?page&limit&search&sortBy&sortOrder` query string from a DataTable
40
+ * options bag, omitting anything absent/empty so the server applies its defaults.
41
+ * Values are URL-encoded. Returns '' (no leading '?') when nothing is set.
42
+ *
43
+ * Built with plain `encodeURIComponent` (not `URLSearchParams`) — this package has
44
+ * no `lib.dom`/Node ambient types (it must run unchanged on web AND React Native,
45
+ * where `URLSearchParams` isn't guaranteed to exist), and every key here is set at
46
+ * most once, so a manual `key=value` join is byte-identical to the source's
47
+ * `URLSearchParams#toString()` output. Shared with the other identity services (not
48
+ * part of the package barrel).
49
+ */
50
+ export function listQueryString(opts) {
51
+ const o = opts ?? {};
52
+ const parts = [];
53
+ if (Number.isFinite(o.page) && o.page >= 1)
54
+ parts.push(`page=${encodeURIComponent(String(o.page))}`);
55
+ if (Number.isFinite(o.limit) && o.limit >= 1) {
56
+ parts.push(`limit=${encodeURIComponent(String(o.limit))}`);
57
+ }
58
+ const search = typeof o.search === 'string' ? o.search.trim() : '';
59
+ if (search.length > 0)
60
+ parts.push(`search=${encodeURIComponent(search)}`);
61
+ if (typeof o.sortBy === 'string' && o.sortBy.length > 0) {
62
+ parts.push(`sortBy=${encodeURIComponent(o.sortBy)}`);
63
+ parts.push(`sortOrder=${encodeURIComponent(o.sortOrder === 'desc' ? 'desc' : 'asc')}`);
64
+ }
65
+ return parts.length > 0 ? `?${parts.join('&')}` : '';
66
+ }
67
+ export function createIdentityService(http) {
30
68
  /**
31
69
  * Shared translator for a failure response → a friendly result. Centralizes the
32
70
  * 401/403/other mapping so every method reports consistently.
@@ -40,6 +78,46 @@ export function createIdentityService(http) {
40
78
  }
41
79
  return { ok: false, status: r.status, error: generic };
42
80
  }
81
+ /**
82
+ * Like {@link fail}, but keeps the server's `message` for every status except 401 (the
83
+ * `moveCompany` rule): a duplicate name (409), an out-of-reach row (404) or a bad name (400)
84
+ * says why the write was refused.
85
+ */
86
+ function refusal(r, generic) {
87
+ const reason = r.data?.message;
88
+ if (r.status !== 401 && typeof reason === 'string' && reason.length > 0) {
89
+ return { ok: false, status: r.status, error: reason };
90
+ }
91
+ return fail(r, generic);
92
+ }
93
+ /** A company-scoped catalog list response → result (`total/page/limit` only when sent). */
94
+ function catalogRows(data) {
95
+ const body = data;
96
+ return {
97
+ ok: true,
98
+ rows: body?.rows ?? [],
99
+ ...(typeof body?.total === 'number' ? { total: body.total } : {}),
100
+ ...(typeof body?.page === 'number' ? { page: body.page } : {}),
101
+ ...(typeof body?.limit === 'number' ? { limit: body.limit } : {}),
102
+ };
103
+ }
104
+ /** A create response `{ uuid, name }` → result; falls back to the sent name. */
105
+ function createdOrgUnit(data, sentName) {
106
+ const body = (data ?? {});
107
+ return {
108
+ ok: true,
109
+ uuid: typeof body.uuid === 'string' ? body.uuid : '',
110
+ name: typeof body.name === 'string' ? body.name : sentName,
111
+ };
112
+ }
113
+ /** One admin sign-in action: POST `{ code }`, map a failure to its reason (fixed message). */
114
+ async function signInAdmin(accessToken, userUuid, action, code) {
115
+ const r = await http.post(`/identity/users/${encodeURIComponent(userUuid)}/${action}`, { code }, { bearerToken: accessToken });
116
+ if (r.ok)
117
+ return { ok: true };
118
+ const reason = signInAdminReason(r.status, r.data);
119
+ return { ok: false, status: r.status, reason, error: SIGN_IN_ADMIN_MESSAGES[reason] };
120
+ }
43
121
  return {
44
122
  // ── Companies ────────────────────────────────────────────────────────────
45
123
  /**
@@ -103,6 +181,21 @@ export function createIdentityService(http) {
103
181
  return { ok: true };
104
182
  return fail(r, 'Could not delete the company.');
105
183
  },
184
+ /**
185
+ * Move a company under a new parent (`null` = top level) → { ok:true } | { ok:false, ... }.
186
+ * The server's fixed message is kept (cycle 409, outside your reach 403, not found 404,
187
+ * bad parent 400), since it says why the move was refused.
188
+ */
189
+ async moveCompany(accessToken, uuid, parentUuid) {
190
+ const r = await http.put(`/identity/companies/${encodeURIComponent(uuid)}/parent`, { parentUuid }, { bearerToken: accessToken });
191
+ if (r.ok)
192
+ return { ok: true };
193
+ const reason = r.data?.message;
194
+ if (r.status !== 401 && typeof reason === 'string' && reason.length > 0) {
195
+ return { ok: false, status: r.status, error: reason };
196
+ }
197
+ return fail(r, 'Could not move the company.');
198
+ },
106
199
  // ── Roles ────────────────────────────────────────────────────────────────
107
200
  /**
108
201
  * List roles with server-side DataTable paging/search (name)/sort (name).
@@ -157,6 +250,40 @@ export function createIdentityService(http) {
157
250
  return { ok: true };
158
251
  return fail(r, 'Could not delete the role.');
159
252
  },
253
+ /**
254
+ * List one company's own roles (G-013, `identity:role:read`) with the same paging, search
255
+ * (name) and sort (`name`, `createdAt`) as `listRoles`. The server reaches the company
256
+ * through the walled read first (404 outside the caller's subtree).
257
+ * Resolves: { ok:true, total, rows, page, limit } | { ok:false, ... }.
258
+ */
259
+ async listCompanyRoles(accessToken, companyUuid, opts) {
260
+ const r = await http.get(`/identity/companies/${encodeURIComponent(companyUuid)}/roles${listQueryString(opts)}`, {
261
+ bearerToken: accessToken,
262
+ ...(opts?.signal ? { signal: opts.signal } : {}),
263
+ });
264
+ if (r.ok) {
265
+ const data = r.data;
266
+ return {
267
+ ok: true,
268
+ total: data?.total ?? 0,
269
+ rows: data?.rows ?? [],
270
+ page: data?.page ?? 1,
271
+ limit: data?.limit ?? data?.rows?.length ?? 0,
272
+ };
273
+ }
274
+ return fail(r, 'Could not load roles.');
275
+ },
276
+ /**
277
+ * Create a role owned by a company (G-013, `identity:role:create`) → { ok:true, uuid, name }.
278
+ * `name` is the stored (normalised) name. A refusal keeps the server's message (duplicate
279
+ * in this company 409, bad name 400, company out of reach 404).
280
+ */
281
+ async createCompanyRole(accessToken, companyUuid, name) {
282
+ const r = await http.post(`/identity/companies/${encodeURIComponent(companyUuid)}/roles`, { name }, { bearerToken: accessToken });
283
+ if (r.ok)
284
+ return createdOrgUnit(r.data, name);
285
+ return refusal(r, 'Could not create the role.');
286
+ },
160
287
  // ── Role permissions (grant admin) ────────────────────────────────────────
161
288
  /** List grantable permission keys + wildcards → { ok:true, catalog, wildcards } | { ok:false, ... }. */
162
289
  async listPermissionCatalog(accessToken) {
@@ -347,6 +474,23 @@ export function createIdentityService(http) {
347
474
  return { ok: true };
348
475
  return fail(r, 'Could not delete the user.');
349
476
  },
477
+ // ── Admin sign-in controls (auth capabilities R11) ──────────────────────
478
+ /**
479
+ * Reset a user's 2FA (`POST /identity/users/:uuid/reset-mfa`, `identity:user:reset_mfa`):
480
+ * deletes their devices and recovery codes and ends their sessions. `code` is the ADMIN's
481
+ * own current authenticator code. → { ok:true } | { ok:false, status, reason, error }.
482
+ */
483
+ resetUserMfa(accessToken, userUuid, code) {
484
+ return signInAdmin(accessToken, userUuid, 'reset-mfa', code);
485
+ },
486
+ /** Clear a user's sign-in lockout (`.../unlock`, `identity:user:unlock`); see resetUserMfa. */
487
+ unlockUser(accessToken, userUuid, code) {
488
+ return signInAdmin(accessToken, userUuid, 'unlock', code);
489
+ },
490
+ /** End all of a user's sessions (`.../end-sessions`, `identity:user:end_sessions`). */
491
+ endUserSessions(accessToken, userUuid, code) {
492
+ return signInAdmin(accessToken, userUuid, 'end-sessions', code);
493
+ },
350
494
  // ── Memberships + postings (Phase 5's Assignments editor) ─────────────────
351
495
  /**
352
496
  * The user's membership cards + their postings, with EVERY uuid resolved to a
@@ -398,27 +542,72 @@ export function createIdentityService(http) {
398
542
  return { ok: true };
399
543
  return fail(r, 'Could not save the postings.');
400
544
  },
401
- // ── Company-scoped catalogs (dept/branch option lists for the posting editor) ──
545
+ // ── Company-scoped catalogs (departments and branches, G-012) ─────────────
402
546
  //
403
- // These back the company-scoped dropdowns in Phase 5's Assignments editor. The
404
- // server route lands with that phase; until then the call resolves { ok:false }
405
- // gracefully (the editor treats an empty catalog as "no options yet").
406
- /** List a company's departments → { ok:true, rows } | { ok:false, ... }. */
407
- async listDepartments(accessToken, companyUuid) {
408
- const r = await http.get(`/identity/companies/${encodeURIComponent(companyUuid)}/departments`, { bearerToken: accessToken });
409
- if (r.ok)
410
- return { ok: true, rows: r.data?.rows ?? [] };
547
+ // Each company owns its departments and branches. The lists back the Assignments
548
+ // editor's dropdowns and the Org structure page; the server walls the company to the
549
+ // caller's subtree (404 outside it). Without `opts` the server returns every row (up to
550
+ // its 1000-per-company cap); with `{ page, limit, search }` one page.
551
+ /** List a company's departments → { ok:true, rows, total?, page?, limit? } | { ok:false, ... }. */
552
+ async listDepartments(accessToken, companyUuid, opts) {
553
+ const r = await http.get(`/identity/companies/${encodeURIComponent(companyUuid)}/departments${listQueryString(opts)}`, { bearerToken: accessToken });
554
+ if (r.ok)
555
+ return catalogRows(r.data);
411
556
  return fail(r, 'Could not load departments.');
412
557
  },
413
- /** List a company's branches → { ok:true, rows } | { ok:false, ... }. */
414
- async listBranches(accessToken, companyUuid) {
415
- const r = await http.get(`/identity/companies/${encodeURIComponent(companyUuid)}/branches`, {
416
- bearerToken: accessToken,
417
- });
558
+ /** List a company's branches → { ok:true, rows, total?, page?, limit? } | { ok:false, ... }. */
559
+ async listBranches(accessToken, companyUuid, opts) {
560
+ const r = await http.get(`/identity/companies/${encodeURIComponent(companyUuid)}/branches${listQueryString(opts)}`, { bearerToken: accessToken });
418
561
  if (r.ok)
419
- return { ok: true, rows: r.data?.rows ?? [] };
562
+ return catalogRows(r.data);
420
563
  return fail(r, 'Could not load branches.');
421
564
  },
565
+ /**
566
+ * Create a department in a company (`identity:department:create`) → { ok:true, uuid, name }.
567
+ * `name` is the stored (normalised) name. A refusal keeps the server's message (duplicate
568
+ * 409, bad name 400, company out of reach 404).
569
+ */
570
+ async createDepartment(accessToken, companyUuid, name) {
571
+ const r = await http.post(`/identity/companies/${encodeURIComponent(companyUuid)}/departments`, { name }, { bearerToken: accessToken });
572
+ if (r.ok)
573
+ return createdOrgUnit(r.data, name);
574
+ return refusal(r, 'Could not create the department.');
575
+ },
576
+ /** Rename a department (`identity:department:update`) → { ok:true } | { ok:false, ... }. */
577
+ async renameDepartment(accessToken, uuid, name) {
578
+ const r = await http.put(`/identity/departments/${encodeURIComponent(uuid)}`, { name }, { bearerToken: accessToken });
579
+ if (r.ok)
580
+ return { ok: true };
581
+ return refusal(r, 'Could not rename the department.');
582
+ },
583
+ /** Delete a department (`identity:department:delete`); 409 while assignments use it. */
584
+ async deleteDepartment(accessToken, uuid) {
585
+ const r = await http.delete(`/identity/departments/${encodeURIComponent(uuid)}`, {}, { bearerToken: accessToken });
586
+ if (r.ok)
587
+ return { ok: true };
588
+ return refusal(r, 'Could not delete the department.');
589
+ },
590
+ /** Create a branch in a company (`identity:branch:create`) → { ok:true, uuid, name }. */
591
+ async createBranch(accessToken, companyUuid, name) {
592
+ const r = await http.post(`/identity/companies/${encodeURIComponent(companyUuid)}/branches`, { name }, { bearerToken: accessToken });
593
+ if (r.ok)
594
+ return createdOrgUnit(r.data, name);
595
+ return refusal(r, 'Could not create the branch.');
596
+ },
597
+ /** Rename a branch (`identity:branch:update`) → { ok:true } | { ok:false, ... }. */
598
+ async renameBranch(accessToken, uuid, name) {
599
+ const r = await http.put(`/identity/branches/${encodeURIComponent(uuid)}`, { name }, { bearerToken: accessToken });
600
+ if (r.ok)
601
+ return { ok: true };
602
+ return refusal(r, 'Could not rename the branch.');
603
+ },
604
+ /** Delete a branch (`identity:branch:delete`); 409 while assignments use it. */
605
+ async deleteBranch(accessToken, uuid) {
606
+ const r = await http.delete(`/identity/branches/${encodeURIComponent(uuid)}`, {}, { bearerToken: accessToken });
607
+ if (r.ok)
608
+ return { ok: true };
609
+ return refusal(r, 'Could not delete the branch.');
610
+ },
422
611
  };
423
612
  }
424
613
  //# sourceMappingURL=identityService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identityService.js","sourceRoot":"","sources":["../../src/auth/identityService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identityService.js","sourceRoot":"","sources":["../../src/auth/identityService.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,16 @@
5
5
  * and MUST NOT be re-exported here.
6
6
  */
7
7
  export { createAuthService } from './authService.js';
8
+ export type { AuthService, AuthProfile, LoginResult, ResetPasswordResult, LoginOptionsResult, SignInMethod, CaptchaProvider, CaptchaMode, CaptchaOptions, CaptchaOpts, } from './authService.js';
9
+ export { restrictionReasonOf } from './restriction.js';
10
+ export type { RestrictionReason } from './restriction.js';
8
11
  export { createAccountService } from './accountService.js';
9
12
  export { createIdentityService } from './identityService.js';
10
- export type { SignInStatus, InviteUserResult } from './identityService.js';
13
+ export type { SignInStatus, InviteUserResult, UserMfaStatus, UserRecord, SignInAdminResult, SignInAdminFailureReason, } from './identityService.js';
14
+ export { createSecurityPolicyService } from './securityPolicyService.js';
15
+ export type { SecurityPolicyService, SecurityPolicyTargetKind, SecurityPolicyFields, SecurityPolicyRecord, CreateSecurityPolicyBody, UpdateSecurityPolicyBody, SecurityPolicyListResult, SecurityPolicyGetResult, SecurityPolicyCreateResult, SecurityPolicyMutateResult, } from './securityPolicyService.js';
11
16
  export { createAuditService } from './auditService.js';
17
+ export type { AuditActorKind, AuditQuery, AuditRecord, AuditService, ListAuditResult, } from './auditService.js';
12
18
  export { createCrossTenantService } from './crossTenantService.js';
13
19
  export { createRecordPolicyService } from './recordPolicyService.js';
14
20
  export type { RecordPolicyService, GuidedPolicy, PolicyCondition, PolicyOperator, PolicyRow, PolicyTypeSchema, PolicyFieldSchema, } from './recordPolicyService.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,YAAY,EACV,qBAAqB,EACrB,kBAAkB,EAClB,SAAS,EACT,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,SAAS,GACV,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,YAAY,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,WAAW,EACX,cAAc,EACd,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,YAAY,EACV,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,YAAY,EACV,cAAc,EACd,UAAU,EACV,WAAW,EACX,YAAY,EACZ,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,YAAY,EACV,qBAAqB,EACrB,kBAAkB,EAClB,SAAS,EACT,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,SAAS,GACV,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -5,8 +5,10 @@
5
5
  * and MUST NOT be re-exported here.
6
6
  */
7
7
  export { createAuthService } from './authService.js';
8
+ export { restrictionReasonOf } from './restriction.js';
8
9
  export { createAccountService } from './accountService.js';
9
10
  export { createIdentityService } from './identityService.js';
11
+ export { createSecurityPolicyService } from './securityPolicyService.js';
10
12
  export { createAuditService } from './auditService.js';
11
13
  export { createCrossTenantService } from './crossTenantService.js';
12
14
  export { createRecordPolicyService } from './recordPolicyService.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAUrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAazE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAarD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAS7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAazE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAQvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAUrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAazE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Restricted-session codes (auth capabilities R2.3, R13.2). A restricted session can only use the
3
+ * enrolment routes; every other call answers 403 with one of two fixed bodies:
4
+ * `{ error: 'reenrollment_required' }` — the account must re-enrol its authenticator
5
+ * `{ error: 'mfa_enrollment_required' }` — a security policy requires 2FA and none is set up
6
+ * The app's HTTP client checks a 403 body with {@link restrictionReasonOf} and routes both to the
7
+ * enrolment page. Platform-agnostic: it reads the parsed body only.
8
+ */
9
+ /** Why a session is restricted: re-enrol after recovery, or first enrolment required by policy. */
10
+ export type RestrictionReason = 'reenroll' | 'mfa_enrollment';
11
+ /**
12
+ * The restriction reason a response body carries, or `null` for any other body. Pass the parsed
13
+ * body of a 403 (the caller checks the status; the codes appear only on 403).
14
+ */
15
+ export declare function restrictionReasonOf(body: unknown): RestrictionReason | null;
16
+ //# sourceMappingURL=restriction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restriction.d.ts","sourceRoot":"","sources":["../../src/auth/restriction.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAE9D;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,GAAG,IAAI,CAM3E"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Restricted-session codes (auth capabilities R2.3, R13.2). A restricted session can only use the
3
+ * enrolment routes; every other call answers 403 with one of two fixed bodies:
4
+ * `{ error: 'reenrollment_required' }` — the account must re-enrol its authenticator
5
+ * `{ error: 'mfa_enrollment_required' }` — a security policy requires 2FA and none is set up
6
+ * The app's HTTP client checks a 403 body with {@link restrictionReasonOf} and routes both to the
7
+ * enrolment page. Platform-agnostic: it reads the parsed body only.
8
+ */
9
+ /**
10
+ * The restriction reason a response body carries, or `null` for any other body. Pass the parsed
11
+ * body of a 403 (the caller checks the status; the codes appear only on 403).
12
+ */
13
+ export function restrictionReasonOf(body) {
14
+ if (body === null || typeof body !== 'object')
15
+ return null;
16
+ const error = body.error;
17
+ if (error === 'reenrollment_required')
18
+ return 'reenroll';
19
+ if (error === 'mfa_enrollment_required')
20
+ return 'mfa_enrollment';
21
+ return null;
22
+ }
23
+ //# sourceMappingURL=restriction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restriction.js","sourceRoot":"","sources":["../../src/auth/restriction.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,KAAK,GAAI,IAA4B,CAAC,KAAK,CAAC;IAClD,IAAI,KAAK,KAAK,uBAAuB;QAAE,OAAO,UAAU,CAAC;IACzD,IAAI,KAAK,KAAK,yBAAyB;QAAE,OAAO,gBAAgB,CAAC;IACjE,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * createSecurityPolicyService — platform-agnostic calls to the identity feature's mandatory-2FA
3
+ * policies (auth capabilities R2.1, R2.2, R2.6, R2.9). Like the other identity services it takes
4
+ * an injected HTTP client, carries no platform code and passes the bearer token per call. Every
5
+ * method resolves to a plain result object (never throws): `{ ok:true, ... }` on success,
6
+ * `{ ok:false, status, error }` on any non-2xx (0 = unreachable, 401 = not authenticated,
7
+ * 403 = denied (the server's fixed message when it gives one, e.g. lowering a policy needs more
8
+ * access), 400/409 = the server's fixed message, 404 = not found, 503 = try again, else generic).
9
+ *
10
+ * Server routes (all `@Classified` on `security_policy`, `identity:security_policy:<action>`):
11
+ * GET /identity/security-policies[?page&limit&search&sortBy&sortOrder] → { total, rows, page, limit }
12
+ * GET /identity/security-policies/:uuid → the record (empty when walled)
13
+ * POST /identity/security-policies { scopeNodeUuid?, platform?, targetKind, targetValue?, graceDays? } → { id }
14
+ * PUT /identity/security-policies/:uuid { targetValue?, graceDays? } → { success: true }
15
+ * DELETE /identity/security-policies/:uuid → { success: true }
16
+ *
17
+ * The scope node, platform flag and kind are fixed at create; changing them is a delete plus a
18
+ * create. Platform-floor rows are root only and never visible to other admins. `scopeNodeUuid`,
19
+ * a role `targetValue` and `createdBy` are ids: resolve them to names before display.
20
+ */
21
+ import type { HttpClient } from '../http/types.js';
22
+ import { type ListOpts } from './identityService.js';
23
+ /** `tenant`: everyone in the node's subtree; `role`: holders of a role; `permission`: holders of a key. */
24
+ export type SecurityPolicyTargetKind = 'tenant' | 'role' | 'permission';
25
+ /** The stored fields of one policy (engine field keys). */
26
+ export interface SecurityPolicyFields {
27
+ uuid?: string;
28
+ /** The company node the policy covers with its subtree; `null` on a platform-floor row. */
29
+ scopeNodeUuid?: string | null;
30
+ /** Platform floor (root only). */
31
+ platform?: boolean;
32
+ targetKind?: SecurityPolicyTargetKind;
33
+ /** Role uuid (`role`) or permission key / wildcard such as `identity:*` (`permission`); `null` for `tenant`. */
34
+ targetValue?: string | null;
35
+ /** 0–14. */
36
+ graceDays?: number;
37
+ createdBy?: string;
38
+ createdAtMs?: number;
39
+ updatedAtMs?: number;
40
+ [key: string]: unknown;
41
+ }
42
+ /** One policy as the server returns it (`{ id, fields }`); `id` is a key, never a display value. */
43
+ export interface SecurityPolicyRecord {
44
+ id: string;
45
+ fields: SecurityPolicyFields;
46
+ [key: string]: unknown;
47
+ }
48
+ /** Create body. Omit `scopeNodeUuid` for the caller's active organisation; `platform: true` is root only. */
49
+ export interface CreateSecurityPolicyBody {
50
+ scopeNodeUuid?: string;
51
+ platform?: boolean;
52
+ targetKind: SecurityPolicyTargetKind;
53
+ targetValue?: string | null;
54
+ graceDays?: number;
55
+ }
56
+ /** Update body: only the target value and the grace period can change. */
57
+ export interface UpdateSecurityPolicyBody {
58
+ targetValue?: string | null;
59
+ graceDays?: number;
60
+ }
61
+ type Failure = {
62
+ ok: false;
63
+ status: number;
64
+ error: string;
65
+ };
66
+ export type SecurityPolicyListResult = {
67
+ ok: true;
68
+ total: number;
69
+ rows: SecurityPolicyRecord[];
70
+ page: number;
71
+ limit: number;
72
+ } | Failure;
73
+ export type SecurityPolicyGetResult = {
74
+ ok: true;
75
+ policy: SecurityPolicyRecord | null;
76
+ } | Failure;
77
+ export type SecurityPolicyCreateResult = {
78
+ ok: true;
79
+ id: string | undefined;
80
+ } | Failure;
81
+ export type SecurityPolicyMutateResult = {
82
+ ok: true;
83
+ } | Failure;
84
+ export interface SecurityPolicyService {
85
+ list(accessToken: string, opts?: ListOpts): Promise<SecurityPolicyListResult>;
86
+ get(accessToken: string, uuid: string): Promise<SecurityPolicyGetResult>;
87
+ create(accessToken: string, body: CreateSecurityPolicyBody): Promise<SecurityPolicyCreateResult>;
88
+ update(accessToken: string, uuid: string, body: UpdateSecurityPolicyBody): Promise<SecurityPolicyMutateResult>;
89
+ remove(accessToken: string, uuid: string): Promise<SecurityPolicyMutateResult>;
90
+ }
91
+ export declare function createSecurityPolicyService(http: HttpClient): SecurityPolicyService;
92
+ export {};
93
+ //# sourceMappingURL=securityPolicyService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"securityPolicyService.d.ts","sourceRoot":"","sources":["../../src/auth/securityPolicyService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEtE,2GAA2G;AAC3G,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,MAAM,GAAG,YAAY,CAAC;AAExE,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2FAA2F;IAC3F,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,kCAAkC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,gHAAgH;IAChH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,oGAAoG;AACpG,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,oBAAoB,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,6GAA6G;AAC7G,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,wBAAwB,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,0EAA0E;AAC1E,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,KAAK,OAAO,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5D,MAAM,MAAM,wBAAwB,GAClC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,oBAAoB,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;AACnG,MAAM,MAAM,uBAAuB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC;AAClG,MAAM,MAAM,0BAA0B,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,OAAO,CAAC;AACxF,MAAM,MAAM,0BAA0B,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC9E,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACzE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACjG,MAAM,CACJ,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACvC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAChF;AAoDD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB,CAmEnF"}