@authrim/sveltekit 0.1.2 → 0.1.3
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.map +1 -1
- package/dist/client.js +2 -2
- package/dist/direct-auth/session.d.ts +1 -1
- package/dist/direct-auth/session.d.ts.map +1 -1
- package/dist/direct-auth/session.js +4 -1
- package/dist/direct-auth/social.d.ts +1 -1
- package/dist/direct-auth/social.d.ts.map +1 -1
- package/dist/direct-auth/social.js +29 -2
- package/package.json +3 -3
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/lib/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAgBd,MAAM,YAAY,CAAC;AAmEpB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/lib/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAgBd,MAAM,YAAY,CAAC;AAmEpB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,CAsbxB"}
|
package/dist/client.js
CHANGED
|
@@ -80,8 +80,8 @@ export async function createAuthrim(config) {
|
|
|
80
80
|
http,
|
|
81
81
|
});
|
|
82
82
|
// Token exchange callback
|
|
83
|
-
const exchangeToken = async (authCode, codeVerifier) => {
|
|
84
|
-
return sessionManager.exchangeToken(authCode, codeVerifier);
|
|
83
|
+
const exchangeToken = async (authCode, codeVerifier, providerId) => {
|
|
84
|
+
return sessionManager.exchangeToken(authCode, codeVerifier, undefined, providerId);
|
|
85
85
|
};
|
|
86
86
|
// Create Direct Auth implementations
|
|
87
87
|
const passkeyImpl = new PasskeyAuthImpl({
|
|
@@ -25,7 +25,7 @@ export declare class SessionAuthImpl implements SessionAuth {
|
|
|
25
25
|
getUser(): Promise<User | null>;
|
|
26
26
|
validate(): Promise<boolean>;
|
|
27
27
|
logout(options?: DirectAuthLogoutOptions): Promise<void>;
|
|
28
|
-
exchangeToken(authCode: string, codeVerifier: string, requestRefreshToken?: boolean): Promise<{
|
|
28
|
+
exchangeToken(authCode: string, codeVerifier: string, requestRefreshToken?: boolean, providerId?: string): Promise<{
|
|
29
29
|
session?: Session;
|
|
30
30
|
user?: User;
|
|
31
31
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/lib/direct-auth/session.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAG5B,KAAK,IAAI,EACV,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAU9D,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAaD,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,aAAa,CAAwB;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAE/B,OAAO,EAAE,qBAAqB;IAO1C,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,iBAAiB;IASnB,GAAG,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAyC9B,OAAO,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAS/B,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAY5B,MAAM,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCxD,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/lib/direct-auth/session.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAG5B,KAAK,IAAI,EACV,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAU9D,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAaD,qBAAa,eAAgB,YAAW,WAAW;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,aAAa,CAAwB;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAE/B,OAAO,EAAE,qBAAqB;IAO1C,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,iBAAiB;IASnB,GAAG,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAyC9B,OAAO,IAAI,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAS/B,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAY5B,MAAM,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCxD,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,OAAO,EAC7B,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC;IAmE9C;;;;;;;;;;OAUG;IACG,OAAO,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAKlC,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAUzC,UAAU,IAAI,IAAI;IAMlB,QAAQ,IAAI,MAAM,GAAG,IAAI;CAG1B"}
|
|
@@ -144,7 +144,7 @@ export class SessionAuthImpl {
|
|
|
144
144
|
window.location.href = options.redirectUri;
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
|
-
async exchangeToken(authCode, codeVerifier, requestRefreshToken) {
|
|
147
|
+
async exchangeToken(authCode, codeVerifier, requestRefreshToken, providerId) {
|
|
148
148
|
const request = {
|
|
149
149
|
grant_type: 'authorization_code',
|
|
150
150
|
code: authCode,
|
|
@@ -152,6 +152,9 @@ export class SessionAuthImpl {
|
|
|
152
152
|
code_verifier: codeVerifier,
|
|
153
153
|
request_refresh_token: requestRefreshToken,
|
|
154
154
|
};
|
|
155
|
+
if (providerId) {
|
|
156
|
+
request.provider_id = providerId;
|
|
157
|
+
}
|
|
155
158
|
const response = await this.http.fetch(`${this.issuer}${ENDPOINTS.TOKEN}`, {
|
|
156
159
|
method: 'POST',
|
|
157
160
|
headers: { 'Content-Type': 'application/json' },
|
|
@@ -7,7 +7,7 @@ export interface SocialAuthOptions {
|
|
|
7
7
|
clientId: string;
|
|
8
8
|
crypto: CryptoProvider;
|
|
9
9
|
storage: AuthrimStorage;
|
|
10
|
-
exchangeToken: (authCode: string, codeVerifier: string) => Promise<{
|
|
10
|
+
exchangeToken: (authCode: string, codeVerifier: string, providerId?: string) => Promise<{
|
|
11
11
|
session?: Session;
|
|
12
12
|
user?: User;
|
|
13
13
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.d.ts","sourceRoot":"","sources":["../../src/lib/direct-auth/social.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,IAAI,EACV,MAAM,eAAe,CAAC;AAwGvB,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;IACxB,aAAa,EAAE,CACb,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"social.d.ts","sourceRoot":"","sources":["../../src/lib/direct-auth/social.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,IAAI,EACV,MAAM,eAAe,CAAC;AAwGvB,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;IACxB,aAAa,EAAE,CACb,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,KAChB,OAAO,CAAC;QACX,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,IAAI,CAAC,EAAE,IAAI,CAAC;KACb,CAAC,CAAC;IACH;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAYD,qBAAa,cAAe,YAAW,UAAU;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqC;IACnE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,YAAY,CAA+C;IACnE,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAgC;gBAE5D,OAAO,EAAE,iBAAiB;IActC;;OAEG;IACH,OAAO,IAAI,IAAI;IAOT,cAAc,CAClB,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE,kBAAkB,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GACrD,OAAO,CAAC,UAAU,CAAC;IAmEhB,iBAAiB,CACrB,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE,kBAAkB,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GACrD,OAAO,CAAC,IAAI,CAAC;IA6BV,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC;IA6H3C,iBAAiB,IAAI,OAAO;IAK5B,qBAAqB,IAAI,cAAc,EAAE;YAI3B,aAAa;IAM3B,OAAO,CAAC,qBAAqB;IA+B7B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,wBAAwB;YAelB,kBAAkB;IAmIhC,OAAO,CAAC,YAAY;YAaN,gBAAgB;IAO9B,OAAO,CAAC,cAAc;CAQvB"}
|
|
@@ -264,8 +264,21 @@ export class SocialAuthImpl {
|
|
|
264
264
|
},
|
|
265
265
|
};
|
|
266
266
|
}
|
|
267
|
+
const providerId = await this.storage.get(STORAGE_KEYS.PROVIDER);
|
|
268
|
+
if (!providerId) {
|
|
269
|
+
await this.clearStoredState();
|
|
270
|
+
return {
|
|
271
|
+
success: false,
|
|
272
|
+
error: {
|
|
273
|
+
error: 'invalid_state',
|
|
274
|
+
error_description: 'No provider found. Please try again.',
|
|
275
|
+
code: 'AR004006',
|
|
276
|
+
meta: { retryable: false, severity: 'error' },
|
|
277
|
+
},
|
|
278
|
+
};
|
|
279
|
+
}
|
|
267
280
|
try {
|
|
268
|
-
const { session, user } = await this.exchangeToken(code, codeVerifier);
|
|
281
|
+
const { session, user } = await this.exchangeToken(code, codeVerifier, providerId);
|
|
269
282
|
// Extract redirectTo from state (after validation)
|
|
270
283
|
const stateData = storedState ? decodeStateData(storedState) : null;
|
|
271
284
|
const redirectTo = stateData?.redirectTo && isValidRelativePath(stateData.redirectTo)
|
|
@@ -428,8 +441,22 @@ export class SocialAuthImpl {
|
|
|
428
441
|
await this.clearStoredState();
|
|
429
442
|
return;
|
|
430
443
|
}
|
|
444
|
+
const providerId = await this.storage.get(STORAGE_KEYS.PROVIDER);
|
|
445
|
+
if (!providerId) {
|
|
446
|
+
resolve({
|
|
447
|
+
success: false,
|
|
448
|
+
error: {
|
|
449
|
+
error: 'invalid_state',
|
|
450
|
+
error_description: 'No provider found',
|
|
451
|
+
code: 'AR004006',
|
|
452
|
+
meta: { retryable: false, severity: 'error' },
|
|
453
|
+
},
|
|
454
|
+
});
|
|
455
|
+
await this.clearStoredState();
|
|
456
|
+
return;
|
|
457
|
+
}
|
|
431
458
|
try {
|
|
432
|
-
const { session, user } = await this.exchangeToken(data.code, codeVerifier);
|
|
459
|
+
const { session, user } = await this.exchangeToken(data.code, codeVerifier, providerId);
|
|
433
460
|
// Extract redirectTo from state (after validation)
|
|
434
461
|
const stateData = storedState ? decodeStateData(storedState) : null;
|
|
435
462
|
const redirectTo = stateData?.redirectTo && isValidRelativePath(stateData.redirectTo)
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@authrim/sveltekit",
|
|
3
3
|
"packageManager": "pnpm@9.15.0",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.3",
|
|
5
5
|
"description": "SvelteKit SDK for Authrim authentication",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"svelte": "./dist/index.js",
|
|
@@ -84,12 +84,12 @@
|
|
|
84
84
|
"url": "https://github.com/authrim/js-sveltekit/issues"
|
|
85
85
|
},
|
|
86
86
|
"peerDependencies": {
|
|
87
|
-
"@authrim/core": ">=0.1.
|
|
87
|
+
"@authrim/core": ">=0.1.14",
|
|
88
88
|
"svelte": "^4.0.0 || ^5.0.0",
|
|
89
89
|
"@sveltejs/kit": "^2.0.0"
|
|
90
90
|
},
|
|
91
91
|
"devDependencies": {
|
|
92
|
-
"@authrim/core": "^0.1.
|
|
92
|
+
"@authrim/core": "^0.1.14",
|
|
93
93
|
"@sveltejs/adapter-auto": "^3.0.0",
|
|
94
94
|
"@sveltejs/kit": "^2.0.0",
|
|
95
95
|
"@sveltejs/package": "^2.0.0",
|