Name Description Size Coverage
Addon.sys.mjs Installs addons by path and uninstalls by ID. 7390 -
AppInfo.sys.mjs Extends Services.appinfo with further properties that are used by different protocols as handled by the Remote Agent. @typedef {object} AppInfo @property {boolean} isAndroid - Whether the application runs on Android. @property {boolean} isLinux - Whether the application runs on Linux. @property {boolean} isMac - Whether the application runs on Mac OS. @property {boolean} isWindows - Whether the application runs on Windows. @property {boolean} isFirefox - Whether the application is Firefox. @property {boolean} isThunderbird - Whether the application is Thunderbird. @since 88 2139 -
AsyncQueue.sys.mjs Manages a queue of asynchronous tasks, ensuring they are processed sequentially. 1866 -
BiMap.sys.mjs A bidirectional map that maintains two-way mappings between UUIDs and objects. This class ensures that each object maps to exactly one UUID and vice versa. Also it allows efficient lookup in both directions: - from a UUID to an object - from an object to a UUID 3149 -
Browser.sys.mjs Quits the application with the provided flags. Optional {@link nsIAppStartup} flags may be provided as an array of masks, and these will be combined by ORing them with a bitmask. The available masks are defined in https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIAppStartup. Crucially, only one of the *Quit flags can be specified. The |eRestart| flag may be bit-wise combined with one of the *Quit flags to cause the application to restart after it quits. @param {Array.<string>=} flags Constant name of masks to pass to |Services.startup.quit|. If empty or undefined, |nsIAppStartup.eAttemptQuit| is used. @param {boolean=} safeMode Optional flag to indicate that the application has to be restarted in safe mode. @param {boolean=} isWindowless Optional flag to indicate that the browser was started in windowless mode. @returns {Record<string, boolean>} Dictionary containing information that explains the shutdown reason. The value for `cause` contains the shutdown kind like "shutdown" or "restart", while `forced` will indicate if it was a normal or forced shutdown of the application. "in_app" is always set to indicate that it is a shutdown triggered from within the application. 3695 -
Capture.sys.mjs Provides primitives to capture screenshots. @namespace 5374 -
ChallengeHeaderParser.sys.mjs Parse the parameter in a name/value pair and remove quotes. @param {string} paramValue A string representing a challenge parameter. @returns {object} An object with name and value string properties. 2224 -
DOM.sys.mjs XUL elements that support checked property. 33408 -
Format.sys.mjs Pretty-print values passed to template strings. Usage:: let bool = {value: true}; pprint`Expected boolean, got ${bool}`; => 'Expected boolean, got [object Object] {"value": true}' let htmlElement = document.querySelector("input#foo"); pprint`Expected element ${htmlElement}`; => 'Expected element <input id="foo" class="bar baz" type="input">' pprint`Current window: ${window}`; => '[object Window https://www.mozilla.org/]' 4957 -
js-process-actors -
listeners -
Log.sys.mjs E10s compatible wrapper for the standard logger from Log.sys.mjs. 2858 -
messagehandler -
MobileTabBrowser.sys.mjs Create a new tab. @param {string} uriString The URI string to load within the newly opened tab. @returns {Promise<Tab>} The created tab. @throws {Error} Throws an error if the tab cannot be created. 2077 -
moz.build 797 -
NavigableManager.sys.mjs The navigable manager is intended to be used as a singleton and is responsible for tracking open browsing contexts by assigning each a unique identifier. This allows them to be referenced unambiguously. For top-level browsing contexts, the content browser instance itself is used as the anchor, since cross-origin navigations can result in browsing context replacements. Using the browser as a stable reference ensures that protocols like WebDriver BiDi and Marionette can reliably point to the intended "navigable" — a concept from the HTML specification that is not implemented in Firefox. 9751 -
Navigate.sys.mjs Returns the multiplier used for the unload timer. Useful for tests which assert the behavior of this timeout. 18723 -
NavigationManager.sys.mjs @typedef {object} BrowsingContextDetails @property {string} browsingContextId - The browsing context id. @property {string} browserId - The id of the Browser owning the browsing context. @property {BrowsingContext=} context - The BrowsingContext itself, if available. @property {boolean} isTopBrowsingContext - Whether the browsing context is top level. 33751 -
NetworkCacheManager.sys.mjs Enum of possible network cache behaviors. @readonly @enum {CacheBehavior} 4811 -
NetworkDataBytes.sys.mjs Common interface used to handle network BytesValue for collected data which might be encoded and require an additional async step in order to retrieve the actual bytes. This is a simple wrapper mostly designed to ensure a common interface in case this is used for request or response bodies. @param {object} options @param {Function} options.getBytesValue A -potentially async- callable which returns the bytes as a string. @param {boolean} options.isBase64 Whether this represents a base64-encoded binary data. 1097 -
NetworkDecodedBodySizeMap.sys.mjs This map will return the default value of 0 if the decoded body size for a given channel was not received yet. Bug 1959614: The NetworkDecodedBodySizeMap used to setup promises to wait for the decoded body size to be ready. However the timing differences from this change leads to regressions in Playwright tests. The new implementation of the map is only synchronous and if the size was not received yet, 0 will be returned. In theory, the decoded body size should be set via http-on-before-stop-request which should be received before the request is stopped. 3494 -
NetworkRequest.sys.mjs The NetworkRequest class is a wrapper around the internal channel which provides getters and methods closer to fetch's response concept (https://fetch.spec.whatwg.org/#concept-response). 16848 -
NetworkResponse.sys.mjs The NetworkResponse class is a wrapper around the internal channel which provides getters and methods closer to fetch's response concept (https://fetch.spec.whatwg.org/#concept-response). 9399 -
PDF.sys.mjs Convert array of strings of the form ["1-3", "2-4", "7", "9-"] to an flat array of limits, like [1, 4, 7, 7, 9, 2**31 - 1] (meaning 1-4, 7, 9-end) @param {Array.<string|number>} ranges Page ranges to print, e.g., ['1-5', '8', '11-13']. Defaults to the empty string, which means print all pages. @returns {Array.<number>} Even-length array containing page range limits 7861 -
Permissions.sys.mjs @typedef {string} PermissionState 4288 -
Prompt.sys.mjs @namespace 5640 -
Realm.sys.mjs @typedef {string} RealmType 9661 -
RecommendedPreferences.sys.mjs 18195 -
RemoteError.sys.mjs Base class for all remote protocol errors. 823 -
Stack.sys.mjs An object that contains details of a stack frame. @typedef {object} StackFrame @see nsIStackFrame @property {string=} asyncCause Type of asynchronous call by which this frame was invoked. @property {number} columnNumber The column number for this stack frame. @property {string} filename The source URL for this stack frame. @property {string} function SpiderMonkey’s inferred name for this stack frame’s function, or null. @property {number} lineNumber The line number for this stack frame (starts with 1). @property {number} sourceId The process-unique internal integer ID of this source. 2032 -
Sync.sys.mjs Throttle until the `window` has performed an animation frame. The animation frame is requested after the main thread has processed all the already queued-up runnables. @param {ChromeWindow} win Window to request the animation frame from. @param {object=} options @param {number=} options.timeout Timeout duration in milliseconds. This copes with navigating away from hidden iframes: if fragmentNavigated happens before their animation finishes, this would never resolve otherwise. By default 1500 ms in an optimised build and 4500 ms in debug builds. Specify null to disable the timeout. @returns {Promise} @throws {TypeError} @throws {RangeError} 13880 -
TabManager.sys.mjs Retrieve all the tabs in open browser windows. @returns {Array<Tab>} All the open browser tabs. Will return an empty list if tab browser is not available or tabs are undefined. 8254 -
test -
UserContextManager.sys.mjs A UserContextManager instance keeps track of all public user contexts and maps their internal platform. This class is exported for test purposes. Otherwise the UserContextManager singleton should be used. @fires UserContextManagerClass#"user-context-created" - {string} userContextId The UUID of the user context which was just created. @fires UserContextManagerClass#"user-context-deleted" - {string} userContextId The UUID of the user context which was just deleted. 7612 -
UUID.sys.mjs Creates a unique UUID without enclosing curly brackets Example: '86c832d2-cf1c-4001-b3e0-8628fdd41b29' @returns {string} The generated UUID as a string. 484 -
webdriver -
WebSocketConnection.sys.mjs @param {WebSocket} webSocket The WebSocket server connection to wrap. @param {Connection} httpdConnection Reference to the httpd.js's connection needed for clean-up. 4259 -
WindowManager.sys.mjs Provides helpers to interact with Window objects. @class WindowManager 18584 -