New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@logto/client

Package Overview
Dependencies
Maintainers
1
Versions
54
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@logto/client - npm Package Compare versions

Comparing version 1.0.0-beta.6 to 1.0.0-beta.7

34

lib/index.d.ts
import { Requester, Prompt, IdTokenClaims, UserInfoResponse } from "@logto/js";
import { Nullable, NormalizeKeyPaths } from "@silverhand/essentials";
import { Infer } from "superstruct";
export type StorageKey = 'idToken' | 'refreshToken' | 'accessToken' | 'signInSession';

@@ -42,32 +41,19 @@ export type Storage = {

prompt?: Prompt;
persistAccessToken?: boolean;
};
export const AccessTokenSchema: import("superstruct").Struct<{
export type AccessToken = {
token: string;
scope: string;
expiresAt: number;
}, {
token: import("superstruct").Struct<string, null>;
scope: import("superstruct").Struct<string, null>;
expiresAt: import("superstruct").Struct<number, null>;
}>;
export type AccessToken = Infer<typeof AccessTokenSchema>;
export const LogtoSignInSessionItemSchema: import("superstruct").Struct<{
};
export const isLogtoSignInSessionItem: (data: unknown) => data is LogtoSignInSessionItem;
export const isLogtoAccessTokenMap: (data: unknown) => data is Record<string, AccessToken>;
export type LogtoSignInSessionItem = {
redirectUri: string;
codeVerifier: string;
state: string;
}, {
redirectUri: import("superstruct").Struct<string, null>;
codeVerifier: import("superstruct").Struct<string, null>;
state: import("superstruct").Struct<string, null>;
}>;
export const LogtoAccessTokenMapSchema: import("superstruct").Struct<Record<string, {
token: string;
scope: string;
expiresAt: number;
}>, null>;
export type LogtoSignInSessionItem = Infer<typeof LogtoSignInSessionItemSchema>;
};
export const createRequester: (fetchFunction: typeof fetch) => Requester;
export type { IdTokenClaims, LogtoErrorCode, UserInfoResponse } from '@logto/js';
export { LogtoError, OidcError, Prompt, LogtoRequestError } from '@logto/js';
export { ReservedScope, UserScope } from '@logto/core-kit';
export default class LogtoClient {

@@ -78,7 +64,3 @@ protected readonly logtoConfig: LogtoConfig;

protected readonly adapter: ClientAdapter;
protected readonly accessTokenMap: Map<string, {
token: string;
scope: string;
expiresAt: number;
}>;
protected readonly accessTokenMap: Map<string, AccessToken>;
constructor(logtoConfig: LogtoConfig, adapter: ClientAdapter);

@@ -85,0 +67,0 @@ isAuthenticated(): Promise<boolean>;

@@ -0,5 +1,5 @@

var $4R6L3$logtocorekit = require("@logto/core-kit");
var $4R6L3$logtojs = require("@logto/js");
var $4R6L3$jose = require("jose");
var $4R6L3$lodashonce = require("lodash.once");
var $4R6L3$superstruct = require("superstruct");
var $4R6L3$lodashget = require("lodash.get");

@@ -41,2 +41,4 @@

$parcel$export(module.exports, "createRequester", () => $b455f57f80fbf6bf$export$8d54726fdbf08e0a);
$parcel$export(module.exports, "ReservedScope", () => $4R6L3$logtocorekit.ReservedScope);
$parcel$export(module.exports, "UserScope", () => $f73788ae50447ce9$re_export$UserScope);

@@ -77,17 +79,20 @@

$parcel$export($6d3989f7f53311af$exports, "AccessTokenSchema", () => $6d3989f7f53311af$export$77bdbaff506443f4);
$parcel$export($6d3989f7f53311af$exports, "LogtoSignInSessionItemSchema", () => $6d3989f7f53311af$export$7b65a75f516b80e1);
$parcel$export($6d3989f7f53311af$exports, "LogtoAccessTokenMapSchema", () => $6d3989f7f53311af$export$4ae7b9c313038df5);
$parcel$export($6d3989f7f53311af$exports, "isLogtoSignInSessionItem", () => $6d3989f7f53311af$export$5d8adf6e063019de);
$parcel$export($6d3989f7f53311af$exports, "isLogtoAccessTokenMap", () => $6d3989f7f53311af$export$c12fab42a9a3e2a6);
const $6d3989f7f53311af$export$77bdbaff506443f4 = (0, $4R6L3$superstruct.type)({
token: (0, $4R6L3$superstruct.string)(),
scope: (0, $4R6L3$superstruct.string)(),
expiresAt: (0, $4R6L3$superstruct.number)()
});
const $6d3989f7f53311af$export$7b65a75f516b80e1 = (0, $4R6L3$superstruct.type)({
redirectUri: (0, $4R6L3$superstruct.string)(),
codeVerifier: (0, $4R6L3$superstruct.string)(),
state: (0, $4R6L3$superstruct.string)()
});
const $6d3989f7f53311af$export$4ae7b9c313038df5 = (0, $4R6L3$superstruct.record)((0, $4R6L3$superstruct.string)(), $6d3989f7f53311af$export$77bdbaff506443f4);
const $6d3989f7f53311af$export$5d8adf6e063019de = (data)=>{
if (!(0, $4R6L3$logtojs.isArbitraryObject)(data)) return false;
return [
"redirectUri",
"codeVerifier",
"state"
].every((key)=>typeof data[key] === "string");
};
const $6d3989f7f53311af$export$c12fab42a9a3e2a6 = (data)=>{
if (!(0, $4R6L3$logtojs.isArbitraryObject)(data)) return false;
return Object.values(data).every((value)=>{
if (!(0, $4R6L3$logtojs.isArbitraryObject)(value)) return false;
return typeof value.token === "string" && typeof value.scope === "string" && typeof value.expiresAt === "number";
});
};

@@ -102,3 +107,3 @@

const responseJson = await response.json();
if (!(0, $4R6L3$logtojs.logtoRequestErrorSchema).is(responseJson)) throw new (0, $4R6L3$logtojs.LogtoError)("unexpected_response_error", responseJson);
if (!(0, $4R6L3$logtojs.isLogtoRequestError)(responseJson)) throw new (0, $4R6L3$logtojs.LogtoError)("unexpected_response_error", responseJson);
// Expected request error from server

@@ -121,2 +126,3 @@ const { code: code , message: message } = responseJson;

class $f73788ae50447ce9$export$2e2bcd8739ae039 {

@@ -131,6 +137,6 @@ getOidcConfig = (0, ($parcel$interopDefault($4R6L3$lodashonce)))(this._getOidcConfig);

prompt: logtoConfig.prompt ?? (0, $4R6L3$logtojs.Prompt).Consent,
scopes: (0, $4R6L3$logtojs.withReservedScopes)(logtoConfig.scopes).split(" ")
scopes: (0, $4R6L3$logtojs.withDefaultScopes)(logtoConfig.scopes).split(" ")
};
this.adapter = adapter;
if (this.logtoConfig.persistAccessToken) this.loadAccessTokenMap();
this.loadAccessTokenMap();
}

