Name Description Size
components.conf 659
Credentials.jsm This module implements client-side key stretching for use in Firefox Accounts account creation and login. See https://github.com/mozilla/fxa-auth-server/wiki/onepw-protocol 4173
FxAccounts.jsm 54665
FxAccountsClient.jsm Return client clock offset, in milliseconds, as determined by hawk client. Provided because callers should not have to know about hawk implementation. The offset is the number of milliseconds that must be added to the client clock to make it equal to the server clock. For example, if the client is five minutes ahead of the server, the localtimeOffsetMsec will be -300000. 25055
FxAccountsCommands.js Poll and handle device commands for the current device. This method can be called either in response to a Push message, or by itself as a "commands recovery" mechanism. @param {Number} notifiedIndex "Command received" push messages include the index of the command that triggered the message. We use it as a hint when we have no "last command index" stored. 17387
FxAccountsCommon.js 24114
FxAccountsConfig.jsm @param path should be parsable by the URL constructor first parameter. @param {bool} [options.includeDefaultParams] If true include the default search params. @param {Object.<string, string>} [options.extraParams] Additionnal search params. @param {bool} [options.addAccountIdentifiers] if true we add the current logged-in user uid and email to the search params. 10539
FxAccountsDevice.jsm 22682
FxAccountsKeys.jsm Utilities for working with key material linked to the user's account. Each Firefox Account has 32 bytes of root key material called `kB` which is linked to the user's password, and which is used to derive purpose-specific subkeys for things like encrypting the user's sync data. This class provides the interface for working with such key material. Most recent FxA clients obtain appropriate key material directly as part of their sign-in flow, using a special extension of the OAuth2.0 protocol to securely deliver the derived keys without revealing `kB`. Keys obtained in in this way are called "scoped keys" since each corresponds to a particular OAuth scope, and this class provides a `getKeyForScope` method that is the preferred method for consumers to work with such keys. However, since the FxA integration in Firefox Desktop pre-dates the use of OAuth2.0, we also have a lot of code for fetching keys via an older flow. This flow uses a special `keyFetchToken` to obtain `kB` and then derive various sub-keys from it. Consumers should consider this an internal implementation detail of the `FxAccountsKeys` class and should prefer `getKeyForScope` where possible. We intend to remove support for Firefox ever directly handling `kB` at some point in the future. 26837
FxAccountsPairing.jsm The pairing flow can be modeled by a finite state machine: We start by connecting to a WebSocket channel (SuppConnectionPending). Then the other party connects and requests some metadata from us (PendingConfirmations). A confirmation happens locally first (PendingRemoteConfirmation) or the oppposite (PendingLocalConfirmation). Any side can decline this confirmation (Aborted). Once both sides have confirmed, the pairing flow is finished (Completed). During this flow errors can happen and should be handled (Errored). 15569
FxAccountsPairingChannel.js / (function(modules) { // webpackBootstrap /***** 115341
FxAccountsProfile.jsm Firefox Accounts Profile helper. This class abstracts interaction with the profile server for an account. It will handle things like fetching profile data, listening for updates to the user's profile in open browser tabs, and cacheing/invalidating profile data. 6588
FxAccountsProfileClient.jsm A client to fetch profile information for a Firefox Account. 8344
FxAccountsPush.jsm FxAccountsPushService manages Push notifications for Firefox Accounts in the browser @param [options] Object, custom options that used for testing @constructor 9986
FxAccountsStorage.jsm 22709
FxAccountsTelemetry.jsm 6428
FxAccountsWebChannel.jsm Firefox Accounts Web Channel. Uses the WebChannel component to receive messages about account state changes. 24215
moz.build 1070
tests 3