ASRouter.jsm |
|
57868 |
ASRouterDefaultConfig.jsm |
|
2215 |
ASRouterNewTabHook.jsm |
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
}
|
3634 |
ASRouterParentProcessMessageHandler.jsm |
|
5196 |
ASRouterPreferences.jsm |
|
6356 |
ASRouterTargeting.jsm |
CachedTargetingGetter
@param property {string} Name of the method called on ActivityStreamProvider
@param options {{}?} Options object passsed to ActivityStreamProvider method
@param updateInterval {number?} Update interval for query. Defaults to FRECENT_SITES_UPDATE_INTERVAL
|
24274 |
ASRouterTriggerListeners.jsm |
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
|
17828 |
AboutPreferences.jsm |
Render preferences to an about:preferences content window with the provided
preferences structure.
|
11123 |
ActivityStream.jsm |
|
22312 |
ActivityStreamMessageChannel.jsm |
ActivityStreamMessageChannel - This module connects a Redux store to a RemotePageManager in Firefox.
Call .createChannel to start the connection, and .destroyChannel to destroy it.
You should use the BroadcastToContent, AlsoToOneContent, and AlsoToMain action creators
in common/Actions.jsm 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 a RemotePageManager should be attached.
Note that if it is about:newtab, the existing RemotePageManager
for about:newtab will also be disabled
@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}
|
11342 |
ActivityStreamPrefs.jsm |
Prefs - A wrapper around Preferences that always sets the branch to
ACTIVITY_STREAM_PREF_BRANCH
|
3065 |
ActivityStreamStorage.jsm |
@param storeNames Array of strings used to create all the required stores
|
3249 |
BookmarkPanelHub.jsm |
@param {function} handleMessageRequest
@param {function} addImpression
@param {function} sendTelemetry - Used for sending user telemetry information
|
10765 |
CFRMessageProvider.jsm |
|
32963 |
CFRPageActions.jsm |
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.
|
38875 |
DefaultSites.jsm |
|
1980 |
DiscoveryStreamFeed.jsm |
|
60966 |
DownloadsManager.jsm |
null for non-private downloads |
5901 |
FaviconFeed.jsm |
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
|
5965 |
FilterAdult.jsm |
Run some text through md5 and return the base64 result.
|
89175 |
HighlightsFeed.jsm |
isStartup |
11446 |
InfoBar.jsm |
Show the infobar notification and send an impression ping
@param {object} browser Browser reference for the currently selected tab
|
4697 |
LinksCache.jsm |
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.
|
4801 |
MomentsPageHub.jsm |
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
|
5409 |
NewTabInit.jsm |
NewTabInit - A placeholder for now. This will send a copy of the state to all
newly opened tabs.
|
1718 |
OnboardingMessageProvider.jsm |
globals Localization |
3176 |
PanelTestProvider.jsm |
|
11010 |
PersistentCache.jsm |
A file (disk) based persistent cache of a JSON serializable object.
|
2801 |
PersonalityProvider |
|
7 |
PlacesFeed.jsm |
Observer - a wrapper around history/bookmark observers to add the QueryInterface.
|
16789 |
PrefsFeed.jsm |
Handler for when experiment data updates.
|
7705 |
RecommendationProviderSwitcher.jsm |
setAffinityProvider - This function switches between setting up a v1 or v2
personalization provider.
It checks for certain configuration on affinityProviderV2,
which is setup in setAffinityProviderVersion.
In the case of v1, it returns a UserDomainAffinityProvider,
in the case of v2, it reutrns a PersonalityProvider.
We need to do this swap because v2 is still being tested,
so by default v1 should be enabled.
This is why the function params are the same, as v2 has been
written to accept a similar pattern.
@param {Array} timeSegments Changes the weight of a score based on how recent it is.
@param {Object} parameterSets Provides factors for weighting which allows for
flexible targeting. The functionality to calculate final scores can
be seen in UserDomainAffinityProvider#calculateScores
@param {Number} maxHistoryQueryResults How far back in the history do we go.
@param {Number} version What version of the provider does this use. Note, this is NOT
the same as personalization v1/v2, this could be used to change between
a configuration or value in the provider, not to enable/disable a whole
new provider.
@param {Object} scores This is used to re hydrate the provider based on cached results.
@returns {Object} A provider, either a PersonalityProvider or
UserDomainAffinityProvider.
|
7139 |
RemoteL10n.jsm |
The downloaded Fluent file is located in this sub-directory of the local
profile directory.
|
5446 |
Screenshots.jsm |
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
|
4987 |
SearchShortcuts.jsm |
|
3022 |
SectionsManager.jsm |
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`.
|
20941 |
ShortURL.jsm |
Properly convert internationalized domain names.
@param {string} host Domain hostname.
@returns {string} Hostname suitable to be displayed.
|
2347 |
SiteClassifier.jsm |
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,
},...]
|
2977 |
SnippetsTestMessageProvider.jsm |
|
27189 |
Store.jsm |
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.
|
6277 |
SystemTickFeed.jsm |
|
1118 |
TelemetryFeed.jsm |
|
36617 |
TippyTopProvider.jsm |
Get a domain from a url optionally stripping subdomains.
|
2037 |
ToolbarBadgeHub.jsm |
|
10264 |
ToolbarPanelHub.jsm |
|
20456 |
TopSitesFeed.jsm |
|
37464 |
TopStoriesFeed.jsm |
isStartup |
24652 |
UTEventReporting.jsm |
Note: the schema can be found in
https://searchfox.org/mozilla-central/source/toolkit/components/telemetry/Events.yaml
|
1819 |
UserDomainAffinityProvider.jsm |
Provides functionality to personalize content recommendations by calculating
user domain affinity scores. These scores are used to calculate relevance
scores for items/recs/stories that have domain affinities.
The algorithm works as follows:
- The recommendation endpoint returns a settings object containing
timeSegments and parametersets.
- For every time segment we calculate the corresponding domain visit counts,
yielding result objects of the following structure: {"mozilla.org": 12,
"mozilla.com": 34} (see UserDomainAffinityProvider#queryVisits)
- These visit counts are transformed to domain affinity scores for all
provided parameter sets: {"mozilla.org": {"paramSet1": 0.8,
"paramSet2": 0.9}, "mozilla.org": {"paramSet1": 1, "paramSet2": 0.9}}
(see UserDomainAffinityProvider#calculateScoresForParameterSets)
- The parameter sets provide factors for weighting which allows for
flexible targeting. The functionality to calculate final scores can
be seen in UserDomainAffinityProvider#calculateScores
- The user domain affinity scores are summed up across all time segments
see UserDomainAffinityProvider#calculateAllUserDomainAffinityScores
- An item's domain affinities are matched to the user's domain affinity
scores by calculating an item relevance score
(see UserDomainAffinityProvider#calculateItemRelevanceScore)
- The item relevance scores are used to sort items (see TopStoriesFeed for
more details)
- The data structure was chosen to allow for fast cache lookups during
relevance score calculation. While user domain affinities are calculated
infrequently (i.e. only once a day), the item relevance score (potentially)
needs to be calculated every time the feed updates. Therefore allowing cache
lookups of scores[domain][parameterSet] is beneficial
|
13606 |
cache-worker.js |
eslint-env mozilla/chrome-worker |
6126 |