@@ -256,9 +262,5 @@ async isAuthenticated() {

if (!jsonItem) return null;
try {
const item = JSON.parse(jsonItem);
(0, $4R6L3$superstruct.assert)(item, (0, $6d3989f7f53311af$export$7b65a75f516b80e1));
return item;
} catch (error) {
throw new (0, $9166104b36889c59$export$877962ca249b8fc8)("sign_in_session.invalid", error);
}
const item = JSON.parse(jsonItem);
if (!(0, $6d3989f7f53311af$export$5d8adf6e063019de)(item)) throw new (0, $9166104b36889c59$export$877962ca249b8fc8)("sign_in_session.invalid");
return item;
}

@@ -300,3 +302,3 @@ async setSignInSession(logtoSignInSessionItem) {

scopes: resource ? [
"offline_access"
(0, $4R6L3$logtocorekit.ReservedScope).OfflineAccess
] : undefined

@@ -353,3 +355,2 @@ }, this.adapter.requester);

async saveAccessTokenMap() {
if (!this.logtoConfig.persistAccessToken) return;
const data = {};

@@ -365,3 +366,3 @@ for (const [key, accessToken] of this.accessTokenMap.entries())// eslint-disable-next-line @silverhand/fp/no-mutation

const json = JSON.parse(raw);
(0, $4R6L3$superstruct.assert)(json, (0, $6d3989f7f53311af$export$4ae7b9c313038df5));
if (!(0, $6d3989f7f53311af$export$c12fab42a9a3e2a6)(json)) return;
this.accessTokenMap.clear();

@@ -368,0 +369,0 @@ for (const [key, accessToken] of Object.entries(json))this.accessTokenMap.set(key, accessToken);

@@ -1,5 +0,5 @@

import {Prompt as $19775a679e2952df$import$5548085c5b0a2ee3$83716a4aa1642908, withReservedScopes as $kqBTI$withReservedScopes, decodeIdToken as $kqBTI$decodeIdToken, fetchUserInfo as $kqBTI$fetchUserInfo, generateSignInUri as $kqBTI$generateSignInUri, verifyAndParseCodeFromCallbackUri as $kqBTI$verifyAndParseCodeFromCallbackUri, fetchTokenByAuthorizationCode as $kqBTI$fetchTokenByAuthorizationCode, revoke as $kqBTI$revoke, generateSignOutUri as $kqBTI$generateSignOutUri, fetchTokenByRefreshToken as $kqBTI$fetchTokenByRefreshToken, fetchOidcConfig as $kqBTI$fetchOidcConfig, verifyIdToken as $kqBTI$verifyIdToken, LogtoError as $19775a679e2952df$re_export$LogtoError, OidcError as $19775a679e2952df$re_export$OidcError, LogtoRequestError as $19775a679e2952df$re_export$LogtoRequestError, discoveryPath as $kqBTI$discoveryPath, logtoRequestErrorSchema as $kqBTI$logtoRequestErrorSchema} from "@logto/js";
import {ReservedScope as $19775a679e2952df$import$2bf383245f9cd522$1d2e82cebfd4b08, UserScope as $19775a679e2952df$re_export$UserScope} from "@logto/core-kit";
import {Prompt as $19775a679e2952df$import$5548085c5b0a2ee3$83716a4aa1642908, withDefaultScopes as $kqBTI$withDefaultScopes, decodeIdToken as $kqBTI$decodeIdToken, fetchUserInfo as $kqBTI$fetchUserInfo, generateSignInUri as $kqBTI$generateSignInUri, verifyAndParseCodeFromCallbackUri as $kqBTI$verifyAndParseCodeFromCallbackUri, fetchTokenByAuthorizationCode as $kqBTI$fetchTokenByAuthorizationCode, revoke as $kqBTI$revoke, generateSignOutUri as $kqBTI$generateSignOutUri, fetchTokenByRefreshToken as $kqBTI$fetchTokenByRefreshToken, fetchOidcConfig as $kqBTI$fetchOidcConfig, verifyIdToken as $kqBTI$verifyIdToken, LogtoError as $19775a679e2952df$re_export$LogtoError, OidcError as $19775a679e2952df$re_export$OidcError, LogtoRequestError as $19775a679e2952df$re_export$LogtoRequestError, isArbitraryObject as $kqBTI$isArbitraryObject, discoveryPath as $kqBTI$discoveryPath, isLogtoRequestError as $kqBTI$isLogtoRequestError} from "@logto/js";
import {createRemoteJWKSet as $kqBTI$createRemoteJWKSet} from "jose";
import $kqBTI$lodashonce from "lodash.once";
import {assert as $kqBTI$assert, type as $kqBTI$type, string as $kqBTI$string, number as $kqBTI$number, record as $kqBTI$record} from "superstruct";
import $kqBTI$lodashget from "lodash.get";

@@ -45,17 +45,20 @@

$parcel$export($50f2bb780a45e70c$exports, "AccessTokenSchema", () => $50f2bb780a45e70c$export$77bdbaff506443f4);
$parcel$export($50f2bb780a45e70c$exports, "LogtoSignInSessionItemSchema", () => $50f2bb780a45e70c$export$7b65a75f516b80e1);
$parcel$export($50f2bb780a45e70c$exports, "LogtoAccessTokenMapSchema", () => $50f2bb780a45e70c$export$4ae7b9c313038df5);
$parcel$export($50f2bb780a45e70c$exports, "isLogtoSignInSessionItem", () => $50f2bb780a45e70c$export$5d8adf6e063019de);
$parcel$export($50f2bb780a45e70c$exports, "isLogtoAccessTokenMap", () => $50f2bb780a45e70c$export$c12fab42a9a3e2a6);
const $50f2bb780a45e70c$export$77bdbaff506443f4 = (0, $kqBTI$type)({
token: (0, $kqBTI$string)(),
scope: (0, $kqBTI$string)(),
expiresAt: (0, $kqBTI$number)()
});
const $50f2bb780a45e70c$export$7b65a75f516b80e1 = (0, $kqBTI$type)({
redirectUri: (0, $kqBTI$string)(),
codeVerifier: (0, $kqBTI$string)(),
state: (0, $kqBTI$string)()
});
const $50f2bb780a45e70c$export$4ae7b9c313038df5 = (0, $kqBTI$record)((0, $kqBTI$string)(), $50f2bb780a45e70c$export$77bdbaff506443f4);
const $50f2bb780a45e70c$export$5d8adf6e063019de = (data)=>{
if (!(0, $kqBTI$isArbitraryObject)(data)) return false;
return [
"redirectUri",
"codeVerifier",
"state"
].every((key)=>typeof data[key] === "string");
};
const $50f2bb780a45e70c$export$c12fab42a9a3e2a6 = (data)=>{
if (!(0, $kqBTI$isArbitraryObject)(data)) return false;
return Object.values(data).every((value)=>{
if (!(0, $kqBTI$isArbitraryObject)(value)) return false;
return typeof value.token === "string" && typeof value.scope === "string" && typeof value.expiresAt === "number";
});
};

@@ -70,3 +73,3 @@

const responseJson = await response.json();
if (!(0, $kqBTI$logtoRequestErrorSchema).is(responseJson)) throw new (0, $19775a679e2952df$re_export$LogtoError)("unexpected_response_error", responseJson);
if (!(0, $kqBTI$isLogtoRequestError)(responseJson)) throw new (0, $19775a679e2952df$re_export$LogtoError)("unexpected_response_error", responseJson);
// Expected request error from server

@@ -89,2 +92,3 @@ const { code: code , message: message } = responseJson;

class $19775a679e2952df$export$2e2bcd8739ae039 {

@@ -99,6 +103,6 @@ getOidcConfig = (0, $kqBTI$lodashonce)(this._getOidcConfig);

prompt: logtoConfig.prompt ?? (0, $19775a679e2952df$import$5548085c5b0a2ee3$83716a4aa1642908).Consent,
scopes: (0, $kqBTI$withReservedScopes)(logtoConfig.scopes).split(" ")
scopes: (0, $kqBTI$withDefaultScopes)(logtoConfig.scopes).split(" ")
};
this.adapter = adapter;
if (this.logtoConfig.persistAccessToken) this.loadAccessTokenMap();
this.loadAccessTokenMap();
}

