auth0-lock
Advanced tools
Comparing version 11.30.5 to 11.30.6
{ | ||
"extends": ["plugin:react/recommended", "prettier", "prettier/react"], | ||
"extends": ["plugin:react/recommended", "prettier"], | ||
"env": { | ||
@@ -14,3 +14,10 @@ "browser": true, | ||
"react/no-danger": 2 | ||
} | ||
}, | ||
"plugins": ["react"], | ||
"settings": { | ||
"react": { | ||
"version": "detect" | ||
} | ||
}, | ||
"ignorePatterns": ["build/"] | ||
} |
@@ -179,3 +179,3 @@ 'use strict'; | ||
function getVersion() { | ||
return '11.30.5'; | ||
return '11.30.6'; | ||
} |
@@ -128,3 +128,3 @@ 'use strict'; | ||
method: 'registerLanguageDictionary', | ||
url: l.languageBaseUrl(m) + '/js/lock/' + '11.30.5' + '/' + language + '.js', | ||
url: l.languageBaseUrl(m) + '/js/lock/' + '11.30.6' + '/' + language + '.js', | ||
check: function check(str) { | ||
@@ -131,0 +131,0 @@ return str && str === language; |
@@ -45,3 +45,3 @@ 'use strict'; | ||
exports.default = Auth0Lock; | ||
Auth0Lock.version = '11.30.5'; | ||
Auth0Lock.version = '11.30.6'; | ||
@@ -48,0 +48,0 @@ // TODO: should we have different telemetry for classic/passwordless? |
@@ -44,2 +44,2 @@ 'use strict'; | ||
Auth0LockPasswordless.version = '11.30.5'; | ||
Auth0LockPasswordless.version = '11.30.6'; |
{ | ||
"name": "auth0-lock", | ||
"version": "11.30.5", | ||
"version": "11.30.6", | ||
"description": "Auth0 Lock", | ||
@@ -28,3 +28,3 @@ "author": "Auth0 <support@auth0.com> (http://auth0.com)", | ||
"prepublish": "cross-env BABEL_ENV=npm grunt dist", | ||
"precommit": "lint-staged", | ||
"precommit": "yarn test:es-check && lint-staged", | ||
"lint": "eslint --ext .jsx,.js src/", | ||
@@ -39,3 +39,3 @@ "test:e2e": "cross-env BABEL_ENV=test karma start --browsers ChromeHeadless", | ||
"i18n:translate": "grunt dist && node scripts/complete-translations.js && npm run i18n:prettier && npm run build", | ||
"i18n:prettier": "prettier --write --print-width 100 --single-quote src/i18n/*", | ||
"i18n:prettier": "prettier --write src/i18n/*", | ||
"i18n:validate": "node -r esm scripts/lang-audit.js" | ||
@@ -59,16 +59,15 @@ }, | ||
"bump-version": "^0.5.0", | ||
"chalk": "^3.0.0", | ||
"cross-env": "^3.1.4", | ||
"chalk": "^4.1.2", | ||
"cross-env": "^7.0.3", | ||
"css-loader": "^0.26.1", | ||
"dotenv": "^8.0.0", | ||
"emojic": "^1.1.15", | ||
"enzyme": "^3.1.0", | ||
"enzyme-adapter-react-15": "^1.0.1", | ||
"es-check": "^4.0.0", | ||
"eslint": "^4.8.0", | ||
"eslint-config-prettier": "^2.6.0", | ||
"es-check": "^6.0.0", | ||
"eslint": "^7.32.0", | ||
"eslint-config-prettier": "^8.3.0", | ||
"eslint-plugin-react": "^7.4.0", | ||
"esm": "^3.2.25", | ||
"expect.js": "^0.3.1", | ||
"flat": "^2.0.1", | ||
"flat": "^5.0.2", | ||
"glob": "^7.1.6", | ||
@@ -83,6 +82,5 @@ "grunt": "^1.3.0", | ||
"grunt-webpack": "^2.0.1", | ||
"husky": "^0.14.3", | ||
"husky": "^7.0.2", | ||
"jest": "^21.2.1", | ||
"json-beautify": "^1.0.1", | ||
"jsonwebtoken": "^7.3.0", | ||
"karma": "^6.3.4", | ||
@@ -95,13 +93,11 @@ "karma-babel-preprocessor": "^7.0.0", | ||
"karma-mocha-reporter": "^2.2.5", | ||
"lint-staged": "^4.2.3", | ||
"mocha": "^8.4.0", | ||
"lint-staged": "^11.1.2", | ||
"mocha": "^9.1.1", | ||
"node-es-module-loader": "^0.3.8", | ||
"prettier": "^1.7.4", | ||
"prettier": "^2.4.1", | ||
"puppeteer": "^10.1.0", | ||
"react-test-renderer": "^15.6.2", | ||
"semver": "^6.2.0", | ||
"sinon": "^1.15.4", | ||
"stylus": "^0.54.5", | ||
"stylus-loader": "^2.3.1", | ||
"superagent": "^5.2.2", | ||
"tmp": "^0.1.0", | ||
@@ -123,2 +119,3 @@ "uglify-js": "^2.7.4", | ||
"jsonp": "^0.2.1", | ||
"node-fetch": "^2.6.1", | ||
"password-sheriff": "^1.1.1", | ||
@@ -185,6 +182,5 @@ "prop-types": "^15.6.0", | ||
"*.{js,jsx,json}": [ | ||
"prettier --write --print-width 100 --single-quote", | ||
"git add" | ||
"prettier --write" | ||
] | ||
} | ||
} |
297
README.md
@@ -13,2 +13,3 @@ [![NPM version][npm-image]][npm-url] | ||
## Table of Contents | ||
1. [Install](#install) | ||
@@ -28,3 +29,3 @@ 2. [Cross Origin Authentication](#cross-origin-authentication) | ||
<!-- Latest patch release (recommended for production) --> | ||
<script src="https://cdn.auth0.com/js/lock/11.30.5/lock.min.js"></script> | ||
<script src="https://cdn.auth0.com/js/lock/11.30.6/lock.min.js"></script> | ||
``` | ||
@@ -55,4 +56,5 @@ | ||
```html | ||
<meta name="viewport" content="width=device-width, initial-scale=1"/> | ||
<meta name="viewport" content="width=device-width, initial-scale=1" /> | ||
``` | ||
## Cross-Origin Authentication | ||
@@ -75,4 +77,4 @@ | ||
```js | ||
var clientId = "YOUR_AUTH0_APP_CLIENTID"; | ||
var domain = "YOUR_DOMAIN_AT.auth0.com"; | ||
var clientId = 'YOUR_AUTH0_APP_CLIENTID'; | ||
var domain = 'YOUR_DOMAIN_AT.auth0.com'; | ||
var lock = new Auth0Lock(clientId, domain); | ||
@@ -82,4 +84,4 @@ var accessToken = null; | ||
lock.on("authenticated", function(authResult) { | ||
lock.getUserInfo(authResult.accessToken, function(error, profileResult) { | ||
lock.on('authenticated', function (authResult) { | ||
lock.getUserInfo(authResult.accessToken, function (error, profileResult) { | ||
if (error) { | ||
@@ -115,4 +117,4 @@ // Handle error | ||
```js | ||
var clientId = "YOUR_AUTH0_APP_CLIENTID"; | ||
var domain = "YOUR_DOMAIN_AT.auth0.com"; | ||
var clientId = 'YOUR_AUTH0_APP_CLIENTID'; | ||
var domain = 'YOUR_DOMAIN_AT.auth0.com'; | ||
var lock = new Auth0LockPasswordless(clientId, domain); | ||
@@ -122,4 +124,4 @@ var accessToken = null; | ||
lock.on("authenticated", function(authResult) { | ||
lock.getUserInfo(authResult.accessToken, function(error, profileResult) { | ||
lock.on('authenticated', function (authResult) { | ||
lock.getUserInfo(authResult.accessToken, function (error, profileResult) { | ||
if (error) { | ||
@@ -148,5 +150,5 @@ // Handle error | ||
```js | ||
lock.getUserInfo(accessToken, function(error, profile) { | ||
lock.getUserInfo(accessToken, function (error, profile) { | ||
if (!error) { | ||
alert("hello " + profile.name); | ||
alert('hello ' + profile.name); | ||
} | ||
@@ -189,6 +191,6 @@ }); | ||
// will override the allowedConnections option passed to the constructor, if any | ||
lock.show({allowedConnections: ["twitter", "facebook"]}) | ||
lock.show({ allowedConnections: ['twitter', 'facebook'] }); | ||
// will override the entire auth.params object passed to the constructor, if any | ||
lock.show({auth: {params: {state: 'auth_state'}}}) | ||
lock.show({ auth: { params: { state: 'auth_state' } } }); | ||
``` | ||
@@ -199,2 +201,3 @@ | ||
If you set the [auth.autoParseHash](#authentication-options) option to `false`, you'll need to call this method to complete the authentication flow. This method is useful when you're using a client-side router that uses a `#` to handle URLs (angular2 with `useHash` or react-router with `hashHistory`). | ||
- **hash {String}**: The hash fragment received from the redirect. | ||
@@ -206,5 +209,5 @@ - **callback {Function}**: Will be invoked after the parse is done. Has an error (if any) as the first argument and the authentication result as the second one. If there is no hash available, both arguments will be `null`. | ||
```js | ||
lock.resumeAuth(hash, function(error, authResult) { | ||
lock.resumeAuth(hash, function (error, authResult) { | ||
if (error) { | ||
alert("Could not parse hash"); | ||
alert('Could not parse hash'); | ||
} | ||
@@ -230,2 +233,3 @@ console.log(authResult.accessToken); | ||
The checkSession method allows you to acquire a new token from Auth0 for a user who is already authenticated against the universal login page for your domain. The method accepts any valid OAuth2 parameters that would normally be sent to authorize. In order to use this method, you have to enable Web Origins for your application. For more information, see [Using checkSession to acquire new tokens](https://auth0.com/docs/libraries/auth0js#using-checksession-to-acquire-new-tokens). | ||
- **params {Object}**: OAuth2 params object to send to Auth0's servers. | ||
@@ -276,4 +280,4 @@ - **callback {Function}**: Will be invoked after the response from the server is returned. Has an error (if any) as the first argument and the authentication result as the second one. | ||
- **flashMessage {Object}**: Shows an `error` or `success` flash message when Lock is shown. | ||
+ **type {String}**: The message type, it should be `error` or `success`. | ||
+ **text {String}**: The text to show. | ||
- **type {String}**: The message type, it should be `error` or `success`. | ||
- **text {String}**: The text to show. | ||
- **allowAutocomplete {Boolean}**: Determines whether or not the email or username inputs will allow autocomplete (`<input autocomplete />`). Defaults to `false`. | ||
@@ -285,3 +289,2 @@ - **scrollGlobalMessagesIntoView {Boolean}**: Determines whether or not a globalMessage should be scrolled into the user's viewport. Defaults to `true`. | ||
#### Theming options | ||
@@ -295,10 +298,10 @@ | ||
labeledSubmitButton: false, | ||
logo: "https://example.com/assets/logo.png", | ||
primaryColor: "green", | ||
logo: 'https://example.com/assets/logo.png', | ||
primaryColor: 'green', | ||
authButtons: { | ||
connectionName: { | ||
displayName: "...", | ||
primaryColor: "...", | ||
foregroundColor: "...", | ||
icon: "https://.../logo.png" | ||
displayName: '...', | ||
primaryColor: '...', | ||
foregroundColor: '...', | ||
icon: 'https://.../logo.png' | ||
} | ||
@@ -314,6 +317,6 @@ } | ||
- **authButtons {Object}**: Allows the customization of the custom oauth2 login buttons. | ||
+ **displayName {String}**: The name to show instead of the connection name. | ||
+ **primaryColor {String}**: The button's background color. Defaults to `"#eb5424"`. | ||
+ **foregroundColor {String}**: The button's text color. Defaults to `"#FFFFFF"`. | ||
+ **icon {String}**: The icon's url for the connection. For example:`"https://site.com/logo.png"`. | ||
- **displayName {String}**: The name to show instead of the connection name. | ||
- **primaryColor {String}**: The button's background color. Defaults to `"#eb5424"`. | ||
- **foregroundColor {String}**: The button's text color. Defaults to `"#FFFFFF"`. | ||
- **icon {String}**: The icon's url for the connection. For example:`"https://site.com/logo.png"`. | ||
@@ -327,15 +330,15 @@ #### Authentication options | ||
auth: { | ||
params: { | ||
param1: "value1", | ||
scope: "openid profile email" | ||
}, | ||
autoParseHash: true, | ||
redirect: true, | ||
redirectUrl: "some url", | ||
responseMode: "form_post", | ||
responseType: "token", | ||
sso: true, | ||
connectionScopes: { | ||
connectionName: [ 'scope1', 'scope2' ] | ||
} | ||
params: { | ||
param1: 'value1', | ||
scope: 'openid profile email' | ||
}, | ||
autoParseHash: true, | ||
redirect: true, | ||
redirectUrl: 'some url', | ||
responseMode: 'form_post', | ||
responseType: 'token', | ||
sso: true, | ||
connectionScopes: { | ||
connectionName: ['scope1', 'scope2'] | ||
} | ||
} | ||
@@ -349,6 +352,6 @@ }; | ||
- **redirectUrl {String}**: The URL Auth0 will redirect back to after authentication. Defaults to the empty string `""` (no redirect URL). | ||
- **responseMode {String}**: Should be set to `"form_post"` if you want the code or the token to be transmitted via an HTTP POST request to the `redirectUrl` instead of being included in its query or fragment parts. Otherwise, it should be omitted. | ||
- **responseType {String}**: Should be set to `"token"` for Single Page Applications, and `"code"` otherwise. Also, `"id_token"` is supported for the first case. Defaults to `"code"` when `redirectUrl` is provided, and to `"token"` otherwise. | ||
- **sso {Boolean}**: Determines whether Single Sign-On is enabled or not in **Lock**. The Auth0 SSO session will be created regardless of this option if SSO is enabled for your application or tenant. | ||
- **connectionScopes {Object}**: Allows you to set scopes to be sent to the oauth2/social/enterprise connection for authentication. | ||
- **responseMode {String}**: Should be set to `"form_post"` if you want the code or the token to be transmitted via an HTTP POST request to the `redirectUrl` instead of being included in its query or fragment parts. Otherwise, it should be omitted. | ||
- **responseType {String}**: Should be set to `"token"` for Single Page Applications, and `"code"` otherwise. Also, `"id_token"` is supported for the first case. Defaults to `"code"` when `redirectUrl` is provided, and to `"token"` otherwise. | ||
- **sso {Boolean}**: Determines whether Single Sign-On is enabled or not in **Lock**. The Auth0 SSO session will be created regardless of this option if SSO is enabled for your application or tenant. | ||
- **connectionScopes {Object}**: Allows you to set scopes to be sent to the oauth2/social/enterprise connection for authentication. | ||
@@ -362,3 +365,3 @@ #### Database options | ||
- **defaultDatabaseConnection {String}**: Specifies the database connection that will be used when there is more than one available. | ||
- **initialScreen {String}**: Name of the screen that will be shown when the widget is opened. Valid values are `"login"`, `"signUp"`, and `"forgotPassword"`. If this option is left unspecified, the widget will pick the first screen that is available from the previous list. If you set `initialScreen` to `"forgotPassword"` we recommend that you set `allowLogin` to `"false"`, otherwise a back button will be shown in the forgot password screen and it might not be clear to the user where that back button will take them. | ||
- **initialScreen {String}**: Name of the screen that will be shown when the widget is opened. Valid values are `"login"`, `"signUp"`, and `"forgotPassword"`. If this option is left unspecified, the widget will pick the first screen that is available from the previous list. If you set `initialScreen` to `"forgotPassword"` we recommend that you set `allowLogin` to `"false"`, otherwise a back button will be shown in the forgot password screen and it might not be clear to the user where that back button will take them. | ||
- **loginAfterSignUp {Boolean}**: Determines whether or not the user will be automatically signed in after a successful sign up. Defaults to `true`. | ||
@@ -382,7 +385,8 @@ - **forgotPasswordLink {String}**: URL for a page that allows the user to reset her password. When set to a non-empty string, the user will be linked to the provided URL when clicking the _"Don't remember your password?"_ link in the _login screen_. | ||
var options = { | ||
container: "myContainer", | ||
container: 'myContainer', | ||
closable: false, | ||
languageDictionary: { | ||
signUpTerms: "I agree to the <a href='/terms' target='_new'>terms of service</a> and <a href='/privacy' target='_new'>privacy policy</a>.", | ||
title: "My Company", | ||
signUpTerms: | ||
"I agree to the <a href='/terms' target='_new'>terms of service</a> and <a href='/privacy' target='_new'>privacy policy</a>.", | ||
title: 'My Company' | ||
}, | ||
@@ -413,5 +417,5 @@ autofocus: false | ||
| Name | Description | | ||
|----|-----| | ||
| `loggingIn` | Called when the user presses the login button; after validating the login form, but before calling the login endpoint | | ||
| Name | Description | | ||
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------- | | ||
| `loggingIn` | Called when the user presses the login button; after validating the login form, but before calling the login endpoint | | ||
| `signingUp` | Called when the user presses the button on the sign-up page; after validating the signup form, but before calling the sign up endpoint | | ||
@@ -422,6 +426,6 @@ | ||
| Name | Description | | ||
|----|----| | ||
| Name | Description | | ||
| --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ||
| `context` | this argument is currently always `null` but serves as a future-proofing mechanism to support providing additional data without us requiring breaking changes to the library | | ||
| `cb` | a callback function to call when the hook is finished. Execution of the user journey is blocked until this function is called by the hook | | ||
| `cb` | a callback function to call when the hook is finished. Execution of the user journey is blocked until this function is called by the hook | | ||
@@ -485,3 +489,3 @@ **API** | ||
} | ||
} | ||
}; | ||
``` | ||
@@ -496,5 +500,5 @@ | ||
languageDictionary: { | ||
emailInputPlaceholder: "Please enter your email", | ||
title: "My Company" | ||
}, | ||
emailInputPlaceholder: 'Please enter your email', | ||
title: 'My Company' | ||
} | ||
}; | ||
@@ -511,20 +515,22 @@ ``` | ||
A `validator` function can also be provided. | ||
A `validator` function can also be provided. | ||
```js | ||
var options = { | ||
additionalSignUpFields: [{ | ||
name: "address", | ||
placeholder: "enter your address", | ||
// The following properties are optional | ||
ariaLabel: "Address", | ||
icon: "https://example.com/assets/address_icon.png", | ||
prefill: "street 123", | ||
validator: function(address) { | ||
return { | ||
valid: address.length >= 10, | ||
hint: "Must have 10 or more chars" // optional | ||
}; | ||
additionalSignUpFields: [ | ||
{ | ||
name: 'address', | ||
placeholder: 'enter your address', | ||
// The following properties are optional | ||
ariaLabel: 'Address', | ||
icon: 'https://example.com/assets/address_icon.png', | ||
prefill: 'street 123', | ||
validator: function (address) { | ||
return { | ||
valid: address.length >= 10, | ||
hint: 'Must have 10 or more chars' // optional | ||
}; | ||
} | ||
} | ||
}] | ||
] | ||
}; | ||
@@ -537,7 +543,11 @@ ``` | ||
var options = { | ||
additionalSignUpFields: [{ | ||
name: "address", | ||
placeholder: "enter your address (optional)", | ||
validator: function() {return true;} | ||
}] | ||
additionalSignUpFields: [ | ||
{ | ||
name: 'address', | ||
placeholder: 'enter your address (optional)', | ||
validator: function () { | ||
return true; | ||
} | ||
} | ||
] | ||
}; | ||
@@ -550,6 +560,8 @@ ``` | ||
var options = { | ||
additionalSignUpFields: [{ | ||
name: "name", | ||
storage: "root" | ||
}] | ||
additionalSignUpFields: [ | ||
{ | ||
name: 'name', | ||
storage: 'root' | ||
} | ||
] | ||
}; | ||
@@ -564,17 +576,19 @@ ``` | ||
var options = { | ||
additionalSignUpFields: [{ | ||
type: "select", | ||
name: "location", | ||
placeholder: "choose your location", | ||
options: [ | ||
{value: "us", label: "United States"}, | ||
{value: "fr", label: "France"}, | ||
{value: "ar", label: "Argentina"} | ||
], | ||
// The following properties are optional | ||
ariaLabel: "Location", | ||
icon: "https://example.com/assets/location_icon.png", | ||
prefill: "us" | ||
}] | ||
} | ||
additionalSignUpFields: [ | ||
{ | ||
type: 'select', | ||
name: 'location', | ||
placeholder: 'choose your location', | ||
options: [ | ||
{ value: 'us', label: 'United States' }, | ||
{ value: 'fr', label: 'France' }, | ||
{ value: 'ar', label: 'Argentina' } | ||
], | ||
// The following properties are optional | ||
ariaLabel: 'Location', | ||
icon: 'https://example.com/assets/location_icon.png', | ||
prefill: 'us' | ||
} | ||
] | ||
}; | ||
``` | ||
@@ -586,20 +600,22 @@ | ||
var options = { | ||
additionalSignUpFields: [{ | ||
type: "select", | ||
name: "location", | ||
placeholder: "choose your location", | ||
options: function(cb) { | ||
// obtain options, in case of error you call cb with the error in the | ||
// first arg instead of null | ||
cb(null, options); | ||
}, | ||
ariaLabel: "Location", | ||
icon: "https://example.com/assets/location_icon.png", | ||
prefill: function(cb) { | ||
// obtain prefill, in case of error you call cb with the error in the | ||
// first arg instead of null | ||
cb(null, prefill); | ||
additionalSignUpFields: [ | ||
{ | ||
type: 'select', | ||
name: 'location', | ||
placeholder: 'choose your location', | ||
options: function (cb) { | ||
// obtain options, in case of error you call cb with the error in the | ||
// first arg instead of null | ||
cb(null, options); | ||
}, | ||
ariaLabel: 'Location', | ||
icon: 'https://example.com/assets/location_icon.png', | ||
prefill: function (cb) { | ||
// obtain prefill, in case of error you call cb with the error in the | ||
// first arg instead of null | ||
cb(null, prefill); | ||
} | ||
} | ||
}] | ||
} | ||
] | ||
}; | ||
``` | ||
@@ -614,14 +630,17 @@ | ||
var options = { | ||
additionalSignUpFields: [{ | ||
type: "checkbox", | ||
name: "newsletter", | ||
prefill: "true", | ||
placeholder: "I hereby agree that I want to receive marketing emails from your company", | ||
// placeholderHTML - is an optional field and overrides the value of placeholder | ||
// do not use user inputted data for HTML fields as they are vulnerable to XSS | ||
placeholderHTML: "<b>I hereby agree that I want to receive marketing emails from your company</b>", | ||
// ariaLabel - is an optional field | ||
ariaLabel: "Activate Newsletter" | ||
}] | ||
} | ||
additionalSignUpFields: [ | ||
{ | ||
type: 'checkbox', | ||
name: 'newsletter', | ||
prefill: 'true', | ||
placeholder: 'I hereby agree that I want to receive marketing emails from your company', | ||
// placeholderHTML - is an optional field and overrides the value of placeholder | ||
// do not use user inputted data for HTML fields as they are vulnerable to XSS | ||
placeholderHTML: | ||
'<b>I hereby agree that I want to receive marketing emails from your company</b>', | ||
// ariaLabel - is an optional field | ||
ariaLabel: 'Activate Newsletter' | ||
} | ||
] | ||
}; | ||
``` | ||
@@ -635,8 +654,10 @@ | ||
var options = { | ||
additionalSignUpFields: [{ | ||
type: "hidden", | ||
name: "signup_code", | ||
value: "foobar123" | ||
}] | ||
} | ||
additionalSignUpFields: [ | ||
{ | ||
type: 'hidden', | ||
name: 'signup_code', | ||
value: 'foobar123' | ||
} | ||
] | ||
}; | ||
``` | ||
@@ -651,3 +672,3 @@ | ||
avatar: { | ||
url: function(email, cb) { | ||
url: function (email, cb) { | ||
// obtain URL for email, in case of error you call cb with the error in | ||
@@ -657,3 +678,3 @@ // the first arg instead of null | ||
}, | ||
displayName: function(email, cb) { | ||
displayName: function (email, cb) { | ||
// obtain displayName for email, in case of error you call cb with the | ||
@@ -674,4 +695,4 @@ // error in the first arg instead of null | ||
```js | ||
var clientId = "YOUR_AUTH0_APP_CLIENTID"; | ||
var domain = "YOUR_DOMAIN_AT.auth0.com"; | ||
var clientId = 'YOUR_AUTH0_APP_CLIENTID'; | ||
var domain = 'YOUR_DOMAIN_AT.auth0.com'; | ||
var options = { | ||
@@ -705,3 +726,2 @@ auth: { | ||
[circleci-image]: https://img.shields.io/circleci/project/github/auth0/lock.svg?style=flat-square | ||
@@ -718,3 +738,2 @@ [circleci-url]: https://circleci.com/gh/auth0/lock/tree/master | ||
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fauth0%2Flock.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fauth0%2Flock?ref=badge_large) |
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 too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
64
24012
704
1455655
16
+ Addednode-fetch@^2.6.1
+ Addednode-fetch@2.7.0(transitive)
+ Addedtr46@0.0.3(transitive)
+ Addedwebidl-conversions@3.0.1(transitive)
+ Addedwhatwg-url@5.0.0(transitive)