@farthershore/farthershore-js 0.10.0 → 0.11.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.
- package/dist/client.d.ts +10 -5
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +1 -0
- package/dist/client.js.map +1 -1
- package/dist/components/auth-guard.d.ts +44 -12
- package/dist/components/auth-guard.d.ts.map +1 -1
- package/dist/components/auth-guard.js +28 -12
- package/dist/components/auth-guard.js.map +1 -1
- package/dist/components/auth.d.ts +18 -0
- package/dist/components/auth.d.ts.map +1 -1
- package/dist/components/auth.js +162 -3
- package/dist/components/auth.js.map +1 -1
- package/dist/config.d.ts +20 -11
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -7
- package/dist/config.js.map +1 -1
- package/dist/generated/version.d.ts +2 -2
- package/dist/generated/version.js +2 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/permissions.d.ts +16 -0
- package/dist/permissions.d.ts.map +1 -0
- package/dist/permissions.js +29 -0
- package/dist/permissions.js.map +1 -0
- package/dist/react/hooks.d.ts +4 -0
- package/dist/react/hooks.d.ts.map +1 -1
- package/dist/react/hooks.js +5 -0
- package/dist/react/hooks.js.map +1 -1
- package/dist/resources/account.d.ts +64 -1
- package/dist/resources/account.d.ts.map +1 -1
- package/dist/resources/account.js +96 -1
- package/dist/resources/account.js.map +1 -1
- package/dist/test-utils/mock-client.d.ts.map +1 -1
- package/dist/test-utils/mock-client.js +17 -2
- package/dist/test-utils/mock-client.js.map +1 -1
- package/dist/types.d.ts +49 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { type KeysResource } from "./resources/keys.js";
|
|
|
8
8
|
import { type UsageResource } from "./resources/usage.js";
|
|
9
9
|
import { type BillingResource } from "./resources/billing.js";
|
|
10
10
|
import { type PlansResource } from "./resources/plans.js";
|
|
11
|
-
import { type AuditLogsResource, type OrganizationsResource, type TeamResource } from "./resources/account.js";
|
|
11
|
+
import { type AuditLogsResource, type OrganizationsResource, type RbacResource, type TeamResource } from "./resources/account.js";
|
|
12
12
|
import { type FeatureHandle, type GatewayRequestInit } from "./resources/feature.js";
|
|
13
13
|
import { type EntitlementsResource, type FeaturesResource } from "./resources/entitlements.js";
|
|
14
14
|
import { type ApiResource } from "./resources/api.js";
|
|
@@ -39,10 +39,10 @@ export interface PrefetchSurface {
|
|
|
39
39
|
export interface FartherShoreClient {
|
|
40
40
|
/** The client's resolved runtime context (coreUrl, portalHost, businessId,
|
|
41
41
|
* auth/scoping state, …). `coreUrl`/`portalHost` are LAZY getters — reading
|
|
42
|
-
* them performs the `window.__FS_CONFIG__`/`location.host` resolution
|
|
43
|
-
* `coreUrl`
|
|
44
|
-
* snapshot of the client's current state. Mainly for
|
|
45
|
-
* prefer the typed resources for actual calls. */
|
|
42
|
+
* them performs the `window.__FS_CONFIG__`/`location.host` resolution
|
|
43
|
+
* (`coreUrl` falls back to the production platform); everything else is a
|
|
44
|
+
* live snapshot of the client's current state. Mainly for
|
|
45
|
+
* introspection/tests — prefer the typed resources for actual calls. */
|
|
46
46
|
readonly context: ClientContext;
|
|
47
47
|
/** Resolve + cache the business/env/gateway for the current portal host. Safe
|
|
48
48
|
* to call repeatedly (memoized). */
|
|
@@ -114,6 +114,11 @@ export interface FartherShoreClient {
|
|
|
114
114
|
readonly organizations: OrganizationsResource;
|
|
115
115
|
/** Team management on the current subscription. */
|
|
116
116
|
readonly team: TeamResource;
|
|
117
|
+
/** Managed-RBAC management on the current subscription (settings, the
|
|
118
|
+
* derived permission catalog, role CRUD) — team-org OWNER/ADMIN only.
|
|
119
|
+
* Configures UX + minted-token claims; the EDGE `permission` constraint
|
|
120
|
+
* is the security boundary. */
|
|
121
|
+
readonly rbac: RbacResource;
|
|
117
122
|
/** The subscriber-side audit log (cursor-paged). */
|
|
118
123
|
readonly auditLogs: AuditLogsResource;
|
|
119
124
|
/** Current subscriber entitlement maps from the pinned plan version. */
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAEnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAA2B,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1D,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/D;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,qEAAqE;IACrE,IAAI,IAAI,IAAI,CAAC;IACb,0EAA0E;IAC1E,EAAE,IAAI,IAAI,CAAC;IACX,gFAAgF;IAChF,KAAK,IAAI,IAAI,CAAC;IACd,6BAA6B;IAC7B,OAAO,IAAI,IAAI,CAAC;IAChB,qDAAqD;IACrD,YAAY,IAAI,IAAI,CAAC;IACrB,uDAAuD;IACvD,aAAa,IAAI,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC;;;;;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,4EAA4E;AAC5E,+EAA+E;AAC/E,sCAAsC;AAEtC,OAAO,EAGL,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAoB,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,OAAO,EAAuB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EACL,0BAA0B,GAE3B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,sBAAsB,GAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,kBAAkB,EAClB,qBAAqB,GAEtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAqB,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAsB,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EACL,qBAAqB,GAEtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAsB,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EACL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,10 @@ import { type ReactNode } from "react";
|
|
|
2
2
|
import type { AuthStrategy } from "../types.js";
|
|
3
3
|
/** The guard's resolved decision. `redirecting` carries the target the host
|
|
4
4
|
* should navigate to; `allowed` reveals the protected subtree; `loading`
|
|
5
|
-
* holds (no flash) until the auth layer settles
|
|
6
|
-
|
|
5
|
+
* holds (no flash) until the auth layer settles; `denied` means the user is
|
|
6
|
+
* signed in but lacks a required Managed-RBAC permission (FAR-700) — render
|
|
7
|
+
* the fallback, don't redirect. */
|
|
8
|
+
export type AuthGuardStatus = "loading" | "allowed" | "redirecting" | "denied";
|
|
7
9
|
export interface AuthGuardDecision {
|
|
8
10
|
status: AuthGuardStatus;
|
|
9
11
|
/** Present only when `status === "redirecting"` — where the host should go. */
|
|
@@ -19,13 +21,27 @@ export interface AuthGuardInput {
|
|
|
19
21
|
/** Where to send a signed-out user off an auth-required surface. Defaults to
|
|
20
22
|
* "/" (the public landing — the dev-portal-template convention). */
|
|
21
23
|
redirectTo?: string;
|
|
24
|
+
/** A Managed-RBAC permission the surface additionally requires (FAR-700),
|
|
25
|
+
* in the `<feature>:read|write` grammar. Checked via {@link hasPermission}
|
|
26
|
+
* AFTER the sign-in gate; a signed-in user lacking it → `denied`.
|
|
27
|
+
*
|
|
28
|
+
* ⚠️ UX ONLY: this hides UI, but the gateway's `permission` constraint is
|
|
29
|
+
* the security boundary — a call the user isn't permitted to make is
|
|
30
|
+
* denied at the edge regardless of what the client renders. */
|
|
31
|
+
requirePermission?: string;
|
|
32
|
+
/** The permission check (normally `useFsAuth().hasPermission`). Required
|
|
33
|
+
* for `requirePermission` to have any effect; returns false while the
|
|
34
|
+
* server-resolved permissions are still loading, so the guard denies
|
|
35
|
+
* first and reveals once they arrive. */
|
|
36
|
+
hasPermission?: (key: string) => boolean;
|
|
22
37
|
}
|
|
23
38
|
/**
|
|
24
39
|
* The pure auth-guard decision (no React, no router). While auth is loading →
|
|
25
40
|
* `loading`. Once loaded: a public surface (`requireAuth: false`) is always
|
|
26
41
|
* `allowed`; an auth-required surface is `allowed` for a signed-in user and
|
|
27
|
-
* `redirecting` (to `redirectTo` ?? "/") for a signed-out one.
|
|
28
|
-
*
|
|
42
|
+
* `redirecting` (to `redirectTo` ?? "/") for a signed-out one. A signed-in
|
|
43
|
+
* user missing `requirePermission` → `denied` (fallback, no redirect).
|
|
44
|
+
* Exported for direct use + unit testing; `useAuthGuard` is the React wrapper.
|
|
29
45
|
*/
|
|
30
46
|
export declare function planAuthGuard(input: AuthGuardInput): AuthGuardDecision;
|
|
31
47
|
export interface UseAuthGuardOptions {
|
|
@@ -33,6 +49,11 @@ export interface UseAuthGuardOptions {
|
|
|
33
49
|
requireAuth: boolean;
|
|
34
50
|
/** Where to send a signed-out user. Defaults to "/". */
|
|
35
51
|
redirectTo?: string;
|
|
52
|
+
/** A Managed-RBAC permission the surface additionally requires (FAR-700).
|
|
53
|
+
* Checked via the managed `useFsAuth().hasPermission` — a signed-in user
|
|
54
|
+
* lacking it resolves `denied` (fallback, no redirect). UX only; the edge
|
|
55
|
+
* `permission` constraint is the security boundary. */
|
|
56
|
+
requirePermission?: string;
|
|
36
57
|
/** sessionStorage key under which the current location is stashed before a
|
|
37
58
|
* redirect, so the host can restore the deep link after sign-in. When set
|
|
38
59
|
* (and in a browser), the guard writes `location.pathname + search` on a
|
|
@@ -56,10 +77,18 @@ export declare function useAuthGuard(opts: UseAuthGuardOptions): AuthGuardDecisi
|
|
|
56
77
|
export declare function resolveSignInDestination(strategy: AuthStrategy): string | null;
|
|
57
78
|
export interface RequireAuthProps {
|
|
58
79
|
children?: ReactNode;
|
|
59
|
-
/** Rendered while loading
|
|
60
|
-
*
|
|
61
|
-
* there's no
|
|
80
|
+
/** Rendered while loading, while redirecting (signed-out), or when a
|
|
81
|
+
* `requirePermission` check denies. Defaults to an aria-busy placeholder
|
|
82
|
+
* so assistive tech announces the pending state and there's no
|
|
83
|
+
* flash-of-protected-content. */
|
|
62
84
|
fallback?: ReactNode;
|
|
85
|
+
/** A Managed-RBAC permission (`<feature>:read|write`) the subtree
|
|
86
|
+
* additionally requires (FAR-700). A signed-in user lacking it gets the
|
|
87
|
+
* `fallback` (no redirect). Composes with the existing props: the
|
|
88
|
+
* sign-in gate still runs first. UX ONLY — the gateway's `permission`
|
|
89
|
+
* constraint is the security boundary, so a hidden control is a
|
|
90
|
+
* convenience, never a defense. */
|
|
91
|
+
requirePermission?: string;
|
|
63
92
|
/** Where a signed-out user should go. Surfaced on the decision so a host
|
|
64
93
|
* effect can navigate; `<RequireAuth>` itself never navigates. Defaults
|
|
65
94
|
* to "/". */
|
|
@@ -71,10 +100,13 @@ export interface RequireAuthProps {
|
|
|
71
100
|
onRedirect?: (redirectTo: string) => void;
|
|
72
101
|
}
|
|
73
102
|
/**
|
|
74
|
-
* Reveal `children` only when the user is signed in
|
|
75
|
-
* `
|
|
76
|
-
* `
|
|
77
|
-
*
|
|
103
|
+
* Reveal `children` only when the user is signed in (and, when
|
|
104
|
+
* `requirePermission` is set, holds that Managed-RBAC permission). While auth
|
|
105
|
+
* loads → `fallback` (aria-busy by default, no flash); signed-out →
|
|
106
|
+
* `fallback` and, if `onRedirect` is supplied, a call with the redirect
|
|
107
|
+
* target (the host navigates); permission-denied → `fallback` only (no
|
|
108
|
+
* redirect — the user is signed in, just under-permissioned). Self-managed
|
|
109
|
+
* under `<FartherShoreRoot>`.
|
|
78
110
|
*/
|
|
79
|
-
export declare function RequireAuth({ children, fallback, redirectTo, onRedirect, }: RequireAuthProps): import("react/jsx-runtime").JSX.Element;
|
|
111
|
+
export declare function RequireAuth({ children, fallback, requirePermission, redirectTo, onRedirect, }: RequireAuthProps): import("react/jsx-runtime").JSX.Element;
|
|
80
112
|
//# sourceMappingURL=auth-guard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-guard.d.ts","sourceRoot":"","sources":["../../src/components/auth-guard.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD
|
|
1
|
+
{"version":3,"file":"auth-guard.d.ts","sourceRoot":"","sources":["../../src/components/auth-guard.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD;;;;oCAIoC;AACpC,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,CAAC;AAE/E,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,eAAe,CAAC;IACxB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,wDAAwD;IACxD,MAAM,EAAE,OAAO,CAAC;IAChB,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,WAAW,EAAE,OAAO,CAAC;IACrB;yEACqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;oEAMgE;IAChE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;8CAG0C;IAC1C,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CAC1C;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG,iBAAiB,CAatE;AAED,MAAM,WAAW,mBAAmB;IAClC,2DAA2D;IAC3D,WAAW,EAAE,OAAO,CAAC;IACrB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;4DAGwD;IACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;oFAGgF;IAChF,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAID;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,iBAAiB,CA6BzE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,YAAY,GACrB,MAAM,GAAG,IAAI,CAEf;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;sCAGkC;IAClC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;;wCAKoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;kBAEc;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;0BAGsB;IACtB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAUD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,UAAU,EACV,UAAU,GACX,EAAE,gBAAgB,2CAiBlB"}
|
|
@@ -13,17 +13,23 @@ import { useFsAuth } from "./auth.js";
|
|
|
13
13
|
* The pure auth-guard decision (no React, no router). While auth is loading →
|
|
14
14
|
* `loading`. Once loaded: a public surface (`requireAuth: false`) is always
|
|
15
15
|
* `allowed`; an auth-required surface is `allowed` for a signed-in user and
|
|
16
|
-
* `redirecting` (to `redirectTo` ?? "/") for a signed-out one.
|
|
17
|
-
*
|
|
16
|
+
* `redirecting` (to `redirectTo` ?? "/") for a signed-out one. A signed-in
|
|
17
|
+
* user missing `requirePermission` → `denied` (fallback, no redirect).
|
|
18
|
+
* Exported for direct use + unit testing; `useAuthGuard` is the React wrapper.
|
|
18
19
|
*/
|
|
19
20
|
export function planAuthGuard(input) {
|
|
20
21
|
if (!input.loaded)
|
|
21
22
|
return { status: "loading" };
|
|
22
23
|
if (!input.requireAuth)
|
|
23
24
|
return { status: "allowed" };
|
|
24
|
-
if (input.signedIn)
|
|
25
|
-
return { status: "
|
|
26
|
-
|
|
25
|
+
if (!input.signedIn) {
|
|
26
|
+
return { status: "redirecting", redirectTo: input.redirectTo ?? "/" };
|
|
27
|
+
}
|
|
28
|
+
if (input.requirePermission !== undefined &&
|
|
29
|
+
!(input.hasPermission?.(input.requirePermission) ?? false)) {
|
|
30
|
+
return { status: "denied" };
|
|
31
|
+
}
|
|
32
|
+
return { status: "allowed" };
|
|
27
33
|
}
|
|
28
34
|
const DEFAULT_RETURN_TO_KEY = "fs-return-to";
|
|
29
35
|
/**
|
|
@@ -40,6 +46,8 @@ export function useAuthGuard(opts) {
|
|
|
40
46
|
signedIn: auth.signedIn,
|
|
41
47
|
requireAuth: opts.requireAuth,
|
|
42
48
|
redirectTo: opts.redirectTo,
|
|
49
|
+
requirePermission: opts.requirePermission,
|
|
50
|
+
hasPermission: auth.hasPermission,
|
|
43
51
|
});
|
|
44
52
|
const returnToKey = opts.returnToKey === undefined ? DEFAULT_RETURN_TO_KEY : opts.returnToKey;
|
|
45
53
|
useEffect(() => {
|
|
@@ -73,13 +81,20 @@ function AuthPending() {
|
|
|
73
81
|
return (_jsx("span", { "aria-busy": "true", "aria-live": "polite", style: { display: "contents" } }));
|
|
74
82
|
}
|
|
75
83
|
/**
|
|
76
|
-
* Reveal `children` only when the user is signed in
|
|
77
|
-
* `
|
|
78
|
-
* `
|
|
79
|
-
*
|
|
84
|
+
* Reveal `children` only when the user is signed in (and, when
|
|
85
|
+
* `requirePermission` is set, holds that Managed-RBAC permission). While auth
|
|
86
|
+
* loads → `fallback` (aria-busy by default, no flash); signed-out →
|
|
87
|
+
* `fallback` and, if `onRedirect` is supplied, a call with the redirect
|
|
88
|
+
* target (the host navigates); permission-denied → `fallback` only (no
|
|
89
|
+
* redirect — the user is signed in, just under-permissioned). Self-managed
|
|
90
|
+
* under `<FartherShoreRoot>`.
|
|
80
91
|
*/
|
|
81
|
-
export function RequireAuth({ children, fallback, redirectTo, onRedirect, }) {
|
|
82
|
-
const decision = useAuthGuard({
|
|
92
|
+
export function RequireAuth({ children, fallback, requirePermission, redirectTo, onRedirect, }) {
|
|
93
|
+
const decision = useAuthGuard({
|
|
94
|
+
requireAuth: true,
|
|
95
|
+
redirectTo,
|
|
96
|
+
requirePermission,
|
|
97
|
+
});
|
|
83
98
|
useEffect(() => {
|
|
84
99
|
if (decision.status === "redirecting" && decision.redirectTo) {
|
|
85
100
|
onRedirect?.(decision.redirectTo);
|
|
@@ -87,7 +102,8 @@ export function RequireAuth({ children, fallback, redirectTo, onRedirect, }) {
|
|
|
87
102
|
}, [decision.status, decision.redirectTo, onRedirect]);
|
|
88
103
|
if (decision.status === "allowed")
|
|
89
104
|
return _jsx(_Fragment, { children: children });
|
|
90
|
-
// loading OR
|
|
105
|
+
// loading, redirecting, OR permission-denied → the fallback (default:
|
|
106
|
+
// aria-busy placeholder).
|
|
91
107
|
return _jsx(_Fragment, { children: fallback ?? _jsx(AuthPending, {}) });
|
|
92
108
|
}
|
|
93
109
|
//# sourceMappingURL=auth-guard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-guard.js","sourceRoot":"","sources":["../../src/components/auth-guard.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,+DAA+D;AAC/D,gFAAgF;AAChF,0EAA0E;AAC1E,8EAA8E;AAC9E,yEAAyE;AACzE,EAAE;AACF,8CAA8C;AAE9C,OAAO,EAAE,SAAS,EAAkB,MAAM,OAAO,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-guard.js","sourceRoot":"","sources":["../../src/components/auth-guard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,24 @@ export interface FsAuth {
|
|
|
26
26
|
user: FsAuthUser | null;
|
|
27
27
|
/** Re-read the session (persona only; Clerk pushes its own state). */
|
|
28
28
|
refresh(): void;
|
|
29
|
+
/** Managed-RBAC product-role keys assigned to the signed-in user
|
|
30
|
+
* (FAR-700), server-resolved from `GET /me` — the SDK never decodes
|
|
31
|
+
* tokens client-side. `[]` while auth/permissions load and when signed
|
|
32
|
+
* out. */
|
|
33
|
+
roles: string[];
|
|
34
|
+
/** The user's resolved permission strings (`<feature>:read|write`
|
|
35
|
+
* grammar). Personal orgs / RBAC-off products resolve to `["*"]` (full
|
|
36
|
+
* access). `[]` while loading / signed out. */
|
|
37
|
+
permissions: string[];
|
|
38
|
+
/**
|
|
39
|
+
* Whether the signed-in user's permissions grant `key`. `"*"` grants
|
|
40
|
+
* everything; returns `false` while permissions load and when signed out.
|
|
41
|
+
*
|
|
42
|
+
* ⚠️ UX ONLY — hide affordances with it, but the gateway's `permission`
|
|
43
|
+
* constraint is the security boundary: a request the user isn't permitted
|
|
44
|
+
* to make is denied at the edge regardless of what the client renders.
|
|
45
|
+
*/
|
|
46
|
+
hasPermission(key: string): boolean;
|
|
29
47
|
}
|
|
30
48
|
export declare function useFsAuth(): FsAuth;
|
|
31
49
|
/** Like {@link useFsAuth} but null outside the managed auth layer — lets
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/components/auth.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/components/auth.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAU5D;;;+EAG+E;AAC/E,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,YAAY,CAAC;IACvB,gFAAgF;IAChF,MAAM,EAAE,OAAO,CAAC;IAChB;iFAC6E;IAC7E,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB;qFACiF;IACjF,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB;mCAC+B;IAC/B,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,sEAAsE;IACtE,OAAO,IAAI,IAAI,CAAC;IAChB;;;eAGW;IACX,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;oDAEgD;IAChD,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB;;;;;;;OAOG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACrC;AAaD,wBAAgB,SAAS,IAAI,MAAM,CAQlC;AAED;0EAC0E;AAC1E,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAEjD;AAID,sDAAsD;AACtD,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,kDAG7D;AAED;oCACoC;AACpC,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,kDAG9D;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,kDAGhE;AAED;;mEAEmE;AACnE,wBAAgB,cAAc,CAAC,EAC7B,SAA2C,EAC3C,QAAoB,GACrB,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,2CAOA;AAED,gDAAgD;AAChD,wBAAgB,eAAe,CAAC,EAC9B,SAA+C,EAC/C,QAAqB,GACtB,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,2CAWA;AAqZD;;;+CAG+C;AAC/C,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,aAAa,GAAG,SAAS,GAClC,aAAa,GAAG,SAAS,CAS3B;AAqED;iFACiF;AACjF,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAgBA;AAID;;0EAE0E;AAC1E,wBAAgB,YAAY,mDA6B3B"}
|
package/dist/components/auth.js
CHANGED
|
@@ -23,10 +23,20 @@ import { createContext, useContext, useEffect, useMemo, useRef, useState, } from
|
|
|
23
23
|
import { FartherShoreConfigError } from "../errors/index.js";
|
|
24
24
|
import { readRuntimeConfig } from "../config.js";
|
|
25
25
|
import { normalizeAuthUser } from "../auth-user.js";
|
|
26
|
+
import { permissionGrants } from "../permissions.js";
|
|
26
27
|
import { useFartherShore, useSession } from "../react/index.js";
|
|
28
|
+
import { useReactiveOrganizationId } from "../react/organization-context.js";
|
|
27
29
|
import { useOptionalFsTheme } from "./theme.js";
|
|
28
30
|
import { runSatelliteBoot } from "./satellite-boot.js";
|
|
29
31
|
const Ctx = createContext(null);
|
|
32
|
+
/** The pre-resolution authz slice every strategy provider starts from —
|
|
33
|
+
* `<FsAuthzBridge>` (mounted by {@link FsAuthProvider}) overlays the real
|
|
34
|
+
* server-resolved values once `GET /me` answers. */
|
|
35
|
+
const NO_AUTHZ = {
|
|
36
|
+
roles: [],
|
|
37
|
+
permissions: [],
|
|
38
|
+
hasPermission: () => false,
|
|
39
|
+
};
|
|
30
40
|
export function useFsAuth() {
|
|
31
41
|
const ctx = useContext(Ctx);
|
|
32
42
|
if (!ctx) {
|
|
@@ -91,6 +101,29 @@ function defaultSatelliteDomain() {
|
|
|
91
101
|
const parts = window.location.hostname.split(".");
|
|
92
102
|
return parts.length > 2 ? parts.slice(1).join(".") : undefined;
|
|
93
103
|
}
|
|
104
|
+
/** Set in signIn() right before the redirect; read by ClerkAuthBridge's
|
|
105
|
+
* sign-in-return recovery effect. sessionStorage is per-origin + per-tab, so it
|
|
106
|
+
* survives the sign-in round-trip back to the satellite. */
|
|
107
|
+
const SIGNIN_RETURN_PENDING_KEY = "fs-signin-return-pending";
|
|
108
|
+
/** Any positive `__client_uat*` cookie means a Clerk session exists on THIS
|
|
109
|
+
* origin (Clerk suffixes the name per publishable key). Not HttpOnly, so it is
|
|
110
|
+
* readable from JS — the same signal satellite-boot.ts's hasClerkSession uses. */
|
|
111
|
+
function hasClerkSessionCookie() {
|
|
112
|
+
if (typeof document === "undefined")
|
|
113
|
+
return false;
|
|
114
|
+
for (const part of document.cookie.split(";")) {
|
|
115
|
+
const eq = part.indexOf("=");
|
|
116
|
+
if (eq === -1)
|
|
117
|
+
continue;
|
|
118
|
+
const name = part.slice(0, eq).trim();
|
|
119
|
+
if (!name.startsWith("__client_uat"))
|
|
120
|
+
continue;
|
|
121
|
+
const value = Number(part.slice(eq + 1).trim());
|
|
122
|
+
if (Number.isFinite(value) && value > 0)
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
94
127
|
/** Installs Clerk's getToken as the client's token source (synchronously on
|
|
95
128
|
* render, so data hooks mounted alongside resolve tokens on first fetch) and
|
|
96
129
|
* publishes the FsAuth surface. */
|
|
@@ -120,12 +153,73 @@ function ClerkAuthBridge({ clerk, children, }) {
|
|
|
120
153
|
});
|
|
121
154
|
return () => fs.setOnUnauthorized(null);
|
|
122
155
|
}, [fs, clerkApi]);
|
|
156
|
+
// Dev-instance satellite login recovery. On a Clerk DEVELOPMENT instance a
|
|
157
|
+
// cross-subdomain satellite login transfers the session via `__clerk_db_jwt`,
|
|
158
|
+
// which can land the session cookie a beat AFTER the sign-in return has
|
|
159
|
+
// already rendered signed-out (the satellite boot planner suppresses auto-sync
|
|
160
|
+
// to avoid a portal→sign-in→portal loop). That is the "click login → must
|
|
161
|
+
// refresh to see the portal" symptom. Recover it AUTOMATICALLY: when a sign-in
|
|
162
|
+
// was just attempted (signIn() set the flag) and we rendered signed-out, poll
|
|
163
|
+
// briefly for the session cookie and reload ONCE the moment it appears —
|
|
164
|
+
// exactly what the manual refresh does. One-shot (the flag is cleared BEFORE
|
|
165
|
+
// the reload) + cookie-gated (only reloads INTO a real session), so it can
|
|
166
|
+
// never loop and never reloads a genuinely signed-out tab. No-op on the
|
|
167
|
+
// primary domain (same-origin login is signed-in immediately, so the flag is
|
|
168
|
+
// cleared without a reload).
|
|
169
|
+
useEffect(() => {
|
|
170
|
+
if (typeof window === "undefined" || !isLoaded)
|
|
171
|
+
return;
|
|
172
|
+
let pending = null;
|
|
173
|
+
try {
|
|
174
|
+
pending = window.sessionStorage.getItem(SIGNIN_RETURN_PENDING_KEY);
|
|
175
|
+
}
|
|
176
|
+
catch {
|
|
177
|
+
/* storage unavailable */
|
|
178
|
+
}
|
|
179
|
+
if (!pending)
|
|
180
|
+
return;
|
|
181
|
+
const clearFlag = () => {
|
|
182
|
+
try {
|
|
183
|
+
window.sessionStorage.removeItem(SIGNIN_RETURN_PENDING_KEY);
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
/* ignore */
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
if (isSignedIn) {
|
|
190
|
+
// The return established the session reactively — nothing to recover.
|
|
191
|
+
clearFlag();
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
194
|
+
const startedAt = Date.now();
|
|
195
|
+
const timer = window.setInterval(() => {
|
|
196
|
+
if (hasClerkSessionCookie()) {
|
|
197
|
+
window.clearInterval(timer);
|
|
198
|
+
clearFlag(); // clear BEFORE reload so a stale cookie can never loop
|
|
199
|
+
window.location.reload();
|
|
200
|
+
}
|
|
201
|
+
else if (Date.now() - startedAt > 5000) {
|
|
202
|
+
window.clearInterval(timer);
|
|
203
|
+
clearFlag(); // genuinely signed-out — stop polling
|
|
204
|
+
}
|
|
205
|
+
}, 250);
|
|
206
|
+
return () => window.clearInterval(timer);
|
|
207
|
+
}, [isLoaded, isSignedIn]);
|
|
123
208
|
const value = useMemo(() => ({
|
|
124
209
|
strategy: "clerk",
|
|
125
210
|
loaded: isLoaded,
|
|
126
211
|
pendingSsoRedirect: false,
|
|
127
212
|
signedIn: Boolean(isSignedIn),
|
|
128
213
|
signIn: () => {
|
|
214
|
+
// Arm the sign-in-return recovery (below) BEFORE navigating away, so a
|
|
215
|
+
// dev-instance satellite login whose session cookie lands late still
|
|
216
|
+
// ends signed-in without a manual refresh.
|
|
217
|
+
try {
|
|
218
|
+
window.sessionStorage.setItem(SIGNIN_RETURN_PENDING_KEY, "1");
|
|
219
|
+
}
|
|
220
|
+
catch {
|
|
221
|
+
/* storage unavailable — recovery just won't arm */
|
|
222
|
+
}
|
|
129
223
|
void clerkApi.redirectToSignIn({
|
|
130
224
|
signInForceRedirectUrl: window.location.href,
|
|
131
225
|
signUpForceRedirectUrl: window.location.href,
|
|
@@ -137,6 +231,8 @@ function ClerkAuthBridge({ clerk, children, }) {
|
|
|
137
231
|
refresh: () => {
|
|
138
232
|
/* Clerk session state is push-based. */
|
|
139
233
|
},
|
|
234
|
+
// Overlaid with server-resolved values by <FsAuthzBridge>.
|
|
235
|
+
...NO_AUTHZ,
|
|
140
236
|
}), [isLoaded, isSignedIn, user, clerkApi]);
|
|
141
237
|
return _jsx(Ctx.Provider, { value: value, children: children });
|
|
142
238
|
}
|
|
@@ -269,6 +365,8 @@ function PersonaAuth({ children }) {
|
|
|
269
365
|
// W6.1 — the persisted persona user, normalized to the typed FsAuthUser.
|
|
270
366
|
user: fs.auth.personaUser(),
|
|
271
367
|
refresh: session.refetch,
|
|
368
|
+
// Overlaid with server-resolved values by <FsAuthzBridge>.
|
|
369
|
+
...NO_AUTHZ,
|
|
272
370
|
}), [session, signedIn, fs]);
|
|
273
371
|
return _jsx(Ctx.Provider, { value: value, children: children });
|
|
274
372
|
}
|
|
@@ -283,6 +381,7 @@ function staticAuth(strategy, loaded, pendingSsoRedirect = false) {
|
|
|
283
381
|
signOut: async () => { },
|
|
284
382
|
user: null,
|
|
285
383
|
refresh: () => { },
|
|
384
|
+
...NO_AUTHZ,
|
|
286
385
|
};
|
|
287
386
|
}
|
|
288
387
|
function LoadingAuth({ strategy, pendingSsoRedirect = false, children, }) {
|
|
@@ -309,18 +408,78 @@ export function resolveClerkConfig(explicit) {
|
|
|
309
408
|
satelliteDomain: injected.satelliteDomain,
|
|
310
409
|
};
|
|
311
410
|
}
|
|
411
|
+
/* ── Managed-RBAC authz overlay (FAR-700) ──────────────────────── */
|
|
412
|
+
/**
|
|
413
|
+
* Overlay the base FsAuth context with the signed-in user's server-resolved
|
|
414
|
+
* Managed-RBAC claims (`roles`/`permissions` from `GET /me` — the same
|
|
415
|
+
* row-backed source the gateway-token mint uses; the SDK never decodes tokens
|
|
416
|
+
* client-side). Mounted INSIDE whichever strategy provider is active, so
|
|
417
|
+
* every `useFsAuth()` consumer below gets the merged surface. Defaults ([]
|
|
418
|
+
* and `hasPermission → false`) hold while auth/permissions load and when
|
|
419
|
+
* signed out; the read joins the shared cached `/me` fetch (no extra
|
|
420
|
+
* round-trip next to `useMe()`), and re-runs on sign-in/out + org switches.
|
|
421
|
+
*/
|
|
422
|
+
function FsAuthzBridge({ children }) {
|
|
423
|
+
const base = useContext(Ctx);
|
|
424
|
+
const fs = useFartherShore();
|
|
425
|
+
// Reactive org id (null under a bare provider tree) — an org switch changes
|
|
426
|
+
// what /me resolves, so it re-keys the read.
|
|
427
|
+
const organizationId = useReactiveOrganizationId();
|
|
428
|
+
const signedIn = Boolean(base?.loaded && base.signedIn);
|
|
429
|
+
const [authz, setAuthz] = useState({ roles: [], permissions: [] });
|
|
430
|
+
useEffect(() => {
|
|
431
|
+
if (!signedIn) {
|
|
432
|
+
setAuthz({ roles: [], permissions: [] });
|
|
433
|
+
return;
|
|
434
|
+
}
|
|
435
|
+
let alive = true;
|
|
436
|
+
void fs
|
|
437
|
+
.me()
|
|
438
|
+
.then((me) => {
|
|
439
|
+
if (!alive)
|
|
440
|
+
return;
|
|
441
|
+
setAuthz({
|
|
442
|
+
roles: me?.roles ?? [],
|
|
443
|
+
permissions: me?.permissions ?? [],
|
|
444
|
+
});
|
|
445
|
+
})
|
|
446
|
+
.catch(() => {
|
|
447
|
+
// Best-effort: an unreadable /me keeps the deny-by-default UX slice.
|
|
448
|
+
if (alive)
|
|
449
|
+
setAuthz({ roles: [], permissions: [] });
|
|
450
|
+
});
|
|
451
|
+
return () => {
|
|
452
|
+
alive = false;
|
|
453
|
+
};
|
|
454
|
+
}, [fs, signedIn, organizationId]);
|
|
455
|
+
const value = useMemo(() => base
|
|
456
|
+
? {
|
|
457
|
+
...base,
|
|
458
|
+
roles: authz.roles,
|
|
459
|
+
permissions: authz.permissions,
|
|
460
|
+
hasPermission: (key) => permissionGrants(authz.permissions, key),
|
|
461
|
+
}
|
|
462
|
+
: null, [base, authz]);
|
|
463
|
+
if (!value)
|
|
464
|
+
return _jsx(_Fragment, { children: children });
|
|
465
|
+
return _jsx(Ctx.Provider, { value: value, children: children });
|
|
466
|
+
}
|
|
312
467
|
/** The managed auth layer — mounted by `<FartherShoreRoot>`; mountable directly
|
|
313
468
|
* by custom roots. Picks the implementation from the environment's strategy. */
|
|
314
469
|
export function FsAuthProvider({ strategy, clerk, children, }) {
|
|
470
|
+
// The authz overlay sits between the strategy provider and the app, so
|
|
471
|
+
// `useFsAuth().hasPermission` is live under every strategy (and every
|
|
472
|
+
// fallback branch below).
|
|
473
|
+
const body = _jsx(FsAuthzBridge, { children: children });
|
|
315
474
|
if (strategy === "clerk") {
|
|
316
475
|
const config = resolveClerkConfig(clerk);
|
|
317
476
|
if (!config) {
|
|
318
477
|
console.warn("[farthershore] Clerk-strategy environment but no publishable key configured (FartherShoreRoot `clerk` prop / VITE_CLERK_PUBLISHABLE_KEY / platform-injected window.__FS_CONFIG__) — sign-in disabled.");
|
|
319
|
-
return _jsx(SignedOutFallback, { strategy: "clerk", children:
|
|
478
|
+
return _jsx(SignedOutFallback, { strategy: "clerk", children: body });
|
|
320
479
|
}
|
|
321
|
-
return _jsx(ClerkAuth, { config: config, children:
|
|
480
|
+
return _jsx(ClerkAuth, { config: config, children: body });
|
|
322
481
|
}
|
|
323
|
-
return _jsx(PersonaAuth, { children:
|
|
482
|
+
return _jsx(PersonaAuth, { children: body });
|
|
324
483
|
}
|
|
325
484
|
/* ── FsUserButton ──────────────────────────────────────────────── */
|
|
326
485
|
/** The signed-in account control. Clerk mode → Clerk's <UserButton/> (avatar
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/components/auth.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/components/auth.tsx"],"names":[],"mappings":"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"}
|