@eminuckan/spine 0.2.1 → 0.2.4
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/CHANGELOG.md +29 -0
- package/README.md +45 -6
- package/dist/access/evaluator.d.ts +3 -0
- package/dist/access/evaluator.d.ts.map +1 -0
- package/dist/access/index.d.ts +3 -0
- package/dist/access/index.d.ts.map +1 -0
- package/dist/access/index.js +4 -0
- package/dist/access/types.d.ts +30 -0
- package/dist/access/types.d.ts.map +1 -0
- package/dist/access-DlAqsVGQ.js +59 -0
- package/dist/access-DlAqsVGQ.js.map +1 -0
- package/dist/api-client/index.js +2 -2
- package/dist/api-client/server.js +3 -3
- package/dist/{api-client-DsrxK05Z.js → api-client-CZapXIF8.js} +1 -1
- package/dist/{api-client-DsrxK05Z.js.map → api-client-CZapXIF8.js.map} +1 -1
- package/dist/auth/auth.server.d.ts +21 -16
- package/dist/auth/auth.server.d.ts.map +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/redis-session-storage.server.d.ts +18 -1
- package/dist/auth/redis-session-storage.server.d.ts.map +1 -1
- package/dist/auth/route-protection.server.d.ts.map +1 -1
- package/dist/auth/server.d.ts +1 -1
- package/dist/auth/server.d.ts.map +1 -1
- package/dist/auth/server.js +4 -4
- package/dist/auth/types.d.ts +65 -20
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/auth.server-B3ODGIX4.js +1057 -0
- package/dist/auth.server-B3ODGIX4.js.map +1 -0
- package/dist/auth.server-wdKsjQsn.js +5 -0
- package/dist/identity/index.js +1 -1
- package/dist/identity/server.js +2 -2
- package/dist/{identity-CFa1txoj.js → identity-yT2ijZF0.js} +1 -1
- package/dist/{identity-CFa1txoj.js.map → identity-yT2ijZF0.js.map} +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -9
- package/dist/permission-service-CvGpwI0d.js +95 -0
- package/dist/permission-service-CvGpwI0d.js.map +1 -0
- package/dist/permissions/index.js +2 -1
- package/dist/{permissions-D5ScGGnd.js → permissions-OUK8Eql2.js} +3 -95
- package/dist/permissions-OUK8Eql2.js.map +1 -0
- package/dist/query-client/index.js +1 -1
- package/dist/{query-client-Bpe08pk9.js → query-client-Bh3TyB8W.js} +2 -2
- package/dist/query-client-Bh3TyB8W.js.map +1 -0
- package/dist/react-router/index.js +11 -9
- package/dist/react-router/server.js +18 -16
- package/dist/redis-session-storage.server-D0-72FV-.js +500 -0
- package/dist/redis-session-storage.server-D0-72FV-.js.map +1 -0
- package/dist/{server-BHfKHKF_.js → server-B7JN86_0.js} +13 -9
- package/dist/server-B7JN86_0.js.map +1 -0
- package/dist/{server-C3L8J7iE.js → server-BmiuV28c.js} +2 -2
- package/dist/{server-C3L8J7iE.js.map → server-BmiuV28c.js.map} +1 -1
- package/dist/{server-BxvRxjCK.js → server-Ce9jQRdL.js} +2 -2
- package/dist/{server-BxvRxjCK.js.map → server-Ce9jQRdL.js.map} +1 -1
- package/dist/{server-DZmcd2Lr.js → server-DeBlxoaW.js} +3 -3
- package/dist/{server-DZmcd2Lr.js.map → server-DeBlxoaW.js.map} +1 -1
- package/dist/{server-CouYoZiw.js → server-hGrElJMG.js} +2 -2
- package/dist/{server-CouYoZiw.js.map → server-hGrElJMG.js.map} +1 -1
- package/dist/server.js +18 -16
- package/dist/signalr/index.js +1 -1
- package/dist/{signalr-SJ-1sIxw.js → signalr-CSfCz1Ik.js} +1 -1
- package/dist/{signalr-SJ-1sIxw.js.map → signalr-CSfCz1Ik.js.map} +1 -1
- package/dist/tenant/index.js +1 -1
- package/dist/tenant/server.js +2 -2
- package/dist/{tenant-C6KPaSCX.js → tenant-BErqEENp.js} +1 -1
- package/dist/{tenant-C6KPaSCX.js.map → tenant-BErqEENp.js.map} +1 -1
- package/dist/{types-BnKaWdfe.js → types-BaaE6wjY.js} +1 -1
- package/dist/{types-BnKaWdfe.js.map → types-BaaE6wjY.js.map} +1 -1
- package/package.json +7 -6
- package/dist/auth.server-BPiCtlJE.js +0 -5
- package/dist/auth.server-Cx2h2qu3.js +0 -724
- package/dist/auth.server-Cx2h2qu3.js.map +0 -1
- package/dist/permissions-D5ScGGnd.js.map +0 -1
- package/dist/query-client-Bpe08pk9.js.map +0 -1
- package/dist/redis-session-storage.server-BR_0y-QO.js +0 -250
- package/dist/redis-session-storage.server-BR_0y-QO.js.map +0 -1
- package/dist/server-BHfKHKF_.js.map +0 -1
- package/dist/utils.d.ts +0 -6
- package/dist/utils.d.ts.map +0 -1
- /package/dist/{src-CJ2RLi94.js → src-B9rDUgSb.js} +0 -0
package/dist/auth/types.d.ts
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
5
|
* Application Type
|
|
6
|
-
*
|
|
6
|
+
* Describes app UX shape for login/error handling.
|
|
7
7
|
*/
|
|
8
8
|
export type ApplicationType = 'no-landing-page' | 'landing-page' | 'dashboard' | 'tenant-app' | 'custom';
|
|
9
|
+
export type OidcClientAuthMethod = 'none' | 'client_secret_post' | 'client_secret_basic';
|
|
9
10
|
/**
|
|
10
11
|
* OAuth Configuration
|
|
11
12
|
*/
|
|
@@ -13,32 +14,22 @@ export interface AuthConfig {
|
|
|
13
14
|
authority: string;
|
|
14
15
|
clientId: string;
|
|
15
16
|
clientSecret?: string;
|
|
17
|
+
clientAuthMethod?: OidcClientAuthMethod;
|
|
16
18
|
redirectUri: string;
|
|
17
19
|
postLogoutRedirectUri?: string;
|
|
18
20
|
scope: string;
|
|
19
21
|
/**
|
|
20
|
-
* Application type - determines
|
|
21
|
-
*
|
|
22
|
-
* -
|
|
22
|
+
* Application type - determines landing/error handling only.
|
|
23
|
+
* Logout scope is request intent:
|
|
24
|
+
* - default `/auth/logout`: RP-Initiated Logout at the identity provider
|
|
25
|
+
* - `/auth/logout?logout=local`: application session cleanup only
|
|
26
|
+
*
|
|
27
|
+
* Aliases:
|
|
23
28
|
* - 'dashboard': Legacy alias for 'no-landing-page'
|
|
24
29
|
* - 'tenant-app': Legacy alias for 'landing-page'
|
|
25
|
-
* - 'custom': Use explicit ssoLogout setting
|
|
26
30
|
* @default 'custom'
|
|
27
31
|
*/
|
|
28
32
|
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
33
|
/**
|
|
43
34
|
* Whether the application has a landing page
|
|
44
35
|
* - true: Has landing page - OAuth errors redirect to home, user sees landing
|
|
@@ -95,20 +86,57 @@ export interface OAuthState {
|
|
|
95
86
|
codeVerifier: string;
|
|
96
87
|
nonce?: string;
|
|
97
88
|
returnUrl?: string;
|
|
89
|
+
/** Keycloak application initiated action requested for this authorization flow. */
|
|
90
|
+
kcAction?: string;
|
|
98
91
|
createdAt: number;
|
|
99
92
|
}
|
|
100
93
|
/**
|
|
101
94
|
* Session Data stored in Redis
|
|
102
95
|
*/
|
|
103
96
|
export interface SessionData {
|
|
97
|
+
sessionId?: string;
|
|
104
98
|
userId?: string;
|
|
105
99
|
accessToken?: string;
|
|
106
100
|
refreshToken?: string;
|
|
107
101
|
idToken?: string;
|
|
108
102
|
expiresAt?: number;
|
|
103
|
+
issuer?: string;
|
|
104
|
+
sid?: string;
|
|
105
|
+
sessionState?: string;
|
|
106
|
+
clientId?: string;
|
|
107
|
+
ipAddress?: string;
|
|
108
|
+
userAgent?: string;
|
|
109
109
|
user?: UserInfo;
|
|
110
|
+
createdAt?: number;
|
|
110
111
|
lastActivity?: number;
|
|
111
112
|
}
|
|
113
|
+
export interface AuthSessionSummary {
|
|
114
|
+
sessionId: string;
|
|
115
|
+
userId?: string;
|
|
116
|
+
email?: string;
|
|
117
|
+
name?: string;
|
|
118
|
+
issuer?: string;
|
|
119
|
+
sid?: string;
|
|
120
|
+
sessionState?: string;
|
|
121
|
+
clientId?: string;
|
|
122
|
+
ipAddress?: string;
|
|
123
|
+
userAgent?: string;
|
|
124
|
+
createdAt?: number;
|
|
125
|
+
lastActivity?: number;
|
|
126
|
+
expiresAt?: number;
|
|
127
|
+
isCurrent?: boolean;
|
|
128
|
+
}
|
|
129
|
+
export interface BackChannelLogoutResult {
|
|
130
|
+
destroyedSessions: number;
|
|
131
|
+
issuer?: string;
|
|
132
|
+
subject?: string;
|
|
133
|
+
sid?: string;
|
|
134
|
+
}
|
|
135
|
+
export interface FrontChannelLogoutResult {
|
|
136
|
+
destroyedSessions: number;
|
|
137
|
+
issuer?: string;
|
|
138
|
+
sid?: string;
|
|
139
|
+
}
|
|
112
140
|
/**
|
|
113
141
|
* Session Flash Data for temporary messages
|
|
114
142
|
*/
|
|
@@ -145,8 +173,25 @@ export type ProtectedLoaderFn<T> = (user?: UserInfo) => Promise<T> | T;
|
|
|
145
173
|
export interface LoginOptions {
|
|
146
174
|
/** Return URL after successful login */
|
|
147
175
|
returnUrl?: string;
|
|
148
|
-
/** OAuth prompt parameter (none, login, consent, select_account) */
|
|
149
|
-
prompt?: 'none' | 'login' | 'consent' | 'select_account';
|
|
176
|
+
/** OAuth prompt parameter (none, login, consent, select_account, create) */
|
|
177
|
+
prompt?: 'none' | 'login' | 'consent' | 'select_account' | 'create';
|
|
178
|
+
/**
|
|
179
|
+
* Additional authorization request parameters.
|
|
180
|
+
*
|
|
181
|
+
* Use this for safe provider hints: `login_hint`, `ui_locales`,
|
|
182
|
+
* `acr_values`, `kc_idp_hint`, or custom `uf_` theme context parameters.
|
|
183
|
+
* Security-sensitive protocol parameters such as state, nonce, redirect_uri,
|
|
184
|
+
* scope, PKCE, prompt, and kc_action are managed by Spine and cannot be
|
|
185
|
+
* overridden.
|
|
186
|
+
*/
|
|
187
|
+
extraAuthParams?: Record<string, string | number | boolean | null | undefined>;
|
|
188
|
+
/**
|
|
189
|
+
* Keycloak application initiated action.
|
|
190
|
+
*
|
|
191
|
+
* Example: `webauthn-register` starts native passkey registration.
|
|
192
|
+
* This is Keycloak-specific and is ignored by non-Keycloak providers.
|
|
193
|
+
*/
|
|
194
|
+
kcAction?: string;
|
|
150
195
|
}
|
|
151
196
|
/**
|
|
152
197
|
* Auth error information from OAuth callback
|
package/dist/auth/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,cAAc,GACd,WAAW,GACX,YAAY,GACZ,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IAEd
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
|