Name Description Size Coverage
ActorConstants.mjs 1356 100 %
ASRouter.sys.mjs 95254 79 %
ASRouterDefaultConfig.sys.mjs 3019 94 %
ASRouterNewTabHook.sys.mjs Params: object - { messageHandler: message handler for parent process messages { handleCFRAction: Responds to CFR action and returns a Promise handleTelemetry: Logs telemetry events and returns nothing }, router: ASRouter instance createStorage: function to create DB storage for ASRouter } 3536 95 %
ASRouterParentProcessMessageHandler.sys.mjs 5849 65 %
ASRouterPreferences.sys.mjs Use `ASRouterPreferences.console.debug()` and friends from ASRouter files to log messages during development. See LOG_LEVELS in Console.sys.mjs for the available methods as well as the available values for this pref. 9804 83 %
ASRouterScreenUtils.sys.mjs Filter the given screens in place with a predicate. @param {object[]} screens - The screens to filter. @param {Function} callback - The predicate for filtering the screens. 7130 98 %
ASRouterStorage.sys.mjs @param storeNames Array of strings used to create all the required stores 13173 42 %
ASRouterTargeting.sys.mjs 58994 94 %
ASRouterTelemetry.sys.mjs Check if it is in the CFR experiment cohort by querying against the experiment manager of Messaging System @return {bool} 8768 95 %
ASRouterTriggerListeners.sys.mjs Check current location against the list of allowed hosts Additionally verify for redirects and check original request URL against the list. @returns {object} - {host, url} pair that matched the list of allowed hosts 62860 92 %
BookmarksBarButton.sys.mjs 4083 99 %
CFRMessageProvider.sys.mjs 27984 100 %
CFRPageActions.sys.mjs A WeakMap from browsers to {host, recommendation} pairs. Recommendations are defined in the ExtensionDoorhanger.schema.json. A recommendation is specific to a browser and host and is active until the given browser is closed or the user navigates (within that browser) away from the host. 35537 86 %
FeatureCallout.sys.mjs Feature Callout fetches messages relevant to a given source and displays them in the parent page pointing to the element they describe. 97221 81 %
FeatureCalloutBroker.sys.mjs @typedef {object} FeatureCalloutOptions @property {Window} win window in which messages will be rendered. @property {{name: string, defaultValue?: string}} [pref] optional pref used to track progress through a given feature tour. for example: { name: "browser.pdfjs.feature-tour", defaultValue: '{ screen: "FEATURE_CALLOUT_1", complete: false }', } or { name: "browser.pdfjs.feature-tour" } (defaultValue is optional) @property {string} [location] string to pass as the page when requesting messages from ASRouter and sending telemetry. @property {MozBrowser} [browser] <browser> element responsible for the feature callout. for content pages, this is the browser element that the callout is being shown in. for chrome, this is the active browser. @property {Function} [cleanup] callback to be invoked when the callout is removed or the window is unloaded. @property {FeatureCalloutTheme} [theme] optional dynamic color theme. 7849 86 %
FeatureCalloutMessages.sys.mjs add24HourImpressionJEXLTargeting - Creates a "hasn't been viewed in > 24 hours" JEXL string and adds it to each message specified @param {Array} messageIds - IDs of messages that the targeting string will be added to @param {string} prefix - The prefix of messageIDs that will used to create the JEXL string @param {Array} messages - The array of messages that will be edited @returns {Array} - The array of messages with the appropriate targeting strings edited 47287 99 %
InfoBar.sys.mjs eslint-disable no-use-before-define 24321 91 %
MenuMessage.sys.mjs Whether the message should be suppressed for a signed-in user. - fxa_cta: suppress when signed in by default, unless content.allowWhenSignedIn is set to true. - default_cta: never suppress 11444 89 %
MessagingExperimentConstants.sys.mjs This file is used to define constants related to messaging experiments. It is imported by both ASRouter as well as import-rollouts.js, a node script that imports Nimbus rollouts into tree. It doesn't have access to any Firefox APIs, XPCOM, etc. and should be kept that way. 1900 100 %
MessagingTargetingConstants.sys.mjs Commonly reused targeting expressions for Firefox Messaging System messages. These constants standardize targeting strings that are frequently used across in-tree messages and experiments, making them easier to maintain, review, and communicate changes. When a targeting heuristic changes, update the constant here and add a versioned suffix (e.g. _V2) to preserve backward compatibility for any experiments or rollouts still referencing the old version. Modeled after Experimenter's targeting constants: https://github.com/mozilla/experimenter/blob/main/experimenter/experimenter/targeting/constants.py 3023 100 %
MomentsPageHub.sys.mjs If we don't have `expire` defined with the message it could be because it depends on user dependent parameters. Since the message matched targeting we calculate `expire` based on the current timestamp and the `expireDelta` which defines for how long it should be available. @param expireDelta {number} - Offset in milliseconds from the current date 4661 99 %
OnboardingMessageProvider.sys.mjs 130284 99 %
PageEventManager.sys.mjs Methods for setting up and tearing down page event listeners. These are used to dismiss Feature Callouts when the callout's anchor element is clicked. 5181 92 %
PanelTestProvider.sys.mjs 138295 100 %
PreonboardingSplash.sys.mjs This splash screen is the full-viewport loading screen shown to new users at startup while first-run experiments enroll behind it. It shows at most once per profile (`browser.preonboarding.splashShown`). When the TOU modal will show, it already includes a splash screen as its first screen, so this standalone splash suppresses itself in that case. It is triggered from BrowserGlue._onWindowsRestored at `sessionstore-windows-restored` time so that it appears before about:welcome content renders. 6348 91 %
RemoteL10n.sys.mjs The downloaded Fluent file is located in this sub-directory of the local profile directory. 5744 96 %
SmartWindowNewTabPromo.sys.mjs 3706 13 %
Spotlight.sys.mjs Shows spotlight tab or window modal specific to the given browser @param browser The browser for spotlight display @param message Message containing content to show @param dispatchCFRAction A function to dispatch resulting actions @return boolean value capturing if spotlight was displayed 3716 97 %
ToastNotification.sys.mjs Select the appropriate image URL from message content based on the system color scheme and motion preferences. @param {object} content The message content object. @returns {string|undefined} The selected image URL. 8226 95 %
ToolbarBadgeHub.sys.mjs 8924 78 %