@eminuckan/spine 0.2.0 → 0.2.2
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/README.md +2 -2
- package/dist/api-client/api-config.server.d.ts +40 -0
- package/dist/api-client/api-config.server.d.ts.map +1 -0
- package/dist/api-client/error-codes.d.ts +57 -0
- package/dist/api-client/error-codes.d.ts.map +1 -0
- package/dist/api-client/error-handler.d.ts +52 -0
- package/dist/api-client/error-handler.d.ts.map +1 -0
- package/dist/api-client/fetch-client.server.d.ts +29 -0
- package/dist/api-client/fetch-client.server.d.ts.map +1 -0
- package/dist/api-client/index.d.ts +11 -3
- package/dist/api-client/index.d.ts.map +1 -0
- package/dist/api-client/index.js +3 -2
- package/dist/api-client/retry-handler.d.ts +29 -0
- package/dist/api-client/retry-handler.d.ts.map +1 -0
- package/dist/api-client/server.d.ts +9 -4
- package/dist/api-client/server.d.ts.map +1 -0
- package/dist/api-client/server.js +4 -3
- package/dist/api-client/types.d.ts +121 -0
- package/dist/api-client/types.d.ts.map +1 -0
- package/dist/{api-client-Ftxqm3Ep.js → api-client-DsrxK05Z.js} +1 -1
- package/dist/{api-client-Ftxqm3Ep.js.map → api-client-DsrxK05Z.js.map} +1 -1
- package/dist/auth/auth.server.d.ts +124 -0
- package/dist/auth/auth.server.d.ts.map +1 -0
- package/dist/auth/index.d.ts +8 -2
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/redis-session-storage.server.d.ts +21 -0
- package/dist/auth/redis-session-storage.server.d.ts.map +1 -0
- package/dist/auth/route-protection.server.d.ts +107 -0
- package/dist/auth/route-protection.server.d.ts.map +1 -0
- package/dist/auth/server.d.ts +13 -3
- package/dist/auth/server.d.ts.map +1 -0
- package/dist/auth/server.js +3 -3
- package/dist/auth/token-refresh.server.d.ts +17 -0
- package/dist/auth/token-refresh.server.d.ts.map +1 -0
- package/dist/auth/types.d.ts +160 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth.server-BPiCtlJE.js +5 -0
- package/dist/{auth.server-C979TR6W.js → auth.server-Cx2h2qu3.js} +3 -3
- package/dist/{auth.server-C979TR6W.js.map → auth.server-Cx2h2qu3.js.map} +1 -1
- package/dist/http/response.d.ts +12 -0
- package/dist/http/response.d.ts.map +1 -0
- package/dist/identity/identity-context-provider.d.ts +19 -0
- package/dist/identity/identity-context-provider.d.ts.map +1 -0
- package/dist/identity/identity-context.server.d.ts +73 -0
- package/dist/identity/identity-context.server.d.ts.map +1 -0
- package/dist/identity/identity-store.d.ts +55 -0
- package/dist/identity/identity-store.d.ts.map +1 -0
- package/dist/identity/index.d.ts +9 -4
- package/dist/identity/index.d.ts.map +1 -0
- package/dist/identity/server.d.ts +6 -4
- package/dist/identity/server.d.ts.map +1 -0
- package/dist/identity/server.js +2 -1
- package/dist/identity/types.d.ts +91 -0
- package/dist/identity/types.d.ts.map +1 -0
- package/dist/index.d.ts +14 -12
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -5
- package/dist/logging/config.d.ts +7 -0
- package/dist/logging/config.d.ts.map +1 -0
- package/dist/logging/index.d.ts +9 -3
- package/dist/logging/index.d.ts.map +1 -0
- package/dist/logging/logger.d.ts +22 -0
- package/dist/logging/logger.d.ts.map +1 -0
- package/dist/logging/types.d.ts +27 -0
- package/dist/logging/types.d.ts.map +1 -0
- package/dist/permissions/components.d.ts +48 -0
- package/dist/permissions/components.d.ts.map +1 -0
- package/dist/permissions/constants.d.ts +9 -0
- package/dist/permissions/constants.d.ts.map +1 -0
- package/dist/permissions/hooks.d.ts +47 -0
- package/dist/permissions/hooks.d.ts.map +1 -0
- package/dist/permissions/index.d.ts +28 -2
- package/dist/permissions/index.d.ts.map +1 -0
- package/dist/permissions/permission-initializer.d.ts +18 -0
- package/dist/permissions/permission-initializer.d.ts.map +1 -0
- package/dist/permissions/permission-service.d.ts +53 -0
- package/dist/permissions/permission-service.d.ts.map +1 -0
- package/dist/permissions/permission-store.d.ts +42 -0
- package/dist/permissions/permission-store.d.ts.map +1 -0
- package/dist/permissions/route-protection.server.d.ts +33 -0
- package/dist/permissions/route-protection.server.d.ts.map +1 -0
- package/dist/permissions/types.d.ts +44 -0
- package/dist/permissions/types.d.ts.map +1 -0
- package/dist/query-client/index.d.ts +8 -2
- package/dist/query-client/index.d.ts.map +1 -0
- package/dist/query-client/index.js +1 -1
- package/dist/query-client/query-config.d.ts +55 -0
- package/dist/query-client/query-config.d.ts.map +1 -0
- package/dist/query-client/types.d.ts +115 -0
- package/dist/query-client/types.d.ts.map +1 -0
- package/dist/{query-client-DRPQIKHX.js → query-client-Bpe08pk9.js} +1 -1
- package/dist/query-client-Bpe08pk9.js.map +1 -0
- package/dist/react-router/index.d.ts +9 -12
- package/dist/react-router/index.d.ts.map +1 -0
- package/dist/react-router/index.js +6 -5
- package/dist/react-router/server.d.ts +9 -18
- package/dist/react-router/server.d.ts.map +1 -0
- package/dist/react-router/server.js +13 -12
- package/dist/{redis-session-storage.server-DhufyPjd.js → redis-session-storage.server-BR_0y-QO.js} +2 -2
- package/dist/{redis-session-storage.server-DhufyPjd.js.map → redis-session-storage.server-BR_0y-QO.js.map} +1 -1
- package/dist/{server-CiSbg-9C.js → server-BHfKHKF_.js} +5 -5
- package/dist/{server-CiSbg-9C.js.map → server-BHfKHKF_.js.map} +1 -1
- package/dist/{server-C-DiVP9e.js → server-BxvRxjCK.js} +2 -2
- package/dist/{server-C-DiVP9e.js.map → server-BxvRxjCK.js.map} +1 -1
- package/dist/{server-iWm3oeCM.js → server-C3L8J7iE.js} +3 -2
- package/dist/server-C3L8J7iE.js.map +1 -0
- package/dist/{server-CNp6gjFE.js → server-CouYoZiw.js} +1 -1
- package/dist/{server-CNp6gjFE.js.map → server-CouYoZiw.js.map} +1 -1
- package/dist/server-DZmcd2Lr.js +422 -0
- package/dist/server-DZmcd2Lr.js.map +1 -0
- package/dist/server.d.ts +14 -18
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +13 -12
- package/dist/signalr/index.d.ts +8 -4
- package/dist/signalr/index.d.ts.map +1 -0
- package/dist/signalr/index.js +1 -1
- package/dist/signalr/signalr-client.d.ts +98 -0
- package/dist/signalr/signalr-client.d.ts.map +1 -0
- package/dist/signalr/types.d.ts +42 -0
- package/dist/signalr/types.d.ts.map +1 -0
- package/dist/{signalr-BJGcXc0m.js → signalr-SJ-1sIxw.js} +1 -1
- package/dist/{signalr-BJGcXc0m.js.map → signalr-SJ-1sIxw.js.map} +1 -1
- package/dist/tenant/index.d.ts +9 -3
- package/dist/tenant/index.d.ts.map +1 -0
- package/dist/tenant/server.d.ts +7 -3
- package/dist/tenant/server.d.ts.map +1 -0
- package/dist/tenant/server.js +2 -2
- package/dist/tenant/tenant-context.d.ts +45 -0
- package/dist/tenant/tenant-context.d.ts.map +1 -0
- package/dist/tenant/tenant-cookie.server.d.ts +35 -0
- package/dist/tenant/tenant-cookie.server.d.ts.map +1 -0
- package/dist/tenant/tenant-store.d.ts +58 -0
- package/dist/tenant/tenant-store.d.ts.map +1 -0
- package/dist/tenant/tenant.server.d.ts +49 -0
- package/dist/tenant/tenant.server.d.ts.map +1 -0
- package/dist/tenant/types.d.ts +51 -0
- package/dist/tenant/types.d.ts.map +1 -0
- package/dist/types-BnKaWdfe.js +8 -0
- package/dist/types-BnKaWdfe.js.map +1 -0
- package/package.json +2 -7
- package/dist/auth.server-DU-x2LPA.js +0 -5
- package/dist/index-BIJOC8Fb.d.ts +0 -272
- package/dist/index-BIJOC8Fb.d.ts.map +0 -1
- package/dist/index-Bt9XE6gj.d.ts +0 -104
- package/dist/index-Bt9XE6gj.d.ts.map +0 -1
- package/dist/index-C2hGpzGr.d.ts +0 -74
- package/dist/index-C2hGpzGr.d.ts.map +0 -1
- package/dist/index-CfQsb3l_.d.ts +0 -170
- package/dist/index-CfQsb3l_.d.ts.map +0 -1
- package/dist/index-D6RK_5vm.d.ts +0 -199
- package/dist/index-D6RK_5vm.d.ts.map +0 -1
- package/dist/index-DrttYPAj.d.ts +0 -30
- package/dist/index-DrttYPAj.d.ts.map +0 -1
- package/dist/index-geY2ynnN.d.ts +0 -141
- package/dist/index-geY2ynnN.d.ts.map +0 -1
- package/dist/index-kr8Wk7v5.d.ts +0 -1
- package/dist/query-client-DRPQIKHX.js.map +0 -1
- package/dist/server-BoeUiXSh.d.ts +0 -40
- package/dist/server-BoeUiXSh.d.ts.map +0 -1
- package/dist/server-CLbksnvg.d.ts +0 -144
- package/dist/server-CLbksnvg.d.ts.map +0 -1
- package/dist/server-CXGaRaiS.d.ts +0 -256
- package/dist/server-CXGaRaiS.d.ts.map +0 -1
- package/dist/server-DLgH3FRR.js +0 -312
- package/dist/server-DLgH3FRR.js.map +0 -1
- package/dist/server-DazqdM63.d.ts +0 -93
- package/dist/server-DazqdM63.d.ts.map +0 -1
- package/dist/server-iWm3oeCM.js.map +0 -1
- package/dist/server-zEKMDpP7.d.ts +0 -80
- package/dist/server-zEKMDpP7.d.ts.map +0 -1
- package/dist/types-BTjFzIhv.d.ts +0 -31
- package/dist/types-BTjFzIhv.d.ts.map +0 -1
- package/dist/types-DoIfDhl6.d.ts +0 -55
- package/dist/types-DoIfDhl6.d.ts.map +0 -1
- package/dist/types-DufLRY7A.d.ts +0 -164
- package/dist/types-DufLRY7A.d.ts.map +0 -1
- package/dist/types-uDrDMkCq.d.ts +0 -93
- package/dist/types-uDrDMkCq.d.ts.map +0 -1
- /package/dist/{src-D7mh9MKA.js → src-CJ2RLi94.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.server.d.ts","sourceRoot":"","sources":["../../src/auth/auth.server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAKL,cAAc,EAKf,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAEV,gBAAgB,EAChB,QAAQ,EAGR,kBAAkB,EAClB,YAAY,EAEZ,SAAS,EACV,MAAM,SAAS,CAAC;AA0NjB;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAgBzE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAI5C;AAkID;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAChE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAkDA;AAkDD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAkB/D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAK/C;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAGtD;AAMD;;;;;GAKG;AACH,wBAAsB,KAAK,CACzB,OAAO,EAAE,OAAO,EAChB,kBAAkB,CAAC,EAAE,MAAM,GAAG,YAAY,GACzC,OAAO,CAAC,QAAQ,CAAC,CAoFnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CA2NxE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAyEhE;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAQxE;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAWrE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ7E;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,kBAAkB,CAAC,CA4F7B;AAGD,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
|
package/dist/auth/index.d.ts
CHANGED
|
@@ -1,2 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Auth Module - Client-side exports
|
|
3
|
+
*
|
|
4
|
+
* Client-side auth types live here.
|
|
5
|
+
* For server-side auth primitives, use `@eminuckan/spine/auth/server`.
|
|
6
|
+
*/
|
|
7
|
+
export type { UserInfo, AuthConfig, SessionData, OAuthState, LoginOptions, AuthError, ApplicationType, } from './types';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,QAAQ,EACR,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,SAAS,EACT,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Redis Session Storage Server Module
|
|
3
|
+
*
|
|
4
|
+
* Redis-backed session storage for authentication.
|
|
5
|
+
* Provides secure session management with automatic expiration,
|
|
6
|
+
* without depending on a framework-specific session implementation.
|
|
7
|
+
*/
|
|
8
|
+
import type { SessionData, OAuthState } from './types';
|
|
9
|
+
export declare const AUTH_ERROR_COOKIE_PREFIX: string;
|
|
10
|
+
export declare function createAuthSession(request: Request, sessionData: Partial<SessionData>): Promise<Headers>;
|
|
11
|
+
export declare function getAuthSession(request: Request): Promise<SessionData>;
|
|
12
|
+
export declare function updateAuthSession(request: Request, updates: Partial<SessionData>): Promise<Headers>;
|
|
13
|
+
export declare function destroyAuthSession(request: Request): Promise<Headers>;
|
|
14
|
+
export declare function requireAuthSession(request: Request): Promise<SessionData>;
|
|
15
|
+
export declare function isSessionValid(request: Request): Promise<boolean>;
|
|
16
|
+
export declare function createOAuthState(state: OAuthState): Promise<string>;
|
|
17
|
+
export declare function getOAuthState(stateId: string): Promise<OAuthState | null>;
|
|
18
|
+
export declare function deleteOAuthState(stateId: string): Promise<void>;
|
|
19
|
+
export declare function cleanupExpiredOAuthStates(): Promise<number>;
|
|
20
|
+
export declare function closeRedisConnection(): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=redis-session-storage.server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redis-session-storage.server.d.ts","sourceRoot":"","sources":["../../src/auth/redis-session-storage.server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA4CvD,eAAO,MAAM,wBAAwB,QAAgE,CAAC;AAyKtG,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC,CAelB;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAoB3E;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAS3E;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAQ/E;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBvE;AAMD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CASzE;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAe/E;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIrE;AAED,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,MAAM,CAAC,CAejE;AAMD,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAM1D"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Route Protection Server Module
|
|
3
|
+
*
|
|
4
|
+
* Provides route protection utilities for different authentication levels.
|
|
5
|
+
*/
|
|
6
|
+
import type { ProtectionLevel, UserInfo } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Check if token needs refresh
|
|
9
|
+
*/
|
|
10
|
+
export declare function shouldRefreshToken(request: Request): Promise<boolean>;
|
|
11
|
+
/**
|
|
12
|
+
* Identity context check configuration
|
|
13
|
+
*/
|
|
14
|
+
export interface DefaultRouteIdentityContext {
|
|
15
|
+
hasAnyMembership: boolean;
|
|
16
|
+
hasSubscription: boolean;
|
|
17
|
+
isOnboarded: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface IdentityContextChecker<TIdentityContext = DefaultRouteIdentityContext> {
|
|
20
|
+
getIdentityContext: (request: Request, userId: string, forceRefresh?: boolean) => Promise<DefaultRouteIdentityContext & TIdentityContext>;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Tenant checker configuration
|
|
24
|
+
*/
|
|
25
|
+
export interface TenantChecker {
|
|
26
|
+
getCurrentTenant: (request: Request) => Promise<string | null>;
|
|
27
|
+
initializeTenant: (request: Request) => Promise<{
|
|
28
|
+
headers: Headers;
|
|
29
|
+
tenantId: string;
|
|
30
|
+
} | null>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Subscription checker configuration
|
|
34
|
+
*/
|
|
35
|
+
export interface SubscriptionChecker {
|
|
36
|
+
checkTenantSubscriptionStatus: (request: Request, tenantId: string) => Promise<boolean>;
|
|
37
|
+
}
|
|
38
|
+
export interface RouteProtectionRedirect {
|
|
39
|
+
location: string;
|
|
40
|
+
headers?: HeadersInit;
|
|
41
|
+
status?: number;
|
|
42
|
+
}
|
|
43
|
+
export interface AutomaticLogoutRequestContext {
|
|
44
|
+
request: Request;
|
|
45
|
+
reason: 'expired-no-refresh-token' | 'refresh-failed';
|
|
46
|
+
}
|
|
47
|
+
export interface LoginReturnUrlContext {
|
|
48
|
+
request: Request;
|
|
49
|
+
currentPath: string;
|
|
50
|
+
protection: ProtectionLevel;
|
|
51
|
+
}
|
|
52
|
+
export interface RouteProtectionResolverContext<TIdentityContext = DefaultRouteIdentityContext> {
|
|
53
|
+
request: Request;
|
|
54
|
+
user: UserInfo;
|
|
55
|
+
currentPath: string;
|
|
56
|
+
protection: ProtectionLevel;
|
|
57
|
+
getIdentityContext: (forceRefresh?: boolean) => Promise<TIdentityContext | null>;
|
|
58
|
+
getCurrentTenant: () => Promise<string | null>;
|
|
59
|
+
initializeTenant: () => Promise<{
|
|
60
|
+
headers: Headers;
|
|
61
|
+
tenantId: string;
|
|
62
|
+
} | null>;
|
|
63
|
+
}
|
|
64
|
+
export interface RouteProtectionErrorHandlerContext<TIdentityContext = DefaultRouteIdentityContext> extends RouteProtectionResolverContext<TIdentityContext> {
|
|
65
|
+
error: unknown;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Route protection configuration
|
|
69
|
+
*/
|
|
70
|
+
export interface RouteProtectionConfig<TIdentityContext = DefaultRouteIdentityContext> {
|
|
71
|
+
identityChecker?: IdentityContextChecker<TIdentityContext>;
|
|
72
|
+
tenantChecker?: TenantChecker;
|
|
73
|
+
subscriptionChecker?: SubscriptionChecker;
|
|
74
|
+
resolveRoute?: (context: RouteProtectionResolverContext<TIdentityContext>) => Promise<RouteProtectionRedirect | null | void> | RouteProtectionRedirect | null | void;
|
|
75
|
+
handleRouteError?: (context: RouteProtectionErrorHandlerContext<TIdentityContext>) => Promise<RouteProtectionRedirect | null | void> | RouteProtectionRedirect | null | void;
|
|
76
|
+
getLoginReturnUrl?: (context: LoginReturnUrlContext) => string;
|
|
77
|
+
createAutomaticLogoutRequest?: (context: AutomaticLogoutRequestContext) => Promise<Request> | Request;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Configure route protection with identity/tenant/subscription checkers
|
|
81
|
+
*/
|
|
82
|
+
export declare function configureRouteProtection<TIdentityContext = DefaultRouteIdentityContext>(config: RouteProtectionConfig<TIdentityContext>): void;
|
|
83
|
+
/**
|
|
84
|
+
* Reset route protection to its built-in defaults.
|
|
85
|
+
*/
|
|
86
|
+
export declare function resetRouteProtectionConfig(): void;
|
|
87
|
+
/**
|
|
88
|
+
* Main route protection function
|
|
89
|
+
*/
|
|
90
|
+
export declare function protectRoute<T>(request: Request, protection: ProtectionLevel, loaderFn: (user?: UserInfo) => Promise<T> | T): Promise<T>;
|
|
91
|
+
/**
|
|
92
|
+
* Public route (optional auth)
|
|
93
|
+
*/
|
|
94
|
+
export declare const publicRoute: <T>(request: Request, loaderFn: (user?: UserInfo) => Promise<T> | T) => Promise<T>;
|
|
95
|
+
/**
|
|
96
|
+
* Auth-protected route
|
|
97
|
+
*/
|
|
98
|
+
export declare const authRoute: <T>(request: Request, loaderFn: (user: UserInfo) => Promise<T> | T) => Promise<T>;
|
|
99
|
+
/**
|
|
100
|
+
* Onboarding route
|
|
101
|
+
*/
|
|
102
|
+
export declare const onboardingRoute: <T>(request: Request, loaderFn: (user: UserInfo) => Promise<T> | T) => Promise<T>;
|
|
103
|
+
/**
|
|
104
|
+
* Subscription route
|
|
105
|
+
*/
|
|
106
|
+
export declare const subscriptionRoute: <T>(request: Request, loaderFn: (user: UserInfo) => Promise<T> | T) => Promise<T>;
|
|
107
|
+
//# sourceMappingURL=route-protection.server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-protection.server.d.ts","sourceRoot":"","sources":["../../src/auth/route-protection.server.ts"],"names":[],"mappings":"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"}
|
package/dist/auth/server.d.ts
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Auth module server exports.
|
|
3
|
+
*
|
|
4
|
+
* These exports are framework-agnostic. Framework adapters can re-export
|
|
5
|
+
* them from their own namespaces such as `@eminuckan/spine/react-router/server`.
|
|
6
|
+
*/
|
|
7
|
+
export * from './auth.server';
|
|
8
|
+
export * from './redis-session-storage.server';
|
|
9
|
+
export * from './route-protection.server';
|
|
10
|
+
export * from './token-refresh.server';
|
|
11
|
+
export type { ApplicationType, AuthClaimMapping, AuthConfig, AuthError, LoginOptions, OAuthState, ProtectedLoaderFn, ProtectionLevel, SessionData, SessionFlashData, UserInfo, } from './types';
|
|
12
|
+
export type { TokenRefreshResult as AuthTokenRefreshResult, } from './types';
|
|
13
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/auth/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,QAAQ,GACT,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,kBAAkB,IAAI,sBAAsB,GAC7C,MAAM,SAAS,CAAC"}
|
package/dist/auth/server.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../logging-_h2mi3L9.js";
|
|
2
|
-
import { AUTH_ERROR_COOKIE_PREFIX
|
|
3
|
-
import { clearAuthErrorHeaders
|
|
4
|
-
import { attemptTokenRefresh, authRoute, configureRouteProtection, isTokenExpiredResponse, onboardingRoute, protectRoute, publicRoute, resetRouteProtectionConfig, shouldAttemptTokenRefresh, shouldRefreshToken, subscriptionRoute } from "../server-
|
|
2
|
+
import { AUTH_ERROR_COOKIE_PREFIX, cleanupExpiredOAuthStates, closeRedisConnection, createAuthSession, createOAuthState, deleteOAuthState, destroyAuthSession, getAuthSession, getOAuthState, isSessionValid, requireAuthSession, updateAuthSession } from "../redis-session-storage.server-BR_0y-QO.js";
|
|
3
|
+
import { clearAuthErrorHeaders, clearAuthServerCache, configureAuthClaimMapping, extractUserInfo, getAccessToken, getAuthError, getUser, handleCallback, hasAuthError, login, logout, refreshTokens, requireAuth, resetAuthClaimMapping } from "../auth.server-Cx2h2qu3.js";
|
|
4
|
+
import { attemptTokenRefresh, authRoute, configureRouteProtection, isTokenExpiredResponse, onboardingRoute, protectRoute, publicRoute, resetRouteProtectionConfig, shouldAttemptTokenRefresh, shouldRefreshToken, subscriptionRoute } from "../server-BHfKHKF_.js";
|
|
5
5
|
|
|
6
6
|
export { AUTH_ERROR_COOKIE_PREFIX, attemptTokenRefresh, authRoute, cleanupExpiredOAuthStates, clearAuthErrorHeaders, clearAuthServerCache, closeRedisConnection, configureAuthClaimMapping, configureRouteProtection, createAuthSession, createOAuthState, deleteOAuthState, destroyAuthSession, extractUserInfo, getAccessToken, getAuthError, getAuthSession, getOAuthState, getUser, handleCallback, hasAuthError, isSessionValid, isTokenExpiredResponse, login, logout, onboardingRoute, protectRoute, publicRoute, refreshTokens, requireAuth, requireAuthSession, resetAuthClaimMapping, resetRouteProtectionConfig, shouldAttemptTokenRefresh, shouldRefreshToken, subscriptionRoute, updateAuthSession };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token Refresh Server Module
|
|
3
|
+
*/
|
|
4
|
+
import type { TokenRefreshResult } from './types';
|
|
5
|
+
/**
|
|
6
|
+
* Attempt to refresh the access token
|
|
7
|
+
*/
|
|
8
|
+
export declare function attemptTokenRefresh(request: Request): Promise<TokenRefreshResult>;
|
|
9
|
+
/**
|
|
10
|
+
* Check if a response indicates token expiration
|
|
11
|
+
*/
|
|
12
|
+
export declare function isTokenExpiredResponse(response: Response): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Check if token refresh should be attempted
|
|
15
|
+
*/
|
|
16
|
+
export declare function shouldAttemptTokenRefresh(response: Response, hasAuth: boolean): boolean;
|
|
17
|
+
//# sourceMappingURL=token-refresh.server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-refresh.server.d.ts","sourceRoot":"","sources":["../../src/auth/token-refresh.server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAGlD;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsDvF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAElE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAEvF"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auth Types
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Application Type
|
|
6
|
+
* Determines logout behavior and error handling
|
|
7
|
+
*/
|
|
8
|
+
export type ApplicationType = 'no-landing-page' | 'landing-page' | 'dashboard' | 'tenant-app' | 'custom';
|
|
9
|
+
/**
|
|
10
|
+
* OAuth Configuration
|
|
11
|
+
*/
|
|
12
|
+
export interface AuthConfig {
|
|
13
|
+
authority: string;
|
|
14
|
+
clientId: string;
|
|
15
|
+
clientSecret?: string;
|
|
16
|
+
redirectUri: string;
|
|
17
|
+
postLogoutRedirectUri?: string;
|
|
18
|
+
scope: string;
|
|
19
|
+
/**
|
|
20
|
+
* Application type - determines logout behavior
|
|
21
|
+
* - 'no-landing-page': No landing page, defaults to full SSO logout
|
|
22
|
+
* - 'landing-page': Has a landing page, defaults to app-specific logout
|
|
23
|
+
* - 'dashboard': Legacy alias for 'no-landing-page'
|
|
24
|
+
* - 'tenant-app': Legacy alias for 'landing-page'
|
|
25
|
+
* - 'custom': Use explicit ssoLogout setting
|
|
26
|
+
* @default 'custom'
|
|
27
|
+
*/
|
|
28
|
+
applicationType?: ApplicationType;
|
|
29
|
+
/**
|
|
30
|
+
* Whether to perform full SSO logout (clear identity cookie) or app-specific logout
|
|
31
|
+
* - true: Full logout - clears identity cookie, revokes all tokens
|
|
32
|
+
* - false: App-specific logout - keeps identity cookie, revokes only this app's tokens
|
|
33
|
+
*
|
|
34
|
+
* If not set, determined by applicationType:
|
|
35
|
+
* - 'no-landing-page': true (full logout)
|
|
36
|
+
* - 'landing-page': false (app-specific)
|
|
37
|
+
* - 'dashboard': true (legacy alias)
|
|
38
|
+
* - 'tenant-app': false (legacy alias)
|
|
39
|
+
* - 'custom': false (default)
|
|
40
|
+
*/
|
|
41
|
+
ssoLogout?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Whether the application has a landing page
|
|
44
|
+
* - true: Has landing page - OAuth errors redirect to home, user sees landing
|
|
45
|
+
* - false: No landing page - Must handle OAuth errors specially to avoid loops
|
|
46
|
+
*
|
|
47
|
+
* If not set, determined by applicationType:
|
|
48
|
+
* - 'no-landing-page': false
|
|
49
|
+
* - 'landing-page': true
|
|
50
|
+
* - 'dashboard': false (legacy alias)
|
|
51
|
+
* - 'tenant-app': true (legacy alias)
|
|
52
|
+
* - 'custom': true (default)
|
|
53
|
+
*/
|
|
54
|
+
hasLandingPage?: boolean;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Configurable claim mapping for adapting auth/session extraction
|
|
58
|
+
* to different identity providers and backend conventions.
|
|
59
|
+
*/
|
|
60
|
+
export interface AuthClaimMapping {
|
|
61
|
+
subject?: string[];
|
|
62
|
+
name?: string[];
|
|
63
|
+
email?: string[];
|
|
64
|
+
givenName?: string[];
|
|
65
|
+
familyName?: string[];
|
|
66
|
+
picture?: string[];
|
|
67
|
+
locale?: string[];
|
|
68
|
+
zoneinfo?: string[];
|
|
69
|
+
updatedAt?: string[];
|
|
70
|
+
tenantIds?: string[];
|
|
71
|
+
tenantRoles?: string[];
|
|
72
|
+
permissions?: string[];
|
|
73
|
+
isOnboarded?: string[];
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* User Info from OAuth provider
|
|
77
|
+
*/
|
|
78
|
+
export interface UserInfo {
|
|
79
|
+
sub: string;
|
|
80
|
+
name?: string;
|
|
81
|
+
email?: string;
|
|
82
|
+
givenName?: string;
|
|
83
|
+
familyName?: string;
|
|
84
|
+
picture?: string;
|
|
85
|
+
locale?: string;
|
|
86
|
+
zoneinfo?: string;
|
|
87
|
+
updated_at?: number;
|
|
88
|
+
[key: string]: unknown;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* OAuth State for PKCE flow
|
|
92
|
+
*/
|
|
93
|
+
export interface OAuthState {
|
|
94
|
+
state: string;
|
|
95
|
+
codeVerifier: string;
|
|
96
|
+
nonce?: string;
|
|
97
|
+
returnUrl?: string;
|
|
98
|
+
createdAt: number;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Session Data stored in Redis
|
|
102
|
+
*/
|
|
103
|
+
export interface SessionData {
|
|
104
|
+
userId?: string;
|
|
105
|
+
accessToken?: string;
|
|
106
|
+
refreshToken?: string;
|
|
107
|
+
idToken?: string;
|
|
108
|
+
expiresAt?: number;
|
|
109
|
+
user?: UserInfo;
|
|
110
|
+
lastActivity?: number;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Session Flash Data for temporary messages
|
|
114
|
+
*/
|
|
115
|
+
export interface SessionFlashData {
|
|
116
|
+
error: string;
|
|
117
|
+
success: string;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Token refresh result
|
|
121
|
+
*/
|
|
122
|
+
export interface TokenRefreshResult {
|
|
123
|
+
success: boolean;
|
|
124
|
+
newAccessToken?: string;
|
|
125
|
+
tokens?: {
|
|
126
|
+
access_token: string;
|
|
127
|
+
refresh_token?: string;
|
|
128
|
+
id_token?: string;
|
|
129
|
+
expires_in?: number;
|
|
130
|
+
};
|
|
131
|
+
error?: string;
|
|
132
|
+
shouldLogout?: boolean;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Route protection levels
|
|
136
|
+
*/
|
|
137
|
+
export type ProtectionLevel = 'public' | 'auth' | 'onboarding-required' | 'subscription-required';
|
|
138
|
+
/**
|
|
139
|
+
* Protected route loader function type
|
|
140
|
+
*/
|
|
141
|
+
export type ProtectedLoaderFn<T> = (user?: UserInfo) => Promise<T> | T;
|
|
142
|
+
/**
|
|
143
|
+
* Login options
|
|
144
|
+
*/
|
|
145
|
+
export interface LoginOptions {
|
|
146
|
+
/** Return URL after successful login */
|
|
147
|
+
returnUrl?: string;
|
|
148
|
+
/** OAuth prompt parameter (none, login, consent, select_account) */
|
|
149
|
+
prompt?: 'none' | 'login' | 'consent' | 'select_account';
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Auth error information from OAuth callback
|
|
153
|
+
*/
|
|
154
|
+
export interface AuthError {
|
|
155
|
+
/** Error code (e.g., 'access_denied', 'login_required') */
|
|
156
|
+
error: string;
|
|
157
|
+
/** Human-readable error description */
|
|
158
|
+
description?: string;
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import "./logging-_h2mi3L9.js";
|
|
2
|
+
import { isSessionValid } from "./redis-session-storage.server-BR_0y-QO.js";
|
|
3
|
+
import { clearAuthErrorHeaders, clearAuthServerCache, configureAuthClaimMapping, extractUserInfo, getAccessToken, getAuthError, getUser, handleCallback, hasAuthError, login, logout, refreshTokens, requireAuth, resetAuthClaimMapping } from "./auth.server-Cx2h2qu3.js";
|
|
4
|
+
|
|
5
|
+
export { logout };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { logger } from "./logging-_h2mi3L9.js";
|
|
2
|
-
import { AUTH_ERROR_COOKIE_PREFIX
|
|
2
|
+
import { AUTH_ERROR_COOKIE_PREFIX, createAuthSession, createOAuthState, deleteOAuthState, destroyAuthSession, getAuthSession, getOAuthState, updateAuthSession } from "./redis-session-storage.server-BR_0y-QO.js";
|
|
3
3
|
import * as oauth from "oauth4webapi";
|
|
4
4
|
|
|
5
5
|
//#region src/http/response.ts
|
|
@@ -720,5 +720,5 @@ function clearAuthServerCache() {
|
|
|
720
720
|
}
|
|
721
721
|
|
|
722
722
|
//#endregion
|
|
723
|
-
export { clearAuthErrorHeaders
|
|
724
|
-
//# sourceMappingURL=auth.server-
|
|
723
|
+
export { clearAuthErrorHeaders, clearAuthServerCache, configureAuthClaimMapping, createRedirectResponse, extractUserInfo, getAccessToken, getAuthError, getUser, handleCallback, hasAuthError, login, logout, refreshTokens, requireAuth, resetAuthClaimMapping };
|
|
724
|
+
//# sourceMappingURL=auth.server-Cx2h2qu3.js.map
|