@@ -224,9 +228,5 @@ async isAuthenticated() {

if (!jsonItem) return null;
try {
const item = JSON.parse(jsonItem);
(0, $kqBTI$assert)(item, (0, $50f2bb780a45e70c$export$7b65a75f516b80e1));
return item;
} catch (error) {
throw new (0, $4ec05cedcef20733$export$877962ca249b8fc8)("sign_in_session.invalid", error);
}
const item = JSON.parse(jsonItem);
if (!(0, $50f2bb780a45e70c$export$5d8adf6e063019de)(item)) throw new (0, $4ec05cedcef20733$export$877962ca249b8fc8)("sign_in_session.invalid");
return item;
}

@@ -268,3 +268,3 @@ async setSignInSession(logtoSignInSessionItem) {

scopes: resource ? [
"offline_access"
(0, $19775a679e2952df$import$2bf383245f9cd522$1d2e82cebfd4b08).OfflineAccess
] : undefined

@@ -321,3 +321,2 @@ }, this.adapter.requester);

async saveAccessTokenMap() {
if (!this.logtoConfig.persistAccessToken) return;
const data = {};

@@ -333,3 +332,3 @@ for (const [key, accessToken] of this.accessTokenMap.entries())// eslint-disable-next-line @silverhand/fp/no-mutation

const json = JSON.parse(raw);
(0, $kqBTI$assert)(json, (0, $50f2bb780a45e70c$export$4ae7b9c313038df5));
if (!(0, $50f2bb780a45e70c$export$c12fab42a9a3e2a6)(json)) return;
this.accessTokenMap.clear();

@@ -342,3 +341,3 @@ for (const [key, accessToken] of Object.entries(json))this.accessTokenMap.set(key, accessToken);

export {$19775a679e2952df$export$2e2bcd8739ae039 as default, $19775a679e2952df$re_export$LogtoError as LogtoError, $19775a679e2952df$re_export$OidcError as OidcError, $19775a679e2952df$import$5548085c5b0a2ee3$83716a4aa1642908 as Prompt, $19775a679e2952df$re_export$LogtoRequestError as LogtoRequestError, $8449a5dbad0d6387$export$8d54726fdbf08e0a as createRequester, $4ec05cedcef20733$export$877962ca249b8fc8 as LogtoClientError, $50f2bb780a45e70c$export$77bdbaff506443f4 as AccessTokenSchema, $50f2bb780a45e70c$export$7b65a75f516b80e1 as LogtoSignInSessionItemSchema, $50f2bb780a45e70c$export$4ae7b9c313038df5 as LogtoAccessTokenMapSchema};
export {$19775a679e2952df$export$2e2bcd8739ae039 as default, $19775a679e2952df$re_export$LogtoError as LogtoError, $19775a679e2952df$re_export$OidcError as OidcError, $19775a679e2952df$import$5548085c5b0a2ee3$83716a4aa1642908 as Prompt, $19775a679e2952df$re_export$LogtoRequestError as LogtoRequestError, $8449a5dbad0d6387$export$8d54726fdbf08e0a as createRequester, $19775a679e2952df$import$2bf383245f9cd522$1d2e82cebfd4b08 as ReservedScope, $19775a679e2952df$re_export$UserScope as UserScope, $4ec05cedcef20733$export$877962ca249b8fc8 as LogtoClientError, $50f2bb780a45e70c$export$5d8adf6e063019de as isLogtoSignInSessionItem, $50f2bb780a45e70c$export$c12fab42a9a3e2a6 as isLogtoAccessTokenMap};
//# sourceMappingURL=module.js.map
{
"name": "@logto/client",
"version": "1.0.0-beta.6",
"version": "1.0.0-beta.7",
"source": "./src/index.ts",

@@ -32,3 +32,4 @@ "main": "./lib/index.js",

"dependencies": {
"@logto/js": "^1.0.0-beta.6",
"@logto/core-kit": "1.0.0-beta.13",
"@logto/js": "^1.0.0-beta.7",
"@silverhand/essentials": "^1.2.1",

@@ -38,4 +39,3 @@ "camelcase-keys": "^7.0.1",

"lodash.get": "^4.4.2",
"lodash.once": "^4.1.1",
"superstruct": "^0.16.0"
"lodash.once": "^4.1.1"
},

@@ -72,3 +72,3 @@ "devDependencies": {

},
"gitHead": "952fed1f1c61d30d539b2256501c8eb7d865c022"
"gitHead": "f0e50fa33e26f386966e2f4c1f50cccbf2b5705c"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc