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

@logto/browser

Package Overview
Dependencies
Maintainers
1
Versions
66
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@logto/browser - npm Package Compare versions

Comparing version 1.1.2 to 2.0.0

./lib/index.cjs

57

lib/index.js

@@ -1,26 +0,19 @@

'use strict';
import BaseClient, { createRequester } from '@logto/client';
export { LogtoClientError, LogtoError, LogtoRequestError, OidcError, Prompt, ReservedScope, UserScope } from '@logto/client';
import { BrowserStorage } from './storage.js';
import { generateCodeChallenge, generateCodeVerifier, generateState } from './utils/generators.js';
Object.defineProperty(exports, '__esModule', { value: true });
var BaseClient = require('@logto/client');
var storage = require('./storage.js');
var generators = require('./utils/generators.js');
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
var BaseClient__default = /*#__PURE__*/_interopDefault(BaseClient);
const navigate = (url) => {
window.location.assign(url);
};
class LogtoClient extends BaseClient__default.default {
class LogtoClient extends BaseClient {
constructor(config) {
const requester = BaseClient.createRequester(fetch);
const requester = createRequester(fetch);
super(config, {
requester,
navigate,
storage: new storage.BrowserStorage(config.appId),
generateCodeChallenge: generators.generateCodeChallenge,
generateCodeVerifier: generators.generateCodeVerifier,
generateState: generators.generateState,
storage: new BrowserStorage(config.appId),
generateCodeChallenge,
generateCodeVerifier,
generateState,
});

@@ -30,30 +23,2 @@ }

Object.defineProperty(exports, 'LogtoClientError', {
enumerable: true,
get: function () { return BaseClient.LogtoClientError; }
});
Object.defineProperty(exports, 'LogtoError', {
enumerable: true,
get: function () { return BaseClient.LogtoError; }
});
Object.defineProperty(exports, 'LogtoRequestError', {
enumerable: true,
get: function () { return BaseClient.LogtoRequestError; }
});
Object.defineProperty(exports, 'OidcError', {
enumerable: true,
get: function () { return BaseClient.OidcError; }
});
Object.defineProperty(exports, 'Prompt', {
enumerable: true,
get: function () { return BaseClient.Prompt; }
});
Object.defineProperty(exports, 'ReservedScope', {
enumerable: true,
get: function () { return BaseClient.ReservedScope; }
});
Object.defineProperty(exports, 'UserScope', {
enumerable: true,
get: function () { return BaseClient.UserScope; }
});
exports.default = LogtoClient;
export { LogtoClient as default };

@@ -1,3 +0,1 @@

'use strict';
const logtoStorageItemKeyPrefix = `logto`;

@@ -30,3 +28,2 @@ class BrowserStorage {

exports.BrowserStorage = BrowserStorage;
exports.logtoStorageItemKeyPrefix = logtoStorageItemKeyPrefix;
export { BrowserStorage, logtoStorageItemKeyPrefix };

@@ -1,6 +0,4 @@

'use strict';
import { LogtoError } from '@logto/client';
import { fromUint8Array } from 'js-base64';
var BaseClient = require('@logto/client');
var jsBase64 = require('js-base64');
/** @link [Proof Key for Code Exchange by OAuth Public Clients](https://datatracker.ietf.org/doc/html/rfc7636) */

@@ -10,3 +8,3 @@ /**

*/
const generateRandomString = (length = 64) => jsBase64.fromUint8Array(crypto.getRandomValues(new Uint8Array(length)), true);
const generateRandomString = (length = 64) => fromUint8Array(crypto.getRandomValues(new Uint8Array(length)), true);
/**

@@ -36,11 +34,9 @@ * Generates random string for state and encodes them in url safe base64

*/
throw new BaseClient.LogtoError('crypto_subtle_unavailable');
throw new LogtoError('crypto_subtle_unavailable');
}
const encodedCodeVerifier = new TextEncoder().encode(codeVerifier);
const codeChallenge = new Uint8Array(await crypto.subtle.digest('SHA-256', encodedCodeVerifier));
return jsBase64.fromUint8Array(codeChallenge, true);
return fromUint8Array(codeChallenge, true);
};
exports.generateCodeChallenge = generateCodeChallenge;
exports.generateCodeVerifier = generateCodeVerifier;
exports.generateState = generateState;
export { generateCodeChallenge, generateCodeVerifier, generateState };
{
"name": "@logto/browser",
"version": "1.1.2",
"source": "./src/index.ts",
"main": "./lib/index.js",
"version": "2.0.0",
"type": "module",
"main": "./lib/index.cjs",
"module": "./lib/index.js",
"types": "./lib/index.d.ts",
"exports": {
"require": "./lib/index.js",
"import": "./lib/index.mjs"
"types": "./lib/index.d.ts",
"require": "./lib/index.cjs",
"import": "./lib/index.js",
"default": "./lib/index.js"
},
"module": "./lib/index.mjs",
"types": "./lib/index.d.ts",
"files": [

@@ -21,21 +23,10 @@ "lib"

},
"scripts": {
"dev:tsc": "tsc -p tsconfig.build.json -w --preserveWatchOutput",
"precommit": "lint-staged",
"check": "tsc --noEmit",
"build": "rm -rf lib/ && tsc -p tsconfig.build.json --noEmit && rollup -c",
"lint": "eslint --ext .ts src",
"test": "jest",
"test:coverage": "jest --silent --coverage",
"prepack": "pnpm test"
},
"dependencies": {
"@logto/client": "^1.1.2",
"@silverhand/essentials": "^2.6.1",
"@logto/client": "^2.0.0",
"@silverhand/essentials": "^2.6.2",
"js-base64": "^3.7.4"
},
"devDependencies": {
"@jest/types": "^29.5.0",
"@silverhand/eslint-config": "^2.0.0",
"@silverhand/ts-config": "^1.0.0",
"@silverhand/eslint-config": "^3.0.1",
"@silverhand/ts-config": "^3.0.0",
"@swc/core": "^1.3.50",

@@ -47,3 +38,2 @@ "@swc/jest": "^0.2.24",

"jest-environment-jsdom": "^29.5.0",
"jest-location-mock": "^1.0.9",
"jest-matcher-specific-error": "^1.0.0",

@@ -62,3 +52,11 @@ "lint-staged": "^13.0.0",

},
"gitHead": "9e9a8b0887ef67baa7c3c564590bb06e7801d03e"
}
"scripts": {
"dev:tsc": "tsc -p tsconfig.build.json -w --preserveWatchOutput",
"precommit": "lint-staged",
"check": "tsc --noEmit",
"build": "rm -rf lib/ && tsc -p tsconfig.build.json --noEmit && rollup -c",
"lint": "eslint --ext .ts src",
"test": "jest",
"test:coverage": "jest --silent --coverage"
}
}
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