diff --git a/packages/accounts-2fa/2fa-client.js b/packages/accounts-2fa/2fa-client.js index d695078308..4367f19ec6 100644 --- a/packages/accounts-2fa/2fa-client.js +++ b/packages/accounts-2fa/2fa-client.js @@ -72,28 +72,3 @@ Accounts.enableUser2fa = (code, callback) => { Accounts.disableUser2fa = callback => { Accounts.connection.call('disableUser2fa', callback); }; - -/** - * @summary Log the user in with a password and token. - * @locus Client - * @param {Object | String} selector - * Either a string interpreted as a username or an email; or an object with a - * single key: `email`, `username` or `id`. Username or email match in a case - * insensitive manner. - * @param {String} password The user's password. - * @param {String} token Token provide by the user's authenticator app. - * @param {Function} [callback] Optional callback. - * Called with no arguments on success, or with a single `Error` argument - * on failure. - * @importFromPackage meteor - */ - -Meteor.loginWithPasswordAnd2faCode = (selector, password, code, callback) => { - if (code == null || typeof code !== 'string' || !code) { - throw new Meteor.Error( - 400, - 'token is required to use loginWithPasswordAnd2faCode and must be a string' - ); - } - return Accounts._internalLoginWithPassword({ selector, password, code, callback }); -}; diff --git a/packages/accounts-password/password_client.js b/packages/accounts-password/password_client.js index 2549cddd4e..5d1279782b 100644 --- a/packages/accounts-password/password_client.js +++ b/packages/accounts-password/password_client.js @@ -8,7 +8,7 @@ const reportError = (error, callback) => { }; -Accounts._internalLoginWithPassword = ({ selector, password, code, callback }) => { +const internalLoginWithPassword = ({ selector, password, code, callback }) => { if (typeof selector === 'string') if (!selector.includes('@')) selector = { username: selector }; else selector = { email: selector }; @@ -56,7 +56,7 @@ Accounts._internalLoginWithPassword = ({ selector, password, code, callback }) = * @importFromPackage meteor */ Meteor.loginWithPassword = (selector, password, callback) => { - return Accounts._internalLoginWithPassword({ selector, password, callback }); + return internalLoginWithPassword({ selector, password, callback }); }; Accounts._hashPassword = password => ({ @@ -64,6 +64,33 @@ Accounts._hashPassword = password => ({ algorithm: "sha-256" }); + +/** + * @summary Log the user in with a password and token. + * @locus Client + * @param {Object | String} selector + * Either a string interpreted as a username or an email; or an object with a + * single key: `email`, `username` or `id`. Username or email match in a case + * insensitive manner. + * @param {String} password The user's password. + * @param {String} token Token provide by the user's authenticator app. + * @param {Function} [callback] Optional callback. + * Called with no arguments on success, or with a single `Error` argument + * on failure. + * @importFromPackage meteor + */ + +Meteor.loginWithPasswordAnd2faCode = (selector, password, code, callback) => { + if (code == null || typeof code !== 'string' || !code) { + throw new Meteor.Error( + 400, + 'token is required to use loginWithPasswordAnd2faCode and must be a string' + ); + } + return internalLoginWithPassword({ selector, password, code, callback }); +}; + + // Attempt to log in as a new user. /**