You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

firebase-admin

Package Overview
Dependencies
Maintainers
1
Versions
133
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 5.0.1 to 5.1.0

45

lib/auth/auth-api-request.js

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -33,3 +33,3 @@ /*!

'Content-Type': 'application/json',
'X-Client-Version': 'Node/Admin/5.0.1',
'X-Client-Version': 'Node/Admin/5.1.0',
};

@@ -58,3 +58,5 @@ /** Firebase Auth request timeout duration in milliseconds. */

deleteAttribute: true,
deleteProvider: true,
sanityCheck: true,
phoneNumber: true,
};

@@ -82,2 +84,7 @@ // Remove invalid keys from original request.

}
// phoneNumber should be a string and a valid phone number.
if (typeof request.phoneNumber !== 'undefined' &&
!validator.isPhoneNumber(request.phoneNumber)) {
throw new error_2.FirebaseAuthError(error_2.AuthClientErrorCode.INVALID_PHONE_NUMBER);
}
// password should be a string and a minimum of 6 chars.

@@ -124,3 +131,3 @@ if (typeof request.password !== 'undefined' &&

.setRequestValidator(function (request) {
if (!request.localId && !request.email) {
if (!request.localId && !request.email && !request.phoneNumber) {
throw new error_2.FirebaseAuthError(error_2.AuthClientErrorCode.INTERNAL_ERROR, 'INTERNAL ASSERT FAILED: Server request is missing user identifier');

@@ -194,3 +201,3 @@ }

/**
* Looks a user by uid.
* Looks up a user by uid.
*

@@ -210,3 +217,3 @@ * @param {string} uid The uid of the user to lookup.

/**
* Looks a user by email.
* Looks up a user by email.
*

@@ -226,2 +233,17 @@ * @param {string} email The email of the user to lookup.

/**
* Looks up a user by phone number.
*
* @param {string} phoneNumber The phone number of the user to lookup.
* @return {Promise<Object>} A promise that resolves with the user information.
*/
FirebaseAuthRequestHandler.prototype.getAccountInfoByPhoneNumber = function (phoneNumber) {
if (!validator.isPhoneNumber(phoneNumber)) {
return Promise.reject(new error_2.FirebaseAuthError(error_2.AuthClientErrorCode.INVALID_PHONE_NUMBER));
}
var request = {
phoneNumber: [phoneNumber],
};
return this.invokeRequestHandler(exports.FIREBASE_AUTH_GET_ACCOUNT_INFO, request);
};
/**
* Deletes an account identified by a uid.

@@ -282,2 +304,15 @@ *

}
// For deleting phoneNumber, this value must be passed as null.
// It will be removed from the backend request and an additional parameter
// deleteProvider: ['phone'] with an array of providerIds (phone in this case),
// will be passed.
// Currently this applies to phone provider only.
if (request.phoneNumber === null) {
request.deleteProvider = ['phone'];
delete request.phoneNumber;
}
else {
// Doesn't apply to other providers in admin SDK.
delete request.deleteProvider;
}
// Rewrite photoURL to photoUrl.

@@ -284,0 +319,0 @@ if (typeof request.photoURL !== 'undefined') {

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -152,2 +152,17 @@ /*!

/**
* Looks up the user identified by the provided phone number and returns a promise that is
* fulfilled with a user record for the given user if that user is found.
*
* @param {string} phoneNumber The phone number of the user to look up.
* @return {Promise<UserRecord>} A promise that resolves with the corresponding user record.
*/
Auth.prototype.getUserByPhoneNumber = function (phoneNumber) {
return this.authRequestHandler.getAccountInfoByPhoneNumber(phoneNumber)
.then(function (response) {
// Returns the user record populated with server response.
return new user_record_1.UserRecord(response.users[0]);
});
};
;
/**
* Creates a new user with the properties provided.

@@ -154,0 +169,0 @@ *

2

lib/auth/credential.js

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -85,2 +85,3 @@ /*!

utils.addReadonlyGetter(this, 'providerId', response.providerId);
utils.addReadonlyGetter(this, 'phoneNumber', response.phoneNumber);
}

@@ -95,2 +96,3 @@ /** @return {Object} The plain object representation of the current provider data. */

providerId: this.providerId,
phoneNumber: this.phoneNumber,
};

@@ -120,2 +122,3 @@ };

utils.addReadonlyGetter(this, 'photoURL', response.photoUrl);
utils.addReadonlyGetter(this, 'phoneNumber', response.phoneNumber);
// If disabled is not provided, the account is enabled by default.

@@ -139,2 +142,3 @@ utils.addReadonlyGetter(this, 'disabled', response.disabled || false);

photoURL: this.photoURL,
phoneNumber: this.phoneNumber,
disabled: this.disabled,

@@ -141,0 +145,0 @@ // Convert metadata to json.

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -218,3 +218,3 @@ /*!

this.credential = firebaseCredential;
this.SDK_VERSION = '5.0.1';
this.SDK_VERSION = '5.1.0';
/* tslint:disable */

@@ -221,0 +221,0 @@ // TODO(jwenger): Database is the only consumer of firebase.Promise. We should update it to use

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
/*!

@@ -84,2 +84,3 @@ * Copyright 2017 Google Inc.

email: string;
phoneNumber: string;
photoURL: string;

@@ -96,2 +97,3 @@ providerId: string;

displayName: string;
phoneNumber: string;
photoURL: string;

@@ -131,2 +133,3 @@ disabled: boolean;

getUserByEmail(email: string): Promise<admin.auth.UserRecord>;
getUserByPhoneNumber(phoneNumber: string): Promise<admin.auth.UserRecord>;
updateUser(uid: string, properties: Object): Promise<admin.auth.UserRecord>;

@@ -133,0 +136,0 @@ verifyIdToken(idToken: string): Promise<admin.auth.DecodedIdToken>;

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -29,3 +29,3 @@ /*!

'Content-Type': 'application/json',
'Sdk-Version': 'Node/Admin/5.0.1',
'Sdk-Version': 'Node/Admin/5.1.0',
access_token_auth: 'true',

@@ -32,0 +32,0 @@ };

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -235,2 +235,7 @@ /*!

};
AuthClientErrorCode.INVALID_PHONE_NUMBER = {
code: 'invalid-phone-number',
message: 'The phone number must be a non-empty E.164 standard compliant identifier ' +
'string.',
};
AuthClientErrorCode.INVALID_PHOTO_URL = {

@@ -254,2 +259,6 @@ code: 'invalid-photo-url',

};
AuthClientErrorCode.PHONE_NUMBER_ALREADY_EXISTS = {
code: 'phone-number-already-exists',
message: 'The user with the provided phone number already exists.',
};
AuthClientErrorCode.PROJECT_NOT_FOUND = {

@@ -390,2 +399,4 @@ code: 'project-not-found',

INVALID_EMAIL: 'INVALID_EMAIL',
// Invalid phone number.
INVALID_PHONE_NUMBER: 'INVALID_PHONE_NUMBER',
// Invalid service account.

@@ -399,2 +410,4 @@ INVALID_SERVICE_ACCOUNT: 'INVALID_SERVICE_ACCOUNT',

OPERATION_NOT_ALLOWED: 'OPERATION_NOT_ALLOWED',
// Phone number already exists.
PHONE_NUMBER_EXISTS: 'PHONE_NUMBER_ALREADY_EXISTS',
// Project not found.

@@ -401,0 +414,0 @@ PROJECT_NOT_FOUND: 'PROJECT_NOT_FOUND',

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -3,0 +3,0 @@ /*!

@@ -1,2 +0,2 @@

/*! firebase-admin v5.0.1 */
/*! firebase-admin v5.1.0 */
"use strict";

@@ -127,2 +127,21 @@ /*!

/**
* Validates that a string is a valid phone number.
*
* @param {any} phoneNumber The string to validate.
* @return {boolean} Whether the string is a valid phone number or not.
*/
function isPhoneNumber(phoneNumber) {
if (typeof phoneNumber !== 'string') {
return false;
}
// Phone number validation is very lax here. Backend will enforce E.164
// spec compliance and will normalize accordingly.
// The phone number string must be non-empty and starts with a plus sign.
var re1 = /^\+/;
// The phone number string must contain at least one alphanumeric character.
var re2 = /[\da-zA-Z]+/;
return re1.test(phoneNumber) && re2.test(phoneNumber);
}
exports.isPhoneNumber = isPhoneNumber;
/**
* Validates that a string is a valid web URL.

@@ -129,0 +148,0 @@ *

{
"name": "firebase-admin",
"version": "5.0.1",
"version": "5.1.0",
"dependencies": {

@@ -11,5 +11,5 @@ "@types/jsonwebtoken": {

"@types/node": {
"version": "8.0.10",
"version": "8.0.16",
"from": "@types/node@*",
"resolved": "https://registry.npmjs.org/@types/node/-/node-8.0.10.tgz"
"resolved": "https://registry.npmjs.org/@types/node/-/node-8.0.16.tgz"
},

@@ -16,0 +16,0 @@ "base64url": {

{
"name": "firebase-admin",
"version": "5.0.1",
"version": "5.1.0",
"description": "Firebase admin SDK for Node.js",

@@ -5,0 +5,0 @@ "author": "Firebase (https://firebase.google.com/)",

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc