Name Description Size
AboutPreferences.sys.mjs Render preferences to an about:preferences content window with the provided preferences structure. 9947
ActivityStream.sys.mjs 22101
ActivityStreamMessageChannel.sys.mjs ActivityStreamMessageChannel - This module connects a Redux store to the new tab page actor. You should use the BroadcastToContent, AlsoToOneContent, and AlsoToMain action creators in common/Actions.sys.mjs to help you create actions that will be automatically routed to the correct location. @param {object} options @param {function} options.dispatch The dispatch method from a Redux store @param {string} options.pageURL The URL to which the channel is attached, such as about:newtab. @param {string} options.outgoingMessageName The name of the message sent to child processes @param {string} options.incomingMessageName The name of the message received from child processes @return {ActivityStreamMessageChannel} 10659
ActivityStreamPrefs.sys.mjs Prefs - A wrapper around Preferences that always sets the branch to ACTIVITY_STREAM_PREF_BRANCH 3411
ActivityStreamStorage.sys.mjs @param storeNames Array of strings used to create all the required stores 3387
cache.worker.js global ReactDOMServer, NewtabRenderUtils 6722
DefaultSites.sys.mjs 1929
DiscoveryStreamFeed.sys.mjs 74986
DownloadsManager.sys.mjs null for non-private downloads 5756
FaviconFeed.sys.mjs Get favicon info (uri and size) for a uri from Places. @param uri {nsIURI} Page to check for favicon data @returns A promise of an object (possibly null) containing the data 6078
FilterAdult.sys.mjs Run some text through md5 and return the base64 result. 90700
HighlightsFeed.sys.mjs isStartup 10907
LinksCache.sys.mjs Cache link results from a provided object property and refresh after some amount of time has passed. Allows for migrating data from previously cached links to the new links with the same url. 4733
NewTabInit.sys.mjs NewTabInit - A placeholder for now. This will send a copy of the state to all newly opened tabs. 1639
PersistentCache.sys.mjs A file (disk) based persistent cache of a JSON serializable object. 2547
PersonalityProvider
PlacesFeed.sys.mjs PlacesObserver - observes events from PlacesUtils.observers 18681
PrefsFeed.sys.mjs Handler for when experiment data updates. 8687
RecommendationProvider.sys.mjs This creates a new recommendationProvider using fresh data, It's run on a last updated timer. This is the opposite of loadPersonalizationScoresCache. This is also much slower so we only trigger this in the background on idle-daily. It causes new profiles to pick up personalization slowly because the first time a new profile is run you don't have any old cache to use, so it needs to wait for the first idle-daily. Older profiles can rely on cache during the idle-daily gap. Idle-daily is usually run once every 24 hours. 9862
Screenshots.sys.mjs Get a screenshot / thumbnail for a url. Either returns the disk cached image or initiates a background request for the url. @param url {string} The url to get a thumbnail @return {Promise} Resolves a custom object or null if failed 5118
SearchShortcuts.sys.mjs 2721
SectionsManager.sys.mjs Generators for built in sections, keyed by the pref name for their feed. Built in sections may depend on options stored as serialised JSON in the pref `${feed_pref_name}.options`. 20776
ShortURL.sys.mjs Properly convert internationalized domain names. @param {string} host Domain hostname. @returns {string} Hostname suitable to be displayed. 2567
SiteClassifier.sys.mjs classifySite Classifies a given URL into a category based on classification data from RemoteSettings. The data from remote settings can match a category by one of the following: - match the exact URL - match the hostname or second level domain (sld) - match query parameter(s), and optionally their values or prefixes - match both (hostname or sld) and query parameter(s) The data looks like: [{ "type": "hostname-and-params-match", "criteria": [ { "url": "https://matchurl.com", "hostname": "matchhostname.com", "sld": "secondleveldomain", "params": [ { "key": "matchparam", "value": "matchvalue", "prefix": "matchpPrefix", }, ], }, ], "weight": 300, },...] 3297
Store.sys.mjs Store - This has a similar structure to a redux store, but includes some extra functionality to allow for routing of actions between the Main processes and child processes via a ActivityStreamMessageChannel. It also accepts an array of "Feeds" on inititalization, which can listen for any action that is dispatched through the store. 6540
SystemTickFeed.sys.mjs 1828
TelemetryFeed.sys.mjs 37703
TippyTopProvider.sys.mjs Get a domain from a url optionally stripping subdomains. 1715
TopSitesFeed.sys.mjs 67514
TopStoriesFeed.sys.mjs isStartup 23706
UTEventReporting.sys.mjs Note: the schema can be found in https://searchfox.org/mozilla-central/source/toolkit/components/telemetry/Events.yaml 1657
WallpaperFeed.sys.mjs This thin wrapper around global.fetch makes it easier for us to write automated tests that simulate responses from this fetch. 3057