--- a/browser/extensions/activity-stream/bootstrap.js
+++ b/browser/extensions/activity-stream/bootstrap.js
@@ -25,18 +25,25 @@ let modulesToUnload = new Set();
let startupData;
let startupReason;
let waitingForBrowserReady = true;
// Lazily load ActivityStream then find related modules to unload
XPCOMUtils.defineLazyModuleGetter(this, "ActivityStream",
"resource://activity-stream/lib/ActivityStream.jsm", null, null, () => {
// Helper to fetch a resource directory listing and call back with each item
- const processListing = async (uri, cb) => (await (await fetch(uri)).text())
- .split("\n").slice(2).forEach(line => cb(line.split(" ").slice(1)));
+ const processListing = async (uri, cb) => {
+ try {
+ (await (await fetch(uri)).text())
+ .split("\n").slice(2).forEach(line => cb(line.split(" ").slice(1)));
+ } catch (e) {
+ // Silently ignore listings that fail to load
+ // probably because the resource: has been unloaded
+ }
+ };
// Look for modules one level deeper than the top resource URI
processListing(RESOURCE_BASE, ([directory, , , type]) => {
if (type === "DIRECTORY") {
// Look into this directory for .jsm files
const subDir = `${RESOURCE_BASE}/${directory}`;
processListing(subDir, ([name]) => {
if (name && name.search(/\.jsm$/) !== -1) {
--- a/browser/extensions/activity-stream/common/Actions.jsm
+++ b/browser/extensions/activity-stream/common/Actions.jsm
@@ -20,16 +20,18 @@ this.globalImportContext = globalImportC
// Create an object that avoids accidental differing key/value pairs:
// {
// INIT: "INIT",
// UNINIT: "UNINIT"
// }
const actionTypes = {};
for (const type of [
+ "ADDONS_INFO_REQUEST",
+ "ADDONS_INFO_RESPONSE",
"ARCHIVE_FROM_POCKET",
"AS_ROUTER_TELEMETRY_USER_EVENT",
"BLOCK_URL",
"BOOKMARK_URL",
"COPY_DOWNLOAD_LINK",
"DELETE_BOOKMARK_BY_ID",
"DELETE_FROM_POCKET",
"DELETE_HISTORY_URL",
@@ -122,30 +124,30 @@ for (const type of [
"OPEN_ABOUT_PAGE"
]) {
ASRouterActions[type] = type;
}
// Helper function for creating routed actions between content and main
// Not intended to be used by consumers
function _RouteMessage(action, options) {
- const meta = action.meta ? Object.assign({}, action.meta) : {};
+ const meta = action.meta ? {...action.meta} : {};
if (!options || !options.from || !options.to) {
throw new Error("Routed Messages must have options as the second parameter, and must at least include a .from and .to property.");
}
// For each of these fields, if they are passed as an option,
// add them to the action. If they are not defined, remove them.
["from", "to", "toTarget", "fromTarget", "skipMain", "skipLocal"].forEach(o => {
if (typeof options[o] !== "undefined") {
meta[o] = options[o];
} else if (meta[o]) {
delete meta[o];
}
});
- return Object.assign({}, action, {meta});
+ return {...action, meta};
}
/**
* AlsoToMain - Creates a message that will be dispatched locally and also sent to the Main process.
*
* @param {object} action Any redux action (required)
* @param {object} options
* @param {bool} skipLocal Used by OnlyToMain to skip the main reducer
--- a/browser/extensions/activity-stream/css/activity-stream-linux.css
+++ b/browser/extensions/activity-stream/css/activity-stream-linux.css
@@ -162,18 +162,18 @@ body {
.icon.icon-unpin {
background-image: url("../data/content/assets/glyph-unpin-16.svg"); }
.icon.icon-unpin:dir(rtl) {
transform: scaleX(-1); }
.icon.icon-edit {
background-image: url("../data/content/assets/glyph-edit-16.svg"); }
.icon.icon-pocket {
background-image: url("../data/content/assets/glyph-pocket-16.svg"); }
- .icon.icon-historyItem {
- background-image: url("../data/content/assets/glyph-historyItem-16.svg"); }
+ .icon.icon-history-item {
+ background-image: url("chrome://browser/skin/history.svg"); }
.icon.icon-trending {
background-image: url("../data/content/assets/glyph-trending-16.svg");
transform: translateY(2px); }
.icon.icon-now {
background-image: url("chrome://browser/skin/history.svg"); }
.icon.icon-topsites {
background-image: url("../data/content/assets/glyph-topsites-16.svg"); }
.icon.icon-pin-small {
@@ -186,19 +186,16 @@ body {
.icon.icon-check {
background-image: url("chrome://browser/skin/check.svg"); }
.icon.icon-download {
background-image: url("chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar"); }
.icon.icon-copy {
background-image: url("chrome://browser/skin/edit-copy.svg"); }
.icon.icon-open-file {
background-image: url("../data/content/assets/glyph-open-file-16.svg"); }
- .icon.icon-download-folder {
- background-image: url("../data/content/assets/glyph-download-icon.svg");
- background-size: 100%; }
.icon.icon-webextension {
background-image: url("../data/content/assets/glyph-webextension-16.svg"); }
.icon.icon-highlights {
background-image: url("../data/content/assets/glyph-highlights-16.svg"); }
.icon.icon-arrowhead-down {
background-image: url("../data/content/assets/glyph-arrowhead-down-16.svg"); }
.icon.icon-arrowhead-down-small {
background-image: url("../data/content/assets/glyph-arrowhead-down-12.svg");
@@ -770,19 +767,16 @@ main {
offset-inline-end: 0;
offset-inline-start: auto; } }
@media (min-width: 1122px) and (max-width: 1570px) {
.sections-list .section-list :nth-child(3n) .context-menu {
margin-inline-end: 5px;
margin-inline-start: auto;
offset-inline-end: 0;
offset-inline-start: auto; } }
- @media (min-width: 1122px) {
- .sections-list .section-list {
- grid-template-columns: repeat(auto-fit, 309px); } }
.sections-list .section-empty-state {
border: 1px solid var(--newtab-border-secondary-color);
border-radius: 3px;
display: flex;
height: 266px;
width: 100%; }
.sections-list .section-empty-state .empty-state {
@@ -802,16 +796,20 @@ main {
color: var(--newtab-text-primary-color);
font-size: 13px;
margin-bottom: 0;
text-align: center; }
@media (min-width: 1122px) {
.sections-list .section-empty-state {
height: 370px; } }
+@media (min-width: 1122px) {
+ .sections-list .normal-cards .section-list {
+ grid-template-columns: repeat(auto-fit, 309px); } }
+
.activity-stream.welcome {
overflow: hidden; }
.activity-stream:not(.welcome) .overlay-wrapper {
display: none; }
.overlay-wrapper {
position: fixed;
@@ -1245,16 +1243,19 @@ main {
width: 27px; }
.card-outer .context-menu-button:-moz-any(:active, :focus) {
opacity: 1;
transform: scale(1); }
.card-outer.placeholder {
background: transparent; }
.card-outer.placeholder .card {
box-shadow: inset 0 0 0 1px var(--newtab-inner-box-shadow-color); }
+ .card-outer.placeholder .card-preview-image-outer,
+ .card-outer.placeholder .card-context {
+ display: none; }
.card-outer .card {
border-radius: 3px;
box-shadow: var(--newtab-card-shadow);
height: 100%; }
.card-outer > a {
color: inherit;
display: block;
height: 100%;
@@ -1275,16 +1276,17 @@ main {
transform: scale(1); }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .card-title {
color: var(--newtab-link-primary-color); }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .alternate ~ .card-host-name {
display: none; }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .card-host-name.alternate {
display: block; }
.card-outer .card-preview-image-outer {
+ background-color: #D7D7DB;
border-radius: 3px 3px 0 0;
height: 122px;
overflow: hidden;
position: relative; }
.card-outer .card-preview-image-outer::after {
border-bottom: 1px solid var(--newtab-card-hairline-color);
bottom: 0;
content: '';
@@ -1297,50 +1299,35 @@ main {
height: 100%;
opacity: 0;
transition: opacity 1s cubic-bezier(0.07, 0.95, 0, 1);
width: 100%; }
.card-outer .card-preview-image-outer .card-preview-image.loaded {
opacity: 1; }
.card-outer .card-details {
padding: 15px 16px 12px; }
- .card-outer .card-details.no-image {
- padding-top: 16px; }
.card-outer .card-text {
max-height: 78px;
overflow: hidden; }
- .card-outer .card-text.no-image {
- max-height: 192px; }
.card-outer .card-text.no-host-name, .card-outer .card-text.no-context {
max-height: 97px; }
- .card-outer .card-text.no-image.no-host-name, .card-outer .card-text.no-image.no-context {
- max-height: 211px; }
.card-outer .card-text.no-host-name.no-context {
max-height: 116px; }
- .card-outer .card-text.no-image.no-host-name.no-context {
- max-height: 230px; }
.card-outer .card-text:not(.no-description) .card-title {
max-height: 57px;
overflow: hidden; }
.card-outer .card-host-name {
color: var(--newtab-text-secondary-color);
font-size: 10px;
overflow: hidden;
padding-bottom: 4px;
text-overflow: ellipsis;
text-transform: uppercase; }
.card-outer .card-host-name.alternate {
display: none; }
- .card-outer .card-download-icon {
- float: inline-end;
- margin-inline-start: 15px;
- margin-top: 2px; }
- .card-outer .card-download-icon.icon-download-folder {
- height: 36px;
- width: 36px; }
.card-outer .card-title {
font-size: 14px;
font-weight: 600;
line-height: 19px;
margin: 0 0 2px;
word-wrap: break-word; }
.card-outer .card-description {
font-size: 12px;
@@ -1362,43 +1349,97 @@ main {
height: 22px;
margin-inline-end: 6px; }
.card-outer .card-context-label {
flex-grow: 1;
line-height: 22px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
- @media (min-width: 1122px) {
- .card-outer {
- height: 370px; }
- .card-outer .card-preview-image-outer {
- height: 155px; }
- .card-outer .card-details {
- padding: 13px 16px 12px; }
- .card-outer .card-text {
- max-height: 140px; }
- .card-outer .card-host-name {
- font-size: 12px;
- padding-bottom: 5px; }
- .card-outer .card-download-icon.icon-download-folder {
- height: 54px;
- width: 54px; }
- .card-outer .card-title {
- font-size: 17px;
- line-height: 23px;
- margin-bottom: 0; }
- .card-outer .card-text:not(.no-description) .card-title {
- max-height: 69px; }
- .card-outer .card-description {
- font-size: 15px;
- line-height: 23px; }
- .card-outer .card-context {
- bottom: 4px;
- font-size: 14px; } }
+
+@media (min-width: 1122px) {
+ .normal-cards .card-outer {
+ height: 370px; }
+ .normal-cards .card-outer .card-preview-image-outer {
+ height: 155px; }
+ .normal-cards .card-outer .card-details {
+ padding: 13px 16px 12px; }
+ .normal-cards .card-outer .card-text {
+ max-height: 140px; }
+ .normal-cards .card-outer .card-host-name {
+ font-size: 12px;
+ padding-bottom: 5px; }
+ .normal-cards .card-outer .card-title {
+ font-size: 17px;
+ line-height: 23px;
+ margin-bottom: 0; }
+ .normal-cards .card-outer .card-text:not(.no-description) .card-title {
+ max-height: 69px; }
+ .normal-cards .card-outer .card-description {
+ font-size: 15px;
+ line-height: 23px; }
+ .normal-cards .card-outer .card-context {
+ bottom: 4px;
+ font-size: 14px; } }
+
+.compact-cards .card-outer {
+ height: 160px; }
+ .compact-cards .card-outer .card-preview-image-outer {
+ height: 108px; }
+ .compact-cards .card-outer .card-details {
+ padding: 12px 16px; }
+ .compact-cards .card-outer .card-host-name {
+ line-height: 10px; }
+ .compact-cards .card-outer .card-text .card-title,
+ .compact-cards .card-outer .card-text:not(.no-description) .card-title {
+ font-size: 10px;
+ line-height: 12px;
+ max-height: 12px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap; }
+ .compact-cards .card-outer .card-description {
+ display: none; }
+ .compact-cards .card-outer .card-context {
+ background-color: var(--newtab-card-background-color);
+ border-radius: 16px;
+ height: 32px;
+ width: 32px;
+ padding: 8px;
+ top: 92px;
+ left: auto;
+ offset-inline-end: 12px; }
+ .compact-cards .card-outer .card-context::after {
+ border: 1px solid var(--newtab-card-hairline-color);
+ border-bottom: 0;
+ border-radius: 16px 16px 0 0;
+ content: '';
+ position: absolute;
+ height: 50%;
+ width: 100%;
+ top: 0;
+ left: 0; }
+ .compact-cards .card-outer .card-context .card-context-icon {
+ margin-inline-end: 0;
+ height: 16px;
+ width: 16px; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-bookmark-added {
+ fill: #0A84FF; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-download {
+ fill: #12BC00; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-history-item {
+ fill: #B1B1B3; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-pocket {
+ fill: #D70022; }
+ .compact-cards .card-outer .card-context .card-context-label {
+ display: none; }
+
+@media not all and (min-width: 1122px) {
+ .compact-cards .hide-for-narrow {
+ display: none; } }
.manual-migration-container {
color: var(--newtab-text-conditional-color);
font-size: 13px;
line-height: 15px;
margin-bottom: 20px;
text-align: center; }
@media (min-width: 610px) {
--- a/browser/extensions/activity-stream/css/activity-stream-linux.css.map
+++ b/browser/extensions/activity-stream/css/activity-stream-linux.css.map
@@ -26,33 +26,33 @@
"../content-src/asrouter/components/ModalOverlay/_ModalOverlay.scss",
"../content-src/asrouter/templates/SimpleSnippet/_SimpleSnippet.scss",
"../content-src/asrouter/templates/OnboardingMessage/_OnboardingMessage.scss"
],
"sourcesContent": [
"/* This is the linux variant */ // sass-lint:disable-line no-css-comments\n\n$os-infopanel-arrow-height: 10px;\n$os-infopanel-arrow-offset-end: 6px;\n$os-infopanel-arrow-width: 20px;\n\n@import './activity-stream';\n",
"@import './normalize';\n@import './variables';\n@import './theme';\n@import './icons';\n\nhtml {\n height: 100%;\n}\n\nbody,\n#root { // sass-lint:disable-line no-ids\n min-height: 100vh;\n}\n\nbody {\n background-color: var(--newtab-background-color);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Ubuntu', 'Helvetica Neue', sans-serif;\n font-size: 16px;\n overflow-y: scroll;\n}\n\nh1,\nh2 {\n font-weight: normal;\n}\n\na {\n text-decoration: none;\n}\n\n// For screen readers\n.sr-only {\n border: 0;\n clip: rect(0, 0, 0, 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n}\n\n.inner-border {\n border: $border-secondary;\n border-radius: $border-radius;\n height: 100%;\n left: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 100;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n.show-on-init {\n opacity: 0;\n transition: opacity 0.2s ease-in;\n\n &.on {\n animation: fadeIn 0.2s;\n opacity: 1;\n }\n}\n\n.actions {\n border-top: $border-secondary;\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: flex-start;\n margin: 0;\n padding: 15px 25px 0;\n}\n\n// Default button (grey)\n.button,\n.actions button {\n background-color: var(--newtab-button-secondary-color);\n border: $border-primary;\n border-radius: 4px;\n color: inherit;\n cursor: pointer;\n margin-bottom: 15px;\n padding: 10px 30px;\n white-space: nowrap;\n\n &:hover:not(.dismiss) {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n }\n\n &.dismiss {\n background-color: transparent;\n border: 0;\n padding: 0;\n text-decoration: underline;\n }\n\n // Blue button\n &.primary,\n &.done {\n background-color: var(--newtab-button-primary-color);\n border: solid 1px var(--newtab-button-primary-color);\n color: $white;\n margin-inline-start: auto;\n }\n}\n\ninput {\n &[type='text'],\n &[type='search'] {\n border-radius: $border-radius;\n }\n}\n\n// Make sure snippets show up above other UI elements\n#snippets-container { // sass-lint:disable-line no-ids\n z-index: 1;\n}\n\n// Components\n@import '../components/Base/Base';\n@import '../components/ErrorBoundary/ErrorBoundary';\n@import '../components/TopSites/TopSites';\n@import '../components/Sections/Sections';\n@import '../components/StartupOverlay/StartupOverlay';\n@import '../components/Topics/Topics';\n@import '../components/Search/Search';\n@import '../components/ContextMenu/ContextMenu';\n@import '../components/ConfirmDialog/ConfirmDialog';\n@import '../components/Card/Card';\n@import '../components/ManualMigration/ManualMigration';\n@import '../components/CollapsibleSection/CollapsibleSection';\n@import '../components/ASRouterAdmin/ASRouterAdmin';\n\n// AS Router\n@import '../asrouter/components/Button/Button';\n@import '../asrouter/components/SnippetBase/SnippetBase';\n@import '../asrouter/components/ModalOverlay/ModalOverlay';\n@import '../asrouter/templates/SimpleSnippet/SimpleSnippet';\n@import '../asrouter/templates/OnboardingMessage/OnboardingMessage';\n",
"html {\n box-sizing: border-box;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n*::-moz-focus-inner {\n border: 0;\n}\n\nbody {\n margin: 0;\n}\n\nbutton,\ninput {\n background-color: inherit;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n}\n\n[hidden] {\n display: none !important; // sass-lint:disable-line no-important\n}\n",
- "// Photon colors from http://design.firefox.com/photon/visuals/color.html\n$blue-40: #45A1FF;\n$blue-50: #0A84FF;\n$blue-60: #0060DF;\n$blue-70: #003EAA;\n$blue-80: #002275;\n$grey-10: #F9F9FA;\n$grey-20: #EDEDF0;\n$grey-30: #D7D7DB;\n$grey-40: #B1B1B3;\n$grey-50: #737373;\n$grey-60: #4A4A4F;\n$grey-70: #38383D;\n$grey-80: #2A2A2E;\n$grey-90: #0C0C0D;\n$teal-70: #008EA4;\n$red-60: #D70022;\n$yellow-50: #FFE900;\n\n// Photon opacity from http://design.firefox.com/photon/visuals/color.html#opacity\n$grey-10-10: rgba($grey-10, 0.1);\n$grey-10-20: rgba($grey-10, 0.2);\n$grey-10-40: rgba($grey-10, 0.4);\n$grey-10-60: rgba($grey-10, 0.6);\n$grey-10-80: rgba($grey-10, 0.8);\n$grey-20-60: rgba($grey-20, 0.6);\n$grey-20-80: rgba($grey-20, 0.8);\n$grey-30-60: rgba($grey-30, 0.6);\n$grey-90-10: rgba($grey-90, 0.1);\n$grey-90-20: rgba($grey-90, 0.2);\n$grey-90-30: rgba($grey-90, 0.3);\n$grey-90-40: rgba($grey-90, 0.4);\n$grey-90-50: rgba($grey-90, 0.5);\n$grey-90-60: rgba($grey-90, 0.6);\n$grey-90-70: rgba($grey-90, 0.7);\n$grey-90-80: rgba($grey-90, 0.8);\n$grey-90-90: rgba($grey-90, 0.9);\n\n$black: #000;\n$black-5: rgba($black, 0.05);\n$black-10: rgba($black, 0.1);\n$black-15: rgba($black, 0.15);\n$black-20: rgba($black, 0.2);\n$black-25: rgba($black, 0.25);\n$black-30: rgba($black, 0.3);\n\n// Photon transitions from http://design.firefox.com/photon/motion/duration-and-easing.html\n$photon-easing: cubic-bezier(0.07, 0.95, 0, 1);\n\n// Other colors\n$white: #FFF;\n$white-10: rgba($white, 0.1);\n$pocket-teal: #50BCB6;\n\n$border-radius: 3px;\n\n// Grid related styles\n$base-gutter: 32px;\n$section-horizontal-padding: 25px;\n$section-vertical-padding: 10px;\n$section-spacing: 40px - $section-vertical-padding * 2;\n$grid-unit: 96px; // 1 top site\n\n$icon-size: 16px;\n$smaller-icon-size: 12px;\n$larger-icon-size: 32px;\n\n$small-download-folder-icon-size: 36px;\n$large-download-folder-icon-size: $small-download-folder-icon-size * 1.5;\n\n$wrapper-default-width: $grid-unit * 2 + $base-gutter * 1 + $section-horizontal-padding * 2; // 2 top sites\n$wrapper-max-width-small: $grid-unit * 3 + $base-gutter * 2 + $section-horizontal-padding * 2; // 3 top sites\n$wrapper-max-width-medium: $grid-unit * 4 + $base-gutter * 3 + $section-horizontal-padding * 2; // 4 top sites\n$wrapper-max-width-large: $grid-unit * 6 + $base-gutter * 5 + $section-horizontal-padding * 2; // 6 top sites\n$wrapper-max-width-widest: $grid-unit * 8 + $base-gutter * 7 + $section-horizontal-padding * 2; // 8 top sites\n// For the breakpoints, we need to add space for the scrollbar to avoid weird\n// layout issues when the scrollbar is visible. 16px is wide enough to cover all\n// OSes and keeps it simpler than a per-OS value.\n$scrollbar-width: 16px;\n$break-point-small: $wrapper-max-width-small + $base-gutter * 2 + $scrollbar-width;\n$break-point-medium: $wrapper-max-width-medium + $base-gutter * 2 + $scrollbar-width;\n$break-point-large: $wrapper-max-width-large + $base-gutter * 2 + $scrollbar-width;\n$break-point-widest: $wrapper-max-width-widest + $base-gutter * 2 + $scrollbar-width;\n\n$section-title-font-size: 13px;\n\n$card-width: $grid-unit * 2 + $base-gutter;\n$card-height: 266px;\n$card-preview-image-height: 122px;\n$card-title-margin: 2px;\n$card-text-line-height: 19px;\n// Larger cards for wider screens:\n$card-width-large: 309px;\n$card-height-large: 370px;\n$card-preview-image-height-large: 155px;\n\n$topic-margin-top: 12px;\n\n$context-menu-button-size: 27px;\n$context-menu-button-boxshadow: 0 2px $grey-90-10;\n$context-menu-shadow: 0 5px 10px $black-30, 0 0 0 1px $black-20;\n$context-menu-font-size: 14px;\n$context-menu-border-radius: 5px;\n$context-menu-outer-padding: 5px;\n$context-menu-item-padding: 3px 12px;\n\n$error-fallback-font-size: 12px;\n$error-fallback-line-height: 1.5;\n\n$image-path: '../data/content/assets/';\n\n$snippets-container-height: 120px;\n\n$textbox-shadow-size: 4px;\n\n@mixin fade-in {\n box-shadow: inset $inner-box-shadow, $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin fade-in-card {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin context-menu-button {\n .context-menu-button {\n background-clip: padding-box;\n background-color: var(--newtab-contextmenu-button-color);\n background-image: url('chrome://browser/skin/page-action.svg');\n background-position: 55%;\n border: $border-primary;\n border-radius: 100%;\n box-shadow: $context-menu-button-boxshadow;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n height: $context-menu-button-size;\n offset-inline-end: -($context-menu-button-size / 2);\n opacity: 0;\n position: absolute;\n top: -($context-menu-button-size / 2);\n transform: scale(0.25);\n transition-duration: 200ms;\n transition-property: transform, opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus) {\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n@mixin context-menu-button-hover {\n .context-menu-button {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@mixin context-menu-open-middle {\n .context-menu {\n margin-inline-end: auto;\n margin-inline-start: auto;\n offset-inline-end: auto;\n offset-inline-start: -$base-gutter;\n }\n}\n\n@mixin context-menu-open-left {\n .context-menu {\n margin-inline-end: 5px;\n margin-inline-start: auto;\n offset-inline-end: 0;\n offset-inline-start: auto;\n }\n}\n\n@mixin flip-icon {\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n}\n",
+ "// Photon colors from http://design.firefox.com/photon/visuals/color.html\n$blue-40: #45A1FF;\n$blue-50: #0A84FF;\n$blue-60: #0060DF;\n$blue-70: #003EAA;\n$blue-80: #002275;\n$grey-10: #F9F9FA;\n$grey-20: #EDEDF0;\n$grey-30: #D7D7DB;\n$grey-40: #B1B1B3;\n$grey-50: #737373;\n$grey-60: #4A4A4F;\n$grey-70: #38383D;\n$grey-80: #2A2A2E;\n$grey-90: #0C0C0D;\n$teal-70: #008EA4;\n$red-60: #D70022;\n$yellow-50: #FFE900;\n\n// Photon opacity from http://design.firefox.com/photon/visuals/color.html#opacity\n$grey-10-10: rgba($grey-10, 0.1);\n$grey-10-20: rgba($grey-10, 0.2);\n$grey-10-40: rgba($grey-10, 0.4);\n$grey-10-60: rgba($grey-10, 0.6);\n$grey-10-80: rgba($grey-10, 0.8);\n$grey-20-60: rgba($grey-20, 0.6);\n$grey-20-80: rgba($grey-20, 0.8);\n$grey-30-60: rgba($grey-30, 0.6);\n$grey-90-10: rgba($grey-90, 0.1);\n$grey-90-20: rgba($grey-90, 0.2);\n$grey-90-30: rgba($grey-90, 0.3);\n$grey-90-40: rgba($grey-90, 0.4);\n$grey-90-50: rgba($grey-90, 0.5);\n$grey-90-60: rgba($grey-90, 0.6);\n$grey-90-70: rgba($grey-90, 0.7);\n$grey-90-80: rgba($grey-90, 0.8);\n$grey-90-90: rgba($grey-90, 0.9);\n\n$black: #000;\n$black-5: rgba($black, 0.05);\n$black-10: rgba($black, 0.1);\n$black-15: rgba($black, 0.15);\n$black-20: rgba($black, 0.2);\n$black-25: rgba($black, 0.25);\n$black-30: rgba($black, 0.3);\n\n// Other colors\n$white: #FFF;\n$white-10: rgba($white, 0.1);\n$pocket-teal: #50BCB6;\n$bookmark-icon-fill: #0A84FF;\n$download-icon-fill: #12BC00;\n$history-icon-fill: #B1B1B3;\n$pocket-icon-fill: #D70022;\n\n// Photon transitions from http://design.firefox.com/photon/motion/duration-and-easing.html\n$photon-easing: cubic-bezier(0.07, 0.95, 0, 1);\n\n$border-radius: 3px;\n\n// Grid related styles\n$base-gutter: 32px;\n$section-horizontal-padding: 25px;\n$section-vertical-padding: 10px;\n$section-spacing: 40px - $section-vertical-padding * 2;\n$grid-unit: 96px; // 1 top site\n\n$icon-size: 16px;\n$smaller-icon-size: 12px;\n$larger-icon-size: 32px;\n\n$wrapper-default-width: $grid-unit * 2 + $base-gutter * 1 + $section-horizontal-padding * 2; // 2 top sites\n$wrapper-max-width-small: $grid-unit * 3 + $base-gutter * 2 + $section-horizontal-padding * 2; // 3 top sites\n$wrapper-max-width-medium: $grid-unit * 4 + $base-gutter * 3 + $section-horizontal-padding * 2; // 4 top sites\n$wrapper-max-width-large: $grid-unit * 6 + $base-gutter * 5 + $section-horizontal-padding * 2; // 6 top sites\n$wrapper-max-width-widest: $grid-unit * 8 + $base-gutter * 7 + $section-horizontal-padding * 2; // 8 top sites\n// For the breakpoints, we need to add space for the scrollbar to avoid weird\n// layout issues when the scrollbar is visible. 16px is wide enough to cover all\n// OSes and keeps it simpler than a per-OS value.\n$scrollbar-width: 16px;\n$break-point-small: $wrapper-max-width-small + $base-gutter * 2 + $scrollbar-width;\n$break-point-medium: $wrapper-max-width-medium + $base-gutter * 2 + $scrollbar-width;\n$break-point-large: $wrapper-max-width-large + $base-gutter * 2 + $scrollbar-width;\n$break-point-widest: $wrapper-max-width-widest + $base-gutter * 2 + $scrollbar-width;\n\n$section-title-font-size: 13px;\n\n$card-width: $grid-unit * 2 + $base-gutter;\n$card-height: 266px;\n$card-preview-image-height: 122px;\n$card-title-margin: 2px;\n$card-text-line-height: 19px;\n// Larger cards for wider screens:\n$card-width-large: 309px;\n$card-height-large: 370px;\n$card-preview-image-height-large: 155px;\n// Compact cards for Highlights\n$card-height-compact: 160px;\n$card-preview-image-height-compact: 108px;\n\n$topic-margin-top: 12px;\n\n$context-menu-button-size: 27px;\n$context-menu-button-boxshadow: 0 2px $grey-90-10;\n$context-menu-shadow: 0 5px 10px $black-30, 0 0 0 1px $black-20;\n$context-menu-font-size: 14px;\n$context-menu-border-radius: 5px;\n$context-menu-outer-padding: 5px;\n$context-menu-item-padding: 3px 12px;\n\n$error-fallback-font-size: 12px;\n$error-fallback-line-height: 1.5;\n\n$image-path: '../data/content/assets/';\n\n$snippets-container-height: 120px;\n\n$textbox-shadow-size: 4px;\n\n@mixin fade-in {\n box-shadow: inset $inner-box-shadow, $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin fade-in-card {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin context-menu-button {\n .context-menu-button {\n background-clip: padding-box;\n background-color: var(--newtab-contextmenu-button-color);\n background-image: url('chrome://browser/skin/page-action.svg');\n background-position: 55%;\n border: $border-primary;\n border-radius: 100%;\n box-shadow: $context-menu-button-boxshadow;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n height: $context-menu-button-size;\n offset-inline-end: -($context-menu-button-size / 2);\n opacity: 0;\n position: absolute;\n top: -($context-menu-button-size / 2);\n transform: scale(0.25);\n transition-duration: 200ms;\n transition-property: transform, opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus) {\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n@mixin context-menu-button-hover {\n .context-menu-button {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@mixin context-menu-open-middle {\n .context-menu {\n margin-inline-end: auto;\n margin-inline-start: auto;\n offset-inline-end: auto;\n offset-inline-start: -$base-gutter;\n }\n}\n\n@mixin context-menu-open-left {\n .context-menu {\n margin-inline-end: 5px;\n margin-inline-start: auto;\n offset-inline-end: 0;\n offset-inline-start: auto;\n }\n}\n\n@mixin flip-icon {\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n}\n",
"@function textbox-shadow($color) {\n @return 0 0 0 1px $color, 0 0 0 $textbox-shadow-size rgba($color, 0.3);\n}\n\n@mixin textbox-focus($color) {\n --newtab-textbox-focus-color: $color;\n --newtab-textbox-focus-boxshadow: textbox-shadow($color);\n}\n\n// scss variables related to the theme.\n$border-primary: 1px solid var(--newtab-border-primary-color);\n$border-secondary: 1px solid var(--newtab-border-secondary-color);\n$inner-box-shadow: 0 0 0 1px var(--newtab-inner-box-shadow-color);\n$input-border: 1px solid var(--newtab-textbox-border);\n$input-border-active: 1px solid var(--newtab-textbox-focus-color);\n$input-error-border: 1px solid $red-60;\n$input-error-boxshadow: textbox-shadow($red-60);\n$shadow-primary: 0 0 0 5px var(--newtab-card-active-outline-color);\n$shadow-secondary: 0 1px 4px 0 $grey-90-20;\n\n// Default theme\nbody {\n // General styles\n --newtab-background-color: $grey-10;\n --newtab-border-primary-color: $grey-40;\n --newtab-border-secondary-color: $grey-30;\n --newtab-button-primary-color: $blue-60;\n --newtab-button-secondary-color: inherit;\n --newtab-element-active-color: $grey-30-60;\n --newtab-element-hover-color: $grey-20;\n --newtab-icon-primary-color: $grey-90-80;\n --newtab-icon-secondary-color: $grey-90-60;\n --newtab-icon-tertiary-color: $grey-30;\n --newtab-inner-box-shadow-color: $black-10;\n --newtab-link-primary-color: $blue-60;\n --newtab-link-secondary-color: $teal-70;\n --newtab-text-conditional-color: $grey-60;\n --newtab-text-primary-color: $grey-90;\n --newtab-text-secondary-color: $grey-50;\n --newtab-text-tertiary-color: $grey-50;\n --newtab-textbox-background-color: $white;\n --newtab-textbox-border: $grey-90-20;\n @include textbox-focus($blue-60); // sass-lint:disable-line mixins-before-declarations\n\n // Context menu\n --newtab-contextmenu-background-color: $grey-10;\n --newtab-contextmenu-button-color: $white;\n\n // Modal + overlay\n --newtab-modal-color: $white;\n --newtab-overlay-color: $grey-20-80;\n\n // Sections\n --newtab-section-header-text-color: $grey-50;\n --newtab-section-navigation-text-color: $grey-50;\n --newtab-section-active-contextmenu-color: $grey-90;\n\n // Search\n --newtab-search-border-color: transparent;\n --newtab-search-dropdown-color: $white;\n --newtab-search-dropdown-header-color: $grey-10;\n --newtab-search-icon-color: $grey-90-40;\n\n // Top Sites\n --newtab-topsites-background-color: $white;\n --newtab-topsites-icon-shadow: inset $inner-box-shadow;\n --newtab-topsites-label-color: inherit;\n\n // Cards\n --newtab-card-active-outline-color: $grey-30;\n --newtab-card-background-color: $white;\n --newtab-card-hairline-color: $black-10;\n --newtab-card-shadow: 0 1px 4px 0 $grey-90-10;\n\n // Snippets\n --newtab-snippets-background-color: $white;\n --newtab-snippets-hairline-color: transparent;\n}\n\n// Dark theme\n.dark-theme {\n // General styles\n --newtab-background-color: $grey-80;\n --newtab-border-primary-color: $grey-10-80;\n --newtab-border-secondary-color: $grey-10-10;\n --newtab-button-primary-color: $blue-60;\n --newtab-button-secondary-color: $grey-70;\n --newtab-element-active-color: $grey-10-20;\n --newtab-element-hover-color: $grey-10-10;\n --newtab-icon-primary-color: $grey-10-80;\n --newtab-icon-secondary-color: $grey-10-40;\n --newtab-icon-tertiary-color: $grey-10-40;\n --newtab-inner-box-shadow-color: $grey-10-20;\n --newtab-link-primary-color: $blue-40;\n --newtab-link-secondary-color: $pocket-teal;\n --newtab-text-conditional-color: $grey-10;\n --newtab-text-primary-color: $grey-10;\n --newtab-text-secondary-color: $grey-10-80;\n --newtab-text-tertiary-color: $grey-10-60;\n --newtab-textbox-background-color: $grey-70;\n --newtab-textbox-border: $grey-10-20;\n @include textbox-focus($blue-40); // sass-lint:disable-line mixins-before-declarations\n\n // Context menu\n --newtab-contextmenu-background-color: $grey-60;\n --newtab-contextmenu-button-color: $grey-80;\n\n // Modal + overlay\n --newtab-modal-color: $grey-80;\n --newtab-overlay-color: $grey-90-80;\n\n // Sections\n --newtab-section-header-text-color: $grey-10-80;\n --newtab-section-navigation-text-color: $grey-10-80;\n --newtab-section-active-contextmenu-color: $white;\n\n // Search\n --newtab-search-border-color: $grey-10-20;\n --newtab-search-dropdown-color: $grey-70;\n --newtab-search-dropdown-header-color: $grey-60;\n --newtab-search-icon-color: $grey-10-60;\n\n // Top Sites\n --newtab-topsites-background-color: $grey-70;\n --newtab-topsites-icon-shadow: none;\n --newtab-topsites-label-color: $grey-10-80;\n\n // Cards\n --newtab-card-active-outline-color: $grey-60;\n --newtab-card-background-color: $grey-70;\n --newtab-card-hairline-color: $grey-10-10;\n --newtab-card-shadow: 0 1px 8px 0 $grey-90-20;\n\n // Snippets\n --newtab-snippets-background-color: $grey-70;\n --newtab-snippets-hairline-color: $white-10;\n}\n",
- ".icon {\n background-position: center center;\n background-repeat: no-repeat;\n background-size: $icon-size;\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-icon-primary-color);\n height: $icon-size;\n vertical-align: middle;\n width: $icon-size;\n\n &.icon-spacer {\n margin-inline-end: 8px;\n }\n\n &.icon-small-spacer {\n margin-inline-end: 6px;\n }\n\n &.icon-bookmark-added {\n background-image: url('chrome://browser/skin/bookmark.svg');\n }\n\n &.icon-bookmark-hollow {\n background-image: url('chrome://browser/skin/bookmark-hollow.svg');\n }\n\n &.icon-clear-input {\n fill: var(--newtab-icon-secondary-color);\n background-image: url('#{$image-path}glyph-cancel-16.svg');\n }\n\n &.icon-delete {\n background-image: url('#{$image-path}glyph-delete-16.svg');\n }\n\n &.icon-search {\n background-image: url('chrome://browser/skin/search-glass.svg');\n }\n\n &.icon-modal-delete {\n flex-shrink: 0;\n background-image: url('#{$image-path}glyph-modal-delete-32.svg');\n background-size: $larger-icon-size;\n height: $larger-icon-size;\n width: $larger-icon-size;\n }\n\n &.icon-dismiss {\n background-image: url('#{$image-path}glyph-dismiss-16.svg');\n }\n\n &.icon-info {\n background-image: url('#{$image-path}glyph-info-16.svg');\n }\n\n &.icon-import {\n background-image: url('#{$image-path}glyph-import-16.svg');\n }\n\n &.icon-new-window {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-newWindow-16.svg');\n }\n\n &.icon-new-window-private {\n background-image: url('chrome://browser/skin/privateBrowsing.svg');\n }\n\n &.icon-settings {\n background-image: url('chrome://browser/skin/settings.svg');\n }\n\n &.icon-pin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-16.svg');\n }\n\n &.icon-unpin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-unpin-16.svg');\n }\n\n &.icon-edit {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.icon-pocket {\n background-image: url('#{$image-path}glyph-pocket-16.svg');\n }\n\n &.icon-historyItem {\n background-image: url('#{$image-path}glyph-historyItem-16.svg');\n }\n\n &.icon-trending {\n background-image: url('#{$image-path}glyph-trending-16.svg');\n transform: translateY(2px); // trending bolt is visually top heavy\n }\n\n &.icon-now {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-topsites {\n background-image: url('#{$image-path}glyph-topsites-16.svg');\n }\n\n &.icon-pin-small {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-check {\n background-image: url('chrome://browser/skin/check.svg');\n }\n\n &.icon-download {\n background-image: url('chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar');\n }\n\n &.icon-copy {\n background-image: url('chrome://browser/skin/edit-copy.svg');\n }\n\n &.icon-open-file {\n background-image: url('#{$image-path}glyph-open-file-16.svg');\n }\n\n &.icon-download-folder {\n background-image: url('#{$image-path}glyph-download-icon.svg');\n background-size: 100%;\n }\n\n &.icon-webextension {\n background-image: url('#{$image-path}glyph-webextension-16.svg');\n }\n\n &.icon-highlights {\n background-image: url('#{$image-path}glyph-highlights-16.svg');\n }\n\n &.icon-arrowhead-down {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n }\n\n &.icon-arrowhead-down-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-arrowhead-forward-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n transform: rotate(-90deg);\n width: $smaller-icon-size;\n\n &:dir(rtl) {\n transform: rotate(90deg);\n }\n }\n\n &.icon-arrowhead-up {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n transform: rotate(180deg);\n }\n\n &.icon-add {\n background-image: url('#{$image-path}glyph-add-16.svg');\n }\n\n &.icon-minimize {\n background-image: url('#{$image-path}glyph-minimize-16.svg');\n }\n\n &.icon-maximize {\n background-image: url('#{$image-path}glyph-maximize-16.svg');\n }\n}\n",
+ ".icon {\n background-position: center center;\n background-repeat: no-repeat;\n background-size: $icon-size;\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-icon-primary-color);\n height: $icon-size;\n vertical-align: middle;\n width: $icon-size;\n\n &.icon-spacer {\n margin-inline-end: 8px;\n }\n\n &.icon-small-spacer {\n margin-inline-end: 6px;\n }\n\n &.icon-bookmark-added {\n background-image: url('chrome://browser/skin/bookmark.svg');\n }\n\n &.icon-bookmark-hollow {\n background-image: url('chrome://browser/skin/bookmark-hollow.svg');\n }\n\n &.icon-clear-input {\n fill: var(--newtab-icon-secondary-color);\n background-image: url('#{$image-path}glyph-cancel-16.svg');\n }\n\n &.icon-delete {\n background-image: url('#{$image-path}glyph-delete-16.svg');\n }\n\n &.icon-search {\n background-image: url('chrome://browser/skin/search-glass.svg');\n }\n\n &.icon-modal-delete {\n flex-shrink: 0;\n background-image: url('#{$image-path}glyph-modal-delete-32.svg');\n background-size: $larger-icon-size;\n height: $larger-icon-size;\n width: $larger-icon-size;\n }\n\n &.icon-dismiss {\n background-image: url('#{$image-path}glyph-dismiss-16.svg');\n }\n\n &.icon-info {\n background-image: url('#{$image-path}glyph-info-16.svg');\n }\n\n &.icon-import {\n background-image: url('#{$image-path}glyph-import-16.svg');\n }\n\n &.icon-new-window {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-newWindow-16.svg');\n }\n\n &.icon-new-window-private {\n background-image: url('chrome://browser/skin/privateBrowsing.svg');\n }\n\n &.icon-settings {\n background-image: url('chrome://browser/skin/settings.svg');\n }\n\n &.icon-pin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-16.svg');\n }\n\n &.icon-unpin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-unpin-16.svg');\n }\n\n &.icon-edit {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.icon-pocket {\n background-image: url('#{$image-path}glyph-pocket-16.svg');\n }\n\n &.icon-history-item {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-trending {\n background-image: url('#{$image-path}glyph-trending-16.svg');\n transform: translateY(2px); // trending bolt is visually top heavy\n }\n\n &.icon-now {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-topsites {\n background-image: url('#{$image-path}glyph-topsites-16.svg');\n }\n\n &.icon-pin-small {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-check {\n background-image: url('chrome://browser/skin/check.svg');\n }\n\n &.icon-download {\n background-image: url('chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar');\n }\n\n &.icon-copy {\n background-image: url('chrome://browser/skin/edit-copy.svg');\n }\n\n &.icon-open-file {\n background-image: url('#{$image-path}glyph-open-file-16.svg');\n }\n\n &.icon-webextension {\n background-image: url('#{$image-path}glyph-webextension-16.svg');\n }\n\n &.icon-highlights {\n background-image: url('#{$image-path}glyph-highlights-16.svg');\n }\n\n &.icon-arrowhead-down {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n }\n\n &.icon-arrowhead-down-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-arrowhead-forward-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n transform: rotate(-90deg);\n width: $smaller-icon-size;\n\n &:dir(rtl) {\n transform: rotate(90deg);\n }\n }\n\n &.icon-arrowhead-up {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n transform: rotate(180deg);\n }\n\n &.icon-add {\n background-image: url('#{$image-path}glyph-add-16.svg');\n }\n\n &.icon-minimize {\n background-image: url('#{$image-path}glyph-minimize-16.svg');\n }\n\n &.icon-maximize {\n background-image: url('#{$image-path}glyph-maximize-16.svg');\n }\n}\n",
".outer-wrapper {\n color: var(--newtab-text-primary-color);\n display: flex;\n flex-grow: 1;\n min-height: 100vh;\n padding: ($section-spacing + $section-vertical-padding) $base-gutter $base-gutter;\n\n &.fixed-to-top {\n display: block;\n }\n\n a {\n color: var(--newtab-link-primary-color);\n }\n}\n\nmain {\n margin: auto;\n // Offset the snippets container so things at the bottom of the page are still\n // visible when snippets / onboarding are visible. Adjust for other spacing.\n padding-bottom: $snippets-container-height - $section-spacing - $base-gutter;\n width: $wrapper-default-width;\n\n @media (min-width: $break-point-small) {\n width: $wrapper-max-width-small;\n }\n\n @media (min-width: $break-point-medium) {\n width: $wrapper-max-width-medium;\n }\n\n @media (min-width: $break-point-large) {\n width: $wrapper-max-width-large;\n }\n\n @media (min-width: $break-point-widest) {\n width: $wrapper-max-width-widest;\n }\n\n section {\n margin-bottom: $section-spacing;\n position: relative;\n }\n}\n\n.base-content-fallback {\n // Make the error message be centered against the viewport\n height: 100vh;\n}\n\n.body-wrapper {\n // Hide certain elements so the page structure is fixed, e.g., placeholders,\n // while avoiding flashes of changing content, e.g., icons and text\n $selectors-to-hide: '\n .section-title,\n .sections-list .section:last-of-type,\n .topic\n ';\n\n #{$selectors-to-hide} {\n opacity: 0;\n }\n\n &.on {\n #{$selectors-to-hide} {\n opacity: 1;\n }\n }\n}\n\n.non-collapsible-section {\n padding: 0 $section-horizontal-padding;\n}\n\n.prefs-button {\n button {\n background-color: transparent;\n border: 0;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n offset-inline-end: 15px;\n padding: 15px;\n position: fixed;\n top: 15px;\n z-index: 12001;\n\n &:hover,\n &:focus {\n background-color: var(--newtab-element-hover-color);\n }\n\n &:active {\n background-color: var(--newtab-element-active-color);\n }\n }\n}\n",
".as-error-fallback {\n align-items: center;\n border-radius: $border-radius;\n box-shadow: inset $inner-box-shadow;\n color: var(--newtab-text-conditional-color);\n display: flex;\n flex-direction: column;\n font-size: $error-fallback-font-size;\n justify-content: center;\n justify-items: center;\n line-height: $error-fallback-line-height;\n\n a {\n color: var(--newtab-text-conditional-color);\n text-decoration: underline;\n }\n}\n",
"$top-sites-size: $grid-unit;\n$top-sites-border-radius: 6px;\n$top-sites-title-height: 30px;\n$top-sites-vertical-space: 8px;\n$screenshot-size: cover;\n$rich-icon-size: 96px;\n$default-icon-wrapper-size: 42px;\n$default-icon-size: 32px;\n$default-icon-offset: 6px;\n$half-base-gutter: $base-gutter / 2;\n\n.top-sites {\n // Take back the margin from the bottom row of vertical spacing as well as the\n // extra whitespace below the title text as it's vertically centered.\n margin-bottom: $section-spacing - ($top-sites-vertical-space + $top-sites-title-height / 3);\n}\n\n.top-sites-list {\n list-style: none;\n margin: 0 (-$half-base-gutter);\n padding: 0;\n\n // Two columns\n @media (max-width: $break-point-small) {\n :nth-child(2n+1) {\n @include context-menu-open-middle;\n }\n\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n // Three columns\n @media (min-width: $break-point-small) and (max-width: $break-point-medium) {\n :nth-child(3n+2),\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n // Four columns\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(4n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-medium) and (max-width: $break-point-medium + $card-width) {\n :nth-child(4n+3) {\n @include context-menu-open-left;\n }\n }\n\n // Six columns\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(6n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-large) and (max-width: $break-point-large + $card-width) {\n :nth-child(6n+5) {\n @include context-menu-open-left;\n }\n }\n\n // Eight columns\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(8n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + $card-width) {\n :nth-child(8n+7) {\n @include context-menu-open-left;\n }\n }\n\n @media not all and (min-width: $break-point-widest) {\n .hide-for-narrow {\n display: none;\n }\n }\n\n li {\n margin: 0 0 $top-sites-vertical-space;\n }\n\n &:not(.dnd-active) {\n .top-site-outer:-moz-any(.active, :focus, :hover) {\n .tile {\n @include fade-in;\n }\n\n @include context-menu-button-hover;\n }\n }\n}\n\n// container for drop zone\n.top-site-outer {\n padding: 0 $half-base-gutter;\n display: inline-block;\n\n // container for context menu\n .top-site-inner {\n position: relative;\n\n > a {\n color: inherit;\n display: block;\n outline: none;\n\n &:-moz-any(.active, :focus) {\n .tile {\n @include fade-in;\n }\n }\n }\n }\n\n @include context-menu-button;\n\n .tile { // sass-lint:disable-block property-sort-order\n border-radius: $top-sites-border-radius;\n box-shadow: inset $inner-box-shadow, var(--newtab-card-shadow);\n height: $top-sites-size;\n position: relative;\n width: $top-sites-size;\n\n // For letter fallback\n align-items: center;\n color: var(--newtab-text-secondary-color);\n display: flex;\n font-size: 32px;\n font-weight: 200;\n justify-content: center;\n text-transform: uppercase;\n\n &::before {\n content: attr(data-fallback);\n }\n }\n\n .screenshot {\n background-color: $white;\n background-position: top left;\n background-size: $screenshot-size;\n border-radius: $top-sites-border-radius;\n box-shadow: inset $inner-box-shadow;\n height: 100%;\n left: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n transition: opacity 1s;\n width: 100%;\n\n &.active {\n opacity: 1;\n }\n }\n\n // Some common styles for all icons (rich and default) in top sites\n .top-site-icon {\n background-color: var(--newtab-topsites-background-color);\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: $top-sites-border-radius;\n box-shadow: var(--newtab-topsites-icon-shadow);\n position: absolute;\n }\n\n .rich-icon {\n background-size: cover;\n height: 100%;\n offset-inline-start: 0;\n top: 0;\n width: 100%;\n }\n\n .default-icon { // sass-lint:disable block property-sort-order\n background-size: $default-icon-size;\n bottom: -$default-icon-offset;\n height: $default-icon-wrapper-size;\n offset-inline-end: -$default-icon-offset;\n width: $default-icon-wrapper-size;\n\n // for corner letter fallback\n align-items: center;\n display: flex;\n font-size: 20px;\n justify-content: center;\n\n &[data-fallback]::before {\n content: attr(data-fallback);\n }\n }\n\n .title {\n color: var(--newtab-topsites-label-color);\n font: message-box;\n height: $top-sites-title-height;\n line-height: $top-sites-title-height;\n text-align: center;\n width: $top-sites-size;\n position: relative;\n\n .icon {\n fill: var(--newtab-icon-tertiary-color);\n offset-inline-start: 0;\n position: absolute;\n top: 10px;\n }\n\n span {\n height: $top-sites-title-height;\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.pinned {\n span {\n padding: 0 13px;\n }\n }\n }\n\n .edit-button {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.placeholder {\n .tile {\n box-shadow: inset $inner-box-shadow;\n }\n\n .screenshot {\n display: none;\n }\n }\n\n &.dragged {\n .tile {\n background: $grey-20;\n box-shadow: none;\n\n *,\n &::before {\n display: none;\n }\n }\n\n .title {\n visibility: hidden;\n }\n }\n}\n\n.edit-topsites-wrapper {\n .modal {\n box-shadow: $shadow-secondary;\n left: 0;\n margin: 0 auto;\n position: fixed;\n right: 0;\n top: 40px;\n width: $wrapper-default-width;\n\n @media (min-width: $break-point-small) {\n width: $wrapper-max-width-small;\n }\n\n @media (min-width: $break-point-medium) {\n width: $wrapper-max-width-medium;\n }\n\n @media (min-width: $break-point-large) {\n width: $wrapper-max-width-large;\n }\n }\n}\n\n.topsite-form {\n $form-width: 300px;\n $form-spacing: 32px;\n\n .form-input-container {\n max-width: $form-width + 3 * $form-spacing + $rich-icon-size;\n margin: 0 auto;\n padding: $form-spacing;\n\n .top-site-outer {\n padding: 0;\n margin: 24px 0 0;\n margin-inline-start: $form-spacing;\n pointer-events: none;\n }\n\n .section-title {\n text-transform: none;\n font-size: 16px;\n margin: 0 0 16px;\n }\n }\n\n .fields-and-preview {\n display: flex;\n }\n\n label {\n font-size: $section-title-font-size;\n }\n\n .form-wrapper {\n width: 100%;\n\n .field {\n position: relative;\n\n .icon-clear-input {\n position: absolute;\n transform: translateY(-50%);\n top: 50%;\n offset-inline-end: 8px;\n }\n }\n\n .url {\n input:dir(ltr) {\n padding-right: 32px;\n }\n\n input:dir(rtl) {\n padding-left: 32px;\n\n &:not(:placeholder-shown) {\n direction: ltr;\n text-align: right;\n }\n }\n }\n\n .enable-custom-image-input {\n display: inline-block;\n font-size: 13px;\n margin-top: 4px;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n .custom-image-input-container {\n margin-top: 4px;\n\n .loading-container {\n width: 16px;\n height: 16px;\n overflow: hidden;\n position: absolute;\n transform: translateY(-50%);\n top: 50%;\n offset-inline-end: 8px;\n }\n\n // This animation is derived from Firefox's tab loading animation\n // See https://searchfox.org/mozilla-central/rev/b29daa46443b30612415c35be0a3c9c13b9dc5f6/browser/themes/shared/tabs.inc.css#208-216\n .loading-animation {\n @keyframes tab-throbber-animation {\n 100% { transform: translateX(-960px); }\n }\n\n @keyframes tab-throbber-animation-rtl {\n 100% { transform: translateX(960px); }\n }\n\n width: 960px;\n height: 16px;\n -moz-context-properties: fill;\n fill: $blue-50;\n background-image: url('chrome://browser/skin/tabbrowser/loading.svg');\n animation: tab-throbber-animation 1.05s steps(60) infinite;\n\n &:dir(rtl) {\n animation-name: tab-throbber-animation-rtl;\n }\n }\n }\n\n input {\n &[type='text'] {\n background-color: var(--newtab-textbox-background-color);\n border: $input-border;\n margin: 8px 0;\n padding: 0 8px;\n height: 32px;\n width: 100%;\n font-size: 15px;\n\n &:focus {\n border: $input-border-active;\n box-shadow: var(--newtab-textbox-focus-boxshadow);\n }\n\n &[disabled] {\n border: $input-border;\n box-shadow: none;\n opacity: 0.4;\n }\n }\n }\n\n .invalid {\n input {\n &[type='text'] {\n border: $input-error-border;\n box-shadow: $input-error-boxshadow;\n }\n }\n }\n\n .error-tooltip {\n animation: fade-up-tt 450ms;\n background: $red-60;\n border-radius: 2px;\n color: $white;\n offset-inline-start: 3px;\n padding: 5px 12px;\n position: absolute;\n top: 44px;\n z-index: 1;\n\n // tooltip caret\n &::before {\n background: $red-60;\n bottom: -8px;\n content: '.';\n height: 16px;\n offset-inline-start: 12px;\n position: absolute;\n text-indent: -999px;\n top: -7px;\n transform: rotate(45deg);\n white-space: nowrap;\n width: 16px;\n z-index: -1;\n }\n }\n }\n\n .actions {\n justify-content: flex-end;\n\n button {\n margin-inline-start: 10px;\n margin-inline-end: 0;\n }\n }\n\n @media (max-width: $break-point-small) {\n .fields-and-preview {\n flex-direction: column;\n\n .top-site-outer {\n margin-inline-start: 0;\n }\n }\n }\n}\n\n//used for tooltips below form element\n@keyframes fade-up-tt {\n 0% {\n opacity: 0;\n transform: translateY(15px);\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n",
- ".sections-list {\n .section-list {\n display: grid;\n grid-gap: $base-gutter;\n grid-template-columns: repeat(auto-fit, $card-width);\n margin: 0;\n\n @media (max-width: $break-point-medium) {\n @include context-menu-open-left;\n }\n\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) {\n grid-template-columns: repeat(auto-fit, $card-width-large);\n }\n }\n\n .section-empty-state {\n border: $border-secondary;\n border-radius: $border-radius;\n display: flex;\n height: $card-height;\n width: 100%;\n\n .empty-state {\n margin: auto;\n max-width: 350px;\n\n .empty-state-icon {\n background-position: center;\n background-repeat: no-repeat;\n background-size: 50px 50px;\n -moz-context-properties: fill;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n height: 50px;\n margin: 0 auto;\n width: 50px;\n }\n\n .empty-state-message {\n color: var(--newtab-text-primary-color);\n font-size: 13px;\n margin-bottom: 0;\n text-align: center;\n }\n }\n\n @media (min-width: $break-point-widest) {\n height: $card-height-large;\n }\n }\n}\n",
+ ".sections-list {\n .section-list {\n display: grid;\n grid-gap: $base-gutter;\n grid-template-columns: repeat(auto-fit, $card-width);\n margin: 0;\n\n @media (max-width: $break-point-medium) {\n @include context-menu-open-left;\n }\n\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n }\n\n .section-empty-state {\n border: $border-secondary;\n border-radius: $border-radius;\n display: flex;\n height: $card-height;\n width: 100%;\n\n .empty-state {\n margin: auto;\n max-width: 350px;\n\n .empty-state-icon {\n background-position: center;\n background-repeat: no-repeat;\n background-size: 50px 50px;\n -moz-context-properties: fill;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n height: 50px;\n margin: 0 auto;\n width: 50px;\n }\n\n .empty-state-message {\n color: var(--newtab-text-primary-color);\n font-size: 13px;\n margin-bottom: 0;\n text-align: center;\n }\n }\n\n @media (min-width: $break-point-widest) {\n height: $card-height-large;\n }\n }\n}\n\n@media (min-width: $break-point-widest) {\n .sections-list {\n // Compact cards stay the same size but normal cards get bigger.\n .normal-cards {\n .section-list {\n grid-template-columns: repeat(auto-fit, $card-width-large);\n }\n }\n }\n}\n",
".activity-stream {\n &.welcome {\n overflow: hidden;\n }\n\n &:not(.welcome) {\n .overlay-wrapper {\n display: none;\n }\n }\n}\n\n.overlay-wrapper {\n position: fixed;\n top: 0;\n width: 100vw;\n height: 100vh;\n z-index: 21000;\n font-weight: 200;\n transition: opacity 0.4s;\n opacity: 0;\n\n &.show {\n transition: none;\n opacity: 1;\n\n .firstrun-sign-in {\n transition: opacity 1.5s, transform 1.5s;\n transition-delay: 0.2s;\n transform: translateY(-50%) scale(1);\n opacity: 1;\n }\n\n .firstrun-firefox-logo {\n transition: opacity 2.3s;\n opacity: 1;\n }\n\n .firstrun-title,\n .firstrun-content,\n .firstrun-link {\n transition: transform 0.5s, opacity 0.8s;\n transform: translateY(0);\n opacity: 1;\n }\n\n .firstrun-title {\n transition-delay: 0.2s;\n }\n\n .firstrun-content {\n transition-delay: 0.4s;\n }\n\n .firstrun-link {\n transition-delay: 0.6s;\n }\n\n .fxaccounts-container {\n transition: none;\n opacity: 1;\n }\n }\n}\n\n.background {\n width: 100%;\n height: 100%;\n display: block;\n background: url('#{$image-path}fox-tail.png') top -200px center no-repeat,\n linear-gradient(to bottom, $blue-70 40%, #004EC2 60%, $blue-60 80%, #0080FF 90%, #00C7FF 100%) top center no-repeat,\n $blue-70;\n background-size: cover;\n}\n\n.firstrun-sign-in {\n transform: translateY(-50%) scale(0.8);\n position: relative;\n top: 50%;\n width: 358px;\n opacity: 0;\n background-color: $white;\n float: inline-end;\n color: $grey-90;\n text-align: center;\n padding: 10px;\n\n .extra-links {\n font-size: 12px;\n max-width: 340px;\n margin: 14px 50px;\n color: #676F7E;\n cursor: default;\n\n a {\n color: $grey-50;\n cursor: pointer;\n text-decoration: underline;\n }\n\n a:hover,\n a:active,\n a:focus {\n color: $blue-50;\n }\n }\n\n .email-input {\n box-shadow: none;\n margin: auto;\n width: 244px;\n display: block;\n height: 40px;\n padding-inline-start: 20px;\n border: 1px solid $grey-50;\n border-radius: 2px;\n font-size: 16px;\n\n &:hover {\n border-color: $grey-90;\n }\n }\n\n .form-header {\n font-size: 18px;\n margin: 15px auto;\n }\n\n .form-header span {\n font-size: 14px;\n margin-top: 4px;\n display: block;\n }\n\n button {\n border-radius: 2px;\n display: block;\n cursor: pointer;\n margin: 10px auto 0;\n }\n\n .continue-button {\n font-size: 18px;\n height: 43px;\n width: 250px;\n padding: 8px 0;\n border: 1px solid $blue-60;\n color: $white;\n background-color: $blue-50;\n transition-duration: 150ms;\n transition-property: background-color;\n\n &:not([disabled]):active {\n background: $blue-70;\n border-color: $blue-80;\n }\n }\n\n .skip-button {\n font-size: 13px;\n margin-top: 40px;\n margin-bottom: 20px;\n background-color: #FCFCFC;\n color: $blue-50;\n border: 1px solid $blue-50;\n min-height: 24px;\n padding: 5px 10px;\n transition: background-color 150ms, color 150ms, border-color 150ms;\n\n &[disabled] {\n background-color: #EBEBEB;\n border-color: #B1B1B1;\n color: #6A6A6A;\n cursor: default;\n opacity: 0.5;\n }\n\n &:not([disabled]):hover {\n background-color: $blue-50;\n border-color: $blue-60;\n color: $white;\n }\n }\n}\n\n.firstrun-left-divider {\n position: relative;\n float: inline-start;\n clear: both;\n width: 435px;\n}\n\n.firstrun-content {\n line-height: 1.5;\n margin-bottom: 48px;\n max-width: 352px;\n background: url('#{$image-path}sync-devices.svg') bottom center no-repeat;\n padding-bottom: 210px;\n}\n\n.firstrun-link {\n color: $white;\n display: block;\n text-decoration: underline;\n\n &:hover,\n &:active,\n &:focus {\n color: $white;\n }\n}\n\n.firstrun-title {\n background: url('chrome://branding/content/about-logo.png') top left no-repeat;\n background-size: 90px 90px;\n margin: 40px 0 10px;\n padding-top: 110px;\n font-weight: 200;\n}\n\n[dir='rtl'] {\n .firstrun-title {\n background-position: top right;\n }\n}\n\n.fxaccounts-container {\n position: absolute;\n bottom: 0;\n right: 0;\n top: 0;\n left: 0;\n color: $white;\n height: 515px;\n margin: auto;\n width: 819px;\n z-index: 10;\n transition: opacity 0.3s;\n opacity: 0;\n}\n\n.firstrun-title,\n.firstrun-content,\n.firstrun-link {\n opacity: 0;\n transform: translateY(-5px);\n}\n",
".topic {\n color: var(--newtab-section-navigation-text-color);\n font-size: 12px;\n line-height: 1.6;\n margin-top: $topic-margin-top;\n\n @media (min-width: $break-point-large) {\n line-height: 16px;\n }\n\n ul {\n margin: 0;\n padding: 0;\n @media (min-width: $break-point-large) {\n display: inline;\n padding-inline-start: 12px;\n }\n }\n\n\n ul li {\n display: inline-block;\n\n &::after {\n content: '•';\n padding: 8px;\n }\n\n &:last-child::after {\n content: none;\n }\n }\n\n .topic-link {\n color: var(--newtab-link-secondary-color);\n font-weight: bold;\n }\n\n .topic-read-more {\n color: var(--newtab-link-secondary-color);\n font-weight: bold;\n\n @media (min-width: $break-point-large) {\n // This is floating to accomodate a very large number of topics and/or\n // very long topic names due to l10n.\n float: right;\n\n &:dir(rtl) {\n float: left;\n }\n }\n\n &::after {\n background: url('#{$image-path}topic-show-more-12.svg') no-repeat center center;\n content: '';\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-link-secondary-color);\n height: 16px;\n margin-inline-start: 5px;\n vertical-align: top;\n width: 12px;\n }\n\n &:dir(rtl)::after {\n transform: scaleX(-1);\n }\n }\n\n // This is a clearfix to for the topics-read-more link which is floating and causes\n // some jank when we set overflow:hidden for the animation.\n &::after {\n clear: both;\n content: '';\n display: table;\n }\n}\n",
".search-wrapper {\n $search-height: 35px;\n $search-icon-size: 18px;\n $search-icon-padding: 8px;\n $search-icon-width: 2 * $search-icon-padding + $search-icon-size;\n $search-input-left-label-width: 35px;\n $search-button-width: 36px;\n $glyph-forward: url('chrome://browser/skin/forward.svg');\n\n cursor: default;\n display: flex;\n height: $search-height;\n margin-bottom: $section-spacing;\n position: relative;\n width: 100%;\n\n input {\n background: var(--newtab-textbox-background-color) var(--newtab-search-icon) $search-icon-padding center / $search-icon-size no-repeat;\n border: solid 1px var(--newtab-search-border-color);\n box-shadow: $shadow-secondary, 0 0 0 1px $black-15;\n font-size: 15px;\n -moz-context-properties: fill;\n fill: var(--newtab-search-icon-color);\n padding: 0;\n padding-inline-end: $search-button-width;\n padding-inline-start: $search-icon-width;\n width: 100%;\n\n &:dir(rtl) {\n background-position-x: right $search-icon-padding;\n }\n }\n\n &:hover input {\n box-shadow: $shadow-secondary, 0 0 0 1px $black-25;\n }\n\n &:active input,\n input:focus {\n border: $input-border-active;\n box-shadow: var(--newtab-textbox-focus-boxshadow);\n }\n\n .search-button {\n background: $glyph-forward no-repeat center center;\n background-size: 16px 16px;\n border: 0;\n border-radius: 0 $border-radius $border-radius 0;\n -moz-context-properties: fill;\n fill: var(--newtab-search-icon-color);\n height: 100%;\n offset-inline-end: 0;\n position: absolute;\n width: $search-button-width;\n\n &:focus,\n &:hover {\n background-color: $grey-90-10;\n cursor: pointer;\n }\n\n &:active {\n background-color: $grey-90-20;\n }\n\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n }\n}\n\n@at-root {\n // Adjust the style of the contentSearchUI-generated table\n .contentSearchSuggestionTable {\n background-color: var(--newtab-search-dropdown-color);\n border: 0;\n box-shadow: $context-menu-shadow;\n transform: translateY($textbox-shadow-size);\n\n .contentSearchHeader {\n background-color: var(--newtab-search-dropdown-header-color);\n color: var(--newtab-text-secondary-color);\n }\n\n .contentSearchHeader,\n .contentSearchSettingsButton {\n border-color: var(--newtab-border-secondary-color);\n }\n\n .contentSearchSuggestionsList {\n border: 0;\n }\n\n .contentSearchOneOffsTable {\n background-color: var(--newtab-search-dropdown-header-color);\n border-top: solid 1px var(--newtab-border-secondary-color);\n }\n\n .contentSearchSearchWithHeaderSearchText {\n color: var(--newtab-text-primary-color);\n }\n\n .contentSearchSuggestionsContainer {\n background-color: var(--newtab-search-dropdown-color);\n }\n\n .contentSearchSuggestionRow {\n &.selected {\n background: var(--newtab-element-hover-color);\n color: var(--newtab-text-primary-color);\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n\n .historyIcon {\n fill: var(--newtab-icon-secondary-color);\n }\n }\n }\n\n .contentSearchOneOffsTable {\n .contentSearchSuggestionsContainer {\n background-color: var(--newtab-search-dropdown-header-color);\n }\n }\n\n .contentSearchOneOffItem {\n // Make the border slightly shorter by offsetting from the top and bottom\n $border-offset: 18%;\n\n background-image: none;\n border-image: linear-gradient(transparent $border-offset, var(--newtab-border-secondary-color) $border-offset, var(--newtab-border-secondary-color) 100% - $border-offset, transparent 100% - $border-offset) 1;\n border-inline-end: 1px solid;\n position: relative;\n\n &.selected {\n background: var(--newtab-element-hover-color);\n }\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n }\n\n .contentSearchSettingsButton {\n &:hover {\n background: var(--newtab-element-hover-color);\n color: var(--newtab-text-primary-color);\n }\n }\n }\n}\n",
".context-menu {\n background: var(--newtab-contextmenu-background-color);\n border-radius: $context-menu-border-radius;\n box-shadow: $context-menu-shadow;\n display: block;\n font-size: $context-menu-font-size;\n margin-inline-start: 5px;\n offset-inline-start: 100%;\n position: absolute;\n top: ($context-menu-button-size / 4);\n z-index: 10000;\n\n > ul {\n list-style: none;\n margin: 0;\n padding: $context-menu-outer-padding 0;\n\n > li {\n margin: 0;\n width: 100%;\n\n &.separator {\n border-bottom: $border-secondary;\n margin: $context-menu-outer-padding 0;\n }\n\n > a {\n align-items: center;\n color: inherit;\n cursor: pointer;\n display: flex;\n line-height: 16px;\n outline: none;\n padding: $context-menu-item-padding;\n white-space: nowrap;\n\n &:-moz-any(:focus, :hover) {\n background: var(--newtab-element-hover-color);\n }\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n\n &.disabled {\n opacity: 0.4;\n pointer-events: none;\n }\n }\n }\n }\n}\n",
".confirmation-dialog {\n .modal {\n box-shadow: 0 2px 2px 0 $black-10;\n left: 50%;\n margin-left: -200px;\n position: fixed;\n top: 20%;\n width: 400px;\n }\n\n section {\n margin: 0;\n }\n\n .modal-message {\n display: flex;\n padding: 16px;\n padding-bottom: 0;\n\n p {\n margin: 0;\n margin-bottom: 16px;\n }\n }\n\n .actions {\n border: 0;\n display: flex;\n flex-wrap: nowrap;\n padding: 0 16px;\n\n button {\n margin-inline-end: 16px;\n padding-inline-end: 18px;\n padding-inline-start: 18px;\n white-space: normal;\n width: 50%;\n\n &.done {\n margin-inline-end: 0;\n margin-inline-start: 0;\n }\n }\n }\n\n .icon {\n margin-inline-end: 16px;\n }\n}\n\n.modal-overlay {\n background: var(--newtab-overlay-color);\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 11001;\n}\n\n.modal {\n background: var(--newtab-modal-color);\n border: $border-secondary;\n border-radius: 5px;\n font-size: 15px;\n z-index: 11002;\n}\n",
- ".card-outer {\n @include context-menu-button;\n background: var(--newtab-card-background-color);\n border-radius: $border-radius;\n display: inline-block;\n height: $card-height;\n margin-inline-end: $base-gutter;\n position: relative;\n width: 100%;\n\n &.placeholder {\n background: transparent;\n\n .card {\n box-shadow: inset $inner-box-shadow;\n }\n }\n\n .card {\n border-radius: $border-radius;\n box-shadow: var(--newtab-card-shadow);\n height: 100%;\n }\n\n > a {\n color: inherit;\n display: block;\n height: 100%;\n outline: none;\n position: absolute;\n width: 100%;\n\n &:-moz-any(.active, :focus) {\n .card {\n @include fade-in-card;\n }\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n }\n }\n\n &:-moz-any(:hover, :focus, .active):not(.placeholder) {\n @include fade-in-card;\n @include context-menu-button-hover;\n outline: none;\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n\n .alternate ~ .card-host-name {\n display: none;\n }\n\n .card-host-name.alternate {\n display: block;\n }\n }\n\n .card-preview-image-outer {\n border-radius: $border-radius $border-radius 0 0;\n height: $card-preview-image-height;\n overflow: hidden;\n position: relative;\n\n &::after {\n border-bottom: 1px solid var(--newtab-card-hairline-color);\n bottom: 0;\n content: '';\n position: absolute;\n width: 100%;\n }\n\n .card-preview-image {\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n height: 100%;\n opacity: 0;\n transition: opacity 1s $photon-easing;\n width: 100%;\n\n &.loaded {\n opacity: 1;\n }\n }\n }\n\n .card-details {\n padding: 15px 16px 12px;\n\n &.no-image {\n padding-top: 16px;\n }\n }\n\n .card-text {\n max-height: 4 * $card-text-line-height + $card-title-margin;\n overflow: hidden;\n\n &.no-image {\n max-height: 10 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name,\n &.no-context {\n max-height: 5 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-image.no-host-name,\n &.no-image.no-context {\n max-height: 11 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name.no-context {\n max-height: 6 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-image.no-host-name.no-context {\n max-height: 12 * $card-text-line-height + $card-title-margin;\n }\n\n &:not(.no-description) .card-title {\n max-height: 3 * $card-text-line-height;\n overflow: hidden;\n }\n }\n\n .card-host-name {\n color: var(--newtab-text-secondary-color);\n font-size: 10px;\n overflow: hidden;\n padding-bottom: 4px;\n text-overflow: ellipsis;\n text-transform: uppercase;\n }\n\n .card-host-name.alternate { display: none; }\n\n .card-download-icon {\n float: inline-end;\n margin-inline-start: 15px;\n margin-top: 2px;\n\n &.icon-download-folder {\n height: $small-download-folder-icon-size;\n width: $small-download-folder-icon-size;\n }\n }\n\n .card-title {\n font-size: 14px;\n font-weight: 600;\n line-height: $card-text-line-height;\n margin: 0 0 $card-title-margin;\n word-wrap: break-word;\n }\n\n .card-description {\n font-size: 12px;\n line-height: $card-text-line-height;\n margin: 0;\n overflow: hidden;\n word-wrap: break-word;\n }\n\n .card-context {\n bottom: 0;\n color: var(--newtab-text-tertiary-color);\n display: flex;\n font-size: 11px;\n left: 0;\n padding: 9px 16px 9px 14px;\n position: absolute;\n right: 0;\n }\n\n .card-context-icon {\n fill: var(--newtab-icon-tertiary-color);\n height: 22px;\n margin-inline-end: 6px;\n }\n\n .card-context-label {\n flex-grow: 1;\n line-height: 22px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n // Wide layout styles\n @media (min-width: $break-point-widest) {\n $line-height: 23px;\n height: $card-height-large;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-large;\n }\n\n .card-details {\n padding: 13px 16px 12px;\n }\n\n .card-text {\n max-height: 6 * $line-height + $card-title-margin;\n }\n\n .card-host-name {\n font-size: 12px;\n padding-bottom: 5px;\n }\n\n .card-download-icon {\n &.icon-download-folder {\n height: $large-download-folder-icon-size;\n width: $large-download-folder-icon-size;\n }\n }\n\n .card-title {\n font-size: 17px;\n line-height: $line-height;\n margin-bottom: 0;\n }\n\n .card-text:not(.no-description) {\n .card-title {\n max-height: 3 * $line-height;\n }\n }\n\n .card-description {\n font-size: 15px;\n line-height: $line-height;\n }\n\n .card-context {\n bottom: 4px;\n font-size: 14px;\n }\n }\n}\n",
+ ".card-outer {\n @include context-menu-button;\n background: var(--newtab-card-background-color);\n border-radius: $border-radius;\n display: inline-block;\n height: $card-height;\n margin-inline-end: $base-gutter;\n position: relative;\n width: 100%;\n\n &.placeholder {\n background: transparent;\n\n .card {\n box-shadow: inset $inner-box-shadow;\n }\n\n .card-preview-image-outer,\n .card-context {\n display: none;\n }\n }\n\n .card {\n border-radius: $border-radius;\n box-shadow: var(--newtab-card-shadow);\n height: 100%;\n }\n\n > a {\n color: inherit;\n display: block;\n height: 100%;\n outline: none;\n position: absolute;\n width: 100%;\n\n &:-moz-any(.active, :focus) {\n .card {\n @include fade-in-card;\n }\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n }\n }\n\n &:-moz-any(:hover, :focus, .active):not(.placeholder) {\n @include fade-in-card;\n @include context-menu-button-hover;\n outline: none;\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n\n .alternate ~ .card-host-name {\n display: none;\n }\n\n .card-host-name.alternate {\n display: block;\n }\n }\n\n .card-preview-image-outer {\n background-color: $grey-30;\n border-radius: $border-radius $border-radius 0 0;\n height: $card-preview-image-height;\n overflow: hidden;\n position: relative;\n\n &::after {\n border-bottom: 1px solid var(--newtab-card-hairline-color);\n bottom: 0;\n content: '';\n position: absolute;\n width: 100%;\n }\n\n .card-preview-image {\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n height: 100%;\n opacity: 0;\n transition: opacity 1s $photon-easing;\n width: 100%;\n\n &.loaded {\n opacity: 1;\n }\n }\n }\n\n .card-details {\n padding: 15px 16px 12px;\n }\n\n .card-text {\n max-height: 4 * $card-text-line-height + $card-title-margin;\n overflow: hidden;\n\n &.no-host-name,\n &.no-context {\n max-height: 5 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name.no-context {\n max-height: 6 * $card-text-line-height + $card-title-margin;\n }\n\n &:not(.no-description) .card-title {\n max-height: 3 * $card-text-line-height;\n overflow: hidden;\n }\n }\n\n .card-host-name {\n color: var(--newtab-text-secondary-color);\n font-size: 10px;\n overflow: hidden;\n padding-bottom: 4px;\n text-overflow: ellipsis;\n text-transform: uppercase;\n }\n\n .card-host-name.alternate { display: none; }\n\n .card-title {\n font-size: 14px;\n font-weight: 600;\n line-height: $card-text-line-height;\n margin: 0 0 $card-title-margin;\n word-wrap: break-word;\n }\n\n .card-description {\n font-size: 12px;\n line-height: $card-text-line-height;\n margin: 0;\n overflow: hidden;\n word-wrap: break-word;\n }\n\n .card-context {\n bottom: 0;\n color: var(--newtab-text-tertiary-color);\n display: flex;\n font-size: 11px;\n left: 0;\n padding: 9px 16px 9px 14px;\n position: absolute;\n right: 0;\n }\n\n .card-context-icon {\n fill: var(--newtab-icon-tertiary-color);\n height: 22px;\n margin-inline-end: 6px;\n }\n\n .card-context-label {\n flex-grow: 1;\n line-height: 22px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n}\n\n.normal-cards {\n .card-outer {\n // Wide layout styles\n @media (min-width: $break-point-widest) {\n $line-height: 23px;\n height: $card-height-large;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-large;\n }\n\n .card-details {\n padding: 13px 16px 12px;\n }\n\n .card-text {\n max-height: 6 * $line-height + $card-title-margin;\n }\n\n .card-host-name {\n font-size: 12px;\n padding-bottom: 5px;\n }\n\n .card-title {\n font-size: 17px;\n line-height: $line-height;\n margin-bottom: 0;\n }\n\n .card-text:not(.no-description) {\n .card-title {\n max-height: 3 * $line-height;\n }\n }\n\n .card-description {\n font-size: 15px;\n line-height: $line-height;\n }\n\n .card-context {\n bottom: 4px;\n font-size: 14px;\n }\n }\n }\n}\n\n.compact-cards {\n .card-outer {\n height: $card-height-compact;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-compact;\n }\n\n .card-details {\n padding: 12px 16px;\n }\n\n .card-host-name {\n line-height: 10px;\n }\n\n .card-text {\n .card-title,\n &:not(.no-description) .card-title {\n font-size: 10px;\n line-height: 12px;\n max-height: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n }\n\n .card-description {\n display: none;\n }\n\n .card-context {\n $icon-size: 16px;\n $container-size: 32px;\n background-color: var(--newtab-card-background-color);\n border-radius: $container-size / 2;\n height: $container-size;\n width: $container-size;\n padding: ($container-size - $icon-size) / 2;\n top: 92px;\n left: auto;\n offset-inline-end: 12px;\n\n &::after {\n border: 1px solid var(--newtab-card-hairline-color);\n border-bottom: 0;\n border-radius: ($container-size / 2) ($container-size / 2) 0 0;\n content: '';\n position: absolute;\n height: 50%;\n width: 100%;\n top: 0;\n left: 0;\n }\n\n .card-context-icon {\n margin-inline-end: 0;\n height: $icon-size;\n width: $icon-size;\n\n &.icon-bookmark-added {\n fill: $bookmark-icon-fill;\n }\n\n &.icon-download {\n fill: $download-icon-fill;\n }\n\n &.icon-history-item {\n fill: $history-icon-fill;\n }\n\n &.icon-pocket {\n fill: $pocket-icon-fill;\n }\n }\n\n .card-context-label {\n display: none;\n }\n }\n }\n\n @media not all and (min-width: $break-point-widest) {\n .hide-for-narrow {\n display: none;\n }\n }\n}\n",
".manual-migration-container {\n color: var(--newtab-text-conditional-color);\n font-size: 13px;\n line-height: 15px;\n margin-bottom: $section-spacing;\n text-align: center;\n\n @media (min-width: $break-point-medium) {\n display: flex;\n justify-content: space-between;\n text-align: left;\n }\n\n p {\n margin: 0;\n @media (min-width: $break-point-medium) {\n align-self: center;\n display: flex;\n justify-content: space-between;\n }\n }\n\n .icon {\n display: none;\n @media (min-width: $break-point-medium) {\n align-self: center;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n margin-inline-end: 6px;\n }\n }\n}\n\n.manual-migration-actions {\n border: 0;\n display: block;\n flex-wrap: nowrap;\n\n @media (min-width: $break-point-medium) {\n display: flex;\n justify-content: space-between;\n padding: 0;\n }\n\n button {\n align-self: center;\n height: 26px;\n margin: 0;\n margin-inline-start: 20px;\n padding: 0 12px;\n }\n}\n",
".collapsible-section {\n padding: $section-vertical-padding $section-horizontal-padding;\n transition-delay: 100ms;\n transition-duration: 100ms;\n transition-property: background-color;\n\n .section-title {\n font-size: $section-title-font-size;\n font-weight: bold;\n margin: 0;\n text-transform: uppercase;\n\n span {\n color: var(--newtab-section-header-text-color);\n display: inline-block;\n fill: var(--newtab-section-header-text-color);\n vertical-align: middle;\n }\n\n .click-target {\n cursor: pointer;\n vertical-align: top;\n white-space: nowrap;\n }\n\n .collapsible-arrow {\n margin-inline-start: 8px;\n margin-top: -1px;\n }\n }\n\n .section-top-bar {\n height: 19px;\n margin-bottom: 13px;\n position: relative;\n\n .context-menu-button {\n background: url('chrome://browser/skin/page-action.svg') no-repeat right center;\n border: 0;\n cursor: pointer;\n fill: var(--newtab-section-header-text-color);\n height: 100%;\n offset-inline-end: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n transition-duration: 200ms;\n transition-property: opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus, :hover) {\n fill: $grey-90;\n opacity: 1;\n }\n }\n\n .context-menu {\n top: 16px;\n }\n\n @media (max-width: $break-point-widest + $card-width * 1.5) {\n @include context-menu-open-left;\n }\n }\n\n &:hover,\n &.active {\n .section-top-bar {\n .context-menu-button {\n opacity: 1;\n }\n }\n }\n\n &.active {\n background: var(--newtab-element-hover-color);\n border-radius: 4px;\n\n .section-top-bar {\n .context-menu-button {\n fill: var(--newtab-section-active-contextmenu-color);\n }\n }\n }\n\n .section-disclaimer {\n $max-button-width: 130px;\n $min-button-height: 26px;\n\n color: var(--newtab-text-conditional-color);\n font-size: 13px;\n margin-bottom: 16px;\n position: relative;\n\n .section-disclaimer-text {\n display: inline-block;\n min-height: $min-button-height;\n width: calc(100% - #{$max-button-width});\n\n @media (max-width: $break-point-medium) {\n width: $card-width;\n }\n }\n\n a {\n color: var(--newtab-link-primary-color);\n font-weight: bold;\n padding-left: 3px;\n }\n\n button {\n background: var(--newtab-button-secondary-color);\n border: 1px solid $grey-40;\n border-radius: 4px;\n cursor: pointer;\n margin-top: 2px;\n max-width: $max-button-width;\n min-height: $min-button-height;\n offset-inline-end: 0;\n\n &:hover:not(.dismiss) {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n }\n\n @media (min-width: $break-point-small) {\n position: absolute;\n }\n }\n }\n\n .section-body-fallback {\n height: $card-height;\n }\n\n .section-body {\n // This is so the top sites favicon and card dropshadows don't get clipped during animation:\n $horizontal-padding: 7px;\n margin: 0 (-$horizontal-padding);\n padding: 0 $horizontal-padding;\n\n &.animating {\n overflow: hidden;\n pointer-events: none;\n }\n }\n\n &.animation-enabled {\n .section-title {\n .collapsible-arrow {\n transition: transform 0.5s $photon-easing;\n }\n }\n\n .section-body {\n transition: max-height 0.5s $photon-easing;\n }\n }\n\n &.collapsed {\n .section-body {\n max-height: 0;\n overflow: hidden;\n }\n }\n}\n",
"\n.asrouter-admin {\n $border-color: var(--newtab-border-secondary-color);\n $monospace: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Mono', 'Droid Sans Mono', 'Source Code Pro', monospace;\n max-width: 996px;\n margin: 0 auto;\n font-size: 14px;\n // Reset .outer-wrapper styles\n display: inherit;\n padding: 0 0 92px;\n\n h1 {\n font-weight: 200;\n font-size: 32px;\n }\n\n table {\n border-collapse: collapse;\n width: 100%;\n }\n\n .message-item {\n &:first-child td {\n border-top: 1px solid $border-color;\n }\n\n td {\n vertical-align: top;\n border-bottom: 1px solid $border-color;\n padding: 8px;\n\n &:first-child {\n border-left: 1px solid $border-color;\n }\n\n &:last-child {\n border-right: 1px solid $border-color;\n }\n }\n\n &.current {\n .message-id span {\n background: $yellow-50;\n padding: 2px 5px;\n\n .dark-theme & {\n color: $black;\n }\n }\n }\n\n &.blocked {\n .message-id,\n .message-summary {\n opacity: 0.5;\n }\n\n .message-id {\n opacity: 0.5;\n }\n }\n\n .message-id {\n font-family: $monospace;\n font-size: 12px;\n }\n }\n\n pre {\n background: var(--newtab-textbox-background-color);\n margin: 0;\n padding: 8px;\n font-size: 12px;\n max-width: 750px;\n overflow: auto;\n font-family: $monospace;\n }\n}\n",
".ASRouterButton {\n white-space: nowrap;\n border-radius: 4px;\n border: 1px solid var(--newtab-border-secondary-color);\n background-color: var(--newtab-button-secondary-color);\n font-family: inherit;\n padding: 8px 15px;\n margin-left: 12px;\n color: inherit;\n}\n",
".SnippetBaseContainer {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: var(--newtab-snippets-background-color);\n color: var(--newtab-text-primary-color);\n font-size: 12px;\n line-height: 16px;\n border-top: 1px solid var(--newtab-snippets-hairline-color);\n box-shadow: $shadow-secondary;\n display: flex;\n align-items: center;\n\n .innerWrapper {\n margin: 0 auto;\n display: flex;\n align-items: center;\n padding: 12px $section-horizontal-padding;\n\n // This is to account for the block button on smaller screens\n padding-inline-end: 36px;\n @media (min-width: $break-point-large) {\n padding-inline-end: $section-horizontal-padding;\n }\n\n max-width: $wrapper-max-width-large;\n @media (min-width: $break-point-widest) {\n max-width: $wrapper-max-width-widest;\n }\n }\n\n .blockButton {\n display: none;\n background: none;\n border: 0;\n position: absolute;\n top: 50%;\n offset-inline-end: 12px;\n height: 16px;\n width: 16px;\n background-image: url('resource://activity-stream/data/content/assets/glyph-dismiss-16.svg');\n -moz-context-properties: fill;\n fill: var(--newtab-icon-primary-color);\n opacity: 0.5;\n margin-top: -8px;\n padding: 0;\n cursor: pointer;\n\n @media (min-width: 766px) {\n offset-inline-end: 24px;\n }\n }\n\n &:hover .blockButton {\n display: block;\n }\n}\n",
".activity-stream {\n &.modal-open {\n overflow: hidden;\n }\n}\n.modalOverlayOuter {\n background: $white;\n opacity: 0.93;\n height: 100%;\n position: fixed;\n top: 0;\n width: 100%;\n display: none;\n z-index: 100000;\n\n &.active {\n display: block;\n }\n}\n\n.modalOverlayInner {\n width: 960px;\n height: 510px;\n position: fixed;\n top: calc(50% - 255px); // halfway down minus half the height of the modal\n left: calc(50% - 480px); // halfway across minus half the width of the modal\n background: $white;\n box-shadow: 0 1px 15px 0 $black-30;\n border-radius: 4px;\n display: none;\n z-index: 100001;\n\n\n // modal takes over entire screen\n @media(max-width: 960px) {\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n box-shadow: none;\n border-radius: 0;\n }\n\n // if modal is short enough, add a vertical scroll bar\n @media(max-width: 850px) and (max-height: 730px) {\n overflow-y: scroll;\n }\n\n &.active {\n display: block;\n }\n\n h2 {\n color: $grey-60;\n text-align: center;\n font-weight: 200;\n margin-top: 30px;\n font-size: 28px;\n line-height: 37px;\n letter-spacing: -0.13px;\n\n @media(max-width: 960px) {\n margin-top: 100px;\n }\n\n @media(max-width: 850px) {\n margin-top: 30px;\n }\n }\n\n .footer {\n border-top: 1px solid $grey-30;\n height: 70px;\n width: 100%;\n position: absolute;\n bottom: 0;\n text-align: center;\n background-color: $white;\n\n // if modal is short enough, footer becomes sticky\n @media(max-width: 850px) and (max-height: 730px) {\n position: sticky;\n }\n\n .modalButton {\n margin-top: 20px;\n width: 150px;\n height: 30px;\n padding: 4px 0 6px 0;\n font-size: 15px;\n }\n }\n}\n",
".SimpleSnippet {\n .title {\n display: inline;\n font-size: inherit;\n margin: 0;\n }\n\n .body {\n display: inline;\n margin: 0;\n }\n\n .icon {\n height: 42px;\n width: 42px;\n margin-inline-end: 12px;\n flex-shrink: 0;\n }\n\n .ASRouterAnchor {\n color: inherit;\n text-decoration: underline;\n }\n}\n",
".onboardingMessageContainer {\n display: grid;\n grid-column-gap: 21px;\n grid-template-columns: auto auto auto;\n padding-left: 30px;\n padding-right: 30px;\n\n // at 850px, the cards go from vertical layout to horizontal layout\n @media(max-width: 850px) {\n grid-template-columns: none;\n grid-template-rows: auto auto auto;\n padding-left: 110px;\n padding-right: 110px;\n }\n}\n\n.onboardingMessage {\n height: 340px;\n text-align: center;\n padding: 13px;\n font-weight: 200;\n\n // at 850px, img floats left, content floats right next to it\n @media(max-width: 850px) {\n height: 170px;\n text-align: left;\n padding: 10px;\n border-bottom: 1px solid #D8D8D8;\n display: flex;\n margin-bottom: 11px;\n\n &:last-child {\n border: none;\n }\n\n .onboardingContent {\n padding-left: 10px;\n height: 100%;\n\n > span > h3 {\n margin-top: 0;\n margin-bottom: 4px;\n font-weight: 400;\n }\n\n > span > p {\n margin-top: 0;\n line-height: 22px;\n font-size: 15px;\n }\n }\n }\n\n .onboardingMessageImage {\n height: 100px;\n width: 120px;\n background-size: 120px;\n background-position: center center;\n background-repeat: no-repeat;\n display: inline-block;\n vertical-align: middle;\n\n\n @media(max-width: 850px) {\n height: 75px;\n width: 160px;\n background-size: 80px;\n }\n\n &.addons {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-addons@2x.png\");\n }\n\n &.privatebrowsing {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-privatebrowsing@2x.png\");\n }\n\n &.screenshots {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-screenshots@2x.png\");\n }\n }\n\n .onboardingContent {\n height: 175px;\n\n > span > h3 {\n color: $grey-90;\n margin-bottom: 8px;\n font-weight: 400;\n }\n\n > span > p {\n color: $grey-60;\n margin-top: 0;\n height: 130px;\n margin-bottom: 12px;\n font-size: 15px;\n line-height: 22px;\n }\n }\n\n .onboardingButton {\n background-color: $grey-90-10;\n border: none;\n width: 150px;\n height: 30px;\n margin-bottom: 23px;\n padding: 4px 0 6px 0;\n font-size: 15px;\n\n // at 850px, the button shimmies down and to the right\n @media(max-width: 850px) {\n float: right;\n margin-top: -60px;\n margin-right: -10px;\n }\n }\n\n\n &::before {\n content: '';\n height: 220px;\n width: 1px;\n position: absolute;\n background-color: #D8D8D8;\n margin-top: 40px;\n margin-left: 215px;\n\n // at 850px, the line goes from vertical to horizontal\n @media(max-width: 850px) {\n content: none;\n }\n }\n\n &:last-child::before {\n content: none;\n }\n}\n"
],
"names": [],
- "mappings": "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"
+ "mappings": ";AAAA,+BAA+B;AEA/B,AAAA,IAAI,CAAC;EACH,UAAU,EAAE,UAAU,GACvB;;AAED,AAAA,CAAC;AACD,AAAA,CAAC,AAAA,QAAQ;AACT,AAAA,CAAC,AAAA,OAAO,CAAC;EACP,UAAU,EAAE,OAAO,GACpB;;AAED,AAAA,CAAC,AAAA,kBAAkB,CAAC;EAClB,MAAM,EAAE,CAAC,GACV;;AAED,AAAA,IAAI,CAAC;EACH,MAAM,EAAE,CAAC,GACV;;AAED,AAAA,MAAM;AACN,AAAA,KAAK,CAAC;EACJ,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAAE,OAAO;EACd,WAAW,EAAE,OAAO;EACpB,SAAS,EAAE,OAAO,GACnB;;CAED,AAAA,AAAA,MAAC,AAAA,EAAQ;EACP,OAAO,EAAE,eAAe,GACzB;;AEPD,AAAA,IAAI,CAAC;EAEH,yBAAyB,EDjBjB,OAAO;ECkBf,6BAA6B,EDfrB,OAAO;ECgBf,+BAA+B,EDjBvB,OAAO;ECkBf,6BAA6B,EDvBrB,OAAO;ECwBf,+BAA+B,EAAE,OAAO;EACxC,6BAA6B,EDpBrB,wBAAO;ECqBf,4BAA4B,EDtBpB,OAAO;ECuBf,2BAA2B,EDhBnB,qBAAO;ECiBf,6BAA6B,EDjBrB,qBAAO;ECkBf,4BAA4B,EDxBpB,OAAO;ECyBf,+BAA+B,EDKzB,kBAAI;ECJV,2BAA2B,ED/BnB,OAAO;ECgCf,6BAA6B,EDpBrB,OAAO;ECqBf,+BAA+B,EDzBvB,OAAO;EC0Bf,2BAA2B,EDvBnB,OAAO;ECwBf,6BAA6B,ED5BrB,OAAO;EC6Bf,4BAA4B,ED7BpB,OAAO;EC8Bf,iCAAiC,EDO3B,IAAI;ECNV,uBAAuB,ED3Bf,qBAAO;ECTf,4BAA4B,EDFpB,OAAO;ECGf,gCAAgC,EALxB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CDET,OAAO,ECFW,CAAC,CAAC,CAAC,CAAC,CAAC,CDoHX,GAAG,CAlHf,qBAAO;EC0Cf,qCAAqC,EDvC7B,OAAO;ECwCf,iCAAiC,EDC3B,IAAI;ECEV,oBAAoB,EDFd,IAAI;ECGV,sBAAsB,ED3Cd,wBAAO;EC8Cf,kCAAkC,ED3C1B,OAAO;EC4Cf,sCAAsC,ED5C9B,OAAO;EC6Cf,yCAAyC,EDzCjC,OAAO;EC4Cf,4BAA4B,EAAE,WAAW;EACzC,8BAA8B,EDZxB,IAAI;ECaV,qCAAqC,EDtD7B,OAAO;ECuDf,0BAA0B,ED/ClB,qBAAO;ECkDf,kCAAkC,EDjB5B,IAAI;ECkBV,6BAA6B,EAAE,KAAK,CArDnB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC;EAsD/D,6BAA6B,EAAE,OAAO;EAGtC,kCAAkC,ED7D1B,OAAO;EC8Df,8BAA8B,EDvBxB,IAAI;ECwBV,4BAA4B,EDjCtB,kBAAI;ECkCV,oBAAoB,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CD1DzB,qBAAO;EC6Df,kCAAkC,ED5B5B,IAAI;EC6BV,gCAAgC,EAAE,WAAW,GAC9C;;AAGD,AAAA,WAAW,CAAC;EAEV,yBAAyB,EDrEjB,OAAO;ECsEf,6BAA6B,ED7ErB,wBAAO;EC8Ef,+BAA+B,ED9EvB,wBAAO;EC+Ef,6BAA6B,EDlFrB,OAAO;ECmFf,+BAA+B,ED1EvB,OAAO;EC2Ef,6BAA6B,EDjFrB,wBAAO;ECkFf,4BAA4B,EDlFpB,wBAAO;ECmFf,2BAA2B,EDnFnB,wBAAO;ECoFf,6BAA6B,EDpFrB,wBAAO;ECqFf,4BAA4B,EDrFpB,wBAAO;ECsFf,+BAA+B,EDtFvB,wBAAO;ECuFf,2BAA2B,ED5FnB,OAAO;EC6Ff,6BAA6B,ED7CjB,OAAO;EC8CnB,+BAA+B,EDzFvB,OAAO;EC0Ff,2BAA2B,ED1FnB,OAAO;EC2Ff,6BAA6B,ED3FrB,wBAAO;EC4Ff,4BAA4B,ED5FpB,wBAAO;EC6Ff,iCAAiC,EDvFzB,OAAO;ECwFf,uBAAuB,ED9Ff,wBAAO;ECDf,4BAA4B,EDJpB,OAAO;ECKf,gCAAgC,EALxB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CDAT,OAAO,ECAW,CAAC,CAAC,CAAC,CAAC,CAAC,CDoHX,GAAG,CApHf,uBAAO;ECuGf,qCAAqC,ED7F7B,OAAO;EC8Ff,iCAAiC,ED5FzB,OAAO;EC+Ff,oBAAoB,ED/FZ,OAAO;ECgGf,sBAAsB,ED/Fd,qBAAO;ECkGf,kCAAkC,ED1G1B,wBAAO;EC2Gf,sCAAsC,ED3G9B,wBAAO;EC4Gf,yCAAyC,EDnEnC,IAAI;ECsEV,4BAA4B,ED/GpB,wBAAO;ECgHf,8BAA8B,ED1GtB,OAAO;EC2Gf,qCAAqC,ED5G7B,OAAO;EC6Gf,0BAA0B,EDlHlB,wBAAO;ECqHf,kCAAkC,ED/G1B,OAAO;ECgHf,6BAA6B,EAAE,IAAI;EACnC,6BAA6B,EDvHrB,wBAAO;EC0Hf,kCAAkC,EDrH1B,OAAO;ECsHf,8BAA8B,EDrHtB,OAAO;ECsHf,4BAA4B,ED5HpB,wBAAO;EC6Hf,oBAAoB,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CDrHzB,qBAAO;ECwHf,kCAAkC,ED1H1B,OAAO;EC2Hf,gCAAgC,EDxF1B,wBAAI,GCyFX;;ACxID,AAAA,KAAK,CAAC;EACJ,mBAAmB,EAAE,aAAa;EAClC,iBAAiB,EAAE,SAAS;EAC5B,eAAe,EFgEL,IAAI;EE/Dd,uBAAuB,EAAE,IAAI;EAC7B,OAAO,EAAE,YAAY;EACrB,IAAI,EAAE,gCAAgC;EACtC,MAAM,EF4DI,IAAI;EE3Dd,cAAc,EAAE,MAAM;EACtB,KAAK,EF0DK,IAAI,GEgHf;EAnLD,AAWE,KAXG,AAWH,YAAa,CAAC;IACZ,iBAAiB,EAAE,GAAG,GACvB;EAbH,AAeE,KAfG,AAeH,kBAAmB,CAAC;IAClB,iBAAiB,EAAE,GAAG,GACvB;EAjBH,AAmBE,KAnBG,AAmBH,oBAAqB,CAAC;IACpB,gBAAgB,EAAE,yCAAyC,GAC5D;EArBH,AAuBE,KAvBG,AAuBH,qBAAsB,CAAC;IACrB,gBAAgB,EAAE,gDAAgD,GACnE;EAzBH,AA2BE,KA3BG,AA2BH,iBAAkB,CAAC;IACjB,IAAI,EAAE,kCAAkC;IACxC,gBAAgB,EAAE,iDAAwC,GAC3D;EA9BH,AAgCE,KAhCG,AAgCH,YAAa,CAAC;IACZ,gBAAgB,EAAE,iDAAwC,GAC3D;EAlCH,AAoCE,KApCG,AAoCH,YAAa,CAAC;IACZ,gBAAgB,EAAE,6CAA6C,GAChE;EAtCH,AAwCE,KAxCG,AAwCH,kBAAmB,CAAC;IAClB,WAAW,EAAE,CAAC;IACd,gBAAgB,EAAE,uDAA8C;IAChE,eAAe,EF0BA,IAAI;IEzBnB,MAAM,EFyBS,IAAI;IExBnB,KAAK,EFwBU,IAAI,GEvBpB;EA9CH,AAgDE,KAhDG,AAgDH,aAAc,CAAC;IACb,gBAAgB,EAAE,kDAAyC,GAC5D;EAlDH,AAoDE,KApDG,AAoDH,UAAW,CAAC;IACV,gBAAgB,EAAE,+CAAsC,GACzD;EAtDH,AAwDE,KAxDG,AAwDH,YAAa,CAAC;IACZ,gBAAgB,EAAE,iDAAwC,GAC3D;EA1DH,AA4DE,KA5DG,AA4DH,gBAAiB,CAAC;IAEhB,gBAAgB,EAAE,oDAA2C,GAC9D;IA/DH,AFuLE,KEvLG,AA4DH,gBAAiB,AF2HpB,IAAS,CAAA,AAAA,GAAG,EAAE;MACT,SAAS,EAAE,UAAU,GACtB;EEzLH,AAiEE,KAjEG,AAiEH,wBAAyB,CAAC;IACxB,gBAAgB,EAAE,gDAAgD,GACnE;EAnEH,AAqEE,KArEG,AAqEH,cAAe,CAAC;IACd,gBAAgB,EAAE,yCAAyC,GAC5D;EAvEH,AAyEE,KAzEG,AAyEH,SAAU,CAAC;IAET,gBAAgB,EAAE,8CAAqC,GACxD;IA5EH,AFuLE,KEvLG,AAyEH,SAAU,AF8Gb,IAAS,CAAA,AAAA,GAAG,EAAE;MACT,SAAS,EAAE,UAAU,GACtB;EEzLH,AA8EE,KA9EG,AA8EH,WAAY,CAAC;IAEX,gBAAgB,EAAE,gDAAuC,GAC1D;IAjFH,AFuLE,KEvLG,AA8EH,WAAY,AFyGf,IAAS,CAAA,AAAA,GAAG,EAAE;MACT,SAAS,EAAE,UAAU,GACtB;EEzLH,AAmFE,KAnFG,AAmFH,UAAW,CAAC;IACV,gBAAgB,EAAE,+CAAsC,GACzD;EArFH,AAuFE,KAvFG,AAuFH,YAAa,CAAC;IACZ,gBAAgB,EAAE,iDAAwC,GAC3D;EAzFH,AA2FE,KA3FG,AA2FH,kBAAmB,CAAC;IAClB,gBAAgB,EAAE,wCAAwC,GAC3D;EA7FH,AA+FE,KA/FG,AA+FH,cAAe,CAAC;IACd,gBAAgB,EAAE,mDAA0C;IAC5D,SAAS,EAAE,eAAe,GAC3B;EAlGH,AAoGE,KApGG,AAoGH,SAAU,CAAC;IACT,gBAAgB,EAAE,wCAAwC,GAC3D;EAtGH,AAwGE,KAxGG,AAwGH,cAAe,CAAC;IACd,gBAAgB,EAAE,mDAA0C,GAC7D;EA1GH,AA4GE,KA5GG,AA4GH,eAAgB,CAAC;IAEf,gBAAgB,EAAE,8CAAqC;IACvD,eAAe,EF3CC,IAAI;IE4CpB,MAAM,EF5CU,IAAI;IE6CpB,KAAK,EF7CW,IAAI,GE8CrB;IAlHH,AFuLE,KEvLG,AA4GH,eAAgB,AF2EnB,IAAS,CAAA,AAAA,GAAG,EAAE;MACT,SAAS,EAAE,UAAU,GACtB;EEzLH,AAoHE,KApHG,AAoHH,WAAY,CAAC;IACX,gBAAgB,EAAE,sCAAsC,GACzD;EAtHH,AAwHE,KAxHG,AAwHH,cAAe,CAAC;IACd,gBAAgB,EAAE,wEAAwE,GAC3F;EA1HH,AA4HE,KA5HG,AA4HH,UAAW,CAAC;IACV,gBAAgB,EAAE,0CAA0C,GAC7D;EA9HH,AAgIE,KAhIG,AAgIH,eAAgB,CAAC;IACf,gBAAgB,EAAE,oDAA2C,GAC9D;EAlIH,AAoIE,KApIG,AAoIH,kBAAmB,CAAC;IAClB,gBAAgB,EAAE,uDAA8C,GACjE;EAtIH,AAwIE,KAxIG,AAwIH,gBAAiB,CAAC;IAChB,gBAAgB,EAAE,qDAA4C,GAC/D;EA1IH,AA4IE,KA5IG,AA4IH,oBAAqB,CAAC;IACpB,gBAAgB,EAAE,yDAAgD,GACnE;EA9IH,AAgJE,KAhJG,AAgJH,0BAA2B,CAAC;IAC1B,gBAAgB,EAAE,yDAAgD;IAClE,eAAe,EF9EC,IAAI;IE+EpB,MAAM,EF/EU,IAAI;IEgFpB,KAAK,EFhFW,IAAI,GEiFrB;EArJH,AAuJE,KAvJG,AAuJH,6BAA8B,CAAC;IAC7B,gBAAgB,EAAE,yDAAgD;IAClE,eAAe,EFrFC,IAAI;IEsFpB,MAAM,EFtFU,IAAI;IEuFpB,SAAS,EAAE,cAAc;IACzB,KAAK,EFxFW,IAAI,GE6FrB;IAjKH,AA8JI,KA9JC,AAuJH,6BAA8B,AAO5B,IAAM,CAAA,AAAA,GAAG,EAAE;MACT,SAAS,EAAE,aAAa,GACzB;EAhKL,AAmKE,KAnKG,AAmKH,kBAAmB,CAAC;IAClB,gBAAgB,EAAE,yDAAgD;IAClE,SAAS,EAAE,cAAc,GAC1B;EAtKH,AAwKE,KAxKG,AAwKH,SAAU,CAAC;IACT,gBAAgB,EAAE,8CAAqC,GACxD;EA1KH,AA4KE,KA5KG,AA4KH,cAAe,CAAC;IACd,gBAAgB,EAAE,mDAA0C,GAC7D;EA9KH,AAgLE,KAhLG,AAgLH,cAAe,CAAC;IACd,gBAAgB,EAAE,mDAA0C,GAC7D;;AJ7KH,AAAA,IAAI,CAAC;EACH,MAAM,EAAE,IAAI,GACb;;AAED,AAAA,IAAI;AACJ,AAAA,KAAK,CAAC;EACJ,UAAU,EAAE,KAAK,GAClB;;AAED,AAAA,IAAI,CAAC;EACH,gBAAgB,EAAE,8BAA8B;EAChD,WAAW,EAAE,qFAAqF;EAClG,SAAS,EAAE,IAAI;EACf,UAAU,EAAE,MAAM,GACnB;;AAED,AAAA,EAAE;AACF,AAAA,EAAE,CAAC;EACD,WAAW,EAAE,MAAM,GACpB;;AAED,AAAA,CAAC,CAAC;EACA,eAAe,EAAE,IAAI,GACtB;;AAGD,AAAA,QAAQ,CAAC;EACP,MAAM,EAAE,CAAC;EACT,IAAI,EAAE,gBAAgB;EACtB,MAAM,EAAE,GAAG;EACX,MAAM,EAAE,IAAI;EACZ,QAAQ,EAAE,MAAM;EAChB,OAAO,EAAE,CAAC;EACV,QAAQ,EAAE,QAAQ;EAClB,KAAK,EAAE,GAAG,GACX;;AAED,AAAA,aAAa,CAAC;EACZ,MAAM,EGhCW,GAAG,CAAC,KAAK,CAAC,oCAAoC;EHiC/D,aAAa,EEcC,GAAG;EFbjB,MAAM,EAAE,IAAI;EACZ,IAAI,EAAE,CAAC;EACP,cAAc,EAAE,IAAI;EACpB,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,CAAC;EACN,KAAK,EAAE,IAAI;EACX,OAAO,EAAE,GAAG,GACb;;AAED,UAAU,CAAV,MAAU;EACR,AAAA,IAAI;IACF,OAAO,EAAE,CAAC;EAGZ,AAAA,EAAE;IACA,OAAO,EAAE,CAAC;;AAId,AAAA,aAAa,CAAC;EACZ,OAAO,EAAE,CAAC;EACV,UAAU,EAAE,oBAAoB,GAMjC;EARD,AAIE,aAJW,AAIX,GAAI,CAAC;IACH,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,CAAC,GACX;;AAGH,AAAA,QAAQ,CAAC;EACP,UAAU,EGhEO,GAAG,CAAC,KAAK,CAAC,oCAAoC;EHiE/D,OAAO,EAAE,IAAI;EACb,cAAc,EAAE,GAAG;EACnB,SAAS,EAAE,IAAI;EACf,eAAe,EAAE,UAAU;EAC3B,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,WAAW,GACrB;;AAGD,AAAA,OAAO;AACP,AAAS,QAAD,CAAC,MAAM,CAAC;EACd,gBAAgB,EAAE,oCAAoC;EACtD,MAAM,EG9ES,GAAG,CAAC,KAAK,CAAC,kCAAkC;EH+E3D,aAAa,EAAE,GAAG;EAClB,KAAK,EAAE,OAAO;EACd,MAAM,EAAE,OAAO;EACf,aAAa,EAAE,IAAI;EACnB,OAAO,EAAE,SAAS;EAClB,WAAW,EAAE,MAAM,GAsBpB;EA/BD,AAWE,OAXK,AAWN,MAAQ,AAAA,IAAK,CAAA,AAAA,QAAQ;EAVtB,AAAS,QAAD,CAAC,MAAM,AAUd,MAAQ,AAAA,IAAK,CAAA,AAAA,QAAQ,EAAE;IACpB,UAAU,EGhFG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uCAAuC;IHiF9D,UAAU,EAAE,gBAAgB,GAC7B;EAdH,AAgBE,OAhBK,AAgBN,QAAU;EAfX,AAAS,QAAD,CAAC,MAAM,AAed,QAAU,CAAC;IACR,gBAAgB,EAAE,WAAW;IAC7B,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;IACV,eAAe,EAAE,SAAS,GAC3B;EArBH,AAwBE,OAxBK,AAwBN,QAAU,EAxBX,AAyBE,OAzBK,AAyBN,KAAO;EAxBR,AAAS,QAAD,CAAC,MAAM,AAuBd,QAAU;EAvBX,AAAS,QAAD,CAAC,MAAM,AAwBd,KAAO,CAAC;IACL,gBAAgB,EAAE,kCAAkC;IACpD,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,kCAAkC;IACpD,KAAK,EElED,IAAI;IFmER,mBAAmB,EAAE,IAAI,GAC1B;;AAGH,AACE,KADG,CACH,AAAA,IAAE,CAAK,MAAM,AAAX,GADJ,AAEE,KAFG,CAEH,AAAA,IAAE,CAAK,QAAQ,AAAb,EAAe;EACf,aAAa,EE/DD,GAAG,GFgEhB;;AAIH,AAAA,mBAAmB,CAAC;EAClB,OAAO,EAAE,CAAC,GACX;;AKhID,AAAA,cAAc,CAAC;EACb,KAAK,EAAE,gCAAgC;EACvC,OAAO,EAAE,IAAI;EACb,SAAS,EAAE,CAAC;EACZ,UAAU,EAAE,KAAK;EACjB,OAAO,EAAE,IAA8C,CHwD3C,IAAI,CAAJ,IAAI,GG/CjB;EAdD,AAOE,cAPY,AAOZ,aAAc,CAAC;IACb,OAAO,EAAE,KAAK,GACf;EATH,AAWE,cAXY,CAWZ,CAAC,CAAC;IACA,KAAK,EAAE,gCAAgC,GACxC;;AAGH,AAAA,IAAI,CAAC;EACH,MAAM,EAAE,IAAI;EAGZ,cAAc,EAAE,IAA4D;EAC5E,KAAK,EHkDiB,KAAmE,GG5B1F;EApBC,MAAM,EAAE,SAAS,EAAE,KAAK;IAP1B,AAAA,IAAI,CAAC;MAQD,KAAK,EHgDiB,KAAmE,GG7B5F;EAhBC,MAAM,EAAE,SAAS,EAAE,KAAK;IAX1B,AAAA,IAAI,CAAC;MAYD,KAAK,EH6CkB,KAAmE,GG9B7F;EAZC,MAAM,EAAE,SAAS,EAAE,KAAK;IAf1B,AAAA,IAAI,CAAC;MAgBD,KAAK,EH0CiB,KAAmE,GG/B5F;EARC,MAAM,EAAE,SAAS,EAAE,MAAM;IAnB3B,AAAA,IAAI,CAAC;MAoBD,KAAK,EHuCkB,MAAmE,GGhC7F;EA3BD,AAuBE,IAvBE,CAuBF,OAAO,CAAC;IACN,aAAa,EHwBC,IAAoC;IGvBlD,QAAQ,EAAE,QAAQ,GACnB;;AAGH,AAAA,sBAAsB,CAAC;EAErB,MAAM,EAAE,KAAK,GACd;;;AAED,AAUI,aAVS,CAUT,cAAc;AAVlB,AAWmB,aAXN,CAWT,cAAc,CAAC,QAAQ,AAAA,aAAa;AAXxC,AAYI,aAZS,CAYT,MAAM,CAHc;EACpB,OAAO,EAAE,CAAC,GACX;;;AAXH,AAeI,aAfS,AAaX,GAAI,CAEF,cAAc;AAflB,AAgBmB,aAhBN,AAaX,GAAI,CAGF,cAAc,CAAC,QAAQ,AAAA,aAAa;AAhBxC,AAiBI,aAjBS,AAaX,GAAI,CAIF,MAAM,CAHgB;EACpB,OAAO,EAAE,CAAC,GACX;;AAIL,AAAA,wBAAwB,CAAC;EACvB,OAAO,EAAE,CAAC,CHTiB,IAAI,GGUhC;;AAED,AACE,aADW,CACX,MAAM,CAAC;EACL,gBAAgB,EAAE,WAAW;EAC7B,MAAM,EAAE,CAAC;EACT,MAAM,EAAE,OAAO;EACf,IAAI,EAAE,gCAAgC;EACtC,iBAAiB,EAAE,IAAI;EACvB,OAAO,EAAE,IAAI;EACb,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,IAAI;EACT,OAAO,EAAE,KAAK,GAUf;EApBH,AACE,aADW,CACX,MAAM,AAWJ,MAAO,EAZX,AACE,aADW,CACX,MAAM,AAYJ,MAAO,CAAC;IACN,gBAAgB,EAAE,iCAAiC,GACpD;EAfL,AACE,aADW,CACX,MAAM,AAgBJ,OAAQ,CAAC;IACP,gBAAgB,EAAE,kCAAkC,GACrD;;AC7FL,AAAA,kBAAkB,CAAC;EACjB,WAAW,EAAE,MAAM;EACnB,aAAa,EJwDC,GAAG;EIvDjB,UAAU,EAAE,KAAK,CHSA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC;EGR/D,KAAK,EAAE,oCAAoC;EAC3C,OAAO,EAAE,IAAI;EACb,cAAc,EAAE,MAAM;EACtB,SAAS,EJuGgB,IAAI;EItG7B,eAAe,EAAE,MAAM;EACvB,aAAa,EAAE,MAAM;EACrB,WAAW,EJqGgB,GAAG,GI/F/B;EAhBD,AAYE,kBAZgB,CAYhB,CAAC,CAAC;IACA,KAAK,EAAE,oCAAoC;IAC3C,eAAe,EAAE,SAAS,GAC3B;;ACJH,AAAA,UAAU,CAAC;EAGT,aAAa,EAAE,GAA4E,GAC5F;;AAED,AAAA,eAAe,CAAC;EACd,UAAU,EAAE,IAAI;EAChB,MAAM,EAAE,CAAC,CAVQ,KAAgB;EAWjC,OAAO,EAAE,CAAC,GA4EX;EAzEC,MAAM,EAAE,SAAS,EAAE,KAAK;IAN1B,ALoJE,eKpJa,CAOX,UAAW,CAAA,IAAI,EL6IjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,IAAI;MACvB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,IAAI;MACvB,mBAAmB,EA5GT,KAAI,GA6Gf;IKzJH,AL6JE,eK7Ja,CAWX,UAAW,CAAA,EAAE,ELkJf,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EKjJD,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,KAAK;IAjBjD,AL6JE,eK7Ja,CAkBX,UAAW,CAAA,IAAI,EL2IjB,aAAa;IK7Jf,AL6JE,eK7Ja,CAmBX,UAAW,CAAA,EAAE,EL0If,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EKzID,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,KAAK;IAzBjD,AL6JE,eK7Ja,CA0BX,UAAW,CAAA,EAAE,ELmIf,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EKpID,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,KAAK;IA9BjD,AL6JE,eK7Ja,CA+BX,UAAW,CAAA,IAAI,EL8HjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EK7HD,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,MAAM;IArClD,AL6JE,eK7Ja,CAsCX,UAAW,CAAA,EAAE,ELuHf,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EKxHD,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,MAAM;IA1ClD,AL6JE,eK7Ja,CA2CX,UAAW,CAAA,IAAI,ELkHjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EKjHD,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,SAAS,EAAE,MAAM;IAjDnD,AL6JE,eK7Ja,CAkDX,UAAW,CAAA,EAAE,EL2Gf,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EK5GD,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,SAAS,EAAE,MAAM;IAtDnD,AL6JE,eK7Ja,CAuDX,UAAW,CAAA,IAAI,ELsGjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EKtGD,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,MAAM;IA5DvC,AA6DI,eA7DW,CA6DX,gBAAgB,CAAC;MACf,OAAO,EAAE,IAAI,GACd;EA/DL,AAkEE,eAlEa,CAkEb,EAAE,CAAC;IACD,MAAM,EAAE,CAAC,CAAC,CAAC,CAjFY,GAAG,GAkF3B;EApEH,AAwEM,eAxES,AAsEb,IAAM,CAAA,AAAA,WAAW,EACf,eAAe,AAAA,SAAU,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EAAE,AAAA,MAAM,EAC9C,KAAK,CAAC;IL+BV,UAAU,EAAE,KAAK,CC5GA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC,EAKhD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uCAAuC;IDwGhE,UAAU,EAAE,gBAAgB,GK9BvB;EA1EP,AL6IE,eK7Ia,AAsEb,IAAM,CAAA,AAAA,WAAW,EACf,eAAe,AAAA,SAAU,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EAAE,AAAA,MAAM,ELsElD,oBAAoB,CAAC;IACnB,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,QAAQ,GACpB;;AK9DH,AAAA,eAAe,CAAC;EACd,OAAO,EAAE,CAAC,CA3FO,IAAgB;EA4FjC,OAAO,EAAE,YAAY,GA6JtB;EA/JD,AAKE,eALa,CAKb,eAAe,CAAC;IACd,QAAQ,EAAE,QAAQ,GAanB;IAnBH,AAQM,eARS,CAKb,eAAe,GAGX,CAAC,CAAC;MACF,KAAK,EAAE,OAAO;MACd,OAAO,EAAE,KAAK;MACd,OAAO,EAAE,IAAI,GAOd;MAlBL,AAcQ,eAdO,CAKb,eAAe,GAGX,CAAC,AAKD,SAAW,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EACxB,KAAK,CAAC;QLOZ,UAAU,EAAE,KAAK,CC5GA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC,EAKhD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uCAAuC;QDwGhE,UAAU,EAAE,gBAAgB,GKNrB;EAhBT,AL+BE,eK/Ba,CL+Bb,oBAAoB,CAAC;IACnB,eAAe,EAAE,WAAW;IAC5B,gBAAgB,EAAE,sCAAsC;IACxD,gBAAgB,EAAE,4CAA4C;IAC9D,mBAAmB,EAAE,GAAG;IACxB,MAAM,EC7HO,GAAG,CAAC,KAAK,CAAC,kCAAkC;ID8HzD,aAAa,EAAE,IAAI;IACnB,UAAU,EAlCkB,CAAC,CAAC,GAAG,CAzF3B,qBAAO;IA4Hb,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,gCAAgC;IACtC,MAAM,EAtCiB,IAAI;IAuC3B,iBAAiB,EAAI,OAA6B;IAClD,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAI,OAA6B;IACpC,SAAS,EAAE,WAAW;IACtB,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,kBAAkB;IACvC,KAAK,EA9CkB,IAAI,GAoD5B;IKvDH,AL+BE,eK/Ba,CL+Bb,oBAAoB,AAoBnB,SAAY,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EAAE;MAC1B,OAAO,EAAE,CAAC;MACV,SAAS,EAAE,QAAQ,GACpB;EKtDL,AAuBE,eAvBa,CAuBb,KAAK,CAAC;IACJ,aAAa,EA1HS,GAAG;IA2HzB,UAAU,EAAE,KAAK,CJhHF,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC,EIgHxB,yBAAyB;IAC9D,MAAM,EL5DE,IAAI;IK6DZ,QAAQ,EAAE,QAAQ;IAClB,KAAK,EL9DG,IAAI;IKiEZ,WAAW,EAAE,MAAM;IACnB,KAAK,EAAE,kCAAkC;IACzC,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,GAAG;IAChB,eAAe,EAAE,MAAM;IACvB,cAAc,EAAE,SAAS,GAK1B;IA1CH,AAuBE,eAvBa,CAuBb,KAAK,AAgBH,QAAS,CAAC;MACR,OAAO,EAAE,mBAAmB,GAC7B;EAzCL,AA4CE,eA5Ca,CA4Cb,WAAW,CAAC;IACV,gBAAgB,ELjGZ,IAAI;IKkGR,mBAAmB,EAAE,QAAQ;IAC7B,eAAe,EA9ID,KAAK;IA+InB,aAAa,EAlJS,GAAG;IAmJzB,UAAU,EAAE,KAAK,CJxIF,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC;IIyI7D,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE,CAAC;IACN,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,IAAI,GAKZ;IA7DH,AA4CE,eA5Ca,CA4Cb,WAAW,AAcT,OAAQ,CAAC;MACP,OAAO,EAAE,CAAC,GACX;EA5DL,AAgEE,eAhEa,CAgEb,cAAc,CAAC;IACb,gBAAgB,EAAE,uCAAuC;IACzD,mBAAmB,EAAE,aAAa;IAClC,iBAAiB,EAAE,SAAS;IAC5B,aAAa,EAtKS,GAAG;IAuKzB,UAAU,EAAE,kCAAkC;IAC9C,QAAQ,EAAE,QAAQ,GACnB;EAvEH,AAyEE,eAzEa,CAyEb,UAAU,CAAC;IACT,eAAe,EAAE,KAAK;IACtB,MAAM,EAAE,IAAI;IACZ,mBAAmB,EAAE,CAAC;IACtB,GAAG,EAAE,CAAC;IACN,KAAK,EAAE,IAAI,GACZ;EA/EH,AAiFE,eAjFa,CAiFb,aAAa,CAAC;IACZ,eAAe,EA9KC,IAAI;IA+KpB,MAAM,EA9KY,IAAG;IA+KrB,MAAM,EAjLkB,IAAI;IAkL5B,iBAAiB,EAhLC,IAAG;IAiLrB,KAAK,EAnLmB,IAAI;IAsL5B,WAAW,EAAE,MAAM;IACnB,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;IACf,eAAe,EAAE,MAAM,GAKxB;IAjGH,AAiFE,eAjFa,CAiFb,aAAa,CAaX,AAAA,aAAE,AAAA,CAAc,QAAQ,CAAC;MACvB,OAAO,EAAE,mBAAmB,GAC7B;EAhGL,AAmGE,eAnGa,CAmGb,MAAM,CAAC;IACL,KAAK,EAAE,kCAAkC;IACzC,IAAI,EAAE,WAAW;IACjB,MAAM,EAvMe,IAAI;IAwMzB,WAAW,EAxMU,IAAI;IAyMzB,UAAU,EAAE,MAAM;IAClB,KAAK,EL3IG,IAAI;IK4IZ,QAAQ,EAAE,QAAQ,GAsBnB;IAhIH,AA4GI,eA5GW,CAmGb,MAAM,CASJ,KAAK,CAAC;MACJ,IAAI,EAAE,iCAAiC;MACvC,mBAAmB,EAAE,CAAC;MACtB,QAAQ,EAAE,QAAQ;MAClB,GAAG,EAAE,IAAI,GACV;IAjHL,AAmHI,eAnHW,CAmGb,MAAM,CAgBJ,IAAI,CAAC;MACH,MAAM,EArNa,IAAI;MAsNvB,OAAO,EAAE,KAAK;MACd,QAAQ,EAAE,MAAM;MAChB,aAAa,EAAE,QAAQ;MACvB,WAAW,EAAE,MAAM,GACpB;IAzHL,AA4HM,eA5HS,CAmGb,MAAM,AAwBJ,OAAQ,CACN,IAAI,CAAC;MACH,OAAO,EAAE,MAAM,GAChB;EA9HP,AAkIE,eAlIa,CAkIb,YAAY,CAAC;IACX,gBAAgB,EAAE,+CAAsC,GACzD;EApIH,AAuII,eAvIW,AAsIb,YAAa,CACX,KAAK,CAAC;IACJ,UAAU,EAAE,KAAK,CJ/NJ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC,GIgO5D;EAzIL,AA2II,eA3IW,AAsIb,YAAa,CAKX,WAAW,CAAC;IACV,OAAO,EAAE,IAAI,GACd;EA7IL,AAiJI,eAjJW,AAgJb,QAAS,CACP,KAAK,CAAC;IACJ,UAAU,EL9ON,OAAO;IK+OX,UAAU,EAAE,IAAI,GAMjB;IAzJL,AAqJM,eArJS,AAgJb,QAAS,CACP,KAAK,CAIH,CAAC,EArJP,AAiJI,eAjJW,AAgJb,QAAS,CACP,KAAK,AAKH,QAAS,CAAC;MACR,OAAO,EAAE,IAAI,GACd;EAxJP,AA2JI,eA3JW,AAgJb,QAAS,CAWP,MAAM,CAAC;IACL,UAAU,EAAE,MAAM,GACnB;;AAIL,AACE,sBADoB,CACpB,MAAM,CAAC;EACL,UAAU,EJpPK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CDJpB,qBAAO;EKyPb,IAAI,EAAE,CAAC;EACP,MAAM,EAAE,MAAM;EACd,QAAQ,EAAE,KAAK;EACf,KAAK,EAAE,CAAC;EACR,GAAG,EAAE,IAAI;EACT,KAAK,ELrMe,KAAmE,GKkNxF;EAXC,MAAM,EAAE,SAAS,EAAE,KAAK;IAV5B,AACE,sBADoB,CACpB,MAAM,CAAC;MAUH,KAAK,ELvMe,KAAmE,GKiN1F;EAPC,MAAM,EAAE,SAAS,EAAE,KAAK;IAd5B,AACE,sBADoB,CACpB,MAAM,CAAC;MAcH,KAAK,EL1MgB,KAAmE,GKgN3F;EAHC,MAAM,EAAE,SAAS,EAAE,KAAK;IAlB5B,AACE,sBADoB,CACpB,MAAM,CAAC;MAkBH,KAAK,EL7Me,KAAmE,GK+M1F;;AAGH,AAIE,aAJW,CAIX,qBAAqB,CAAC;EACpB,SAAS,EAAE,KAAiD;EAC5D,MAAM,EAAE,MAAM;EACd,OAAO,EALM,IAAI,GAmBlB;EArBH,AASI,aATS,CAIX,qBAAqB,CAKnB,eAAe,CAAC;IACd,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,QAAQ;IAChB,mBAAmB,EAVR,IAAI;IAWf,cAAc,EAAE,IAAI,GACrB;EAdL,AAgBI,aAhBS,CAIX,qBAAqB,CAYnB,cAAc,CAAC;IACb,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,QAAQ,GACjB;;AApBL,AAuBE,aAvBW,CAuBX,mBAAmB,CAAC;EAClB,OAAO,EAAE,IAAI,GACd;;AAzBH,AA2BE,aA3BW,CA2BX,KAAK,CAAC;EACJ,SAAS,ELnOa,IAAI,GKoO3B;;AA7BH,AA+BE,aA/BW,CA+BX,aAAa,CAAC;EACZ,KAAK,EAAE,IAAI,GAuIZ;EAvKH,AAkCI,aAlCS,CA+BX,aAAa,CAGX,MAAM,CAAC;IACL,QAAQ,EAAE,QAAQ,GAQnB;IA3CL,AAqCM,aArCO,CA+BX,aAAa,CAGX,MAAM,CAGJ,iBAAiB,CAAC;MAChB,QAAQ,EAAE,QAAQ;MAClB,SAAS,EAAE,gBAAgB;MAC3B,GAAG,EAAE,GAAG;MACR,iBAAiB,EAAE,GAAG,GACvB;EA1CP,AA8CM,aA9CO,CA+BX,aAAa,CAcX,IAAI,CACF,KAAK,AAAA,IAAK,CAAA,AAAA,GAAG,EAAE;IACb,aAAa,EAAE,IAAI,GACpB;EAhDP,AAkDM,aAlDO,CA+BX,aAAa,CAcX,IAAI,CAKF,KAAK,AAAA,IAAK,CAAA,AAAA,GAAG,EAAE;IACb,YAAY,EAAE,IAAI,GAMnB;IAzDP,AAkDM,aAlDO,CA+BX,aAAa,CAcX,IAAI,CAKF,KAAK,AAAA,IAAK,CAAA,AAAA,GAAG,CAGX,IAAM,CAAA,AAAA,kBAAkB,EAAE;MACxB,SAAS,EAAE,GAAG;MACd,UAAU,EAAE,KAAK,GAClB;EAxDT,AA4DI,aA5DS,CA+BX,aAAa,CA6BX,0BAA0B,CAAC;IACzB,OAAO,EAAE,YAAY;IACrB,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,GAAG;IACf,MAAM,EAAE,OAAO,GAKhB;IArEL,AA4DI,aA5DS,CA+BX,aAAa,CA6BX,0BAA0B,AAMxB,MAAO,CAAC;MACN,eAAe,EAAE,SAAS,GAC3B;EApEP,AAuEI,aAvES,CA+BX,aAAa,CAwCX,6BAA6B,CAAC;IAC5B,UAAU,EAAE,GAAG,GAkChB;IA1GL,AA0EM,aA1EO,CA+BX,aAAa,CAwCX,6BAA6B,CAG3B,kBAAkB,CAAC;MACjB,KAAK,EAAE,IAAI;MACX,MAAM,EAAE,IAAI;MACZ,QAAQ,EAAE,MAAM;MAChB,QAAQ,EAAE,QAAQ;MAClB,SAAS,EAAE,gBAAgB;MAC3B,GAAG,EAAE,GAAG;MACR,iBAAiB,EAAE,GAAG,GACvB;IAlFP,AAsFM,aAtFO,CA+BX,aAAa,CAwCX,6BAA6B,CAe3B,kBAAkB,CAAC;MASjB,KAAK,EAAE,KAAK;MACZ,MAAM,EAAE,IAAI;MACZ,uBAAuB,EAAE,IAAI;MAC7B,IAAI,EL5XF,OAAO;MK6XT,gBAAgB,EAAE,mDAAmD;MACrE,SAAS,EAAE,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,GAK3D;;AAlBC,UAAU,CAAV,sBAAU;EACR,AAAA,IAAI;IAAG,SAAS,EAAE,kBAAkB;;AAGtC,UAAU,CAAV,0BAAU;EACR,AAAA,IAAI;IAAG,SAAS,EAAE,iBAAiB;MA5F7C,AAsFM,aAtFO,CA+BX,aAAa,CAwCX,6BAA6B,CAe3B,kBAAkB,AAgBhB,IAAM,CAAA,AAAA,GAAG,EAAE;QACT,cAAc,EAAE,0BAA0B,GAC3C;EAxGT,AA4GI,aA5GS,CA+BX,aAAa,CA6EX,KAAK,CACH,AAAA,IAAE,CAAK,MAAM,AAAX,EAAa;IACb,gBAAgB,EAAE,sCAAsC;IACxD,MAAM,EJ9XC,GAAG,CAAC,KAAK,CAAC,4BAA4B;II+X7C,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI,GAYhB;IAhIP,AA4GI,aA5GS,CA+BX,aAAa,CA6EX,KAAK,CACH,AAAA,IAAE,CAAK,MAAM,AAAX,CASA,MAAO,CAAC;MACN,MAAM,EJrYM,GAAG,CAAC,KAAK,CAAC,iCAAiC;MIsYvD,UAAU,EAAE,qCAAqC,GAClD;IAzHT,AA4GI,aA5GS,CA+BX,aAAa,CA6EX,KAAK,CACH,AAAA,IAAE,CAAK,MAAM,AAAX,EAcA,AAAA,QAAE,AAAA,EAAU;MACV,MAAM,EJ3YD,GAAG,CAAC,KAAK,CAAC,4BAA4B;MI4Y3C,UAAU,EAAE,IAAI;MAChB,OAAO,EAAE,GAAG,GACb;EA/HT,AAoIM,aApIO,CA+BX,aAAa,CAoGX,QAAQ,CACN,KAAK,CACH,AAAA,IAAE,CAAK,MAAM,AAAX,EAAa;IACb,MAAM,EJnZK,GAAG,CAAC,KAAK,CDCrB,OAAO;IKmZN,UAAU,EJlaV,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CDeV,OAAO,ECfY,CAAC,CAAC,CAAC,CAAC,CAAC,CDoHX,GAAG,CArGhB,qBAAO,GKoZP;EAxIT,AA4II,aA5IS,CA+BX,aAAa,CA6GX,cAAc,CAAC;IACb,SAAS,EAAE,gBAAgB;IAC3B,UAAU,EL1ZP,OAAO;IK2ZV,aAAa,EAAE,GAAG;IAClB,KAAK,EL7XH,IAAI;IK8XN,mBAAmB,EAAE,GAAG;IACxB,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE,IAAI;IACT,OAAO,EAAE,CAAC,GAiBX;IAtKL,AA4II,aA5IS,CA+BX,aAAa,CA6GX,cAAc,AAYZ,QAAS,CAAC;MACR,UAAU,ELraT,OAAO;MKsaR,MAAM,EAAE,IAAI;MACZ,OAAO,EAAE,GAAG;MACZ,MAAM,EAAE,IAAI;MACZ,mBAAmB,EAAE,IAAI;MACzB,QAAQ,EAAE,QAAQ;MAClB,WAAW,EAAE,MAAM;MACnB,GAAG,EAAE,IAAI;MACT,SAAS,EAAE,aAAa;MACxB,WAAW,EAAE,MAAM;MACnB,KAAK,EAAE,IAAI;MACX,OAAO,EAAE,EAAE,GACZ;;AArKP,AAyKE,aAzKW,CAyKX,QAAQ,CAAC;EACP,eAAe,EAAE,QAAQ,GAM1B;EAhLH,AA4KI,aA5KS,CAyKX,QAAQ,CAGN,MAAM,CAAC;IACL,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,CAAC,GACrB;;AAGH,MAAM,EAAE,SAAS,EAAE,KAAK;EAlL1B,AAmLI,aAnLS,CAmLT,mBAAmB,CAAC;IAClB,cAAc,EAAE,MAAM,GAKvB;IAzLL,AAsLM,aAtLO,CAmLT,mBAAmB,CAGjB,eAAe,CAAC;MACd,mBAAmB,EAAE,CAAC,GACvB;;AAMP,UAAU,CAAV,UAAU;EACR,AAAA,EAAE;IACA,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,gBAAgB;EAG7B,AAAA,IAAI;IACF,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,aAAa;;ACle5B,AACE,cADY,CACZ,aAAa,CAAC;EACZ,OAAO,EAAE,IAAI;EACb,QAAQ,EN0DE,IAAI;EMzDd,qBAAqB,EAAE,uBAA6B;EACpD,MAAM,EAAE,CAAC,GAuBV;EArBC,MAAM,EAAE,SAAS,EAAE,KAAK;IAP5B,AN8KE,cM9KY,CACZ,aAAa,CN6Kb,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EMxKC,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,KAAK;IAXnD,AN8KE,cM9KY,CACZ,aAAa,CAWT,UAAW,CAAA,EAAE,ENkKjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EMlKC,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,MAAM;IAjBpD,AN8KE,cM9KY,CACZ,aAAa,CAiBT,UAAW,CAAA,EAAE,EN4JjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;EM5JC,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,SAAS,EAAE,MAAM;IAvBrD,AN8KE,cM9KY,CACZ,aAAa,CAuBT,UAAW,CAAA,EAAE,ENsJjB,aAAa,CAAC;MACZ,iBAAiB,EAAE,GAAG;MACtB,mBAAmB,EAAE,IAAI;MACzB,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,IAAI,GAC1B;;AMnLH,AA8BE,cA9BY,CA8BZ,oBAAoB,CAAC;EACnB,MAAM,ELpBS,GAAG,CAAC,KAAK,CAAC,oCAAoC;EKqB7D,aAAa,EN0BD,GAAG;EMzBf,OAAO,EAAE,IAAI;EACb,MAAM,ENsDI,KAAK;EMrDf,KAAK,EAAE,IAAI,GA6BZ;EAhEH,AAqCI,cArCU,CA8BZ,oBAAoB,CAOlB,YAAY,CAAC;IACX,MAAM,EAAE,IAAI;IACZ,SAAS,EAAE,KAAK,GAoBjB;IA3DL,AAyCM,cAzCQ,CA8BZ,oBAAoB,CAOlB,YAAY,CAIV,iBAAiB,CAAC;MAChB,mBAAmB,EAAE,MAAM;MAC3B,iBAAiB,EAAE,SAAS;MAC5B,eAAe,EAAE,SAAS;MAC1B,uBAAuB,EAAE,IAAI;MAC7B,OAAO,EAAE,KAAK;MACd,IAAI,EAAE,kCAAkC;MACxC,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,MAAM;MACd,KAAK,EAAE,IAAI,GACZ;IAnDP,AAqDM,cArDQ,CA8BZ,oBAAoB,CAOlB,YAAY,CAgBV,oBAAoB,CAAC;MACnB,KAAK,EAAE,gCAAgC;MACvC,SAAS,EAAE,IAAI;MACf,aAAa,EAAE,CAAC;MAChB,UAAU,EAAE,MAAM,GACnB;EAGH,MAAM,EAAE,SAAS,EAAE,MAAM;IA7D7B,AA8BE,cA9BY,CA8BZ,oBAAoB,CAAC;MAgCjB,MAAM,ENgCQ,KAAK,GM9BtB;;AAGH,MAAM,EAAE,SAAS,EAAE,MAAM;EACvB,AAGI,cAHU,CAEZ,aAAa,CACX,aAAa,CAAC;IACZ,qBAAqB,EAAE,uBAAmC,GAC3D;;ACzEP,AACE,gBADc,AACd,QAAS,CAAC;EACR,QAAQ,EAAE,MAAM,GACjB;;AAHH,AAMI,gBANY,AAKd,IAAM,CAAA,AAAA,QAAQ,EACZ,gBAAgB,CAAC;EACf,OAAO,EAAE,IAAI,GACd;;AAIL,AAAA,gBAAgB,CAAC;EACf,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,CAAC;EACN,KAAK,EAAE,KAAK;EACZ,MAAM,EAAE,KAAK;EACb,OAAO,EAAE,KAAK;EACd,WAAW,EAAE,GAAG;EAChB,UAAU,EAAE,YAAY;EACxB,OAAO,EAAE,CAAC,GA2CX;EAnDD,AAUE,gBAVc,AAUd,KAAM,CAAC;IACL,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,CAAC,GAsCX;IAlDH,AAcI,gBAdY,AAUd,KAAM,CAIJ,iBAAiB,CAAC;MAChB,UAAU,EAAE,4BAA4B;MACxC,gBAAgB,EAAE,IAAI;MACtB,SAAS,EAAE,gBAAgB,CAAC,QAAQ;MACpC,OAAO,EAAE,CAAC,GACX;IAnBL,AAqBI,gBArBY,AAUd,KAAM,CAWJ,sBAAsB,CAAC;MACrB,UAAU,EAAE,YAAY;MACxB,OAAO,EAAE,CAAC,GACX;IAxBL,AA0BI,gBA1BY,AAUd,KAAM,CAgBJ,eAAe;IA1BnB,AA2BI,gBA3BY,AAUd,KAAM,CAiBJ,iBAAiB;IA3BrB,AA4BI,gBA5BY,AAUd,KAAM,CAkBJ,cAAc,CAAC;MACb,UAAU,EAAE,4BAA4B;MACxC,SAAS,EAAE,aAAa;MACxB,OAAO,EAAE,CAAC,GACX;IAhCL,AAkCI,gBAlCY,AAUd,KAAM,CAwBJ,eAAe,CAAC;MACd,gBAAgB,EAAE,IAAI,GACvB;IApCL,AAsCI,gBAtCY,AAUd,KAAM,CA4BJ,iBAAiB,CAAC;MAChB,gBAAgB,EAAE,IAAI,GACvB;IAxCL,AA0CI,gBA1CY,AAUd,KAAM,CAgCJ,cAAc,CAAC;MACb,gBAAgB,EAAE,IAAI,GACvB;IA5CL,AA8CI,gBA9CY,AAUd,KAAM,CAoCJ,qBAAqB,CAAC;MACpB,UAAU,EAAE,IAAI;MAChB,OAAO,EAAE,CAAC,GACX;;AAIL,AAAA,WAAW,CAAC;EACV,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EACZ,OAAO,EAAE,KAAK;EACd,UAAU,EAAE,0CAAiC,CAAC,GAAG,CAAE,MAAK,CAAC,MAAM,CAAC,SAAS,EACzE,4FAA8F,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EPlE3G,OAAO;EOoEf,eAAe,EAAE,KAAK,GACvB;;AAED,AAAA,iBAAiB,CAAC;EAChB,SAAS,EAAE,gBAAgB,CAAC,UAAU;EACtC,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,GAAG;EACR,KAAK,EAAE,KAAK;EACZ,OAAO,EAAE,CAAC;EACV,gBAAgB,EPlCV,IAAI;EOmCV,KAAK,EAAE,UAAU;EACjB,KAAK,EPrEG,OAAO;EOsEf,UAAU,EAAE,MAAM;EAClB,OAAO,EAAE,IAAI,GAkGd;EA5GD,AAYE,iBAZe,CAYf,YAAY,CAAC;IACX,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,KAAK;IAChB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO,GAahB;IA9BH,AAmBI,iBAnBa,CAYf,YAAY,CAOV,CAAC,CAAC;MACA,KAAK,EPrFD,OAAO;MOsFX,MAAM,EAAE,OAAO;MACf,eAAe,EAAE,SAAS,GAC3B;IAvBL,AAyBI,iBAzBa,CAYf,YAAY,CAaV,CAAC,AAAA,MAAM;IAzBX,AA0BI,iBA1Ba,CAYf,YAAY,CAcV,CAAC,AAAA,OAAO;IA1BZ,AA2BI,iBA3Ba,CAYf,YAAY,CAeV,CAAC,AAAA,MAAM,CAAC;MACN,KAAK,EPrGD,OAAO,GOsGZ;EA7BL,AAgCE,iBAhCe,CAgCf,YAAY,CAAC;IACX,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,IAAI;IACZ,oBAAoB,EAAE,IAAI;IAC1B,MAAM,EAAE,GAAG,CAAC,KAAK,CPxGX,OAAO;IOyGb,aAAa,EAAE,GAAG;IAClB,SAAS,EAAE,IAAI,GAKhB;IA9CH,AAgCE,iBAhCe,CAgCf,YAAY,AAWV,MAAO,CAAC;MACN,YAAY,EPzGR,OAAO,GO0GZ;EA7CL,AAgDE,iBAhDe,CAgDf,YAAY,CAAC;IACX,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,SAAS,GAClB;EAnDH,AAqDe,iBArDE,CAqDf,YAAY,CAAC,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,GAAG;IACf,OAAO,EAAE,KAAK,GACf;EAzDH,AA2DE,iBA3De,CA2Df,MAAM,CAAC;IACL,aAAa,EAAE,GAAG;IAClB,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,WAAW,GACpB;EAhEH,AAkEE,iBAlEe,CAkEf,gBAAgB,CAAC;IACf,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,GAAG,CAAC,KAAK,CP/IX,OAAO;IOgJb,KAAK,EPpGD,IAAI;IOqGR,gBAAgB,EPlJV,OAAO;IOmJb,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,gBAAgB,GAMtC;IAjFH,AAkEE,iBAlEe,CAkEf,gBAAgB,AAWd,IAAM,EAAA,AAAA,AAAA,QAAC,AAAA,EAAU,OAAO,CAAC;MACvB,UAAU,EPrJN,OAAO;MOsJX,YAAY,EPrJR,OAAO,GOsJZ;EAhFL,AAmFE,iBAnFe,CAmFf,YAAY,CAAC;IACX,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,IAAI;IACnB,gBAAgB,EAAE,OAAO;IACzB,KAAK,EPjKC,OAAO;IOkKb,MAAM,EAAE,GAAG,CAAC,KAAK,CPlKX,OAAO;IOmKb,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,QAAQ;IACjB,UAAU,EAAE,uDAAuD,GAepE;IA3GH,AAmFE,iBAnFe,CAmFf,YAAY,CAWV,AAAA,QAAE,AAAA,EAAU;MACV,gBAAgB,EAAE,OAAO;MACzB,YAAY,EAAE,OAAO;MACrB,KAAK,EAAE,OAAO;MACd,MAAM,EAAE,OAAO;MACf,OAAO,EAAE,GAAG,GACb;IApGL,AAmFE,iBAnFe,CAmFf,YAAY,AAmBV,IAAM,EAAA,AAAA,AAAA,QAAC,AAAA,EAAU,MAAM,CAAC;MACtB,gBAAgB,EPhLZ,OAAO;MOiLX,YAAY,EPhLR,OAAO;MOiLX,KAAK,EPrIH,IAAI,GOsIP;;AAIL,AAAA,sBAAsB,CAAC;EACrB,QAAQ,EAAE,QAAQ;EAClB,KAAK,EAAE,YAAY;EACnB,KAAK,EAAE,IAAI;EACX,KAAK,EAAE,KAAK,GACb;;AAED,AAAA,iBAAiB,CAAC;EAChB,WAAW,EAAE,GAAG;EAChB,aAAa,EAAE,IAAI;EACnB,SAAS,EAAE,KAAK;EAChB,UAAU,EAAE,8CAAqC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS;EACzE,cAAc,EAAE,KAAK,GACtB;;AAED,AAAA,cAAc,CAAC;EACb,KAAK,EP1JC,IAAI;EO2JV,OAAO,EAAE,KAAK;EACd,eAAe,EAAE,SAAS,GAO3B;EAVD,AAKE,cALY,AAKZ,MAAO,EALT,AAME,cANY,AAMZ,OAAQ,EANV,AAOE,cAPY,AAOZ,MAAO,CAAC;IACN,KAAK,EPjKD,IAAI,GOkKT;;AAGH,AAAA,eAAe,CAAC;EACd,UAAU,EAAE,+CAA+C,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS;EAC9E,eAAe,EAAE,SAAS;EAC1B,MAAM,EAAE,WAAW;EACnB,WAAW,EAAE,KAAK;EAClB,WAAW,EAAE,GAAG,GACjB;;CAED,AAAA,AACE,GADD,CAAI,KAAK,AAAT,EACC,eAAe,CAAC;EACd,mBAAmB,EAAE,SAAS,GAC/B;;AAGH,AAAA,qBAAqB,CAAC;EACpB,QAAQ,EAAE,QAAQ;EAClB,MAAM,EAAE,CAAC;EACT,KAAK,EAAE,CAAC;EACR,GAAG,EAAE,CAAC;EACN,IAAI,EAAE,CAAC;EACP,KAAK,EPzLC,IAAI;EO0LV,MAAM,EAAE,KAAK;EACb,MAAM,EAAE,IAAI;EACZ,KAAK,EAAE,KAAK;EACZ,OAAO,EAAE,EAAE;EACX,UAAU,EAAE,YAAY;EACxB,OAAO,EAAE,CAAC,GACX;;AAED,AAAA,eAAe;AACf,AAAA,iBAAiB;AACjB,AAAA,cAAc,CAAC;EACb,OAAO,EAAE,CAAC;EACV,SAAS,EAAE,gBAAgB,GAC5B;;ACtPD,AAAA,MAAM,CAAC;EACL,KAAK,EAAE,2CAA2C;EAClD,SAAS,EAAE,IAAI;EACf,WAAW,EAAE,GAAG;EAChB,UAAU,ERgGO,IAAI,GQxBtB;EAtEC,MAAM,EAAE,SAAS,EAAE,KAAK;IAN1B,AAAA,MAAM,CAAC;MAOH,WAAW,EAAE,IAAI,GAqEpB;EA5ED,AAUE,MAVI,CAUJ,EAAE,CAAC;IACD,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC,GAKX;IAJC,MAAM,EAAE,SAAS,EAAE,KAAK;MAb5B,AAUE,MAVI,CAUJ,EAAE,CAAC;QAIC,OAAO,EAAE,MAAM;QACf,oBAAoB,EAAE,IAAI,GAE7B;EAjBH,AAoBK,MApBC,CAoBJ,EAAE,CAAC,EAAE,CAAC;IACJ,OAAO,EAAE,YAAY,GAUtB;IA/BH,AAoBK,MApBC,CAoBJ,EAAE,CAAC,EAAE,AAGH,OAAQ,CAAC;MACP,OAAO,EAAE,KAAK;MACd,OAAO,EAAE,GAAG,GACb;IA1BL,AAoBK,MApBC,CAoBJ,EAAE,CAAC,EAAE,AAQH,WAAY,AAAA,OAAO,CAAC;MAClB,OAAO,EAAE,IAAI,GACd;EA9BL,AAiCE,MAjCI,CAiCJ,WAAW,CAAC;IACV,KAAK,EAAE,kCAAkC;IACzC,WAAW,EAAE,IAAI,GAClB;EApCH,AAsCE,MAtCI,CAsCJ,gBAAgB,CAAC;IACf,KAAK,EAAE,kCAAkC;IACzC,WAAW,EAAE,IAAI,GA2BlB;IAzBC,MAAM,EAAE,SAAS,EAAE,KAAK;MA1C5B,AAsCE,MAtCI,CAsCJ,gBAAgB,CAAC;QAOb,KAAK,EAAE,KAAK,GAsBf;QAnEH,AAsCE,MAtCI,CAsCJ,gBAAgB,AASZ,IAAM,CAAA,AAAA,GAAG,EAAE;UACT,KAAK,EAAE,IAAI,GACZ;IAjDP,AAsCE,MAtCI,CAsCJ,gBAAgB,AAcd,OAAQ,CAAC;MACP,UAAU,EAAE,oDAA2C,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM;MAC/E,OAAO,EAAE,EAAE;MACX,uBAAuB,EAAE,IAAI;MAC7B,OAAO,EAAE,YAAY;MACrB,IAAI,EAAE,kCAAkC;MACxC,MAAM,EAAE,IAAI;MACZ,mBAAmB,EAAE,GAAG;MACxB,cAAc,EAAE,GAAG;MACnB,KAAK,EAAE,IAAI,GACZ;IA9DL,AAsCE,MAtCI,CAsCJ,gBAAgB,AA0Bd,IAAM,CAAA,AAAA,GAAG,CAAC,OAAO,CAAE;MACjB,SAAS,EAAE,UAAU,GACtB;EAlEL,AAuEE,MAvEI,AAuEJ,OAAQ,CAAC;IACP,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,KAAK,GACf;;AC3EH,AAAA,eAAe,CAAC;EASd,MAAM,EAAE,OAAO;EACf,OAAO,EAAE,IAAI;EACb,MAAM,EAVU,IAAI;EAWpB,aAAa,EToDG,IAAoC;ESnDpD,QAAQ,EAAE,QAAQ;EAClB,KAAK,EAAE,IAAI,GAuDZ;EArED,AAgBE,eAhBa,CAgBb,KAAK,CAAC;IACJ,UAAU,EAAE,sCAAsC,CAAC,yBAAyB,CAdxD,GAAG,CAc2E,WAA0B,CAAC,SAAS;IACtI,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,iCAAiC;IACnD,UAAU,ERDK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CDJpB,qBAAO,ESKkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CTmBpC,mBAAI;ISlBR,SAAS,EAAE,IAAI;IACf,uBAAuB,EAAE,IAAI;IAC7B,IAAI,EAAE,+BAA+B;IACrC,OAAO,EAAE,CAAC;IACV,kBAAkB,EAlBE,IAAI;IAmBxB,oBAAoB,EArBF,IAA4C;IAsB9D,KAAK,EAAE,IAAI,GAKZ;IA/BH,AAgBE,eAhBa,CAgBb,KAAK,AAYH,IAAM,CAAA,AAAA,GAAG,EAAE;MACT,qBAAqB,EAAE,KAAK,CA1BV,GAAG,GA2BtB;EA9BL,AAiCU,eAjCK,AAiCb,MAAO,CAAC,KAAK,CAAC;IACZ,UAAU,ERhBK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CDJpB,qBAAO,ESoBkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CTIpC,mBAAI,GSHT;EAnCH,AAqCW,eArCI,AAqCb,OAAQ,CAAC,KAAK;EArChB,AAsCE,eAtCa,CAsCb,KAAK,AAAA,MAAM,CAAC;IACV,MAAM,ERzBY,GAAG,CAAC,KAAK,CAAC,iCAAiC;IQ0B7D,UAAU,EAAE,qCAAqC,GAClD;EAzCH,AA2CE,eA3Ca,CA2Cb,cAAc,CAAC;IACb,UAAU,EArCI,wCAAwC,CAqC3B,SAAS,CAAC,MAAM,CAAC,MAAM;IAClD,eAAe,EAAE,SAAS;IAC1B,MAAM,EAAE,CAAC;IACT,aAAa,EAAE,CAAC,CTWJ,GAAG,CAAH,GAAG,CSXgC,CAAC;IAChD,uBAAuB,EAAE,IAAI;IAC7B,IAAI,EAAE,+BAA+B;IACrC,MAAM,EAAE,IAAI;IACZ,iBAAiB,EAAE,CAAC;IACpB,QAAQ,EAAE,QAAQ;IAClB,KAAK,EA/Ce,IAAI,GA8DzB;IApEH,AA2CE,eA3Ca,CA2Cb,cAAc,AAYZ,MAAO,EAvDX,AA2CE,eA3Ca,CA2Cb,cAAc,AAaZ,MAAO,CAAC;MACN,gBAAgB,ET3CZ,qBAAO;MS4CX,MAAM,EAAE,OAAO,GAChB;IA3DL,AA2CE,eA3Ca,CA2Cb,cAAc,AAkBZ,OAAQ,CAAC;MACP,gBAAgB,EThDZ,qBAAO,GSiDZ;IA/DL,AA2CE,eA3Ca,CA2Cb,cAAc,AAsBZ,IAAM,CAAA,AAAA,GAAG,EAAE;MACT,SAAS,EAAE,UAAU,GACtB;;AAMH,AAAA,6BAA6B,CAAC;EAC5B,gBAAgB,EAAE,mCAAmC;EACrD,MAAM,EAAE,CAAC;EACT,UAAU,ET4BQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAlExB,kBAAI,EAkEgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAlE7C,kBAAI;ESuCR,SAAS,EAAE,eAAgC,GA0E5C;EA9ED,AAME,6BAN2B,CAM3B,oBAAoB,CAAC;IACnB,gBAAgB,EAAE,0CAA0C;IAC5D,KAAK,EAAE,kCAAkC,GAC1C;EATH,AAWE,6BAX2B,CAW3B,oBAAoB,EAXtB,AAYE,6BAZ2B,CAY3B,4BAA4B,CAAC;IAC3B,YAAY,EAAE,oCAAoC,GACnD;EAdH,AAgBE,6BAhB2B,CAgB3B,6BAA6B,CAAC;IAC5B,MAAM,EAAE,CAAC,GACV;EAlBH,AAoBE,6BApB2B,CAoB3B,0BAA0B,CAAC;IACzB,gBAAgB,EAAE,0CAA0C;IAC5D,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,oCAAoC,GAC3D;EAvBH,AAyBE,6BAzB2B,CAyB3B,wCAAwC,CAAC;IACvC,KAAK,EAAE,gCAAgC,GACxC;EA3BH,AA6BE,6BA7B2B,CA6B3B,kCAAkC,CAAC;IACjC,gBAAgB,EAAE,mCAAmC,GACtD;EA/BH,AAiCE,6BAjC2B,CAiC3B,2BAA2B,AACzB,SAAU,CAAC;IACT,UAAU,EAAE,iCAAiC;IAC7C,KAAK,EAAE,gCAAgC,GASxC;IA7CL,AAiCE,6BAjC2B,CAiC3B,2BAA2B,AACzB,SAAU,AAIR,OAAQ,CAAC;MACP,UAAU,EAAE,kCAAkC,GAC/C;IAxCP,AA0CM,6BA1CuB,CAiC3B,2BAA2B,AACzB,SAAU,CAQR,YAAY,CAAC;MACX,IAAI,EAAE,kCAAkC,GACzC;EA5CP,AAiDI,6BAjDyB,CAgD3B,0BAA0B,CACxB,kCAAkC,CAAC;IACjC,gBAAgB,EAAE,0CAA0C,GAC7D;EAnDL,AAsDE,6BAtD2B,CAsD3B,wBAAwB,CAAC;IAIvB,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,qIAA+L,CAAC,CAAC;IAC/M,iBAAiB,EAAE,SAAS;IAC5B,QAAQ,EAAE,QAAQ,GASnB;IAtEH,AAsDE,6BAtD2B,CAsD3B,wBAAwB,AAStB,SAAU,CAAC;MACT,UAAU,EAAE,iCAAiC,GAC9C;IAjEL,AAsDE,6BAtD2B,CAsD3B,wBAAwB,AAatB,OAAQ,CAAC;MACP,UAAU,EAAE,kCAAkC,GAC/C;EArEL,AAwEE,6BAxE2B,CAwE3B,4BAA4B,AAC1B,MAAO,CAAC;IACN,UAAU,EAAE,iCAAiC;IAC7C,KAAK,EAAE,gCAAgC,GACxC;;ACrJP,AAAA,aAAa,CAAC;EACZ,UAAU,EAAE,0CAA0C;EACtD,aAAa,EVwGc,GAAG;EUvG9B,UAAU,EVqGU,CAAC,CAAC,GAAG,CAAC,IAAI,CAlExB,kBAAI,EAkEgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAlE7C,kBAAI;EUlCV,OAAO,EAAE,KAAK;EACd,SAAS,EVoGc,IAAI;EUnG3B,mBAAmB,EAAE,GAAG;EACxB,mBAAmB,EAAE,IAAI;EACzB,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,MAA+B;EACpC,OAAO,EAAE,KAAK,GAyCf;EAnDD,AAYI,aAZS,GAYT,EAAE,CAAC;IACH,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,CAAC;IACT,OAAO,EV4FkB,GAAG,CU5FS,CAAC,GAmCvC;IAlDH,AAiBM,aAjBO,GAYT,EAAE,GAKA,EAAE,CAAC;MACH,MAAM,EAAE,CAAC;MACT,KAAK,EAAE,IAAI,GA8BZ;MAjDL,AAiBM,aAjBO,GAYT,EAAE,GAKA,EAAE,AAIF,UAAW,CAAC;QACV,aAAa,ETXF,GAAG,CAAC,KAAK,CAAC,oCAAoC;QSYzD,MAAM,EVoFe,GAAG,CUpFY,CAAC,GACtC;MAxBP,AA0BQ,aA1BK,GAYT,EAAE,GAKA,EAAE,GASA,CAAC,CAAC;QACF,WAAW,EAAE,MAAM;QACnB,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,IAAI;QACb,OAAO,EV2Ea,GAAG,CAAC,IAAI;QU1E5B,WAAW,EAAE,MAAM,GAcpB;QAhDP,AA0BQ,aA1BK,GAYT,EAAE,GAKA,EAAE,GASA,CAAC,AAUD,SAAW,CAAA,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE;UACzB,UAAU,EAAE,iCAAiC,GAC9C;QAtCT,AA0BQ,aA1BK,GAYT,EAAE,GAKA,EAAE,GASA,CAAC,AAcD,OAAQ,CAAC;UACP,UAAU,EAAE,kCAAkC,GAC/C;QA1CT,AA0BQ,aA1BK,GAYT,EAAE,GAKA,EAAE,GASA,CAAC,AAkBD,SAAU,CAAC;UACT,OAAO,EAAE,GAAG;UACZ,cAAc,EAAE,IAAI,GACrB;;AC/CT,AACE,oBADkB,CAClB,MAAM,CAAC;EACL,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CXoCnB,kBAAI;EWnCR,IAAI,EAAE,GAAG;EACT,WAAW,EAAE,MAAM;EACnB,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,GAAG;EACR,KAAK,EAAE,KAAK,GACb;;AARH,AAUE,oBAVkB,CAUlB,OAAO,CAAC;EACN,MAAM,EAAE,CAAC,GACV;;AAZH,AAcE,oBAdkB,CAclB,cAAc,CAAC;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,cAAc,EAAE,CAAC,GAMlB;EAvBH,AAmBI,oBAnBgB,CAclB,cAAc,CAKZ,CAAC,CAAC;IACA,MAAM,EAAE,CAAC;IACT,aAAa,EAAE,IAAI,GACpB;;AAtBL,AAyBE,oBAzBkB,CAyBlB,QAAQ,CAAC;EACP,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,IAAI;EACb,SAAS,EAAE,MAAM;EACjB,OAAO,EAAE,MAAM,GAchB;EA3CH,AA+BI,oBA/BgB,CAyBlB,QAAQ,CAMN,MAAM,CAAC;IACL,iBAAiB,EAAE,IAAI;IACvB,kBAAkB,EAAE,IAAI;IACxB,oBAAoB,EAAE,IAAI;IAC1B,WAAW,EAAE,MAAM;IACnB,KAAK,EAAE,GAAG,GAMX;IA1CL,AA+BI,oBA/BgB,CAyBlB,QAAQ,CAMN,MAAM,AAOJ,KAAM,CAAC;MACL,iBAAiB,EAAE,CAAC;MACpB,mBAAmB,EAAE,CAAC,GACvB;;AAzCP,AA6CE,oBA7CkB,CA6ClB,KAAK,CAAC;EACJ,iBAAiB,EAAE,IAAI,GACxB;;AAGH,AAAA,cAAc,CAAC;EACb,UAAU,EAAE,2BAA2B;EACvC,MAAM,EAAE,IAAI;EACZ,IAAI,EAAE,CAAC;EACP,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,CAAC;EACN,KAAK,EAAE,IAAI;EACX,OAAO,EAAE,KAAK,GACf;;AAED,AAAA,MAAM,CAAC;EACL,UAAU,EAAE,yBAAyB;EACrC,MAAM,EVnDW,GAAG,CAAC,KAAK,CAAC,oCAAoC;EUoD/D,aAAa,EAAE,GAAG;EAClB,SAAS,EAAE,IAAI;EACf,OAAO,EAAE,KAAK,GACf;;AClED,AAAA,WAAW,CAAC;EAEV,UAAU,EAAE,mCAAmC;EAC/C,aAAa,EZuDC,GAAG;EYtDjB,OAAO,EAAE,YAAY;EACrB,MAAM,EZmFM,KAAK;EYlFjB,iBAAiB,EZuDL,IAAI;EYtDhB,QAAQ,EAAE,QAAQ;EAClB,KAAK,EAAE,IAAI,GAkKZ;EA1KD,AZkIE,WYlIS,CZkIT,oBAAoB,CAAC;IACnB,eAAe,EAAE,WAAW;IAC5B,gBAAgB,EAAE,sCAAsC;IACxD,gBAAgB,EAAE,4CAA4C;IAC9D,mBAAmB,EAAE,GAAG;IACxB,MAAM,EC7HO,GAAG,CAAC,KAAK,CAAC,kCAAkC;ID8HzD,aAAa,EAAE,IAAI;IACnB,UAAU,EAlCkB,CAAC,CAAC,GAAG,CAzF3B,qBAAO;IA4Hb,MAAM,EAAE,OAAO;IACf,IAAI,EAAE,gCAAgC;IACtC,MAAM,EAtCiB,IAAI;IAuC3B,iBAAiB,EAAI,OAA6B;IAClD,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAI,OAA6B;IACpC,SAAS,EAAE,WAAW;IACtB,mBAAmB,EAAE,KAAK;IAC1B,mBAAmB,EAAE,kBAAkB;IACvC,KAAK,EA9CkB,IAAI,GAoD5B;IY1JH,AZkIE,WYlIS,CZkIT,oBAAoB,AAoBnB,SAAY,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EAAE;MAC1B,OAAO,EAAE,CAAC;MACV,SAAS,EAAE,QAAQ,GACpB;EYzJL,AAUE,WAVS,AAUT,YAAa,CAAC;IACZ,UAAU,EAAE,WAAW,GAUxB;IArBH,AAaI,WAbO,AAUT,YAAa,CAGX,KAAK,CAAC;MACJ,UAAU,EAAE,KAAK,CXFJ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,oCAAoC,GWG5D;IAfL,AAiBI,WAjBO,AAUT,YAAa,CAOX,yBAAyB;IAjB7B,AAkBI,WAlBO,AAUT,YAAa,CAQX,aAAa,CAAC;MACZ,OAAO,EAAE,IAAI,GACd;EApBL,AAuBE,WAvBS,CAuBT,KAAK,CAAC;IACJ,aAAa,EZkCD,GAAG;IYjCf,UAAU,EAAE,yBAAyB;IACrC,MAAM,EAAE,IAAI,GACb;EA3BH,AA6BI,WA7BO,GA6BP,CAAC,CAAC;IACF,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,IAAI,GAWZ;IA9CH,AAsCM,WAtCK,GA6BP,CAAC,AAQD,SAAW,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EACxB,KAAK,CAAC;MZuFV,UAAU,EC5GK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uCAAuC;MD6GhE,UAAU,EAAE,gBAAgB,GYtFvB;IAxCP,AA0CM,WA1CK,GA6BP,CAAC,AAQD,SAAW,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EAKxB,WAAW,CAAC;MACV,KAAK,EAAE,gCAAgC,GACxC;EA5CP,AAgDE,WAhDS,AAgDT,SAAW,CAAA,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE,AAAA,OAAO,CAAC,IAAK,CAAA,AAAA,YAAY,EAAE;IZ6EtD,UAAU,EC5GK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uCAAuC;ID6GhE,UAAU,EAAE,gBAAgB;IY3E1B,OAAO,EAAE,IAAI,GAad;IAhEH,AZ8JE,WY9JS,AAgDT,SAAW,CAAA,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE,AAAA,OAAO,CAAC,IAAK,CAAA,AAAA,YAAY,EZ8GpD,oBAAoB,CAAC;MACnB,OAAO,EAAE,CAAC;MACV,SAAS,EAAE,QAAQ,GACpB;IYjKH,AAqDI,WArDO,AAgDT,SAAW,CAAA,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE,AAAA,OAAO,CAAC,IAAK,CAAA,AAAA,YAAY,EAKlD,WAAW,CAAC;MACV,KAAK,EAAE,gCAAgC,GACxC;IAvDL,AAyDiB,WAzDN,AAgDT,SAAW,CAAA,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE,AAAA,OAAO,CAAC,IAAK,CAAA,AAAA,YAAY,EASlD,UAAU,GAAG,eAAe,CAAC;MAC3B,OAAO,EAAE,IAAI,GACd;IA3DL,AA6DI,WA7DO,AAgDT,SAAW,CAAA,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE,AAAA,OAAO,CAAC,IAAK,CAAA,AAAA,YAAY,EAalD,eAAe,AAAA,UAAU,CAAC;MACxB,OAAO,EAAE,KAAK,GACf;EA/DL,AAkEE,WAlES,CAkET,yBAAyB,CAAC;IACxB,gBAAgB,EZ3DV,OAAO;IY4Db,aAAa,EZVD,GAAG,CAAH,GAAG,CYU8B,CAAC,CAAC,CAAC;IAChD,MAAM,EZoBkB,KAAK;IYnB7B,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,QAAQ,GAuBnB;IA9FH,AAkEE,WAlES,CAkET,yBAAyB,AAOvB,OAAQ,CAAC;MACP,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,iCAAiC;MAC1D,MAAM,EAAE,CAAC;MACT,OAAO,EAAE,EAAE;MACX,QAAQ,EAAE,QAAQ;MAClB,KAAK,EAAE,IAAI,GACZ;IA/EL,AAiFI,WAjFO,CAkET,yBAAyB,CAevB,mBAAmB,CAAC;MAClB,mBAAmB,EAAE,MAAM;MAC3B,iBAAiB,EAAE,SAAS;MAC5B,eAAe,EAAE,KAAK;MACtB,MAAM,EAAE,IAAI;MACZ,OAAO,EAAE,CAAC;MACV,UAAU,EAAE,OAAO,CAAC,EAAE,CZ/BZ,8BAA8B;MYgCxC,KAAK,EAAE,IAAI,GAKZ;MA7FL,AAiFI,WAjFO,CAkET,yBAAyB,CAevB,mBAAmB,AASjB,OAAQ,CAAC;QACP,OAAO,EAAE,CAAC,GACX;EA5FP,AAgGE,WAhGS,CAgGT,aAAa,CAAC;IACZ,OAAO,EAAE,cAAc,GACxB;EAlGH,AAoGE,WApGS,CAoGT,UAAU,CAAC;IACT,UAAU,EAAE,IAA+C;IAC3D,QAAQ,EAAE,MAAM,GAejB;IArHH,AAoGE,WApGS,CAoGT,UAAU,AAIR,aAAc,EAxGlB,AAoGE,WApGS,CAoGT,UAAU,AAKR,WAAY,CAAC;MACX,UAAU,EAAE,IAA+C,GAC5D;IA3GL,AAoGE,WApGS,CAoGT,UAAU,AASR,aAAc,AAAA,WAAW,CAAC;MACxB,UAAU,EAAE,KAA+C,GAC5D;IA/GL,AAiH2B,WAjHhB,CAoGT,UAAU,AAaR,IAAM,CAAA,AAAA,eAAe,EAAE,WAAW,CAAC;MACjC,UAAU,EAAE,IAA0B;MACtC,QAAQ,EAAE,MAAM,GACjB;EApHL,AAuHE,WAvHS,CAuHT,eAAe,CAAC;IACd,KAAK,EAAE,kCAAkC;IACzC,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,MAAM;IAChB,cAAc,EAAE,GAAG;IACnB,aAAa,EAAE,QAAQ;IACvB,cAAc,EAAE,SAAS,GAC1B;EA9HH,AAgIE,WAhIS,CAgIT,eAAe,AAAA,UAAU,CAAC;IAAE,OAAO,EAAE,IAAI,GAAK;EAhIhD,AAkIE,WAlIS,CAkIT,WAAW,CAAC;IACV,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,GAAG;IAChB,WAAW,EZ1CS,IAAI;IY2CxB,MAAM,EAAE,CAAC,CAAC,CAAC,CZ5CK,GAAG;IY6CnB,SAAS,EAAE,UAAU,GACtB;EAxIH,AA0IE,WA1IS,CA0IT,iBAAiB,CAAC;IAChB,SAAS,EAAE,IAAI;IACf,WAAW,EZjDS,IAAI;IYkDxB,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,UAAU,GACtB;EAhJH,AAkJE,WAlJS,CAkJT,aAAa,CAAC;IACZ,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,iCAAiC;IACxC,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,CAAC;IACP,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,CAAC,GACT;EA3JH,AA6JE,WA7JS,CA6JT,kBAAkB,CAAC;IACjB,IAAI,EAAE,iCAAiC;IACvC,MAAM,EAAE,IAAI;IACZ,iBAAiB,EAAE,GAAG,GACvB;EAjKH,AAmKE,WAnKS,CAmKT,mBAAmB,CAAC;IAClB,SAAS,EAAE,CAAC;IACZ,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,MAAM;IAChB,aAAa,EAAE,QAAQ;IACvB,WAAW,EAAE,MAAM,GACpB;;AAMC,MAAM,EAAE,SAAS,EAAE,MAAM;EAH7B,AACE,aADW,CACX,WAAW,CAAC;IAIR,MAAM,EZnFQ,KAAK,GY4HtB;IA9CH,AAOM,aAPO,CACX,WAAW,CAMP,yBAAyB,CAAC;MACxB,MAAM,EZrFoB,KAAK,GYsFhC;IATP,AAWM,aAXO,CACX,WAAW,CAUP,aAAa,CAAC;MACZ,OAAO,EAAE,cAAc,GACxB;IAbP,AAeM,aAfO,CACX,WAAW,CAcP,UAAU,CAAC;MACT,UAAU,EAAE,KAAqC,GAClD;IAjBP,AAmBM,aAnBO,CACX,WAAW,CAkBP,eAAe,CAAC;MACd,SAAS,EAAE,IAAI;MACf,cAAc,EAAE,GAAG,GACpB;IAtBP,AAwBM,aAxBO,CACX,WAAW,CAuBP,WAAW,CAAC;MACV,SAAS,EAAE,IAAI;MACf,WAAW,EAtBC,IAAI;MAuBhB,aAAa,EAAE,CAAC,GACjB;IA5BP,AA+BQ,aA/BK,CACX,WAAW,CA6BP,UAAU,AAAA,IAAK,CAAA,AAAA,eAAe,EAC5B,WAAW,CAAC;MACV,UAAU,EAAE,IAAgB,GAC7B;IAjCT,AAoCM,aApCO,CACX,WAAW,CAmCP,iBAAiB,CAAC;MAChB,SAAS,EAAE,IAAI;MACf,WAAW,EAlCC,IAAI,GAmCjB;IAvCP,AAyCM,aAzCO,CACX,WAAW,CAwCP,aAAa,CAAC;MACZ,MAAM,EAAE,GAAG;MACX,SAAS,EAAE,IAAI,GAChB;;AAKP,AACE,cADY,CACZ,WAAW,CAAC;EACV,MAAM,EZ9HY,KAAK,GY8MxB;EAlFH,AAII,cAJU,CACZ,WAAW,CAGT,yBAAyB,CAAC;IACxB,MAAM,EZhIwB,KAAK,GYiIpC;EANL,AAQI,cARU,CACZ,WAAW,CAOT,aAAa,CAAC;IACZ,OAAO,EAAE,SAAS,GACnB;EAVL,AAYI,cAZU,CACZ,WAAW,CAWT,eAAe,CAAC;IACd,WAAW,EAAE,IAAI,GAClB;EAdL,AAiBM,cAjBQ,CACZ,WAAW,CAeT,UAAU,CACR,WAAW;EAjBjB,AAkB6B,cAlBf,CACZ,WAAW,CAeT,UAAU,AAER,IAAM,CAAA,AAAA,eAAe,EAAE,WAAW,CAAC;IACjC,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,MAAM;IAChB,aAAa,EAAE,QAAQ;IACvB,WAAW,EAAE,MAAM,GACpB;EAzBP,AA4BI,cA5BU,CACZ,WAAW,CA2BT,iBAAiB,CAAC;IAChB,OAAO,EAAE,IAAI,GACd;EA9BL,AAgCI,cAhCU,CACZ,WAAW,CA+BT,aAAa,CAAC;IAGZ,gBAAgB,EAAE,mCAAmC;IACrD,aAAa,EAAE,IAAmB;IAClC,MAAM,EAHW,IAAI;IAIrB,KAAK,EAJY,IAAI;IAKrB,OAAO,EAAE,GAAkC;IAC3C,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,IAAI;IACV,iBAAiB,EAAE,IAAI,GAuCxB;IAjFL,AAgCI,cAhCU,CACZ,WAAW,CA+BT,aAAa,AAYX,OAAQ,CAAC;MACP,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,iCAAiC;MACnD,aAAa,EAAE,CAAC;MAChB,aAAa,EAAE,IAAqB,CAAC,IAAqB,CAAC,CAAC,CAAC,CAAC;MAC9D,OAAO,EAAE,EAAE;MACX,QAAQ,EAAE,QAAQ;MAClB,MAAM,EAAE,GAAG;MACX,KAAK,EAAE,IAAI;MACX,GAAG,EAAE,CAAC;MACN,IAAI,EAAE,CAAC,GACR;IAtDP,AAwDM,cAxDQ,CACZ,WAAW,CA+BT,aAAa,CAwBX,kBAAkB,CAAC;MACjB,iBAAiB,EAAE,CAAC;MACpB,MAAM,EAzBI,IAAI;MA0Bd,KAAK,EA1BK,IAAI,GA2Cf;MA5EP,AAwDM,cAxDQ,CACZ,WAAW,CA+BT,aAAa,CAwBX,kBAAkB,AAKhB,oBAAqB,CAAC;QACpB,IAAI,EZzOO,OAAO,GY0OnB;MA/DT,AAwDM,cAxDQ,CACZ,WAAW,CA+BT,aAAa,CAwBX,kBAAkB,AAShB,cAAe,CAAC;QACd,IAAI,EZ5OO,OAAO,GY6OnB;MAnET,AAwDM,cAxDQ,CACZ,WAAW,CA+BT,aAAa,CAwBX,kBAAkB,AAahB,kBAAmB,CAAC;QAClB,IAAI,EZ/OM,OAAO,GYgPlB;MAvET,AAwDM,cAxDQ,CACZ,WAAW,CA+BT,aAAa,CAwBX,kBAAkB,AAiBhB,YAAa,CAAC;QACZ,IAAI,EZlPK,OAAO,GYmPjB;IA3ET,AA8EM,cA9EQ,CACZ,WAAW,CA+BT,aAAa,CA8CX,mBAAmB,CAAC;MAClB,OAAO,EAAE,IAAI,GACd;;AAIL,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,MAAM;EApFvC,AAqFI,cArFU,CAqFV,gBAAgB,CAAC;IACf,OAAO,EAAE,IAAI,GACd;;ACpTL,AAAA,2BAA2B,CAAC;EAC1B,KAAK,EAAE,oCAAoC;EAC3C,SAAS,EAAE,IAAI;EACf,WAAW,EAAE,IAAI;EACjB,aAAa,Eb4DG,IAAoC;Ea3DpD,UAAU,EAAE,MAAM,GA0BnB;EAxBC,MAAM,EAAE,SAAS,EAAE,KAAK;IAP1B,AAAA,2BAA2B,CAAC;MAQxB,OAAO,EAAE,IAAI;MACb,eAAe,EAAE,aAAa;MAC9B,UAAU,EAAE,IAAI,GAqBnB;EA/BD,AAaE,2BAbyB,CAazB,CAAC,CAAC;IACA,MAAM,EAAE,CAAC,GAMV;IALC,MAAM,EAAE,SAAS,EAAE,KAAK;MAf5B,AAaE,2BAbyB,CAazB,CAAC,CAAC;QAGE,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,IAAI;QACb,eAAe,EAAE,aAAa,GAEjC;EApBH,AAsBE,2BAtByB,CAsBzB,KAAK,CAAC;IACJ,OAAO,EAAE,IAAI,GAOd;IANC,MAAM,EAAE,SAAS,EAAE,KAAK;MAxB5B,AAsBE,2BAtByB,CAsBzB,KAAK,CAAC;QAGF,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,kCAAkC;QACxC,iBAAiB,EAAE,GAAG,GAEzB;;AAGH,AAAA,yBAAyB,CAAC;EACxB,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,KAAK;EACd,SAAS,EAAE,MAAM,GAelB;EAbC,MAAM,EAAE,SAAS,EAAE,KAAK;IAL1B,AAAA,yBAAyB,CAAC;MAMtB,OAAO,EAAE,IAAI;MACb,eAAe,EAAE,aAAa;MAC9B,OAAO,EAAE,CAAC,GAUb;EAlBD,AAWE,yBAXuB,CAWvB,MAAM,CAAC;IACL,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,CAAC;IACT,mBAAmB,EAAE,IAAI;IACzB,OAAO,EAAE,MAAM,GAChB;;AClDH,AAAA,oBAAoB,CAAC;EACnB,OAAO,Ed8DkB,IAAI,CADF,IAAI;Ec5D/B,gBAAgB,EAAE,KAAK;EACvB,mBAAmB,EAAE,KAAK;EAC1B,mBAAmB,EAAE,gBAAgB,GAiKtC;EArKD,AAME,oBANkB,CAMlB,cAAc,CAAC;IACb,SAAS,Ed8Ea,IAAI;Ic7E1B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,CAAC;IACT,cAAc,EAAE,SAAS,GAmB1B;IA7BH,AAYI,oBAZgB,CAMlB,cAAc,CAMZ,IAAI,CAAC;MACH,KAAK,EAAE,uCAAuC;MAC9C,OAAO,EAAE,YAAY;MACrB,IAAI,EAAE,uCAAuC;MAC7C,cAAc,EAAE,MAAM,GACvB;IAjBL,AAmBI,oBAnBgB,CAMlB,cAAc,CAaZ,aAAa,CAAC;MACZ,MAAM,EAAE,OAAO;MACf,cAAc,EAAE,GAAG;MACnB,WAAW,EAAE,MAAM,GACpB;IAvBL,AAyBI,oBAzBgB,CAMlB,cAAc,CAmBZ,kBAAkB,CAAC;MACjB,mBAAmB,EAAE,GAAG;MACxB,UAAU,EAAE,IAAI,GACjB;EA5BL,AA+BE,oBA/BkB,CA+BlB,gBAAgB,CAAC;IACf,MAAM,EAAE,IAAI;IACZ,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,QAAQ,GA6BnB;IA/DH,AAoCI,oBApCgB,CA+BlB,gBAAgB,CAKd,oBAAoB,CAAC;MACnB,UAAU,EAAE,4CAA4C,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM;MAC/E,MAAM,EAAE,CAAC;MACT,MAAM,EAAE,OAAO;MACf,IAAI,EAAE,uCAAuC;MAC7C,MAAM,EAAE,IAAI;MACZ,iBAAiB,EAAE,CAAC;MACpB,OAAO,EAAE,CAAC;MACV,QAAQ,EAAE,QAAQ;MAClB,GAAG,EAAE,CAAC;MACN,mBAAmB,EAAE,KAAK;MAC1B,mBAAmB,EAAE,OAAO;MAC5B,KAAK,EdsDgB,IAAI,GchD1B;MAtDL,AAoCI,oBApCgB,CA+BlB,gBAAgB,CAKd,oBAAoB,AAclB,SAAW,CAAA,AAAA,OAAO,EAAE,AAAA,MAAM,EAAE,AAAA,MAAM,EAAE;QAClC,IAAI,EdrCF,OAAO;QcsCT,OAAO,EAAE,CAAC,GACX;IArDP,AAwDI,oBAxDgB,CA+BlB,gBAAgB,CAyBd,aAAa,CAAC;MACZ,GAAG,EAAE,IAAI,GACV;IAED,MAAM,EAAE,SAAS,EAAE,MAAM;MA5D7B,Ad8KE,oBc9KkB,CA+BlB,gBAAgB,Cd+IhB,aAAa,CAAC;QACZ,iBAAiB,EAAE,GAAG;QACtB,mBAAmB,EAAE,IAAI;QACzB,iBAAiB,EAAE,CAAC;QACpB,mBAAmB,EAAE,IAAI,GAC1B;EcnLH,AAoEM,oBApEc,AAiElB,MAAO,CAEL,gBAAgB,CACd,oBAAoB,EApE1B,AAoEM,oBApEc,AAkElB,OAAQ,CACN,gBAAgB,CACd,oBAAoB,CAAC;IACnB,OAAO,EAAE,CAAC,GACX;EAtEP,AA0EE,oBA1EkB,AA0ElB,OAAQ,CAAC;IACP,UAAU,EAAE,iCAAiC;IAC7C,aAAa,EAAE,GAAG,GAOnB;IAnFH,AA+EM,oBA/Ec,AA0ElB,OAAQ,CAIN,gBAAgB,CACd,oBAAoB,CAAC;MACnB,IAAI,EAAE,8CAA8C,GACrD;EAjFP,AAqFE,oBArFkB,CAqFlB,mBAAmB,CAAC;IAIlB,KAAK,EAAE,oCAAoC;IAC3C,SAAS,EAAE,IAAI;IACf,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,QAAQ,GAqCnB;IAjIH,AA8FI,oBA9FgB,CAqFlB,mBAAmB,CASjB,wBAAwB,CAAC;MACvB,OAAO,EAAE,YAAY;MACrB,UAAU,EATQ,IAAI;MAUtB,KAAK,EAAE,kBAAiC,GAKzC;MAHC,MAAM,EAAE,SAAS,EAAE,KAAK;QAnG9B,AA8FI,oBA9FgB,CAqFlB,mBAAmB,CASjB,wBAAwB,CAAC;UAMrB,KAAK,EdbA,KAA6B,GcerC;IAtGL,AAwGI,oBAxGgB,CAqFlB,mBAAmB,CAmBjB,CAAC,CAAC;MACA,KAAK,EAAE,gCAAgC;MACvC,WAAW,EAAE,IAAI;MACjB,YAAY,EAAE,GAAG,GAClB;IA5GL,AA8GI,oBA9GgB,CAqFlB,mBAAmB,CAyBjB,MAAM,CAAC;MACL,UAAU,EAAE,oCAAoC;MAChD,MAAM,EAAE,GAAG,CAAC,KAAK,CdvGb,OAAO;McwGX,aAAa,EAAE,GAAG;MAClB,MAAM,EAAE,OAAO;MACf,UAAU,EAAE,GAAG;MACf,SAAS,EA9BQ,KAAK;MA+BtB,UAAU,EA9BQ,IAAI;MA+BtB,iBAAiB,EAAE,CAAC,GAUrB;MAhIL,AA8GI,oBA9GgB,CAqFlB,mBAAmB,CAyBjB,MAAM,AAUJ,MAAO,AAAA,IAAK,CAAA,AAAA,QAAQ,EAAE;QACpB,UAAU,EbxGD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uCAAuC;QayG1D,UAAU,EAAE,gBAAgB,GAC7B;MAED,MAAM,EAAE,SAAS,EAAE,KAAK;QA7H9B,AA8GI,oBA9GgB,CAqFlB,mBAAmB,CAyBjB,MAAM,CAAC;UAgBH,QAAQ,EAAE,QAAQ,GAErB;EAhIL,AAmIE,oBAnIkB,CAmIlB,sBAAsB,CAAC;IACrB,MAAM,Ed5CI,KAAK,Gc6ChB;EArIH,AAuIE,oBAvIkB,CAuIlB,aAAa,CAAC;IAGZ,MAAM,EAAE,CAAC,CADY,IAAG;IAExB,OAAO,EAAE,CAAC,CAFW,GAAG,GAQzB;IAjJH,AAuIE,oBAvIkB,CAuIlB,aAAa,AAMX,UAAW,CAAC;MACV,QAAQ,EAAE,MAAM;MAChB,cAAc,EAAE,IAAI,GACrB;EAhJL,AAqJM,oBArJc,AAmJlB,kBAAmB,CACjB,cAAc,CACZ,kBAAkB,CAAC;IACjB,UAAU,EAAE,SAAS,CAAC,IAAI,Cd9FlB,8BAA8B,Gc+FvC;EAvJP,AA0JI,oBA1JgB,AAmJlB,kBAAmB,CAOjB,aAAa,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,IAAI,CdnGjB,8BAA8B,GcoGzC;EA5JL,AAgKI,oBAhKgB,AA+JlB,UAAW,CACT,aAAa,CAAC;IACZ,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,MAAM,GACjB;;AClKL,AAAA,eAAe,CAAC;EAGd,SAAS,EAAE,KAAK;EAChB,MAAM,EAAE,MAAM;EACd,SAAS,EAAE,IAAI;EAEf,OAAO,EAAE,OAAO;EAChB,OAAO,EAAE,QAAQ,GAoElB;EA5ED,AAUE,eAVa,CAUb,EAAE,CAAC;IACD,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,IAAI,GAChB;EAbH,AAeE,eAfa,CAeb,KAAK,CAAC;IACJ,eAAe,EAAE,QAAQ;IACzB,KAAK,EAAE,IAAI,GACZ;EAlBH,AAqBkB,eArBH,CAoBb,aAAa,AACX,YAAa,CAAC,EAAE,CAAC;IACf,UAAU,EAAE,GAAG,CAAC,KAAK,CArBV,oCAAoC,GAsBhD;EAvBL,AAyBI,eAzBW,CAoBb,aAAa,CAKX,EAAE,CAAC;IACD,cAAc,EAAE,GAAG;IACnB,aAAa,EAAE,GAAG,CAAC,KAAK,CA1Bb,oCAAoC;IA2B/C,OAAO,EAAE,GAAG,GASb;IArCL,AAyBI,eAzBW,CAoBb,aAAa,CAKX,EAAE,AAKA,YAAa,CAAC;MACZ,WAAW,EAAE,GAAG,CAAC,KAAK,CA9Bb,oCAAoC,GA+B9C;IAhCP,AAyBI,eAzBW,CAoBb,aAAa,CAKX,EAAE,AASA,WAAY,CAAC;MACX,YAAY,EAAE,GAAG,CAAC,KAAK,CAlCd,oCAAoC,GAmC9C;EApCP,AAwCkB,eAxCH,CAoBb,aAAa,AAmBX,QAAS,CACP,WAAW,CAAC,IAAI,CAAC;IACf,UAAU,EfzBN,OAAO;Ie0BX,OAAO,EAAE,OAAO,GAKjB;IAHC,AAJU,WAIC,CA5CnB,eAAe,CAoBb,aAAa,AAmBX,QAAS,CACP,WAAW,CAAC,IAAI,CAIA;MACZ,KAAK,EfRP,IAAI,GeSH;EA9CT,AAmDM,eAnDS,CAoBb,aAAa,AA8BX,QAAS,CACP,WAAW;EAnDjB,AAoDM,eApDS,CAoBb,aAAa,AA8BX,QAAS,CAEP,gBAAgB,CAAC;IACf,OAAO,EAAE,GAAG,GACb;EAtDP,AAwDM,eAxDS,CAoBb,aAAa,AA8BX,QAAS,CAMP,WAAW,CAAC;IACV,OAAO,EAAE,GAAG,GACb;EA1DP,AA6DI,eA7DW,CAoBb,aAAa,CAyCX,WAAW,CAAC;IACV,WAAW,EA5DH,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,SAAS;IA6DxG,SAAS,EAAE,IAAI,GAChB;EAhEL,AAmEE,eAnEa,CAmEb,GAAG,CAAC;IACF,UAAU,EAAE,sCAAsC;IAClD,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,GAAG;IACZ,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,IAAI;IACd,WAAW,EAxED,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,SAAS,GAyE3G;;AC5EH,AAAA,eAAe,CAAC;EACd,WAAW,EAAE,MAAM;EACnB,aAAa,EAAE,GAAG;EAClB,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,oCAAoC;EACtD,gBAAgB,EAAE,oCAAoC;EACtD,WAAW,EAAE,OAAO;EACpB,OAAO,EAAE,QAAQ;EACjB,WAAW,EAAE,IAAI;EACjB,KAAK,EAAE,OAAO,GACf;;ACTD,AAAA,qBAAqB,CAAC;EACpB,QAAQ,EAAE,KAAK;EACf,MAAM,EAAE,CAAC;EACT,IAAI,EAAE,CAAC;EACP,KAAK,EAAE,CAAC;EACR,gBAAgB,EAAE,uCAAuC;EACzD,KAAK,EAAE,gCAAgC;EACvC,SAAS,EAAE,IAAI;EACf,WAAW,EAAE,IAAI;EACjB,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,qCAAqC;EAC3D,UAAU,EhBQO,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CDJpB,qBAAO;EiBHf,OAAO,EAAE,IAAI;EACb,WAAW,EAAE,MAAM,GA6CpB;EAzDD,AAcE,qBAdmB,CAcnB,aAAa,CAAC;IACZ,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,MAAM;IACnB,OAAO,EAAE,IAAI,CjB4CY,IAAI;IiBzC7B,kBAAkB,EAAE,IAAI;IAKxB,SAAS,EjBgDa,KAAmE,GiB5C1F;IARC,MAAM,EAAE,SAAS,EAAE,KAAK;MAtB5B,AAcE,qBAdmB,CAcnB,aAAa,CAAC;QASV,kBAAkB,EjBuCK,IAAI,GiBhC9B;IAHC,MAAM,EAAE,SAAS,EAAE,MAAM;MA3B7B,AAcE,qBAdmB,CAcnB,aAAa,CAAC;QAcV,SAAS,EjB+CY,MAAmE,GiB7C3F;EA9BH,AAgCE,qBAhCmB,CAgCnB,YAAY,CAAC;IACX,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,QAAQ;IAClB,GAAG,EAAE,GAAG;IACR,iBAAiB,EAAE,IAAI;IACvB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,gBAAgB,EAAE,0EAA0E;IAC5F,uBAAuB,EAAE,IAAI;IAC7B,IAAI,EAAE,gCAAgC;IACtC,OAAO,EAAE,GAAG;IACZ,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,OAAO,GAKhB;IAHC,MAAM,EAAE,SAAS,EAAE,KAAK;MAjD5B,AAgCE,qBAhCmB,CAgCnB,YAAY,CAAC;QAkBT,iBAAiB,EAAE,IAAI,GAE1B;EApDH,AAsDU,qBAtDW,AAsDnB,MAAO,CAAC,YAAY,CAAC;IACnB,OAAO,EAAE,KAAK,GACf;;ACxDH,AACE,gBADc,AACd,WAAY,CAAC;EACX,QAAQ,EAAE,MAAM,GACjB;;AAEH,AAAA,kBAAkB,CAAC;EACjB,UAAU,ElByCJ,IAAI;EkBxCV,OAAO,EAAE,IAAI;EACb,MAAM,EAAE,IAAI;EACZ,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,CAAC;EACN,KAAK,EAAE,IAAI;EACX,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,MAAM,GAKhB;EAbD,AAUE,kBAVgB,AAUhB,OAAQ,CAAC;IACP,OAAO,EAAE,KAAK,GACf;;AAGH,AAAA,kBAAkB,CAAC;EACjB,KAAK,EAAE,KAAK;EACZ,MAAM,EAAE,KAAK;EACb,QAAQ,EAAE,KAAK;EACf,GAAG,EAAE,iBAAiB;EACtB,IAAI,EAAE,iBAAiB;EACvB,UAAU,ElBqBJ,IAAI;EkBpBV,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,ClBWlB,kBAAI;EkBVV,aAAa,EAAE,GAAG;EAClB,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,MAAM,GA8DhB;EA1DC,MAAM,EAAC,SAAS,EAAE,KAAK;IAdzB,AAAA,kBAAkB,CAAC;MAef,KAAK,EAAE,IAAI;MACX,MAAM,EAAE,IAAI;MACZ,GAAG,EAAE,CAAC;MACN,IAAI,EAAE,CAAC;MACP,UAAU,EAAE,IAAI;MAChB,aAAa,EAAE,CAAC,GAoDnB;EAhDC,MAAM,EAAC,SAAS,EAAE,KAAK,OAAO,UAAU,EAAE,KAAK;IAxBjD,AAAA,kBAAkB,CAAC;MAyBf,UAAU,EAAE,MAAM,GA+CrB;EAxED,AA4BE,kBA5BgB,AA4BhB,OAAQ,CAAC;IACP,OAAO,EAAE,KAAK,GACf;EA9BH,AAgCE,kBAhCgB,CAgChB,EAAE,CAAC;IACD,KAAK,ElB1CC,OAAO;IkB2Cb,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,cAAc,EAAE,OAAO,GASxB;IAPC,MAAM,EAAC,SAAS,EAAE,KAAK;MAzC3B,AAgCE,kBAhCgB,CAgChB,EAAE,CAAC;QAUC,UAAU,EAAE,KAAK,GAMpB;IAHC,MAAM,EAAC,SAAS,EAAE,KAAK;MA7C3B,AAgCE,kBAhCgB,CAgChB,EAAE,CAAC;QAcC,UAAU,EAAE,IAAI,GAEnB;EAhDH,AAkDE,kBAlDgB,CAkDhB,OAAO,CAAC;IACN,UAAU,EAAE,GAAG,CAAC,KAAK,ClB/Df,OAAO;IkBgEb,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,MAAM;IAClB,gBAAgB,ElB9BZ,IAAI,GkB4CT;IAXC,MAAM,EAAC,SAAS,EAAE,KAAK,OAAO,UAAU,EAAE,KAAK;MA5DnD,AAkDE,kBAlDgB,CAkDhB,OAAO,CAAC;QAWJ,QAAQ,EAAE,MAAM,GAUnB;IAvEH,AAgEI,kBAhEc,CAkDhB,OAAO,CAcL,YAAY,CAAC;MACX,UAAU,EAAE,IAAI;MAChB,KAAK,EAAE,KAAK;MACZ,MAAM,EAAE,IAAI;MACZ,OAAO,EAAE,WAAW;MACpB,SAAS,EAAE,IAAI,GAChB;;AC1FL,AACE,cADY,CACZ,MAAM,CAAC;EACL,OAAO,EAAE,MAAM;EACf,SAAS,EAAE,OAAO;EAClB,MAAM,EAAE,CAAC,GACV;;AALH,AAOE,cAPY,CAOZ,KAAK,CAAC;EACJ,OAAO,EAAE,MAAM;EACf,MAAM,EAAE,CAAC,GACV;;AAVH,AAYE,cAZY,CAYZ,KAAK,CAAC;EACJ,MAAM,EAAE,IAAI;EACZ,KAAK,EAAE,IAAI;EACX,iBAAiB,EAAE,IAAI;EACvB,WAAW,EAAE,CAAC,GACf;;AAjBH,AAmBE,cAnBY,CAmBZ,eAAe,CAAC;EACd,KAAK,EAAE,OAAO;EACd,eAAe,EAAE,SAAS,GAC3B;;ACtBH,AAAA,2BAA2B,CAAC;EAC1B,OAAO,EAAE,IAAI;EACb,eAAe,EAAE,IAAI;EACrB,qBAAqB,EAAE,cAAc;EACrC,YAAY,EAAE,IAAI;EAClB,aAAa,EAAE,IAAI,GASpB;EANC,MAAM,EAAC,SAAS,EAAE,KAAK;IARzB,AAAA,2BAA2B,CAAC;MASxB,qBAAqB,EAAE,IAAI;MAC3B,kBAAkB,EAAE,cAAc;MAClC,YAAY,EAAE,KAAK;MACnB,aAAa,EAAE,KAAK,GAEvB;;AAED,AAAA,kBAAkB,CAAC;EACjB,MAAM,EAAE,KAAK;EACb,UAAU,EAAE,MAAM;EAClB,OAAO,EAAE,IAAI;EACb,WAAW,EAAE,GAAG,GAqHjB;EAlHC,MAAM,EAAC,SAAS,EAAE,KAAK;IAPzB,AAAA,kBAAkB,CAAC;MAQf,MAAM,EAAE,KAAK;MACb,UAAU,EAAE,IAAI;MAChB,OAAO,EAAE,IAAI;MACb,aAAa,EAAE,iBAAiB;MAChC,OAAO,EAAE,IAAI;MACb,aAAa,EAAE,IAAI,GA4GtB;MAzHD,AAeI,kBAfc,AAed,WAAY,CAAC;QACX,MAAM,EAAE,IAAI,GACb;MAjBL,AAmBI,kBAnBc,CAmBd,kBAAkB,CAAC;QACjB,YAAY,EAAE,IAAI;QAClB,MAAM,EAAE,IAAI,GAab;QAlCL,AAuBe,kBAvBG,CAmBd,kBAAkB,GAId,IAAI,GAAG,EAAE,CAAC;UACV,UAAU,EAAE,CAAC;UACb,aAAa,EAAE,GAAG;UAClB,WAAW,EAAE,GAAG,GACjB;QA3BP,AA6Be,kBA7BG,CAmBd,kBAAkB,GAUd,IAAI,GAAG,CAAC,CAAC;UACT,UAAU,EAAE,CAAC;UACb,WAAW,EAAE,IAAI;UACjB,SAAS,EAAE,IAAI,GAChB;EAjCP,AAqCE,kBArCgB,CAqChB,uBAAuB,CAAC;IACtB,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,KAAK;IACZ,eAAe,EAAE,KAAK;IACtB,mBAAmB,EAAE,aAAa;IAClC,iBAAiB,EAAE,SAAS;IAC5B,OAAO,EAAE,YAAY;IACrB,cAAc,EAAE,MAAM,GAoBvB;IAjBC,MAAM,EAAC,SAAS,EAAE,KAAK;MA/C3B,AAqCE,kBArCgB,CAqChB,uBAAuB,CAAC;QAWpB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,KAAK;QACZ,eAAe,EAAE,IAAI,GAcxB;IAhEH,AAqCE,kBArCgB,CAqChB,uBAAuB,AAgBrB,OAAQ,CAAC;MACP,gBAAgB,EAAE,gFAAgF,GACnG;IAvDL,AAqCE,kBArCgB,CAqChB,uBAAuB,AAoBrB,gBAAiB,CAAC;MAChB,gBAAgB,EAAE,yFAAyF,GAC5G;IA3DL,AAqCE,kBArCgB,CAqChB,uBAAuB,AAwBrB,YAAa,CAAC;MACZ,gBAAgB,EAAE,qFAAqF,GACxG;EA/DL,AAkEE,kBAlEgB,CAkEhB,kBAAkB,CAAC;IACjB,MAAM,EAAE,KAAK,GAgBd;IAnFH,AAqEa,kBArEK,CAkEhB,kBAAkB,GAGd,IAAI,GAAG,EAAE,CAAC;MACV,KAAK,EpBxED,OAAO;MoByEX,aAAa,EAAE,GAAG;MAClB,WAAW,EAAE,GAAG,GACjB;IAzEL,AA2Ea,kBA3EK,CAkEhB,kBAAkB,GASd,IAAI,GAAG,CAAC,CAAC;MACT,KAAK,EpBjFD,OAAO;MoBkFX,UAAU,EAAE,CAAC;MACb,MAAM,EAAE,KAAK;MACb,aAAa,EAAE,IAAI;MACnB,SAAS,EAAE,IAAI;MACf,WAAW,EAAE,IAAI,GAClB;EAlFL,AAqFE,kBArFgB,CAqFhB,iBAAiB,CAAC;IAChB,gBAAgB,EpBxFV,qBAAO;IoByFb,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,IAAI;IACZ,aAAa,EAAE,IAAI;IACnB,OAAO,EAAE,WAAW;IACpB,SAAS,EAAE,IAAI,GAQhB;IALC,MAAM,EAAC,SAAS,EAAE,KAAK;MA/F3B,AAqFE,kBArFgB,CAqFhB,iBAAiB,CAAC;QAWd,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,KAAK,GAEtB;EApGH,AAuGE,kBAvGgB,AAuGhB,QAAS,CAAC;IACR,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,GAAG;IACV,QAAQ,EAAE,QAAQ;IAClB,gBAAgB,EAAE,OAAO;IACzB,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,KAAK,GAMnB;IAHC,MAAM,EAAC,SAAS,EAAE,KAAK;MAjH3B,AAuGE,kBAvGgB,AAuGhB,QAAS,CAAC;QAWN,OAAO,EAAE,IAAI,GAEhB;EApHH,AAsHE,kBAtHgB,AAsHhB,WAAY,AAAA,QAAQ,CAAC;IACnB,OAAO,EAAE,IAAI,GACd"
}
\ No newline at end of file
--- a/browser/extensions/activity-stream/css/activity-stream-mac.css
+++ b/browser/extensions/activity-stream/css/activity-stream-mac.css
@@ -165,18 +165,18 @@ body {
.icon.icon-unpin {
background-image: url("../data/content/assets/glyph-unpin-16.svg"); }
.icon.icon-unpin:dir(rtl) {
transform: scaleX(-1); }
.icon.icon-edit {
background-image: url("../data/content/assets/glyph-edit-16.svg"); }
.icon.icon-pocket {
background-image: url("../data/content/assets/glyph-pocket-16.svg"); }
- .icon.icon-historyItem {
- background-image: url("../data/content/assets/glyph-historyItem-16.svg"); }
+ .icon.icon-history-item {
+ background-image: url("chrome://browser/skin/history.svg"); }
.icon.icon-trending {
background-image: url("../data/content/assets/glyph-trending-16.svg");
transform: translateY(2px); }
.icon.icon-now {
background-image: url("chrome://browser/skin/history.svg"); }
.icon.icon-topsites {
background-image: url("../data/content/assets/glyph-topsites-16.svg"); }
.icon.icon-pin-small {
@@ -189,19 +189,16 @@ body {
.icon.icon-check {
background-image: url("chrome://browser/skin/check.svg"); }
.icon.icon-download {
background-image: url("chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar"); }
.icon.icon-copy {
background-image: url("chrome://browser/skin/edit-copy.svg"); }
.icon.icon-open-file {
background-image: url("../data/content/assets/glyph-open-file-16.svg"); }
- .icon.icon-download-folder {
- background-image: url("../data/content/assets/glyph-download-icon.svg");
- background-size: 100%; }
.icon.icon-webextension {
background-image: url("../data/content/assets/glyph-webextension-16.svg"); }
.icon.icon-highlights {
background-image: url("../data/content/assets/glyph-highlights-16.svg"); }
.icon.icon-arrowhead-down {
background-image: url("../data/content/assets/glyph-arrowhead-down-16.svg"); }
.icon.icon-arrowhead-down-small {
background-image: url("../data/content/assets/glyph-arrowhead-down-12.svg");
@@ -773,19 +770,16 @@ main {
offset-inline-end: 0;
offset-inline-start: auto; } }
@media (min-width: 1122px) and (max-width: 1570px) {
.sections-list .section-list :nth-child(3n) .context-menu {
margin-inline-end: 5px;
margin-inline-start: auto;
offset-inline-end: 0;
offset-inline-start: auto; } }
- @media (min-width: 1122px) {
- .sections-list .section-list {
- grid-template-columns: repeat(auto-fit, 309px); } }
.sections-list .section-empty-state {
border: 1px solid var(--newtab-border-secondary-color);
border-radius: 3px;
display: flex;
height: 266px;
width: 100%; }
.sections-list .section-empty-state .empty-state {
@@ -805,16 +799,20 @@ main {
color: var(--newtab-text-primary-color);
font-size: 13px;
margin-bottom: 0;
text-align: center; }
@media (min-width: 1122px) {
.sections-list .section-empty-state {
height: 370px; } }
+@media (min-width: 1122px) {
+ .sections-list .normal-cards .section-list {
+ grid-template-columns: repeat(auto-fit, 309px); } }
+
.activity-stream.welcome {
overflow: hidden; }
.activity-stream:not(.welcome) .overlay-wrapper {
display: none; }
.overlay-wrapper {
position: fixed;
@@ -1248,16 +1246,19 @@ main {
width: 27px; }
.card-outer .context-menu-button:-moz-any(:active, :focus) {
opacity: 1;
transform: scale(1); }
.card-outer.placeholder {
background: transparent; }
.card-outer.placeholder .card {
box-shadow: inset 0 0 0 1px var(--newtab-inner-box-shadow-color); }
+ .card-outer.placeholder .card-preview-image-outer,
+ .card-outer.placeholder .card-context {
+ display: none; }
.card-outer .card {
border-radius: 3px;
box-shadow: var(--newtab-card-shadow);
height: 100%; }
.card-outer > a {
color: inherit;
display: block;
height: 100%;
@@ -1278,16 +1279,17 @@ main {
transform: scale(1); }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .card-title {
color: var(--newtab-link-primary-color); }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .alternate ~ .card-host-name {
display: none; }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .card-host-name.alternate {
display: block; }
.card-outer .card-preview-image-outer {
+ background-color: #D7D7DB;
border-radius: 3px 3px 0 0;
height: 122px;
overflow: hidden;
position: relative; }
.card-outer .card-preview-image-outer::after {
border-bottom: 1px solid var(--newtab-card-hairline-color);
bottom: 0;
content: '';
@@ -1300,50 +1302,35 @@ main {
height: 100%;
opacity: 0;
transition: opacity 1s cubic-bezier(0.07, 0.95, 0, 1);
width: 100%; }
.card-outer .card-preview-image-outer .card-preview-image.loaded {
opacity: 1; }
.card-outer .card-details {
padding: 15px 16px 12px; }
- .card-outer .card-details.no-image {
- padding-top: 16px; }
.card-outer .card-text {
max-height: 78px;
overflow: hidden; }
- .card-outer .card-text.no-image {
- max-height: 192px; }
.card-outer .card-text.no-host-name, .card-outer .card-text.no-context {
max-height: 97px; }
- .card-outer .card-text.no-image.no-host-name, .card-outer .card-text.no-image.no-context {
- max-height: 211px; }
.card-outer .card-text.no-host-name.no-context {
max-height: 116px; }
- .card-outer .card-text.no-image.no-host-name.no-context {
- max-height: 230px; }
.card-outer .card-text:not(.no-description) .card-title {
max-height: 57px;
overflow: hidden; }
.card-outer .card-host-name {
color: var(--newtab-text-secondary-color);
font-size: 10px;
overflow: hidden;
padding-bottom: 4px;
text-overflow: ellipsis;
text-transform: uppercase; }
.card-outer .card-host-name.alternate {
display: none; }
- .card-outer .card-download-icon {
- float: inline-end;
- margin-inline-start: 15px;
- margin-top: 2px; }
- .card-outer .card-download-icon.icon-download-folder {
- height: 36px;
- width: 36px; }
.card-outer .card-title {
font-size: 14px;
font-weight: 600;
line-height: 19px;
margin: 0 0 2px;
word-wrap: break-word; }
.card-outer .card-description {
font-size: 12px;
@@ -1365,43 +1352,97 @@ main {
height: 22px;
margin-inline-end: 6px; }
.card-outer .card-context-label {
flex-grow: 1;
line-height: 22px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
- @media (min-width: 1122px) {
- .card-outer {
- height: 370px; }
- .card-outer .card-preview-image-outer {
- height: 155px; }
- .card-outer .card-details {
- padding: 13px 16px 12px; }
- .card-outer .card-text {
- max-height: 140px; }
- .card-outer .card-host-name {
- font-size: 12px;
- padding-bottom: 5px; }
- .card-outer .card-download-icon.icon-download-folder {
- height: 54px;
- width: 54px; }
- .card-outer .card-title {
- font-size: 17px;
- line-height: 23px;
- margin-bottom: 0; }
- .card-outer .card-text:not(.no-description) .card-title {
- max-height: 69px; }
- .card-outer .card-description {
- font-size: 15px;
- line-height: 23px; }
- .card-outer .card-context {
- bottom: 4px;
- font-size: 14px; } }
+
+@media (min-width: 1122px) {
+ .normal-cards .card-outer {
+ height: 370px; }
+ .normal-cards .card-outer .card-preview-image-outer {
+ height: 155px; }
+ .normal-cards .card-outer .card-details {
+ padding: 13px 16px 12px; }
+ .normal-cards .card-outer .card-text {
+ max-height: 140px; }
+ .normal-cards .card-outer .card-host-name {
+ font-size: 12px;
+ padding-bottom: 5px; }
+ .normal-cards .card-outer .card-title {
+ font-size: 17px;
+ line-height: 23px;
+ margin-bottom: 0; }
+ .normal-cards .card-outer .card-text:not(.no-description) .card-title {
+ max-height: 69px; }
+ .normal-cards .card-outer .card-description {
+ font-size: 15px;
+ line-height: 23px; }
+ .normal-cards .card-outer .card-context {
+ bottom: 4px;
+ font-size: 14px; } }
+
+.compact-cards .card-outer {
+ height: 160px; }
+ .compact-cards .card-outer .card-preview-image-outer {
+ height: 108px; }
+ .compact-cards .card-outer .card-details {
+ padding: 12px 16px; }
+ .compact-cards .card-outer .card-host-name {
+ line-height: 10px; }
+ .compact-cards .card-outer .card-text .card-title,
+ .compact-cards .card-outer .card-text:not(.no-description) .card-title {
+ font-size: 10px;
+ line-height: 12px;
+ max-height: 12px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap; }
+ .compact-cards .card-outer .card-description {
+ display: none; }
+ .compact-cards .card-outer .card-context {
+ background-color: var(--newtab-card-background-color);
+ border-radius: 16px;
+ height: 32px;
+ width: 32px;
+ padding: 8px;
+ top: 92px;
+ left: auto;
+ offset-inline-end: 12px; }
+ .compact-cards .card-outer .card-context::after {
+ border: 1px solid var(--newtab-card-hairline-color);
+ border-bottom: 0;
+ border-radius: 16px 16px 0 0;
+ content: '';
+ position: absolute;
+ height: 50%;
+ width: 100%;
+ top: 0;
+ left: 0; }
+ .compact-cards .card-outer .card-context .card-context-icon {
+ margin-inline-end: 0;
+ height: 16px;
+ width: 16px; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-bookmark-added {
+ fill: #0A84FF; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-download {
+ fill: #12BC00; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-history-item {
+ fill: #B1B1B3; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-pocket {
+ fill: #D70022; }
+ .compact-cards .card-outer .card-context .card-context-label {
+ display: none; }
+
+@media not all and (min-width: 1122px) {
+ .compact-cards .hide-for-narrow {
+ display: none; } }
.manual-migration-container {
color: var(--newtab-text-conditional-color);
font-size: 13px;
line-height: 15px;
margin-bottom: 20px;
text-align: center; }
@media (min-width: 610px) {
--- a/browser/extensions/activity-stream/css/activity-stream-mac.css.map
+++ b/browser/extensions/activity-stream/css/activity-stream-mac.css.map
@@ -26,33 +26,33 @@
"../content-src/asrouter/components/ModalOverlay/_ModalOverlay.scss",
"../content-src/asrouter/templates/SimpleSnippet/_SimpleSnippet.scss",
"../content-src/asrouter/templates/OnboardingMessage/_OnboardingMessage.scss"
],
"sourcesContent": [
"/* This is the mac variant */ // sass-lint:disable-line no-css-comments\n\n$os-infopanel-arrow-height: 10px;\n$os-infopanel-arrow-offset-end: 7px;\n$os-infopanel-arrow-width: 18px;\n\n.dark-theme {\n -moz-osx-font-smoothing: grayscale;\n}\n\n@import './activity-stream';\n",
"@import './normalize';\n@import './variables';\n@import './theme';\n@import './icons';\n\nhtml {\n height: 100%;\n}\n\nbody,\n#root { // sass-lint:disable-line no-ids\n min-height: 100vh;\n}\n\nbody {\n background-color: var(--newtab-background-color);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Ubuntu', 'Helvetica Neue', sans-serif;\n font-size: 16px;\n overflow-y: scroll;\n}\n\nh1,\nh2 {\n font-weight: normal;\n}\n\na {\n text-decoration: none;\n}\n\n// For screen readers\n.sr-only {\n border: 0;\n clip: rect(0, 0, 0, 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n}\n\n.inner-border {\n border: $border-secondary;\n border-radius: $border-radius;\n height: 100%;\n left: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 100;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n.show-on-init {\n opacity: 0;\n transition: opacity 0.2s ease-in;\n\n &.on {\n animation: fadeIn 0.2s;\n opacity: 1;\n }\n}\n\n.actions {\n border-top: $border-secondary;\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: flex-start;\n margin: 0;\n padding: 15px 25px 0;\n}\n\n// Default button (grey)\n.button,\n.actions button {\n background-color: var(--newtab-button-secondary-color);\n border: $border-primary;\n border-radius: 4px;\n color: inherit;\n cursor: pointer;\n margin-bottom: 15px;\n padding: 10px 30px;\n white-space: nowrap;\n\n &:hover:not(.dismiss) {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n }\n\n &.dismiss {\n background-color: transparent;\n border: 0;\n padding: 0;\n text-decoration: underline;\n }\n\n // Blue button\n &.primary,\n &.done {\n background-color: var(--newtab-button-primary-color);\n border: solid 1px var(--newtab-button-primary-color);\n color: $white;\n margin-inline-start: auto;\n }\n}\n\ninput {\n &[type='text'],\n &[type='search'] {\n border-radius: $border-radius;\n }\n}\n\n// Make sure snippets show up above other UI elements\n#snippets-container { // sass-lint:disable-line no-ids\n z-index: 1;\n}\n\n// Components\n@import '../components/Base/Base';\n@import '../components/ErrorBoundary/ErrorBoundary';\n@import '../components/TopSites/TopSites';\n@import '../components/Sections/Sections';\n@import '../components/StartupOverlay/StartupOverlay';\n@import '../components/Topics/Topics';\n@import '../components/Search/Search';\n@import '../components/ContextMenu/ContextMenu';\n@import '../components/ConfirmDialog/ConfirmDialog';\n@import '../components/Card/Card';\n@import '../components/ManualMigration/ManualMigration';\n@import '../components/CollapsibleSection/CollapsibleSection';\n@import '../components/ASRouterAdmin/ASRouterAdmin';\n\n// AS Router\n@import '../asrouter/components/Button/Button';\n@import '../asrouter/components/SnippetBase/SnippetBase';\n@import '../asrouter/components/ModalOverlay/ModalOverlay';\n@import '../asrouter/templates/SimpleSnippet/SimpleSnippet';\n@import '../asrouter/templates/OnboardingMessage/OnboardingMessage';\n",
"html {\n box-sizing: border-box;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n*::-moz-focus-inner {\n border: 0;\n}\n\nbody {\n margin: 0;\n}\n\nbutton,\ninput {\n background-color: inherit;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n}\n\n[hidden] {\n display: none !important; // sass-lint:disable-line no-important\n}\n",
- "// Photon colors from http://design.firefox.com/photon/visuals/color.html\n$blue-40: #45A1FF;\n$blue-50: #0A84FF;\n$blue-60: #0060DF;\n$blue-70: #003EAA;\n$blue-80: #002275;\n$grey-10: #F9F9FA;\n$grey-20: #EDEDF0;\n$grey-30: #D7D7DB;\n$grey-40: #B1B1B3;\n$grey-50: #737373;\n$grey-60: #4A4A4F;\n$grey-70: #38383D;\n$grey-80: #2A2A2E;\n$grey-90: #0C0C0D;\n$teal-70: #008EA4;\n$red-60: #D70022;\n$yellow-50: #FFE900;\n\n// Photon opacity from http://design.firefox.com/photon/visuals/color.html#opacity\n$grey-10-10: rgba($grey-10, 0.1);\n$grey-10-20: rgba($grey-10, 0.2);\n$grey-10-40: rgba($grey-10, 0.4);\n$grey-10-60: rgba($grey-10, 0.6);\n$grey-10-80: rgba($grey-10, 0.8);\n$grey-20-60: rgba($grey-20, 0.6);\n$grey-20-80: rgba($grey-20, 0.8);\n$grey-30-60: rgba($grey-30, 0.6);\n$grey-90-10: rgba($grey-90, 0.1);\n$grey-90-20: rgba($grey-90, 0.2);\n$grey-90-30: rgba($grey-90, 0.3);\n$grey-90-40: rgba($grey-90, 0.4);\n$grey-90-50: rgba($grey-90, 0.5);\n$grey-90-60: rgba($grey-90, 0.6);\n$grey-90-70: rgba($grey-90, 0.7);\n$grey-90-80: rgba($grey-90, 0.8);\n$grey-90-90: rgba($grey-90, 0.9);\n\n$black: #000;\n$black-5: rgba($black, 0.05);\n$black-10: rgba($black, 0.1);\n$black-15: rgba($black, 0.15);\n$black-20: rgba($black, 0.2);\n$black-25: rgba($black, 0.25);\n$black-30: rgba($black, 0.3);\n\n// Photon transitions from http://design.firefox.com/photon/motion/duration-and-easing.html\n$photon-easing: cubic-bezier(0.07, 0.95, 0, 1);\n\n// Other colors\n$white: #FFF;\n$white-10: rgba($white, 0.1);\n$pocket-teal: #50BCB6;\n\n$border-radius: 3px;\n\n// Grid related styles\n$base-gutter: 32px;\n$section-horizontal-padding: 25px;\n$section-vertical-padding: 10px;\n$section-spacing: 40px - $section-vertical-padding * 2;\n$grid-unit: 96px; // 1 top site\n\n$icon-size: 16px;\n$smaller-icon-size: 12px;\n$larger-icon-size: 32px;\n\n$small-download-folder-icon-size: 36px;\n$large-download-folder-icon-size: $small-download-folder-icon-size * 1.5;\n\n$wrapper-default-width: $grid-unit * 2 + $base-gutter * 1 + $section-horizontal-padding * 2; // 2 top sites\n$wrapper-max-width-small: $grid-unit * 3 + $base-gutter * 2 + $section-horizontal-padding * 2; // 3 top sites\n$wrapper-max-width-medium: $grid-unit * 4 + $base-gutter * 3 + $section-horizontal-padding * 2; // 4 top sites\n$wrapper-max-width-large: $grid-unit * 6 + $base-gutter * 5 + $section-horizontal-padding * 2; // 6 top sites\n$wrapper-max-width-widest: $grid-unit * 8 + $base-gutter * 7 + $section-horizontal-padding * 2; // 8 top sites\n// For the breakpoints, we need to add space for the scrollbar to avoid weird\n// layout issues when the scrollbar is visible. 16px is wide enough to cover all\n// OSes and keeps it simpler than a per-OS value.\n$scrollbar-width: 16px;\n$break-point-small: $wrapper-max-width-small + $base-gutter * 2 + $scrollbar-width;\n$break-point-medium: $wrapper-max-width-medium + $base-gutter * 2 + $scrollbar-width;\n$break-point-large: $wrapper-max-width-large + $base-gutter * 2 + $scrollbar-width;\n$break-point-widest: $wrapper-max-width-widest + $base-gutter * 2 + $scrollbar-width;\n\n$section-title-font-size: 13px;\n\n$card-width: $grid-unit * 2 + $base-gutter;\n$card-height: 266px;\n$card-preview-image-height: 122px;\n$card-title-margin: 2px;\n$card-text-line-height: 19px;\n// Larger cards for wider screens:\n$card-width-large: 309px;\n$card-height-large: 370px;\n$card-preview-image-height-large: 155px;\n\n$topic-margin-top: 12px;\n\n$context-menu-button-size: 27px;\n$context-menu-button-boxshadow: 0 2px $grey-90-10;\n$context-menu-shadow: 0 5px 10px $black-30, 0 0 0 1px $black-20;\n$context-menu-font-size: 14px;\n$context-menu-border-radius: 5px;\n$context-menu-outer-padding: 5px;\n$context-menu-item-padding: 3px 12px;\n\n$error-fallback-font-size: 12px;\n$error-fallback-line-height: 1.5;\n\n$image-path: '../data/content/assets/';\n\n$snippets-container-height: 120px;\n\n$textbox-shadow-size: 4px;\n\n@mixin fade-in {\n box-shadow: inset $inner-box-shadow, $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin fade-in-card {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin context-menu-button {\n .context-menu-button {\n background-clip: padding-box;\n background-color: var(--newtab-contextmenu-button-color);\n background-image: url('chrome://browser/skin/page-action.svg');\n background-position: 55%;\n border: $border-primary;\n border-radius: 100%;\n box-shadow: $context-menu-button-boxshadow;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n height: $context-menu-button-size;\n offset-inline-end: -($context-menu-button-size / 2);\n opacity: 0;\n position: absolute;\n top: -($context-menu-button-size / 2);\n transform: scale(0.25);\n transition-duration: 200ms;\n transition-property: transform, opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus) {\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n@mixin context-menu-button-hover {\n .context-menu-button {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@mixin context-menu-open-middle {\n .context-menu {\n margin-inline-end: auto;\n margin-inline-start: auto;\n offset-inline-end: auto;\n offset-inline-start: -$base-gutter;\n }\n}\n\n@mixin context-menu-open-left {\n .context-menu {\n margin-inline-end: 5px;\n margin-inline-start: auto;\n offset-inline-end: 0;\n offset-inline-start: auto;\n }\n}\n\n@mixin flip-icon {\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n}\n",
+ "// Photon colors from http://design.firefox.com/photon/visuals/color.html\n$blue-40: #45A1FF;\n$blue-50: #0A84FF;\n$blue-60: #0060DF;\n$blue-70: #003EAA;\n$blue-80: #002275;\n$grey-10: #F9F9FA;\n$grey-20: #EDEDF0;\n$grey-30: #D7D7DB;\n$grey-40: #B1B1B3;\n$grey-50: #737373;\n$grey-60: #4A4A4F;\n$grey-70: #38383D;\n$grey-80: #2A2A2E;\n$grey-90: #0C0C0D;\n$teal-70: #008EA4;\n$red-60: #D70022;\n$yellow-50: #FFE900;\n\n// Photon opacity from http://design.firefox.com/photon/visuals/color.html#opacity\n$grey-10-10: rgba($grey-10, 0.1);\n$grey-10-20: rgba($grey-10, 0.2);\n$grey-10-40: rgba($grey-10, 0.4);\n$grey-10-60: rgba($grey-10, 0.6);\n$grey-10-80: rgba($grey-10, 0.8);\n$grey-20-60: rgba($grey-20, 0.6);\n$grey-20-80: rgba($grey-20, 0.8);\n$grey-30-60: rgba($grey-30, 0.6);\n$grey-90-10: rgba($grey-90, 0.1);\n$grey-90-20: rgba($grey-90, 0.2);\n$grey-90-30: rgba($grey-90, 0.3);\n$grey-90-40: rgba($grey-90, 0.4);\n$grey-90-50: rgba($grey-90, 0.5);\n$grey-90-60: rgba($grey-90, 0.6);\n$grey-90-70: rgba($grey-90, 0.7);\n$grey-90-80: rgba($grey-90, 0.8);\n$grey-90-90: rgba($grey-90, 0.9);\n\n$black: #000;\n$black-5: rgba($black, 0.05);\n$black-10: rgba($black, 0.1);\n$black-15: rgba($black, 0.15);\n$black-20: rgba($black, 0.2);\n$black-25: rgba($black, 0.25);\n$black-30: rgba($black, 0.3);\n\n// Other colors\n$white: #FFF;\n$white-10: rgba($white, 0.1);\n$pocket-teal: #50BCB6;\n$bookmark-icon-fill: #0A84FF;\n$download-icon-fill: #12BC00;\n$history-icon-fill: #B1B1B3;\n$pocket-icon-fill: #D70022;\n\n// Photon transitions from http://design.firefox.com/photon/motion/duration-and-easing.html\n$photon-easing: cubic-bezier(0.07, 0.95, 0, 1);\n\n$border-radius: 3px;\n\n// Grid related styles\n$base-gutter: 32px;\n$section-horizontal-padding: 25px;\n$section-vertical-padding: 10px;\n$section-spacing: 40px - $section-vertical-padding * 2;\n$grid-unit: 96px; // 1 top site\n\n$icon-size: 16px;\n$smaller-icon-size: 12px;\n$larger-icon-size: 32px;\n\n$wrapper-default-width: $grid-unit * 2 + $base-gutter * 1 + $section-horizontal-padding * 2; // 2 top sites\n$wrapper-max-width-small: $grid-unit * 3 + $base-gutter * 2 + $section-horizontal-padding * 2; // 3 top sites\n$wrapper-max-width-medium: $grid-unit * 4 + $base-gutter * 3 + $section-horizontal-padding * 2; // 4 top sites\n$wrapper-max-width-large: $grid-unit * 6 + $base-gutter * 5 + $section-horizontal-padding * 2; // 6 top sites\n$wrapper-max-width-widest: $grid-unit * 8 + $base-gutter * 7 + $section-horizontal-padding * 2; // 8 top sites\n// For the breakpoints, we need to add space for the scrollbar to avoid weird\n// layout issues when the scrollbar is visible. 16px is wide enough to cover all\n// OSes and keeps it simpler than a per-OS value.\n$scrollbar-width: 16px;\n$break-point-small: $wrapper-max-width-small + $base-gutter * 2 + $scrollbar-width;\n$break-point-medium: $wrapper-max-width-medium + $base-gutter * 2 + $scrollbar-width;\n$break-point-large: $wrapper-max-width-large + $base-gutter * 2 + $scrollbar-width;\n$break-point-widest: $wrapper-max-width-widest + $base-gutter * 2 + $scrollbar-width;\n\n$section-title-font-size: 13px;\n\n$card-width: $grid-unit * 2 + $base-gutter;\n$card-height: 266px;\n$card-preview-image-height: 122px;\n$card-title-margin: 2px;\n$card-text-line-height: 19px;\n// Larger cards for wider screens:\n$card-width-large: 309px;\n$card-height-large: 370px;\n$card-preview-image-height-large: 155px;\n// Compact cards for Highlights\n$card-height-compact: 160px;\n$card-preview-image-height-compact: 108px;\n\n$topic-margin-top: 12px;\n\n$context-menu-button-size: 27px;\n$context-menu-button-boxshadow: 0 2px $grey-90-10;\n$context-menu-shadow: 0 5px 10px $black-30, 0 0 0 1px $black-20;\n$context-menu-font-size: 14px;\n$context-menu-border-radius: 5px;\n$context-menu-outer-padding: 5px;\n$context-menu-item-padding: 3px 12px;\n\n$error-fallback-font-size: 12px;\n$error-fallback-line-height: 1.5;\n\n$image-path: '../data/content/assets/';\n\n$snippets-container-height: 120px;\n\n$textbox-shadow-size: 4px;\n\n@mixin fade-in {\n box-shadow: inset $inner-box-shadow, $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin fade-in-card {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin context-menu-button {\n .context-menu-button {\n background-clip: padding-box;\n background-color: var(--newtab-contextmenu-button-color);\n background-image: url('chrome://browser/skin/page-action.svg');\n background-position: 55%;\n border: $border-primary;\n border-radius: 100%;\n box-shadow: $context-menu-button-boxshadow;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n height: $context-menu-button-size;\n offset-inline-end: -($context-menu-button-size / 2);\n opacity: 0;\n position: absolute;\n top: -($context-menu-button-size / 2);\n transform: scale(0.25);\n transition-duration: 200ms;\n transition-property: transform, opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus) {\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n@mixin context-menu-button-hover {\n .context-menu-button {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@mixin context-menu-open-middle {\n .context-menu {\n margin-inline-end: auto;\n margin-inline-start: auto;\n offset-inline-end: auto;\n offset-inline-start: -$base-gutter;\n }\n}\n\n@mixin context-menu-open-left {\n .context-menu {\n margin-inline-end: 5px;\n margin-inline-start: auto;\n offset-inline-end: 0;\n offset-inline-start: auto;\n }\n}\n\n@mixin flip-icon {\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n}\n",
"@function textbox-shadow($color) {\n @return 0 0 0 1px $color, 0 0 0 $textbox-shadow-size rgba($color, 0.3);\n}\n\n@mixin textbox-focus($color) {\n --newtab-textbox-focus-color: $color;\n --newtab-textbox-focus-boxshadow: textbox-shadow($color);\n}\n\n// scss variables related to the theme.\n$border-primary: 1px solid var(--newtab-border-primary-color);\n$border-secondary: 1px solid var(--newtab-border-secondary-color);\n$inner-box-shadow: 0 0 0 1px var(--newtab-inner-box-shadow-color);\n$input-border: 1px solid var(--newtab-textbox-border);\n$input-border-active: 1px solid var(--newtab-textbox-focus-color);\n$input-error-border: 1px solid $red-60;\n$input-error-boxshadow: textbox-shadow($red-60);\n$shadow-primary: 0 0 0 5px var(--newtab-card-active-outline-color);\n$shadow-secondary: 0 1px 4px 0 $grey-90-20;\n\n// Default theme\nbody {\n // General styles\n --newtab-background-color: $grey-10;\n --newtab-border-primary-color: $grey-40;\n --newtab-border-secondary-color: $grey-30;\n --newtab-button-primary-color: $blue-60;\n --newtab-button-secondary-color: inherit;\n --newtab-element-active-color: $grey-30-60;\n --newtab-element-hover-color: $grey-20;\n --newtab-icon-primary-color: $grey-90-80;\n --newtab-icon-secondary-color: $grey-90-60;\n --newtab-icon-tertiary-color: $grey-30;\n --newtab-inner-box-shadow-color: $black-10;\n --newtab-link-primary-color: $blue-60;\n --newtab-link-secondary-color: $teal-70;\n --newtab-text-conditional-color: $grey-60;\n --newtab-text-primary-color: $grey-90;\n --newtab-text-secondary-color: $grey-50;\n --newtab-text-tertiary-color: $grey-50;\n --newtab-textbox-background-color: $white;\n --newtab-textbox-border: $grey-90-20;\n @include textbox-focus($blue-60); // sass-lint:disable-line mixins-before-declarations\n\n // Context menu\n --newtab-contextmenu-background-color: $grey-10;\n --newtab-contextmenu-button-color: $white;\n\n // Modal + overlay\n --newtab-modal-color: $white;\n --newtab-overlay-color: $grey-20-80;\n\n // Sections\n --newtab-section-header-text-color: $grey-50;\n --newtab-section-navigation-text-color: $grey-50;\n --newtab-section-active-contextmenu-color: $grey-90;\n\n // Search\n --newtab-search-border-color: transparent;\n --newtab-search-dropdown-color: $white;\n --newtab-search-dropdown-header-color: $grey-10;\n --newtab-search-icon-color: $grey-90-40;\n\n // Top Sites\n --newtab-topsites-background-color: $white;\n --newtab-topsites-icon-shadow: inset $inner-box-shadow;\n --newtab-topsites-label-color: inherit;\n\n // Cards\n --newtab-card-active-outline-color: $grey-30;\n --newtab-card-background-color: $white;\n --newtab-card-hairline-color: $black-10;\n --newtab-card-shadow: 0 1px 4px 0 $grey-90-10;\n\n // Snippets\n --newtab-snippets-background-color: $white;\n --newtab-snippets-hairline-color: transparent;\n}\n\n// Dark theme\n.dark-theme {\n // General styles\n --newtab-background-color: $grey-80;\n --newtab-border-primary-color: $grey-10-80;\n --newtab-border-secondary-color: $grey-10-10;\n --newtab-button-primary-color: $blue-60;\n --newtab-button-secondary-color: $grey-70;\n --newtab-element-active-color: $grey-10-20;\n --newtab-element-hover-color: $grey-10-10;\n --newtab-icon-primary-color: $grey-10-80;\n --newtab-icon-secondary-color: $grey-10-40;\n --newtab-icon-tertiary-color: $grey-10-40;\n --newtab-inner-box-shadow-color: $grey-10-20;\n --newtab-link-primary-color: $blue-40;\n --newtab-link-secondary-color: $pocket-teal;\n --newtab-text-conditional-color: $grey-10;\n --newtab-text-primary-color: $grey-10;\n --newtab-text-secondary-color: $grey-10-80;\n --newtab-text-tertiary-color: $grey-10-60;\n --newtab-textbox-background-color: $grey-70;\n --newtab-textbox-border: $grey-10-20;\n @include textbox-focus($blue-40); // sass-lint:disable-line mixins-before-declarations\n\n // Context menu\n --newtab-contextmenu-background-color: $grey-60;\n --newtab-contextmenu-button-color: $grey-80;\n\n // Modal + overlay\n --newtab-modal-color: $grey-80;\n --newtab-overlay-color: $grey-90-80;\n\n // Sections\n --newtab-section-header-text-color: $grey-10-80;\n --newtab-section-navigation-text-color: $grey-10-80;\n --newtab-section-active-contextmenu-color: $white;\n\n // Search\n --newtab-search-border-color: $grey-10-20;\n --newtab-search-dropdown-color: $grey-70;\n --newtab-search-dropdown-header-color: $grey-60;\n --newtab-search-icon-color: $grey-10-60;\n\n // Top Sites\n --newtab-topsites-background-color: $grey-70;\n --newtab-topsites-icon-shadow: none;\n --newtab-topsites-label-color: $grey-10-80;\n\n // Cards\n --newtab-card-active-outline-color: $grey-60;\n --newtab-card-background-color: $grey-70;\n --newtab-card-hairline-color: $grey-10-10;\n --newtab-card-shadow: 0 1px 8px 0 $grey-90-20;\n\n // Snippets\n --newtab-snippets-background-color: $grey-70;\n --newtab-snippets-hairline-color: $white-10;\n}\n",
- ".icon {\n background-position: center center;\n background-repeat: no-repeat;\n background-size: $icon-size;\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-icon-primary-color);\n height: $icon-size;\n vertical-align: middle;\n width: $icon-size;\n\n &.icon-spacer {\n margin-inline-end: 8px;\n }\n\n &.icon-small-spacer {\n margin-inline-end: 6px;\n }\n\n &.icon-bookmark-added {\n background-image: url('chrome://browser/skin/bookmark.svg');\n }\n\n &.icon-bookmark-hollow {\n background-image: url('chrome://browser/skin/bookmark-hollow.svg');\n }\n\n &.icon-clear-input {\n fill: var(--newtab-icon-secondary-color);\n background-image: url('#{$image-path}glyph-cancel-16.svg');\n }\n\n &.icon-delete {\n background-image: url('#{$image-path}glyph-delete-16.svg');\n }\n\n &.icon-search {\n background-image: url('chrome://browser/skin/search-glass.svg');\n }\n\n &.icon-modal-delete {\n flex-shrink: 0;\n background-image: url('#{$image-path}glyph-modal-delete-32.svg');\n background-size: $larger-icon-size;\n height: $larger-icon-size;\n width: $larger-icon-size;\n }\n\n &.icon-dismiss {\n background-image: url('#{$image-path}glyph-dismiss-16.svg');\n }\n\n &.icon-info {\n background-image: url('#{$image-path}glyph-info-16.svg');\n }\n\n &.icon-import {\n background-image: url('#{$image-path}glyph-import-16.svg');\n }\n\n &.icon-new-window {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-newWindow-16.svg');\n }\n\n &.icon-new-window-private {\n background-image: url('chrome://browser/skin/privateBrowsing.svg');\n }\n\n &.icon-settings {\n background-image: url('chrome://browser/skin/settings.svg');\n }\n\n &.icon-pin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-16.svg');\n }\n\n &.icon-unpin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-unpin-16.svg');\n }\n\n &.icon-edit {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.icon-pocket {\n background-image: url('#{$image-path}glyph-pocket-16.svg');\n }\n\n &.icon-historyItem {\n background-image: url('#{$image-path}glyph-historyItem-16.svg');\n }\n\n &.icon-trending {\n background-image: url('#{$image-path}glyph-trending-16.svg');\n transform: translateY(2px); // trending bolt is visually top heavy\n }\n\n &.icon-now {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-topsites {\n background-image: url('#{$image-path}glyph-topsites-16.svg');\n }\n\n &.icon-pin-small {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-check {\n background-image: url('chrome://browser/skin/check.svg');\n }\n\n &.icon-download {\n background-image: url('chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar');\n }\n\n &.icon-copy {\n background-image: url('chrome://browser/skin/edit-copy.svg');\n }\n\n &.icon-open-file {\n background-image: url('#{$image-path}glyph-open-file-16.svg');\n }\n\n &.icon-download-folder {\n background-image: url('#{$image-path}glyph-download-icon.svg');\n background-size: 100%;\n }\n\n &.icon-webextension {\n background-image: url('#{$image-path}glyph-webextension-16.svg');\n }\n\n &.icon-highlights {\n background-image: url('#{$image-path}glyph-highlights-16.svg');\n }\n\n &.icon-arrowhead-down {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n }\n\n &.icon-arrowhead-down-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-arrowhead-forward-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n transform: rotate(-90deg);\n width: $smaller-icon-size;\n\n &:dir(rtl) {\n transform: rotate(90deg);\n }\n }\n\n &.icon-arrowhead-up {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n transform: rotate(180deg);\n }\n\n &.icon-add {\n background-image: url('#{$image-path}glyph-add-16.svg');\n }\n\n &.icon-minimize {\n background-image: url('#{$image-path}glyph-minimize-16.svg');\n }\n\n &.icon-maximize {\n background-image: url('#{$image-path}glyph-maximize-16.svg');\n }\n}\n",
+ ".icon {\n background-position: center center;\n background-repeat: no-repeat;\n background-size: $icon-size;\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-icon-primary-color);\n height: $icon-size;\n vertical-align: middle;\n width: $icon-size;\n\n &.icon-spacer {\n margin-inline-end: 8px;\n }\n\n &.icon-small-spacer {\n margin-inline-end: 6px;\n }\n\n &.icon-bookmark-added {\n background-image: url('chrome://browser/skin/bookmark.svg');\n }\n\n &.icon-bookmark-hollow {\n background-image: url('chrome://browser/skin/bookmark-hollow.svg');\n }\n\n &.icon-clear-input {\n fill: var(--newtab-icon-secondary-color);\n background-image: url('#{$image-path}glyph-cancel-16.svg');\n }\n\n &.icon-delete {\n background-image: url('#{$image-path}glyph-delete-16.svg');\n }\n\n &.icon-search {\n background-image: url('chrome://browser/skin/search-glass.svg');\n }\n\n &.icon-modal-delete {\n flex-shrink: 0;\n background-image: url('#{$image-path}glyph-modal-delete-32.svg');\n background-size: $larger-icon-size;\n height: $larger-icon-size;\n width: $larger-icon-size;\n }\n\n &.icon-dismiss {\n background-image: url('#{$image-path}glyph-dismiss-16.svg');\n }\n\n &.icon-info {\n background-image: url('#{$image-path}glyph-info-16.svg');\n }\n\n &.icon-import {\n background-image: url('#{$image-path}glyph-import-16.svg');\n }\n\n &.icon-new-window {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-newWindow-16.svg');\n }\n\n &.icon-new-window-private {\n background-image: url('chrome://browser/skin/privateBrowsing.svg');\n }\n\n &.icon-settings {\n background-image: url('chrome://browser/skin/settings.svg');\n }\n\n &.icon-pin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-16.svg');\n }\n\n &.icon-unpin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-unpin-16.svg');\n }\n\n &.icon-edit {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.icon-pocket {\n background-image: url('#{$image-path}glyph-pocket-16.svg');\n }\n\n &.icon-history-item {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-trending {\n background-image: url('#{$image-path}glyph-trending-16.svg');\n transform: translateY(2px); // trending bolt is visually top heavy\n }\n\n &.icon-now {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-topsites {\n background-image: url('#{$image-path}glyph-topsites-16.svg');\n }\n\n &.icon-pin-small {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-check {\n background-image: url('chrome://browser/skin/check.svg');\n }\n\n &.icon-download {\n background-image: url('chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar');\n }\n\n &.icon-copy {\n background-image: url('chrome://browser/skin/edit-copy.svg');\n }\n\n &.icon-open-file {\n background-image: url('#{$image-path}glyph-open-file-16.svg');\n }\n\n &.icon-webextension {\n background-image: url('#{$image-path}glyph-webextension-16.svg');\n }\n\n &.icon-highlights {\n background-image: url('#{$image-path}glyph-highlights-16.svg');\n }\n\n &.icon-arrowhead-down {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n }\n\n &.icon-arrowhead-down-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-arrowhead-forward-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n transform: rotate(-90deg);\n width: $smaller-icon-size;\n\n &:dir(rtl) {\n transform: rotate(90deg);\n }\n }\n\n &.icon-arrowhead-up {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n transform: rotate(180deg);\n }\n\n &.icon-add {\n background-image: url('#{$image-path}glyph-add-16.svg');\n }\n\n &.icon-minimize {\n background-image: url('#{$image-path}glyph-minimize-16.svg');\n }\n\n &.icon-maximize {\n background-image: url('#{$image-path}glyph-maximize-16.svg');\n }\n}\n",
".outer-wrapper {\n color: var(--newtab-text-primary-color);\n display: flex;\n flex-grow: 1;\n min-height: 100vh;\n padding: ($section-spacing + $section-vertical-padding) $base-gutter $base-gutter;\n\n &.fixed-to-top {\n display: block;\n }\n\n a {\n color: var(--newtab-link-primary-color);\n }\n}\n\nmain {\n margin: auto;\n // Offset the snippets container so things at the bottom of the page are still\n // visible when snippets / onboarding are visible. Adjust for other spacing.\n padding-bottom: $snippets-container-height - $section-spacing - $base-gutter;\n width: $wrapper-default-width;\n\n @media (min-width: $break-point-small) {\n width: $wrapper-max-width-small;\n }\n\n @media (min-width: $break-point-medium) {\n width: $wrapper-max-width-medium;\n }\n\n @media (min-width: $break-point-large) {\n width: $wrapper-max-width-large;\n }\n\n @media (min-width: $break-point-widest) {\n width: $wrapper-max-width-widest;\n }\n\n section {\n margin-bottom: $section-spacing;\n position: relative;\n }\n}\n\n.base-content-fallback {\n // Make the error message be centered against the viewport\n height: 100vh;\n}\n\n.body-wrapper {\n // Hide certain elements so the page structure is fixed, e.g., placeholders,\n // while avoiding flashes of changing content, e.g., icons and text\n $selectors-to-hide: '\n .section-title,\n .sections-list .section:last-of-type,\n .topic\n ';\n\n #{$selectors-to-hide} {\n opacity: 0;\n }\n\n &.on {\n #{$selectors-to-hide} {\n opacity: 1;\n }\n }\n}\n\n.non-collapsible-section {\n padding: 0 $section-horizontal-padding;\n}\n\n.prefs-button {\n button {\n background-color: transparent;\n border: 0;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n offset-inline-end: 15px;\n padding: 15px;\n position: fixed;\n top: 15px;\n z-index: 12001;\n\n &:hover,\n &:focus {\n background-color: var(--newtab-element-hover-color);\n }\n\n &:active {\n background-color: var(--newtab-element-active-color);\n }\n }\n}\n",
".as-error-fallback {\n align-items: center;\n border-radius: $border-radius;\n box-shadow: inset $inner-box-shadow;\n color: var(--newtab-text-conditional-color);\n display: flex;\n flex-direction: column;\n font-size: $error-fallback-font-size;\n justify-content: center;\n justify-items: center;\n line-height: $error-fallback-line-height;\n\n a {\n color: var(--newtab-text-conditional-color);\n text-decoration: underline;\n }\n}\n",
"$top-sites-size: $grid-unit;\n$top-sites-border-radius: 6px;\n$top-sites-title-height: 30px;\n$top-sites-vertical-space: 8px;\n$screenshot-size: cover;\n$rich-icon-size: 96px;\n$default-icon-wrapper-size: 42px;\n$default-icon-size: 32px;\n$default-icon-offset: 6px;\n$half-base-gutter: $base-gutter / 2;\n\n.top-sites {\n // Take back the margin from the bottom row of vertical spacing as well as the\n // extra whitespace below the title text as it's vertically centered.\n margin-bottom: $section-spacing - ($top-sites-vertical-space + $top-sites-title-height / 3);\n}\n\n.top-sites-list {\n list-style: none;\n margin: 0 (-$half-base-gutter);\n padding: 0;\n\n // Two columns\n @media (max-width: $break-point-small) {\n :nth-child(2n+1) {\n @include context-menu-open-middle;\n }\n\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n // Three columns\n @media (min-width: $break-point-small) and (max-width: $break-point-medium) {\n :nth-child(3n+2),\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n // Four columns\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(4n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-medium) and (max-width: $break-point-medium + $card-width) {\n :nth-child(4n+3) {\n @include context-menu-open-left;\n }\n }\n\n // Six columns\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(6n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-large) and (max-width: $break-point-large + $card-width) {\n :nth-child(6n+5) {\n @include context-menu-open-left;\n }\n }\n\n // Eight columns\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(8n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + $card-width) {\n :nth-child(8n+7) {\n @include context-menu-open-left;\n }\n }\n\n @media not all and (min-width: $break-point-widest) {\n .hide-for-narrow {\n display: none;\n }\n }\n\n li {\n margin: 0 0 $top-sites-vertical-space;\n }\n\n &:not(.dnd-active) {\n .top-site-outer:-moz-any(.active, :focus, :hover) {\n .tile {\n @include fade-in;\n }\n\n @include context-menu-button-hover;\n }\n }\n}\n\n// container for drop zone\n.top-site-outer {\n padding: 0 $half-base-gutter;\n display: inline-block;\n\n // container for context menu\n .top-site-inner {\n position: relative;\n\n > a {\n color: inherit;\n display: block;\n outline: none;\n\n &:-moz-any(.active, :focus) {\n .tile {\n @include fade-in;\n }\n }\n }\n }\n\n @include context-menu-button;\n\n .tile { // sass-lint:disable-block property-sort-order\n border-radius: $top-sites-border-radius;\n box-shadow: inset $inner-box-shadow, var(--newtab-card-shadow);\n height: $top-sites-size;\n position: relative;\n width: $top-sites-size;\n\n // For letter fallback\n align-items: center;\n color: var(--newtab-text-secondary-color);\n display: flex;\n font-size: 32px;\n font-weight: 200;\n justify-content: center;\n text-transform: uppercase;\n\n &::before {\n content: attr(data-fallback);\n }\n }\n\n .screenshot {\n background-color: $white;\n background-position: top left;\n background-size: $screenshot-size;\n border-radius: $top-sites-border-radius;\n box-shadow: inset $inner-box-shadow;\n height: 100%;\n left: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n transition: opacity 1s;\n width: 100%;\n\n &.active {\n opacity: 1;\n }\n }\n\n // Some common styles for all icons (rich and default) in top sites\n .top-site-icon {\n background-color: var(--newtab-topsites-background-color);\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: $top-sites-border-radius;\n box-shadow: var(--newtab-topsites-icon-shadow);\n position: absolute;\n }\n\n .rich-icon {\n background-size: cover;\n height: 100%;\n offset-inline-start: 0;\n top: 0;\n width: 100%;\n }\n\n .default-icon { // sass-lint:disable block property-sort-order\n background-size: $default-icon-size;\n bottom: -$default-icon-offset;\n height: $default-icon-wrapper-size;\n offset-inline-end: -$default-icon-offset;\n width: $default-icon-wrapper-size;\n\n // for corner letter fallback\n align-items: center;\n display: flex;\n font-size: 20px;\n justify-content: center;\n\n &[data-fallback]::before {\n content: attr(data-fallback);\n }\n }\n\n .title {\n color: var(--newtab-topsites-label-color);\n font: message-box;\n height: $top-sites-title-height;\n line-height: $top-sites-title-height;\n text-align: center;\n width: $top-sites-size;\n position: relative;\n\n .icon {\n fill: var(--newtab-icon-tertiary-color);\n offset-inline-start: 0;\n position: absolute;\n top: 10px;\n }\n\n span {\n height: $top-sites-title-height;\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.pinned {\n span {\n padding: 0 13px;\n }\n }\n }\n\n .edit-button {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.placeholder {\n .tile {\n box-shadow: inset $inner-box-shadow;\n }\n\n .screenshot {\n display: none;\n }\n }\n\n &.dragged {\n .tile {\n background: $grey-20;\n box-shadow: none;\n\n *,\n &::before {\n display: none;\n }\n }\n\n .title {\n visibility: hidden;\n }\n }\n}\n\n.edit-topsites-wrapper {\n .modal {\n box-shadow: $shadow-secondary;\n left: 0;\n margin: 0 auto;\n position: fixed;\n right: 0;\n top: 40px;\n width: $wrapper-default-width;\n\n @media (min-width: $break-point-small) {\n width: $wrapper-max-width-small;\n }\n\n @media (min-width: $break-point-medium) {\n width: $wrapper-max-width-medium;\n }\n\n @media (min-width: $break-point-large) {\n width: $wrapper-max-width-large;\n }\n }\n}\n\n.topsite-form {\n $form-width: 300px;\n $form-spacing: 32px;\n\n .form-input-container {\n max-width: $form-width + 3 * $form-spacing + $rich-icon-size;\n margin: 0 auto;\n padding: $form-spacing;\n\n .top-site-outer {\n padding: 0;\n margin: 24px 0 0;\n margin-inline-start: $form-spacing;\n pointer-events: none;\n }\n\n .section-title {\n text-transform: none;\n font-size: 16px;\n margin: 0 0 16px;\n }\n }\n\n .fields-and-preview {\n display: flex;\n }\n\n label {\n font-size: $section-title-font-size;\n }\n\n .form-wrapper {\n width: 100%;\n\n .field {\n position: relative;\n\n .icon-clear-input {\n position: absolute;\n transform: translateY(-50%);\n top: 50%;\n offset-inline-end: 8px;\n }\n }\n\n .url {\n input:dir(ltr) {\n padding-right: 32px;\n }\n\n input:dir(rtl) {\n padding-left: 32px;\n\n &:not(:placeholder-shown) {\n direction: ltr;\n text-align: right;\n }\n }\n }\n\n .enable-custom-image-input {\n display: inline-block;\n font-size: 13px;\n margin-top: 4px;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n .custom-image-input-container {\n margin-top: 4px;\n\n .loading-container {\n width: 16px;\n height: 16px;\n overflow: hidden;\n position: absolute;\n transform: translateY(-50%);\n top: 50%;\n offset-inline-end: 8px;\n }\n\n // This animation is derived from Firefox's tab loading animation\n // See https://searchfox.org/mozilla-central/rev/b29daa46443b30612415c35be0a3c9c13b9dc5f6/browser/themes/shared/tabs.inc.css#208-216\n .loading-animation {\n @keyframes tab-throbber-animation {\n 100% { transform: translateX(-960px); }\n }\n\n @keyframes tab-throbber-animation-rtl {\n 100% { transform: translateX(960px); }\n }\n\n width: 960px;\n height: 16px;\n -moz-context-properties: fill;\n fill: $blue-50;\n background-image: url('chrome://browser/skin/tabbrowser/loading.svg');\n animation: tab-throbber-animation 1.05s steps(60) infinite;\n\n &:dir(rtl) {\n animation-name: tab-throbber-animation-rtl;\n }\n }\n }\n\n input {\n &[type='text'] {\n background-color: var(--newtab-textbox-background-color);\n border: $input-border;\n margin: 8px 0;\n padding: 0 8px;\n height: 32px;\n width: 100%;\n font-size: 15px;\n\n &:focus {\n border: $input-border-active;\n box-shadow: var(--newtab-textbox-focus-boxshadow);\n }\n\n &[disabled] {\n border: $input-border;\n box-shadow: none;\n opacity: 0.4;\n }\n }\n }\n\n .invalid {\n input {\n &[type='text'] {\n border: $input-error-border;\n box-shadow: $input-error-boxshadow;\n }\n }\n }\n\n .error-tooltip {\n animation: fade-up-tt 450ms;\n background: $red-60;\n border-radius: 2px;\n color: $white;\n offset-inline-start: 3px;\n padding: 5px 12px;\n position: absolute;\n top: 44px;\n z-index: 1;\n\n // tooltip caret\n &::before {\n background: $red-60;\n bottom: -8px;\n content: '.';\n height: 16px;\n offset-inline-start: 12px;\n position: absolute;\n text-indent: -999px;\n top: -7px;\n transform: rotate(45deg);\n white-space: nowrap;\n width: 16px;\n z-index: -1;\n }\n }\n }\n\n .actions {\n justify-content: flex-end;\n\n button {\n margin-inline-start: 10px;\n margin-inline-end: 0;\n }\n }\n\n @media (max-width: $break-point-small) {\n .fields-and-preview {\n flex-direction: column;\n\n .top-site-outer {\n margin-inline-start: 0;\n }\n }\n }\n}\n\n//used for tooltips below form element\n@keyframes fade-up-tt {\n 0% {\n opacity: 0;\n transform: translateY(15px);\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n",
- ".sections-list {\n .section-list {\n display: grid;\n grid-gap: $base-gutter;\n grid-template-columns: repeat(auto-fit, $card-width);\n margin: 0;\n\n @media (max-width: $break-point-medium) {\n @include context-menu-open-left;\n }\n\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) {\n grid-template-columns: repeat(auto-fit, $card-width-large);\n }\n }\n\n .section-empty-state {\n border: $border-secondary;\n border-radius: $border-radius;\n display: flex;\n height: $card-height;\n width: 100%;\n\n .empty-state {\n margin: auto;\n max-width: 350px;\n\n .empty-state-icon {\n background-position: center;\n background-repeat: no-repeat;\n background-size: 50px 50px;\n -moz-context-properties: fill;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n height: 50px;\n margin: 0 auto;\n width: 50px;\n }\n\n .empty-state-message {\n color: var(--newtab-text-primary-color);\n font-size: 13px;\n margin-bottom: 0;\n text-align: center;\n }\n }\n\n @media (min-width: $break-point-widest) {\n height: $card-height-large;\n }\n }\n}\n",
+ ".sections-list {\n .section-list {\n display: grid;\n grid-gap: $base-gutter;\n grid-template-columns: repeat(auto-fit, $card-width);\n margin: 0;\n\n @media (max-width: $break-point-medium) {\n @include context-menu-open-left;\n }\n\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n }\n\n .section-empty-state {\n border: $border-secondary;\n border-radius: $border-radius;\n display: flex;\n height: $card-height;\n width: 100%;\n\n .empty-state {\n margin: auto;\n max-width: 350px;\n\n .empty-state-icon {\n background-position: center;\n background-repeat: no-repeat;\n background-size: 50px 50px;\n -moz-context-properties: fill;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n height: 50px;\n margin: 0 auto;\n width: 50px;\n }\n\n .empty-state-message {\n color: var(--newtab-text-primary-color);\n font-size: 13px;\n margin-bottom: 0;\n text-align: center;\n }\n }\n\n @media (min-width: $break-point-widest) {\n height: $card-height-large;\n }\n }\n}\n\n@media (min-width: $break-point-widest) {\n .sections-list {\n // Compact cards stay the same size but normal cards get bigger.\n .normal-cards {\n .section-list {\n grid-template-columns: repeat(auto-fit, $card-width-large);\n }\n }\n }\n}\n",
".activity-stream {\n &.welcome {\n overflow: hidden;\n }\n\n &:not(.welcome) {\n .overlay-wrapper {\n display: none;\n }\n }\n}\n\n.overlay-wrapper {\n position: fixed;\n top: 0;\n width: 100vw;\n height: 100vh;\n z-index: 21000;\n font-weight: 200;\n transition: opacity 0.4s;\n opacity: 0;\n\n &.show {\n transition: none;\n opacity: 1;\n\n .firstrun-sign-in {\n transition: opacity 1.5s, transform 1.5s;\n transition-delay: 0.2s;\n transform: translateY(-50%) scale(1);\n opacity: 1;\n }\n\n .firstrun-firefox-logo {\n transition: opacity 2.3s;\n opacity: 1;\n }\n\n .firstrun-title,\n .firstrun-content,\n .firstrun-link {\n transition: transform 0.5s, opacity 0.8s;\n transform: translateY(0);\n opacity: 1;\n }\n\n .firstrun-title {\n transition-delay: 0.2s;\n }\n\n .firstrun-content {\n transition-delay: 0.4s;\n }\n\n .firstrun-link {\n transition-delay: 0.6s;\n }\n\n .fxaccounts-container {\n transition: none;\n opacity: 1;\n }\n }\n}\n\n.background {\n width: 100%;\n height: 100%;\n display: block;\n background: url('#{$image-path}fox-tail.png') top -200px center no-repeat,\n linear-gradient(to bottom, $blue-70 40%, #004EC2 60%, $blue-60 80%, #0080FF 90%, #00C7FF 100%) top center no-repeat,\n $blue-70;\n background-size: cover;\n}\n\n.firstrun-sign-in {\n transform: translateY(-50%) scale(0.8);\n position: relative;\n top: 50%;\n width: 358px;\n opacity: 0;\n background-color: $white;\n float: inline-end;\n color: $grey-90;\n text-align: center;\n padding: 10px;\n\n .extra-links {\n font-size: 12px;\n max-width: 340px;\n margin: 14px 50px;\n color: #676F7E;\n cursor: default;\n\n a {\n color: $grey-50;\n cursor: pointer;\n text-decoration: underline;\n }\n\n a:hover,\n a:active,\n a:focus {\n color: $blue-50;\n }\n }\n\n .email-input {\n box-shadow: none;\n margin: auto;\n width: 244px;\n display: block;\n height: 40px;\n padding-inline-start: 20px;\n border: 1px solid $grey-50;\n border-radius: 2px;\n font-size: 16px;\n\n &:hover {\n border-color: $grey-90;\n }\n }\n\n .form-header {\n font-size: 18px;\n margin: 15px auto;\n }\n\n .form-header span {\n font-size: 14px;\n margin-top: 4px;\n display: block;\n }\n\n button {\n border-radius: 2px;\n display: block;\n cursor: pointer;\n margin: 10px auto 0;\n }\n\n .continue-button {\n font-size: 18px;\n height: 43px;\n width: 250px;\n padding: 8px 0;\n border: 1px solid $blue-60;\n color: $white;\n background-color: $blue-50;\n transition-duration: 150ms;\n transition-property: background-color;\n\n &:not([disabled]):active {\n background: $blue-70;\n border-color: $blue-80;\n }\n }\n\n .skip-button {\n font-size: 13px;\n margin-top: 40px;\n margin-bottom: 20px;\n background-color: #FCFCFC;\n color: $blue-50;\n border: 1px solid $blue-50;\n min-height: 24px;\n padding: 5px 10px;\n transition: background-color 150ms, color 150ms, border-color 150ms;\n\n &[disabled] {\n background-color: #EBEBEB;\n border-color: #B1B1B1;\n color: #6A6A6A;\n cursor: default;\n opacity: 0.5;\n }\n\n &:not([disabled]):hover {\n background-color: $blue-50;\n border-color: $blue-60;\n color: $white;\n }\n }\n}\n\n.firstrun-left-divider {\n position: relative;\n float: inline-start;\n clear: both;\n width: 435px;\n}\n\n.firstrun-content {\n line-height: 1.5;\n margin-bottom: 48px;\n max-width: 352px;\n background: url('#{$image-path}sync-devices.svg') bottom center no-repeat;\n padding-bottom: 210px;\n}\n\n.firstrun-link {\n color: $white;\n display: block;\n text-decoration: underline;\n\n &:hover,\n &:active,\n &:focus {\n color: $white;\n }\n}\n\n.firstrun-title {\n background: url('chrome://branding/content/about-logo.png') top left no-repeat;\n background-size: 90px 90px;\n margin: 40px 0 10px;\n padding-top: 110px;\n font-weight: 200;\n}\n\n[dir='rtl'] {\n .firstrun-title {\n background-position: top right;\n }\n}\n\n.fxaccounts-container {\n position: absolute;\n bottom: 0;\n right: 0;\n top: 0;\n left: 0;\n color: $white;\n height: 515px;\n margin: auto;\n width: 819px;\n z-index: 10;\n transition: opacity 0.3s;\n opacity: 0;\n}\n\n.firstrun-title,\n.firstrun-content,\n.firstrun-link {\n opacity: 0;\n transform: translateY(-5px);\n}\n",
".topic {\n color: var(--newtab-section-navigation-text-color);\n font-size: 12px;\n line-height: 1.6;\n margin-top: $topic-margin-top;\n\n @media (min-width: $break-point-large) {\n line-height: 16px;\n }\n\n ul {\n margin: 0;\n padding: 0;\n @media (min-width: $break-point-large) {\n display: inline;\n padding-inline-start: 12px;\n }\n }\n\n\n ul li {\n display: inline-block;\n\n &::after {\n content: '•';\n padding: 8px;\n }\n\n &:last-child::after {\n content: none;\n }\n }\n\n .topic-link {\n color: var(--newtab-link-secondary-color);\n font-weight: bold;\n }\n\n .topic-read-more {\n color: var(--newtab-link-secondary-color);\n font-weight: bold;\n\n @media (min-width: $break-point-large) {\n // This is floating to accomodate a very large number of topics and/or\n // very long topic names due to l10n.\n float: right;\n\n &:dir(rtl) {\n float: left;\n }\n }\n\n &::after {\n background: url('#{$image-path}topic-show-more-12.svg') no-repeat center center;\n content: '';\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-link-secondary-color);\n height: 16px;\n margin-inline-start: 5px;\n vertical-align: top;\n width: 12px;\n }\n\n &:dir(rtl)::after {\n transform: scaleX(-1);\n }\n }\n\n // This is a clearfix to for the topics-read-more link which is floating and causes\n // some jank when we set overflow:hidden for the animation.\n &::after {\n clear: both;\n content: '';\n display: table;\n }\n}\n",
".search-wrapper {\n $search-height: 35px;\n $search-icon-size: 18px;\n $search-icon-padding: 8px;\n $search-icon-width: 2 * $search-icon-padding + $search-icon-size;\n $search-input-left-label-width: 35px;\n $search-button-width: 36px;\n $glyph-forward: url('chrome://browser/skin/forward.svg');\n\n cursor: default;\n display: flex;\n height: $search-height;\n margin-bottom: $section-spacing;\n position: relative;\n width: 100%;\n\n input {\n background: var(--newtab-textbox-background-color) var(--newtab-search-icon) $search-icon-padding center / $search-icon-size no-repeat;\n border: solid 1px var(--newtab-search-border-color);\n box-shadow: $shadow-secondary, 0 0 0 1px $black-15;\n font-size: 15px;\n -moz-context-properties: fill;\n fill: var(--newtab-search-icon-color);\n padding: 0;\n padding-inline-end: $search-button-width;\n padding-inline-start: $search-icon-width;\n width: 100%;\n\n &:dir(rtl) {\n background-position-x: right $search-icon-padding;\n }\n }\n\n &:hover input {\n box-shadow: $shadow-secondary, 0 0 0 1px $black-25;\n }\n\n &:active input,\n input:focus {\n border: $input-border-active;\n box-shadow: var(--newtab-textbox-focus-boxshadow);\n }\n\n .search-button {\n background: $glyph-forward no-repeat center center;\n background-size: 16px 16px;\n border: 0;\n border-radius: 0 $border-radius $border-radius 0;\n -moz-context-properties: fill;\n fill: var(--newtab-search-icon-color);\n height: 100%;\n offset-inline-end: 0;\n position: absolute;\n width: $search-button-width;\n\n &:focus,\n &:hover {\n background-color: $grey-90-10;\n cursor: pointer;\n }\n\n &:active {\n background-color: $grey-90-20;\n }\n\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n }\n}\n\n@at-root {\n // Adjust the style of the contentSearchUI-generated table\n .contentSearchSuggestionTable {\n background-color: var(--newtab-search-dropdown-color);\n border: 0;\n box-shadow: $context-menu-shadow;\n transform: translateY($textbox-shadow-size);\n\n .contentSearchHeader {\n background-color: var(--newtab-search-dropdown-header-color);\n color: var(--newtab-text-secondary-color);\n }\n\n .contentSearchHeader,\n .contentSearchSettingsButton {\n border-color: var(--newtab-border-secondary-color);\n }\n\n .contentSearchSuggestionsList {\n border: 0;\n }\n\n .contentSearchOneOffsTable {\n background-color: var(--newtab-search-dropdown-header-color);\n border-top: solid 1px var(--newtab-border-secondary-color);\n }\n\n .contentSearchSearchWithHeaderSearchText {\n color: var(--newtab-text-primary-color);\n }\n\n .contentSearchSuggestionsContainer {\n background-color: var(--newtab-search-dropdown-color);\n }\n\n .contentSearchSuggestionRow {\n &.selected {\n background: var(--newtab-element-hover-color);\n color: var(--newtab-text-primary-color);\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n\n .historyIcon {\n fill: var(--newtab-icon-secondary-color);\n }\n }\n }\n\n .contentSearchOneOffsTable {\n .contentSearchSuggestionsContainer {\n background-color: var(--newtab-search-dropdown-header-color);\n }\n }\n\n .contentSearchOneOffItem {\n // Make the border slightly shorter by offsetting from the top and bottom\n $border-offset: 18%;\n\n background-image: none;\n border-image: linear-gradient(transparent $border-offset, var(--newtab-border-secondary-color) $border-offset, var(--newtab-border-secondary-color) 100% - $border-offset, transparent 100% - $border-offset) 1;\n border-inline-end: 1px solid;\n position: relative;\n\n &.selected {\n background: var(--newtab-element-hover-color);\n }\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n }\n\n .contentSearchSettingsButton {\n &:hover {\n background: var(--newtab-element-hover-color);\n color: var(--newtab-text-primary-color);\n }\n }\n }\n}\n",
".context-menu {\n background: var(--newtab-contextmenu-background-color);\n border-radius: $context-menu-border-radius;\n box-shadow: $context-menu-shadow;\n display: block;\n font-size: $context-menu-font-size;\n margin-inline-start: 5px;\n offset-inline-start: 100%;\n position: absolute;\n top: ($context-menu-button-size / 4);\n z-index: 10000;\n\n > ul {\n list-style: none;\n margin: 0;\n padding: $context-menu-outer-padding 0;\n\n > li {\n margin: 0;\n width: 100%;\n\n &.separator {\n border-bottom: $border-secondary;\n margin: $context-menu-outer-padding 0;\n }\n\n > a {\n align-items: center;\n color: inherit;\n cursor: pointer;\n display: flex;\n line-height: 16px;\n outline: none;\n padding: $context-menu-item-padding;\n white-space: nowrap;\n\n &:-moz-any(:focus, :hover) {\n background: var(--newtab-element-hover-color);\n }\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n\n &.disabled {\n opacity: 0.4;\n pointer-events: none;\n }\n }\n }\n }\n}\n",
".confirmation-dialog {\n .modal {\n box-shadow: 0 2px 2px 0 $black-10;\n left: 50%;\n margin-left: -200px;\n position: fixed;\n top: 20%;\n width: 400px;\n }\n\n section {\n margin: 0;\n }\n\n .modal-message {\n display: flex;\n padding: 16px;\n padding-bottom: 0;\n\n p {\n margin: 0;\n margin-bottom: 16px;\n }\n }\n\n .actions {\n border: 0;\n display: flex;\n flex-wrap: nowrap;\n padding: 0 16px;\n\n button {\n margin-inline-end: 16px;\n padding-inline-end: 18px;\n padding-inline-start: 18px;\n white-space: normal;\n width: 50%;\n\n &.done {\n margin-inline-end: 0;\n margin-inline-start: 0;\n }\n }\n }\n\n .icon {\n margin-inline-end: 16px;\n }\n}\n\n.modal-overlay {\n background: var(--newtab-overlay-color);\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 11001;\n}\n\n.modal {\n background: var(--newtab-modal-color);\n border: $border-secondary;\n border-radius: 5px;\n font-size: 15px;\n z-index: 11002;\n}\n",
- ".card-outer {\n @include context-menu-button;\n background: var(--newtab-card-background-color);\n border-radius: $border-radius;\n display: inline-block;\n height: $card-height;\n margin-inline-end: $base-gutter;\n position: relative;\n width: 100%;\n\n &.placeholder {\n background: transparent;\n\n .card {\n box-shadow: inset $inner-box-shadow;\n }\n }\n\n .card {\n border-radius: $border-radius;\n box-shadow: var(--newtab-card-shadow);\n height: 100%;\n }\n\n > a {\n color: inherit;\n display: block;\n height: 100%;\n outline: none;\n position: absolute;\n width: 100%;\n\n &:-moz-any(.active, :focus) {\n .card {\n @include fade-in-card;\n }\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n }\n }\n\n &:-moz-any(:hover, :focus, .active):not(.placeholder) {\n @include fade-in-card;\n @include context-menu-button-hover;\n outline: none;\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n\n .alternate ~ .card-host-name {\n display: none;\n }\n\n .card-host-name.alternate {\n display: block;\n }\n }\n\n .card-preview-image-outer {\n border-radius: $border-radius $border-radius 0 0;\n height: $card-preview-image-height;\n overflow: hidden;\n position: relative;\n\n &::after {\n border-bottom: 1px solid var(--newtab-card-hairline-color);\n bottom: 0;\n content: '';\n position: absolute;\n width: 100%;\n }\n\n .card-preview-image {\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n height: 100%;\n opacity: 0;\n transition: opacity 1s $photon-easing;\n width: 100%;\n\n &.loaded {\n opacity: 1;\n }\n }\n }\n\n .card-details {\n padding: 15px 16px 12px;\n\n &.no-image {\n padding-top: 16px;\n }\n }\n\n .card-text {\n max-height: 4 * $card-text-line-height + $card-title-margin;\n overflow: hidden;\n\n &.no-image {\n max-height: 10 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name,\n &.no-context {\n max-height: 5 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-image.no-host-name,\n &.no-image.no-context {\n max-height: 11 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name.no-context {\n max-height: 6 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-image.no-host-name.no-context {\n max-height: 12 * $card-text-line-height + $card-title-margin;\n }\n\n &:not(.no-description) .card-title {\n max-height: 3 * $card-text-line-height;\n overflow: hidden;\n }\n }\n\n .card-host-name {\n color: var(--newtab-text-secondary-color);\n font-size: 10px;\n overflow: hidden;\n padding-bottom: 4px;\n text-overflow: ellipsis;\n text-transform: uppercase;\n }\n\n .card-host-name.alternate { display: none; }\n\n .card-download-icon {\n float: inline-end;\n margin-inline-start: 15px;\n margin-top: 2px;\n\n &.icon-download-folder {\n height: $small-download-folder-icon-size;\n width: $small-download-folder-icon-size;\n }\n }\n\n .card-title {\n font-size: 14px;\n font-weight: 600;\n line-height: $card-text-line-height;\n margin: 0 0 $card-title-margin;\n word-wrap: break-word;\n }\n\n .card-description {\n font-size: 12px;\n line-height: $card-text-line-height;\n margin: 0;\n overflow: hidden;\n word-wrap: break-word;\n }\n\n .card-context {\n bottom: 0;\n color: var(--newtab-text-tertiary-color);\n display: flex;\n font-size: 11px;\n left: 0;\n padding: 9px 16px 9px 14px;\n position: absolute;\n right: 0;\n }\n\n .card-context-icon {\n fill: var(--newtab-icon-tertiary-color);\n height: 22px;\n margin-inline-end: 6px;\n }\n\n .card-context-label {\n flex-grow: 1;\n line-height: 22px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n // Wide layout styles\n @media (min-width: $break-point-widest) {\n $line-height: 23px;\n height: $card-height-large;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-large;\n }\n\n .card-details {\n padding: 13px 16px 12px;\n }\n\n .card-text {\n max-height: 6 * $line-height + $card-title-margin;\n }\n\n .card-host-name {\n font-size: 12px;\n padding-bottom: 5px;\n }\n\n .card-download-icon {\n &.icon-download-folder {\n height: $large-download-folder-icon-size;\n width: $large-download-folder-icon-size;\n }\n }\n\n .card-title {\n font-size: 17px;\n line-height: $line-height;\n margin-bottom: 0;\n }\n\n .card-text:not(.no-description) {\n .card-title {\n max-height: 3 * $line-height;\n }\n }\n\n .card-description {\n font-size: 15px;\n line-height: $line-height;\n }\n\n .card-context {\n bottom: 4px;\n font-size: 14px;\n }\n }\n}\n",
+ ".card-outer {\n @include context-menu-button;\n background: var(--newtab-card-background-color);\n border-radius: $border-radius;\n display: inline-block;\n height: $card-height;\n margin-inline-end: $base-gutter;\n position: relative;\n width: 100%;\n\n &.placeholder {\n background: transparent;\n\n .card {\n box-shadow: inset $inner-box-shadow;\n }\n\n .card-preview-image-outer,\n .card-context {\n display: none;\n }\n }\n\n .card {\n border-radius: $border-radius;\n box-shadow: var(--newtab-card-shadow);\n height: 100%;\n }\n\n > a {\n color: inherit;\n display: block;\n height: 100%;\n outline: none;\n position: absolute;\n width: 100%;\n\n &:-moz-any(.active, :focus) {\n .card {\n @include fade-in-card;\n }\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n }\n }\n\n &:-moz-any(:hover, :focus, .active):not(.placeholder) {\n @include fade-in-card;\n @include context-menu-button-hover;\n outline: none;\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n\n .alternate ~ .card-host-name {\n display: none;\n }\n\n .card-host-name.alternate {\n display: block;\n }\n }\n\n .card-preview-image-outer {\n background-color: $grey-30;\n border-radius: $border-radius $border-radius 0 0;\n height: $card-preview-image-height;\n overflow: hidden;\n position: relative;\n\n &::after {\n border-bottom: 1px solid var(--newtab-card-hairline-color);\n bottom: 0;\n content: '';\n position: absolute;\n width: 100%;\n }\n\n .card-preview-image {\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n height: 100%;\n opacity: 0;\n transition: opacity 1s $photon-easing;\n width: 100%;\n\n &.loaded {\n opacity: 1;\n }\n }\n }\n\n .card-details {\n padding: 15px 16px 12px;\n }\n\n .card-text {\n max-height: 4 * $card-text-line-height + $card-title-margin;\n overflow: hidden;\n\n &.no-host-name,\n &.no-context {\n max-height: 5 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name.no-context {\n max-height: 6 * $card-text-line-height + $card-title-margin;\n }\n\n &:not(.no-description) .card-title {\n max-height: 3 * $card-text-line-height;\n overflow: hidden;\n }\n }\n\n .card-host-name {\n color: var(--newtab-text-secondary-color);\n font-size: 10px;\n overflow: hidden;\n padding-bottom: 4px;\n text-overflow: ellipsis;\n text-transform: uppercase;\n }\n\n .card-host-name.alternate { display: none; }\n\n .card-title {\n font-size: 14px;\n font-weight: 600;\n line-height: $card-text-line-height;\n margin: 0 0 $card-title-margin;\n word-wrap: break-word;\n }\n\n .card-description {\n font-size: 12px;\n line-height: $card-text-line-height;\n margin: 0;\n overflow: hidden;\n word-wrap: break-word;\n }\n\n .card-context {\n bottom: 0;\n color: var(--newtab-text-tertiary-color);\n display: flex;\n font-size: 11px;\n left: 0;\n padding: 9px 16px 9px 14px;\n position: absolute;\n right: 0;\n }\n\n .card-context-icon {\n fill: var(--newtab-icon-tertiary-color);\n height: 22px;\n margin-inline-end: 6px;\n }\n\n .card-context-label {\n flex-grow: 1;\n line-height: 22px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n}\n\n.normal-cards {\n .card-outer {\n // Wide layout styles\n @media (min-width: $break-point-widest) {\n $line-height: 23px;\n height: $card-height-large;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-large;\n }\n\n .card-details {\n padding: 13px 16px 12px;\n }\n\n .card-text {\n max-height: 6 * $line-height + $card-title-margin;\n }\n\n .card-host-name {\n font-size: 12px;\n padding-bottom: 5px;\n }\n\n .card-title {\n font-size: 17px;\n line-height: $line-height;\n margin-bottom: 0;\n }\n\n .card-text:not(.no-description) {\n .card-title {\n max-height: 3 * $line-height;\n }\n }\n\n .card-description {\n font-size: 15px;\n line-height: $line-height;\n }\n\n .card-context {\n bottom: 4px;\n font-size: 14px;\n }\n }\n }\n}\n\n.compact-cards {\n .card-outer {\n height: $card-height-compact;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-compact;\n }\n\n .card-details {\n padding: 12px 16px;\n }\n\n .card-host-name {\n line-height: 10px;\n }\n\n .card-text {\n .card-title,\n &:not(.no-description) .card-title {\n font-size: 10px;\n line-height: 12px;\n max-height: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n }\n\n .card-description {\n display: none;\n }\n\n .card-context {\n $icon-size: 16px;\n $container-size: 32px;\n background-color: var(--newtab-card-background-color);\n border-radius: $container-size / 2;\n height: $container-size;\n width: $container-size;\n padding: ($container-size - $icon-size) / 2;\n top: 92px;\n left: auto;\n offset-inline-end: 12px;\n\n &::after {\n border: 1px solid var(--newtab-card-hairline-color);\n border-bottom: 0;\n border-radius: ($container-size / 2) ($container-size / 2) 0 0;\n content: '';\n position: absolute;\n height: 50%;\n width: 100%;\n top: 0;\n left: 0;\n }\n\n .card-context-icon {\n margin-inline-end: 0;\n height: $icon-size;\n width: $icon-size;\n\n &.icon-bookmark-added {\n fill: $bookmark-icon-fill;\n }\n\n &.icon-download {\n fill: $download-icon-fill;\n }\n\n &.icon-history-item {\n fill: $history-icon-fill;\n }\n\n &.icon-pocket {\n fill: $pocket-icon-fill;\n }\n }\n\n .card-context-label {\n display: none;\n }\n }\n }\n\n @media not all and (min-width: $break-point-widest) {\n .hide-for-narrow {\n display: none;\n }\n }\n}\n",
".manual-migration-container {\n color: var(--newtab-text-conditional-color);\n font-size: 13px;\n line-height: 15px;\n margin-bottom: $section-spacing;\n text-align: center;\n\n @media (min-width: $break-point-medium) {\n display: flex;\n justify-content: space-between;\n text-align: left;\n }\n\n p {\n margin: 0;\n @media (min-width: $break-point-medium) {\n align-self: center;\n display: flex;\n justify-content: space-between;\n }\n }\n\n .icon {\n display: none;\n @media (min-width: $break-point-medium) {\n align-self: center;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n margin-inline-end: 6px;\n }\n }\n}\n\n.manual-migration-actions {\n border: 0;\n display: block;\n flex-wrap: nowrap;\n\n @media (min-width: $break-point-medium) {\n display: flex;\n justify-content: space-between;\n padding: 0;\n }\n\n button {\n align-self: center;\n height: 26px;\n margin: 0;\n margin-inline-start: 20px;\n padding: 0 12px;\n }\n}\n",
".collapsible-section {\n padding: $section-vertical-padding $section-horizontal-padding;\n transition-delay: 100ms;\n transition-duration: 100ms;\n transition-property: background-color;\n\n .section-title {\n font-size: $section-title-font-size;\n font-weight: bold;\n margin: 0;\n text-transform: uppercase;\n\n span {\n color: var(--newtab-section-header-text-color);\n display: inline-block;\n fill: var(--newtab-section-header-text-color);\n vertical-align: middle;\n }\n\n .click-target {\n cursor: pointer;\n vertical-align: top;\n white-space: nowrap;\n }\n\n .collapsible-arrow {\n margin-inline-start: 8px;\n margin-top: -1px;\n }\n }\n\n .section-top-bar {\n height: 19px;\n margin-bottom: 13px;\n position: relative;\n\n .context-menu-button {\n background: url('chrome://browser/skin/page-action.svg') no-repeat right center;\n border: 0;\n cursor: pointer;\n fill: var(--newtab-section-header-text-color);\n height: 100%;\n offset-inline-end: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n transition-duration: 200ms;\n transition-property: opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus, :hover) {\n fill: $grey-90;\n opacity: 1;\n }\n }\n\n .context-menu {\n top: 16px;\n }\n\n @media (max-width: $break-point-widest + $card-width * 1.5) {\n @include context-menu-open-left;\n }\n }\n\n &:hover,\n &.active {\n .section-top-bar {\n .context-menu-button {\n opacity: 1;\n }\n }\n }\n\n &.active {\n background: var(--newtab-element-hover-color);\n border-radius: 4px;\n\n .section-top-bar {\n .context-menu-button {\n fill: var(--newtab-section-active-contextmenu-color);\n }\n }\n }\n\n .section-disclaimer {\n $max-button-width: 130px;\n $min-button-height: 26px;\n\n color: var(--newtab-text-conditional-color);\n font-size: 13px;\n margin-bottom: 16px;\n position: relative;\n\n .section-disclaimer-text {\n display: inline-block;\n min-height: $min-button-height;\n width: calc(100% - #{$max-button-width});\n\n @media (max-width: $break-point-medium) {\n width: $card-width;\n }\n }\n\n a {\n color: var(--newtab-link-primary-color);\n font-weight: bold;\n padding-left: 3px;\n }\n\n button {\n background: var(--newtab-button-secondary-color);\n border: 1px solid $grey-40;\n border-radius: 4px;\n cursor: pointer;\n margin-top: 2px;\n max-width: $max-button-width;\n min-height: $min-button-height;\n offset-inline-end: 0;\n\n &:hover:not(.dismiss) {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n }\n\n @media (min-width: $break-point-small) {\n position: absolute;\n }\n }\n }\n\n .section-body-fallback {\n height: $card-height;\n }\n\n .section-body {\n // This is so the top sites favicon and card dropshadows don't get clipped during animation:\n $horizontal-padding: 7px;\n margin: 0 (-$horizontal-padding);\n padding: 0 $horizontal-padding;\n\n &.animating {\n overflow: hidden;\n pointer-events: none;\n }\n }\n\n &.animation-enabled {\n .section-title {\n .collapsible-arrow {\n transition: transform 0.5s $photon-easing;\n }\n }\n\n .section-body {\n transition: max-height 0.5s $photon-easing;\n }\n }\n\n &.collapsed {\n .section-body {\n max-height: 0;\n overflow: hidden;\n }\n }\n}\n",
"\n.asrouter-admin {\n $border-color: var(--newtab-border-secondary-color);\n $monospace: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Mono', 'Droid Sans Mono', 'Source Code Pro', monospace;\n max-width: 996px;\n margin: 0 auto;\n font-size: 14px;\n // Reset .outer-wrapper styles\n display: inherit;\n padding: 0 0 92px;\n\n h1 {\n font-weight: 200;\n font-size: 32px;\n }\n\n table {\n border-collapse: collapse;\n width: 100%;\n }\n\n .message-item {\n &:first-child td {\n border-top: 1px solid $border-color;\n }\n\n td {\n vertical-align: top;\n border-bottom: 1px solid $border-color;\n padding: 8px;\n\n &:first-child {\n border-left: 1px solid $border-color;\n }\n\n &:last-child {\n border-right: 1px solid $border-color;\n }\n }\n\n &.current {\n .message-id span {\n background: $yellow-50;\n padding: 2px 5px;\n\n .dark-theme & {\n color: $black;\n }\n }\n }\n\n &.blocked {\n .message-id,\n .message-summary {\n opacity: 0.5;\n }\n\n .message-id {\n opacity: 0.5;\n }\n }\n\n .message-id {\n font-family: $monospace;\n font-size: 12px;\n }\n }\n\n pre {\n background: var(--newtab-textbox-background-color);\n margin: 0;\n padding: 8px;\n font-size: 12px;\n max-width: 750px;\n overflow: auto;\n font-family: $monospace;\n }\n}\n",
".ASRouterButton {\n white-space: nowrap;\n border-radius: 4px;\n border: 1px solid var(--newtab-border-secondary-color);\n background-color: var(--newtab-button-secondary-color);\n font-family: inherit;\n padding: 8px 15px;\n margin-left: 12px;\n color: inherit;\n}\n",
".SnippetBaseContainer {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: var(--newtab-snippets-background-color);\n color: var(--newtab-text-primary-color);\n font-size: 12px;\n line-height: 16px;\n border-top: 1px solid var(--newtab-snippets-hairline-color);\n box-shadow: $shadow-secondary;\n display: flex;\n align-items: center;\n\n .innerWrapper {\n margin: 0 auto;\n display: flex;\n align-items: center;\n padding: 12px $section-horizontal-padding;\n\n // This is to account for the block button on smaller screens\n padding-inline-end: 36px;\n @media (min-width: $break-point-large) {\n padding-inline-end: $section-horizontal-padding;\n }\n\n max-width: $wrapper-max-width-large;\n @media (min-width: $break-point-widest) {\n max-width: $wrapper-max-width-widest;\n }\n }\n\n .blockButton {\n display: none;\n background: none;\n border: 0;\n position: absolute;\n top: 50%;\n offset-inline-end: 12px;\n height: 16px;\n width: 16px;\n background-image: url('resource://activity-stream/data/content/assets/glyph-dismiss-16.svg');\n -moz-context-properties: fill;\n fill: var(--newtab-icon-primary-color);\n opacity: 0.5;\n margin-top: -8px;\n padding: 0;\n cursor: pointer;\n\n @media (min-width: 766px) {\n offset-inline-end: 24px;\n }\n }\n\n &:hover .blockButton {\n display: block;\n }\n}\n",
".activity-stream {\n &.modal-open {\n overflow: hidden;\n }\n}\n.modalOverlayOuter {\n background: $white;\n opacity: 0.93;\n height: 100%;\n position: fixed;\n top: 0;\n width: 100%;\n display: none;\n z-index: 100000;\n\n &.active {\n display: block;\n }\n}\n\n.modalOverlayInner {\n width: 960px;\n height: 510px;\n position: fixed;\n top: calc(50% - 255px); // halfway down minus half the height of the modal\n left: calc(50% - 480px); // halfway across minus half the width of the modal\n background: $white;\n box-shadow: 0 1px 15px 0 $black-30;\n border-radius: 4px;\n display: none;\n z-index: 100001;\n\n\n // modal takes over entire screen\n @media(max-width: 960px) {\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n box-shadow: none;\n border-radius: 0;\n }\n\n // if modal is short enough, add a vertical scroll bar\n @media(max-width: 850px) and (max-height: 730px) {\n overflow-y: scroll;\n }\n\n &.active {\n display: block;\n }\n\n h2 {\n color: $grey-60;\n text-align: center;\n font-weight: 200;\n margin-top: 30px;\n font-size: 28px;\n line-height: 37px;\n letter-spacing: -0.13px;\n\n @media(max-width: 960px) {\n margin-top: 100px;\n }\n\n @media(max-width: 850px) {\n margin-top: 30px;\n }\n }\n\n .footer {\n border-top: 1px solid $grey-30;\n height: 70px;\n width: 100%;\n position: absolute;\n bottom: 0;\n text-align: center;\n background-color: $white;\n\n // if modal is short enough, footer becomes sticky\n @media(max-width: 850px) and (max-height: 730px) {\n position: sticky;\n }\n\n .modalButton {\n margin-top: 20px;\n width: 150px;\n height: 30px;\n padding: 4px 0 6px 0;\n font-size: 15px;\n }\n }\n}\n",
".SimpleSnippet {\n .title {\n display: inline;\n font-size: inherit;\n margin: 0;\n }\n\n .body {\n display: inline;\n margin: 0;\n }\n\n .icon {\n height: 42px;\n width: 42px;\n margin-inline-end: 12px;\n flex-shrink: 0;\n }\n\n .ASRouterAnchor {\n color: inherit;\n text-decoration: underline;\n }\n}\n",
".onboardingMessageContainer {\n display: grid;\n grid-column-gap: 21px;\n grid-template-columns: auto auto auto;\n padding-left: 30px;\n padding-right: 30px;\n\n // at 850px, the cards go from vertical layout to horizontal layout\n @media(max-width: 850px) {\n grid-template-columns: none;\n grid-template-rows: auto auto auto;\n padding-left: 110px;\n padding-right: 110px;\n }\n}\n\n.onboardingMessage {\n height: 340px;\n text-align: center;\n padding: 13px;\n font-weight: 200;\n\n // at 850px, img floats left, content floats right next to it\n @media(max-width: 850px) {\n height: 170px;\n text-align: left;\n padding: 10px;\n border-bottom: 1px solid #D8D8D8;\n display: flex;\n margin-bottom: 11px;\n\n &:last-child {\n border: none;\n }\n\n .onboardingContent {\n padding-left: 10px;\n height: 100%;\n\n > span > h3 {\n margin-top: 0;\n margin-bottom: 4px;\n font-weight: 400;\n }\n\n > span > p {\n margin-top: 0;\n line-height: 22px;\n font-size: 15px;\n }\n }\n }\n\n .onboardingMessageImage {\n height: 100px;\n width: 120px;\n background-size: 120px;\n background-position: center center;\n background-repeat: no-repeat;\n display: inline-block;\n vertical-align: middle;\n\n\n @media(max-width: 850px) {\n height: 75px;\n width: 160px;\n background-size: 80px;\n }\n\n &.addons {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-addons@2x.png\");\n }\n\n &.privatebrowsing {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-privatebrowsing@2x.png\");\n }\n\n &.screenshots {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-screenshots@2x.png\");\n }\n }\n\n .onboardingContent {\n height: 175px;\n\n > span > h3 {\n color: $grey-90;\n margin-bottom: 8px;\n font-weight: 400;\n }\n\n > span > p {\n color: $grey-60;\n margin-top: 0;\n height: 130px;\n margin-bottom: 12px;\n font-size: 15px;\n line-height: 22px;\n }\n }\n\n .onboardingButton {\n background-color: $grey-90-10;\n border: none;\n width: 150px;\n height: 30px;\n margin-bottom: 23px;\n padding: 4px 0 6px 0;\n font-size: 15px;\n\n // at 850px, the button shimmies down and to the right\n @media(max-width: 850px) {\n float: right;\n margin-top: -60px;\n margin-right: -10px;\n }\n }\n\n\n &::before {\n content: '';\n height: 220px;\n width: 1px;\n position: absolute;\n background-color: #D8D8D8;\n margin-top: 40px;\n margin-left: 215px;\n\n // at 850px, the line goes from vertical to horizontal\n @media(max-width: 850px) {\n content: none;\n }\n }\n\n &:last-child::before {\n content: none;\n }\n}\n"
],
"names": [],
- "mappings": "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"
+ "mappings": "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"
}
\ No newline at end of file
--- a/browser/extensions/activity-stream/css/activity-stream-windows.css
+++ b/browser/extensions/activity-stream/css/activity-stream-windows.css
@@ -162,18 +162,18 @@ body {
.icon.icon-unpin {
background-image: url("../data/content/assets/glyph-unpin-16.svg"); }
.icon.icon-unpin:dir(rtl) {
transform: scaleX(-1); }
.icon.icon-edit {
background-image: url("../data/content/assets/glyph-edit-16.svg"); }
.icon.icon-pocket {
background-image: url("../data/content/assets/glyph-pocket-16.svg"); }
- .icon.icon-historyItem {
- background-image: url("../data/content/assets/glyph-historyItem-16.svg"); }
+ .icon.icon-history-item {
+ background-image: url("chrome://browser/skin/history.svg"); }
.icon.icon-trending {
background-image: url("../data/content/assets/glyph-trending-16.svg");
transform: translateY(2px); }
.icon.icon-now {
background-image: url("chrome://browser/skin/history.svg"); }
.icon.icon-topsites {
background-image: url("../data/content/assets/glyph-topsites-16.svg"); }
.icon.icon-pin-small {
@@ -186,19 +186,16 @@ body {
.icon.icon-check {
background-image: url("chrome://browser/skin/check.svg"); }
.icon.icon-download {
background-image: url("chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar"); }
.icon.icon-copy {
background-image: url("chrome://browser/skin/edit-copy.svg"); }
.icon.icon-open-file {
background-image: url("../data/content/assets/glyph-open-file-16.svg"); }
- .icon.icon-download-folder {
- background-image: url("../data/content/assets/glyph-download-icon.svg");
- background-size: 100%; }
.icon.icon-webextension {
background-image: url("../data/content/assets/glyph-webextension-16.svg"); }
.icon.icon-highlights {
background-image: url("../data/content/assets/glyph-highlights-16.svg"); }
.icon.icon-arrowhead-down {
background-image: url("../data/content/assets/glyph-arrowhead-down-16.svg"); }
.icon.icon-arrowhead-down-small {
background-image: url("../data/content/assets/glyph-arrowhead-down-12.svg");
@@ -770,19 +767,16 @@ main {
offset-inline-end: 0;
offset-inline-start: auto; } }
@media (min-width: 1122px) and (max-width: 1570px) {
.sections-list .section-list :nth-child(3n) .context-menu {
margin-inline-end: 5px;
margin-inline-start: auto;
offset-inline-end: 0;
offset-inline-start: auto; } }
- @media (min-width: 1122px) {
- .sections-list .section-list {
- grid-template-columns: repeat(auto-fit, 309px); } }
.sections-list .section-empty-state {
border: 1px solid var(--newtab-border-secondary-color);
border-radius: 3px;
display: flex;
height: 266px;
width: 100%; }
.sections-list .section-empty-state .empty-state {
@@ -802,16 +796,20 @@ main {
color: var(--newtab-text-primary-color);
font-size: 13px;
margin-bottom: 0;
text-align: center; }
@media (min-width: 1122px) {
.sections-list .section-empty-state {
height: 370px; } }
+@media (min-width: 1122px) {
+ .sections-list .normal-cards .section-list {
+ grid-template-columns: repeat(auto-fit, 309px); } }
+
.activity-stream.welcome {
overflow: hidden; }
.activity-stream:not(.welcome) .overlay-wrapper {
display: none; }
.overlay-wrapper {
position: fixed;
@@ -1245,16 +1243,19 @@ main {
width: 27px; }
.card-outer .context-menu-button:-moz-any(:active, :focus) {
opacity: 1;
transform: scale(1); }
.card-outer.placeholder {
background: transparent; }
.card-outer.placeholder .card {
box-shadow: inset 0 0 0 1px var(--newtab-inner-box-shadow-color); }
+ .card-outer.placeholder .card-preview-image-outer,
+ .card-outer.placeholder .card-context {
+ display: none; }
.card-outer .card {
border-radius: 3px;
box-shadow: var(--newtab-card-shadow);
height: 100%; }
.card-outer > a {
color: inherit;
display: block;
height: 100%;
@@ -1275,16 +1276,17 @@ main {
transform: scale(1); }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .card-title {
color: var(--newtab-link-primary-color); }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .alternate ~ .card-host-name {
display: none; }
.card-outer:-moz-any(:hover, :focus, .active):not(.placeholder) .card-host-name.alternate {
display: block; }
.card-outer .card-preview-image-outer {
+ background-color: #D7D7DB;
border-radius: 3px 3px 0 0;
height: 122px;
overflow: hidden;
position: relative; }
.card-outer .card-preview-image-outer::after {
border-bottom: 1px solid var(--newtab-card-hairline-color);
bottom: 0;
content: '';
@@ -1297,50 +1299,35 @@ main {
height: 100%;
opacity: 0;
transition: opacity 1s cubic-bezier(0.07, 0.95, 0, 1);
width: 100%; }
.card-outer .card-preview-image-outer .card-preview-image.loaded {
opacity: 1; }
.card-outer .card-details {
padding: 15px 16px 12px; }
- .card-outer .card-details.no-image {
- padding-top: 16px; }
.card-outer .card-text {
max-height: 78px;
overflow: hidden; }
- .card-outer .card-text.no-image {
- max-height: 192px; }
.card-outer .card-text.no-host-name, .card-outer .card-text.no-context {
max-height: 97px; }
- .card-outer .card-text.no-image.no-host-name, .card-outer .card-text.no-image.no-context {
- max-height: 211px; }
.card-outer .card-text.no-host-name.no-context {
max-height: 116px; }
- .card-outer .card-text.no-image.no-host-name.no-context {
- max-height: 230px; }
.card-outer .card-text:not(.no-description) .card-title {
max-height: 57px;
overflow: hidden; }
.card-outer .card-host-name {
color: var(--newtab-text-secondary-color);
font-size: 10px;
overflow: hidden;
padding-bottom: 4px;
text-overflow: ellipsis;
text-transform: uppercase; }
.card-outer .card-host-name.alternate {
display: none; }
- .card-outer .card-download-icon {
- float: inline-end;
- margin-inline-start: 15px;
- margin-top: 2px; }
- .card-outer .card-download-icon.icon-download-folder {
- height: 36px;
- width: 36px; }
.card-outer .card-title {
font-size: 14px;
font-weight: 600;
line-height: 19px;
margin: 0 0 2px;
word-wrap: break-word; }
.card-outer .card-description {
font-size: 12px;
@@ -1362,43 +1349,97 @@ main {
height: 22px;
margin-inline-end: 6px; }
.card-outer .card-context-label {
flex-grow: 1;
line-height: 22px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
- @media (min-width: 1122px) {
- .card-outer {
- height: 370px; }
- .card-outer .card-preview-image-outer {
- height: 155px; }
- .card-outer .card-details {
- padding: 13px 16px 12px; }
- .card-outer .card-text {
- max-height: 140px; }
- .card-outer .card-host-name {
- font-size: 12px;
- padding-bottom: 5px; }
- .card-outer .card-download-icon.icon-download-folder {
- height: 54px;
- width: 54px; }
- .card-outer .card-title {
- font-size: 17px;
- line-height: 23px;
- margin-bottom: 0; }
- .card-outer .card-text:not(.no-description) .card-title {
- max-height: 69px; }
- .card-outer .card-description {
- font-size: 15px;
- line-height: 23px; }
- .card-outer .card-context {
- bottom: 4px;
- font-size: 14px; } }
+
+@media (min-width: 1122px) {
+ .normal-cards .card-outer {
+ height: 370px; }
+ .normal-cards .card-outer .card-preview-image-outer {
+ height: 155px; }
+ .normal-cards .card-outer .card-details {
+ padding: 13px 16px 12px; }
+ .normal-cards .card-outer .card-text {
+ max-height: 140px; }
+ .normal-cards .card-outer .card-host-name {
+ font-size: 12px;
+ padding-bottom: 5px; }
+ .normal-cards .card-outer .card-title {
+ font-size: 17px;
+ line-height: 23px;
+ margin-bottom: 0; }
+ .normal-cards .card-outer .card-text:not(.no-description) .card-title {
+ max-height: 69px; }
+ .normal-cards .card-outer .card-description {
+ font-size: 15px;
+ line-height: 23px; }
+ .normal-cards .card-outer .card-context {
+ bottom: 4px;
+ font-size: 14px; } }
+
+.compact-cards .card-outer {
+ height: 160px; }
+ .compact-cards .card-outer .card-preview-image-outer {
+ height: 108px; }
+ .compact-cards .card-outer .card-details {
+ padding: 12px 16px; }
+ .compact-cards .card-outer .card-host-name {
+ line-height: 10px; }
+ .compact-cards .card-outer .card-text .card-title,
+ .compact-cards .card-outer .card-text:not(.no-description) .card-title {
+ font-size: 10px;
+ line-height: 12px;
+ max-height: 12px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap; }
+ .compact-cards .card-outer .card-description {
+ display: none; }
+ .compact-cards .card-outer .card-context {
+ background-color: var(--newtab-card-background-color);
+ border-radius: 16px;
+ height: 32px;
+ width: 32px;
+ padding: 8px;
+ top: 92px;
+ left: auto;
+ offset-inline-end: 12px; }
+ .compact-cards .card-outer .card-context::after {
+ border: 1px solid var(--newtab-card-hairline-color);
+ border-bottom: 0;
+ border-radius: 16px 16px 0 0;
+ content: '';
+ position: absolute;
+ height: 50%;
+ width: 100%;
+ top: 0;
+ left: 0; }
+ .compact-cards .card-outer .card-context .card-context-icon {
+ margin-inline-end: 0;
+ height: 16px;
+ width: 16px; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-bookmark-added {
+ fill: #0A84FF; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-download {
+ fill: #12BC00; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-history-item {
+ fill: #B1B1B3; }
+ .compact-cards .card-outer .card-context .card-context-icon.icon-pocket {
+ fill: #D70022; }
+ .compact-cards .card-outer .card-context .card-context-label {
+ display: none; }
+
+@media not all and (min-width: 1122px) {
+ .compact-cards .hide-for-narrow {
+ display: none; } }
.manual-migration-container {
color: var(--newtab-text-conditional-color);
font-size: 13px;
line-height: 15px;
margin-bottom: 20px;
text-align: center; }
@media (min-width: 610px) {
--- a/browser/extensions/activity-stream/css/activity-stream-windows.css.map
+++ b/browser/extensions/activity-stream/css/activity-stream-windows.css.map
@@ -26,33 +26,33 @@
"../content-src/asrouter/components/ModalOverlay/_ModalOverlay.scss",
"../content-src/asrouter/templates/SimpleSnippet/_SimpleSnippet.scss",
"../content-src/asrouter/templates/OnboardingMessage/_OnboardingMessage.scss"
],
"sourcesContent": [
"/* This is the windows variant */ // sass-lint:disable-line no-css-comments\n\n$os-infopanel-arrow-height: 10px;\n$os-infopanel-arrow-offset-end: 6px;\n$os-infopanel-arrow-width: 20px;\n\n@import './activity-stream';\n",
"@import './normalize';\n@import './variables';\n@import './theme';\n@import './icons';\n\nhtml {\n height: 100%;\n}\n\nbody,\n#root { // sass-lint:disable-line no-ids\n min-height: 100vh;\n}\n\nbody {\n background-color: var(--newtab-background-color);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Ubuntu', 'Helvetica Neue', sans-serif;\n font-size: 16px;\n overflow-y: scroll;\n}\n\nh1,\nh2 {\n font-weight: normal;\n}\n\na {\n text-decoration: none;\n}\n\n// For screen readers\n.sr-only {\n border: 0;\n clip: rect(0, 0, 0, 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n}\n\n.inner-border {\n border: $border-secondary;\n border-radius: $border-radius;\n height: 100%;\n left: 0;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 100%;\n z-index: 100;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n.show-on-init {\n opacity: 0;\n transition: opacity 0.2s ease-in;\n\n &.on {\n animation: fadeIn 0.2s;\n opacity: 1;\n }\n}\n\n.actions {\n border-top: $border-secondary;\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: flex-start;\n margin: 0;\n padding: 15px 25px 0;\n}\n\n// Default button (grey)\n.button,\n.actions button {\n background-color: var(--newtab-button-secondary-color);\n border: $border-primary;\n border-radius: 4px;\n color: inherit;\n cursor: pointer;\n margin-bottom: 15px;\n padding: 10px 30px;\n white-space: nowrap;\n\n &:hover:not(.dismiss) {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n }\n\n &.dismiss {\n background-color: transparent;\n border: 0;\n padding: 0;\n text-decoration: underline;\n }\n\n // Blue button\n &.primary,\n &.done {\n background-color: var(--newtab-button-primary-color);\n border: solid 1px var(--newtab-button-primary-color);\n color: $white;\n margin-inline-start: auto;\n }\n}\n\ninput {\n &[type='text'],\n &[type='search'] {\n border-radius: $border-radius;\n }\n}\n\n// Make sure snippets show up above other UI elements\n#snippets-container { // sass-lint:disable-line no-ids\n z-index: 1;\n}\n\n// Components\n@import '../components/Base/Base';\n@import '../components/ErrorBoundary/ErrorBoundary';\n@import '../components/TopSites/TopSites';\n@import '../components/Sections/Sections';\n@import '../components/StartupOverlay/StartupOverlay';\n@import '../components/Topics/Topics';\n@import '../components/Search/Search';\n@import '../components/ContextMenu/ContextMenu';\n@import '../components/ConfirmDialog/ConfirmDialog';\n@import '../components/Card/Card';\n@import '../components/ManualMigration/ManualMigration';\n@import '../components/CollapsibleSection/CollapsibleSection';\n@import '../components/ASRouterAdmin/ASRouterAdmin';\n\n// AS Router\n@import '../asrouter/components/Button/Button';\n@import '../asrouter/components/SnippetBase/SnippetBase';\n@import '../asrouter/components/ModalOverlay/ModalOverlay';\n@import '../asrouter/templates/SimpleSnippet/SimpleSnippet';\n@import '../asrouter/templates/OnboardingMessage/OnboardingMessage';\n",
"html {\n box-sizing: border-box;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n*::-moz-focus-inner {\n border: 0;\n}\n\nbody {\n margin: 0;\n}\n\nbutton,\ninput {\n background-color: inherit;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n}\n\n[hidden] {\n display: none !important; // sass-lint:disable-line no-important\n}\n",
- "// Photon colors from http://design.firefox.com/photon/visuals/color.html\n$blue-40: #45A1FF;\n$blue-50: #0A84FF;\n$blue-60: #0060DF;\n$blue-70: #003EAA;\n$blue-80: #002275;\n$grey-10: #F9F9FA;\n$grey-20: #EDEDF0;\n$grey-30: #D7D7DB;\n$grey-40: #B1B1B3;\n$grey-50: #737373;\n$grey-60: #4A4A4F;\n$grey-70: #38383D;\n$grey-80: #2A2A2E;\n$grey-90: #0C0C0D;\n$teal-70: #008EA4;\n$red-60: #D70022;\n$yellow-50: #FFE900;\n\n// Photon opacity from http://design.firefox.com/photon/visuals/color.html#opacity\n$grey-10-10: rgba($grey-10, 0.1);\n$grey-10-20: rgba($grey-10, 0.2);\n$grey-10-40: rgba($grey-10, 0.4);\n$grey-10-60: rgba($grey-10, 0.6);\n$grey-10-80: rgba($grey-10, 0.8);\n$grey-20-60: rgba($grey-20, 0.6);\n$grey-20-80: rgba($grey-20, 0.8);\n$grey-30-60: rgba($grey-30, 0.6);\n$grey-90-10: rgba($grey-90, 0.1);\n$grey-90-20: rgba($grey-90, 0.2);\n$grey-90-30: rgba($grey-90, 0.3);\n$grey-90-40: rgba($grey-90, 0.4);\n$grey-90-50: rgba($grey-90, 0.5);\n$grey-90-60: rgba($grey-90, 0.6);\n$grey-90-70: rgba($grey-90, 0.7);\n$grey-90-80: rgba($grey-90, 0.8);\n$grey-90-90: rgba($grey-90, 0.9);\n\n$black: #000;\n$black-5: rgba($black, 0.05);\n$black-10: rgba($black, 0.1);\n$black-15: rgba($black, 0.15);\n$black-20: rgba($black, 0.2);\n$black-25: rgba($black, 0.25);\n$black-30: rgba($black, 0.3);\n\n// Photon transitions from http://design.firefox.com/photon/motion/duration-and-easing.html\n$photon-easing: cubic-bezier(0.07, 0.95, 0, 1);\n\n// Other colors\n$white: #FFF;\n$white-10: rgba($white, 0.1);\n$pocket-teal: #50BCB6;\n\n$border-radius: 3px;\n\n// Grid related styles\n$base-gutter: 32px;\n$section-horizontal-padding: 25px;\n$section-vertical-padding: 10px;\n$section-spacing: 40px - $section-vertical-padding * 2;\n$grid-unit: 96px; // 1 top site\n\n$icon-size: 16px;\n$smaller-icon-size: 12px;\n$larger-icon-size: 32px;\n\n$small-download-folder-icon-size: 36px;\n$large-download-folder-icon-size: $small-download-folder-icon-size * 1.5;\n\n$wrapper-default-width: $grid-unit * 2 + $base-gutter * 1 + $section-horizontal-padding * 2; // 2 top sites\n$wrapper-max-width-small: $grid-unit * 3 + $base-gutter * 2 + $section-horizontal-padding * 2; // 3 top sites\n$wrapper-max-width-medium: $grid-unit * 4 + $base-gutter * 3 + $section-horizontal-padding * 2; // 4 top sites\n$wrapper-max-width-large: $grid-unit * 6 + $base-gutter * 5 + $section-horizontal-padding * 2; // 6 top sites\n$wrapper-max-width-widest: $grid-unit * 8 + $base-gutter * 7 + $section-horizontal-padding * 2; // 8 top sites\n// For the breakpoints, we need to add space for the scrollbar to avoid weird\n// layout issues when the scrollbar is visible. 16px is wide enough to cover all\n// OSes and keeps it simpler than a per-OS value.\n$scrollbar-width: 16px;\n$break-point-small: $wrapper-max-width-small + $base-gutter * 2 + $scrollbar-width;\n$break-point-medium: $wrapper-max-width-medium + $base-gutter * 2 + $scrollbar-width;\n$break-point-large: $wrapper-max-width-large + $base-gutter * 2 + $scrollbar-width;\n$break-point-widest: $wrapper-max-width-widest + $base-gutter * 2 + $scrollbar-width;\n\n$section-title-font-size: 13px;\n\n$card-width: $grid-unit * 2 + $base-gutter;\n$card-height: 266px;\n$card-preview-image-height: 122px;\n$card-title-margin: 2px;\n$card-text-line-height: 19px;\n// Larger cards for wider screens:\n$card-width-large: 309px;\n$card-height-large: 370px;\n$card-preview-image-height-large: 155px;\n\n$topic-margin-top: 12px;\n\n$context-menu-button-size: 27px;\n$context-menu-button-boxshadow: 0 2px $grey-90-10;\n$context-menu-shadow: 0 5px 10px $black-30, 0 0 0 1px $black-20;\n$context-menu-font-size: 14px;\n$context-menu-border-radius: 5px;\n$context-menu-outer-padding: 5px;\n$context-menu-item-padding: 3px 12px;\n\n$error-fallback-font-size: 12px;\n$error-fallback-line-height: 1.5;\n\n$image-path: '../data/content/assets/';\n\n$snippets-container-height: 120px;\n\n$textbox-shadow-size: 4px;\n\n@mixin fade-in {\n box-shadow: inset $inner-box-shadow, $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin fade-in-card {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin context-menu-button {\n .context-menu-button {\n background-clip: padding-box;\n background-color: var(--newtab-contextmenu-button-color);\n background-image: url('chrome://browser/skin/page-action.svg');\n background-position: 55%;\n border: $border-primary;\n border-radius: 100%;\n box-shadow: $context-menu-button-boxshadow;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n height: $context-menu-button-size;\n offset-inline-end: -($context-menu-button-size / 2);\n opacity: 0;\n position: absolute;\n top: -($context-menu-button-size / 2);\n transform: scale(0.25);\n transition-duration: 200ms;\n transition-property: transform, opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus) {\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n@mixin context-menu-button-hover {\n .context-menu-button {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@mixin context-menu-open-middle {\n .context-menu {\n margin-inline-end: auto;\n margin-inline-start: auto;\n offset-inline-end: auto;\n offset-inline-start: -$base-gutter;\n }\n}\n\n@mixin context-menu-open-left {\n .context-menu {\n margin-inline-end: 5px;\n margin-inline-start: auto;\n offset-inline-end: 0;\n offset-inline-start: auto;\n }\n}\n\n@mixin flip-icon {\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n}\n",
+ "// Photon colors from http://design.firefox.com/photon/visuals/color.html\n$blue-40: #45A1FF;\n$blue-50: #0A84FF;\n$blue-60: #0060DF;\n$blue-70: #003EAA;\n$blue-80: #002275;\n$grey-10: #F9F9FA;\n$grey-20: #EDEDF0;\n$grey-30: #D7D7DB;\n$grey-40: #B1B1B3;\n$grey-50: #737373;\n$grey-60: #4A4A4F;\n$grey-70: #38383D;\n$grey-80: #2A2A2E;\n$grey-90: #0C0C0D;\n$teal-70: #008EA4;\n$red-60: #D70022;\n$yellow-50: #FFE900;\n\n// Photon opacity from http://design.firefox.com/photon/visuals/color.html#opacity\n$grey-10-10: rgba($grey-10, 0.1);\n$grey-10-20: rgba($grey-10, 0.2);\n$grey-10-40: rgba($grey-10, 0.4);\n$grey-10-60: rgba($grey-10, 0.6);\n$grey-10-80: rgba($grey-10, 0.8);\n$grey-20-60: rgba($grey-20, 0.6);\n$grey-20-80: rgba($grey-20, 0.8);\n$grey-30-60: rgba($grey-30, 0.6);\n$grey-90-10: rgba($grey-90, 0.1);\n$grey-90-20: rgba($grey-90, 0.2);\n$grey-90-30: rgba($grey-90, 0.3);\n$grey-90-40: rgba($grey-90, 0.4);\n$grey-90-50: rgba($grey-90, 0.5);\n$grey-90-60: rgba($grey-90, 0.6);\n$grey-90-70: rgba($grey-90, 0.7);\n$grey-90-80: rgba($grey-90, 0.8);\n$grey-90-90: rgba($grey-90, 0.9);\n\n$black: #000;\n$black-5: rgba($black, 0.05);\n$black-10: rgba($black, 0.1);\n$black-15: rgba($black, 0.15);\n$black-20: rgba($black, 0.2);\n$black-25: rgba($black, 0.25);\n$black-30: rgba($black, 0.3);\n\n// Other colors\n$white: #FFF;\n$white-10: rgba($white, 0.1);\n$pocket-teal: #50BCB6;\n$bookmark-icon-fill: #0A84FF;\n$download-icon-fill: #12BC00;\n$history-icon-fill: #B1B1B3;\n$pocket-icon-fill: #D70022;\n\n// Photon transitions from http://design.firefox.com/photon/motion/duration-and-easing.html\n$photon-easing: cubic-bezier(0.07, 0.95, 0, 1);\n\n$border-radius: 3px;\n\n// Grid related styles\n$base-gutter: 32px;\n$section-horizontal-padding: 25px;\n$section-vertical-padding: 10px;\n$section-spacing: 40px - $section-vertical-padding * 2;\n$grid-unit: 96px; // 1 top site\n\n$icon-size: 16px;\n$smaller-icon-size: 12px;\n$larger-icon-size: 32px;\n\n$wrapper-default-width: $grid-unit * 2 + $base-gutter * 1 + $section-horizontal-padding * 2; // 2 top sites\n$wrapper-max-width-small: $grid-unit * 3 + $base-gutter * 2 + $section-horizontal-padding * 2; // 3 top sites\n$wrapper-max-width-medium: $grid-unit * 4 + $base-gutter * 3 + $section-horizontal-padding * 2; // 4 top sites\n$wrapper-max-width-large: $grid-unit * 6 + $base-gutter * 5 + $section-horizontal-padding * 2; // 6 top sites\n$wrapper-max-width-widest: $grid-unit * 8 + $base-gutter * 7 + $section-horizontal-padding * 2; // 8 top sites\n// For the breakpoints, we need to add space for the scrollbar to avoid weird\n// layout issues when the scrollbar is visible. 16px is wide enough to cover all\n// OSes and keeps it simpler than a per-OS value.\n$scrollbar-width: 16px;\n$break-point-small: $wrapper-max-width-small + $base-gutter * 2 + $scrollbar-width;\n$break-point-medium: $wrapper-max-width-medium + $base-gutter * 2 + $scrollbar-width;\n$break-point-large: $wrapper-max-width-large + $base-gutter * 2 + $scrollbar-width;\n$break-point-widest: $wrapper-max-width-widest + $base-gutter * 2 + $scrollbar-width;\n\n$section-title-font-size: 13px;\n\n$card-width: $grid-unit * 2 + $base-gutter;\n$card-height: 266px;\n$card-preview-image-height: 122px;\n$card-title-margin: 2px;\n$card-text-line-height: 19px;\n// Larger cards for wider screens:\n$card-width-large: 309px;\n$card-height-large: 370px;\n$card-preview-image-height-large: 155px;\n// Compact cards for Highlights\n$card-height-compact: 160px;\n$card-preview-image-height-compact: 108px;\n\n$topic-margin-top: 12px;\n\n$context-menu-button-size: 27px;\n$context-menu-button-boxshadow: 0 2px $grey-90-10;\n$context-menu-shadow: 0 5px 10px $black-30, 0 0 0 1px $black-20;\n$context-menu-font-size: 14px;\n$context-menu-border-radius: 5px;\n$context-menu-outer-padding: 5px;\n$context-menu-item-padding: 3px 12px;\n\n$error-fallback-font-size: 12px;\n$error-fallback-line-height: 1.5;\n\n$image-path: '../data/content/assets/';\n\n$snippets-container-height: 120px;\n\n$textbox-shadow-size: 4px;\n\n@mixin fade-in {\n box-shadow: inset $inner-box-shadow, $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin fade-in-card {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n}\n\n@mixin context-menu-button {\n .context-menu-button {\n background-clip: padding-box;\n background-color: var(--newtab-contextmenu-button-color);\n background-image: url('chrome://browser/skin/page-action.svg');\n background-position: 55%;\n border: $border-primary;\n border-radius: 100%;\n box-shadow: $context-menu-button-boxshadow;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n height: $context-menu-button-size;\n offset-inline-end: -($context-menu-button-size / 2);\n opacity: 0;\n position: absolute;\n top: -($context-menu-button-size / 2);\n transform: scale(0.25);\n transition-duration: 200ms;\n transition-property: transform, opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus) {\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n@mixin context-menu-button-hover {\n .context-menu-button {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n@mixin context-menu-open-middle {\n .context-menu {\n margin-inline-end: auto;\n margin-inline-start: auto;\n offset-inline-end: auto;\n offset-inline-start: -$base-gutter;\n }\n}\n\n@mixin context-menu-open-left {\n .context-menu {\n margin-inline-end: 5px;\n margin-inline-start: auto;\n offset-inline-end: 0;\n offset-inline-start: auto;\n }\n}\n\n@mixin flip-icon {\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n}\n",
"@function textbox-shadow($color) {\n @return 0 0 0 1px $color, 0 0 0 $textbox-shadow-size rgba($color, 0.3);\n}\n\n@mixin textbox-focus($color) {\n --newtab-textbox-focus-color: $color;\n --newtab-textbox-focus-boxshadow: textbox-shadow($color);\n}\n\n// scss variables related to the theme.\n$border-primary: 1px solid var(--newtab-border-primary-color);\n$border-secondary: 1px solid var(--newtab-border-secondary-color);\n$inner-box-shadow: 0 0 0 1px var(--newtab-inner-box-shadow-color);\n$input-border: 1px solid var(--newtab-textbox-border);\n$input-border-active: 1px solid var(--newtab-textbox-focus-color);\n$input-error-border: 1px solid $red-60;\n$input-error-boxshadow: textbox-shadow($red-60);\n$shadow-primary: 0 0 0 5px var(--newtab-card-active-outline-color);\n$shadow-secondary: 0 1px 4px 0 $grey-90-20;\n\n// Default theme\nbody {\n // General styles\n --newtab-background-color: $grey-10;\n --newtab-border-primary-color: $grey-40;\n --newtab-border-secondary-color: $grey-30;\n --newtab-button-primary-color: $blue-60;\n --newtab-button-secondary-color: inherit;\n --newtab-element-active-color: $grey-30-60;\n --newtab-element-hover-color: $grey-20;\n --newtab-icon-primary-color: $grey-90-80;\n --newtab-icon-secondary-color: $grey-90-60;\n --newtab-icon-tertiary-color: $grey-30;\n --newtab-inner-box-shadow-color: $black-10;\n --newtab-link-primary-color: $blue-60;\n --newtab-link-secondary-color: $teal-70;\n --newtab-text-conditional-color: $grey-60;\n --newtab-text-primary-color: $grey-90;\n --newtab-text-secondary-color: $grey-50;\n --newtab-text-tertiary-color: $grey-50;\n --newtab-textbox-background-color: $white;\n --newtab-textbox-border: $grey-90-20;\n @include textbox-focus($blue-60); // sass-lint:disable-line mixins-before-declarations\n\n // Context menu\n --newtab-contextmenu-background-color: $grey-10;\n --newtab-contextmenu-button-color: $white;\n\n // Modal + overlay\n --newtab-modal-color: $white;\n --newtab-overlay-color: $grey-20-80;\n\n // Sections\n --newtab-section-header-text-color: $grey-50;\n --newtab-section-navigation-text-color: $grey-50;\n --newtab-section-active-contextmenu-color: $grey-90;\n\n // Search\n --newtab-search-border-color: transparent;\n --newtab-search-dropdown-color: $white;\n --newtab-search-dropdown-header-color: $grey-10;\n --newtab-search-icon-color: $grey-90-40;\n\n // Top Sites\n --newtab-topsites-background-color: $white;\n --newtab-topsites-icon-shadow: inset $inner-box-shadow;\n --newtab-topsites-label-color: inherit;\n\n // Cards\n --newtab-card-active-outline-color: $grey-30;\n --newtab-card-background-color: $white;\n --newtab-card-hairline-color: $black-10;\n --newtab-card-shadow: 0 1px 4px 0 $grey-90-10;\n\n // Snippets\n --newtab-snippets-background-color: $white;\n --newtab-snippets-hairline-color: transparent;\n}\n\n// Dark theme\n.dark-theme {\n // General styles\n --newtab-background-color: $grey-80;\n --newtab-border-primary-color: $grey-10-80;\n --newtab-border-secondary-color: $grey-10-10;\n --newtab-button-primary-color: $blue-60;\n --newtab-button-secondary-color: $grey-70;\n --newtab-element-active-color: $grey-10-20;\n --newtab-element-hover-color: $grey-10-10;\n --newtab-icon-primary-color: $grey-10-80;\n --newtab-icon-secondary-color: $grey-10-40;\n --newtab-icon-tertiary-color: $grey-10-40;\n --newtab-inner-box-shadow-color: $grey-10-20;\n --newtab-link-primary-color: $blue-40;\n --newtab-link-secondary-color: $pocket-teal;\n --newtab-text-conditional-color: $grey-10;\n --newtab-text-primary-color: $grey-10;\n --newtab-text-secondary-color: $grey-10-80;\n --newtab-text-tertiary-color: $grey-10-60;\n --newtab-textbox-background-color: $grey-70;\n --newtab-textbox-border: $grey-10-20;\n @include textbox-focus($blue-40); // sass-lint:disable-line mixins-before-declarations\n\n // Context menu\n --newtab-contextmenu-background-color: $grey-60;\n --newtab-contextmenu-button-color: $grey-80;\n\n // Modal + overlay\n --newtab-modal-color: $grey-80;\n --newtab-overlay-color: $grey-90-80;\n\n // Sections\n --newtab-section-header-text-color: $grey-10-80;\n --newtab-section-navigation-text-color: $grey-10-80;\n --newtab-section-active-contextmenu-color: $white;\n\n // Search\n --newtab-search-border-color: $grey-10-20;\n --newtab-search-dropdown-color: $grey-70;\n --newtab-search-dropdown-header-color: $grey-60;\n --newtab-search-icon-color: $grey-10-60;\n\n // Top Sites\n --newtab-topsites-background-color: $grey-70;\n --newtab-topsites-icon-shadow: none;\n --newtab-topsites-label-color: $grey-10-80;\n\n // Cards\n --newtab-card-active-outline-color: $grey-60;\n --newtab-card-background-color: $grey-70;\n --newtab-card-hairline-color: $grey-10-10;\n --newtab-card-shadow: 0 1px 8px 0 $grey-90-20;\n\n // Snippets\n --newtab-snippets-background-color: $grey-70;\n --newtab-snippets-hairline-color: $white-10;\n}\n",
- ".icon {\n background-position: center center;\n background-repeat: no-repeat;\n background-size: $icon-size;\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-icon-primary-color);\n height: $icon-size;\n vertical-align: middle;\n width: $icon-size;\n\n &.icon-spacer {\n margin-inline-end: 8px;\n }\n\n &.icon-small-spacer {\n margin-inline-end: 6px;\n }\n\n &.icon-bookmark-added {\n background-image: url('chrome://browser/skin/bookmark.svg');\n }\n\n &.icon-bookmark-hollow {\n background-image: url('chrome://browser/skin/bookmark-hollow.svg');\n }\n\n &.icon-clear-input {\n fill: var(--newtab-icon-secondary-color);\n background-image: url('#{$image-path}glyph-cancel-16.svg');\n }\n\n &.icon-delete {\n background-image: url('#{$image-path}glyph-delete-16.svg');\n }\n\n &.icon-search {\n background-image: url('chrome://browser/skin/search-glass.svg');\n }\n\n &.icon-modal-delete {\n flex-shrink: 0;\n background-image: url('#{$image-path}glyph-modal-delete-32.svg');\n background-size: $larger-icon-size;\n height: $larger-icon-size;\n width: $larger-icon-size;\n }\n\n &.icon-dismiss {\n background-image: url('#{$image-path}glyph-dismiss-16.svg');\n }\n\n &.icon-info {\n background-image: url('#{$image-path}glyph-info-16.svg');\n }\n\n &.icon-import {\n background-image: url('#{$image-path}glyph-import-16.svg');\n }\n\n &.icon-new-window {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-newWindow-16.svg');\n }\n\n &.icon-new-window-private {\n background-image: url('chrome://browser/skin/privateBrowsing.svg');\n }\n\n &.icon-settings {\n background-image: url('chrome://browser/skin/settings.svg');\n }\n\n &.icon-pin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-16.svg');\n }\n\n &.icon-unpin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-unpin-16.svg');\n }\n\n &.icon-edit {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.icon-pocket {\n background-image: url('#{$image-path}glyph-pocket-16.svg');\n }\n\n &.icon-historyItem {\n background-image: url('#{$image-path}glyph-historyItem-16.svg');\n }\n\n &.icon-trending {\n background-image: url('#{$image-path}glyph-trending-16.svg');\n transform: translateY(2px); // trending bolt is visually top heavy\n }\n\n &.icon-now {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-topsites {\n background-image: url('#{$image-path}glyph-topsites-16.svg');\n }\n\n &.icon-pin-small {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-check {\n background-image: url('chrome://browser/skin/check.svg');\n }\n\n &.icon-download {\n background-image: url('chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar');\n }\n\n &.icon-copy {\n background-image: url('chrome://browser/skin/edit-copy.svg');\n }\n\n &.icon-open-file {\n background-image: url('#{$image-path}glyph-open-file-16.svg');\n }\n\n &.icon-download-folder {\n background-image: url('#{$image-path}glyph-download-icon.svg');\n background-size: 100%;\n }\n\n &.icon-webextension {\n background-image: url('#{$image-path}glyph-webextension-16.svg');\n }\n\n &.icon-highlights {\n background-image: url('#{$image-path}glyph-highlights-16.svg');\n }\n\n &.icon-arrowhead-down {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n }\n\n &.icon-arrowhead-down-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-arrowhead-forward-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n transform: rotate(-90deg);\n width: $smaller-icon-size;\n\n &:dir(rtl) {\n transform: rotate(90deg);\n }\n }\n\n &.icon-arrowhead-up {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n transform: rotate(180deg);\n }\n\n &.icon-add {\n background-image: url('#{$image-path}glyph-add-16.svg');\n }\n\n &.icon-minimize {\n background-image: url('#{$image-path}glyph-minimize-16.svg');\n }\n\n &.icon-maximize {\n background-image: url('#{$image-path}glyph-maximize-16.svg');\n }\n}\n",
+ ".icon {\n background-position: center center;\n background-repeat: no-repeat;\n background-size: $icon-size;\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-icon-primary-color);\n height: $icon-size;\n vertical-align: middle;\n width: $icon-size;\n\n &.icon-spacer {\n margin-inline-end: 8px;\n }\n\n &.icon-small-spacer {\n margin-inline-end: 6px;\n }\n\n &.icon-bookmark-added {\n background-image: url('chrome://browser/skin/bookmark.svg');\n }\n\n &.icon-bookmark-hollow {\n background-image: url('chrome://browser/skin/bookmark-hollow.svg');\n }\n\n &.icon-clear-input {\n fill: var(--newtab-icon-secondary-color);\n background-image: url('#{$image-path}glyph-cancel-16.svg');\n }\n\n &.icon-delete {\n background-image: url('#{$image-path}glyph-delete-16.svg');\n }\n\n &.icon-search {\n background-image: url('chrome://browser/skin/search-glass.svg');\n }\n\n &.icon-modal-delete {\n flex-shrink: 0;\n background-image: url('#{$image-path}glyph-modal-delete-32.svg');\n background-size: $larger-icon-size;\n height: $larger-icon-size;\n width: $larger-icon-size;\n }\n\n &.icon-dismiss {\n background-image: url('#{$image-path}glyph-dismiss-16.svg');\n }\n\n &.icon-info {\n background-image: url('#{$image-path}glyph-info-16.svg');\n }\n\n &.icon-import {\n background-image: url('#{$image-path}glyph-import-16.svg');\n }\n\n &.icon-new-window {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-newWindow-16.svg');\n }\n\n &.icon-new-window-private {\n background-image: url('chrome://browser/skin/privateBrowsing.svg');\n }\n\n &.icon-settings {\n background-image: url('chrome://browser/skin/settings.svg');\n }\n\n &.icon-pin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-16.svg');\n }\n\n &.icon-unpin {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-unpin-16.svg');\n }\n\n &.icon-edit {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.icon-pocket {\n background-image: url('#{$image-path}glyph-pocket-16.svg');\n }\n\n &.icon-history-item {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-trending {\n background-image: url('#{$image-path}glyph-trending-16.svg');\n transform: translateY(2px); // trending bolt is visually top heavy\n }\n\n &.icon-now {\n background-image: url('chrome://browser/skin/history.svg');\n }\n\n &.icon-topsites {\n background-image: url('#{$image-path}glyph-topsites-16.svg');\n }\n\n &.icon-pin-small {\n @include flip-icon;\n background-image: url('#{$image-path}glyph-pin-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-check {\n background-image: url('chrome://browser/skin/check.svg');\n }\n\n &.icon-download {\n background-image: url('chrome://browser/skin/downloads/download-icons.svg#arrow-with-bar');\n }\n\n &.icon-copy {\n background-image: url('chrome://browser/skin/edit-copy.svg');\n }\n\n &.icon-open-file {\n background-image: url('#{$image-path}glyph-open-file-16.svg');\n }\n\n &.icon-webextension {\n background-image: url('#{$image-path}glyph-webextension-16.svg');\n }\n\n &.icon-highlights {\n background-image: url('#{$image-path}glyph-highlights-16.svg');\n }\n\n &.icon-arrowhead-down {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n }\n\n &.icon-arrowhead-down-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n width: $smaller-icon-size;\n }\n\n &.icon-arrowhead-forward-small {\n background-image: url('#{$image-path}glyph-arrowhead-down-12.svg');\n background-size: $smaller-icon-size;\n height: $smaller-icon-size;\n transform: rotate(-90deg);\n width: $smaller-icon-size;\n\n &:dir(rtl) {\n transform: rotate(90deg);\n }\n }\n\n &.icon-arrowhead-up {\n background-image: url('#{$image-path}glyph-arrowhead-down-16.svg');\n transform: rotate(180deg);\n }\n\n &.icon-add {\n background-image: url('#{$image-path}glyph-add-16.svg');\n }\n\n &.icon-minimize {\n background-image: url('#{$image-path}glyph-minimize-16.svg');\n }\n\n &.icon-maximize {\n background-image: url('#{$image-path}glyph-maximize-16.svg');\n }\n}\n",
".outer-wrapper {\n color: var(--newtab-text-primary-color);\n display: flex;\n flex-grow: 1;\n min-height: 100vh;\n padding: ($section-spacing + $section-vertical-padding) $base-gutter $base-gutter;\n\n &.fixed-to-top {\n display: block;\n }\n\n a {\n color: var(--newtab-link-primary-color);\n }\n}\n\nmain {\n margin: auto;\n // Offset the snippets container so things at the bottom of the page are still\n // visible when snippets / onboarding are visible. Adjust for other spacing.\n padding-bottom: $snippets-container-height - $section-spacing - $base-gutter;\n width: $wrapper-default-width;\n\n @media (min-width: $break-point-small) {\n width: $wrapper-max-width-small;\n }\n\n @media (min-width: $break-point-medium) {\n width: $wrapper-max-width-medium;\n }\n\n @media (min-width: $break-point-large) {\n width: $wrapper-max-width-large;\n }\n\n @media (min-width: $break-point-widest) {\n width: $wrapper-max-width-widest;\n }\n\n section {\n margin-bottom: $section-spacing;\n position: relative;\n }\n}\n\n.base-content-fallback {\n // Make the error message be centered against the viewport\n height: 100vh;\n}\n\n.body-wrapper {\n // Hide certain elements so the page structure is fixed, e.g., placeholders,\n // while avoiding flashes of changing content, e.g., icons and text\n $selectors-to-hide: '\n .section-title,\n .sections-list .section:last-of-type,\n .topic\n ';\n\n #{$selectors-to-hide} {\n opacity: 0;\n }\n\n &.on {\n #{$selectors-to-hide} {\n opacity: 1;\n }\n }\n}\n\n.non-collapsible-section {\n padding: 0 $section-horizontal-padding;\n}\n\n.prefs-button {\n button {\n background-color: transparent;\n border: 0;\n cursor: pointer;\n fill: var(--newtab-icon-primary-color);\n offset-inline-end: 15px;\n padding: 15px;\n position: fixed;\n top: 15px;\n z-index: 12001;\n\n &:hover,\n &:focus {\n background-color: var(--newtab-element-hover-color);\n }\n\n &:active {\n background-color: var(--newtab-element-active-color);\n }\n }\n}\n",
".as-error-fallback {\n align-items: center;\n border-radius: $border-radius;\n box-shadow: inset $inner-box-shadow;\n color: var(--newtab-text-conditional-color);\n display: flex;\n flex-direction: column;\n font-size: $error-fallback-font-size;\n justify-content: center;\n justify-items: center;\n line-height: $error-fallback-line-height;\n\n a {\n color: var(--newtab-text-conditional-color);\n text-decoration: underline;\n }\n}\n",
"$top-sites-size: $grid-unit;\n$top-sites-border-radius: 6px;\n$top-sites-title-height: 30px;\n$top-sites-vertical-space: 8px;\n$screenshot-size: cover;\n$rich-icon-size: 96px;\n$default-icon-wrapper-size: 42px;\n$default-icon-size: 32px;\n$default-icon-offset: 6px;\n$half-base-gutter: $base-gutter / 2;\n\n.top-sites {\n // Take back the margin from the bottom row of vertical spacing as well as the\n // extra whitespace below the title text as it's vertically centered.\n margin-bottom: $section-spacing - ($top-sites-vertical-space + $top-sites-title-height / 3);\n}\n\n.top-sites-list {\n list-style: none;\n margin: 0 (-$half-base-gutter);\n padding: 0;\n\n // Two columns\n @media (max-width: $break-point-small) {\n :nth-child(2n+1) {\n @include context-menu-open-middle;\n }\n\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n // Three columns\n @media (min-width: $break-point-small) and (max-width: $break-point-medium) {\n :nth-child(3n+2),\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n // Four columns\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(4n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-medium) and (max-width: $break-point-medium + $card-width) {\n :nth-child(4n+3) {\n @include context-menu-open-left;\n }\n }\n\n // Six columns\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(6n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-large) and (max-width: $break-point-large + $card-width) {\n :nth-child(6n+5) {\n @include context-menu-open-left;\n }\n }\n\n // Eight columns\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(8n) {\n @include context-menu-open-left;\n }\n }\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + $card-width) {\n :nth-child(8n+7) {\n @include context-menu-open-left;\n }\n }\n\n @media not all and (min-width: $break-point-widest) {\n .hide-for-narrow {\n display: none;\n }\n }\n\n li {\n margin: 0 0 $top-sites-vertical-space;\n }\n\n &:not(.dnd-active) {\n .top-site-outer:-moz-any(.active, :focus, :hover) {\n .tile {\n @include fade-in;\n }\n\n @include context-menu-button-hover;\n }\n }\n}\n\n// container for drop zone\n.top-site-outer {\n padding: 0 $half-base-gutter;\n display: inline-block;\n\n // container for context menu\n .top-site-inner {\n position: relative;\n\n > a {\n color: inherit;\n display: block;\n outline: none;\n\n &:-moz-any(.active, :focus) {\n .tile {\n @include fade-in;\n }\n }\n }\n }\n\n @include context-menu-button;\n\n .tile { // sass-lint:disable-block property-sort-order\n border-radius: $top-sites-border-radius;\n box-shadow: inset $inner-box-shadow, var(--newtab-card-shadow);\n height: $top-sites-size;\n position: relative;\n width: $top-sites-size;\n\n // For letter fallback\n align-items: center;\n color: var(--newtab-text-secondary-color);\n display: flex;\n font-size: 32px;\n font-weight: 200;\n justify-content: center;\n text-transform: uppercase;\n\n &::before {\n content: attr(data-fallback);\n }\n }\n\n .screenshot {\n background-color: $white;\n background-position: top left;\n background-size: $screenshot-size;\n border-radius: $top-sites-border-radius;\n box-shadow: inset $inner-box-shadow;\n height: 100%;\n left: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n transition: opacity 1s;\n width: 100%;\n\n &.active {\n opacity: 1;\n }\n }\n\n // Some common styles for all icons (rich and default) in top sites\n .top-site-icon {\n background-color: var(--newtab-topsites-background-color);\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: $top-sites-border-radius;\n box-shadow: var(--newtab-topsites-icon-shadow);\n position: absolute;\n }\n\n .rich-icon {\n background-size: cover;\n height: 100%;\n offset-inline-start: 0;\n top: 0;\n width: 100%;\n }\n\n .default-icon { // sass-lint:disable block property-sort-order\n background-size: $default-icon-size;\n bottom: -$default-icon-offset;\n height: $default-icon-wrapper-size;\n offset-inline-end: -$default-icon-offset;\n width: $default-icon-wrapper-size;\n\n // for corner letter fallback\n align-items: center;\n display: flex;\n font-size: 20px;\n justify-content: center;\n\n &[data-fallback]::before {\n content: attr(data-fallback);\n }\n }\n\n .title {\n color: var(--newtab-topsites-label-color);\n font: message-box;\n height: $top-sites-title-height;\n line-height: $top-sites-title-height;\n text-align: center;\n width: $top-sites-size;\n position: relative;\n\n .icon {\n fill: var(--newtab-icon-tertiary-color);\n offset-inline-start: 0;\n position: absolute;\n top: 10px;\n }\n\n span {\n height: $top-sites-title-height;\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &.pinned {\n span {\n padding: 0 13px;\n }\n }\n }\n\n .edit-button {\n background-image: url('#{$image-path}glyph-edit-16.svg');\n }\n\n &.placeholder {\n .tile {\n box-shadow: inset $inner-box-shadow;\n }\n\n .screenshot {\n display: none;\n }\n }\n\n &.dragged {\n .tile {\n background: $grey-20;\n box-shadow: none;\n\n *,\n &::before {\n display: none;\n }\n }\n\n .title {\n visibility: hidden;\n }\n }\n}\n\n.edit-topsites-wrapper {\n .modal {\n box-shadow: $shadow-secondary;\n left: 0;\n margin: 0 auto;\n position: fixed;\n right: 0;\n top: 40px;\n width: $wrapper-default-width;\n\n @media (min-width: $break-point-small) {\n width: $wrapper-max-width-small;\n }\n\n @media (min-width: $break-point-medium) {\n width: $wrapper-max-width-medium;\n }\n\n @media (min-width: $break-point-large) {\n width: $wrapper-max-width-large;\n }\n }\n}\n\n.topsite-form {\n $form-width: 300px;\n $form-spacing: 32px;\n\n .form-input-container {\n max-width: $form-width + 3 * $form-spacing + $rich-icon-size;\n margin: 0 auto;\n padding: $form-spacing;\n\n .top-site-outer {\n padding: 0;\n margin: 24px 0 0;\n margin-inline-start: $form-spacing;\n pointer-events: none;\n }\n\n .section-title {\n text-transform: none;\n font-size: 16px;\n margin: 0 0 16px;\n }\n }\n\n .fields-and-preview {\n display: flex;\n }\n\n label {\n font-size: $section-title-font-size;\n }\n\n .form-wrapper {\n width: 100%;\n\n .field {\n position: relative;\n\n .icon-clear-input {\n position: absolute;\n transform: translateY(-50%);\n top: 50%;\n offset-inline-end: 8px;\n }\n }\n\n .url {\n input:dir(ltr) {\n padding-right: 32px;\n }\n\n input:dir(rtl) {\n padding-left: 32px;\n\n &:not(:placeholder-shown) {\n direction: ltr;\n text-align: right;\n }\n }\n }\n\n .enable-custom-image-input {\n display: inline-block;\n font-size: 13px;\n margin-top: 4px;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n .custom-image-input-container {\n margin-top: 4px;\n\n .loading-container {\n width: 16px;\n height: 16px;\n overflow: hidden;\n position: absolute;\n transform: translateY(-50%);\n top: 50%;\n offset-inline-end: 8px;\n }\n\n // This animation is derived from Firefox's tab loading animation\n // See https://searchfox.org/mozilla-central/rev/b29daa46443b30612415c35be0a3c9c13b9dc5f6/browser/themes/shared/tabs.inc.css#208-216\n .loading-animation {\n @keyframes tab-throbber-animation {\n 100% { transform: translateX(-960px); }\n }\n\n @keyframes tab-throbber-animation-rtl {\n 100% { transform: translateX(960px); }\n }\n\n width: 960px;\n height: 16px;\n -moz-context-properties: fill;\n fill: $blue-50;\n background-image: url('chrome://browser/skin/tabbrowser/loading.svg');\n animation: tab-throbber-animation 1.05s steps(60) infinite;\n\n &:dir(rtl) {\n animation-name: tab-throbber-animation-rtl;\n }\n }\n }\n\n input {\n &[type='text'] {\n background-color: var(--newtab-textbox-background-color);\n border: $input-border;\n margin: 8px 0;\n padding: 0 8px;\n height: 32px;\n width: 100%;\n font-size: 15px;\n\n &:focus {\n border: $input-border-active;\n box-shadow: var(--newtab-textbox-focus-boxshadow);\n }\n\n &[disabled] {\n border: $input-border;\n box-shadow: none;\n opacity: 0.4;\n }\n }\n }\n\n .invalid {\n input {\n &[type='text'] {\n border: $input-error-border;\n box-shadow: $input-error-boxshadow;\n }\n }\n }\n\n .error-tooltip {\n animation: fade-up-tt 450ms;\n background: $red-60;\n border-radius: 2px;\n color: $white;\n offset-inline-start: 3px;\n padding: 5px 12px;\n position: absolute;\n top: 44px;\n z-index: 1;\n\n // tooltip caret\n &::before {\n background: $red-60;\n bottom: -8px;\n content: '.';\n height: 16px;\n offset-inline-start: 12px;\n position: absolute;\n text-indent: -999px;\n top: -7px;\n transform: rotate(45deg);\n white-space: nowrap;\n width: 16px;\n z-index: -1;\n }\n }\n }\n\n .actions {\n justify-content: flex-end;\n\n button {\n margin-inline-start: 10px;\n margin-inline-end: 0;\n }\n }\n\n @media (max-width: $break-point-small) {\n .fields-and-preview {\n flex-direction: column;\n\n .top-site-outer {\n margin-inline-start: 0;\n }\n }\n }\n}\n\n//used for tooltips below form element\n@keyframes fade-up-tt {\n 0% {\n opacity: 0;\n transform: translateY(15px);\n }\n\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n",
- ".sections-list {\n .section-list {\n display: grid;\n grid-gap: $base-gutter;\n grid-template-columns: repeat(auto-fit, $card-width);\n margin: 0;\n\n @media (max-width: $break-point-medium) {\n @include context-menu-open-left;\n }\n\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) {\n grid-template-columns: repeat(auto-fit, $card-width-large);\n }\n }\n\n .section-empty-state {\n border: $border-secondary;\n border-radius: $border-radius;\n display: flex;\n height: $card-height;\n width: 100%;\n\n .empty-state {\n margin: auto;\n max-width: 350px;\n\n .empty-state-icon {\n background-position: center;\n background-repeat: no-repeat;\n background-size: 50px 50px;\n -moz-context-properties: fill;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n height: 50px;\n margin: 0 auto;\n width: 50px;\n }\n\n .empty-state-message {\n color: var(--newtab-text-primary-color);\n font-size: 13px;\n margin-bottom: 0;\n text-align: center;\n }\n }\n\n @media (min-width: $break-point-widest) {\n height: $card-height-large;\n }\n }\n}\n",
+ ".sections-list {\n .section-list {\n display: grid;\n grid-gap: $base-gutter;\n grid-template-columns: repeat(auto-fit, $card-width);\n margin: 0;\n\n @media (max-width: $break-point-medium) {\n @include context-menu-open-left;\n }\n\n @media (min-width: $break-point-medium) and (max-width: $break-point-large) {\n :nth-child(2n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-large) and (max-width: $break-point-large + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n\n @media (min-width: $break-point-widest) and (max-width: $break-point-widest + 2 * $card-width) {\n :nth-child(3n) {\n @include context-menu-open-left;\n }\n }\n }\n\n .section-empty-state {\n border: $border-secondary;\n border-radius: $border-radius;\n display: flex;\n height: $card-height;\n width: 100%;\n\n .empty-state {\n margin: auto;\n max-width: 350px;\n\n .empty-state-icon {\n background-position: center;\n background-repeat: no-repeat;\n background-size: 50px 50px;\n -moz-context-properties: fill;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n height: 50px;\n margin: 0 auto;\n width: 50px;\n }\n\n .empty-state-message {\n color: var(--newtab-text-primary-color);\n font-size: 13px;\n margin-bottom: 0;\n text-align: center;\n }\n }\n\n @media (min-width: $break-point-widest) {\n height: $card-height-large;\n }\n }\n}\n\n@media (min-width: $break-point-widest) {\n .sections-list {\n // Compact cards stay the same size but normal cards get bigger.\n .normal-cards {\n .section-list {\n grid-template-columns: repeat(auto-fit, $card-width-large);\n }\n }\n }\n}\n",
".activity-stream {\n &.welcome {\n overflow: hidden;\n }\n\n &:not(.welcome) {\n .overlay-wrapper {\n display: none;\n }\n }\n}\n\n.overlay-wrapper {\n position: fixed;\n top: 0;\n width: 100vw;\n height: 100vh;\n z-index: 21000;\n font-weight: 200;\n transition: opacity 0.4s;\n opacity: 0;\n\n &.show {\n transition: none;\n opacity: 1;\n\n .firstrun-sign-in {\n transition: opacity 1.5s, transform 1.5s;\n transition-delay: 0.2s;\n transform: translateY(-50%) scale(1);\n opacity: 1;\n }\n\n .firstrun-firefox-logo {\n transition: opacity 2.3s;\n opacity: 1;\n }\n\n .firstrun-title,\n .firstrun-content,\n .firstrun-link {\n transition: transform 0.5s, opacity 0.8s;\n transform: translateY(0);\n opacity: 1;\n }\n\n .firstrun-title {\n transition-delay: 0.2s;\n }\n\n .firstrun-content {\n transition-delay: 0.4s;\n }\n\n .firstrun-link {\n transition-delay: 0.6s;\n }\n\n .fxaccounts-container {\n transition: none;\n opacity: 1;\n }\n }\n}\n\n.background {\n width: 100%;\n height: 100%;\n display: block;\n background: url('#{$image-path}fox-tail.png') top -200px center no-repeat,\n linear-gradient(to bottom, $blue-70 40%, #004EC2 60%, $blue-60 80%, #0080FF 90%, #00C7FF 100%) top center no-repeat,\n $blue-70;\n background-size: cover;\n}\n\n.firstrun-sign-in {\n transform: translateY(-50%) scale(0.8);\n position: relative;\n top: 50%;\n width: 358px;\n opacity: 0;\n background-color: $white;\n float: inline-end;\n color: $grey-90;\n text-align: center;\n padding: 10px;\n\n .extra-links {\n font-size: 12px;\n max-width: 340px;\n margin: 14px 50px;\n color: #676F7E;\n cursor: default;\n\n a {\n color: $grey-50;\n cursor: pointer;\n text-decoration: underline;\n }\n\n a:hover,\n a:active,\n a:focus {\n color: $blue-50;\n }\n }\n\n .email-input {\n box-shadow: none;\n margin: auto;\n width: 244px;\n display: block;\n height: 40px;\n padding-inline-start: 20px;\n border: 1px solid $grey-50;\n border-radius: 2px;\n font-size: 16px;\n\n &:hover {\n border-color: $grey-90;\n }\n }\n\n .form-header {\n font-size: 18px;\n margin: 15px auto;\n }\n\n .form-header span {\n font-size: 14px;\n margin-top: 4px;\n display: block;\n }\n\n button {\n border-radius: 2px;\n display: block;\n cursor: pointer;\n margin: 10px auto 0;\n }\n\n .continue-button {\n font-size: 18px;\n height: 43px;\n width: 250px;\n padding: 8px 0;\n border: 1px solid $blue-60;\n color: $white;\n background-color: $blue-50;\n transition-duration: 150ms;\n transition-property: background-color;\n\n &:not([disabled]):active {\n background: $blue-70;\n border-color: $blue-80;\n }\n }\n\n .skip-button {\n font-size: 13px;\n margin-top: 40px;\n margin-bottom: 20px;\n background-color: #FCFCFC;\n color: $blue-50;\n border: 1px solid $blue-50;\n min-height: 24px;\n padding: 5px 10px;\n transition: background-color 150ms, color 150ms, border-color 150ms;\n\n &[disabled] {\n background-color: #EBEBEB;\n border-color: #B1B1B1;\n color: #6A6A6A;\n cursor: default;\n opacity: 0.5;\n }\n\n &:not([disabled]):hover {\n background-color: $blue-50;\n border-color: $blue-60;\n color: $white;\n }\n }\n}\n\n.firstrun-left-divider {\n position: relative;\n float: inline-start;\n clear: both;\n width: 435px;\n}\n\n.firstrun-content {\n line-height: 1.5;\n margin-bottom: 48px;\n max-width: 352px;\n background: url('#{$image-path}sync-devices.svg') bottom center no-repeat;\n padding-bottom: 210px;\n}\n\n.firstrun-link {\n color: $white;\n display: block;\n text-decoration: underline;\n\n &:hover,\n &:active,\n &:focus {\n color: $white;\n }\n}\n\n.firstrun-title {\n background: url('chrome://branding/content/about-logo.png') top left no-repeat;\n background-size: 90px 90px;\n margin: 40px 0 10px;\n padding-top: 110px;\n font-weight: 200;\n}\n\n[dir='rtl'] {\n .firstrun-title {\n background-position: top right;\n }\n}\n\n.fxaccounts-container {\n position: absolute;\n bottom: 0;\n right: 0;\n top: 0;\n left: 0;\n color: $white;\n height: 515px;\n margin: auto;\n width: 819px;\n z-index: 10;\n transition: opacity 0.3s;\n opacity: 0;\n}\n\n.firstrun-title,\n.firstrun-content,\n.firstrun-link {\n opacity: 0;\n transform: translateY(-5px);\n}\n",
".topic {\n color: var(--newtab-section-navigation-text-color);\n font-size: 12px;\n line-height: 1.6;\n margin-top: $topic-margin-top;\n\n @media (min-width: $break-point-large) {\n line-height: 16px;\n }\n\n ul {\n margin: 0;\n padding: 0;\n @media (min-width: $break-point-large) {\n display: inline;\n padding-inline-start: 12px;\n }\n }\n\n\n ul li {\n display: inline-block;\n\n &::after {\n content: '•';\n padding: 8px;\n }\n\n &:last-child::after {\n content: none;\n }\n }\n\n .topic-link {\n color: var(--newtab-link-secondary-color);\n font-weight: bold;\n }\n\n .topic-read-more {\n color: var(--newtab-link-secondary-color);\n font-weight: bold;\n\n @media (min-width: $break-point-large) {\n // This is floating to accomodate a very large number of topics and/or\n // very long topic names due to l10n.\n float: right;\n\n &:dir(rtl) {\n float: left;\n }\n }\n\n &::after {\n background: url('#{$image-path}topic-show-more-12.svg') no-repeat center center;\n content: '';\n -moz-context-properties: fill;\n display: inline-block;\n fill: var(--newtab-link-secondary-color);\n height: 16px;\n margin-inline-start: 5px;\n vertical-align: top;\n width: 12px;\n }\n\n &:dir(rtl)::after {\n transform: scaleX(-1);\n }\n }\n\n // This is a clearfix to for the topics-read-more link which is floating and causes\n // some jank when we set overflow:hidden for the animation.\n &::after {\n clear: both;\n content: '';\n display: table;\n }\n}\n",
".search-wrapper {\n $search-height: 35px;\n $search-icon-size: 18px;\n $search-icon-padding: 8px;\n $search-icon-width: 2 * $search-icon-padding + $search-icon-size;\n $search-input-left-label-width: 35px;\n $search-button-width: 36px;\n $glyph-forward: url('chrome://browser/skin/forward.svg');\n\n cursor: default;\n display: flex;\n height: $search-height;\n margin-bottom: $section-spacing;\n position: relative;\n width: 100%;\n\n input {\n background: var(--newtab-textbox-background-color) var(--newtab-search-icon) $search-icon-padding center / $search-icon-size no-repeat;\n border: solid 1px var(--newtab-search-border-color);\n box-shadow: $shadow-secondary, 0 0 0 1px $black-15;\n font-size: 15px;\n -moz-context-properties: fill;\n fill: var(--newtab-search-icon-color);\n padding: 0;\n padding-inline-end: $search-button-width;\n padding-inline-start: $search-icon-width;\n width: 100%;\n\n &:dir(rtl) {\n background-position-x: right $search-icon-padding;\n }\n }\n\n &:hover input {\n box-shadow: $shadow-secondary, 0 0 0 1px $black-25;\n }\n\n &:active input,\n input:focus {\n border: $input-border-active;\n box-shadow: var(--newtab-textbox-focus-boxshadow);\n }\n\n .search-button {\n background: $glyph-forward no-repeat center center;\n background-size: 16px 16px;\n border: 0;\n border-radius: 0 $border-radius $border-radius 0;\n -moz-context-properties: fill;\n fill: var(--newtab-search-icon-color);\n height: 100%;\n offset-inline-end: 0;\n position: absolute;\n width: $search-button-width;\n\n &:focus,\n &:hover {\n background-color: $grey-90-10;\n cursor: pointer;\n }\n\n &:active {\n background-color: $grey-90-20;\n }\n\n &:dir(rtl) {\n transform: scaleX(-1);\n }\n }\n}\n\n@at-root {\n // Adjust the style of the contentSearchUI-generated table\n .contentSearchSuggestionTable {\n background-color: var(--newtab-search-dropdown-color);\n border: 0;\n box-shadow: $context-menu-shadow;\n transform: translateY($textbox-shadow-size);\n\n .contentSearchHeader {\n background-color: var(--newtab-search-dropdown-header-color);\n color: var(--newtab-text-secondary-color);\n }\n\n .contentSearchHeader,\n .contentSearchSettingsButton {\n border-color: var(--newtab-border-secondary-color);\n }\n\n .contentSearchSuggestionsList {\n border: 0;\n }\n\n .contentSearchOneOffsTable {\n background-color: var(--newtab-search-dropdown-header-color);\n border-top: solid 1px var(--newtab-border-secondary-color);\n }\n\n .contentSearchSearchWithHeaderSearchText {\n color: var(--newtab-text-primary-color);\n }\n\n .contentSearchSuggestionsContainer {\n background-color: var(--newtab-search-dropdown-color);\n }\n\n .contentSearchSuggestionRow {\n &.selected {\n background: var(--newtab-element-hover-color);\n color: var(--newtab-text-primary-color);\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n\n .historyIcon {\n fill: var(--newtab-icon-secondary-color);\n }\n }\n }\n\n .contentSearchOneOffsTable {\n .contentSearchSuggestionsContainer {\n background-color: var(--newtab-search-dropdown-header-color);\n }\n }\n\n .contentSearchOneOffItem {\n // Make the border slightly shorter by offsetting from the top and bottom\n $border-offset: 18%;\n\n background-image: none;\n border-image: linear-gradient(transparent $border-offset, var(--newtab-border-secondary-color) $border-offset, var(--newtab-border-secondary-color) 100% - $border-offset, transparent 100% - $border-offset) 1;\n border-inline-end: 1px solid;\n position: relative;\n\n &.selected {\n background: var(--newtab-element-hover-color);\n }\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n }\n\n .contentSearchSettingsButton {\n &:hover {\n background: var(--newtab-element-hover-color);\n color: var(--newtab-text-primary-color);\n }\n }\n }\n}\n",
".context-menu {\n background: var(--newtab-contextmenu-background-color);\n border-radius: $context-menu-border-radius;\n box-shadow: $context-menu-shadow;\n display: block;\n font-size: $context-menu-font-size;\n margin-inline-start: 5px;\n offset-inline-start: 100%;\n position: absolute;\n top: ($context-menu-button-size / 4);\n z-index: 10000;\n\n > ul {\n list-style: none;\n margin: 0;\n padding: $context-menu-outer-padding 0;\n\n > li {\n margin: 0;\n width: 100%;\n\n &.separator {\n border-bottom: $border-secondary;\n margin: $context-menu-outer-padding 0;\n }\n\n > a {\n align-items: center;\n color: inherit;\n cursor: pointer;\n display: flex;\n line-height: 16px;\n outline: none;\n padding: $context-menu-item-padding;\n white-space: nowrap;\n\n &:-moz-any(:focus, :hover) {\n background: var(--newtab-element-hover-color);\n }\n\n &:active {\n background: var(--newtab-element-active-color);\n }\n\n &.disabled {\n opacity: 0.4;\n pointer-events: none;\n }\n }\n }\n }\n}\n",
".confirmation-dialog {\n .modal {\n box-shadow: 0 2px 2px 0 $black-10;\n left: 50%;\n margin-left: -200px;\n position: fixed;\n top: 20%;\n width: 400px;\n }\n\n section {\n margin: 0;\n }\n\n .modal-message {\n display: flex;\n padding: 16px;\n padding-bottom: 0;\n\n p {\n margin: 0;\n margin-bottom: 16px;\n }\n }\n\n .actions {\n border: 0;\n display: flex;\n flex-wrap: nowrap;\n padding: 0 16px;\n\n button {\n margin-inline-end: 16px;\n padding-inline-end: 18px;\n padding-inline-start: 18px;\n white-space: normal;\n width: 50%;\n\n &.done {\n margin-inline-end: 0;\n margin-inline-start: 0;\n }\n }\n }\n\n .icon {\n margin-inline-end: 16px;\n }\n}\n\n.modal-overlay {\n background: var(--newtab-overlay-color);\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 11001;\n}\n\n.modal {\n background: var(--newtab-modal-color);\n border: $border-secondary;\n border-radius: 5px;\n font-size: 15px;\n z-index: 11002;\n}\n",
- ".card-outer {\n @include context-menu-button;\n background: var(--newtab-card-background-color);\n border-radius: $border-radius;\n display: inline-block;\n height: $card-height;\n margin-inline-end: $base-gutter;\n position: relative;\n width: 100%;\n\n &.placeholder {\n background: transparent;\n\n .card {\n box-shadow: inset $inner-box-shadow;\n }\n }\n\n .card {\n border-radius: $border-radius;\n box-shadow: var(--newtab-card-shadow);\n height: 100%;\n }\n\n > a {\n color: inherit;\n display: block;\n height: 100%;\n outline: none;\n position: absolute;\n width: 100%;\n\n &:-moz-any(.active, :focus) {\n .card {\n @include fade-in-card;\n }\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n }\n }\n\n &:-moz-any(:hover, :focus, .active):not(.placeholder) {\n @include fade-in-card;\n @include context-menu-button-hover;\n outline: none;\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n\n .alternate ~ .card-host-name {\n display: none;\n }\n\n .card-host-name.alternate {\n display: block;\n }\n }\n\n .card-preview-image-outer {\n border-radius: $border-radius $border-radius 0 0;\n height: $card-preview-image-height;\n overflow: hidden;\n position: relative;\n\n &::after {\n border-bottom: 1px solid var(--newtab-card-hairline-color);\n bottom: 0;\n content: '';\n position: absolute;\n width: 100%;\n }\n\n .card-preview-image {\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n height: 100%;\n opacity: 0;\n transition: opacity 1s $photon-easing;\n width: 100%;\n\n &.loaded {\n opacity: 1;\n }\n }\n }\n\n .card-details {\n padding: 15px 16px 12px;\n\n &.no-image {\n padding-top: 16px;\n }\n }\n\n .card-text {\n max-height: 4 * $card-text-line-height + $card-title-margin;\n overflow: hidden;\n\n &.no-image {\n max-height: 10 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name,\n &.no-context {\n max-height: 5 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-image.no-host-name,\n &.no-image.no-context {\n max-height: 11 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name.no-context {\n max-height: 6 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-image.no-host-name.no-context {\n max-height: 12 * $card-text-line-height + $card-title-margin;\n }\n\n &:not(.no-description) .card-title {\n max-height: 3 * $card-text-line-height;\n overflow: hidden;\n }\n }\n\n .card-host-name {\n color: var(--newtab-text-secondary-color);\n font-size: 10px;\n overflow: hidden;\n padding-bottom: 4px;\n text-overflow: ellipsis;\n text-transform: uppercase;\n }\n\n .card-host-name.alternate { display: none; }\n\n .card-download-icon {\n float: inline-end;\n margin-inline-start: 15px;\n margin-top: 2px;\n\n &.icon-download-folder {\n height: $small-download-folder-icon-size;\n width: $small-download-folder-icon-size;\n }\n }\n\n .card-title {\n font-size: 14px;\n font-weight: 600;\n line-height: $card-text-line-height;\n margin: 0 0 $card-title-margin;\n word-wrap: break-word;\n }\n\n .card-description {\n font-size: 12px;\n line-height: $card-text-line-height;\n margin: 0;\n overflow: hidden;\n word-wrap: break-word;\n }\n\n .card-context {\n bottom: 0;\n color: var(--newtab-text-tertiary-color);\n display: flex;\n font-size: 11px;\n left: 0;\n padding: 9px 16px 9px 14px;\n position: absolute;\n right: 0;\n }\n\n .card-context-icon {\n fill: var(--newtab-icon-tertiary-color);\n height: 22px;\n margin-inline-end: 6px;\n }\n\n .card-context-label {\n flex-grow: 1;\n line-height: 22px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n // Wide layout styles\n @media (min-width: $break-point-widest) {\n $line-height: 23px;\n height: $card-height-large;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-large;\n }\n\n .card-details {\n padding: 13px 16px 12px;\n }\n\n .card-text {\n max-height: 6 * $line-height + $card-title-margin;\n }\n\n .card-host-name {\n font-size: 12px;\n padding-bottom: 5px;\n }\n\n .card-download-icon {\n &.icon-download-folder {\n height: $large-download-folder-icon-size;\n width: $large-download-folder-icon-size;\n }\n }\n\n .card-title {\n font-size: 17px;\n line-height: $line-height;\n margin-bottom: 0;\n }\n\n .card-text:not(.no-description) {\n .card-title {\n max-height: 3 * $line-height;\n }\n }\n\n .card-description {\n font-size: 15px;\n line-height: $line-height;\n }\n\n .card-context {\n bottom: 4px;\n font-size: 14px;\n }\n }\n}\n",
+ ".card-outer {\n @include context-menu-button;\n background: var(--newtab-card-background-color);\n border-radius: $border-radius;\n display: inline-block;\n height: $card-height;\n margin-inline-end: $base-gutter;\n position: relative;\n width: 100%;\n\n &.placeholder {\n background: transparent;\n\n .card {\n box-shadow: inset $inner-box-shadow;\n }\n\n .card-preview-image-outer,\n .card-context {\n display: none;\n }\n }\n\n .card {\n border-radius: $border-radius;\n box-shadow: var(--newtab-card-shadow);\n height: 100%;\n }\n\n > a {\n color: inherit;\n display: block;\n height: 100%;\n outline: none;\n position: absolute;\n width: 100%;\n\n &:-moz-any(.active, :focus) {\n .card {\n @include fade-in-card;\n }\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n }\n }\n\n &:-moz-any(:hover, :focus, .active):not(.placeholder) {\n @include fade-in-card;\n @include context-menu-button-hover;\n outline: none;\n\n .card-title {\n color: var(--newtab-link-primary-color);\n }\n\n .alternate ~ .card-host-name {\n display: none;\n }\n\n .card-host-name.alternate {\n display: block;\n }\n }\n\n .card-preview-image-outer {\n background-color: $grey-30;\n border-radius: $border-radius $border-radius 0 0;\n height: $card-preview-image-height;\n overflow: hidden;\n position: relative;\n\n &::after {\n border-bottom: 1px solid var(--newtab-card-hairline-color);\n bottom: 0;\n content: '';\n position: absolute;\n width: 100%;\n }\n\n .card-preview-image {\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n height: 100%;\n opacity: 0;\n transition: opacity 1s $photon-easing;\n width: 100%;\n\n &.loaded {\n opacity: 1;\n }\n }\n }\n\n .card-details {\n padding: 15px 16px 12px;\n }\n\n .card-text {\n max-height: 4 * $card-text-line-height + $card-title-margin;\n overflow: hidden;\n\n &.no-host-name,\n &.no-context {\n max-height: 5 * $card-text-line-height + $card-title-margin;\n }\n\n &.no-host-name.no-context {\n max-height: 6 * $card-text-line-height + $card-title-margin;\n }\n\n &:not(.no-description) .card-title {\n max-height: 3 * $card-text-line-height;\n overflow: hidden;\n }\n }\n\n .card-host-name {\n color: var(--newtab-text-secondary-color);\n font-size: 10px;\n overflow: hidden;\n padding-bottom: 4px;\n text-overflow: ellipsis;\n text-transform: uppercase;\n }\n\n .card-host-name.alternate { display: none; }\n\n .card-title {\n font-size: 14px;\n font-weight: 600;\n line-height: $card-text-line-height;\n margin: 0 0 $card-title-margin;\n word-wrap: break-word;\n }\n\n .card-description {\n font-size: 12px;\n line-height: $card-text-line-height;\n margin: 0;\n overflow: hidden;\n word-wrap: break-word;\n }\n\n .card-context {\n bottom: 0;\n color: var(--newtab-text-tertiary-color);\n display: flex;\n font-size: 11px;\n left: 0;\n padding: 9px 16px 9px 14px;\n position: absolute;\n right: 0;\n }\n\n .card-context-icon {\n fill: var(--newtab-icon-tertiary-color);\n height: 22px;\n margin-inline-end: 6px;\n }\n\n .card-context-label {\n flex-grow: 1;\n line-height: 22px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n}\n\n.normal-cards {\n .card-outer {\n // Wide layout styles\n @media (min-width: $break-point-widest) {\n $line-height: 23px;\n height: $card-height-large;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-large;\n }\n\n .card-details {\n padding: 13px 16px 12px;\n }\n\n .card-text {\n max-height: 6 * $line-height + $card-title-margin;\n }\n\n .card-host-name {\n font-size: 12px;\n padding-bottom: 5px;\n }\n\n .card-title {\n font-size: 17px;\n line-height: $line-height;\n margin-bottom: 0;\n }\n\n .card-text:not(.no-description) {\n .card-title {\n max-height: 3 * $line-height;\n }\n }\n\n .card-description {\n font-size: 15px;\n line-height: $line-height;\n }\n\n .card-context {\n bottom: 4px;\n font-size: 14px;\n }\n }\n }\n}\n\n.compact-cards {\n .card-outer {\n height: $card-height-compact;\n\n .card-preview-image-outer {\n height: $card-preview-image-height-compact;\n }\n\n .card-details {\n padding: 12px 16px;\n }\n\n .card-host-name {\n line-height: 10px;\n }\n\n .card-text {\n .card-title,\n &:not(.no-description) .card-title {\n font-size: 10px;\n line-height: 12px;\n max-height: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n }\n\n .card-description {\n display: none;\n }\n\n .card-context {\n $icon-size: 16px;\n $container-size: 32px;\n background-color: var(--newtab-card-background-color);\n border-radius: $container-size / 2;\n height: $container-size;\n width: $container-size;\n padding: ($container-size - $icon-size) / 2;\n top: 92px;\n left: auto;\n offset-inline-end: 12px;\n\n &::after {\n border: 1px solid var(--newtab-card-hairline-color);\n border-bottom: 0;\n border-radius: ($container-size / 2) ($container-size / 2) 0 0;\n content: '';\n position: absolute;\n height: 50%;\n width: 100%;\n top: 0;\n left: 0;\n }\n\n .card-context-icon {\n margin-inline-end: 0;\n height: $icon-size;\n width: $icon-size;\n\n &.icon-bookmark-added {\n fill: $bookmark-icon-fill;\n }\n\n &.icon-download {\n fill: $download-icon-fill;\n }\n\n &.icon-history-item {\n fill: $history-icon-fill;\n }\n\n &.icon-pocket {\n fill: $pocket-icon-fill;\n }\n }\n\n .card-context-label {\n display: none;\n }\n }\n }\n\n @media not all and (min-width: $break-point-widest) {\n .hide-for-narrow {\n display: none;\n }\n }\n}\n",
".manual-migration-container {\n color: var(--newtab-text-conditional-color);\n font-size: 13px;\n line-height: 15px;\n margin-bottom: $section-spacing;\n text-align: center;\n\n @media (min-width: $break-point-medium) {\n display: flex;\n justify-content: space-between;\n text-align: left;\n }\n\n p {\n margin: 0;\n @media (min-width: $break-point-medium) {\n align-self: center;\n display: flex;\n justify-content: space-between;\n }\n }\n\n .icon {\n display: none;\n @media (min-width: $break-point-medium) {\n align-self: center;\n display: block;\n fill: var(--newtab-icon-secondary-color);\n margin-inline-end: 6px;\n }\n }\n}\n\n.manual-migration-actions {\n border: 0;\n display: block;\n flex-wrap: nowrap;\n\n @media (min-width: $break-point-medium) {\n display: flex;\n justify-content: space-between;\n padding: 0;\n }\n\n button {\n align-self: center;\n height: 26px;\n margin: 0;\n margin-inline-start: 20px;\n padding: 0 12px;\n }\n}\n",
".collapsible-section {\n padding: $section-vertical-padding $section-horizontal-padding;\n transition-delay: 100ms;\n transition-duration: 100ms;\n transition-property: background-color;\n\n .section-title {\n font-size: $section-title-font-size;\n font-weight: bold;\n margin: 0;\n text-transform: uppercase;\n\n span {\n color: var(--newtab-section-header-text-color);\n display: inline-block;\n fill: var(--newtab-section-header-text-color);\n vertical-align: middle;\n }\n\n .click-target {\n cursor: pointer;\n vertical-align: top;\n white-space: nowrap;\n }\n\n .collapsible-arrow {\n margin-inline-start: 8px;\n margin-top: -1px;\n }\n }\n\n .section-top-bar {\n height: 19px;\n margin-bottom: 13px;\n position: relative;\n\n .context-menu-button {\n background: url('chrome://browser/skin/page-action.svg') no-repeat right center;\n border: 0;\n cursor: pointer;\n fill: var(--newtab-section-header-text-color);\n height: 100%;\n offset-inline-end: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n transition-duration: 200ms;\n transition-property: opacity;\n width: $context-menu-button-size;\n\n &:-moz-any(:active, :focus, :hover) {\n fill: $grey-90;\n opacity: 1;\n }\n }\n\n .context-menu {\n top: 16px;\n }\n\n @media (max-width: $break-point-widest + $card-width * 1.5) {\n @include context-menu-open-left;\n }\n }\n\n &:hover,\n &.active {\n .section-top-bar {\n .context-menu-button {\n opacity: 1;\n }\n }\n }\n\n &.active {\n background: var(--newtab-element-hover-color);\n border-radius: 4px;\n\n .section-top-bar {\n .context-menu-button {\n fill: var(--newtab-section-active-contextmenu-color);\n }\n }\n }\n\n .section-disclaimer {\n $max-button-width: 130px;\n $min-button-height: 26px;\n\n color: var(--newtab-text-conditional-color);\n font-size: 13px;\n margin-bottom: 16px;\n position: relative;\n\n .section-disclaimer-text {\n display: inline-block;\n min-height: $min-button-height;\n width: calc(100% - #{$max-button-width});\n\n @media (max-width: $break-point-medium) {\n width: $card-width;\n }\n }\n\n a {\n color: var(--newtab-link-primary-color);\n font-weight: bold;\n padding-left: 3px;\n }\n\n button {\n background: var(--newtab-button-secondary-color);\n border: 1px solid $grey-40;\n border-radius: 4px;\n cursor: pointer;\n margin-top: 2px;\n max-width: $max-button-width;\n min-height: $min-button-height;\n offset-inline-end: 0;\n\n &:hover:not(.dismiss) {\n box-shadow: $shadow-primary;\n transition: box-shadow 150ms;\n }\n\n @media (min-width: $break-point-small) {\n position: absolute;\n }\n }\n }\n\n .section-body-fallback {\n height: $card-height;\n }\n\n .section-body {\n // This is so the top sites favicon and card dropshadows don't get clipped during animation:\n $horizontal-padding: 7px;\n margin: 0 (-$horizontal-padding);\n padding: 0 $horizontal-padding;\n\n &.animating {\n overflow: hidden;\n pointer-events: none;\n }\n }\n\n &.animation-enabled {\n .section-title {\n .collapsible-arrow {\n transition: transform 0.5s $photon-easing;\n }\n }\n\n .section-body {\n transition: max-height 0.5s $photon-easing;\n }\n }\n\n &.collapsed {\n .section-body {\n max-height: 0;\n overflow: hidden;\n }\n }\n}\n",
"\n.asrouter-admin {\n $border-color: var(--newtab-border-secondary-color);\n $monospace: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Mono', 'Droid Sans Mono', 'Source Code Pro', monospace;\n max-width: 996px;\n margin: 0 auto;\n font-size: 14px;\n // Reset .outer-wrapper styles\n display: inherit;\n padding: 0 0 92px;\n\n h1 {\n font-weight: 200;\n font-size: 32px;\n }\n\n table {\n border-collapse: collapse;\n width: 100%;\n }\n\n .message-item {\n &:first-child td {\n border-top: 1px solid $border-color;\n }\n\n td {\n vertical-align: top;\n border-bottom: 1px solid $border-color;\n padding: 8px;\n\n &:first-child {\n border-left: 1px solid $border-color;\n }\n\n &:last-child {\n border-right: 1px solid $border-color;\n }\n }\n\n &.current {\n .message-id span {\n background: $yellow-50;\n padding: 2px 5px;\n\n .dark-theme & {\n color: $black;\n }\n }\n }\n\n &.blocked {\n .message-id,\n .message-summary {\n opacity: 0.5;\n }\n\n .message-id {\n opacity: 0.5;\n }\n }\n\n .message-id {\n font-family: $monospace;\n font-size: 12px;\n }\n }\n\n pre {\n background: var(--newtab-textbox-background-color);\n margin: 0;\n padding: 8px;\n font-size: 12px;\n max-width: 750px;\n overflow: auto;\n font-family: $monospace;\n }\n}\n",
".ASRouterButton {\n white-space: nowrap;\n border-radius: 4px;\n border: 1px solid var(--newtab-border-secondary-color);\n background-color: var(--newtab-button-secondary-color);\n font-family: inherit;\n padding: 8px 15px;\n margin-left: 12px;\n color: inherit;\n}\n",
".SnippetBaseContainer {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: var(--newtab-snippets-background-color);\n color: var(--newtab-text-primary-color);\n font-size: 12px;\n line-height: 16px;\n border-top: 1px solid var(--newtab-snippets-hairline-color);\n box-shadow: $shadow-secondary;\n display: flex;\n align-items: center;\n\n .innerWrapper {\n margin: 0 auto;\n display: flex;\n align-items: center;\n padding: 12px $section-horizontal-padding;\n\n // This is to account for the block button on smaller screens\n padding-inline-end: 36px;\n @media (min-width: $break-point-large) {\n padding-inline-end: $section-horizontal-padding;\n }\n\n max-width: $wrapper-max-width-large;\n @media (min-width: $break-point-widest) {\n max-width: $wrapper-max-width-widest;\n }\n }\n\n .blockButton {\n display: none;\n background: none;\n border: 0;\n position: absolute;\n top: 50%;\n offset-inline-end: 12px;\n height: 16px;\n width: 16px;\n background-image: url('resource://activity-stream/data/content/assets/glyph-dismiss-16.svg');\n -moz-context-properties: fill;\n fill: var(--newtab-icon-primary-color);\n opacity: 0.5;\n margin-top: -8px;\n padding: 0;\n cursor: pointer;\n\n @media (min-width: 766px) {\n offset-inline-end: 24px;\n }\n }\n\n &:hover .blockButton {\n display: block;\n }\n}\n",
".activity-stream {\n &.modal-open {\n overflow: hidden;\n }\n}\n.modalOverlayOuter {\n background: $white;\n opacity: 0.93;\n height: 100%;\n position: fixed;\n top: 0;\n width: 100%;\n display: none;\n z-index: 100000;\n\n &.active {\n display: block;\n }\n}\n\n.modalOverlayInner {\n width: 960px;\n height: 510px;\n position: fixed;\n top: calc(50% - 255px); // halfway down minus half the height of the modal\n left: calc(50% - 480px); // halfway across minus half the width of the modal\n background: $white;\n box-shadow: 0 1px 15px 0 $black-30;\n border-radius: 4px;\n display: none;\n z-index: 100001;\n\n\n // modal takes over entire screen\n @media(max-width: 960px) {\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n box-shadow: none;\n border-radius: 0;\n }\n\n // if modal is short enough, add a vertical scroll bar\n @media(max-width: 850px) and (max-height: 730px) {\n overflow-y: scroll;\n }\n\n &.active {\n display: block;\n }\n\n h2 {\n color: $grey-60;\n text-align: center;\n font-weight: 200;\n margin-top: 30px;\n font-size: 28px;\n line-height: 37px;\n letter-spacing: -0.13px;\n\n @media(max-width: 960px) {\n margin-top: 100px;\n }\n\n @media(max-width: 850px) {\n margin-top: 30px;\n }\n }\n\n .footer {\n border-top: 1px solid $grey-30;\n height: 70px;\n width: 100%;\n position: absolute;\n bottom: 0;\n text-align: center;\n background-color: $white;\n\n // if modal is short enough, footer becomes sticky\n @media(max-width: 850px) and (max-height: 730px) {\n position: sticky;\n }\n\n .modalButton {\n margin-top: 20px;\n width: 150px;\n height: 30px;\n padding: 4px 0 6px 0;\n font-size: 15px;\n }\n }\n}\n",
".SimpleSnippet {\n .title {\n display: inline;\n font-size: inherit;\n margin: 0;\n }\n\n .body {\n display: inline;\n margin: 0;\n }\n\n .icon {\n height: 42px;\n width: 42px;\n margin-inline-end: 12px;\n flex-shrink: 0;\n }\n\n .ASRouterAnchor {\n color: inherit;\n text-decoration: underline;\n }\n}\n",
".onboardingMessageContainer {\n display: grid;\n grid-column-gap: 21px;\n grid-template-columns: auto auto auto;\n padding-left: 30px;\n padding-right: 30px;\n\n // at 850px, the cards go from vertical layout to horizontal layout\n @media(max-width: 850px) {\n grid-template-columns: none;\n grid-template-rows: auto auto auto;\n padding-left: 110px;\n padding-right: 110px;\n }\n}\n\n.onboardingMessage {\n height: 340px;\n text-align: center;\n padding: 13px;\n font-weight: 200;\n\n // at 850px, img floats left, content floats right next to it\n @media(max-width: 850px) {\n height: 170px;\n text-align: left;\n padding: 10px;\n border-bottom: 1px solid #D8D8D8;\n display: flex;\n margin-bottom: 11px;\n\n &:last-child {\n border: none;\n }\n\n .onboardingContent {\n padding-left: 10px;\n height: 100%;\n\n > span > h3 {\n margin-top: 0;\n margin-bottom: 4px;\n font-weight: 400;\n }\n\n > span > p {\n margin-top: 0;\n line-height: 22px;\n font-size: 15px;\n }\n }\n }\n\n .onboardingMessageImage {\n height: 100px;\n width: 120px;\n background-size: 120px;\n background-position: center center;\n background-repeat: no-repeat;\n display: inline-block;\n vertical-align: middle;\n\n\n @media(max-width: 850px) {\n height: 75px;\n width: 160px;\n background-size: 80px;\n }\n\n &.addons {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-addons@2x.png\");\n }\n\n &.privatebrowsing {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-privatebrowsing@2x.png\");\n }\n\n &.screenshots {\n background-image: url(\"resource://activity-stream/data/content/assets/illustration-screenshots@2x.png\");\n }\n }\n\n .onboardingContent {\n height: 175px;\n\n > span > h3 {\n color: $grey-90;\n margin-bottom: 8px;\n font-weight: 400;\n }\n\n > span > p {\n color: $grey-60;\n margin-top: 0;\n height: 130px;\n margin-bottom: 12px;\n font-size: 15px;\n line-height: 22px;\n }\n }\n\n .onboardingButton {\n background-color: $grey-90-10;\n border: none;\n width: 150px;\n height: 30px;\n margin-bottom: 23px;\n padding: 4px 0 6px 0;\n font-size: 15px;\n\n // at 850px, the button shimmies down and to the right\n @media(max-width: 850px) {\n float: right;\n margin-top: -60px;\n margin-right: -10px;\n }\n }\n\n\n &::before {\n content: '';\n height: 220px;\n width: 1px;\n position: absolute;\n background-color: #D8D8D8;\n margin-top: 40px;\n margin-left: 215px;\n\n // at 850px, the line goes from vertical to horizontal\n @media(max-width: 850px) {\n content: none;\n }\n }\n\n &:last-child::before {\n content: none;\n }\n}\n"
],
"names": [],
- "mappings": "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"
+ "mappings": "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"
}
\ No newline at end of file
--- a/browser/extensions/activity-stream/data/content/activity-stream.bundle.js
+++ b/browser/extensions/activity-stream/data/content/activity-stream.bundle.js
@@ -107,17 +107,17 @@ const globalImportContext = typeof Windo
// {
// INIT: "INIT",
// UNINIT: "UNINIT"
// }
const actionTypes = {};
/* harmony export (immutable) */ __webpack_exports__["c"] = actionTypes;
-for (const type of ["ARCHIVE_FROM_POCKET", "AS_ROUTER_TELEMETRY_USER_EVENT", "BLOCK_URL", "BOOKMARK_URL", "COPY_DOWNLOAD_LINK", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DIALOG_CANCEL", "DIALOG_OPEN", "DISABLE_ONBOARDING", "DOWNLOAD_CHANGED", "INIT", "MIGRATION_CANCEL", "MIGRATION_COMPLETED", "MIGRATION_START", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_DOWNLOAD_FILE", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "OPEN_WEBEXT_SETTINGS", "PAGE_PRERENDERED", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_CHANGED", "PLACES_LINK_BLOCKED", "PLACES_LINK_DELETED", "PLACES_SAVED_TO_POCKET", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "PREVIEW_REQUEST", "PREVIEW_REQUEST_CANCEL", "PREVIEW_RESPONSE", "REMOVE_DOWNLOAD_FILE", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_MOVE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_DOWNLOAD_FILE", "SHOW_FIREFOX_ACCOUNTS", "SKIPPED_SIGNIN", "SNIPPETS_BLOCKLIST_CLEARED", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SUBMIT_EMAIL", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "THEME_UPDATE", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_PIN", "TOP_SITES_PREFS_UPDATED", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "UNINIT", "UPDATE_SECTION_PREFS", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
+for (const type of ["ADDONS_INFO_REQUEST", "ADDONS_INFO_RESPONSE", "ARCHIVE_FROM_POCKET", "AS_ROUTER_TELEMETRY_USER_EVENT", "BLOCK_URL", "BOOKMARK_URL", "COPY_DOWNLOAD_LINK", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DIALOG_CANCEL", "DIALOG_OPEN", "DISABLE_ONBOARDING", "DOWNLOAD_CHANGED", "INIT", "MIGRATION_CANCEL", "MIGRATION_COMPLETED", "MIGRATION_START", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_DOWNLOAD_FILE", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "OPEN_WEBEXT_SETTINGS", "PAGE_PRERENDERED", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_CHANGED", "PLACES_LINK_BLOCKED", "PLACES_LINK_DELETED", "PLACES_SAVED_TO_POCKET", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "PREVIEW_REQUEST", "PREVIEW_REQUEST_CANCEL", "PREVIEW_RESPONSE", "REMOVE_DOWNLOAD_FILE", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_MOVE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_DOWNLOAD_FILE", "SHOW_FIREFOX_ACCOUNTS", "SKIPPED_SIGNIN", "SNIPPETS_BLOCKLIST_CLEARED", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SUBMIT_EMAIL", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "THEME_UPDATE", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_PIN", "TOP_SITES_PREFS_UPDATED", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "UNINIT", "UPDATE_SECTION_PREFS", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
actionTypes[type] = type;
}
// These are acceptable actions for AS Router messages to have. They can show up
// as call-to-action buttons in snippets, onboarding tour, etc.
const ASRouterActions = {};
/* harmony export (immutable) */ __webpack_exports__["a"] = ASRouterActions;
@@ -993,18 +993,27 @@ class ASRouterUISurface extends __WEBPAC
switch (action.type) {
case "SET_MESSAGE":
this.setState({ message: action.data });
break;
case "SET_BUNDLED_MESSAGES":
this.setState({ bundle: action.data });
break;
case "CLEAR_MESSAGE":
+ if (action.data.id === this.state.message.id) {
+ this.setState({ message: {} });
+ }
+ break;
+ case "CLEAR_BUNDLE":
+ if (this.state.bundle.bundle) {
+ this.setState({ bundle: {} });
+ }
+ break;
+ case "CLEAR_ALL":
this.setState({ message: {}, bundle: {} });
- break;
}
}
componentWillMount() {
ASRouterUtils.addListener(this.onMessageFromParent);
ASRouterUtils.sendMessage({ type: "CONNECT_UI_REQUEST" });
}
@@ -2965,16 +2974,28 @@ class SnippetsMap extends Map {
if (action.type === __WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["c" /* actionTypes */].TOTAL_BOOKMARKS_RESPONSE) {
resolve(action.data);
global.removeMessageListener("ActivityStream:MainToContent", onMessage);
}
});
});
}
+ getAddonsInfo() {
+ return new Promise(resolve => {
+ this._dispatch(__WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["b" /* actionCreators */].OnlyToMain({ type: __WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["c" /* actionTypes */].ADDONS_INFO_REQUEST }));
+ global.addMessageListener("ActivityStream:MainToContent", function onMessage({ data: action }) {
+ if (action.type === __WEBPACK_IMPORTED_MODULE_0_common_Actions_jsm__["c" /* actionTypes */].ADDONS_INFO_RESPONSE) {
+ resolve(action.data);
+ global.removeMessageListener("ActivityStream:MainToContent", onMessage);
+ }
+ });
+ });
+ }
+
/**
* connect - Attaches an indexedDB back-end to the Map so that any set values
* are also cached in a store. It also restores any existing values
* that are already stored in the indexedDB store.
*
* @return {type} description
*/
async connect() {
@@ -3872,17 +3893,17 @@ class ASRouterAdmin extends __WEBPACK_IM
return () => __WEBPACK_IMPORTED_MODULE_0__asrouter_asrouter_content__["a" /* ASRouterUtils */].unblockById(msg.id);
}
handleOverride(id) {
return () => __WEBPACK_IMPORTED_MODULE_0__asrouter_asrouter_content__["a" /* ASRouterUtils */].overrideMessage(id);
}
renderMessageItem(msg) {
- const isCurrent = msg.id === this.state.currentId;
+ const isCurrent = msg.id === this.state.lastMessageId;
const isBlocked = this.state.blockList.includes(msg.id);
let itemClassName = "message-item";
if (isCurrent) {
itemClassName += " current";
}
if (isBlocked) {
itemClassName += " blocked";
@@ -4448,30 +4469,38 @@ var _extends = Object.assign || function
const VISIBLE = "visible";
const VISIBILITY_CHANGE_EVENT = "visibilitychange";
-const CARDS_PER_ROW = 3;
+const CARDS_PER_ROW_DEFAULT = 3;
+const CARDS_PER_ROW_COMPACT_WIDE = 4;
function getFormattedMessage(message) {
return typeof message === "string" ? __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
"span",
null,
message
) : __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_1_react_intl__["FormattedMessage"], message);
}
class Section extends __WEBPACK_IMPORTED_MODULE_6_react___default.a.PureComponent {
_dispatchImpressionStats() {
const { props } = this;
- const maxCards = 3 * props.maxRows;
+ let cardsPerRow = CARDS_PER_ROW_DEFAULT;
+ if (props.compactCards && global.matchMedia(`(min-width: 1072px)`).matches) {
+ // If the section has compact cards and the viewport is wide enough, we show
+ // 4 columns instead of 3.
+ // $break-point-widest = 1072px (from _variables.scss)
+ cardsPerRow = CARDS_PER_ROW_COMPACT_WIDE;
+ }
+ const maxCards = cardsPerRow * props.maxRows;
const cards = props.rows.slice(0, maxCards);
if (this.needsImpressionStats(cards)) {
props.dispatch(__WEBPACK_IMPORTED_MODULE_2_common_Actions_jsm__["b" /* actionCreators */].ImpressionStats({
source: props.eventSource,
tiles: cards.map(link => ({ id: link.guid }))
}));
this.impressionCardGuids = cards.map(link => link.guid);
@@ -4547,73 +4576,83 @@ class Section extends __WEBPACK_IMPORTED
if (cards[i].guid !== this.impressionCardGuids[i]) {
return true;
}
}
return false;
}
- numberOfPlaceholders(items) {
- if (items === 0) {
- return CARDS_PER_ROW;
- }
- const remainder = items % CARDS_PER_ROW;
- if (remainder === 0) {
- return 0;
- }
- return CARDS_PER_ROW - remainder;
- }
-
render() {
const {
id, eventSource, title, icon, rows,
- emptyState, dispatch, maxRows,
+ emptyState, dispatch, compactCards, maxRows,
contextMenuOptions, initialized, disclaimer,
pref, privacyNoticeURL, isFirst, isLast
} = this.props;
- const maxCards = CARDS_PER_ROW * maxRows;
+
+ const maxCardsPerRow = compactCards ? CARDS_PER_ROW_COMPACT_WIDE : CARDS_PER_ROW_DEFAULT;
+ const maxCards = maxCardsPerRow * maxRows;
+ const maxCardsOnNarrow = CARDS_PER_ROW_DEFAULT * maxRows;
// Show topics only for top stories and if it's not initialized yet (so
// content doesn't shift when it is loaded) or has loaded with topics
const shouldShowTopics = id === "topstories" && (!this.props.topics || this.props.topics.length > 0);
const realRows = rows.slice(0, maxCards);
- const placeholders = this.numberOfPlaceholders(realRows.length);
// The empty state should only be shown after we have initialized and there is no content.
// Otherwise, we should show placeholders.
const shouldShowEmptyState = initialized && !rows.length;
+ const cards = [];
+ if (!shouldShowEmptyState) {
+ for (let i = 0; i < maxCards; i++) {
+ const link = realRows[i];
+ // On narrow viewports, we only show 3 cards per row. We'll mark the rest as
+ // .hide-for-narrow to hide in CSS via @media query.
+ const className = i >= maxCardsOnNarrow ? "hide-for-narrow" : "";
+ cards.push(link ? __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_content_src_components_Card_Card__["a" /* Card */], { key: i,
+ index: i,
+ className: className,
+ dispatch: dispatch,
+ link: link,
+ contextMenuOptions: contextMenuOptions,
+ eventSource: eventSource,
+ shouldSendImpressionStats: this.props.shouldSendImpressionStats,
+ isWebExtension: this.props.isWebExtension }) : __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_content_src_components_Card_Card__["b" /* PlaceholderCard */], { key: i, className: className }));
+ }
+ }
+
+ const sectionClassName = ["section", compactCards ? "compact-cards" : "normal-cards"].join(" ");
+
// <Section> <-- React component
// <section> <-- HTML5 element
return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
__WEBPACK_IMPORTED_MODULE_4_content_src_components_ComponentPerfTimer_ComponentPerfTimer__["a" /* ComponentPerfTimer */],
this.props,
__WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
__WEBPACK_IMPORTED_MODULE_3_content_src_components_CollapsibleSection_CollapsibleSection__["a" /* CollapsibleSection */],
- { className: "section", icon: icon,
+ { className: sectionClassName, icon: icon,
title: title,
id: id,
eventSource: eventSource,
disclaimer: disclaimer,
collapsed: this.props.pref.collapsed,
showPrefName: pref && pref.feed || id,
privacyNoticeURL: privacyNoticeURL,
Prefs: this.props.Prefs,
isFirst: isFirst,
isLast: isLast,
dispatch: this.props.dispatch,
isWebExtension: this.props.isWebExtension },
!shouldShowEmptyState && __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
"ul",
{ className: "section-list", style: { padding: 0 } },
- realRows.map((link, index) => link && __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_content_src_components_Card_Card__["a" /* Card */], { key: index, index: index, dispatch: dispatch, link: link, contextMenuOptions: contextMenuOptions,
- eventSource: eventSource, shouldSendImpressionStats: this.props.shouldSendImpressionStats, isWebExtension: this.props.isWebExtension })),
- placeholders > 0 && [...new Array(placeholders)].map((_, i) => __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_content_src_components_Card_Card__["b" /* PlaceholderCard */], { key: i }))
+ cards
),
shouldShowEmptyState && __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
"div",
{ className: "section-empty-state" },
__WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
"div",
{ className: "empty-state" },
emptyState.icon && emptyState.icon.startsWith("moz-extension://") ? __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement("img", { className: "empty-state-icon icon", style: { "background-image": `url('${emptyState.icon}')` } }) : __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement("img", { className: `empty-state-icon icon icon-${emptyState.icon}` }),
@@ -4694,17 +4733,17 @@ const Sections = Object(__WEBPACK_IMPORT
// EXTERNAL MODULE: ./system-addon/common/Actions.jsm
var Actions = __webpack_require__(1);
// CONCATENATED MODULE: ./system-addon/content-src/components/Card/types.js
const cardContextTypes = {
history: {
intlID: "type_label_visited",
- icon: "historyItem"
+ icon: "history-item"
},
bookmark: {
intlID: "type_label_bookmarked",
icon: "bookmark-added"
},
trending: {
intlID: "type_label_recommended",
icon: "trending"
@@ -4877,55 +4916,56 @@ class Card__Card extends external__React
componentWillReceiveProps(nextProps) {
// Clear the image state if changing images
if (nextProps.link.image !== this.props.link.image) {
this.setState({ imageLoaded: false });
}
}
render() {
- const { index, link, dispatch, contextMenuOptions, eventSource, shouldSendImpressionStats } = this.props;
+ const { index, className, link, dispatch, contextMenuOptions, eventSource, shouldSendImpressionStats } = this.props;
const { props } = this;
const isContextMenuOpen = this.state.showContextMenu && this.state.activeCard === index;
// Display "now" as "trending" until we have new strings #3402
const { icon, intlID } = cardContextTypes[link.type === "now" ? "trending" : link.type] || {};
const hasImage = link.image || link.hasImage;
const imageStyle = { backgroundImage: link.image ? `url(${link.image})` : "none" };
+ const outerClassName = ["card-outer", className, isContextMenuOpen && "active", props.placeholder && "placeholder"].filter(v => v).join(" ");
return external__React__default.a.createElement(
"li",
- { className: `card-outer${isContextMenuOpen ? " active" : ""}${props.placeholder ? " placeholder" : ""}` },
+ { className: outerClassName },
external__React__default.a.createElement(
"a",
{ href: link.type === "pocket" ? link.open_url : link.url, onClick: !props.placeholder ? this.onLinkClick : undefined },
external__React__default.a.createElement(
"div",
{ className: "card" },
- hasImage && external__React__default.a.createElement(
+ external__React__default.a.createElement(
"div",
{ className: "card-preview-image-outer" },
- external__React__default.a.createElement("div", { className: `card-preview-image${this.state.imageLoaded ? " loaded" : ""}`, style: imageStyle })
+ hasImage && external__React__default.a.createElement("div", { className: `card-preview-image${this.state.imageLoaded ? " loaded" : ""}`, style: imageStyle })
),
external__React__default.a.createElement(
"div",
- { className: `card-details${hasImage ? "" : " no-image"}` },
- link.type === "download" && external__React__default.a.createElement("div", { className: "card-download-icon icon icon-download-folder" }),
+ { className: "card-details" },
link.type === "download" && external__React__default.a.createElement(
"div",
{ className: "card-host-name alternate" },
external__React__default.a.createElement(external__ReactIntl_["FormattedMessage"], { id: Object(link_menu_options["a" /* GetPlatformString */])(this.props.platform) })
),
link.hostname && external__React__default.a.createElement(
"div",
{ className: "card-host-name" },
- link.hostname
+ link.hostname,
+ link.type === "download" && ` \u2014 ${link.description}`
),
external__React__default.a.createElement(
"div",
- { className: ["card-text", icon ? "" : "no-context", link.description ? "" : "no-description", link.hostname ? "" : "no-host-name", hasImage ? "" : "no-image"].join(" ") },
+ { className: ["card-text", icon ? "" : "no-context", link.description ? "" : "no-description", link.hostname ? "" : "no-host-name"].join(" ") },
external__React__default.a.createElement(
"h4",
{ className: "card-title", dir: "auto" },
link.title
),
external__React__default.a.createElement(
"p",
{ className: "card-description", dir: "auto" },
@@ -4974,17 +5014,17 @@ class Card__Card extends external__React
}
}
/* unused harmony export _Card */
Card__Card.defaultProps = { link: {} };
const Card = Object(external__ReactRedux_["connect"])(state => ({ platform: state.Prefs.values.platform }))(Card__Card);
/* harmony export (immutable) */ __webpack_exports__["a"] = Card;
-const PlaceholderCard = () => external__React__default.a.createElement(Card, { placeholder: true });
+const PlaceholderCard = props => external__React__default.a.createElement(Card, { placeholder: true, className: props.className });
/* harmony export (immutable) */ __webpack_exports__["b"] = PlaceholderCard;
/***/ }),
/* 34 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
@@ -5770,17 +5810,17 @@ class _StartupOverlay extends __WEBPACK_
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(
"span",
null,
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_react_intl__["FormattedMessage"], { id: "firstrun_form_sub_header" })
)
),
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(
"form",
- { method: "get", action: "https://accounts.firefox.com", target: "_blank", rel: "noopener noreferrer", onSubmit: this.onSubmit },
+ { method: "get", action: "https://accounts.firefox.com?entrypoint=activity-stream-firstrun&utm_source=activity-stream&utm_campaign=firstrun", target: "_blank", rel: "noopener noreferrer", onSubmit: this.onSubmit },
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement("input", { name: "service", type: "hidden", value: "sync" }),
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement("input", { name: "action", type: "hidden", value: "email" }),
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement("input", { name: "context", type: "hidden", value: "fx_desktop_v3" }),
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement("input", { className: "email-input", name: "email", type: "email", required: "true", placeholder: this.props.intl.formatMessage({ id: "firstrun_email_input_placeholder" }), onChange: this.onInputChange }),
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(
"div",
{ className: "extra-links" },
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_0_react_intl__["FormattedMessage"], {
--- a/browser/extensions/activity-stream/data/content/activity-stream.bundle.js.map
+++ b/browser/extensions/activity-stream/data/content/activity-stream.bundle.js.map
@@ -1,1 +1,1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap 76418f03acdd07bd5285","webpack:///external \"React\"","webpack:///./system-addon/common/Actions.jsm","webpack:///external \"ReactIntl\"","webpack:///(webpack)/buildin/global.js","webpack:///external \"ReactRedux\"","webpack:///./system-addon/content-src/components/TopSites/TopSitesConstants.js","webpack:///./system-addon/common/Dedupe.jsm","webpack:///./system-addon/common/Reducers.jsm","webpack:///./system-addon/content-src/asrouter/asrouter-content.jsx","webpack:///./system-addon/content-src/lib/init-store.js","webpack:///external \"ReactDOM\"","webpack:///./system-addon/content-src/components/ErrorBoundary/ErrorBoundary.jsx","webpack:///./system-addon/content-src/lib/link-menu-options.js","webpack:///./system-addon/content-src/components/LinkMenu/LinkMenu.jsx","webpack:///./system-addon/content-src/components/ContextMenu/ContextMenu.jsx","webpack:///./system-addon/content-src/components/CollapsibleSection/CollapsibleSection.jsx","webpack:///./system-addon/content-src/lib/section-menu-options.js","webpack:///./system-addon/content-src/components/ComponentPerfTimer/ComponentPerfTimer.jsx","webpack:///./system-addon/common/PerfService.jsm","webpack:///./system-addon/content-src/components/TopSites/TopSite.jsx","webpack:///./system-addon/content-src/activity-stream.jsx","webpack:///./system-addon/content-src/lib/snippets.js","webpack:///external \"Redux\"","webpack:///./system-addon/content-src/asrouter/components/ImpressionsWrapper/ImpressionsWrapper.jsx","webpack:///./system-addon/content-src/asrouter/components/ModalOverlay/ModalOverlay.jsx","webpack:///./system-addon/content-src/asrouter/templates/OnboardingMessage/OnboardingMessage.jsx","webpack:///./system-addon/content-src/asrouter/template-utils.js","webpack:///./system-addon/content-src/asrouter/components/Button/Button.jsx","webpack:///./system-addon/content-src/asrouter/components/SnippetBase/SnippetBase.jsx","webpack:///./system-addon/content-src/asrouter/templates/SimpleSnippet/SimpleSnippet.jsx","webpack:///./system-addon/content-src/components/Base/Base.jsx","webpack:///./system-addon/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx","webpack:///./system-addon/content-src/components/ConfirmDialog/ConfirmDialog.jsx","webpack:///./system-addon/content-src/components/ManualMigration/ManualMigration.jsx","webpack:///./system-addon/common/PrerenderData.jsm","webpack:///./system-addon/content-src/components/Search/Search.jsx","webpack:///./system-addon/content-src/lib/constants.js","webpack:///./system-addon/content-src/components/Sections/Sections.jsx","webpack:///./system-addon/content-src/components/Card/types.js","webpack:///./system-addon/content-src/components/Card/Card.jsx","webpack:///./system-addon/content-src/components/SectionMenu/SectionMenu.jsx","webpack:///./system-addon/content-src/components/Topics/Topics.jsx","webpack:///./system-addon/content-src/components/TopSites/TopSites.jsx","webpack:///./system-addon/content-src/components/TopSites/TopSiteFormInput.jsx","webpack:///./system-addon/content-src/components/TopSites/TopSiteForm.jsx","webpack:///./system-addon/content-src/components/StartupOverlay/StartupOverlay.jsx","webpack:///./system-addon/content-src/lib/detect-user-session-start.js"],"names":["globalImportContext","Window","BACKGROUND_PROCESS","UI_CODE","actionTypes","type","ASRouterActions","_RouteMessage","action","options","meta","Object","assign","from","to","Error","forEach","o","AlsoToMain","fromTarget","skipLocal","CONTENT_MESSAGE_TYPE","MAIN_MESSAGE_TYPE","OnlyToMain","BroadcastToContent","AlsoToOneContent","target","skipMain","toTarget","OnlyToOneContent","AlsoToPreloaded","PRELOAD_MESSAGE_TYPE","UserEvent","data","TELEMETRY_USER_EVENT","ASRouterUserEvent","AS_ROUTER_TELEMETRY_USER_EVENT","UndesiredEvent","importContext","TELEMETRY_UNDESIRED_EVENT","PerfEvent","TELEMETRY_PERFORMANCE_EVENT","ImpressionStats","TELEMETRY_IMPRESSION_STATS","SetPref","name","value","SET_PREF","WebExtEvent","source","isSendToMain","isBroadcastToContent","isSendToOneContent","isSendToPreloaded","isFromMain","getPortIdOfSender","TOP_SITES_SOURCE","TOP_SITES_CONTEXT_MENU_OPTIONS","MIN_RICH_FAVICON_SIZE","MIN_CORNER_FAVICON_SIZE","Dedupe","constructor","createKey","defaultCreateKey","item","group","groups","globalKeys","Set","result","values","valueMap","Map","key","has","set","push","add","map","m","Array","TOP_SITES_DEFAULT_ROWS","TOP_SITES_MAX_SITES_PER_ROW","dedupe","site","url","INITIAL_STATE","App","initialized","version","Snippets","TopSites","rows","editForm","Prefs","Theme","className","Dialog","visible","Sections","prevState","at","INIT","insertPinned","links","pinned","pinnedUrls","link","newLinks","filter","includes","isPinned","pinIndex","val","index","length","splice","hasMatch","newRows","TOP_SITES_UPDATED","pref","TOP_SITES_PREFS_UPDATED","TOP_SITES_EDIT","previewResponse","TOP_SITES_CANCEL_EDIT","PREVIEW_RESPONSE","previewUrl","preview","PREVIEW_REQUEST","PREVIEW_REQUEST_CANCEL","SCREENSHOT_UPDATED","row","screenshot","PLACES_BOOKMARK_ADDED","bookmarkGuid","bookmarkTitle","dateAdded","bookmarkDateCreated","PLACES_BOOKMARK_REMOVED","newSite","PLACES_LINK_DELETED","DIALOG_OPEN","DIALOG_CANCEL","DELETE_HISTORY_URL","newValues","PREFS_INITIAL_VALUES","PREF_CHANGED","newState","SECTION_DEREGISTER","section","id","SECTION_REGISTER","title","enabled","SECTION_UPDATE","find","card","dedupeConfigurations","dedupeConf","dedupedRows","dedupeFrom","reduce","dedupeSectionId","dedupeSection","s","SECTION_UPDATE_CARD","PLACES_SAVED_TO_POCKET","open_url","pocket_id","PLACES_LINK_BLOCKED","DELETE_FROM_POCKET","ARCHIVE_FROM_POCKET","SNIPPETS_DATA","SNIPPET_BLOCKED","blockList","concat","SNIPPETS_BLOCKLIST_CLEARED","SNIPPETS_RESET","THEME_UPDATE","INCOMING_MESSAGE_NAME","OUTGOING_MESSAGE_NAME","ASRouterUtils","addListener","listener","global","addMessageListener","removeListener","removeMessageListener","sendMessage","sendAsyncMessage","blockById","blockBundle","bundle","executeAction","button_action","button_action_params","unblockById","unblockBundle","getNextMessage","overrideMessage","sendTelemetry","ping","payload","ac","shouldSendImpressionOnUpdate","nextProps","prevProps","message","ASRouterUISurface","React","PureComponent","props","onMessageFromParent","bind","sendImpression","sendUserActionTelemetry","state","extraProps","message_id","eventType","provider","event","onBlockById","clearBundle","setState","componentWillMount","componentWillUnmount","renderSnippets","document","renderOnboarding","render","template","defaultProps","initASRouter","ReactDOM","getElementById","MERGE_STORE_ACTION","EARLY_QUEUED_ACTIONS","SAVE_SESSION_PERF_DATA","PAGE_PRERENDERED","mergeStateReducer","mainReducer","messageMiddleware","store","next","au","rehydrationMiddleware","_didRehydrate","isMergeStoreAction","isRehydrationRequest","NEW_TAB_STATE_REQUEST","_didRequestInitialState","queueEarlyMessageMiddleware","_receivedFromMain","_earlyActionQueue","initStore","reducers","initialState","createStore","combineReducers","applyMiddleware","msg","dispatch","ex","console","error","dump","JSON","stringify","stack","ErrorBoundaryFallback","windowObj","window","onClick","location","reload","defaultClass","ErrorBoundary","hasError","componentDidCatch","info","children","FallbackComponent","_OpenInPrivateWindow","icon","OPEN_PRIVATE_WINDOW","referrer","userEvent","GetPlatformString","platform","LinkMenuOptions","Separator","EmptyItem","RemoveBookmark","DELETE_BOOKMARK_BY_ID","AddBookmark","BOOKMARK_URL","OpenInNewWindow","OPEN_NEW_WINDOW","typedBonus","BlockUrl","eventSource","BLOCK_URL","impression","block","tiles","guid","pos","WebExtDismiss","string_id","WEBEXT_DISMISS","action_position","DeleteUrl","isEnabled","siteInfo","onConfirm","forceBlock","body_string_id","confirm_button_string_id","cancel_button_string_id","ShowFile","SHOW_DOWNLOAD_FILE","OpenFile","OPEN_DOWNLOAD_FILE","CopyDownloadLink","COPY_DOWNLOAD_LINK","GoToDownloadPage","OPEN_LINK","disabled","RemoveDownload","REMOVE_DOWNLOAD_FILE","PinTopSite","TOP_SITES_PIN","UnpinTopSite","TOP_SITES_UNPIN","SaveToPocket","SAVE_TO_POCKET","pocket","DeleteFromPocket","ArchiveFromPocket","EditTopSite","CheckBookmark","CheckPinTopSite","CheckSavedToPocket","CheckBookmarkOrArchive","OpenInPrivateWindow","DEFAULT_SITE_MENU_OPTIONS","_LinkMenu","getOptions","isPrivateBrowsingEnabled","propOptions","isDefault","option","label","intl","formatMessage","userEventData","shouldSendImpressionStats","first","last","onUpdate","getState","LinkMenu","connect","injectIntl","ContextMenu","hideContext","componentDidMount","setTimeout","addEventListener","removeEventListener","stopPropagation","i","ContextMenuItem","onKeyDown","shiftKey","VISIBLE","VISIBILITY_CHANGE_EVENT","getFormattedMessage","Disclaimer","onAcknowledge","disclaimerPref","disclaimer","text","href","button","DisclaimerIntl","_CollapsibleSection","onBodyMount","onHeaderClick","onTransitionEnd","enableOrDisableAnimation","onMenuButtonClick","onMenuButtonMouseEnter","onMenuButtonMouseLeave","onMenuUpdate","enableAnimation","isAnimating","menuButtonHover","showContextMenu","componentWillUpdate","collapsed","sectionBody","scrollHeight","visibilityState","node","undefined","maxHeight","SectionMenuOptions","CheckCollapsed","currentTarget","renderIcon","startsWith","backgroundImage","preventDefault","isCollapsible","extraMenuOptions","showPrefName","privacyNoticeURL","isFirst","isLast","isWebExtension","needsDisclaimer","active","CollapsibleSection","MoveUp","SECTION_MOVE","direction","MoveDown","RemoveSection","CollapseSection","UPDATE_SECTION_PREFS","ExpandSection","ManageSection","SETTINGS_OPEN","ManageWebExtension","OPEN_WEBEXT_SETTINGS","AddTopSite","PrivacyNotice","RECORDED_SECTIONS","ComponentPerfTimer","Component","perfSvc","_sendBadStateEvent","_sendPaintedEvent","_reportMissingData","_timestampHandled","_recordedFirstRender","_maybeSendPaintedEvent","componentDidUpdate","_afterFramePaint","callback","requestAnimationFrame","_maybeSendBadStateEvent","_ensureFirstRenderTsRecorded","mark","dataReadyKey","firstRenderKey","parseInt","getMostRecentAbsMarkStartByName","ChromeUtils","import","usablePerfObj","Services","appShell","hiddenDOMWindow","performance","now","_PerfService","performanceObj","_perf","prototype","str","getEntriesByName","timeOrigin","absNow","entries","mostRecentEntry","startTime","TopSiteLink","onDragEvent","_allowDrop","e","dataTransfer","types","dragged","effectAllowed","setData","blur","defaultStyle","isDraggable","topSiteOuterClassName","isDragged","tippyTopIcon","faviconSize","letterFallback","imageClassName","imageStyle","showSmallFavicon","smallFaviconStyle","smallFaviconFallback","customScreenshotURL","backgroundColor","favicon","draggableProps","onDragEnd","onDragStart","onMouseDown","TopSite","onLinkClick","_getTelemetryInfo","icon_type","iconType","card_type","altKey","ctrlKey","metaKey","onActivate","isContextMenuOpen","activeIndex","hostname","TopSitePlaceholder","onEditButtonClick","_TopSiteList","DEFAULT_STATE","draggedIndex","draggedSite","draggedTitle","topSitesPreview","componentWillReceiveProps","prevTopSites","newTopSites","dropped","_makeTopSitesPreview","TOP_SITES_INSERT","draggedFromIndex","_getTopSites","topSites","slice","TopSitesRows","pinnedOnly","unpinned","siteToInsert","holeIndex","indexStep","shiftingStep","nextIndex","shift","topSitesUI","commonProps","maxNarrowVisibleIndex","l","topSiteIconType","slotProps","TopSiteList","gActivityStreamPrerenderedState","sendEventOrAddListener","hydrate","documentElement","lang","gActivityStreamStrings","addSnippetsSubscriber","DATABASE_NAME","DATABASE_VERSION","SNIPPETS_OBJECTSTORE_NAME","SNIPPETS_UPDATE_INTERVAL_MS","SNIPPETS_ENABLED_EVENT","SNIPPETS_DISABLED_EVENT","SnippetsMap","_db","_dispatch","_dbTransaction","db","put","delete","clear","get","blockSnippetById","SNIPPETS_BLOCKLIST_UPDATED","disableOnboarding","DISABLE_ONBOARDING","showFirefoxAccounts","SHOW_FIREFOX_ACCOUNTS","getTotalBookmarksCount","Promise","resolve","TOTAL_BOOKMARKS_REQUEST","onMessage","TOTAL_BOOKMARKS_RESPONSE","_openDB","_restoreFromDb","modifier","reject","transaction","objectStore","onsuccess","onerror","openRequest","indexedDB","open","deleteDatabase","onupgradeneeded","objectStoreNames","contains","createObjectStore","err","onversionchange","versionChangeEvent","close","cursorRequest","openCursor","cursor","continue","SnippetsProvider","gSnippetsMap","_onAction","snippetsMap","_refreshSnippets","cachedVersion","appData","lastUpdate","needsUpdate","Date","snippetsURL","response","fetch","status","_noSnippetFallback","_forceOnboardingVisibility","shouldBeVisible","onboardingEl","style","display","_showRemoteSnippets","snippetsEl","elementId","innerHTML","scriptEl","getElementsByTagName","relocatedScript","createElement","parentNode","replaceChild","init","keys","dispatchEvent","Event","uninit","snippets","initializing","subscribe","asrouterExperimentEnabled","disableSnippets","ImpressionsWrapper","sendImpressionOrAddListener","_onVisibilityChange","sendOnMount","body","classList","remove","button_label","onDoneButton","onAction","content","safeURI","protocol","URL","isAllowed","warn","Button","onBlockClicked","onBlock","containerClassName","DEFAULT_ICON_PATH","onButtonClick","renderTitle","renderButton","button_url","hasLink","button_type","hasButton","PrefsButton","addLocaleDataForReactIntl","locale","addLocaleData","parentLocale","_Base","updateTheme","sendNewTabRehydrated","isPrerendered","bodyClassName","isFirstrun","v","join","renderNotified","NEW_TAB_REHYDRATED","strings","hash","BaseContent","openPreferences","prefs","shouldBeFixedToTop","PrerenderData","arePrefsValid","outerClassName","showSearch","migrationExpired","Base","ASRouterAdmin","findOtherBundledMessagesOfSameTemplate","messages","bundled","handleBlock","handleUnblock","handleOverride","renderMessageItem","isCurrent","currentId","isBlocked","itemClassName","renderMessages","renderProviders","providers","_ConfirmDialog","_handleCancelBtn","_handleConfirmBtn","_renderModalMessage","message_body","ConfirmDialog","_ManualMigration","onLaunchTour","onCancelTour","MIGRATION_START","MIGRATION_CANCEL","ManualMigration","_PrerenderData","initialPrefs","initialSections","_setValidation","validation","_validation","invalidatingPrefs","_invalidatingPrefs","oneOf","getPref","indexedDBPrefs","some","anyModifiedPrefs","prefName","order","_Search","onInputMount","handleEvent","detail","gContentSearchController","search","input","healthReportKey","IS_NEWTAB","searchSource","ContentSearchUIController","Search","documentURI","CARDS_PER_ROW","Section","_dispatchImpressionStats","maxCards","maxRows","cards","needsImpressionStats","impressionCardGuids","sendImpressionStatsOrAddListener","isCollapsed","wasCollapsed","numberOfPlaceholders","items","remainder","emptyState","contextMenuOptions","shouldShowTopics","topics","realRows","placeholders","shouldShowEmptyState","feed","padding","_","read_more_endpoint","SectionIntl","_Sections","renderSections","sections","enabledSections","sectionOrder","showTopSites","expectedCount","sectionId","split","cardContextTypes","history","intlID","bookmark","trending","download","gImageLoading","activeCard","imageLoaded","maybeLoadImage","image","loaderPromise","loader","Image","src","catch","then","WEBEXT_CLICK","click","hasImage","placeholder","description","context","_Card","Card","PlaceholderCard","DEFAULT_SECTION_MENU_OPTIONS","WEBEXT_SECTION_MENU_OPTIONS","_SectionMenu","extraOptions","SectionMenu","Topic","Topics","t","faviconRef","countTopSitesIconsTypes","countTopSitesTypes","acc","_TopSites","onFormClose","_dispatchTopSitesStats","_getVisibleTopSites","topSitesIconsStats","topSitesPinned","topsites_icon_stats","topsites_pinned","sitesPerRow","matchMedia","matches","topSitesRows","validationError","onChange","onMount","shouldFocus","focus","ev","showClearButton","onClear","typeUrl","titleId","loading","placeholderId","errorMessageId","TopSiteFormInput","customScreenshotUrl","showCustomScreenshotForm","onClearScreenshotInput","onLabelChange","onUrlChange","onCancelButtonClick","onClearUrlClick","onDoneButtonClick","onCustomScreenshotUrlChange","onPreviewButtonClick","onEnableScreenshotUrlForm","validateUrl","_updateCustomScreenshotInput","onClose","validateForm","cleanUrl","_tryParseUrl","validProtocols","urlObj","validateCustomScreenshotUrl","validate","_renderCustomScreenshotInput","requestFailed","isLoading","showAsAdd","previous","changed","previewMode","previewLink","TopSiteForm","_StartupOverlay","onInputChange","onSubmit","clickSkip","initScene","removeOverlay","emailInput","show","termsLink","privacyLink","terms","privacy","StartupOverlay","DetectUserSessionStart","_store","_perfService","perfService","_sendEvent","visibility_event_rcvd_ts"],"mappings":"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","file":"activity-stream.bundle.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 19);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 76418f03acdd07bd5285","module.exports = React;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"React\"\n// module id = 0\n// module chunks = 0","/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/. */\n\"use strict\";\n\nthis.MAIN_MESSAGE_TYPE = \"ActivityStream:Main\";\nthis.CONTENT_MESSAGE_TYPE = \"ActivityStream:Content\";\nthis.PRELOAD_MESSAGE_TYPE = \"ActivityStream:PreloadedBrowser\";\nthis.UI_CODE = 1;\nthis.BACKGROUND_PROCESS = 2;\n\n/**\n * globalImportContext - Are we in UI code (i.e. react, a dom) or some kind of background process?\n * Use this in action creators if you need different logic\n * for ui/background processes.\n */\nconst globalImportContext = typeof Window === \"undefined\" ? BACKGROUND_PROCESS : UI_CODE;\n// Export for tests\nthis.globalImportContext = globalImportContext;\n\n// Create an object that avoids accidental differing key/value pairs:\n// {\n// INIT: \"INIT\",\n// UNINIT: \"UNINIT\"\n// }\nconst actionTypes = {};\nfor (const type of [\n \"ARCHIVE_FROM_POCKET\",\n \"AS_ROUTER_TELEMETRY_USER_EVENT\",\n \"BLOCK_URL\",\n \"BOOKMARK_URL\",\n \"COPY_DOWNLOAD_LINK\",\n \"DELETE_BOOKMARK_BY_ID\",\n \"DELETE_FROM_POCKET\",\n \"DELETE_HISTORY_URL\",\n \"DIALOG_CANCEL\",\n \"DIALOG_OPEN\",\n \"DISABLE_ONBOARDING\",\n \"DOWNLOAD_CHANGED\",\n \"INIT\",\n \"MIGRATION_CANCEL\",\n \"MIGRATION_COMPLETED\",\n \"MIGRATION_START\",\n \"NEW_TAB_INIT\",\n \"NEW_TAB_INITIAL_STATE\",\n \"NEW_TAB_LOAD\",\n \"NEW_TAB_REHYDRATED\",\n \"NEW_TAB_STATE_REQUEST\",\n \"NEW_TAB_UNLOAD\",\n \"OPEN_DOWNLOAD_FILE\",\n \"OPEN_LINK\",\n \"OPEN_NEW_WINDOW\",\n \"OPEN_PRIVATE_WINDOW\",\n \"OPEN_WEBEXT_SETTINGS\",\n \"PAGE_PRERENDERED\",\n \"PLACES_BOOKMARK_ADDED\",\n \"PLACES_BOOKMARK_REMOVED\",\n \"PLACES_HISTORY_CLEARED\",\n \"PLACES_LINKS_CHANGED\",\n \"PLACES_LINK_BLOCKED\",\n \"PLACES_LINK_DELETED\",\n \"PLACES_SAVED_TO_POCKET\",\n \"PREFS_INITIAL_VALUES\",\n \"PREF_CHANGED\",\n \"PREVIEW_REQUEST\",\n \"PREVIEW_REQUEST_CANCEL\",\n \"PREVIEW_RESPONSE\",\n \"REMOVE_DOWNLOAD_FILE\",\n \"RICH_ICON_MISSING\",\n \"SAVE_SESSION_PERF_DATA\",\n \"SAVE_TO_POCKET\",\n \"SCREENSHOT_UPDATED\",\n \"SECTION_DEREGISTER\",\n \"SECTION_DISABLE\",\n \"SECTION_ENABLE\",\n \"SECTION_MOVE\",\n \"SECTION_OPTIONS_CHANGED\",\n \"SECTION_REGISTER\",\n \"SECTION_UPDATE\",\n \"SECTION_UPDATE_CARD\",\n \"SETTINGS_CLOSE\",\n \"SETTINGS_OPEN\",\n \"SET_PREF\",\n \"SHOW_DOWNLOAD_FILE\",\n \"SHOW_FIREFOX_ACCOUNTS\",\n \"SKIPPED_SIGNIN\",\n \"SNIPPETS_BLOCKLIST_CLEARED\",\n \"SNIPPETS_BLOCKLIST_UPDATED\",\n \"SNIPPETS_DATA\",\n \"SNIPPETS_RESET\",\n \"SNIPPET_BLOCKED\",\n \"SUBMIT_EMAIL\",\n \"SYSTEM_TICK\",\n \"TELEMETRY_IMPRESSION_STATS\",\n \"TELEMETRY_PERFORMANCE_EVENT\",\n \"TELEMETRY_UNDESIRED_EVENT\",\n \"TELEMETRY_USER_EVENT\",\n \"THEME_UPDATE\",\n \"TOP_SITES_CANCEL_EDIT\",\n \"TOP_SITES_EDIT\",\n \"TOP_SITES_INSERT\",\n \"TOP_SITES_PIN\",\n \"TOP_SITES_PREFS_UPDATED\",\n \"TOP_SITES_UNPIN\",\n \"TOP_SITES_UPDATED\",\n \"TOTAL_BOOKMARKS_REQUEST\",\n \"TOTAL_BOOKMARKS_RESPONSE\",\n \"UNINIT\",\n \"UPDATE_SECTION_PREFS\",\n \"WEBEXT_CLICK\",\n \"WEBEXT_DISMISS\"\n]) {\n actionTypes[type] = type;\n}\n\n// These are acceptable actions for AS Router messages to have. They can show up\n// as call-to-action buttons in snippets, onboarding tour, etc.\nconst ASRouterActions = {};\nfor (const type of [\n \"OPEN_PRIVATE_BROWSER_WINDOW\",\n \"OPEN_URL\",\n \"OPEN_ABOUT_PAGE\"\n]) {\n ASRouterActions[type] = type;\n}\n\n// Helper function for creating routed actions between content and main\n// Not intended to be used by consumers\nfunction _RouteMessage(action, options) {\n const meta = action.meta ? Object.assign({}, action.meta) : {};\n if (!options || !options.from || !options.to) {\n throw new Error(\"Routed Messages must have options as the second parameter, and must at least include a .from and .to property.\");\n }\n // For each of these fields, if they are passed as an option,\n // add them to the action. If they are not defined, remove them.\n [\"from\", \"to\", \"toTarget\", \"fromTarget\", \"skipMain\", \"skipLocal\"].forEach(o => {\n if (typeof options[o] !== \"undefined\") {\n meta[o] = options[o];\n } else if (meta[o]) {\n delete meta[o];\n }\n });\n return Object.assign({}, action, {meta});\n}\n\n/**\n * AlsoToMain - Creates a message that will be dispatched locally and also sent to the Main process.\n *\n * @param {object} action Any redux action (required)\n * @param {object} options\n * @param {bool} skipLocal Used by OnlyToMain to skip the main reducer\n * @param {string} fromTarget The id of the content port from which the action originated. (optional)\n * @return {object} An action with added .meta properties\n */\nfunction AlsoToMain(action, fromTarget, skipLocal) {\n return _RouteMessage(action, {\n from: CONTENT_MESSAGE_TYPE,\n to: MAIN_MESSAGE_TYPE,\n fromTarget,\n skipLocal\n });\n}\n\n/**\n * OnlyToMain - Creates a message that will be sent to the Main process and skip the local reducer.\n *\n * @param {object} action Any redux action (required)\n * @param {object} options\n * @param {string} fromTarget The id of the content port from which the action originated. (optional)\n * @return {object} An action with added .meta properties\n */\nfunction OnlyToMain(action, fromTarget) {\n return AlsoToMain(action, fromTarget, true);\n}\n\n/**\n * BroadcastToContent - Creates a message that will be dispatched to main and sent to ALL content processes.\n *\n * @param {object} action Any redux action (required)\n * @return {object} An action with added .meta properties\n */\nfunction BroadcastToContent(action) {\n return _RouteMessage(action, {\n from: MAIN_MESSAGE_TYPE,\n to: CONTENT_MESSAGE_TYPE\n });\n}\n\n/**\n * AlsoToOneContent - Creates a message that will be will be dispatched to the main store\n * and also sent to a particular Content process.\n *\n * @param {object} action Any redux action (required)\n * @param {string} target The id of a content port\n * @param {bool} skipMain Used by OnlyToOneContent to skip the main process\n * @return {object} An action with added .meta properties\n */\nfunction AlsoToOneContent(action, target, skipMain) {\n if (!target) {\n throw new Error(\"You must provide a target ID as the second parameter of AlsoToOneContent. If you want to send to all content processes, use BroadcastToContent\");\n }\n return _RouteMessage(action, {\n from: MAIN_MESSAGE_TYPE,\n to: CONTENT_MESSAGE_TYPE,\n toTarget: target,\n skipMain\n });\n}\n\n/**\n * OnlyToOneContent - Creates a message that will be sent to a particular Content process\n * and skip the main reducer.\n *\n * @param {object} action Any redux action (required)\n * @param {string} target The id of a content port\n * @return {object} An action with added .meta properties\n */\nfunction OnlyToOneContent(action, target) {\n return AlsoToOneContent(action, target, true);\n}\n\n/**\n * AlsoToPreloaded - Creates a message that dispatched to the main reducer and also sent to the preloaded tab.\n *\n * @param {object} action Any redux action (required)\n * @return {object} An action with added .meta properties\n */\nfunction AlsoToPreloaded(action) {\n return _RouteMessage(action, {\n from: MAIN_MESSAGE_TYPE,\n to: PRELOAD_MESSAGE_TYPE\n });\n}\n\n/**\n * UserEvent - A telemetry ping indicating a user action. This should only\n * be sent from the UI during a user session.\n *\n * @param {object} data Fields to include in the ping (source, etc.)\n * @return {object} An AlsoToMain action\n */\nfunction UserEvent(data) {\n return AlsoToMain({\n type: actionTypes.TELEMETRY_USER_EVENT,\n data\n });\n}\n\n/**\n * ASRouterUserEvent - A telemetry ping indicating a user action from AS router. This should only\n * be sent from the UI during a user session.\n *\n * @param {object} data Fields to include in the ping (source, etc.)\n * @return {object} An AlsoToMain action\n */\nfunction ASRouterUserEvent(data) {\n return AlsoToMain({\n type: actionTypes.AS_ROUTER_TELEMETRY_USER_EVENT,\n data\n });\n}\n\n/**\n * UndesiredEvent - A telemetry ping indicating an undesired state.\n *\n * @param {object} data Fields to include in the ping (value, etc.)\n * @param {int} importContext (For testing) Override the import context for testing.\n * @return {object} An action. For UI code, a AlsoToMain action.\n */\nfunction UndesiredEvent(data, importContext = globalImportContext) {\n const action = {\n type: actionTypes.TELEMETRY_UNDESIRED_EVENT,\n data\n };\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\n/**\n * PerfEvent - A telemetry ping indicating a performance-related event.\n *\n * @param {object} data Fields to include in the ping (value, etc.)\n * @param {int} importContext (For testing) Override the import context for testing.\n * @return {object} An action. For UI code, a AlsoToMain action.\n */\nfunction PerfEvent(data, importContext = globalImportContext) {\n const action = {\n type: actionTypes.TELEMETRY_PERFORMANCE_EVENT,\n data\n };\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\n/**\n * ImpressionStats - A telemetry ping indicating an impression stats.\n *\n * @param {object} data Fields to include in the ping\n * @param {int} importContext (For testing) Override the import context for testing.\n * #return {object} An action. For UI code, a AlsoToMain action.\n */\nfunction ImpressionStats(data, importContext = globalImportContext) {\n const action = {\n type: actionTypes.TELEMETRY_IMPRESSION_STATS,\n data\n };\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\nfunction SetPref(name, value, importContext = globalImportContext) {\n const action = {type: actionTypes.SET_PREF, data: {name, value}};\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\nfunction WebExtEvent(type, data, importContext = globalImportContext) {\n if (!data || !data.source) {\n throw new Error(\"WebExtEvent actions should include a property \\\"source\\\", the id of the webextension that should receive the event.\");\n }\n const action = {type, data};\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\nthis.actionTypes = actionTypes;\nthis.ASRouterActions = ASRouterActions;\n\nthis.actionCreators = {\n BroadcastToContent,\n UserEvent,\n ASRouterUserEvent,\n UndesiredEvent,\n PerfEvent,\n ImpressionStats,\n AlsoToOneContent,\n OnlyToOneContent,\n AlsoToMain,\n OnlyToMain,\n AlsoToPreloaded,\n SetPref,\n WebExtEvent\n};\n\n// These are helpers to test for certain kinds of actions\nthis.actionUtils = {\n isSendToMain(action) {\n if (!action.meta) {\n return false;\n }\n return action.meta.to === MAIN_MESSAGE_TYPE && action.meta.from === CONTENT_MESSAGE_TYPE;\n },\n isBroadcastToContent(action) {\n if (!action.meta) {\n return false;\n }\n if (action.meta.to === CONTENT_MESSAGE_TYPE && !action.meta.toTarget) {\n return true;\n }\n return false;\n },\n isSendToOneContent(action) {\n if (!action.meta) {\n return false;\n }\n if (action.meta.to === CONTENT_MESSAGE_TYPE && action.meta.toTarget) {\n return true;\n }\n return false;\n },\n isSendToPreloaded(action) {\n if (!action.meta) {\n return false;\n }\n return action.meta.to === PRELOAD_MESSAGE_TYPE &&\n action.meta.from === MAIN_MESSAGE_TYPE;\n },\n isFromMain(action) {\n if (!action.meta) {\n return false;\n }\n return action.meta.from === MAIN_MESSAGE_TYPE &&\n action.meta.to === CONTENT_MESSAGE_TYPE;\n },\n getPortIdOfSender(action) {\n return (action.meta && action.meta.fromTarget) || null;\n },\n _RouteMessage\n};\n\nconst EXPORTED_SYMBOLS = [\n \"actionTypes\",\n \"actionCreators\",\n \"actionUtils\",\n \"ASRouterActions\",\n \"globalImportContext\",\n \"UI_CODE\",\n \"BACKGROUND_PROCESS\",\n \"MAIN_MESSAGE_TYPE\",\n \"CONTENT_MESSAGE_TYPE\",\n \"PRELOAD_MESSAGE_TYPE\"\n];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/Actions.jsm","module.exports = ReactIntl;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactIntl\"\n// module id = 2\n// module chunks = 0","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 3\n// module chunks = 0","module.exports = ReactRedux;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactRedux\"\n// module id = 4\n// module chunks = 0","export const TOP_SITES_SOURCE = \"TOP_SITES\";\nexport const TOP_SITES_CONTEXT_MENU_OPTIONS = [\"CheckPinTopSite\", \"EditTopSite\", \"Separator\",\n \"OpenInNewWindow\", \"OpenInPrivateWindow\", \"Separator\", \"BlockUrl\", \"DeleteUrl\"];\n// minimum size necessary to show a rich icon instead of a screenshot\nexport const MIN_RICH_FAVICON_SIZE = 96;\n// minimum size necessary to show any icon in the top left corner with a screenshot\nexport const MIN_CORNER_FAVICON_SIZE = 16;\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSitesConstants.js","this.Dedupe = class Dedupe {\n constructor(createKey) {\n this.createKey = createKey || this.defaultCreateKey;\n }\n\n defaultCreateKey(item) {\n return item;\n }\n\n /**\n * Dedupe any number of grouped elements favoring those from earlier groups.\n *\n * @param {Array} groups Contains an arbitrary number of arrays of elements.\n * @returns {Array} A matching array of each provided group deduped.\n */\n group(...groups) {\n const globalKeys = new Set();\n const result = [];\n for (const values of groups) {\n const valueMap = new Map();\n for (const value of values) {\n const key = this.createKey(value);\n if (!globalKeys.has(key) && !valueMap.has(key)) {\n valueMap.set(key, value);\n }\n }\n result.push(valueMap);\n valueMap.forEach((value, key) => globalKeys.add(key));\n }\n return result.map(m => Array.from(m.values()));\n }\n};\n\nconst EXPORTED_SYMBOLS = [\"Dedupe\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/Dedupe.jsm","/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/. */\n\"use strict\";\n\nconst {actionTypes: at} = ChromeUtils.import(\"resource://activity-stream/common/Actions.jsm\", {});\nconst {Dedupe} = ChromeUtils.import(\"resource://activity-stream/common/Dedupe.jsm\", {});\n\nconst TOP_SITES_DEFAULT_ROWS = 1;\nconst TOP_SITES_MAX_SITES_PER_ROW = 8;\n\nconst dedupe = new Dedupe(site => site && site.url);\n\nconst INITIAL_STATE = {\n App: {\n // Have we received real data from the app yet?\n initialized: false,\n // The version of the system-addon\n version: null\n },\n Snippets: {initialized: false},\n TopSites: {\n // Have we received real data from history yet?\n initialized: false,\n // The history (and possibly default) links\n rows: [],\n // Used in content only to dispatch action to TopSiteForm.\n editForm: null\n },\n Prefs: {\n initialized: false,\n values: {}\n },\n Theme: {className: \"\"},\n Dialog: {\n visible: false,\n data: {}\n },\n Sections: []\n};\n\nfunction App(prevState = INITIAL_STATE.App, action) {\n switch (action.type) {\n case at.INIT:\n return Object.assign({}, prevState, action.data || {}, {initialized: true});\n default:\n return prevState;\n }\n}\n\n/**\n * insertPinned - Inserts pinned links in their specified slots\n *\n * @param {array} a list of links\n * @param {array} a list of pinned links\n * @return {array} resulting list of links with pinned links inserted\n */\nfunction insertPinned(links, pinned) {\n // Remove any pinned links\n const pinnedUrls = pinned.map(link => link && link.url);\n let newLinks = links.filter(link => (link ? !pinnedUrls.includes(link.url) : false));\n newLinks = newLinks.map(link => {\n if (link && link.isPinned) {\n delete link.isPinned;\n delete link.pinIndex;\n }\n return link;\n });\n\n // Then insert them in their specified location\n pinned.forEach((val, index) => {\n if (!val) { return; }\n let link = Object.assign({}, val, {isPinned: true, pinIndex: index});\n if (index > newLinks.length) {\n newLinks[index] = link;\n } else {\n newLinks.splice(index, 0, link);\n }\n });\n\n return newLinks;\n}\n\nfunction TopSites(prevState = INITIAL_STATE.TopSites, action) {\n let hasMatch;\n let newRows;\n switch (action.type) {\n case at.TOP_SITES_UPDATED:\n if (!action.data || !action.data.links) {\n return prevState;\n }\n return Object.assign({}, prevState, {initialized: true, rows: action.data.links}, action.data.pref ? {pref: action.data.pref} : {});\n case at.TOP_SITES_PREFS_UPDATED:\n return Object.assign({}, prevState, {pref: action.data.pref});\n case at.TOP_SITES_EDIT:\n return Object.assign({}, prevState, {\n editForm: {\n index: action.data.index,\n previewResponse: null\n }\n });\n case at.TOP_SITES_CANCEL_EDIT:\n return Object.assign({}, prevState, {editForm: null});\n case at.PREVIEW_RESPONSE:\n if (!prevState.editForm || action.data.url !== prevState.editForm.previewUrl) {\n return prevState;\n }\n return Object.assign({}, prevState, {\n editForm: {\n index: prevState.editForm.index,\n previewResponse: action.data.preview,\n previewUrl: action.data.url\n }\n });\n case at.PREVIEW_REQUEST:\n if (!prevState.editForm) {\n return prevState;\n }\n return Object.assign({}, prevState, {\n editForm: {\n index: prevState.editForm.index,\n previewResponse: null,\n previewUrl: action.data.url\n }\n });\n case at.PREVIEW_REQUEST_CANCEL:\n if (!prevState.editForm) {\n return prevState;\n }\n return Object.assign({}, prevState, {\n editForm: {\n index: prevState.editForm.index,\n previewResponse: null\n }\n });\n case at.SCREENSHOT_UPDATED:\n newRows = prevState.rows.map(row => {\n if (row && row.url === action.data.url) {\n hasMatch = true;\n return Object.assign({}, row, {screenshot: action.data.screenshot});\n }\n return row;\n });\n return hasMatch ? Object.assign({}, prevState, {rows: newRows}) : prevState;\n case at.PLACES_BOOKMARK_ADDED:\n if (!action.data) {\n return prevState;\n }\n newRows = prevState.rows.map(site => {\n if (site && site.url === action.data.url) {\n const {bookmarkGuid, bookmarkTitle, dateAdded} = action.data;\n return Object.assign({}, site, {bookmarkGuid, bookmarkTitle, bookmarkDateCreated: dateAdded});\n }\n return site;\n });\n return Object.assign({}, prevState, {rows: newRows});\n case at.PLACES_BOOKMARK_REMOVED:\n if (!action.data) {\n return prevState;\n }\n newRows = prevState.rows.map(site => {\n if (site && site.url === action.data.url) {\n const newSite = Object.assign({}, site);\n delete newSite.bookmarkGuid;\n delete newSite.bookmarkTitle;\n delete newSite.bookmarkDateCreated;\n return newSite;\n }\n return site;\n });\n return Object.assign({}, prevState, {rows: newRows});\n case at.PLACES_LINK_DELETED:\n if (!action.data) {\n return prevState;\n }\n newRows = prevState.rows.filter(site => action.data.url !== site.url);\n return Object.assign({}, prevState, {rows: newRows});\n default:\n return prevState;\n }\n}\n\nfunction Dialog(prevState = INITIAL_STATE.Dialog, action) {\n switch (action.type) {\n case at.DIALOG_OPEN:\n return Object.assign({}, prevState, {visible: true, data: action.data});\n case at.DIALOG_CANCEL:\n return Object.assign({}, prevState, {visible: false});\n case at.DELETE_HISTORY_URL:\n return Object.assign({}, INITIAL_STATE.Dialog);\n default:\n return prevState;\n }\n}\n\nfunction Prefs(prevState = INITIAL_STATE.Prefs, action) {\n let newValues;\n switch (action.type) {\n case at.PREFS_INITIAL_VALUES:\n return Object.assign({}, prevState, {initialized: true, values: action.data});\n case at.PREF_CHANGED:\n newValues = Object.assign({}, prevState.values);\n newValues[action.data.name] = action.data.value;\n return Object.assign({}, prevState, {values: newValues});\n default:\n return prevState;\n }\n}\n\nfunction Sections(prevState = INITIAL_STATE.Sections, action) {\n let hasMatch;\n let newState;\n switch (action.type) {\n case at.SECTION_DEREGISTER:\n return prevState.filter(section => section.id !== action.data);\n case at.SECTION_REGISTER:\n // If section exists in prevState, update it\n newState = prevState.map(section => {\n if (section && section.id === action.data.id) {\n hasMatch = true;\n return Object.assign({}, section, action.data);\n }\n return section;\n });\n // Otherwise, append it\n if (!hasMatch) {\n const initialized = !!(action.data.rows && action.data.rows.length > 0);\n const section = Object.assign({title: \"\", rows: [], enabled: false}, action.data, {initialized});\n newState.push(section);\n }\n return newState;\n case at.SECTION_UPDATE:\n newState = prevState.map(section => {\n if (section && section.id === action.data.id) {\n // If the action is updating rows, we should consider initialized to be true.\n // This can be overridden if initialized is defined in the action.data\n const initialized = action.data.rows ? {initialized: true} : {};\n\n // Make sure pinned cards stay at their current position when rows are updated.\n // Disabling a section (SECTION_UPDATE with empty rows) does not retain pinned cards.\n if (action.data.rows && action.data.rows.length > 0 && section.rows.find(card => card.pinned)) {\n const rows = Array.from(action.data.rows);\n section.rows.forEach((card, index) => {\n if (card.pinned) {\n rows.splice(index, 0, card);\n }\n });\n return Object.assign({}, section, initialized, Object.assign({}, action.data, {rows}));\n }\n\n return Object.assign({}, section, initialized, action.data);\n }\n return section;\n });\n\n if (!action.data.dedupeConfigurations) {\n return newState;\n }\n\n action.data.dedupeConfigurations.forEach(dedupeConf => {\n newState = newState.map(section => {\n if (section.id === dedupeConf.id) {\n const dedupedRows = dedupeConf.dedupeFrom.reduce((rows, dedupeSectionId) => {\n const dedupeSection = newState.find(s => s.id === dedupeSectionId);\n const [, newRows] = dedupe.group(dedupeSection.rows, rows);\n return newRows;\n }, section.rows);\n\n return Object.assign({}, section, {rows: dedupedRows});\n }\n\n return section;\n });\n });\n\n return newState;\n case at.SECTION_UPDATE_CARD:\n return prevState.map(section => {\n if (section && section.id === action.data.id && section.rows) {\n const newRows = section.rows.map(card => {\n if (card.url === action.data.url) {\n return Object.assign({}, card, action.data.options);\n }\n return card;\n });\n return Object.assign({}, section, {rows: newRows});\n }\n return section;\n });\n case at.PLACES_BOOKMARK_ADDED:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section => Object.assign({}, section, {\n rows: section.rows.map(item => {\n // find the item within the rows that is attempted to be bookmarked\n if (item.url === action.data.url) {\n const {bookmarkGuid, bookmarkTitle, dateAdded} = action.data;\n return Object.assign({}, item, {\n bookmarkGuid,\n bookmarkTitle,\n bookmarkDateCreated: dateAdded,\n type: \"bookmark\"\n });\n }\n return item;\n })\n }));\n case at.PLACES_SAVED_TO_POCKET:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section => Object.assign({}, section, {\n rows: section.rows.map(item => {\n if (item.url === action.data.url) {\n return Object.assign({}, item, {\n open_url: action.data.open_url,\n pocket_id: action.data.pocket_id,\n title: action.data.title,\n type: \"pocket\"\n });\n }\n return item;\n })\n }));\n case at.PLACES_BOOKMARK_REMOVED:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section => Object.assign({}, section, {\n rows: section.rows.map(item => {\n // find the bookmark within the rows that is attempted to be removed\n if (item.url === action.data.url) {\n const newSite = Object.assign({}, item);\n delete newSite.bookmarkGuid;\n delete newSite.bookmarkTitle;\n delete newSite.bookmarkDateCreated;\n if (!newSite.type || newSite.type === \"bookmark\") {\n newSite.type = \"history\";\n }\n return newSite;\n }\n return item;\n })\n }));\n case at.PLACES_LINK_DELETED:\n case at.PLACES_LINK_BLOCKED:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section =>\n Object.assign({}, section, {rows: section.rows.filter(site => site.url !== action.data.url)}));\n case at.DELETE_FROM_POCKET:\n case at.ARCHIVE_FROM_POCKET:\n return prevState.map(section =>\n Object.assign({}, section, {rows: section.rows.filter(site => site.pocket_id !== action.data.pocket_id)}));\n default:\n return prevState;\n }\n}\n\nfunction Snippets(prevState = INITIAL_STATE.Snippets, action) {\n switch (action.type) {\n case at.SNIPPETS_DATA:\n return Object.assign({}, prevState, {initialized: true}, action.data);\n case at.SNIPPET_BLOCKED:\n return Object.assign({}, prevState, {blockList: prevState.blockList.concat(action.data)});\n case at.SNIPPETS_BLOCKLIST_CLEARED:\n return Object.assign({}, prevState, {blockList: []});\n case at.SNIPPETS_RESET:\n return INITIAL_STATE.Snippets;\n default:\n return prevState;\n }\n}\n\nfunction Theme(prevState = INITIAL_STATE.Theme, action) {\n switch (action.type) {\n case at.THEME_UPDATE:\n return Object.assign({}, prevState, action.data);\n default:\n return prevState;\n }\n}\n\nthis.INITIAL_STATE = INITIAL_STATE;\nthis.TOP_SITES_DEFAULT_ROWS = TOP_SITES_DEFAULT_ROWS;\nthis.TOP_SITES_MAX_SITES_PER_ROW = TOP_SITES_MAX_SITES_PER_ROW;\n\nthis.reducers = {TopSites, App, Snippets, Prefs, Dialog, Sections, Theme};\n\nconst EXPORTED_SYMBOLS = [\"reducers\", \"INITIAL_STATE\", \"insertPinned\", \"TOP_SITES_DEFAULT_ROWS\", \"TOP_SITES_MAX_SITES_PER_ROW\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/Reducers.jsm","import {actionCreators as ac, ASRouterActions as ra} from \"common/Actions.jsm\";\nimport {OUTGOING_MESSAGE_NAME as AS_GENERAL_OUTGOING_MESSAGE_NAME} from \"content-src/lib/init-store\";\nimport {ImpressionsWrapper} from \"./components/ImpressionsWrapper/ImpressionsWrapper\";\nimport {OnboardingMessage} from \"./templates/OnboardingMessage/OnboardingMessage\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {SimpleSnippet} from \"./templates/SimpleSnippet/SimpleSnippet\";\n\nconst INCOMING_MESSAGE_NAME = \"ASRouter:parent-to-child\";\nconst OUTGOING_MESSAGE_NAME = \"ASRouter:child-to-parent\";\n\nexport const ASRouterUtils = {\n addListener(listener) {\n global.addMessageListener(INCOMING_MESSAGE_NAME, listener);\n },\n removeListener(listener) {\n global.removeMessageListener(INCOMING_MESSAGE_NAME, listener);\n },\n sendMessage(action) {\n global.sendAsyncMessage(OUTGOING_MESSAGE_NAME, action);\n },\n blockById(id) {\n ASRouterUtils.sendMessage({type: \"BLOCK_MESSAGE_BY_ID\", data: {id}});\n },\n blockBundle(bundle) {\n ASRouterUtils.sendMessage({type: \"BLOCK_BUNDLE\", data: {bundle}});\n },\n executeAction({button_action, button_action_params}) {\n if (button_action in ra) {\n ASRouterUtils.sendMessage({type: button_action, data: {button_action_params}});\n }\n },\n unblockById(id) {\n ASRouterUtils.sendMessage({type: \"UNBLOCK_MESSAGE_BY_ID\", data: {id}});\n },\n unblockBundle(bundle) {\n ASRouterUtils.sendMessage({type: \"UNBLOCK_BUNDLE\", data: {bundle}});\n },\n getNextMessage() {\n ASRouterUtils.sendMessage({type: \"GET_NEXT_MESSAGE\"});\n },\n overrideMessage(id) {\n ASRouterUtils.sendMessage({type: \"OVERRIDE_MESSAGE\", data: {id}});\n },\n sendTelemetry(ping) {\n const payload = ac.ASRouterUserEvent(ping);\n global.sendAsyncMessage(AS_GENERAL_OUTGOING_MESSAGE_NAME, payload);\n }\n};\n\n// Note: nextProps/prevProps refer to props passed to <ImpressionsWrapper />, not <ASRouterUISurface />\nfunction shouldSendImpressionOnUpdate(nextProps, prevProps) {\n return (nextProps.message.id && (!prevProps.message || prevProps.message.id !== nextProps.message.id));\n}\n\nexport class ASRouterUISurface extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onMessageFromParent = this.onMessageFromParent.bind(this);\n this.sendImpression = this.sendImpression.bind(this);\n this.sendUserActionTelemetry = this.sendUserActionTelemetry.bind(this);\n this.state = {message: {}, bundle: {}};\n }\n\n sendUserActionTelemetry(extraProps = {}) {\n const {message, bundle} = this.state;\n if (!message && !extraProps.message_id) {\n throw new Error(`You must provide a message_id for bundled messages`);\n }\n const eventType = `${message.provider || bundle.provider}_user_event`;\n\n ASRouterUtils.sendTelemetry(Object.assign({\n message_id: message.id || extraProps.message_id,\n source: this.props.id,\n action: eventType\n }, extraProps));\n }\n\n sendImpression() {\n this.sendUserActionTelemetry({event: \"IMPRESSION\"});\n }\n\n onBlockById(id) {\n return () => ASRouterUtils.blockById(id);\n }\n\n clearBundle(bundle) {\n return () => ASRouterUtils.blockBundle(bundle);\n }\n\n onMessageFromParent({data: action}) {\n switch (action.type) {\n case \"SET_MESSAGE\":\n this.setState({message: action.data});\n break;\n case \"SET_BUNDLED_MESSAGES\":\n this.setState({bundle: action.data});\n break;\n case \"CLEAR_MESSAGE\":\n this.setState({message: {}, bundle: {}});\n break;\n }\n }\n\n componentWillMount() {\n ASRouterUtils.addListener(this.onMessageFromParent);\n ASRouterUtils.sendMessage({type: \"CONNECT_UI_REQUEST\"});\n }\n\n componentWillUnmount() {\n ASRouterUtils.removeListener(this.onMessageFromParent);\n }\n\n renderSnippets() {\n return (\n <ImpressionsWrapper\n message={this.state.message}\n sendImpression={this.sendImpression}\n shouldSendImpressionOnUpdate={shouldSendImpressionOnUpdate}\n // This helps with testing\n document={this.props.document}>\n <SimpleSnippet\n {...this.state.message}\n UISurface=\"NEWTAB_FOOTER_BAR\"\n getNextMessage={ASRouterUtils.getNextMessage}\n onBlock={this.onBlockById(this.state.message.id)}\n sendUserActionTelemetry={this.sendUserActionTelemetry} />\n </ImpressionsWrapper>);\n }\n\n renderOnboarding() {\n return (\n <OnboardingMessage\n {...this.state.bundle}\n UISurface=\"NEWTAB_OVERLAY\"\n onAction={ASRouterUtils.executeAction}\n onDoneButton={this.clearBundle(this.state.bundle.bundle)}\n getNextMessage={ASRouterUtils.getNextMessage}\n sendUserActionTelemetry={this.sendUserActionTelemetry} />);\n }\n\n render() {\n const {message, bundle} = this.state;\n if (!message.id && !bundle.template) { return null; }\n if (bundle.template === \"onboarding\") { return this.renderOnboarding(); }\n return this.renderSnippets();\n }\n}\n\nASRouterUISurface.defaultProps = {document: global.document};\n\nexport function initASRouter() {\n ReactDOM.render(<ASRouterUISurface />, document.getElementById(\"snippets-container\"));\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/asrouter-content.jsx","/* eslint-env mozilla/frame-script */\n\nimport {actionCreators as ac, actionTypes as at, actionUtils as au} from \"common/Actions.jsm\";\nimport {applyMiddleware, combineReducers, createStore} from \"redux\";\n\nexport const MERGE_STORE_ACTION = \"NEW_TAB_INITIAL_STATE\";\nexport const OUTGOING_MESSAGE_NAME = \"ActivityStream:ContentToMain\";\nexport const INCOMING_MESSAGE_NAME = \"ActivityStream:MainToContent\";\nexport const EARLY_QUEUED_ACTIONS = [at.SAVE_SESSION_PERF_DATA, at.PAGE_PRERENDERED];\n\n/**\n * A higher-order function which returns a reducer that, on MERGE_STORE action,\n * will return the action.data object merged into the previous state.\n *\n * For all other actions, it merely calls mainReducer.\n *\n * Because we want this to merge the entire state object, it's written as a\n * higher order function which takes the main reducer (itself often a call to\n * combineReducers) as a parameter.\n *\n * @param {function} mainReducer reducer to call if action != MERGE_STORE_ACTION\n * @return {function} a reducer that, on MERGE_STORE_ACTION action,\n * will return the action.data object merged\n * into the previous state, and the result\n * of calling mainReducer otherwise.\n */\nfunction mergeStateReducer(mainReducer) {\n return (prevState, action) => {\n if (action.type === MERGE_STORE_ACTION) {\n return Object.assign({}, prevState, action.data);\n }\n\n return mainReducer(prevState, action);\n };\n}\n\n/**\n * messageMiddleware - Middleware that looks for SentToMain type actions, and sends them if necessary\n */\nconst messageMiddleware = store => next => action => {\n const skipLocal = action.meta && action.meta.skipLocal;\n if (au.isSendToMain(action)) {\n sendAsyncMessage(OUTGOING_MESSAGE_NAME, action);\n }\n if (!skipLocal) {\n next(action);\n }\n};\n\nexport const rehydrationMiddleware = store => next => action => {\n if (store._didRehydrate) {\n return next(action);\n }\n\n const isMergeStoreAction = action.type === MERGE_STORE_ACTION;\n const isRehydrationRequest = action.type === at.NEW_TAB_STATE_REQUEST;\n\n if (isRehydrationRequest) {\n store._didRequestInitialState = true;\n return next(action);\n }\n\n if (isMergeStoreAction) {\n store._didRehydrate = true;\n return next(action);\n }\n\n // If init happened after our request was made, we need to re-request\n if (store._didRequestInitialState && action.type === at.INIT) {\n return next(ac.AlsoToMain({type: at.NEW_TAB_STATE_REQUEST}));\n }\n\n if (au.isBroadcastToContent(action) || au.isSendToOneContent(action) || au.isSendToPreloaded(action)) {\n // Note that actions received before didRehydrate will not be dispatched\n // because this could negatively affect preloading and the the state\n // will be replaced by rehydration anyway.\n return null;\n }\n\n return next(action);\n};\n\n/**\n * This middleware queues up all the EARLY_QUEUED_ACTIONS until it receives\n * the first action from main. This is useful for those actions for main which\n * require higher reliability, i.e. the action will not be lost in the case\n * that it gets sent before the main is ready to receive it. Conversely, any\n * actions allowed early are accepted to be ignorable or re-sendable.\n */\nexport const queueEarlyMessageMiddleware = store => next => action => {\n if (store._receivedFromMain) {\n next(action);\n } else if (au.isFromMain(action)) {\n next(action);\n store._receivedFromMain = true;\n // Sending out all the early actions as main is ready now\n if (store._earlyActionQueue) {\n store._earlyActionQueue.forEach(next);\n store._earlyActionQueue = [];\n }\n } else if (EARLY_QUEUED_ACTIONS.includes(action.type)) {\n store._earlyActionQueue = store._earlyActionQueue || [];\n store._earlyActionQueue.push(action);\n } else {\n // Let any other type of action go through\n next(action);\n }\n};\n\n/**\n * initStore - Create a store and listen for incoming actions\n *\n * @param {object} reducers An object containing Redux reducers\n * @param {object} intialState (optional) The initial state of the store, if desired\n * @return {object} A redux store\n */\nexport function initStore(reducers, initialState) {\n const store = createStore(\n mergeStateReducer(combineReducers(reducers)),\n initialState,\n global.addMessageListener && applyMiddleware(rehydrationMiddleware, queueEarlyMessageMiddleware, messageMiddleware)\n );\n\n store._didRehydrate = false;\n store._didRequestInitialState = false;\n\n if (global.addMessageListener) {\n global.addMessageListener(INCOMING_MESSAGE_NAME, msg => {\n try {\n store.dispatch(msg.data);\n } catch (ex) {\n console.error(\"Content msg:\", msg, \"Dispatch error: \", ex); // eslint-disable-line no-console\n dump(`Content msg: ${JSON.stringify(msg)}\\nDispatch error: ${ex}\\n${ex.stack}`);\n }\n });\n }\n\n return store;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/init-store.js","module.exports = ReactDOM;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactDOM\"\n// module id = 9\n// module chunks = 0","import {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\nexport class ErrorBoundaryFallback extends React.PureComponent {\n constructor(props) {\n super(props);\n this.windowObj = this.props.windowObj || window;\n this.onClick = this.onClick.bind(this);\n }\n\n /**\n * Since we only get here if part of the page has crashed, do a\n * forced reload to give us the best chance at recovering.\n */\n onClick() {\n this.windowObj.location.reload(true);\n }\n\n render() {\n const defaultClass = \"as-error-fallback\";\n let className;\n if (\"className\" in this.props) {\n className = `${this.props.className} ${defaultClass}`;\n } else {\n className = defaultClass;\n }\n\n // href=\"#\" to force normal link styling stuff (eg cursor on hover)\n return (\n <div className={className}>\n <div>\n <FormattedMessage\n defaultMessage=\"Oops, something went wrong loading this content.\"\n id=\"error_fallback_default_info\" />\n </div>\n <span>\n <a href=\"#\" className=\"reload-button\" onClick={this.onClick}>\n <FormattedMessage\n defaultMessage=\"Refresh page to try again.\"\n id=\"error_fallback_default_refresh_suggestion\" />\n </a>\n </span>\n </div>\n );\n }\n}\nErrorBoundaryFallback.defaultProps = {className: \"as-error-fallback\"};\n\nexport class ErrorBoundary extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {hasError: false};\n }\n\n componentDidCatch(error, info) {\n this.setState({hasError: true});\n }\n\n render() {\n if (!this.state.hasError) {\n return (this.props.children);\n }\n\n return <this.props.FallbackComponent className={this.props.className} />;\n }\n}\n\nErrorBoundary.defaultProps = {FallbackComponent: ErrorBoundaryFallback};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ErrorBoundary/ErrorBoundary.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\n\nconst _OpenInPrivateWindow = site => ({\n id: \"menu_action_open_private_window\",\n icon: \"new-window-private\",\n action: ac.OnlyToMain({\n type: at.OPEN_PRIVATE_WINDOW,\n data: {url: site.url, referrer: site.referrer}\n }),\n userEvent: \"OPEN_PRIVATE_WINDOW\"\n});\n\nexport const GetPlatformString = platform => {\n switch (platform) {\n case \"win\":\n return \"menu_action_show_file_windows\";\n case \"macosx\":\n return \"menu_action_show_file_mac_os\";\n case \"linux\":\n return \"menu_action_show_file_linux\";\n default:\n return \"menu_action_show_file_default\";\n }\n};\n\n/**\n * List of functions that return items that can be included as menu options in a\n * LinkMenu. All functions take the site as the first parameter, and optionally\n * the index of the site.\n */\nexport const LinkMenuOptions = {\n Separator: () => ({type: \"separator\"}),\n EmptyItem: () => ({type: \"empty\"}),\n RemoveBookmark: site => ({\n id: \"menu_action_remove_bookmark\",\n icon: \"bookmark-added\",\n action: ac.AlsoToMain({\n type: at.DELETE_BOOKMARK_BY_ID,\n data: site.bookmarkGuid\n }),\n userEvent: \"BOOKMARK_DELETE\"\n }),\n AddBookmark: site => ({\n id: \"menu_action_bookmark\",\n icon: \"bookmark-hollow\",\n action: ac.AlsoToMain({\n type: at.BOOKMARK_URL,\n data: {url: site.url, title: site.title, type: site.type}\n }),\n userEvent: \"BOOKMARK_ADD\"\n }),\n OpenInNewWindow: site => ({\n id: \"menu_action_open_new_window\",\n icon: \"new-window\",\n action: ac.AlsoToMain({\n type: at.OPEN_NEW_WINDOW,\n data: {\n referrer: site.referrer,\n typedBonus: site.typedBonus,\n url: site.url\n }\n }),\n userEvent: \"OPEN_NEW_WINDOW\"\n }),\n BlockUrl: (site, index, eventSource) => ({\n id: \"menu_action_dismiss\",\n icon: \"dismiss\",\n action: ac.AlsoToMain({\n type: at.BLOCK_URL,\n data: {url: site.url, pocket_id: site.pocket_id}\n }),\n impression: ac.ImpressionStats({\n source: eventSource,\n block: 0,\n tiles: [{id: site.guid, pos: index}]\n }),\n userEvent: \"BLOCK\"\n }),\n\n // This is an option for web extentions which will result in remove items from\n // memory and notify the web extenion, rather than using the built-in block list.\n WebExtDismiss: (site, index, eventSource) => ({\n id: \"menu_action_webext_dismiss\",\n string_id: \"menu_action_dismiss\",\n icon: \"dismiss\",\n action: ac.WebExtEvent(at.WEBEXT_DISMISS, {\n source: eventSource,\n url: site.url,\n action_position: index\n })\n }),\n DeleteUrl: (site, index, eventSource, isEnabled, siteInfo) => ({\n id: \"menu_action_delete\",\n icon: \"delete\",\n action: {\n type: at.DIALOG_OPEN,\n data: {\n onConfirm: [\n ac.AlsoToMain({type: at.DELETE_HISTORY_URL, data: {url: site.url, pocket_id: site.pocket_id, forceBlock: site.bookmarkGuid}}),\n ac.UserEvent(Object.assign({event: \"DELETE\", source: eventSource, action_position: index}, siteInfo))\n ],\n eventSource,\n body_string_id: [\"confirm_history_delete_p1\", \"confirm_history_delete_notice_p2\"],\n confirm_button_string_id: \"menu_action_delete\",\n cancel_button_string_id: \"topsites_form_cancel_button\",\n icon: \"modal-delete\"\n }\n },\n userEvent: \"DIALOG_OPEN\"\n }),\n ShowFile: (site, index, eventSource, isEnabled, siteInfo, platform) => ({\n id: GetPlatformString(platform),\n icon: \"search\",\n action: ac.OnlyToMain({\n type: at.SHOW_DOWNLOAD_FILE,\n data: {url: site.url}\n })\n }),\n OpenFile: site => ({\n id: \"menu_action_open_file\",\n icon: \"open-file\",\n action: ac.OnlyToMain({\n type: at.OPEN_DOWNLOAD_FILE,\n data: {url: site.url}\n })\n }),\n CopyDownloadLink: site => ({\n id: \"menu_action_copy_download_link\",\n icon: \"copy\",\n action: ac.OnlyToMain({\n type: at.COPY_DOWNLOAD_LINK,\n data: {url: site.url}\n })\n }),\n GoToDownloadPage: site => ({\n id: \"menu_action_go_to_download_page\",\n icon: \"download\",\n action: ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: {url: site.referrer}\n }),\n disabled: !site.referrer\n }),\n RemoveDownload: site => ({\n id: \"menu_action_remove_download\",\n icon: \"delete\",\n action: ac.OnlyToMain({\n type: at.REMOVE_DOWNLOAD_FILE,\n data: {url: site.url}\n })\n }),\n PinTopSite: (site, index) => ({\n id: \"menu_action_pin\",\n icon: \"pin\",\n action: ac.AlsoToMain({\n type: at.TOP_SITES_PIN,\n data: {site: {url: site.url}, index}\n }),\n userEvent: \"PIN\"\n }),\n UnpinTopSite: site => ({\n id: \"menu_action_unpin\",\n icon: \"unpin\",\n action: ac.AlsoToMain({\n type: at.TOP_SITES_UNPIN,\n data: {site: {url: site.url}}\n }),\n userEvent: \"UNPIN\"\n }),\n SaveToPocket: (site, index, eventSource) => ({\n id: \"menu_action_save_to_pocket\",\n icon: \"pocket\",\n action: ac.AlsoToMain({\n type: at.SAVE_TO_POCKET,\n data: {site: {url: site.url, title: site.title}}\n }),\n impression: ac.ImpressionStats({\n source: eventSource,\n pocket: 0,\n tiles: [{id: site.guid, pos: index}]\n }),\n userEvent: \"SAVE_TO_POCKET\"\n }),\n DeleteFromPocket: site => ({\n id: \"menu_action_delete_pocket\",\n icon: \"delete\",\n action: ac.AlsoToMain({\n type: at.DELETE_FROM_POCKET,\n data: {pocket_id: site.pocket_id}\n }),\n userEvent: \"DELETE_FROM_POCKET\"\n }),\n ArchiveFromPocket: site => ({\n id: \"menu_action_archive_pocket\",\n icon: \"check\",\n action: ac.AlsoToMain({\n type: at.ARCHIVE_FROM_POCKET,\n data: {pocket_id: site.pocket_id}\n }),\n userEvent: \"ARCHIVE_FROM_POCKET\"\n }),\n EditTopSite: (site, index) => ({\n id: \"edit_topsites_button_text\",\n icon: \"edit\",\n action: {\n type: at.TOP_SITES_EDIT,\n data: {index}\n }\n }),\n CheckBookmark: site => (site.bookmarkGuid ? LinkMenuOptions.RemoveBookmark(site) : LinkMenuOptions.AddBookmark(site)),\n CheckPinTopSite: (site, index) => (site.isPinned ? LinkMenuOptions.UnpinTopSite(site) : LinkMenuOptions.PinTopSite(site, index)),\n CheckSavedToPocket: (site, index) => (site.pocket_id ? LinkMenuOptions.DeleteFromPocket(site) : LinkMenuOptions.SaveToPocket(site, index)),\n CheckBookmarkOrArchive: site => (site.pocket_id ? LinkMenuOptions.ArchiveFromPocket(site) : LinkMenuOptions.CheckBookmark(site)),\n OpenInPrivateWindow: (site, index, eventSource, isEnabled) => (isEnabled ? _OpenInPrivateWindow(site) : LinkMenuOptions.EmptyItem())\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/link-menu-options.js","import {actionCreators as ac} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {ContextMenu} from \"content-src/components/ContextMenu/ContextMenu\";\nimport {injectIntl} from \"react-intl\";\nimport {LinkMenuOptions} from \"content-src/lib/link-menu-options\";\nimport React from \"react\";\n\nconst DEFAULT_SITE_MENU_OPTIONS = [\"CheckPinTopSite\", \"EditTopSite\", \"Separator\", \"OpenInNewWindow\", \"OpenInPrivateWindow\", \"Separator\", \"BlockUrl\"];\n\nexport class _LinkMenu extends React.PureComponent {\n getOptions() {\n const {props} = this;\n const {site, index, source, isPrivateBrowsingEnabled, siteInfo, platform} = props;\n\n // Handle special case of default site\n const propOptions = !site.isDefault ? props.options : DEFAULT_SITE_MENU_OPTIONS;\n\n const options = propOptions.map(o => LinkMenuOptions[o](site, index, source, isPrivateBrowsingEnabled, siteInfo, platform)).map(option => {\n const {action, impression, id, string_id, type, userEvent} = option;\n if (!type && id) {\n option.label = props.intl.formatMessage({id: string_id || id});\n option.onClick = () => {\n props.dispatch(action);\n if (userEvent) {\n const userEventData = Object.assign({\n event: userEvent,\n source,\n action_position: index\n }, siteInfo);\n props.dispatch(ac.UserEvent(userEventData));\n }\n if (impression && props.shouldSendImpressionStats) {\n props.dispatch(impression);\n }\n };\n }\n return option;\n });\n\n // This is for accessibility to support making each item tabbable.\n // We want to know which item is the first and which item\n // is the last, so we can close the context menu accordingly.\n options[0].first = true;\n options[options.length - 1].last = true;\n return options;\n }\n\n render() {\n return (<ContextMenu\n onUpdate={this.props.onUpdate}\n options={this.getOptions()} />);\n }\n}\n\nconst getState = state => ({isPrivateBrowsingEnabled: state.Prefs.values.isPrivateBrowsingEnabled, platform: state.Prefs.values.platform});\nexport const LinkMenu = connect(getState)(injectIntl(_LinkMenu));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/LinkMenu/LinkMenu.jsx","import React from \"react\";\n\nexport class ContextMenu extends React.PureComponent {\n constructor(props) {\n super(props);\n this.hideContext = this.hideContext.bind(this);\n this.onClick = this.onClick.bind(this);\n }\n\n hideContext() {\n this.props.onUpdate(false);\n }\n\n componentDidMount() {\n setTimeout(() => {\n global.addEventListener(\"click\", this.hideContext);\n }, 0);\n }\n\n componentWillUnmount() {\n global.removeEventListener(\"click\", this.hideContext);\n }\n\n onClick(event) {\n // Eat all clicks on the context menu so they don't bubble up to window.\n // This prevents the context menu from closing when clicking disabled items\n // or the separators.\n event.stopPropagation();\n }\n\n render() {\n return (<span className=\"context-menu\" onClick={this.onClick}>\n <ul role=\"menu\" className=\"context-menu-list\">\n {this.props.options.map((option, i) => (option.type === \"separator\" ?\n (<li key={i} className=\"separator\" />) :\n (option.type !== \"empty\" && <ContextMenuItem key={i} option={option} hideContext={this.hideContext} />)\n ))}\n </ul>\n </span>);\n }\n}\n\nexport class ContextMenuItem extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onClick = this.onClick.bind(this);\n this.onKeyDown = this.onKeyDown.bind(this);\n }\n\n onClick() {\n this.props.hideContext();\n this.props.option.onClick();\n }\n\n onKeyDown(event) {\n const {option} = this.props;\n switch (event.key) {\n case \"Tab\":\n // tab goes down in context menu, shift + tab goes up in context menu\n // if we're on the last item, one more tab will close the context menu\n // similarly, if we're on the first item, one more shift + tab will close it\n if ((event.shiftKey && option.first) || (!event.shiftKey && option.last)) {\n this.props.hideContext();\n }\n break;\n case \"Enter\":\n this.props.hideContext();\n option.onClick();\n break;\n }\n }\n\n render() {\n const {option} = this.props;\n return (\n <li role=\"menuitem\" className=\"context-menu-item\">\n <a onClick={this.onClick} onKeyDown={this.onKeyDown} tabIndex=\"0\" className={option.disabled ? \"disabled\" : \"\"}>\n {option.icon && <span className={`icon icon-spacer icon-${option.icon}`} />}\n {option.label}\n </a>\n </li>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ContextMenu/ContextMenu.jsx","import {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {ErrorBoundary} from \"content-src/components/ErrorBoundary/ErrorBoundary\";\nimport React from \"react\";\nimport {SectionMenu} from \"content-src/components/SectionMenu/SectionMenu\";\nimport {SectionMenuOptions} from \"content-src/lib/section-menu-options\";\n\nconst VISIBLE = \"visible\";\nconst VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\n\nfunction getFormattedMessage(message) {\n return typeof message === \"string\" ? <span>{message}</span> : <FormattedMessage {...message} />;\n}\n\nexport class Disclaimer extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onAcknowledge = this.onAcknowledge.bind(this);\n }\n\n onAcknowledge() {\n this.props.dispatch(ac.SetPref(this.props.disclaimerPref, false));\n this.props.dispatch(ac.UserEvent({event: \"DISCLAIMER_ACKED\", source: this.props.eventSource}));\n }\n\n render() {\n const {disclaimer} = this.props;\n return (\n <div className=\"section-disclaimer\">\n <div className=\"section-disclaimer-text\">\n {getFormattedMessage(disclaimer.text)}\n {disclaimer.link &&\n <a href={disclaimer.link.href} target=\"_blank\" rel=\"noopener noreferrer\">\n {getFormattedMessage(disclaimer.link.title || disclaimer.link)}\n </a>\n }\n </div>\n\n <button onClick={this.onAcknowledge}>\n {getFormattedMessage(disclaimer.button)}\n </button>\n </div>\n );\n }\n}\n\nexport const DisclaimerIntl = injectIntl(Disclaimer);\n\nexport class _CollapsibleSection extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onBodyMount = this.onBodyMount.bind(this);\n this.onHeaderClick = this.onHeaderClick.bind(this);\n this.onTransitionEnd = this.onTransitionEnd.bind(this);\n this.enableOrDisableAnimation = this.enableOrDisableAnimation.bind(this);\n this.onMenuButtonClick = this.onMenuButtonClick.bind(this);\n this.onMenuButtonMouseEnter = this.onMenuButtonMouseEnter.bind(this);\n this.onMenuButtonMouseLeave = this.onMenuButtonMouseLeave.bind(this);\n this.onMenuUpdate = this.onMenuUpdate.bind(this);\n this.state = {enableAnimation: true, isAnimating: false, menuButtonHover: false, showContextMenu: false};\n }\n\n componentWillMount() {\n this.props.document.addEventListener(VISIBILITY_CHANGE_EVENT, this.enableOrDisableAnimation);\n }\n\n componentWillUpdate(nextProps) {\n // Check if we're about to go from expanded to collapsed\n if (!this.props.collapsed && nextProps.collapsed) {\n // This next line forces a layout flush of the section body, which has a\n // max-height style set, so that the upcoming collapse animation can\n // animate from that height to the collapsed height. Without this, the\n // update is coalesced and there's no animation from no-max-height to 0.\n this.sectionBody.scrollHeight; // eslint-disable-line no-unused-expressions\n }\n }\n\n componentWillUnmount() {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this.enableOrDisableAnimation);\n }\n\n enableOrDisableAnimation() {\n // Only animate the collapse/expand for visible tabs.\n const visible = this.props.document.visibilityState === VISIBLE;\n if (this.state.enableAnimation !== visible) {\n this.setState({enableAnimation: visible});\n }\n }\n\n onBodyMount(node) {\n this.sectionBody = node;\n }\n\n onHeaderClick() {\n // If this.sectionBody is unset, it means that we're in some sort of error\n // state, probably displaying the error fallback, so we won't be able to\n // compute the height, and we don't want to persist the preference.\n // If props.collapsed is undefined handler shouldn't do anything.\n if (!this.sectionBody || this.props.collapsed === undefined) {\n return;\n }\n\n // Get the current height of the body so max-height transitions can work\n this.setState({\n isAnimating: true,\n maxHeight: `${this.sectionBody.scrollHeight}px`\n });\n const {action, userEvent} = SectionMenuOptions.CheckCollapsed(this.props);\n this.props.dispatch(action);\n this.props.dispatch(ac.UserEvent({\n event: userEvent,\n source: this.props.source\n }));\n }\n\n onTransitionEnd(event) {\n // Only update the animating state for our own transition (not a child's)\n if (event.target === event.currentTarget) {\n this.setState({isAnimating: false});\n }\n }\n\n renderIcon() {\n const {icon} = this.props;\n if (icon && icon.startsWith(\"moz-extension://\")) {\n return <span className=\"icon icon-small-spacer\" style={{backgroundImage: `url('${icon}')`}} />;\n }\n return <span className={`icon icon-small-spacer icon-${icon || \"webextension\"}`} />;\n }\n\n onMenuButtonClick(event) {\n event.preventDefault();\n this.setState({showContextMenu: true});\n }\n\n onMenuButtonMouseEnter() {\n this.setState({menuButtonHover: true});\n }\n\n onMenuButtonMouseLeave() {\n this.setState({menuButtonHover: false});\n }\n\n onMenuUpdate(showContextMenu) {\n this.setState({showContextMenu});\n }\n\n render() {\n const isCollapsible = this.props.collapsed !== undefined;\n const {enableAnimation, isAnimating, maxHeight, menuButtonHover, showContextMenu} = this.state;\n const {id, eventSource, collapsed, disclaimer, title, extraMenuOptions, showPrefName, privacyNoticeURL, dispatch, isFirst, isLast, isWebExtension} = this.props;\n const disclaimerPref = `section.${id}.showDisclaimer`;\n const needsDisclaimer = disclaimer && this.props.Prefs.values[disclaimerPref];\n const active = menuButtonHover || showContextMenu;\n return (\n <section\n className={`collapsible-section ${this.props.className}${enableAnimation ? \" animation-enabled\" : \"\"}${collapsed ? \" collapsed\" : \"\"}${active ? \" active\" : \"\"}`}\n // Note: data-section-id is used for web extension api tests in mozilla central\n data-section-id={id}>\n <div className=\"section-top-bar\">\n <h3 className=\"section-title\">\n <span className=\"click-target\" onClick={this.onHeaderClick}>\n {this.renderIcon()}\n {getFormattedMessage(title)}\n {isCollapsible && <span className={`collapsible-arrow icon ${collapsed ? \"icon-arrowhead-forward-small\" : \"icon-arrowhead-down-small\"}`} />}\n </span>\n </h3>\n <div>\n <button\n className=\"context-menu-button icon\"\n onClick={this.onMenuButtonClick}\n onMouseEnter={this.onMenuButtonMouseEnter}\n onMouseLeave={this.onMenuButtonMouseLeave}>\n <span className=\"sr-only\">\n <FormattedMessage id=\"section_context_menu_button_sr\" />\n </span>\n </button>\n {showContextMenu &&\n <SectionMenu\n id={id}\n extraOptions={extraMenuOptions}\n eventSource={eventSource}\n showPrefName={showPrefName}\n privacyNoticeURL={privacyNoticeURL}\n collapsed={collapsed}\n onUpdate={this.onMenuUpdate}\n isFirst={isFirst}\n isLast={isLast}\n dispatch={dispatch}\n isWebExtension={isWebExtension} />\n }\n </div>\n </div>\n <ErrorBoundary className=\"section-body-fallback\">\n <div\n className={`section-body${isAnimating ? \" animating\" : \"\"}`}\n onTransitionEnd={this.onTransitionEnd}\n ref={this.onBodyMount}\n style={isAnimating && !collapsed ? {maxHeight} : null}>\n {needsDisclaimer && <DisclaimerIntl disclaimerPref={disclaimerPref} disclaimer={disclaimer} eventSource={eventSource} dispatch={this.props.dispatch} />}\n {this.props.children}\n </div>\n </ErrorBoundary>\n </section>\n );\n }\n}\n\n_CollapsibleSection.defaultProps = {\n document: global.document || {\n addEventListener: () => {},\n removeEventListener: () => {},\n visibilityState: \"hidden\"\n },\n Prefs: {values: {}}\n};\n\nexport const CollapsibleSection = injectIntl(_CollapsibleSection);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/CollapsibleSection/CollapsibleSection.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\n\n/**\n * List of functions that return items that can be included as menu options in a\n * SectionMenu. All functions take the section as the only parameter.\n */\nexport const SectionMenuOptions = {\n Separator: () => ({type: \"separator\"}),\n MoveUp: section => ({\n id: \"section_menu_action_move_up\",\n icon: \"arrowhead-up\",\n action: ac.OnlyToMain({\n type: at.SECTION_MOVE,\n data: {id: section.id, direction: -1}\n }),\n userEvent: \"MENU_MOVE_UP\",\n disabled: !!section.isFirst\n }),\n MoveDown: section => ({\n id: \"section_menu_action_move_down\",\n icon: \"arrowhead-down\",\n action: ac.OnlyToMain({\n type: at.SECTION_MOVE,\n data: {id: section.id, direction: +1}\n }),\n userEvent: \"MENU_MOVE_DOWN\",\n disabled: !!section.isLast\n }),\n RemoveSection: section => ({\n id: \"section_menu_action_remove_section\",\n icon: \"dismiss\",\n action: ac.SetPref(section.showPrefName, false),\n userEvent: \"MENU_REMOVE\"\n }),\n CollapseSection: section => ({\n id: \"section_menu_action_collapse_section\",\n icon: \"minimize\",\n action: ac.OnlyToMain({type: at.UPDATE_SECTION_PREFS, data: {id: section.id, value: {collapsed: true}}}),\n userEvent: \"MENU_COLLAPSE\"\n }),\n ExpandSection: section => ({\n id: \"section_menu_action_expand_section\",\n icon: \"maximize\",\n action: ac.OnlyToMain({type: at.UPDATE_SECTION_PREFS, data: {id: section.id, value: {collapsed: false}}}),\n userEvent: \"MENU_EXPAND\"\n }),\n ManageSection: section => ({\n id: \"section_menu_action_manage_section\",\n icon: \"settings\",\n action: ac.OnlyToMain({type: at.SETTINGS_OPEN}),\n userEvent: \"MENU_MANAGE\"\n }),\n ManageWebExtension: section => ({\n id: \"section_menu_action_manage_webext\",\n icon: \"settings\",\n action: ac.OnlyToMain({type: at.OPEN_WEBEXT_SETTINGS, data: section.id})\n }),\n AddTopSite: section => ({\n id: \"section_menu_action_add_topsite\",\n icon: \"add\",\n action: {type: at.TOP_SITES_EDIT, data: {index: -1}},\n userEvent: \"MENU_ADD_TOPSITE\"\n }),\n PrivacyNotice: section => ({\n id: \"section_menu_action_privacy_notice\",\n icon: \"info\",\n action: ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: {url: section.privacyNoticeURL}\n }),\n userEvent: \"MENU_PRIVACY_NOTICE\"\n }),\n CheckCollapsed: section => (section.collapsed ? SectionMenuOptions.ExpandSection(section) : SectionMenuOptions.CollapseSection(section))\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/section-menu-options.js","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {perfService as perfSvc} from \"common/PerfService.jsm\";\nimport React from \"react\";\n\n// Currently record only a fixed set of sections. This will prevent data\n// from custom sections from showing up or from topstories.\nconst RECORDED_SECTIONS = [\"highlights\", \"topsites\"];\n\nexport class ComponentPerfTimer extends React.Component {\n constructor(props) {\n super(props);\n // Just for test dependency injection:\n this.perfSvc = this.props.perfSvc || perfSvc;\n\n this._sendBadStateEvent = this._sendBadStateEvent.bind(this);\n this._sendPaintedEvent = this._sendPaintedEvent.bind(this);\n this._reportMissingData = false;\n this._timestampHandled = false;\n this._recordedFirstRender = false;\n }\n\n componentDidMount() {\n if (!RECORDED_SECTIONS.includes(this.props.id)) {\n return;\n }\n\n this._maybeSendPaintedEvent();\n }\n\n componentDidUpdate() {\n if (!RECORDED_SECTIONS.includes(this.props.id)) {\n return;\n }\n\n this._maybeSendPaintedEvent();\n }\n\n /**\n * Call the given callback after the upcoming frame paints.\n *\n * @note Both setTimeout and requestAnimationFrame are throttled when the page\n * is hidden, so this callback may get called up to a second or so after the\n * requestAnimationFrame \"paint\" for hidden tabs.\n *\n * Newtabs hidden while loading will presumably be fairly rare (other than\n * preloaded tabs, which we will be filtering out on the server side), so such\n * cases should get lost in the noise.\n *\n * If we decide that it's important to find out when something that's hidden\n * has \"painted\", however, another option is to post a message to this window.\n * That should happen even faster than setTimeout, and, at least as of this\n * writing, it's not throttled in hidden windows in Firefox.\n *\n * @param {Function} callback\n *\n * @returns void\n */\n _afterFramePaint(callback) {\n requestAnimationFrame(() => setTimeout(callback, 0));\n }\n\n _maybeSendBadStateEvent() {\n // Follow up bugs:\n // https://github.com/mozilla/activity-stream/issues/3691\n if (!this.props.initialized) {\n // Remember to report back when data is available.\n this._reportMissingData = true;\n } else if (this._reportMissingData) {\n this._reportMissingData = false;\n // Report how long it took for component to become initialized.\n this._sendBadStateEvent();\n }\n }\n\n _maybeSendPaintedEvent() {\n // If we've already handled a timestamp, don't do it again.\n if (this._timestampHandled || !this.props.initialized) {\n return;\n }\n\n // And if we haven't, we're doing so now, so remember that. Even if\n // something goes wrong in the callback, we can't try again, as we'd be\n // sending back the wrong data, and we have to do it here, so that other\n // calls to this method while waiting for the next frame won't also try to\n // handle it.\n this._timestampHandled = true;\n this._afterFramePaint(this._sendPaintedEvent);\n }\n\n /**\n * Triggered by call to render. Only first call goes through due to\n * `_recordedFirstRender`.\n */\n _ensureFirstRenderTsRecorded() {\n // Used as t0 for recording how long component took to initialize.\n if (!this._recordedFirstRender) {\n this._recordedFirstRender = true;\n // topsites_first_render_ts, highlights_first_render_ts.\n const key = `${this.props.id}_first_render_ts`;\n this.perfSvc.mark(key);\n }\n }\n\n /**\n * Creates `TELEMETRY_UNDESIRED_EVENT` with timestamp in ms\n * of how much longer the data took to be ready for display than it would\n * have been the ideal case.\n * https://github.com/mozilla/ping-centre/issues/98\n */\n _sendBadStateEvent() {\n // highlights_data_ready_ts, topsites_data_ready_ts.\n const dataReadyKey = `${this.props.id}_data_ready_ts`;\n this.perfSvc.mark(dataReadyKey);\n\n try {\n const firstRenderKey = `${this.props.id}_first_render_ts`;\n // value has to be Int32.\n const value = parseInt(this.perfSvc.getMostRecentAbsMarkStartByName(dataReadyKey) -\n this.perfSvc.getMostRecentAbsMarkStartByName(firstRenderKey), 10);\n this.props.dispatch(ac.OnlyToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n // highlights_data_late_by_ms, topsites_data_late_by_ms.\n data: {[`${this.props.id}_data_late_by_ms`]: value}\n }));\n } catch (ex) {\n // If this failed, it's likely because the `privacy.resistFingerprinting`\n // pref is true.\n }\n }\n\n _sendPaintedEvent() {\n // Record first_painted event but only send if topsites.\n if (this.props.id !== \"topsites\") {\n return;\n }\n\n // topsites_first_painted_ts.\n const key = `${this.props.id}_first_painted_ts`;\n this.perfSvc.mark(key);\n\n try {\n const data = {};\n data[key] = this.perfSvc.getMostRecentAbsMarkStartByName(key);\n\n this.props.dispatch(ac.OnlyToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n data\n }));\n } catch (ex) {\n // If this failed, it's likely because the `privacy.resistFingerprinting`\n // pref is true. We should at least not blow up, and should continue\n // to set this._timestampHandled to avoid going through this again.\n }\n }\n\n render() {\n if (RECORDED_SECTIONS.includes(this.props.id)) {\n this._ensureFirstRenderTsRecorded();\n this._maybeSendBadStateEvent();\n }\n return this.props.children;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ComponentPerfTimer/ComponentPerfTimer.jsx","/* globals Services */\n\"use strict\";\n\n/* istanbul ignore if */\nif (typeof ChromeUtils !== \"undefined\") {\n ChromeUtils.import(\"resource://gre/modules/Services.jsm\");\n}\n\nlet usablePerfObj;\n\n/* istanbul ignore if */\n/* istanbul ignore else */\nif (typeof Services !== \"undefined\") {\n // Borrow the high-resolution timer from the hidden window....\n usablePerfObj = Services.appShell.hiddenDOMWindow.performance;\n} else if (typeof performance !== \"undefined\") {\n // we must be running in content space\n // eslint-disable-next-line no-undef\n usablePerfObj = performance;\n} else {\n // This is a dummy object so this file doesn't crash in the node prerendering\n // task.\n usablePerfObj = {\n now() {},\n mark() {}\n };\n}\n\nfunction _PerfService(options) {\n // For testing, so that we can use a fake Window.performance object with\n // known state.\n if (options && options.performanceObj) {\n this._perf = options.performanceObj;\n } else {\n this._perf = usablePerfObj;\n }\n}\n\n_PerfService.prototype = {\n /**\n * Calls the underlying mark() method on the appropriate Window.performance\n * object to add a mark with the given name to the appropriate performance\n * timeline.\n *\n * @param {String} name the name to give the current mark\n * @return {void}\n */\n mark: function mark(str) {\n this._perf.mark(str);\n },\n\n /**\n * Calls the underlying getEntriesByName on the appropriate Window.performance\n * object.\n *\n * @param {String} name\n * @param {String} type eg \"mark\"\n * @return {Array} Performance* objects\n */\n getEntriesByName: function getEntriesByName(name, type) {\n return this._perf.getEntriesByName(name, type);\n },\n\n /**\n * The timeOrigin property from the appropriate performance object.\n * Used to ensure that timestamps from the add-on code and the content code\n * are comparable.\n *\n * @note If this is called from a context without a window\n * (eg a JSM in chrome), it will return the timeOrigin of the XUL hidden\n * window, which appears to be the first created window (and thus\n * timeOrigin) in the browser. Note also, however, there is also a private\n * hidden window, presumably for private browsing, which appears to be\n * created dynamically later. Exactly how/when that shows up needs to be\n * investigated.\n *\n * @return {Number} A double of milliseconds with a precision of 0.5us.\n */\n get timeOrigin() {\n return this._perf.timeOrigin;\n },\n\n /**\n * Returns the \"absolute\" version of performance.now(), i.e. one that\n * should ([bug 1401406](https://bugzilla.mozilla.org/show_bug.cgi?id=1401406)\n * be comparable across both chrome and content.\n *\n * @return {Number}\n */\n absNow: function absNow() {\n return this.timeOrigin + this._perf.now();\n },\n\n /**\n * This returns the absolute startTime from the most recent performance.mark()\n * with the given name.\n *\n * @param {String} name the name to lookup the start time for\n *\n * @return {Number} the returned start time, as a DOMHighResTimeStamp\n *\n * @throws {Error} \"No Marks with the name ...\" if none are available\n *\n * @note Always surround calls to this by try/catch. Otherwise your code\n * may fail when the `privacy.resistFingerprinting` pref is true. When\n * this pref is set, all attempts to get marks will likely fail, which will\n * cause this method to throw.\n *\n * See [bug 1369303](https://bugzilla.mozilla.org/show_bug.cgi?id=1369303)\n * for more info.\n */\n getMostRecentAbsMarkStartByName(name) {\n let entries = this.getEntriesByName(name, \"mark\");\n\n if (!entries.length) {\n throw new Error(`No marks with the name ${name}`);\n }\n\n let mostRecentEntry = entries[entries.length - 1];\n return this._perf.timeOrigin + mostRecentEntry.startTime;\n }\n};\n\nthis.perfService = new _PerfService();\nconst EXPORTED_SYMBOLS = [\"_PerfService\", \"perfService\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/PerfService.jsm","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {FormattedMessage, injectIntl} from \"react-intl\";\nimport {\n MIN_CORNER_FAVICON_SIZE,\n MIN_RICH_FAVICON_SIZE,\n TOP_SITES_CONTEXT_MENU_OPTIONS,\n TOP_SITES_SOURCE\n} from \"./TopSitesConstants\";\nimport {LinkMenu} from \"content-src/components/LinkMenu/LinkMenu\";\nimport React from \"react\";\nimport {TOP_SITES_MAX_SITES_PER_ROW} from \"common/Reducers.jsm\";\n\nexport class TopSiteLink extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onDragEvent = this.onDragEvent.bind(this);\n }\n\n /*\n * Helper to determine whether the drop zone should allow a drop. We only allow\n * dropping top sites for now.\n */\n _allowDrop(e) {\n return e.dataTransfer.types.includes(\"text/topsite-index\");\n }\n\n onDragEvent(event) {\n switch (event.type) {\n case \"click\":\n // Stop any link clicks if we started any dragging\n if (this.dragged) {\n event.preventDefault();\n }\n break;\n case \"dragstart\":\n this.dragged = true;\n event.dataTransfer.effectAllowed = \"move\";\n event.dataTransfer.setData(\"text/topsite-index\", this.props.index);\n event.target.blur();\n this.props.onDragEvent(event, this.props.index, this.props.link, this.props.title);\n break;\n case \"dragend\":\n this.props.onDragEvent(event);\n break;\n case \"dragenter\":\n case \"dragover\":\n case \"drop\":\n if (this._allowDrop(event)) {\n event.preventDefault();\n this.props.onDragEvent(event, this.props.index);\n }\n break;\n case \"mousedown\":\n // Reset at the first mouse event of a potential drag\n this.dragged = false;\n break;\n }\n }\n\n render() {\n const {children, className, defaultStyle, isDraggable, link, onClick, title} = this.props;\n const topSiteOuterClassName = `top-site-outer${className ? ` ${className}` : \"\"}${link.isDragged ? \" dragged\" : \"\"}`;\n const {tippyTopIcon, faviconSize} = link;\n const [letterFallback] = title;\n let imageClassName;\n let imageStyle;\n let showSmallFavicon = false;\n let smallFaviconStyle;\n let smallFaviconFallback;\n if (defaultStyle) { // force no styles (letter fallback) even if the link has imagery\n smallFaviconFallback = false;\n } else if (link.customScreenshotURL) {\n // assume high quality custom screenshot and use rich icon styles and class names\n imageClassName = \"top-site-icon rich-icon\";\n imageStyle = {\n backgroundColor: link.backgroundColor,\n backgroundImage: `url(${link.screenshot})`\n };\n } else if (tippyTopIcon || faviconSize >= MIN_RICH_FAVICON_SIZE) {\n // styles and class names for top sites with rich icons\n imageClassName = \"top-site-icon rich-icon\";\n imageStyle = {\n backgroundColor: link.backgroundColor,\n backgroundImage: `url(${tippyTopIcon || link.favicon})`\n };\n } else {\n // styles and class names for top sites with screenshot + small icon in top left corner\n imageClassName = `screenshot${link.screenshot ? \" active\" : \"\"}`;\n imageStyle = {backgroundImage: link.screenshot ? `url(${link.screenshot})` : \"none\"};\n\n // only show a favicon in top left if it's greater than 16x16\n if (faviconSize >= MIN_CORNER_FAVICON_SIZE) {\n showSmallFavicon = true;\n smallFaviconStyle = {backgroundImage: `url(${link.favicon})`};\n } else if (link.screenshot) {\n // Don't show a small favicon if there is no screenshot, because that\n // would result in two fallback icons\n showSmallFavicon = true;\n smallFaviconFallback = true;\n }\n }\n let draggableProps = {};\n if (isDraggable) {\n draggableProps = {\n onClick: this.onDragEvent,\n onDragEnd: this.onDragEvent,\n onDragStart: this.onDragEvent,\n onMouseDown: this.onDragEvent\n };\n }\n return (<li className={topSiteOuterClassName} onDrop={this.onDragEvent} onDragOver={this.onDragEvent} onDragEnter={this.onDragEvent} onDragLeave={this.onDragEvent} {...draggableProps}>\n <div className=\"top-site-inner\">\n <a href={link.url} onClick={onClick}>\n <div className=\"tile\" aria-hidden={true} data-fallback={letterFallback}>\n <div className={imageClassName} style={imageStyle} />\n {showSmallFavicon && <div\n className=\"top-site-icon default-icon\"\n data-fallback={smallFaviconFallback && letterFallback}\n style={smallFaviconStyle} />}\n </div>\n <div className={`title ${link.isPinned ? \"pinned\" : \"\"}`}>\n {link.isPinned && <div className=\"icon icon-pin-small\" />}\n <span dir=\"auto\">{title}</span>\n </div>\n </a>\n {children}\n </div>\n </li>);\n }\n}\nTopSiteLink.defaultProps = {\n title: \"\",\n link: {},\n isDraggable: true\n};\n\nexport class TopSite extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {showContextMenu: false};\n this.onLinkClick = this.onLinkClick.bind(this);\n this.onMenuButtonClick = this.onMenuButtonClick.bind(this);\n this.onMenuUpdate = this.onMenuUpdate.bind(this);\n }\n\n /**\n * Report to telemetry additional information about the item.\n */\n _getTelemetryInfo() {\n const value = {icon_type: this.props.link.iconType};\n // Filter out \"not_pinned\" type for being the default\n if (this.props.link.isPinned) {\n value.card_type = \"pinned\";\n }\n return {value};\n }\n\n userEvent(event) {\n this.props.dispatch(ac.UserEvent(Object.assign({\n event,\n source: TOP_SITES_SOURCE,\n action_position: this.props.index\n }, this._getTelemetryInfo())));\n }\n\n onLinkClick(event) {\n this.userEvent(\"CLICK\");\n\n // Specially handle a top site link click for \"typed\" frecency bonus as\n // specified as a property on the link.\n event.preventDefault();\n const {altKey, button, ctrlKey, metaKey, shiftKey} = event;\n this.props.dispatch(ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: Object.assign(this.props.link, {event: {altKey, button, ctrlKey, metaKey, shiftKey}})\n }));\n }\n\n onMenuButtonClick(event) {\n event.preventDefault();\n this.props.onActivate(this.props.index);\n this.setState({showContextMenu: true});\n }\n\n onMenuUpdate(showContextMenu) {\n this.setState({showContextMenu});\n }\n\n render() {\n const {props} = this;\n const {link} = props;\n const isContextMenuOpen = this.state.showContextMenu && props.activeIndex === props.index;\n const title = link.label || link.hostname;\n return (<TopSiteLink {...props} onClick={this.onLinkClick} onDragEvent={this.props.onDragEvent} className={`${props.className || \"\"}${isContextMenuOpen ? \" active\" : \"\"}`} title={title}>\n <div>\n <button className=\"context-menu-button icon\" onClick={this.onMenuButtonClick}>\n <span className=\"sr-only\">\n <FormattedMessage id=\"context_menu_button_sr\" values={{title}} />\n </span>\n </button>\n {isContextMenuOpen &&\n <LinkMenu\n dispatch={props.dispatch}\n index={props.index}\n onUpdate={this.onMenuUpdate}\n options={TOP_SITES_CONTEXT_MENU_OPTIONS}\n site={link}\n siteInfo={this._getTelemetryInfo()}\n source={TOP_SITES_SOURCE} />\n }\n </div>\n </TopSiteLink>);\n }\n}\nTopSite.defaultProps = {\n link: {},\n onActivate() {}\n};\n\nexport class TopSitePlaceholder extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onEditButtonClick = this.onEditButtonClick.bind(this);\n }\n\n onEditButtonClick() {\n this.props.dispatch(\n {type: at.TOP_SITES_EDIT, data: {index: this.props.index}});\n }\n\n render() {\n return (<TopSiteLink {...this.props} className={`placeholder ${this.props.className || \"\"}`} isDraggable={false}>\n <button className=\"context-menu-button edit-button icon\"\n title={this.props.intl.formatMessage({id: \"edit_topsites_edit_button\"})}\n onClick={this.onEditButtonClick} />\n </TopSiteLink>);\n }\n}\n\nexport class _TopSiteList extends React.PureComponent {\n static get DEFAULT_STATE() {\n return {\n activeIndex: null,\n draggedIndex: null,\n draggedSite: null,\n draggedTitle: null,\n topSitesPreview: null\n };\n }\n\n constructor(props) {\n super(props);\n this.state = _TopSiteList.DEFAULT_STATE;\n this.onDragEvent = this.onDragEvent.bind(this);\n this.onActivate = this.onActivate.bind(this);\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.state.draggedSite) {\n const prevTopSites = this.props.TopSites && this.props.TopSites.rows;\n const newTopSites = nextProps.TopSites && nextProps.TopSites.rows;\n if (prevTopSites && prevTopSites[this.state.draggedIndex] &&\n prevTopSites[this.state.draggedIndex].url === this.state.draggedSite.url &&\n (!newTopSites[this.state.draggedIndex] || newTopSites[this.state.draggedIndex].url !== this.state.draggedSite.url)) {\n // We got the new order from the redux store via props. We can clear state now.\n this.setState(_TopSiteList.DEFAULT_STATE);\n }\n }\n }\n\n userEvent(event, index) {\n this.props.dispatch(ac.UserEvent({\n event,\n source: TOP_SITES_SOURCE,\n action_position: index\n }));\n }\n\n onDragEvent(event, index, link, title) {\n switch (event.type) {\n case \"dragstart\":\n this.dropped = false;\n this.setState({\n draggedIndex: index,\n draggedSite: link,\n draggedTitle: title,\n activeIndex: null\n });\n this.userEvent(\"DRAG\", index);\n break;\n case \"dragend\":\n if (!this.dropped) {\n // If there was no drop event, reset the state to the default.\n this.setState(_TopSiteList.DEFAULT_STATE);\n }\n break;\n case \"dragenter\":\n if (index === this.state.draggedIndex) {\n this.setState({topSitesPreview: null});\n } else {\n this.setState({topSitesPreview: this._makeTopSitesPreview(index)});\n }\n break;\n case \"drop\":\n if (index !== this.state.draggedIndex) {\n this.dropped = true;\n this.props.dispatch(ac.AlsoToMain({\n type: at.TOP_SITES_INSERT,\n data: {\n site: {\n url: this.state.draggedSite.url,\n label: this.state.draggedTitle,\n customScreenshotURL: this.state.draggedSite.customScreenshotURL\n },\n index,\n draggedFromIndex: this.state.draggedIndex\n }\n }));\n this.userEvent(\"DROP\", index);\n }\n break;\n }\n }\n\n _getTopSites() {\n // Make a copy of the sites to truncate or extend to desired length\n let topSites = this.props.TopSites.rows.slice();\n topSites.length = this.props.TopSitesRows * TOP_SITES_MAX_SITES_PER_ROW;\n return topSites;\n }\n\n /**\n * Make a preview of the topsites that will be the result of dropping the currently\n * dragged site at the specified index.\n */\n _makeTopSitesPreview(index) {\n const topSites = this._getTopSites();\n topSites[this.state.draggedIndex] = null;\n const pinnedOnly = topSites.map(site => ((site && site.isPinned) ? site : null));\n const unpinned = topSites.filter(site => site && !site.isPinned);\n const siteToInsert = Object.assign({}, this.state.draggedSite, {isPinned: true, isDragged: true});\n if (!pinnedOnly[index]) {\n pinnedOnly[index] = siteToInsert;\n } else {\n // Find the hole to shift the pinned site(s) towards. We shift towards the\n // hole left by the site being dragged.\n let holeIndex = index;\n const indexStep = index > this.state.draggedIndex ? -1 : 1;\n while (pinnedOnly[holeIndex]) {\n holeIndex += indexStep;\n }\n\n // Shift towards the hole.\n const shiftingStep = index > this.state.draggedIndex ? 1 : -1;\n while (holeIndex !== index) {\n const nextIndex = holeIndex + shiftingStep;\n pinnedOnly[holeIndex] = pinnedOnly[nextIndex];\n holeIndex = nextIndex;\n }\n pinnedOnly[index] = siteToInsert;\n }\n\n // Fill in the remaining holes with unpinned sites.\n const preview = pinnedOnly;\n for (let i = 0; i < preview.length; i++) {\n if (!preview[i]) {\n preview[i] = unpinned.shift() || null;\n }\n }\n\n return preview;\n }\n\n onActivate(index) {\n this.setState({activeIndex: index});\n }\n\n render() {\n const {props} = this;\n const topSites = this.state.topSitesPreview || this._getTopSites();\n const topSitesUI = [];\n const commonProps = {\n onDragEvent: this.onDragEvent,\n dispatch: props.dispatch,\n intl: props.intl\n };\n // We assign a key to each placeholder slot. We need it to be independent\n // of the slot index (i below) so that the keys used stay the same during\n // drag and drop reordering and the underlying DOM nodes are reused.\n // This mostly (only?) affects linux so be sure to test on linux before changing.\n let holeIndex = 0;\n\n // On narrow viewports, we only show 6 sites per row. We'll mark the rest as\n // .hide-for-narrow to hide in CSS via @media query.\n const maxNarrowVisibleIndex = props.TopSitesRows * 6;\n\n for (let i = 0, l = topSites.length; i < l; i++) {\n const link = topSites[i] && Object.assign({}, topSites[i], {iconType: this.props.topSiteIconType(topSites[i])});\n const slotProps = {\n key: link ? link.url : holeIndex++,\n index: i\n };\n if (i >= maxNarrowVisibleIndex) {\n slotProps.className = \"hide-for-narrow\";\n }\n topSitesUI.push(!link ? (\n <TopSitePlaceholder\n {...slotProps}\n {...commonProps} />\n ) : (\n <TopSite\n link={link}\n activeIndex={this.state.activeIndex}\n onActivate={this.onActivate}\n {...slotProps}\n {...commonProps} />\n ));\n }\n return (<ul className={`top-sites-list${this.state.draggedSite ? \" dnd-active\" : \"\"}`}>\n {topSitesUI}\n </ul>);\n }\n}\n\nexport const TopSiteList = injectIntl(_TopSiteList);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSite.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {addSnippetsSubscriber} from \"content-src/lib/snippets\";\nimport {Base} from \"content-src/components/Base/Base\";\nimport {DetectUserSessionStart} from \"content-src/lib/detect-user-session-start\";\nimport {initStore} from \"content-src/lib/init-store\";\nimport {Provider} from \"react-redux\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {reducers} from \"common/Reducers.jsm\";\n\nconst store = initStore(reducers, global.gActivityStreamPrerenderedState);\n\nnew DetectUserSessionStart(store).sendEventOrAddListener();\n\n// If we are starting in a prerendered state, we must wait until the first render\n// to request state rehydration (see Base.jsx). If we are NOT in a prerendered state,\n// we can request it immedately.\nif (!global.gActivityStreamPrerenderedState) {\n store.dispatch(ac.AlsoToMain({type: at.NEW_TAB_STATE_REQUEST}));\n}\n\nReactDOM.hydrate(<Provider store={store}>\n <Base\n isFirstrun={global.document.location.href === \"about:welcome\"}\n isPrerendered={!!global.gActivityStreamPrerenderedState}\n locale={global.document.documentElement.lang}\n strings={global.gActivityStreamStrings} />\n</Provider>, document.getElementById(\"root\"));\n\naddSnippetsSubscriber(store);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/activity-stream.jsx","const DATABASE_NAME = \"snippets_db\";\nconst DATABASE_VERSION = 1;\nconst SNIPPETS_OBJECTSTORE_NAME = \"snippets\";\nexport const SNIPPETS_UPDATE_INTERVAL_MS = 14400000; // 4 hours.\n\nconst SNIPPETS_ENABLED_EVENT = \"Snippets:Enabled\";\nconst SNIPPETS_DISABLED_EVENT = \"Snippets:Disabled\";\n\nimport {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {initASRouter} from \"content-src/asrouter/asrouter-content\";\n\n/**\n * SnippetsMap - A utility for cacheing values related to the snippet. It has\n * the same interface as a Map, but is optionally backed by\n * indexedDB for persistent storage.\n * Call .connect() to open a database connection and restore any\n * previously cached data, if necessary.\n *\n */\nexport class SnippetsMap extends Map {\n constructor(dispatch) {\n super();\n this._db = null;\n this._dispatch = dispatch;\n }\n\n set(key, value) {\n super.set(key, value);\n return this._dbTransaction(db => db.put(value, key));\n }\n\n delete(key) {\n super.delete(key);\n return this._dbTransaction(db => db.delete(key));\n }\n\n clear() {\n super.clear();\n this._dispatch(ac.OnlyToMain({type: at.SNIPPETS_BLOCKLIST_CLEARED}));\n return this._dbTransaction(db => db.clear());\n }\n\n get blockList() {\n return this.get(\"blockList\") || [];\n }\n\n /**\n * blockSnippetById - Blocks a snippet given an id\n *\n * @param {str|int} id The id of the snippet\n * @return {Promise} Resolves when the id has been written to indexedDB,\n * or immediately if the snippetMap is not connected\n */\n async blockSnippetById(id) {\n if (!id) {\n return;\n }\n const {blockList} = this;\n if (!blockList.includes(id)) {\n blockList.push(id);\n this._dispatch(ac.AlsoToMain({type: at.SNIPPETS_BLOCKLIST_UPDATED, data: id}));\n await this.set(\"blockList\", blockList);\n }\n }\n\n disableOnboarding() {\n this._dispatch(ac.AlsoToMain({type: at.DISABLE_ONBOARDING}));\n }\n\n showFirefoxAccounts() {\n this._dispatch(ac.AlsoToMain({type: at.SHOW_FIREFOX_ACCOUNTS}));\n }\n\n getTotalBookmarksCount() {\n return new Promise(resolve => {\n this._dispatch(ac.OnlyToMain({type: at.TOTAL_BOOKMARKS_REQUEST}));\n global.addMessageListener(\"ActivityStream:MainToContent\", function onMessage({data: action}) {\n if (action.type === at.TOTAL_BOOKMARKS_RESPONSE) {\n resolve(action.data);\n global.removeMessageListener(\"ActivityStream:MainToContent\", onMessage);\n }\n });\n });\n }\n\n /**\n * connect - Attaches an indexedDB back-end to the Map so that any set values\n * are also cached in a store. It also restores any existing values\n * that are already stored in the indexedDB store.\n *\n * @return {type} description\n */\n async connect() {\n // Open the connection\n const db = await this._openDB();\n\n // Restore any existing values\n await this._restoreFromDb(db);\n\n // Attach a reference to the db\n this._db = db;\n }\n\n /**\n * _dbTransaction - Returns a db transaction wrapped with the given modifier\n * function as a Promise. If the db has not been connected,\n * it resolves immediately.\n *\n * @param {func} modifier A function to call with the transaction\n * @return {obj} A Promise that resolves when the transaction has\n * completed or errored\n */\n _dbTransaction(modifier) {\n if (!this._db) {\n return Promise.resolve();\n }\n return new Promise((resolve, reject) => {\n const transaction = modifier(\n this._db\n .transaction(SNIPPETS_OBJECTSTORE_NAME, \"readwrite\")\n .objectStore(SNIPPETS_OBJECTSTORE_NAME)\n );\n transaction.onsuccess = event => resolve();\n\n /* istanbul ignore next */\n transaction.onerror = event => reject(transaction.error);\n });\n }\n\n _openDB() {\n return new Promise((resolve, reject) => {\n const openRequest = indexedDB.open(DATABASE_NAME, DATABASE_VERSION);\n\n /* istanbul ignore next */\n openRequest.onerror = event => {\n // Try to delete the old database so that we can start this process over\n // next time.\n indexedDB.deleteDatabase(DATABASE_NAME);\n reject(event);\n };\n\n openRequest.onupgradeneeded = event => {\n const db = event.target.result;\n if (!db.objectStoreNames.contains(SNIPPETS_OBJECTSTORE_NAME)) {\n db.createObjectStore(SNIPPETS_OBJECTSTORE_NAME);\n }\n };\n\n openRequest.onsuccess = event => {\n let db = event.target.result;\n\n /* istanbul ignore next */\n db.onerror = err => console.error(err); // eslint-disable-line no-console\n /* istanbul ignore next */\n db.onversionchange = versionChangeEvent => versionChangeEvent.target.close();\n\n resolve(db);\n };\n });\n }\n\n _restoreFromDb(db) {\n return new Promise((resolve, reject) => {\n let cursorRequest;\n try {\n cursorRequest = db.transaction(SNIPPETS_OBJECTSTORE_NAME)\n .objectStore(SNIPPETS_OBJECTSTORE_NAME).openCursor();\n } catch (err) {\n // istanbul ignore next\n reject(err);\n // istanbul ignore next\n return;\n }\n\n /* istanbul ignore next */\n cursorRequest.onerror = event => reject(event);\n\n cursorRequest.onsuccess = event => {\n let cursor = event.target.result;\n // Populate the cache from the persistent storage.\n if (cursor) {\n if (cursor.value !== \"blockList\") {\n this.set(cursor.key, cursor.value);\n }\n cursor.continue();\n } else {\n // We are done.\n resolve();\n }\n };\n });\n }\n}\n\n/**\n * SnippetsProvider - Initializes a SnippetsMap and loads snippets from a\n * remote location, or else default snippets if the remote\n * snippets cannot be retrieved.\n */\nexport class SnippetsProvider {\n constructor(dispatch) {\n // Initialize the Snippets Map and attaches it to a global so that\n // the snippet payload can interact with it.\n global.gSnippetsMap = new SnippetsMap(dispatch);\n this._onAction = this._onAction.bind(this);\n }\n\n get snippetsMap() {\n return global.gSnippetsMap;\n }\n\n async _refreshSnippets() {\n // Check if the cached version of of the snippets in snippetsMap. If it's too\n // old, blow away the entire snippetsMap.\n const cachedVersion = this.snippetsMap.get(\"snippets-cached-version\");\n\n if (cachedVersion !== this.appData.version) {\n this.snippetsMap.clear();\n }\n\n // Has enough time passed for us to require an update?\n const lastUpdate = this.snippetsMap.get(\"snippets-last-update\");\n const needsUpdate = !(lastUpdate >= 0) || Date.now() - lastUpdate > SNIPPETS_UPDATE_INTERVAL_MS;\n\n if (needsUpdate && this.appData.snippetsURL) {\n this.snippetsMap.set(\"snippets-last-update\", Date.now());\n try {\n const response = await fetch(this.appData.snippetsURL);\n if (response.status === 200) {\n const payload = await response.text();\n\n this.snippetsMap.set(\"snippets\", payload);\n this.snippetsMap.set(\"snippets-cached-version\", this.appData.version);\n }\n } catch (e) {\n console.error(e); // eslint-disable-line no-console\n }\n }\n }\n\n _noSnippetFallback() {\n // TODO\n }\n\n _forceOnboardingVisibility(shouldBeVisible) {\n const onboardingEl = document.getElementById(\"onboarding-notification-bar\");\n\n if (onboardingEl) {\n onboardingEl.style.display = shouldBeVisible ? \"\" : \"none\";\n }\n }\n\n _showRemoteSnippets() {\n const snippetsEl = document.getElementById(this.elementId);\n const payload = this.snippetsMap.get(\"snippets\");\n\n if (!snippetsEl) {\n throw new Error(`No element was found with id '${this.elementId}'.`);\n }\n\n // This could happen if fetching failed\n if (!payload) {\n throw new Error(\"No remote snippets were found in gSnippetsMap.\");\n }\n\n if (typeof payload !== \"string\") {\n throw new Error(\"Snippet payload was incorrectly formatted\");\n }\n\n // Note that injecting snippets can throw if they're invalid XML.\n // eslint-disable-next-line no-unsanitized/property\n snippetsEl.innerHTML = payload;\n\n // Scripts injected by innerHTML are inactive, so we have to relocate them\n // through DOM manipulation to activate their contents.\n for (const scriptEl of snippetsEl.getElementsByTagName(\"script\")) {\n const relocatedScript = document.createElement(\"script\");\n relocatedScript.text = scriptEl.text;\n scriptEl.parentNode.replaceChild(relocatedScript, scriptEl);\n }\n }\n\n _onAction(msg) {\n if (msg.data.type === at.SNIPPET_BLOCKED) {\n if (!this.snippetsMap.blockList.includes(msg.data.data)) {\n this.snippetsMap.set(\"blockList\", this.snippetsMap.blockList.concat(msg.data.data));\n document.getElementById(\"snippets-container\").style.display = \"none\";\n }\n }\n }\n\n /**\n * init - Fetch the snippet payload and show snippets\n *\n * @param {obj} options\n * @param {str} options.appData.snippetsURL The URL from which we fetch snippets\n * @param {int} options.appData.version The current snippets version\n * @param {str} options.elementId The id of the element in which to inject snippets\n * @param {bool} options.connect Should gSnippetsMap connect to indexedDB?\n */\n async init(options) {\n Object.assign(this, {\n appData: {},\n elementId: \"snippets\",\n connect: true\n }, options);\n\n // Add listener so we know when snippets are blocked on other pages\n if (global.addMessageListener) {\n global.addMessageListener(\"ActivityStream:MainToContent\", this._onAction);\n }\n\n // TODO: Requires enabling indexedDB on newtab\n // Restore the snippets map from indexedDB\n if (this.connect) {\n try {\n await this.snippetsMap.connect();\n } catch (e) {\n console.error(e); // eslint-disable-line no-console\n }\n }\n\n // Cache app data values so they can be accessible from gSnippetsMap\n for (const key of Object.keys(this.appData)) {\n if (key === \"blockList\") {\n this.snippetsMap.set(\"blockList\", this.appData[key]);\n } else {\n this.snippetsMap.set(`appData.${key}`, this.appData[key]);\n }\n }\n\n // Refresh snippets, if enough time has passed.\n await this._refreshSnippets();\n\n // Try showing remote snippets, falling back to defaults if necessary.\n try {\n this._showRemoteSnippets();\n } catch (e) {\n this._noSnippetFallback(e);\n }\n\n window.dispatchEvent(new Event(SNIPPETS_ENABLED_EVENT));\n\n this._forceOnboardingVisibility(true);\n this.initialized = true;\n }\n\n uninit() {\n window.dispatchEvent(new Event(SNIPPETS_DISABLED_EVENT));\n this._forceOnboardingVisibility(false);\n if (global.removeMessageListener) {\n global.removeMessageListener(\"ActivityStream:MainToContent\", this._onAction);\n }\n this.initialized = false;\n }\n}\n\n/**\n * addSnippetsSubscriber - Creates a SnippetsProvider that Initializes\n * when the store has received the appropriate\n * Snippet data.\n *\n * @param {obj} store The redux store\n * @return {obj} Returns the snippets instance and unsubscribe function\n */\nexport function addSnippetsSubscriber(store) {\n const snippets = new SnippetsProvider(store.dispatch);\n\n let initializing = false;\n\n store.subscribe(async () => {\n const state = store.getState();\n // state.Prefs.values[\"feeds.snippets\"]: Should snippets be shown?\n // state.Snippets.initialized Is the snippets data initialized?\n // snippets.initialized: Is SnippetsProvider currently initialised?\n if (state.Prefs.values[\"feeds.snippets\"] &&\n // If the message center experiment is enabled, don't show snippets\n !state.Prefs.values.asrouterExperimentEnabled &&\n !state.Prefs.values.disableSnippets &&\n state.Snippets.initialized &&\n !snippets.initialized &&\n // Don't call init multiple times\n !initializing &&\n location.href !== \"about:welcome\"\n ) {\n initializing = true;\n await snippets.init({appData: state.Snippets});\n initializing = false;\n } else if (\n (state.Prefs.values[\"feeds.snippets\"] === false ||\n state.Prefs.values.disableSnippets === true) &&\n snippets.initialized\n ) {\n snippets.uninit();\n }\n\n if (state.Prefs.values.asrouterExperimentEnabled) {\n initASRouter();\n }\n });\n\n // These values are returned for testing purposes\n return snippets;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/snippets.js","module.exports = Redux;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"Redux\"\n// module id = 21\n// module chunks = 0","import React from \"react\";\n\nexport const VISIBLE = \"visible\";\nexport const VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\n\n/**\n * Component wrapper used to send telemetry pings on every impression.\n */\nexport class ImpressionsWrapper extends React.PureComponent {\n // This sends an event when a user sees a set of new content. If content\n // changes while the page is hidden (i.e. preloaded or on a hidden tab),\n // only send the event if the page becomes visible again.\n sendImpressionOrAddListener() {\n if (this.props.document.visibilityState === VISIBLE) {\n this.props.sendImpression();\n } else {\n // We should only ever send the latest impression stats ping, so remove any\n // older listeners.\n if (this._onVisibilityChange) {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n\n // When the page becomes visible, send the impression stats ping if the section isn't collapsed.\n this._onVisibilityChange = () => {\n if (this.props.document.visibilityState === VISIBLE) {\n this.props.sendImpression();\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n };\n this.props.document.addEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n componentWillUnmount() {\n if (this._onVisibilityChange) {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n componentDidMount() {\n if (this.props.sendOnMount) {\n this.sendImpressionOrAddListener();\n }\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.shouldSendImpressionOnUpdate(this.props, prevProps)) {\n this.sendImpressionOrAddListener();\n }\n }\n\n render() {\n return this.props.children;\n }\n}\n\nImpressionsWrapper.defaultProps = {\n document: global.document,\n sendOnMount: true\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/ImpressionsWrapper/ImpressionsWrapper.jsx","import React from \"react\";\n\nexport class ModalOverlay extends React.PureComponent {\n componentWillMount() {\n this.setState({active: true});\n document.body.classList.add(\"modal-open\");\n }\n\n componentWillUnmount() {\n document.body.classList.remove(\"modal-open\");\n this.setState({active: false});\n }\n\n render() {\n const {active} = this.state;\n const {title, button_label} = this.props;\n return (\n <div>\n <div className={`modalOverlayOuter ${active ? \"active\" : \"\"}`} />\n <div className={`modalOverlayInner ${active ? \"active\" : \"\"}`}>\n <h2> {title} </h2>\n {this.props.children}\n <div className=\"footer\">\n <button onClick={this.props.onDoneButton} className=\"button primary modalButton\"> {button_label} </button>\n </div>\n </div>\n </div>\n );\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/ModalOverlay/ModalOverlay.jsx","import {ModalOverlay} from \"../../components/ModalOverlay/ModalOverlay\";\nimport React from \"react\";\n\nclass OnboardingCard extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onClick = this.onClick.bind(this);\n }\n\n onClick() {\n const {props} = this;\n props.sendUserActionTelemetry({event: \"TRY_NOW\", message_id: props.id});\n props.onAction(props.content);\n }\n\n render() {\n const {content} = this.props;\n return (\n <div className=\"onboardingMessage\">\n <div className={`onboardingMessageImage ${content.icon}`} />\n <div className=\"onboardingContent\">\n <span>\n <h3> {content.title} </h3>\n <p> {content.text} </p>\n </span>\n <span>\n <button className=\"button onboardingButton\" onClick={this.onClick}> {content.button_label} </button>\n </span>\n </div>\n </div>\n );\n }\n}\n\nexport class OnboardingMessage extends React.PureComponent {\n render() {\n const {props} = this;\n return (\n <ModalOverlay {...props} button_label={\"Start Browsing\"} title={\"Welcome to Firefox\"}>\n <div className=\"onboardingMessageContainer\">\n {props.bundle.map(message => (\n <OnboardingCard key={message.id} sendUserActionTelemetry={props.sendUserActionTelemetry} onAction={props.onAction} {...message} />\n ))}\n </div>\n </ModalOverlay>\n );\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/templates/OnboardingMessage/OnboardingMessage.jsx","export function safeURI(url) {\n if (!url) {\n return \"\";\n }\n const {protocol} = new URL(url);\n const isAllowed = [\n \"http:\",\n \"https:\",\n \"data:\",\n \"resource:\",\n \"chrome:\"\n ].includes(protocol);\n if (!isAllowed) {\n console.warn(`The protocol ${protocol} is not allowed for template URLs.`); // eslint-disable-line no-console\n }\n return isAllowed ? url : \"\";\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/template-utils.js","import React from \"react\";\nimport {safeURI} from \"../../template-utils\";\n\nexport const Button = props => (<a href={safeURI(props.url)}\n onClick={props.onClick}\n className={props.className || \"ASRouterButton\"}>\n {props.children}\n</a>);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/Button/Button.jsx","import React from \"react\";\n\nexport class SnippetBase extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onBlockClicked = this.onBlockClicked.bind(this);\n }\n\n onBlockClicked() {\n this.props.sendUserActionTelemetry({event: \"BLOCK\"});\n this.props.onBlock();\n }\n\n render() {\n const {props} = this;\n\n const containerClassName = `SnippetBaseContainer${props.className ? ` ${props.className}` : \"\"}`;\n\n return (<div className={containerClassName}>\n <div className=\"innerWrapper\">\n {props.children}\n </div>\n <button className=\"blockButton\" onClick={this.onBlockClicked} />\n </div>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/SnippetBase/SnippetBase.jsx","import {Button} from \"../../components/Button/Button\";\nimport React from \"react\";\nimport {safeURI} from \"../../template-utils\";\nimport {SnippetBase} from \"../../components/SnippetBase/SnippetBase\";\n\nconst DEFAULT_ICON_PATH = \"chrome://branding/content/icon64.png\";\n\nexport class SimpleSnippet extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onButtonClick = this.onButtonClick.bind(this);\n }\n\n onButtonClick() {\n this.props.sendUserActionTelemetry({event: \"CLICK_BUTTON\"});\n }\n\n renderTitle() {\n const {title} = this.props.content;\n return title ? <h3 className=\"title\">{title}</h3> : null;\n }\n\n renderButton(className) {\n const {props} = this;\n return (<Button\n className={className}\n onClick={this.onButtonClick}\n url={props.content.button_url}>\n {props.content.button_label}\n </Button>);\n }\n\n render() {\n const {props} = this;\n const hasLink = props.content.button_url && props.content.button_type === \"anchor\";\n const hasButton = props.content.button_url && !props.content.button_type;\n return (<SnippetBase {...props} className=\"SimpleSnippet\">\n <img src={safeURI(props.content.icon) || DEFAULT_ICON_PATH} className=\"icon\" />\n <div>\n {this.renderTitle()} <p className=\"body\">{props.content.text}</p> {hasLink ? this.renderButton(\"ASRouterAnchor\") : null}\n </div>\n {hasButton ? <div>{this.renderButton()}</div> : null}\n </SnippetBase>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/templates/SimpleSnippet/SimpleSnippet.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {addLocaleData, injectIntl, IntlProvider} from \"react-intl\";\nimport {ASRouterAdmin} from \"content-src/components/ASRouterAdmin/ASRouterAdmin\";\nimport {ConfirmDialog} from \"content-src/components/ConfirmDialog/ConfirmDialog\";\nimport {connect} from \"react-redux\";\nimport {ErrorBoundary} from \"content-src/components/ErrorBoundary/ErrorBoundary\";\nimport {ManualMigration} from \"content-src/components/ManualMigration/ManualMigration\";\nimport {PrerenderData} from \"common/PrerenderData.jsm\";\nimport React from \"react\";\nimport {Search} from \"content-src/components/Search/Search\";\nimport {Sections} from \"content-src/components/Sections/Sections\";\nimport {StartupOverlay} from \"content-src/components/StartupOverlay/StartupOverlay\";\n\nconst PrefsButton = injectIntl(props => (\n <div className=\"prefs-button\">\n <button className=\"icon icon-settings\" onClick={props.onClick} title={props.intl.formatMessage({id: \"settings_pane_button_label\"})} />\n </div>\n));\n\n// Add the locale data for pluralization and relative-time formatting for now,\n// this just uses english locale data. We can make this more sophisticated if\n// more features are needed.\nfunction addLocaleDataForReactIntl(locale) {\n addLocaleData([{locale, parentLocale: \"en\"}]);\n}\n\nexport class _Base extends React.PureComponent {\n componentWillMount() {\n const {App, locale, Theme} = this.props;\n if (Theme.className) {\n this.updateTheme(Theme);\n }\n this.sendNewTabRehydrated(App);\n addLocaleDataForReactIntl(locale);\n }\n\n componentDidMount() {\n // Request state AFTER the first render to ensure we don't cause the\n // prerendered DOM to be unmounted. Otherwise, NEW_TAB_STATE_REQUEST is\n // dispatched right after the store is ready.\n if (this.props.isPrerendered) {\n this.props.dispatch(ac.AlsoToMain({type: at.NEW_TAB_STATE_REQUEST}));\n this.props.dispatch(ac.AlsoToMain({type: at.PAGE_PRERENDERED}));\n }\n }\n\n componentWillUnmount() {\n this.updateTheme({className: \"\"});\n }\n\n componentWillUpdate({App, Theme}) {\n this.updateTheme(Theme);\n this.sendNewTabRehydrated(App);\n }\n\n updateTheme(Theme) {\n const bodyClassName = [\n \"activity-stream\",\n Theme.className,\n this.props.isFirstrun ? \"welcome\" : \"\"\n ].filter(v => v).join(\" \");\n global.document.body.className = bodyClassName;\n }\n\n // The NEW_TAB_REHYDRATED event is used to inform feeds that their\n // data has been consumed e.g. for counting the number of tabs that\n // have rendered that data.\n sendNewTabRehydrated(App) {\n if (App && App.initialized && !this.renderNotified) {\n this.props.dispatch(ac.AlsoToMain({type: at.NEW_TAB_REHYDRATED, data: {}}));\n this.renderNotified = true;\n }\n }\n\n render() {\n const {props} = this;\n const {App, locale, strings} = props;\n const {initialized} = App;\n\n if (props.Prefs.values.asrouterExperimentEnabled && window.location.hash === \"#asrouter\") {\n return (<ASRouterAdmin />);\n }\n\n if (!props.isPrerendered && !initialized) {\n return null;\n }\n\n return (<IntlProvider locale={locale} messages={strings}>\n <ErrorBoundary className=\"base-content-fallback\">\n <BaseContent {...this.props} />\n </ErrorBoundary>\n </IntlProvider>);\n }\n}\n\nexport class BaseContent extends React.PureComponent {\n constructor(props) {\n super(props);\n this.openPreferences = this.openPreferences.bind(this);\n }\n\n openPreferences() {\n this.props.dispatch(ac.OnlyToMain({type: at.SETTINGS_OPEN}));\n this.props.dispatch(ac.UserEvent({event: \"OPEN_NEWTAB_PREFS\"}));\n }\n\n render() {\n const {props} = this;\n const {App} = props;\n const {initialized} = App;\n const prefs = props.Prefs.values;\n\n const shouldBeFixedToTop = PrerenderData.arePrefsValid(name => prefs[name]);\n\n const outerClassName = [\n \"outer-wrapper\",\n shouldBeFixedToTop && \"fixed-to-top\"\n ].filter(v => v).join(\" \");\n\n return (\n <div>\n <div className={outerClassName}>\n <main>\n {prefs.showSearch &&\n <div className=\"non-collapsible-section\">\n <ErrorBoundary>\n <Search />\n </ErrorBoundary>\n </div>\n }\n <div className={`body-wrapper${(initialized ? \" on\" : \"\")}`}>\n {!prefs.migrationExpired &&\n <div className=\"non-collapsible-section\">\n <ManualMigration />\n </div>\n }\n <Sections />\n <PrefsButton onClick={this.openPreferences} />\n </div>\n <ConfirmDialog />\n </main>\n </div>\n {this.props.isFirstrun && <StartupOverlay />}\n </div>);\n }\n}\n\nexport const Base = connect(state => ({App: state.App, Prefs: state.Prefs, Theme: state.Theme}))(_Base);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Base/Base.jsx","import {ASRouterUtils} from \"../../asrouter/asrouter-content\";\nimport React from \"react\";\n\nexport class ASRouterAdmin extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onMessage = this.onMessage.bind(this);\n this.findOtherBundledMessagesOfSameTemplate = this.findOtherBundledMessagesOfSameTemplate.bind(this);\n this.state = {};\n }\n\n onMessage({data: action}) {\n if (action.type === \"ADMIN_SET_STATE\") {\n this.setState(action.data);\n }\n }\n\n componentWillMount() {\n ASRouterUtils.sendMessage({type: \"ADMIN_CONNECT_STATE\"});\n ASRouterUtils.addListener(this.onMessage);\n }\n\n componentWillUnmount() {\n ASRouterUtils.removeListener(this.onMessage);\n }\n\n findOtherBundledMessagesOfSameTemplate(template) {\n return this.state.messages.filter(msg => msg.template === template && msg.bundled);\n }\n\n handleBlock(msg) {\n if (msg.bundled) {\n // If we are blocking a message that belongs to a bundle, block all other messages that are bundled of that same template\n let bundle = this.findOtherBundledMessagesOfSameTemplate(msg.template);\n return () => ASRouterUtils.blockBundle(bundle);\n }\n return () => ASRouterUtils.blockById(msg.id);\n }\n\n handleUnblock(msg) {\n if (msg.bundled) {\n // If we are unblocking a message that belongs to a bundle, unblock all other messages that are bundled of that same template\n let bundle = this.findOtherBundledMessagesOfSameTemplate(msg.template);\n return () => ASRouterUtils.unblockBundle(bundle);\n }\n return () => ASRouterUtils.unblockById(msg.id);\n }\n\n handleOverride(id) {\n return () => ASRouterUtils.overrideMessage(id);\n }\n\n renderMessageItem(msg) {\n const isCurrent = msg.id === this.state.currentId;\n const isBlocked = this.state.blockList.includes(msg.id);\n\n let itemClassName = \"message-item\";\n if (isCurrent) { itemClassName += \" current\"; }\n if (isBlocked) { itemClassName += \" blocked\"; }\n\n return (<tr className={itemClassName} key={msg.id}>\n <td className=\"message-id\"><span>{msg.id}</span></td>\n <td>\n <button className={`button ${(isBlocked ? \"\" : \" primary\")}`} onClick={isBlocked ? this.handleUnblock(msg) : this.handleBlock(msg)}>{isBlocked ? \"Unblock\" : \"Block\"}</button>\n {isBlocked ? null : <button className=\"button\" onClick={this.handleOverride(msg.id)}>Show</button>}\n </td>\n <td className=\"message-summary\">\n <pre>{JSON.stringify(msg, null, 2)}</pre>\n </td>\n </tr>);\n }\n\n renderMessages() {\n if (!this.state.messages) {\n return null;\n }\n return (<table><tbody>\n {this.state.messages.map(msg => this.renderMessageItem(msg))}\n </tbody></table>);\n }\n\n renderProviders() {\n return (<table><tbody>\n {this.state.providers.map((provider, i) => (<tr className=\"message-item\" key={i}>\n <td>{provider.id}</td>\n <td>{provider.type === \"remote\" ? <a target=\"_blank\" href={provider.url}>{provider.url}</a> : \"(local)\"}</td>\n </tr>))}\n </tbody></table>);\n }\n\n render() {\n return (<div className=\"asrouter-admin outer-wrapper\">\n <h1>AS Router Admin</h1>\n <button className=\"button primary\" onClick={ASRouterUtils.getNextMessage}>Refresh Current Message</button>\n <h2>Message Providers</h2>\n {this.state.providers ? this.renderProviders() : null}\n <h2>Messages</h2>\n {this.renderMessages()}\n </div>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx","import {actionCreators as ac, actionTypes} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\n/**\n * ConfirmDialog component.\n * One primary action button, one cancel button.\n *\n * Content displayed is controlled by `data` prop the component receives.\n * Example:\n * data: {\n * // Any sort of data needed to be passed around by actions.\n * payload: site.url,\n * // Primary button AlsoToMain action.\n * action: \"DELETE_HISTORY_URL\",\n * // Primary button USerEvent action.\n * userEvent: \"DELETE\",\n * // Array of locale ids to display.\n * message_body: [\"confirm_history_delete_p1\", \"confirm_history_delete_notice_p2\"],\n * // Text for primary button.\n * confirm_button_string_id: \"menu_action_delete\"\n * },\n */\nexport class _ConfirmDialog extends React.PureComponent {\n constructor(props) {\n super(props);\n this._handleCancelBtn = this._handleCancelBtn.bind(this);\n this._handleConfirmBtn = this._handleConfirmBtn.bind(this);\n }\n\n _handleCancelBtn() {\n this.props.dispatch({type: actionTypes.DIALOG_CANCEL});\n this.props.dispatch(ac.UserEvent({event: actionTypes.DIALOG_CANCEL, source: this.props.data.eventSource}));\n }\n\n _handleConfirmBtn() {\n this.props.data.onConfirm.forEach(this.props.dispatch);\n }\n\n _renderModalMessage() {\n const message_body = this.props.data.body_string_id;\n\n if (!message_body) {\n return null;\n }\n\n return (<span>\n {message_body.map(msg => <p key={msg}><FormattedMessage id={msg} /></p>)}\n </span>);\n }\n\n render() {\n if (!this.props.visible) {\n return null;\n }\n\n return (<div className=\"confirmation-dialog\">\n <div className=\"modal-overlay\" onClick={this._handleCancelBtn} />\n <div className=\"modal\">\n <section className=\"modal-message\">\n {this.props.data.icon && <span className={`icon icon-spacer icon-${this.props.data.icon}`} />}\n {this._renderModalMessage()}\n </section>\n <section className=\"actions\">\n <button onClick={this._handleCancelBtn}>\n <FormattedMessage id={this.props.data.cancel_button_string_id} />\n </button>\n <button className=\"done\" onClick={this._handleConfirmBtn}>\n <FormattedMessage id={this.props.data.confirm_button_string_id} />\n </button>\n </section>\n </div>\n </div>);\n }\n}\n\nexport const ConfirmDialog = connect(state => state.Dialog)(_ConfirmDialog);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ConfirmDialog/ConfirmDialog.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\n/**\n * Manual migration component used to start the profile import wizard.\n * Message is presented temporarily and will go away if:\n * 1. User clicks \"No Thanks\"\n * 2. User completed the data import\n * 3. After 3 active days\n * 4. User clicks \"Cancel\" on the import wizard (currently not implemented).\n */\nexport class _ManualMigration extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onLaunchTour = this.onLaunchTour.bind(this);\n this.onCancelTour = this.onCancelTour.bind(this);\n }\n\n onLaunchTour() {\n this.props.dispatch(ac.AlsoToMain({type: at.MIGRATION_START}));\n this.props.dispatch(ac.UserEvent({event: at.MIGRATION_START}));\n }\n\n onCancelTour() {\n this.props.dispatch(ac.AlsoToMain({type: at.MIGRATION_CANCEL}));\n this.props.dispatch(ac.UserEvent({event: at.MIGRATION_CANCEL}));\n }\n\n render() {\n return (<div className=\"manual-migration-container\">\n <p>\n <span className=\"icon icon-import\" />\n <FormattedMessage id=\"manual_migration_explanation2\" />\n </p>\n <div className=\"manual-migration-actions actions\">\n <button className=\"dismiss\" onClick={this.onCancelTour}>\n <FormattedMessage id=\"manual_migration_cancel_button\" />\n </button>\n <button onClick={this.onLaunchTour}>\n <FormattedMessage id=\"manual_migration_import_button\" />\n </button>\n </div>\n </div>);\n }\n}\n\nexport const ManualMigration = connect()(_ManualMigration);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ManualMigration/ManualMigration.jsx","class _PrerenderData {\n constructor(options) {\n this.initialPrefs = options.initialPrefs;\n this.initialSections = options.initialSections;\n this._setValidation(options.validation);\n }\n\n get validation() {\n return this._validation;\n }\n\n set validation(value) {\n this._setValidation(value);\n }\n\n get invalidatingPrefs() {\n return this._invalidatingPrefs;\n }\n\n // This is needed so we can use it in the constructor\n _setValidation(value = []) {\n this._validation = value;\n this._invalidatingPrefs = value.reduce((result, next) => {\n if (typeof next === \"string\") {\n result.push(next);\n return result;\n } else if (next && next.oneOf) {\n return result.concat(next.oneOf);\n } else if (next && next.indexedDB) {\n return result.concat(next.indexedDB);\n }\n throw new Error(\"Your validation configuration is not properly configured\");\n }, []);\n }\n\n arePrefsValid(getPref, indexedDBPrefs) {\n for (const prefs of this.validation) {\n // {oneOf: [\"foo\", \"bar\"]}\n if (prefs && prefs.oneOf && !prefs.oneOf.some(name => getPref(name) === this.initialPrefs[name])) {\n return false;\n\n // {indexedDB: [\"foo\", \"bar\"]}\n } else if (indexedDBPrefs && prefs && prefs.indexedDB) {\n const anyModifiedPrefs = prefs.indexedDB.some(prefName => indexedDBPrefs.some(pref => pref && pref[prefName]));\n if (anyModifiedPrefs) {\n return false;\n }\n // \"foo\"\n } else if (getPref(prefs) !== this.initialPrefs[prefs]) {\n return false;\n }\n }\n return true;\n }\n}\n\nthis.PrerenderData = new _PrerenderData({\n initialPrefs: {\n \"migrationExpired\": true,\n \"feeds.topsites\": true,\n \"showSearch\": true,\n \"topSitesRows\": 1,\n \"feeds.section.topstories\": true,\n \"feeds.section.highlights\": true,\n \"sectionOrder\": \"topsites,topstories,highlights\",\n \"collapsed\": false\n },\n // Prefs listed as invalidating will prevent the prerendered version\n // of AS from being used if their value is something other than what is listed\n // here. This is required because some preferences cause the page layout to be\n // too different for the prerendered version to be used. Unfortunately, this\n // will result in users who have modified some of their preferences not being\n // able to get the benefits of prerendering.\n validation: [\n \"feeds.topsites\",\n \"showSearch\",\n \"topSitesRows\",\n \"sectionOrder\",\n // This means if either of these are set to their default values,\n // prerendering can be used.\n {oneOf: [\"feeds.section.topstories\", \"feeds.section.highlights\"]},\n // If any component has the following preference set to `true` it will\n // invalidate the prerendered version.\n {indexedDB: [\"collapsed\"]}\n ],\n initialSections: [\n {\n enabled: true,\n icon: \"pocket\",\n id: \"topstories\",\n order: 1,\n title: {id: \"header_recommended_by\", values: {provider: \"Pocket\"}}\n },\n {\n enabled: true,\n id: \"highlights\",\n icon: \"highlights\",\n order: 2,\n title: {id: \"header_highlights\"}\n }\n ]\n});\n\nthis._PrerenderData = _PrerenderData;\nconst EXPORTED_SYMBOLS = [\"PrerenderData\", \"_PrerenderData\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/PrerenderData.jsm","/* globals ContentSearchUIController */\n\"use strict\";\n\nimport {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {IS_NEWTAB} from \"content-src/lib/constants\";\nimport React from \"react\";\n\nexport class _Search extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onClick = this.onClick.bind(this);\n this.onInputMount = this.onInputMount.bind(this);\n }\n\n handleEvent(event) {\n // Also track search events with our own telemetry\n if (event.detail.type === \"Search\") {\n this.props.dispatch(ac.UserEvent({event: \"SEARCH\"}));\n }\n }\n\n onClick(event) {\n window.gContentSearchController.search(event);\n }\n\n componentWillUnmount() {\n delete window.gContentSearchController;\n }\n\n onInputMount(input) {\n if (input) {\n // The \"healthReportKey\" and needs to be \"newtab\" or \"abouthome\" so that\n // BrowserUsageTelemetry.jsm knows to handle events with this name, and\n // can add the appropriate telemetry probes for search. Without the correct\n // name, certain tests like browser_UsageTelemetry_content.js will fail\n // (See github ticket #2348 for more details)\n const healthReportKey = IS_NEWTAB ? \"newtab\" : \"abouthome\";\n\n // The \"searchSource\" needs to be \"newtab\" or \"homepage\" and is sent with\n // the search data and acts as context for the search request (See\n // nsISearchEngine.getSubmission). It is necessary so that search engine\n // plugins can correctly atribute referrals. (See github ticket #3321 for\n // more details)\n const searchSource = IS_NEWTAB ? \"newtab\" : \"homepage\";\n\n // gContentSearchController needs to exist as a global so that tests for\n // the existing about:home can find it; and so it allows these tests to pass.\n // In the future, when activity stream is default about:home, this can be renamed\n window.gContentSearchController = new ContentSearchUIController(input, input.parentNode,\n healthReportKey, searchSource);\n addEventListener(\"ContentSearchClient\", this);\n } else {\n window.gContentSearchController = null;\n removeEventListener(\"ContentSearchClient\", this);\n }\n }\n\n /*\n * Do not change the ID on the input field, as legacy newtab code\n * specifically looks for the id 'newtab-search-text' on input fields\n * in order to execute searches in various tests\n */\n render() {\n return (<div className=\"search-wrapper\">\n <label htmlFor=\"newtab-search-text\" className=\"search-label\">\n <span className=\"sr-only\"><FormattedMessage id=\"search_web_placeholder\" /></span>\n </label>\n <input\n id=\"newtab-search-text\"\n maxLength=\"256\"\n placeholder={this.props.intl.formatMessage({id: \"search_web_placeholder\"})}\n ref={this.onInputMount}\n title={this.props.intl.formatMessage({id: \"search_web_placeholder\"})}\n type=\"search\" />\n <button\n id=\"searchSubmit\"\n className=\"search-button\"\n onClick={this.onClick}\n title={this.props.intl.formatMessage({id: \"search_button\"})}>\n <span className=\"sr-only\"><FormattedMessage id=\"search_button\" /></span>\n </button>\n </div>);\n }\n}\n\nexport const Search = connect()(injectIntl(_Search));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Search/Search.jsx","export const IS_NEWTAB = global.document && global.document.documentURI === \"about:newtab\";\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/constants.js","import {Card, PlaceholderCard} from \"content-src/components/Card/Card\";\nimport {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {CollapsibleSection} from \"content-src/components/CollapsibleSection/CollapsibleSection\";\nimport {ComponentPerfTimer} from \"content-src/components/ComponentPerfTimer/ComponentPerfTimer\";\nimport {connect} from \"react-redux\";\nimport React from \"react\";\nimport {Topics} from \"content-src/components/Topics/Topics\";\nimport {TopSites} from \"content-src/components/TopSites/TopSites\";\n\nconst VISIBLE = \"visible\";\nconst VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\nconst CARDS_PER_ROW = 3;\n\nfunction getFormattedMessage(message) {\n return typeof message === \"string\" ? <span>{message}</span> : <FormattedMessage {...message} />;\n}\n\nexport class Section extends React.PureComponent {\n _dispatchImpressionStats() {\n const {props} = this;\n const maxCards = 3 * props.maxRows;\n const cards = props.rows.slice(0, maxCards);\n\n if (this.needsImpressionStats(cards)) {\n props.dispatch(ac.ImpressionStats({\n source: props.eventSource,\n tiles: cards.map(link => ({id: link.guid}))\n }));\n this.impressionCardGuids = cards.map(link => link.guid);\n }\n }\n\n // This sends an event when a user sees a set of new content. If content\n // changes while the page is hidden (i.e. preloaded or on a hidden tab),\n // only send the event if the page becomes visible again.\n sendImpressionStatsOrAddListener() {\n const {props} = this;\n\n if (!props.shouldSendImpressionStats || !props.dispatch) {\n return;\n }\n\n if (props.document.visibilityState === VISIBLE) {\n this._dispatchImpressionStats();\n } else {\n // We should only ever send the latest impression stats ping, so remove any\n // older listeners.\n if (this._onVisibilityChange) {\n props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n\n // When the page becomes visible, send the impression stats ping if the section isn't collapsed.\n this._onVisibilityChange = () => {\n if (props.document.visibilityState === VISIBLE) {\n if (!this.props.pref.collapsed) {\n this._dispatchImpressionStats();\n }\n props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n };\n props.document.addEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n componentDidMount() {\n if (this.props.rows.length && !this.props.pref.collapsed) {\n this.sendImpressionStatsOrAddListener();\n }\n }\n\n componentDidUpdate(prevProps) {\n const {props} = this;\n const isCollapsed = props.pref.collapsed;\n const wasCollapsed = prevProps.pref.collapsed;\n if (\n // Don't send impression stats for the empty state\n props.rows.length &&\n (\n // We only want to send impression stats if the content of the cards has changed\n // and the section is not collapsed...\n (props.rows !== prevProps.rows && !isCollapsed) ||\n // or if we are expanding a section that was collapsed.\n (wasCollapsed && !isCollapsed)\n )\n ) {\n this.sendImpressionStatsOrAddListener();\n }\n }\n\n componentWillUnmount() {\n if (this._onVisibilityChange) {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n needsImpressionStats(cards) {\n if (!this.impressionCardGuids || (this.impressionCardGuids.length !== cards.length)) {\n return true;\n }\n\n for (let i = 0; i < cards.length; i++) {\n if (cards[i].guid !== this.impressionCardGuids[i]) {\n return true;\n }\n }\n\n return false;\n }\n\n numberOfPlaceholders(items) {\n if (items === 0) {\n return CARDS_PER_ROW;\n }\n const remainder = items % CARDS_PER_ROW;\n if (remainder === 0) {\n return 0;\n }\n return CARDS_PER_ROW - remainder;\n }\n\n render() {\n const {\n id, eventSource, title, icon, rows,\n emptyState, dispatch, maxRows,\n contextMenuOptions, initialized, disclaimer,\n pref, privacyNoticeURL, isFirst, isLast\n } = this.props;\n const maxCards = CARDS_PER_ROW * maxRows;\n\n // Show topics only for top stories and if it's not initialized yet (so\n // content doesn't shift when it is loaded) or has loaded with topics\n const shouldShowTopics = (id === \"topstories\" &&\n (!this.props.topics || this.props.topics.length > 0));\n\n const realRows = rows.slice(0, maxCards);\n const placeholders = this.numberOfPlaceholders(realRows.length);\n\n // The empty state should only be shown after we have initialized and there is no content.\n // Otherwise, we should show placeholders.\n const shouldShowEmptyState = initialized && !rows.length;\n\n // <Section> <-- React component\n // <section> <-- HTML5 element\n return (<ComponentPerfTimer {...this.props}>\n <CollapsibleSection className=\"section\" icon={icon}\n title={title}\n id={id}\n eventSource={eventSource}\n disclaimer={disclaimer}\n collapsed={this.props.pref.collapsed}\n showPrefName={(pref && pref.feed) || id}\n privacyNoticeURL={privacyNoticeURL}\n Prefs={this.props.Prefs}\n isFirst={isFirst}\n isLast={isLast}\n dispatch={this.props.dispatch}\n isWebExtension={this.props.isWebExtension}>\n\n {!shouldShowEmptyState && (<ul className=\"section-list\" style={{padding: 0}}>\n {realRows.map((link, index) => link &&\n <Card key={index} index={index} dispatch={dispatch} link={link} contextMenuOptions={contextMenuOptions}\n eventSource={eventSource} shouldSendImpressionStats={this.props.shouldSendImpressionStats} isWebExtension={this.props.isWebExtension} />)}\n {placeholders > 0 && [...new Array(placeholders)].map((_, i) => <PlaceholderCard key={i} />)}\n </ul>)}\n {shouldShowEmptyState &&\n <div className=\"section-empty-state\">\n <div className=\"empty-state\">\n {emptyState.icon && emptyState.icon.startsWith(\"moz-extension://\") ?\n <img className=\"empty-state-icon icon\" style={{\"background-image\": `url('${emptyState.icon}')`}} /> :\n <img className={`empty-state-icon icon icon-${emptyState.icon}`} />}\n <p className=\"empty-state-message\">\n {getFormattedMessage(emptyState.message)}\n </p>\n </div>\n </div>}\n {shouldShowTopics && <Topics topics={this.props.topics} read_more_endpoint={this.props.read_more_endpoint} />}\n </CollapsibleSection>\n </ComponentPerfTimer>);\n }\n}\n\nSection.defaultProps = {\n document: global.document,\n rows: [],\n emptyState: {},\n pref: {},\n title: \"\"\n};\n\nexport const SectionIntl = connect(state => ({Prefs: state.Prefs}))(injectIntl(Section));\n\nexport class _Sections extends React.PureComponent {\n renderSections() {\n const sections = [];\n const enabledSections = this.props.Sections.filter(section => section.enabled);\n const {sectionOrder, \"feeds.topsites\": showTopSites} = this.props.Prefs.values;\n // Enabled sections doesn't include Top Sites, so we add it if enabled.\n const expectedCount = enabledSections.length + ~~showTopSites;\n\n for (const sectionId of sectionOrder.split(\",\")) {\n const commonProps = {\n key: sectionId,\n isFirst: sections.length === 0,\n isLast: sections.length === expectedCount - 1\n };\n if (sectionId === \"topsites\" && showTopSites) {\n sections.push(<TopSites {...commonProps} />);\n } else {\n const section = enabledSections.find(s => s.id === sectionId);\n if (section) {\n sections.push(<SectionIntl {...section} {...commonProps} />);\n }\n }\n }\n return sections;\n }\n\n render() {\n return (\n <div className=\"sections-list\">\n {this.renderSections()}\n </div>\n );\n }\n}\n\nexport const Sections = connect(state => ({Sections: state.Sections, Prefs: state.Prefs}))(_Sections);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Sections/Sections.jsx","export const cardContextTypes = {\n history: {\n intlID: \"type_label_visited\",\n icon: \"historyItem\"\n },\n bookmark: {\n intlID: \"type_label_bookmarked\",\n icon: \"bookmark-added\"\n },\n trending: {\n intlID: \"type_label_recommended\",\n icon: \"trending\"\n },\n now: {\n intlID: \"type_label_now\",\n icon: \"now\"\n },\n pocket: {\n intlID: \"type_label_pocket\",\n icon: \"pocket\"\n },\n download: {\n intlID: \"type_label_downloaded\",\n icon: \"download\"\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Card/types.js","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {cardContextTypes} from \"./types\";\nimport {connect} from \"react-redux\";\nimport {FormattedMessage} from \"react-intl\";\nimport {GetPlatformString} from \"content-src/lib/link-menu-options\";\nimport {LinkMenu} from \"content-src/components/LinkMenu/LinkMenu\";\nimport React from \"react\";\n\n// Keep track of pending image loads to only request once\nconst gImageLoading = new Map();\n\n/**\n * Card component.\n * Cards are found within a Section component and contain information about a link such\n * as preview image, page title, page description, and some context about if the page\n * was visited, bookmarked, trending etc...\n * Each Section can make an unordered list of Cards which will create one instane of\n * this class. Each card will then get a context menu which reflects the actions that\n * can be done on this Card.\n */\nexport class _Card extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n activeCard: null,\n imageLoaded: false,\n showContextMenu: false\n };\n this.onMenuButtonClick = this.onMenuButtonClick.bind(this);\n this.onMenuUpdate = this.onMenuUpdate.bind(this);\n this.onLinkClick = this.onLinkClick.bind(this);\n }\n\n /**\n * Helper to conditionally load an image and update state when it loads.\n */\n async maybeLoadImage() {\n // No need to load if it's already loaded or no image\n const {image} = this.props.link;\n if (!this.state.imageLoaded && image) {\n // Initialize a promise to share a load across multiple card updates\n if (!gImageLoading.has(image)) {\n const loaderPromise = new Promise((resolve, reject) => {\n const loader = new Image();\n loader.addEventListener(\"load\", resolve);\n loader.addEventListener(\"error\", reject);\n loader.src = image;\n });\n\n // Save and remove the promise only while it's pending\n gImageLoading.set(image, loaderPromise);\n loaderPromise.catch(ex => ex).then(() => gImageLoading.delete(image)).catch();\n }\n\n // Wait for the image whether just started loading or reused promise\n await gImageLoading.get(image);\n\n // Only update state if we're still waiting to load the original image\n if (this.props.link.image === image && !this.state.imageLoaded) {\n this.setState({imageLoaded: true});\n }\n }\n }\n\n onMenuButtonClick(event) {\n event.preventDefault();\n this.setState({\n activeCard: this.props.index,\n showContextMenu: true\n });\n }\n\n /**\n * Report to telemetry additional information about the item.\n */\n _getTelemetryInfo() {\n // Filter out \"history\" type for being the default\n if (this.props.link.type !== \"history\") {\n return {value: {card_type: this.props.link.type}};\n }\n\n return null;\n }\n\n onLinkClick(event) {\n event.preventDefault();\n if (this.props.link.type === \"download\") {\n this.props.dispatch(ac.OnlyToMain({\n type: at.SHOW_DOWNLOAD_FILE,\n data: this.props.link\n }));\n } else {\n const {altKey, button, ctrlKey, metaKey, shiftKey} = event;\n this.props.dispatch(ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: Object.assign(this.props.link, {event: {altKey, button, ctrlKey, metaKey, shiftKey}})\n }));\n }\n if (this.props.isWebExtension) {\n this.props.dispatch(ac.WebExtEvent(at.WEBEXT_CLICK, {\n source: this.props.eventSource,\n url: this.props.link.url,\n action_position: this.props.index\n }));\n } else {\n this.props.dispatch(ac.UserEvent(Object.assign({\n event: \"CLICK\",\n source: this.props.eventSource,\n action_position: this.props.index\n }, this._getTelemetryInfo())));\n\n if (this.props.shouldSendImpressionStats) {\n this.props.dispatch(ac.ImpressionStats({\n source: this.props.eventSource,\n click: 0,\n tiles: [{id: this.props.link.guid, pos: this.props.index}]\n }));\n }\n }\n }\n\n onMenuUpdate(showContextMenu) {\n this.setState({showContextMenu});\n }\n\n componentDidMount() {\n this.maybeLoadImage();\n }\n\n componentDidUpdate() {\n this.maybeLoadImage();\n }\n\n componentWillReceiveProps(nextProps) {\n // Clear the image state if changing images\n if (nextProps.link.image !== this.props.link.image) {\n this.setState({imageLoaded: false});\n }\n }\n\n render() {\n const {index, link, dispatch, contextMenuOptions, eventSource, shouldSendImpressionStats} = this.props;\n const {props} = this;\n const isContextMenuOpen = this.state.showContextMenu && this.state.activeCard === index;\n // Display \"now\" as \"trending\" until we have new strings #3402\n const {icon, intlID} = cardContextTypes[link.type === \"now\" ? \"trending\" : link.type] || {};\n const hasImage = link.image || link.hasImage;\n const imageStyle = {backgroundImage: link.image ? `url(${link.image})` : \"none\"};\n\n return (<li className={`card-outer${isContextMenuOpen ? \" active\" : \"\"}${props.placeholder ? \" placeholder\" : \"\"}`}>\n <a href={link.type === \"pocket\" ? link.open_url : link.url} onClick={!props.placeholder ? this.onLinkClick : undefined}>\n <div className=\"card\">\n {hasImage && <div className=\"card-preview-image-outer\">\n <div className={`card-preview-image${this.state.imageLoaded ? \" loaded\" : \"\"}`} style={imageStyle} />\n </div>}\n <div className={`card-details${hasImage ? \"\" : \" no-image\"}`}>\n {link.type === \"download\" && <div className=\"card-download-icon icon icon-download-folder\" />}\n {link.type === \"download\" && <div className=\"card-host-name alternate\"><FormattedMessage id={GetPlatformString(this.props.platform)} /></div>}\n {link.hostname && <div className=\"card-host-name\">{link.hostname}</div>}\n <div className={[\n \"card-text\",\n icon ? \"\" : \"no-context\",\n link.description ? \"\" : \"no-description\",\n link.hostname ? \"\" : \"no-host-name\",\n hasImage ? \"\" : \"no-image\"\n ].join(\" \")}>\n <h4 className=\"card-title\" dir=\"auto\">{link.title}</h4>\n <p className=\"card-description\" dir=\"auto\">{link.description}</p>\n </div>\n <div className=\"card-context\">\n {icon && !link.context && <span className={`card-context-icon icon icon-${icon}`} />}\n {link.icon && link.context && <span className=\"card-context-icon icon\" style={{backgroundImage: `url('${link.icon}')`}} />}\n {intlID && !link.context && <div className=\"card-context-label\"><FormattedMessage id={intlID} defaultMessage=\"Visited\" /></div>}\n {link.context && <div className=\"card-context-label\">{link.context}</div>}\n </div>\n </div>\n </div>\n </a>\n {!props.placeholder && <button className=\"context-menu-button icon\"\n onClick={this.onMenuButtonClick}>\n <span className=\"sr-only\">{`Open context menu for ${link.title}`}</span>\n </button>}\n {isContextMenuOpen &&\n <LinkMenu\n dispatch={dispatch}\n index={index}\n source={eventSource}\n onUpdate={this.onMenuUpdate}\n options={link.contextMenuOptions || contextMenuOptions}\n site={link}\n siteInfo={this._getTelemetryInfo()}\n shouldSendImpressionStats={shouldSendImpressionStats} />\n }\n </li>);\n }\n}\n_Card.defaultProps = {link: {}};\nexport const Card = connect(state => ({platform: state.Prefs.values.platform}))(_Card);\nexport const PlaceholderCard = () => <Card placeholder={true} />;\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Card/Card.jsx","import {actionCreators as ac} from \"common/Actions.jsm\";\nimport {ContextMenu} from \"content-src/components/ContextMenu/ContextMenu\";\nimport {injectIntl} from \"react-intl\";\nimport React from \"react\";\nimport {SectionMenuOptions} from \"content-src/lib/section-menu-options\";\n\nconst DEFAULT_SECTION_MENU_OPTIONS = [\"MoveUp\", \"MoveDown\", \"Separator\", \"RemoveSection\", \"CheckCollapsed\", \"Separator\", \"ManageSection\"];\nconst WEBEXT_SECTION_MENU_OPTIONS = [\"MoveUp\", \"MoveDown\", \"Separator\", \"CheckCollapsed\", \"Separator\", \"ManageWebExtension\"];\n\nexport class _SectionMenu extends React.PureComponent {\n getOptions() {\n const {props} = this;\n\n const propOptions = props.isWebExtension ? [...WEBEXT_SECTION_MENU_OPTIONS] : [...DEFAULT_SECTION_MENU_OPTIONS];\n // Prepend custom options and a separator\n if (props.extraOptions) {\n propOptions.splice(0, 0, ...props.extraOptions, \"Separator\");\n }\n // Insert privacy notice before the last option (\"ManageSection\")\n if (props.privacyNoticeURL) {\n propOptions.splice(-1, 0, \"PrivacyNotice\");\n }\n\n const options = propOptions.map(o => SectionMenuOptions[o](props)).map(option => {\n const {action, id, type, userEvent} = option;\n if (!type && id) {\n option.label = props.intl.formatMessage({id});\n option.onClick = () => {\n props.dispatch(action);\n if (userEvent) {\n props.dispatch(ac.UserEvent({\n event: userEvent,\n source: props.source\n }));\n }\n };\n }\n return option;\n });\n\n // This is for accessibility to support making each item tabbable.\n // We want to know which item is the first and which item\n // is the last, so we can close the context menu accordingly.\n options[0].first = true;\n options[options.length - 1].last = true;\n return options;\n }\n\n render() {\n return (<ContextMenu\n onUpdate={this.props.onUpdate}\n options={this.getOptions()} />);\n }\n}\n\nexport const SectionMenu = injectIntl(_SectionMenu);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/SectionMenu/SectionMenu.jsx","import {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\nexport class Topic extends React.PureComponent {\n render() {\n const {url, name} = this.props;\n return (<li><a key={name} className=\"topic-link\" href={url}>{name}</a></li>);\n }\n}\n\nexport class Topics extends React.PureComponent {\n render() {\n const {topics, read_more_endpoint} = this.props;\n return (\n <div className=\"topic\">\n <span><FormattedMessage id=\"pocket_read_more\" /></span>\n <ul>{topics && topics.map(t => <Topic key={t.name} url={t.url} name={t.name} />)}</ul>\n\n {read_more_endpoint && <a className=\"topic-read-more\" href={read_more_endpoint}>\n <FormattedMessage id=\"pocket_read_even_more\" />\n </a>}\n </div>\n );\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Topics/Topics.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {MIN_CORNER_FAVICON_SIZE, MIN_RICH_FAVICON_SIZE, TOP_SITES_SOURCE} from \"./TopSitesConstants\";\nimport {CollapsibleSection} from \"content-src/components/CollapsibleSection/CollapsibleSection\";\nimport {ComponentPerfTimer} from \"content-src/components/ComponentPerfTimer/ComponentPerfTimer\";\nimport {connect} from \"react-redux\";\nimport {injectIntl} from \"react-intl\";\nimport React from \"react\";\nimport {TOP_SITES_MAX_SITES_PER_ROW} from \"common/Reducers.jsm\";\nimport {TopSiteForm} from \"./TopSiteForm\";\nimport {TopSiteList} from \"./TopSite\";\n\nfunction topSiteIconType(link) {\n if (link.customScreenshotURL) {\n return \"custom_screenshot\";\n }\n if (link.tippyTopIcon || link.faviconRef === \"tippytop\") {\n return \"tippytop\";\n }\n if (link.faviconSize >= MIN_RICH_FAVICON_SIZE) {\n return \"rich_icon\";\n }\n if (link.screenshot && link.faviconSize >= MIN_CORNER_FAVICON_SIZE) {\n return \"screenshot_with_icon\";\n }\n if (link.screenshot) {\n return \"screenshot\";\n }\n return \"no_image\";\n}\n\n/**\n * Iterates through TopSites and counts types of images.\n * @param acc Accumulator for reducer.\n * @param topsite Entry in TopSites.\n */\nfunction countTopSitesIconsTypes(topSites) {\n const countTopSitesTypes = (acc, link) => {\n acc[topSiteIconType(link)]++;\n return acc;\n };\n\n return topSites.reduce(countTopSitesTypes, {\n \"custom_screenshot\": 0,\n \"screenshot_with_icon\": 0,\n \"screenshot\": 0,\n \"tippytop\": 0,\n \"rich_icon\": 0,\n \"no_image\": 0\n });\n}\n\nexport class _TopSites extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onFormClose = this.onFormClose.bind(this);\n }\n\n /**\n * Dispatch session statistics about the quality of TopSites icons and pinned count.\n */\n _dispatchTopSitesStats() {\n const topSites = this._getVisibleTopSites();\n const topSitesIconsStats = countTopSitesIconsTypes(topSites);\n const topSitesPinned = topSites.filter(site => !!site.isPinned).length;\n // Dispatch telemetry event with the count of TopSites images types.\n this.props.dispatch(ac.AlsoToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n data: {topsites_icon_stats: topSitesIconsStats, topsites_pinned: topSitesPinned}\n }));\n }\n\n /**\n * Return the TopSites that are visible based on prefs and window width.\n */\n _getVisibleTopSites() {\n // We hide 2 sites per row when not in the wide layout.\n let sitesPerRow = TOP_SITES_MAX_SITES_PER_ROW;\n // $break-point-widest = 1072px (from _variables.scss)\n if (!global.matchMedia(`(min-width: 1072px)`).matches) {\n sitesPerRow -= 2;\n }\n return this.props.TopSites.rows.slice(0, this.props.TopSitesRows * sitesPerRow);\n }\n\n componentDidUpdate() {\n this._dispatchTopSitesStats();\n }\n\n componentDidMount() {\n this._dispatchTopSitesStats();\n }\n\n onFormClose() {\n this.props.dispatch(ac.UserEvent({\n source: TOP_SITES_SOURCE,\n event: \"TOP_SITES_EDIT_CLOSE\"\n }));\n this.props.dispatch({type: at.TOP_SITES_CANCEL_EDIT});\n }\n\n render() {\n const {props} = this;\n const {editForm} = props.TopSites;\n\n return (<ComponentPerfTimer id=\"topsites\" initialized={props.TopSites.initialized} dispatch={props.dispatch}>\n <CollapsibleSection\n className=\"top-sites\"\n icon=\"topsites\"\n id=\"topsites\"\n title={{id: \"header_top_sites\"}}\n extraMenuOptions={[\"AddTopSite\"]}\n showPrefName=\"feeds.topsites\"\n eventSource={TOP_SITES_SOURCE}\n collapsed={props.TopSites.pref ? props.TopSites.pref.collapsed : undefined}\n isFirst={props.isFirst}\n isLast={props.isLast}\n dispatch={props.dispatch}>\n <TopSiteList TopSites={props.TopSites} TopSitesRows={props.TopSitesRows} dispatch={props.dispatch} intl={props.intl} topSiteIconType={topSiteIconType} />\n <div className=\"edit-topsites-wrapper\">\n {editForm &&\n <div className=\"edit-topsites\">\n <div className=\"modal-overlay\" onClick={this.onFormClose} />\n <div className=\"modal\">\n <TopSiteForm\n site={props.TopSites.rows[editForm.index]}\n onClose={this.onFormClose}\n dispatch={this.props.dispatch}\n intl={this.props.intl}\n {...editForm} />\n </div>\n </div>\n }\n </div>\n </CollapsibleSection>\n </ComponentPerfTimer>);\n }\n}\n\nexport const TopSites = connect(state => ({\n TopSites: state.TopSites,\n Prefs: state.Prefs,\n TopSitesRows: state.Prefs.values.topSitesRows\n}))(injectIntl(_TopSites));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSites.jsx","import {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\nexport class TopSiteFormInput extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {validationError: this.props.validationError};\n this.onChange = this.onChange.bind(this);\n this.onMount = this.onMount.bind(this);\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.shouldFocus && !this.props.shouldFocus) {\n this.input.focus();\n }\n if (nextProps.validationError && !this.props.validationError) {\n this.setState({validationError: true});\n }\n // If the component is in an error state but the value was cleared by the parent\n if (this.state.validationError && !nextProps.value) {\n this.setState({validationError: false});\n }\n }\n\n onChange(ev) {\n if (this.state.validationError) {\n this.setState({validationError: false});\n }\n this.props.onChange(ev);\n }\n\n onMount(input) {\n this.input = input;\n }\n\n render() {\n const showClearButton = this.props.value && this.props.onClear;\n const {typeUrl} = this.props;\n const {validationError} = this.state;\n\n return (<label><FormattedMessage id={this.props.titleId} />\n <div className={`field ${typeUrl ? \"url\" : \"\"}${validationError ? \" invalid\" : \"\"}`}>\n {this.props.loading ?\n <div className=\"loading-container\"><div className=\"loading-animation\" /></div> :\n showClearButton && <div className=\"icon icon-clear-input\" onClick={this.props.onClear} />}\n <input type=\"text\"\n value={this.props.value}\n ref={this.onMount}\n onChange={this.onChange}\n placeholder={this.props.intl.formatMessage({id: this.props.placeholderId})}\n autoFocus={this.props.shouldFocus}\n disabled={this.props.loading} />\n {validationError &&\n <aside className=\"error-tooltip\">\n <FormattedMessage id={this.props.errorMessageId} />\n </aside>}\n </div>\n </label>);\n }\n}\n\nTopSiteFormInput.defaultProps = {\n showClearButton: false,\n value: \"\",\n validationError: false\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSiteFormInput.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\nimport {TOP_SITES_SOURCE} from \"./TopSitesConstants\";\nimport {TopSiteFormInput} from \"./TopSiteFormInput\";\nimport {TopSiteLink} from \"./TopSite\";\n\nexport class TopSiteForm extends React.PureComponent {\n constructor(props) {\n super(props);\n const {site} = props;\n this.state = {\n label: site ? (site.label || site.hostname) : \"\",\n url: site ? site.url : \"\",\n validationError: false,\n customScreenshotUrl: site ? site.customScreenshotURL : \"\",\n showCustomScreenshotForm: site ? site.customScreenshotURL : false\n };\n this.onClearScreenshotInput = this.onClearScreenshotInput.bind(this);\n this.onLabelChange = this.onLabelChange.bind(this);\n this.onUrlChange = this.onUrlChange.bind(this);\n this.onCancelButtonClick = this.onCancelButtonClick.bind(this);\n this.onClearUrlClick = this.onClearUrlClick.bind(this);\n this.onDoneButtonClick = this.onDoneButtonClick.bind(this);\n this.onCustomScreenshotUrlChange = this.onCustomScreenshotUrlChange.bind(this);\n this.onPreviewButtonClick = this.onPreviewButtonClick.bind(this);\n this.onEnableScreenshotUrlForm = this.onEnableScreenshotUrlForm.bind(this);\n this.validateUrl = this.validateUrl.bind(this);\n }\n\n onLabelChange(event) {\n this.setState({\"label\": event.target.value});\n }\n\n onUrlChange(event) {\n this.setState({\n url: event.target.value,\n validationError: false\n });\n }\n\n onClearUrlClick() {\n this.setState({\n url: \"\",\n validationError: false\n });\n }\n\n onEnableScreenshotUrlForm() {\n this.setState({showCustomScreenshotForm: true});\n }\n\n _updateCustomScreenshotInput(customScreenshotUrl) {\n this.setState({\n customScreenshotUrl,\n validationError: false\n });\n this.props.dispatch({type: at.PREVIEW_REQUEST_CANCEL});\n }\n\n onCustomScreenshotUrlChange(event) {\n this._updateCustomScreenshotInput(event.target.value);\n }\n\n onClearScreenshotInput() {\n this._updateCustomScreenshotInput(\"\");\n }\n\n onCancelButtonClick(ev) {\n ev.preventDefault();\n this.props.onClose();\n }\n\n onDoneButtonClick(ev) {\n ev.preventDefault();\n\n if (this.validateForm()) {\n const site = {url: this.cleanUrl(this.state.url)};\n const {index} = this.props;\n if (this.state.label !== \"\") {\n site.label = this.state.label;\n }\n\n if (this.state.customScreenshotUrl) {\n site.customScreenshotURL = this.cleanUrl(this.state.customScreenshotUrl);\n } else if (this.props.site && this.props.site.customScreenshotURL) {\n // Used to flag that previously cached screenshot should be removed\n site.customScreenshotURL = null;\n }\n this.props.dispatch(ac.AlsoToMain({\n type: at.TOP_SITES_PIN,\n data: {site, index}\n }));\n this.props.dispatch(ac.UserEvent({\n source: TOP_SITES_SOURCE,\n event: \"TOP_SITES_EDIT\",\n action_position: index\n }));\n\n this.props.onClose();\n }\n }\n\n onPreviewButtonClick(event) {\n event.preventDefault();\n if (this.validateForm()) {\n this.props.dispatch(ac.AlsoToMain({\n type: at.PREVIEW_REQUEST,\n data: {url: this.cleanUrl(this.state.customScreenshotUrl)}\n }));\n this.props.dispatch(ac.UserEvent({\n source: TOP_SITES_SOURCE,\n event: \"PREVIEW_REQUEST\"\n }));\n }\n }\n\n cleanUrl(url) {\n // If we are missing a protocol, prepend http://\n if (!url.startsWith(\"http:\") && !url.startsWith(\"https:\")) {\n return `http://${url}`;\n }\n return url;\n }\n\n _tryParseUrl(url) {\n try {\n return new URL(url);\n } catch (e) {\n return null;\n }\n }\n\n validateUrl(url) {\n const validProtocols = [\"http:\", \"https:\"];\n const urlObj = this._tryParseUrl(url) || this._tryParseUrl(this.cleanUrl(url));\n\n return urlObj && validProtocols.includes(urlObj.protocol);\n }\n\n validateCustomScreenshotUrl() {\n const {customScreenshotUrl} = this.state;\n return !customScreenshotUrl || this.validateUrl(customScreenshotUrl);\n }\n\n validateForm() {\n const validate = this.validateUrl(this.state.url) && this.validateCustomScreenshotUrl();\n\n if (!validate) {\n this.setState({validationError: true});\n }\n\n return validate;\n }\n\n _renderCustomScreenshotInput() {\n const {customScreenshotUrl} = this.state;\n const requestFailed = this.props.previewResponse === \"\";\n const validationError = (this.state.validationError && !this.validateCustomScreenshotUrl()) || requestFailed;\n // Set focus on error if the url field is valid or when the input is first rendered and is empty\n const shouldFocus = (validationError && this.validateUrl(this.state.url)) || !customScreenshotUrl;\n const isLoading = this.props.previewResponse === null &&\n customScreenshotUrl && this.props.previewUrl === this.cleanUrl(customScreenshotUrl);\n\n if (!this.state.showCustomScreenshotForm) {\n return (<a className=\"enable-custom-image-input\" onClick={this.onEnableScreenshotUrlForm}>\n <FormattedMessage id=\"topsites_form_use_image_link\" />\n </a>);\n }\n return (<div className=\"custom-image-input-container\">\n <TopSiteFormInput\n errorMessageId={requestFailed ? \"topsites_form_image_validation\" : \"topsites_form_url_validation\"}\n loading={isLoading}\n onChange={this.onCustomScreenshotUrlChange}\n onClear={this.onClearScreenshotInput}\n shouldFocus={shouldFocus}\n typeUrl={true}\n value={customScreenshotUrl}\n validationError={validationError}\n titleId=\"topsites_form_image_url_label\"\n placeholderId=\"topsites_form_url_placeholder\"\n intl={this.props.intl} />\n </div>);\n }\n\n render() {\n const {customScreenshotUrl} = this.state;\n const requestFailed = this.props.previewResponse === \"\";\n // For UI purposes, editing without an existing link is \"add\"\n const showAsAdd = !this.props.site;\n const previous = (this.props.site && this.props.site.customScreenshotURL) || \"\";\n const changed = customScreenshotUrl && this.cleanUrl(customScreenshotUrl) !== previous;\n // Preview mode if changes were made to the custom screenshot URL and no preview was received yet\n // or the request failed\n const previewMode = changed && !this.props.previewResponse;\n const previewLink = Object.assign({}, this.props.site);\n if (this.props.previewResponse) {\n previewLink.screenshot = this.props.previewResponse;\n previewLink.customScreenshotURL = this.props.previewUrl;\n }\n return (\n <form className=\"topsite-form\">\n <div className=\"form-input-container\">\n <h3 className=\"section-title\">\n <FormattedMessage id={showAsAdd ? \"topsites_form_add_header\" : \"topsites_form_edit_header\"} />\n </h3>\n <div className=\"fields-and-preview\">\n <div className=\"form-wrapper\">\n <TopSiteFormInput onChange={this.onLabelChange}\n value={this.state.label}\n titleId=\"topsites_form_title_label\"\n placeholderId=\"topsites_form_title_placeholder\"\n intl={this.props.intl} />\n <TopSiteFormInput onChange={this.onUrlChange}\n shouldFocus={this.state.validationError && !this.validateUrl(this.state.url)}\n value={this.state.url}\n onClear={this.onClearUrlClick}\n validationError={this.state.validationError && !this.validateUrl(this.state.url)}\n titleId=\"topsites_form_url_label\"\n typeUrl={true}\n placeholderId=\"topsites_form_url_placeholder\"\n errorMessageId=\"topsites_form_url_validation\"\n intl={this.props.intl} />\n {this._renderCustomScreenshotInput()}\n </div>\n <TopSiteLink link={previewLink}\n defaultStyle={requestFailed}\n title={this.state.label} />\n </div>\n </div>\n <section className=\"actions\">\n <button className=\"cancel\" type=\"button\" onClick={this.onCancelButtonClick}>\n <FormattedMessage id=\"topsites_form_cancel_button\" />\n </button>\n {previewMode ?\n <button className=\"done preview\" type=\"submit\" onClick={this.onPreviewButtonClick}>\n <FormattedMessage id=\"topsites_form_preview_button\" />\n </button> :\n <button className=\"done\" type=\"submit\" onClick={this.onDoneButtonClick}>\n <FormattedMessage id={showAsAdd ? \"topsites_form_add_button\" : \"topsites_form_save_button\"} />\n </button>}\n </section>\n </form>\n );\n }\n}\n\nTopSiteForm.defaultProps = {\n site: null,\n index: -1\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSiteForm.jsx","import {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport React from \"react\";\n\nexport class _StartupOverlay extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onInputChange = this.onInputChange.bind(this);\n this.onSubmit = this.onSubmit.bind(this);\n this.clickSkip = this.clickSkip.bind(this);\n this.initScene = this.initScene.bind(this);\n this.removeOverlay = this.removeOverlay.bind(this);\n\n this.state = {emailInput: \"\"};\n this.initScene();\n }\n\n initScene() {\n // Timeout to allow the scene to render once before attaching the attribute\n // to trigger the animation.\n setTimeout(() => {\n this.setState({show: true});\n }, 10);\n }\n\n removeOverlay() {\n window.removeEventListener(\"visibilitychange\", this.removeOverlay);\n this.setState({show: false});\n setTimeout(() => {\n // Allow scrolling and fully remove overlay after animation finishes.\n document.body.classList.remove(\"welcome\");\n }, 400);\n }\n\n onInputChange(e) {\n this.setState({emailInput: e.target.value});\n }\n\n onSubmit() {\n this.props.dispatch(ac.UserEvent({event: \"SUBMIT_EMAIL\"}));\n window.addEventListener(\"visibilitychange\", this.removeOverlay);\n }\n\n clickSkip() {\n this.props.dispatch(ac.UserEvent({event: \"SKIPPED_SIGNIN\"}));\n this.removeOverlay();\n }\n\n render() {\n let termsLink = (<a href=\"https://accounts.firefox.com/legal/terms\" target=\"_blank\" rel=\"noopener noreferrer\"><FormattedMessage id=\"firstrun_terms_of_service\" /></a>);\n let privacyLink = (<a href=\"https://accounts.firefox.com/legal/privacy\" target=\"_blank\" rel=\"noopener noreferrer\"><FormattedMessage id=\"firstrun_privacy_notice\" /></a>);\n return (\n <div className={`overlay-wrapper ${this.state.show ? \"show \" : \"\"}`}>\n <div className=\"background\" />\n <div className=\"firstrun-scene\">\n <div className=\"fxaccounts-container\">\n <div className=\"firstrun-left-divider\">\n <h1 className=\"firstrun-title\"><FormattedMessage id=\"firstrun_title\" /></h1>\n <p className=\"firstrun-content\"><FormattedMessage id=\"firstrun_content\" /></p>\n <a className=\"firstrun-link\" href=\"https://www.mozilla.org/firefox/features/sync/\" target=\"_blank\" rel=\"noopener noreferrer\"><FormattedMessage id=\"firstrun_learn_more_link\" /></a>\n </div>\n <div className=\"firstrun-sign-in\">\n <p className=\"form-header\"><FormattedMessage id=\"firstrun_form_header\" /><span><FormattedMessage id=\"firstrun_form_sub_header\" /></span></p>\n <form method=\"get\" action=\"https://accounts.firefox.com\" target=\"_blank\" rel=\"noopener noreferrer\" onSubmit={this.onSubmit}>\n <input name=\"service\" type=\"hidden\" value=\"sync\" />\n <input name=\"action\" type=\"hidden\" value=\"email\" />\n <input name=\"context\" type=\"hidden\" value=\"fx_desktop_v3\" />\n <input className=\"email-input\" name=\"email\" type=\"email\" required=\"true\" placeholder={this.props.intl.formatMessage({id: \"firstrun_email_input_placeholder\"})} onChange={this.onInputChange} />\n <div className=\"extra-links\">\n <FormattedMessage\n id=\"firstrun_extra_legal_links\"\n values={{\n terms: termsLink,\n privacy: privacyLink\n }} />\n </div>\n <button className=\"continue-button\" type=\"submit\"><FormattedMessage id=\"firstrun_continue_to_login\" /></button>\n </form>\n <button className=\"skip-button\" disabled={!!this.state.emailInput} onClick={this.clickSkip}><FormattedMessage id=\"firstrun_skip_login\" /></button>\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport const StartupOverlay = connect()(injectIntl(_StartupOverlay));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/StartupOverlay/StartupOverlay.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {perfService as perfSvc} from \"common/PerfService.jsm\";\n\nconst VISIBLE = \"visible\";\nconst VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\n\nexport class DetectUserSessionStart {\n constructor(store, options = {}) {\n this._store = store;\n // Overrides for testing\n this.document = options.document || global.document;\n this._perfService = options.perfService || perfSvc;\n this._onVisibilityChange = this._onVisibilityChange.bind(this);\n }\n\n /**\n * sendEventOrAddListener - Notify immediately if the page is already visible,\n * or else set up a listener for when visibility changes.\n * This is needed for accurate session tracking for telemetry,\n * because tabs are pre-loaded.\n */\n sendEventOrAddListener() {\n if (this.document.visibilityState === VISIBLE) {\n // If the document is already visible, to the user, send a notification\n // immediately that a session has started.\n this._sendEvent();\n } else {\n // If the document is not visible, listen for when it does become visible.\n this.document.addEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n /**\n * _sendEvent - Sends a message to the main process to indicate the current\n * tab is now visible to the user, includes the\n * visibility_event_rcvd_ts time in ms from the UNIX epoch.\n */\n _sendEvent() {\n this._perfService.mark(\"visibility_event_rcvd_ts\");\n\n try {\n let visibility_event_rcvd_ts = this._perfService\n .getMostRecentAbsMarkStartByName(\"visibility_event_rcvd_ts\");\n\n this._store.dispatch(ac.AlsoToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n data: {visibility_event_rcvd_ts}\n }));\n } catch (ex) {\n // If this failed, it's likely because the `privacy.resistFingerprinting`\n // pref is true. We should at least not blow up.\n }\n }\n\n /**\n * _onVisibilityChange - If the visibility has changed to visible, sends a notification\n * and removes the event listener. This should only be called once per tab.\n */\n _onVisibilityChange() {\n if (this.document.visibilityState === VISIBLE) {\n this._sendEvent();\n this.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/detect-user-session-start.js"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///webpack/bootstrap d188f06f99cd56608cae","webpack:///external \"React\"","webpack:///./system-addon/common/Actions.jsm","webpack:///external \"ReactIntl\"","webpack:///(webpack)/buildin/global.js","webpack:///external \"ReactRedux\"","webpack:///./system-addon/content-src/components/TopSites/TopSitesConstants.js","webpack:///./system-addon/common/Dedupe.jsm","webpack:///./system-addon/common/Reducers.jsm","webpack:///./system-addon/content-src/asrouter/asrouter-content.jsx","webpack:///./system-addon/content-src/lib/init-store.js","webpack:///external \"ReactDOM\"","webpack:///./system-addon/content-src/components/ErrorBoundary/ErrorBoundary.jsx","webpack:///./system-addon/content-src/lib/link-menu-options.js","webpack:///./system-addon/content-src/components/LinkMenu/LinkMenu.jsx","webpack:///./system-addon/content-src/components/ContextMenu/ContextMenu.jsx","webpack:///./system-addon/content-src/components/CollapsibleSection/CollapsibleSection.jsx","webpack:///./system-addon/content-src/lib/section-menu-options.js","webpack:///./system-addon/content-src/components/ComponentPerfTimer/ComponentPerfTimer.jsx","webpack:///./system-addon/common/PerfService.jsm","webpack:///./system-addon/content-src/components/TopSites/TopSite.jsx","webpack:///./system-addon/content-src/activity-stream.jsx","webpack:///./system-addon/content-src/lib/snippets.js","webpack:///external \"Redux\"","webpack:///./system-addon/content-src/asrouter/components/ImpressionsWrapper/ImpressionsWrapper.jsx","webpack:///./system-addon/content-src/asrouter/components/ModalOverlay/ModalOverlay.jsx","webpack:///./system-addon/content-src/asrouter/templates/OnboardingMessage/OnboardingMessage.jsx","webpack:///./system-addon/content-src/asrouter/template-utils.js","webpack:///./system-addon/content-src/asrouter/components/Button/Button.jsx","webpack:///./system-addon/content-src/asrouter/components/SnippetBase/SnippetBase.jsx","webpack:///./system-addon/content-src/asrouter/templates/SimpleSnippet/SimpleSnippet.jsx","webpack:///./system-addon/content-src/components/Base/Base.jsx","webpack:///./system-addon/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx","webpack:///./system-addon/content-src/components/ConfirmDialog/ConfirmDialog.jsx","webpack:///./system-addon/content-src/components/ManualMigration/ManualMigration.jsx","webpack:///./system-addon/common/PrerenderData.jsm","webpack:///./system-addon/content-src/components/Search/Search.jsx","webpack:///./system-addon/content-src/lib/constants.js","webpack:///./system-addon/content-src/components/Sections/Sections.jsx","webpack:///./system-addon/content-src/components/Card/types.js","webpack:///./system-addon/content-src/components/Card/Card.jsx","webpack:///./system-addon/content-src/components/SectionMenu/SectionMenu.jsx","webpack:///./system-addon/content-src/components/Topics/Topics.jsx","webpack:///./system-addon/content-src/components/TopSites/TopSites.jsx","webpack:///./system-addon/content-src/components/TopSites/TopSiteFormInput.jsx","webpack:///./system-addon/content-src/components/TopSites/TopSiteForm.jsx","webpack:///./system-addon/content-src/components/StartupOverlay/StartupOverlay.jsx","webpack:///./system-addon/content-src/lib/detect-user-session-start.js"],"names":["globalImportContext","Window","BACKGROUND_PROCESS","UI_CODE","actionTypes","type","ASRouterActions","_RouteMessage","action","options","meta","from","to","Error","forEach","o","AlsoToMain","fromTarget","skipLocal","CONTENT_MESSAGE_TYPE","MAIN_MESSAGE_TYPE","OnlyToMain","BroadcastToContent","AlsoToOneContent","target","skipMain","toTarget","OnlyToOneContent","AlsoToPreloaded","PRELOAD_MESSAGE_TYPE","UserEvent","data","TELEMETRY_USER_EVENT","ASRouterUserEvent","AS_ROUTER_TELEMETRY_USER_EVENT","UndesiredEvent","importContext","TELEMETRY_UNDESIRED_EVENT","PerfEvent","TELEMETRY_PERFORMANCE_EVENT","ImpressionStats","TELEMETRY_IMPRESSION_STATS","SetPref","name","value","SET_PREF","WebExtEvent","source","isSendToMain","isBroadcastToContent","isSendToOneContent","isSendToPreloaded","isFromMain","getPortIdOfSender","TOP_SITES_SOURCE","TOP_SITES_CONTEXT_MENU_OPTIONS","MIN_RICH_FAVICON_SIZE","MIN_CORNER_FAVICON_SIZE","Dedupe","constructor","createKey","defaultCreateKey","item","group","groups","globalKeys","Set","result","values","valueMap","Map","key","has","set","push","add","map","m","Array","TOP_SITES_DEFAULT_ROWS","TOP_SITES_MAX_SITES_PER_ROW","dedupe","site","url","INITIAL_STATE","App","initialized","version","Snippets","TopSites","rows","editForm","Prefs","Theme","className","Dialog","visible","Sections","prevState","at","INIT","Object","assign","insertPinned","links","pinned","pinnedUrls","link","newLinks","filter","includes","isPinned","pinIndex","val","index","length","splice","hasMatch","newRows","TOP_SITES_UPDATED","pref","TOP_SITES_PREFS_UPDATED","TOP_SITES_EDIT","previewResponse","TOP_SITES_CANCEL_EDIT","PREVIEW_RESPONSE","previewUrl","preview","PREVIEW_REQUEST","PREVIEW_REQUEST_CANCEL","SCREENSHOT_UPDATED","row","screenshot","PLACES_BOOKMARK_ADDED","bookmarkGuid","bookmarkTitle","dateAdded","bookmarkDateCreated","PLACES_BOOKMARK_REMOVED","newSite","PLACES_LINK_DELETED","DIALOG_OPEN","DIALOG_CANCEL","DELETE_HISTORY_URL","newValues","PREFS_INITIAL_VALUES","PREF_CHANGED","newState","SECTION_DEREGISTER","section","id","SECTION_REGISTER","title","enabled","SECTION_UPDATE","find","card","dedupeConfigurations","dedupeConf","dedupedRows","dedupeFrom","reduce","dedupeSectionId","dedupeSection","s","SECTION_UPDATE_CARD","PLACES_SAVED_TO_POCKET","open_url","pocket_id","PLACES_LINK_BLOCKED","DELETE_FROM_POCKET","ARCHIVE_FROM_POCKET","SNIPPETS_DATA","SNIPPET_BLOCKED","blockList","concat","SNIPPETS_BLOCKLIST_CLEARED","SNIPPETS_RESET","THEME_UPDATE","INCOMING_MESSAGE_NAME","OUTGOING_MESSAGE_NAME","ASRouterUtils","addListener","listener","global","addMessageListener","removeListener","removeMessageListener","sendMessage","sendAsyncMessage","blockById","blockBundle","bundle","executeAction","button_action","button_action_params","unblockById","unblockBundle","getNextMessage","overrideMessage","sendTelemetry","ping","payload","ac","shouldSendImpressionOnUpdate","nextProps","prevProps","message","ASRouterUISurface","React","PureComponent","props","onMessageFromParent","bind","sendImpression","sendUserActionTelemetry","state","extraProps","message_id","eventType","provider","event","onBlockById","clearBundle","setState","componentWillMount","componentWillUnmount","renderSnippets","document","renderOnboarding","render","template","defaultProps","initASRouter","ReactDOM","getElementById","MERGE_STORE_ACTION","EARLY_QUEUED_ACTIONS","SAVE_SESSION_PERF_DATA","PAGE_PRERENDERED","mergeStateReducer","mainReducer","messageMiddleware","store","next","au","rehydrationMiddleware","_didRehydrate","isMergeStoreAction","isRehydrationRequest","NEW_TAB_STATE_REQUEST","_didRequestInitialState","queueEarlyMessageMiddleware","_receivedFromMain","_earlyActionQueue","initStore","reducers","initialState","createStore","combineReducers","applyMiddleware","msg","dispatch","ex","console","error","dump","JSON","stringify","stack","ErrorBoundaryFallback","windowObj","window","onClick","location","reload","defaultClass","ErrorBoundary","hasError","componentDidCatch","info","children","FallbackComponent","_OpenInPrivateWindow","icon","OPEN_PRIVATE_WINDOW","referrer","userEvent","GetPlatformString","platform","LinkMenuOptions","Separator","EmptyItem","RemoveBookmark","DELETE_BOOKMARK_BY_ID","AddBookmark","BOOKMARK_URL","OpenInNewWindow","OPEN_NEW_WINDOW","typedBonus","BlockUrl","eventSource","BLOCK_URL","impression","block","tiles","guid","pos","WebExtDismiss","string_id","WEBEXT_DISMISS","action_position","DeleteUrl","isEnabled","siteInfo","onConfirm","forceBlock","body_string_id","confirm_button_string_id","cancel_button_string_id","ShowFile","SHOW_DOWNLOAD_FILE","OpenFile","OPEN_DOWNLOAD_FILE","CopyDownloadLink","COPY_DOWNLOAD_LINK","GoToDownloadPage","OPEN_LINK","disabled","RemoveDownload","REMOVE_DOWNLOAD_FILE","PinTopSite","TOP_SITES_PIN","UnpinTopSite","TOP_SITES_UNPIN","SaveToPocket","SAVE_TO_POCKET","pocket","DeleteFromPocket","ArchiveFromPocket","EditTopSite","CheckBookmark","CheckPinTopSite","CheckSavedToPocket","CheckBookmarkOrArchive","OpenInPrivateWindow","DEFAULT_SITE_MENU_OPTIONS","_LinkMenu","getOptions","isPrivateBrowsingEnabled","propOptions","isDefault","option","label","intl","formatMessage","userEventData","shouldSendImpressionStats","first","last","onUpdate","getState","LinkMenu","connect","injectIntl","ContextMenu","hideContext","componentDidMount","setTimeout","addEventListener","removeEventListener","stopPropagation","i","ContextMenuItem","onKeyDown","shiftKey","VISIBLE","VISIBILITY_CHANGE_EVENT","getFormattedMessage","Disclaimer","onAcknowledge","disclaimerPref","disclaimer","text","href","button","DisclaimerIntl","_CollapsibleSection","onBodyMount","onHeaderClick","onTransitionEnd","enableOrDisableAnimation","onMenuButtonClick","onMenuButtonMouseEnter","onMenuButtonMouseLeave","onMenuUpdate","enableAnimation","isAnimating","menuButtonHover","showContextMenu","componentWillUpdate","collapsed","sectionBody","scrollHeight","visibilityState","node","undefined","maxHeight","SectionMenuOptions","CheckCollapsed","currentTarget","renderIcon","startsWith","backgroundImage","preventDefault","isCollapsible","extraMenuOptions","showPrefName","privacyNoticeURL","isFirst","isLast","isWebExtension","needsDisclaimer","active","CollapsibleSection","MoveUp","SECTION_MOVE","direction","MoveDown","RemoveSection","CollapseSection","UPDATE_SECTION_PREFS","ExpandSection","ManageSection","SETTINGS_OPEN","ManageWebExtension","OPEN_WEBEXT_SETTINGS","AddTopSite","PrivacyNotice","RECORDED_SECTIONS","ComponentPerfTimer","Component","perfSvc","_sendBadStateEvent","_sendPaintedEvent","_reportMissingData","_timestampHandled","_recordedFirstRender","_maybeSendPaintedEvent","componentDidUpdate","_afterFramePaint","callback","requestAnimationFrame","_maybeSendBadStateEvent","_ensureFirstRenderTsRecorded","mark","dataReadyKey","firstRenderKey","parseInt","getMostRecentAbsMarkStartByName","ChromeUtils","import","usablePerfObj","Services","appShell","hiddenDOMWindow","performance","now","_PerfService","performanceObj","_perf","prototype","str","getEntriesByName","timeOrigin","absNow","entries","mostRecentEntry","startTime","TopSiteLink","onDragEvent","_allowDrop","e","dataTransfer","types","dragged","effectAllowed","setData","blur","defaultStyle","isDraggable","topSiteOuterClassName","isDragged","tippyTopIcon","faviconSize","letterFallback","imageClassName","imageStyle","showSmallFavicon","smallFaviconStyle","smallFaviconFallback","customScreenshotURL","backgroundColor","favicon","draggableProps","onDragEnd","onDragStart","onMouseDown","TopSite","onLinkClick","_getTelemetryInfo","icon_type","iconType","card_type","altKey","ctrlKey","metaKey","onActivate","isContextMenuOpen","activeIndex","hostname","TopSitePlaceholder","onEditButtonClick","_TopSiteList","DEFAULT_STATE","draggedIndex","draggedSite","draggedTitle","topSitesPreview","componentWillReceiveProps","prevTopSites","newTopSites","dropped","_makeTopSitesPreview","TOP_SITES_INSERT","draggedFromIndex","_getTopSites","topSites","slice","TopSitesRows","pinnedOnly","unpinned","siteToInsert","holeIndex","indexStep","shiftingStep","nextIndex","shift","topSitesUI","commonProps","maxNarrowVisibleIndex","l","topSiteIconType","slotProps","TopSiteList","gActivityStreamPrerenderedState","sendEventOrAddListener","hydrate","documentElement","lang","gActivityStreamStrings","addSnippetsSubscriber","DATABASE_NAME","DATABASE_VERSION","SNIPPETS_OBJECTSTORE_NAME","SNIPPETS_UPDATE_INTERVAL_MS","SNIPPETS_ENABLED_EVENT","SNIPPETS_DISABLED_EVENT","SnippetsMap","_db","_dispatch","_dbTransaction","db","put","delete","clear","get","blockSnippetById","SNIPPETS_BLOCKLIST_UPDATED","disableOnboarding","DISABLE_ONBOARDING","showFirefoxAccounts","SHOW_FIREFOX_ACCOUNTS","getTotalBookmarksCount","Promise","resolve","TOTAL_BOOKMARKS_REQUEST","onMessage","TOTAL_BOOKMARKS_RESPONSE","getAddonsInfo","ADDONS_INFO_REQUEST","ADDONS_INFO_RESPONSE","_openDB","_restoreFromDb","modifier","reject","transaction","objectStore","onsuccess","onerror","openRequest","indexedDB","open","deleteDatabase","onupgradeneeded","objectStoreNames","contains","createObjectStore","err","onversionchange","versionChangeEvent","close","cursorRequest","openCursor","cursor","continue","SnippetsProvider","gSnippetsMap","_onAction","snippetsMap","_refreshSnippets","cachedVersion","appData","lastUpdate","needsUpdate","Date","snippetsURL","response","fetch","status","_noSnippetFallback","_forceOnboardingVisibility","shouldBeVisible","onboardingEl","style","display","_showRemoteSnippets","snippetsEl","elementId","innerHTML","scriptEl","getElementsByTagName","relocatedScript","createElement","parentNode","replaceChild","init","keys","dispatchEvent","Event","uninit","snippets","initializing","subscribe","asrouterExperimentEnabled","disableSnippets","ImpressionsWrapper","sendImpressionOrAddListener","_onVisibilityChange","sendOnMount","body","classList","remove","button_label","onDoneButton","onAction","content","safeURI","protocol","URL","isAllowed","warn","Button","onBlockClicked","onBlock","containerClassName","DEFAULT_ICON_PATH","onButtonClick","renderTitle","renderButton","button_url","hasLink","button_type","hasButton","PrefsButton","addLocaleDataForReactIntl","locale","addLocaleData","parentLocale","_Base","updateTheme","sendNewTabRehydrated","isPrerendered","bodyClassName","isFirstrun","v","join","renderNotified","NEW_TAB_REHYDRATED","strings","hash","BaseContent","openPreferences","prefs","shouldBeFixedToTop","PrerenderData","arePrefsValid","outerClassName","showSearch","migrationExpired","Base","ASRouterAdmin","findOtherBundledMessagesOfSameTemplate","messages","bundled","handleBlock","handleUnblock","handleOverride","renderMessageItem","isCurrent","lastMessageId","isBlocked","itemClassName","renderMessages","renderProviders","providers","_ConfirmDialog","_handleCancelBtn","_handleConfirmBtn","_renderModalMessage","message_body","ConfirmDialog","_ManualMigration","onLaunchTour","onCancelTour","MIGRATION_START","MIGRATION_CANCEL","ManualMigration","_PrerenderData","initialPrefs","initialSections","_setValidation","validation","_validation","invalidatingPrefs","_invalidatingPrefs","oneOf","getPref","indexedDBPrefs","some","anyModifiedPrefs","prefName","order","_Search","onInputMount","handleEvent","detail","gContentSearchController","search","input","healthReportKey","IS_NEWTAB","searchSource","ContentSearchUIController","Search","documentURI","CARDS_PER_ROW_DEFAULT","CARDS_PER_ROW_COMPACT_WIDE","Section","_dispatchImpressionStats","cardsPerRow","compactCards","matchMedia","matches","maxCards","maxRows","cards","needsImpressionStats","impressionCardGuids","sendImpressionStatsOrAddListener","isCollapsed","wasCollapsed","emptyState","contextMenuOptions","maxCardsPerRow","maxCardsOnNarrow","shouldShowTopics","topics","realRows","shouldShowEmptyState","sectionClassName","feed","padding","read_more_endpoint","SectionIntl","_Sections","renderSections","sections","enabledSections","sectionOrder","showTopSites","expectedCount","sectionId","split","cardContextTypes","history","intlID","bookmark","trending","download","gImageLoading","activeCard","imageLoaded","maybeLoadImage","image","loaderPromise","loader","Image","src","catch","then","WEBEXT_CLICK","click","hasImage","placeholder","description","context","_Card","Card","PlaceholderCard","DEFAULT_SECTION_MENU_OPTIONS","WEBEXT_SECTION_MENU_OPTIONS","_SectionMenu","extraOptions","SectionMenu","Topic","Topics","t","faviconRef","countTopSitesIconsTypes","countTopSitesTypes","acc","_TopSites","onFormClose","_dispatchTopSitesStats","_getVisibleTopSites","topSitesIconsStats","topSitesPinned","topsites_icon_stats","topsites_pinned","sitesPerRow","topSitesRows","validationError","onChange","onMount","shouldFocus","focus","ev","showClearButton","onClear","typeUrl","titleId","loading","placeholderId","errorMessageId","TopSiteFormInput","customScreenshotUrl","showCustomScreenshotForm","onClearScreenshotInput","onLabelChange","onUrlChange","onCancelButtonClick","onClearUrlClick","onDoneButtonClick","onCustomScreenshotUrlChange","onPreviewButtonClick","onEnableScreenshotUrlForm","validateUrl","_updateCustomScreenshotInput","onClose","validateForm","cleanUrl","_tryParseUrl","validProtocols","urlObj","validateCustomScreenshotUrl","validate","_renderCustomScreenshotInput","requestFailed","isLoading","showAsAdd","previous","changed","previewMode","previewLink","TopSiteForm","_StartupOverlay","onInputChange","onSubmit","clickSkip","initScene","removeOverlay","emailInput","show","termsLink","privacyLink","terms","privacy","StartupOverlay","DetectUserSessionStart","_store","_perfService","perfService","_sendEvent","visibility_event_rcvd_ts"],"mappings":"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","file":"activity-stream.bundle.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 19);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap d188f06f99cd56608cae","module.exports = React;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"React\"\n// module id = 0\n// module chunks = 0","/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/. */\n\"use strict\";\n\nthis.MAIN_MESSAGE_TYPE = \"ActivityStream:Main\";\nthis.CONTENT_MESSAGE_TYPE = \"ActivityStream:Content\";\nthis.PRELOAD_MESSAGE_TYPE = \"ActivityStream:PreloadedBrowser\";\nthis.UI_CODE = 1;\nthis.BACKGROUND_PROCESS = 2;\n\n/**\n * globalImportContext - Are we in UI code (i.e. react, a dom) or some kind of background process?\n * Use this in action creators if you need different logic\n * for ui/background processes.\n */\nconst globalImportContext = typeof Window === \"undefined\" ? BACKGROUND_PROCESS : UI_CODE;\n// Export for tests\nthis.globalImportContext = globalImportContext;\n\n// Create an object that avoids accidental differing key/value pairs:\n// {\n// INIT: \"INIT\",\n// UNINIT: \"UNINIT\"\n// }\nconst actionTypes = {};\nfor (const type of [\n \"ADDONS_INFO_REQUEST\",\n \"ADDONS_INFO_RESPONSE\",\n \"ARCHIVE_FROM_POCKET\",\n \"AS_ROUTER_TELEMETRY_USER_EVENT\",\n \"BLOCK_URL\",\n \"BOOKMARK_URL\",\n \"COPY_DOWNLOAD_LINK\",\n \"DELETE_BOOKMARK_BY_ID\",\n \"DELETE_FROM_POCKET\",\n \"DELETE_HISTORY_URL\",\n \"DIALOG_CANCEL\",\n \"DIALOG_OPEN\",\n \"DISABLE_ONBOARDING\",\n \"DOWNLOAD_CHANGED\",\n \"INIT\",\n \"MIGRATION_CANCEL\",\n \"MIGRATION_COMPLETED\",\n \"MIGRATION_START\",\n \"NEW_TAB_INIT\",\n \"NEW_TAB_INITIAL_STATE\",\n \"NEW_TAB_LOAD\",\n \"NEW_TAB_REHYDRATED\",\n \"NEW_TAB_STATE_REQUEST\",\n \"NEW_TAB_UNLOAD\",\n \"OPEN_DOWNLOAD_FILE\",\n \"OPEN_LINK\",\n \"OPEN_NEW_WINDOW\",\n \"OPEN_PRIVATE_WINDOW\",\n \"OPEN_WEBEXT_SETTINGS\",\n \"PAGE_PRERENDERED\",\n \"PLACES_BOOKMARK_ADDED\",\n \"PLACES_BOOKMARK_REMOVED\",\n \"PLACES_HISTORY_CLEARED\",\n \"PLACES_LINKS_CHANGED\",\n \"PLACES_LINK_BLOCKED\",\n \"PLACES_LINK_DELETED\",\n \"PLACES_SAVED_TO_POCKET\",\n \"PREFS_INITIAL_VALUES\",\n \"PREF_CHANGED\",\n \"PREVIEW_REQUEST\",\n \"PREVIEW_REQUEST_CANCEL\",\n \"PREVIEW_RESPONSE\",\n \"REMOVE_DOWNLOAD_FILE\",\n \"RICH_ICON_MISSING\",\n \"SAVE_SESSION_PERF_DATA\",\n \"SAVE_TO_POCKET\",\n \"SCREENSHOT_UPDATED\",\n \"SECTION_DEREGISTER\",\n \"SECTION_DISABLE\",\n \"SECTION_ENABLE\",\n \"SECTION_MOVE\",\n \"SECTION_OPTIONS_CHANGED\",\n \"SECTION_REGISTER\",\n \"SECTION_UPDATE\",\n \"SECTION_UPDATE_CARD\",\n \"SETTINGS_CLOSE\",\n \"SETTINGS_OPEN\",\n \"SET_PREF\",\n \"SHOW_DOWNLOAD_FILE\",\n \"SHOW_FIREFOX_ACCOUNTS\",\n \"SKIPPED_SIGNIN\",\n \"SNIPPETS_BLOCKLIST_CLEARED\",\n \"SNIPPETS_BLOCKLIST_UPDATED\",\n \"SNIPPETS_DATA\",\n \"SNIPPETS_RESET\",\n \"SNIPPET_BLOCKED\",\n \"SUBMIT_EMAIL\",\n \"SYSTEM_TICK\",\n \"TELEMETRY_IMPRESSION_STATS\",\n \"TELEMETRY_PERFORMANCE_EVENT\",\n \"TELEMETRY_UNDESIRED_EVENT\",\n \"TELEMETRY_USER_EVENT\",\n \"THEME_UPDATE\",\n \"TOP_SITES_CANCEL_EDIT\",\n \"TOP_SITES_EDIT\",\n \"TOP_SITES_INSERT\",\n \"TOP_SITES_PIN\",\n \"TOP_SITES_PREFS_UPDATED\",\n \"TOP_SITES_UNPIN\",\n \"TOP_SITES_UPDATED\",\n \"TOTAL_BOOKMARKS_REQUEST\",\n \"TOTAL_BOOKMARKS_RESPONSE\",\n \"UNINIT\",\n \"UPDATE_SECTION_PREFS\",\n \"WEBEXT_CLICK\",\n \"WEBEXT_DISMISS\"\n]) {\n actionTypes[type] = type;\n}\n\n// These are acceptable actions for AS Router messages to have. They can show up\n// as call-to-action buttons in snippets, onboarding tour, etc.\nconst ASRouterActions = {};\nfor (const type of [\n \"OPEN_PRIVATE_BROWSER_WINDOW\",\n \"OPEN_URL\",\n \"OPEN_ABOUT_PAGE\"\n]) {\n ASRouterActions[type] = type;\n}\n\n// Helper function for creating routed actions between content and main\n// Not intended to be used by consumers\nfunction _RouteMessage(action, options) {\n const meta = action.meta ? {...action.meta} : {};\n if (!options || !options.from || !options.to) {\n throw new Error(\"Routed Messages must have options as the second parameter, and must at least include a .from and .to property.\");\n }\n // For each of these fields, if they are passed as an option,\n // add them to the action. If they are not defined, remove them.\n [\"from\", \"to\", \"toTarget\", \"fromTarget\", \"skipMain\", \"skipLocal\"].forEach(o => {\n if (typeof options[o] !== \"undefined\") {\n meta[o] = options[o];\n } else if (meta[o]) {\n delete meta[o];\n }\n });\n return {...action, meta};\n}\n\n/**\n * AlsoToMain - Creates a message that will be dispatched locally and also sent to the Main process.\n *\n * @param {object} action Any redux action (required)\n * @param {object} options\n * @param {bool} skipLocal Used by OnlyToMain to skip the main reducer\n * @param {string} fromTarget The id of the content port from which the action originated. (optional)\n * @return {object} An action with added .meta properties\n */\nfunction AlsoToMain(action, fromTarget, skipLocal) {\n return _RouteMessage(action, {\n from: CONTENT_MESSAGE_TYPE,\n to: MAIN_MESSAGE_TYPE,\n fromTarget,\n skipLocal\n });\n}\n\n/**\n * OnlyToMain - Creates a message that will be sent to the Main process and skip the local reducer.\n *\n * @param {object} action Any redux action (required)\n * @param {object} options\n * @param {string} fromTarget The id of the content port from which the action originated. (optional)\n * @return {object} An action with added .meta properties\n */\nfunction OnlyToMain(action, fromTarget) {\n return AlsoToMain(action, fromTarget, true);\n}\n\n/**\n * BroadcastToContent - Creates a message that will be dispatched to main and sent to ALL content processes.\n *\n * @param {object} action Any redux action (required)\n * @return {object} An action with added .meta properties\n */\nfunction BroadcastToContent(action) {\n return _RouteMessage(action, {\n from: MAIN_MESSAGE_TYPE,\n to: CONTENT_MESSAGE_TYPE\n });\n}\n\n/**\n * AlsoToOneContent - Creates a message that will be will be dispatched to the main store\n * and also sent to a particular Content process.\n *\n * @param {object} action Any redux action (required)\n * @param {string} target The id of a content port\n * @param {bool} skipMain Used by OnlyToOneContent to skip the main process\n * @return {object} An action with added .meta properties\n */\nfunction AlsoToOneContent(action, target, skipMain) {\n if (!target) {\n throw new Error(\"You must provide a target ID as the second parameter of AlsoToOneContent. If you want to send to all content processes, use BroadcastToContent\");\n }\n return _RouteMessage(action, {\n from: MAIN_MESSAGE_TYPE,\n to: CONTENT_MESSAGE_TYPE,\n toTarget: target,\n skipMain\n });\n}\n\n/**\n * OnlyToOneContent - Creates a message that will be sent to a particular Content process\n * and skip the main reducer.\n *\n * @param {object} action Any redux action (required)\n * @param {string} target The id of a content port\n * @return {object} An action with added .meta properties\n */\nfunction OnlyToOneContent(action, target) {\n return AlsoToOneContent(action, target, true);\n}\n\n/**\n * AlsoToPreloaded - Creates a message that dispatched to the main reducer and also sent to the preloaded tab.\n *\n * @param {object} action Any redux action (required)\n * @return {object} An action with added .meta properties\n */\nfunction AlsoToPreloaded(action) {\n return _RouteMessage(action, {\n from: MAIN_MESSAGE_TYPE,\n to: PRELOAD_MESSAGE_TYPE\n });\n}\n\n/**\n * UserEvent - A telemetry ping indicating a user action. This should only\n * be sent from the UI during a user session.\n *\n * @param {object} data Fields to include in the ping (source, etc.)\n * @return {object} An AlsoToMain action\n */\nfunction UserEvent(data) {\n return AlsoToMain({\n type: actionTypes.TELEMETRY_USER_EVENT,\n data\n });\n}\n\n/**\n * ASRouterUserEvent - A telemetry ping indicating a user action from AS router. This should only\n * be sent from the UI during a user session.\n *\n * @param {object} data Fields to include in the ping (source, etc.)\n * @return {object} An AlsoToMain action\n */\nfunction ASRouterUserEvent(data) {\n return AlsoToMain({\n type: actionTypes.AS_ROUTER_TELEMETRY_USER_EVENT,\n data\n });\n}\n\n/**\n * UndesiredEvent - A telemetry ping indicating an undesired state.\n *\n * @param {object} data Fields to include in the ping (value, etc.)\n * @param {int} importContext (For testing) Override the import context for testing.\n * @return {object} An action. For UI code, a AlsoToMain action.\n */\nfunction UndesiredEvent(data, importContext = globalImportContext) {\n const action = {\n type: actionTypes.TELEMETRY_UNDESIRED_EVENT,\n data\n };\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\n/**\n * PerfEvent - A telemetry ping indicating a performance-related event.\n *\n * @param {object} data Fields to include in the ping (value, etc.)\n * @param {int} importContext (For testing) Override the import context for testing.\n * @return {object} An action. For UI code, a AlsoToMain action.\n */\nfunction PerfEvent(data, importContext = globalImportContext) {\n const action = {\n type: actionTypes.TELEMETRY_PERFORMANCE_EVENT,\n data\n };\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\n/**\n * ImpressionStats - A telemetry ping indicating an impression stats.\n *\n * @param {object} data Fields to include in the ping\n * @param {int} importContext (For testing) Override the import context for testing.\n * #return {object} An action. For UI code, a AlsoToMain action.\n */\nfunction ImpressionStats(data, importContext = globalImportContext) {\n const action = {\n type: actionTypes.TELEMETRY_IMPRESSION_STATS,\n data\n };\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\nfunction SetPref(name, value, importContext = globalImportContext) {\n const action = {type: actionTypes.SET_PREF, data: {name, value}};\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\nfunction WebExtEvent(type, data, importContext = globalImportContext) {\n if (!data || !data.source) {\n throw new Error(\"WebExtEvent actions should include a property \\\"source\\\", the id of the webextension that should receive the event.\");\n }\n const action = {type, data};\n return importContext === UI_CODE ? AlsoToMain(action) : action;\n}\n\nthis.actionTypes = actionTypes;\nthis.ASRouterActions = ASRouterActions;\n\nthis.actionCreators = {\n BroadcastToContent,\n UserEvent,\n ASRouterUserEvent,\n UndesiredEvent,\n PerfEvent,\n ImpressionStats,\n AlsoToOneContent,\n OnlyToOneContent,\n AlsoToMain,\n OnlyToMain,\n AlsoToPreloaded,\n SetPref,\n WebExtEvent\n};\n\n// These are helpers to test for certain kinds of actions\nthis.actionUtils = {\n isSendToMain(action) {\n if (!action.meta) {\n return false;\n }\n return action.meta.to === MAIN_MESSAGE_TYPE && action.meta.from === CONTENT_MESSAGE_TYPE;\n },\n isBroadcastToContent(action) {\n if (!action.meta) {\n return false;\n }\n if (action.meta.to === CONTENT_MESSAGE_TYPE && !action.meta.toTarget) {\n return true;\n }\n return false;\n },\n isSendToOneContent(action) {\n if (!action.meta) {\n return false;\n }\n if (action.meta.to === CONTENT_MESSAGE_TYPE && action.meta.toTarget) {\n return true;\n }\n return false;\n },\n isSendToPreloaded(action) {\n if (!action.meta) {\n return false;\n }\n return action.meta.to === PRELOAD_MESSAGE_TYPE &&\n action.meta.from === MAIN_MESSAGE_TYPE;\n },\n isFromMain(action) {\n if (!action.meta) {\n return false;\n }\n return action.meta.from === MAIN_MESSAGE_TYPE &&\n action.meta.to === CONTENT_MESSAGE_TYPE;\n },\n getPortIdOfSender(action) {\n return (action.meta && action.meta.fromTarget) || null;\n },\n _RouteMessage\n};\n\nconst EXPORTED_SYMBOLS = [\n \"actionTypes\",\n \"actionCreators\",\n \"actionUtils\",\n \"ASRouterActions\",\n \"globalImportContext\",\n \"UI_CODE\",\n \"BACKGROUND_PROCESS\",\n \"MAIN_MESSAGE_TYPE\",\n \"CONTENT_MESSAGE_TYPE\",\n \"PRELOAD_MESSAGE_TYPE\"\n];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/Actions.jsm","module.exports = ReactIntl;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactIntl\"\n// module id = 2\n// module chunks = 0","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 3\n// module chunks = 0","module.exports = ReactRedux;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactRedux\"\n// module id = 4\n// module chunks = 0","export const TOP_SITES_SOURCE = \"TOP_SITES\";\nexport const TOP_SITES_CONTEXT_MENU_OPTIONS = [\"CheckPinTopSite\", \"EditTopSite\", \"Separator\",\n \"OpenInNewWindow\", \"OpenInPrivateWindow\", \"Separator\", \"BlockUrl\", \"DeleteUrl\"];\n// minimum size necessary to show a rich icon instead of a screenshot\nexport const MIN_RICH_FAVICON_SIZE = 96;\n// minimum size necessary to show any icon in the top left corner with a screenshot\nexport const MIN_CORNER_FAVICON_SIZE = 16;\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSitesConstants.js","this.Dedupe = class Dedupe {\n constructor(createKey) {\n this.createKey = createKey || this.defaultCreateKey;\n }\n\n defaultCreateKey(item) {\n return item;\n }\n\n /**\n * Dedupe any number of grouped elements favoring those from earlier groups.\n *\n * @param {Array} groups Contains an arbitrary number of arrays of elements.\n * @returns {Array} A matching array of each provided group deduped.\n */\n group(...groups) {\n const globalKeys = new Set();\n const result = [];\n for (const values of groups) {\n const valueMap = new Map();\n for (const value of values) {\n const key = this.createKey(value);\n if (!globalKeys.has(key) && !valueMap.has(key)) {\n valueMap.set(key, value);\n }\n }\n result.push(valueMap);\n valueMap.forEach((value, key) => globalKeys.add(key));\n }\n return result.map(m => Array.from(m.values()));\n }\n};\n\nconst EXPORTED_SYMBOLS = [\"Dedupe\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/Dedupe.jsm","/* This Source Code Form is subject to the terms of the Mozilla Public\n * License, v. 2.0. If a copy of the MPL was not distributed with this\n * file, You can obtain one at http://mozilla.org/MPL/2.0/. */\n\"use strict\";\n\nconst {actionTypes: at} = ChromeUtils.import(\"resource://activity-stream/common/Actions.jsm\", {});\nconst {Dedupe} = ChromeUtils.import(\"resource://activity-stream/common/Dedupe.jsm\", {});\n\nconst TOP_SITES_DEFAULT_ROWS = 1;\nconst TOP_SITES_MAX_SITES_PER_ROW = 8;\n\nconst dedupe = new Dedupe(site => site && site.url);\n\nconst INITIAL_STATE = {\n App: {\n // Have we received real data from the app yet?\n initialized: false,\n // The version of the system-addon\n version: null\n },\n Snippets: {initialized: false},\n TopSites: {\n // Have we received real data from history yet?\n initialized: false,\n // The history (and possibly default) links\n rows: [],\n // Used in content only to dispatch action to TopSiteForm.\n editForm: null\n },\n Prefs: {\n initialized: false,\n values: {}\n },\n Theme: {className: \"\"},\n Dialog: {\n visible: false,\n data: {}\n },\n Sections: []\n};\n\nfunction App(prevState = INITIAL_STATE.App, action) {\n switch (action.type) {\n case at.INIT:\n return Object.assign({}, prevState, action.data || {}, {initialized: true});\n default:\n return prevState;\n }\n}\n\n/**\n * insertPinned - Inserts pinned links in their specified slots\n *\n * @param {array} a list of links\n * @param {array} a list of pinned links\n * @return {array} resulting list of links with pinned links inserted\n */\nfunction insertPinned(links, pinned) {\n // Remove any pinned links\n const pinnedUrls = pinned.map(link => link && link.url);\n let newLinks = links.filter(link => (link ? !pinnedUrls.includes(link.url) : false));\n newLinks = newLinks.map(link => {\n if (link && link.isPinned) {\n delete link.isPinned;\n delete link.pinIndex;\n }\n return link;\n });\n\n // Then insert them in their specified location\n pinned.forEach((val, index) => {\n if (!val) { return; }\n let link = Object.assign({}, val, {isPinned: true, pinIndex: index});\n if (index > newLinks.length) {\n newLinks[index] = link;\n } else {\n newLinks.splice(index, 0, link);\n }\n });\n\n return newLinks;\n}\n\nfunction TopSites(prevState = INITIAL_STATE.TopSites, action) {\n let hasMatch;\n let newRows;\n switch (action.type) {\n case at.TOP_SITES_UPDATED:\n if (!action.data || !action.data.links) {\n return prevState;\n }\n return Object.assign({}, prevState, {initialized: true, rows: action.data.links}, action.data.pref ? {pref: action.data.pref} : {});\n case at.TOP_SITES_PREFS_UPDATED:\n return Object.assign({}, prevState, {pref: action.data.pref});\n case at.TOP_SITES_EDIT:\n return Object.assign({}, prevState, {\n editForm: {\n index: action.data.index,\n previewResponse: null\n }\n });\n case at.TOP_SITES_CANCEL_EDIT:\n return Object.assign({}, prevState, {editForm: null});\n case at.PREVIEW_RESPONSE:\n if (!prevState.editForm || action.data.url !== prevState.editForm.previewUrl) {\n return prevState;\n }\n return Object.assign({}, prevState, {\n editForm: {\n index: prevState.editForm.index,\n previewResponse: action.data.preview,\n previewUrl: action.data.url\n }\n });\n case at.PREVIEW_REQUEST:\n if (!prevState.editForm) {\n return prevState;\n }\n return Object.assign({}, prevState, {\n editForm: {\n index: prevState.editForm.index,\n previewResponse: null,\n previewUrl: action.data.url\n }\n });\n case at.PREVIEW_REQUEST_CANCEL:\n if (!prevState.editForm) {\n return prevState;\n }\n return Object.assign({}, prevState, {\n editForm: {\n index: prevState.editForm.index,\n previewResponse: null\n }\n });\n case at.SCREENSHOT_UPDATED:\n newRows = prevState.rows.map(row => {\n if (row && row.url === action.data.url) {\n hasMatch = true;\n return Object.assign({}, row, {screenshot: action.data.screenshot});\n }\n return row;\n });\n return hasMatch ? Object.assign({}, prevState, {rows: newRows}) : prevState;\n case at.PLACES_BOOKMARK_ADDED:\n if (!action.data) {\n return prevState;\n }\n newRows = prevState.rows.map(site => {\n if (site && site.url === action.data.url) {\n const {bookmarkGuid, bookmarkTitle, dateAdded} = action.data;\n return Object.assign({}, site, {bookmarkGuid, bookmarkTitle, bookmarkDateCreated: dateAdded});\n }\n return site;\n });\n return Object.assign({}, prevState, {rows: newRows});\n case at.PLACES_BOOKMARK_REMOVED:\n if (!action.data) {\n return prevState;\n }\n newRows = prevState.rows.map(site => {\n if (site && site.url === action.data.url) {\n const newSite = Object.assign({}, site);\n delete newSite.bookmarkGuid;\n delete newSite.bookmarkTitle;\n delete newSite.bookmarkDateCreated;\n return newSite;\n }\n return site;\n });\n return Object.assign({}, prevState, {rows: newRows});\n case at.PLACES_LINK_DELETED:\n if (!action.data) {\n return prevState;\n }\n newRows = prevState.rows.filter(site => action.data.url !== site.url);\n return Object.assign({}, prevState, {rows: newRows});\n default:\n return prevState;\n }\n}\n\nfunction Dialog(prevState = INITIAL_STATE.Dialog, action) {\n switch (action.type) {\n case at.DIALOG_OPEN:\n return Object.assign({}, prevState, {visible: true, data: action.data});\n case at.DIALOG_CANCEL:\n return Object.assign({}, prevState, {visible: false});\n case at.DELETE_HISTORY_URL:\n return Object.assign({}, INITIAL_STATE.Dialog);\n default:\n return prevState;\n }\n}\n\nfunction Prefs(prevState = INITIAL_STATE.Prefs, action) {\n let newValues;\n switch (action.type) {\n case at.PREFS_INITIAL_VALUES:\n return Object.assign({}, prevState, {initialized: true, values: action.data});\n case at.PREF_CHANGED:\n newValues = Object.assign({}, prevState.values);\n newValues[action.data.name] = action.data.value;\n return Object.assign({}, prevState, {values: newValues});\n default:\n return prevState;\n }\n}\n\nfunction Sections(prevState = INITIAL_STATE.Sections, action) {\n let hasMatch;\n let newState;\n switch (action.type) {\n case at.SECTION_DEREGISTER:\n return prevState.filter(section => section.id !== action.data);\n case at.SECTION_REGISTER:\n // If section exists in prevState, update it\n newState = prevState.map(section => {\n if (section && section.id === action.data.id) {\n hasMatch = true;\n return Object.assign({}, section, action.data);\n }\n return section;\n });\n // Otherwise, append it\n if (!hasMatch) {\n const initialized = !!(action.data.rows && action.data.rows.length > 0);\n const section = Object.assign({title: \"\", rows: [], enabled: false}, action.data, {initialized});\n newState.push(section);\n }\n return newState;\n case at.SECTION_UPDATE:\n newState = prevState.map(section => {\n if (section && section.id === action.data.id) {\n // If the action is updating rows, we should consider initialized to be true.\n // This can be overridden if initialized is defined in the action.data\n const initialized = action.data.rows ? {initialized: true} : {};\n\n // Make sure pinned cards stay at their current position when rows are updated.\n // Disabling a section (SECTION_UPDATE with empty rows) does not retain pinned cards.\n if (action.data.rows && action.data.rows.length > 0 && section.rows.find(card => card.pinned)) {\n const rows = Array.from(action.data.rows);\n section.rows.forEach((card, index) => {\n if (card.pinned) {\n rows.splice(index, 0, card);\n }\n });\n return Object.assign({}, section, initialized, Object.assign({}, action.data, {rows}));\n }\n\n return Object.assign({}, section, initialized, action.data);\n }\n return section;\n });\n\n if (!action.data.dedupeConfigurations) {\n return newState;\n }\n\n action.data.dedupeConfigurations.forEach(dedupeConf => {\n newState = newState.map(section => {\n if (section.id === dedupeConf.id) {\n const dedupedRows = dedupeConf.dedupeFrom.reduce((rows, dedupeSectionId) => {\n const dedupeSection = newState.find(s => s.id === dedupeSectionId);\n const [, newRows] = dedupe.group(dedupeSection.rows, rows);\n return newRows;\n }, section.rows);\n\n return Object.assign({}, section, {rows: dedupedRows});\n }\n\n return section;\n });\n });\n\n return newState;\n case at.SECTION_UPDATE_CARD:\n return prevState.map(section => {\n if (section && section.id === action.data.id && section.rows) {\n const newRows = section.rows.map(card => {\n if (card.url === action.data.url) {\n return Object.assign({}, card, action.data.options);\n }\n return card;\n });\n return Object.assign({}, section, {rows: newRows});\n }\n return section;\n });\n case at.PLACES_BOOKMARK_ADDED:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section => Object.assign({}, section, {\n rows: section.rows.map(item => {\n // find the item within the rows that is attempted to be bookmarked\n if (item.url === action.data.url) {\n const {bookmarkGuid, bookmarkTitle, dateAdded} = action.data;\n return Object.assign({}, item, {\n bookmarkGuid,\n bookmarkTitle,\n bookmarkDateCreated: dateAdded,\n type: \"bookmark\"\n });\n }\n return item;\n })\n }));\n case at.PLACES_SAVED_TO_POCKET:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section => Object.assign({}, section, {\n rows: section.rows.map(item => {\n if (item.url === action.data.url) {\n return Object.assign({}, item, {\n open_url: action.data.open_url,\n pocket_id: action.data.pocket_id,\n title: action.data.title,\n type: \"pocket\"\n });\n }\n return item;\n })\n }));\n case at.PLACES_BOOKMARK_REMOVED:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section => Object.assign({}, section, {\n rows: section.rows.map(item => {\n // find the bookmark within the rows that is attempted to be removed\n if (item.url === action.data.url) {\n const newSite = Object.assign({}, item);\n delete newSite.bookmarkGuid;\n delete newSite.bookmarkTitle;\n delete newSite.bookmarkDateCreated;\n if (!newSite.type || newSite.type === \"bookmark\") {\n newSite.type = \"history\";\n }\n return newSite;\n }\n return item;\n })\n }));\n case at.PLACES_LINK_DELETED:\n case at.PLACES_LINK_BLOCKED:\n if (!action.data) {\n return prevState;\n }\n return prevState.map(section =>\n Object.assign({}, section, {rows: section.rows.filter(site => site.url !== action.data.url)}));\n case at.DELETE_FROM_POCKET:\n case at.ARCHIVE_FROM_POCKET:\n return prevState.map(section =>\n Object.assign({}, section, {rows: section.rows.filter(site => site.pocket_id !== action.data.pocket_id)}));\n default:\n return prevState;\n }\n}\n\nfunction Snippets(prevState = INITIAL_STATE.Snippets, action) {\n switch (action.type) {\n case at.SNIPPETS_DATA:\n return Object.assign({}, prevState, {initialized: true}, action.data);\n case at.SNIPPET_BLOCKED:\n return Object.assign({}, prevState, {blockList: prevState.blockList.concat(action.data)});\n case at.SNIPPETS_BLOCKLIST_CLEARED:\n return Object.assign({}, prevState, {blockList: []});\n case at.SNIPPETS_RESET:\n return INITIAL_STATE.Snippets;\n default:\n return prevState;\n }\n}\n\nfunction Theme(prevState = INITIAL_STATE.Theme, action) {\n switch (action.type) {\n case at.THEME_UPDATE:\n return Object.assign({}, prevState, action.data);\n default:\n return prevState;\n }\n}\n\nthis.INITIAL_STATE = INITIAL_STATE;\nthis.TOP_SITES_DEFAULT_ROWS = TOP_SITES_DEFAULT_ROWS;\nthis.TOP_SITES_MAX_SITES_PER_ROW = TOP_SITES_MAX_SITES_PER_ROW;\n\nthis.reducers = {TopSites, App, Snippets, Prefs, Dialog, Sections, Theme};\n\nconst EXPORTED_SYMBOLS = [\"reducers\", \"INITIAL_STATE\", \"insertPinned\", \"TOP_SITES_DEFAULT_ROWS\", \"TOP_SITES_MAX_SITES_PER_ROW\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/Reducers.jsm","import {actionCreators as ac, ASRouterActions as ra} from \"common/Actions.jsm\";\nimport {OUTGOING_MESSAGE_NAME as AS_GENERAL_OUTGOING_MESSAGE_NAME} from \"content-src/lib/init-store\";\nimport {ImpressionsWrapper} from \"./components/ImpressionsWrapper/ImpressionsWrapper\";\nimport {OnboardingMessage} from \"./templates/OnboardingMessage/OnboardingMessage\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {SimpleSnippet} from \"./templates/SimpleSnippet/SimpleSnippet\";\n\nconst INCOMING_MESSAGE_NAME = \"ASRouter:parent-to-child\";\nconst OUTGOING_MESSAGE_NAME = \"ASRouter:child-to-parent\";\n\nexport const ASRouterUtils = {\n addListener(listener) {\n global.addMessageListener(INCOMING_MESSAGE_NAME, listener);\n },\n removeListener(listener) {\n global.removeMessageListener(INCOMING_MESSAGE_NAME, listener);\n },\n sendMessage(action) {\n global.sendAsyncMessage(OUTGOING_MESSAGE_NAME, action);\n },\n blockById(id) {\n ASRouterUtils.sendMessage({type: \"BLOCK_MESSAGE_BY_ID\", data: {id}});\n },\n blockBundle(bundle) {\n ASRouterUtils.sendMessage({type: \"BLOCK_BUNDLE\", data: {bundle}});\n },\n executeAction({button_action, button_action_params}) {\n if (button_action in ra) {\n ASRouterUtils.sendMessage({type: button_action, data: {button_action_params}});\n }\n },\n unblockById(id) {\n ASRouterUtils.sendMessage({type: \"UNBLOCK_MESSAGE_BY_ID\", data: {id}});\n },\n unblockBundle(bundle) {\n ASRouterUtils.sendMessage({type: \"UNBLOCK_BUNDLE\", data: {bundle}});\n },\n getNextMessage() {\n ASRouterUtils.sendMessage({type: \"GET_NEXT_MESSAGE\"});\n },\n overrideMessage(id) {\n ASRouterUtils.sendMessage({type: \"OVERRIDE_MESSAGE\", data: {id}});\n },\n sendTelemetry(ping) {\n const payload = ac.ASRouterUserEvent(ping);\n global.sendAsyncMessage(AS_GENERAL_OUTGOING_MESSAGE_NAME, payload);\n }\n};\n\n// Note: nextProps/prevProps refer to props passed to <ImpressionsWrapper />, not <ASRouterUISurface />\nfunction shouldSendImpressionOnUpdate(nextProps, prevProps) {\n return (nextProps.message.id && (!prevProps.message || prevProps.message.id !== nextProps.message.id));\n}\n\nexport class ASRouterUISurface extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onMessageFromParent = this.onMessageFromParent.bind(this);\n this.sendImpression = this.sendImpression.bind(this);\n this.sendUserActionTelemetry = this.sendUserActionTelemetry.bind(this);\n this.state = {message: {}, bundle: {}};\n }\n\n sendUserActionTelemetry(extraProps = {}) {\n const {message, bundle} = this.state;\n if (!message && !extraProps.message_id) {\n throw new Error(`You must provide a message_id for bundled messages`);\n }\n const eventType = `${message.provider || bundle.provider}_user_event`;\n\n ASRouterUtils.sendTelemetry({\n message_id: message.id || extraProps.message_id,\n source: this.props.id,\n action: eventType,\n ...extraProps\n });\n }\n\n sendImpression() {\n this.sendUserActionTelemetry({event: \"IMPRESSION\"});\n }\n\n onBlockById(id) {\n return () => ASRouterUtils.blockById(id);\n }\n\n clearBundle(bundle) {\n return () => ASRouterUtils.blockBundle(bundle);\n }\n\n onMessageFromParent({data: action}) {\n switch (action.type) {\n case \"SET_MESSAGE\":\n this.setState({message: action.data});\n break;\n case \"SET_BUNDLED_MESSAGES\":\n this.setState({bundle: action.data});\n break;\n case \"CLEAR_MESSAGE\":\n if (action.data.id === this.state.message.id) {\n this.setState({message: {}});\n }\n break;\n case \"CLEAR_BUNDLE\":\n if (this.state.bundle.bundle) {\n this.setState({bundle: {}});\n }\n break;\n case \"CLEAR_ALL\":\n this.setState({message: {}, bundle: {}});\n }\n }\n\n componentWillMount() {\n ASRouterUtils.addListener(this.onMessageFromParent);\n ASRouterUtils.sendMessage({type: \"CONNECT_UI_REQUEST\"});\n }\n\n componentWillUnmount() {\n ASRouterUtils.removeListener(this.onMessageFromParent);\n }\n\n renderSnippets() {\n return (\n <ImpressionsWrapper\n message={this.state.message}\n sendImpression={this.sendImpression}\n shouldSendImpressionOnUpdate={shouldSendImpressionOnUpdate}\n // This helps with testing\n document={this.props.document}>\n <SimpleSnippet\n {...this.state.message}\n UISurface=\"NEWTAB_FOOTER_BAR\"\n getNextMessage={ASRouterUtils.getNextMessage}\n onBlock={this.onBlockById(this.state.message.id)}\n sendUserActionTelemetry={this.sendUserActionTelemetry} />\n </ImpressionsWrapper>);\n }\n\n renderOnboarding() {\n return (\n <OnboardingMessage\n {...this.state.bundle}\n UISurface=\"NEWTAB_OVERLAY\"\n onAction={ASRouterUtils.executeAction}\n onDoneButton={this.clearBundle(this.state.bundle.bundle)}\n getNextMessage={ASRouterUtils.getNextMessage}\n sendUserActionTelemetry={this.sendUserActionTelemetry} />);\n }\n\n render() {\n const {message, bundle} = this.state;\n if (!message.id && !bundle.template) { return null; }\n if (bundle.template === \"onboarding\") { return this.renderOnboarding(); }\n return this.renderSnippets();\n }\n}\n\nASRouterUISurface.defaultProps = {document: global.document};\n\nexport function initASRouter() {\n ReactDOM.render(<ASRouterUISurface />, document.getElementById(\"snippets-container\"));\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/asrouter-content.jsx","/* eslint-env mozilla/frame-script */\n\nimport {actionCreators as ac, actionTypes as at, actionUtils as au} from \"common/Actions.jsm\";\nimport {applyMiddleware, combineReducers, createStore} from \"redux\";\n\nexport const MERGE_STORE_ACTION = \"NEW_TAB_INITIAL_STATE\";\nexport const OUTGOING_MESSAGE_NAME = \"ActivityStream:ContentToMain\";\nexport const INCOMING_MESSAGE_NAME = \"ActivityStream:MainToContent\";\nexport const EARLY_QUEUED_ACTIONS = [at.SAVE_SESSION_PERF_DATA, at.PAGE_PRERENDERED];\n\n/**\n * A higher-order function which returns a reducer that, on MERGE_STORE action,\n * will return the action.data object merged into the previous state.\n *\n * For all other actions, it merely calls mainReducer.\n *\n * Because we want this to merge the entire state object, it's written as a\n * higher order function which takes the main reducer (itself often a call to\n * combineReducers) as a parameter.\n *\n * @param {function} mainReducer reducer to call if action != MERGE_STORE_ACTION\n * @return {function} a reducer that, on MERGE_STORE_ACTION action,\n * will return the action.data object merged\n * into the previous state, and the result\n * of calling mainReducer otherwise.\n */\nfunction mergeStateReducer(mainReducer) {\n return (prevState, action) => {\n if (action.type === MERGE_STORE_ACTION) {\n return {...prevState, ...action.data};\n }\n\n return mainReducer(prevState, action);\n };\n}\n\n/**\n * messageMiddleware - Middleware that looks for SentToMain type actions, and sends them if necessary\n */\nconst messageMiddleware = store => next => action => {\n const skipLocal = action.meta && action.meta.skipLocal;\n if (au.isSendToMain(action)) {\n sendAsyncMessage(OUTGOING_MESSAGE_NAME, action);\n }\n if (!skipLocal) {\n next(action);\n }\n};\n\nexport const rehydrationMiddleware = store => next => action => {\n if (store._didRehydrate) {\n return next(action);\n }\n\n const isMergeStoreAction = action.type === MERGE_STORE_ACTION;\n const isRehydrationRequest = action.type === at.NEW_TAB_STATE_REQUEST;\n\n if (isRehydrationRequest) {\n store._didRequestInitialState = true;\n return next(action);\n }\n\n if (isMergeStoreAction) {\n store._didRehydrate = true;\n return next(action);\n }\n\n // If init happened after our request was made, we need to re-request\n if (store._didRequestInitialState && action.type === at.INIT) {\n return next(ac.AlsoToMain({type: at.NEW_TAB_STATE_REQUEST}));\n }\n\n if (au.isBroadcastToContent(action) || au.isSendToOneContent(action) || au.isSendToPreloaded(action)) {\n // Note that actions received before didRehydrate will not be dispatched\n // because this could negatively affect preloading and the the state\n // will be replaced by rehydration anyway.\n return null;\n }\n\n return next(action);\n};\n\n/**\n * This middleware queues up all the EARLY_QUEUED_ACTIONS until it receives\n * the first action from main. This is useful for those actions for main which\n * require higher reliability, i.e. the action will not be lost in the case\n * that it gets sent before the main is ready to receive it. Conversely, any\n * actions allowed early are accepted to be ignorable or re-sendable.\n */\nexport const queueEarlyMessageMiddleware = store => next => action => {\n if (store._receivedFromMain) {\n next(action);\n } else if (au.isFromMain(action)) {\n next(action);\n store._receivedFromMain = true;\n // Sending out all the early actions as main is ready now\n if (store._earlyActionQueue) {\n store._earlyActionQueue.forEach(next);\n store._earlyActionQueue = [];\n }\n } else if (EARLY_QUEUED_ACTIONS.includes(action.type)) {\n store._earlyActionQueue = store._earlyActionQueue || [];\n store._earlyActionQueue.push(action);\n } else {\n // Let any other type of action go through\n next(action);\n }\n};\n\n/**\n * initStore - Create a store and listen for incoming actions\n *\n * @param {object} reducers An object containing Redux reducers\n * @param {object} intialState (optional) The initial state of the store, if desired\n * @return {object} A redux store\n */\nexport function initStore(reducers, initialState) {\n const store = createStore(\n mergeStateReducer(combineReducers(reducers)),\n initialState,\n global.addMessageListener && applyMiddleware(rehydrationMiddleware, queueEarlyMessageMiddleware, messageMiddleware)\n );\n\n store._didRehydrate = false;\n store._didRequestInitialState = false;\n\n if (global.addMessageListener) {\n global.addMessageListener(INCOMING_MESSAGE_NAME, msg => {\n try {\n store.dispatch(msg.data);\n } catch (ex) {\n console.error(\"Content msg:\", msg, \"Dispatch error: \", ex); // eslint-disable-line no-console\n dump(`Content msg: ${JSON.stringify(msg)}\\nDispatch error: ${ex}\\n${ex.stack}`);\n }\n });\n }\n\n return store;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/init-store.js","module.exports = ReactDOM;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"ReactDOM\"\n// module id = 9\n// module chunks = 0","import {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\nexport class ErrorBoundaryFallback extends React.PureComponent {\n constructor(props) {\n super(props);\n this.windowObj = this.props.windowObj || window;\n this.onClick = this.onClick.bind(this);\n }\n\n /**\n * Since we only get here if part of the page has crashed, do a\n * forced reload to give us the best chance at recovering.\n */\n onClick() {\n this.windowObj.location.reload(true);\n }\n\n render() {\n const defaultClass = \"as-error-fallback\";\n let className;\n if (\"className\" in this.props) {\n className = `${this.props.className} ${defaultClass}`;\n } else {\n className = defaultClass;\n }\n\n // href=\"#\" to force normal link styling stuff (eg cursor on hover)\n return (\n <div className={className}>\n <div>\n <FormattedMessage\n defaultMessage=\"Oops, something went wrong loading this content.\"\n id=\"error_fallback_default_info\" />\n </div>\n <span>\n <a href=\"#\" className=\"reload-button\" onClick={this.onClick}>\n <FormattedMessage\n defaultMessage=\"Refresh page to try again.\"\n id=\"error_fallback_default_refresh_suggestion\" />\n </a>\n </span>\n </div>\n );\n }\n}\nErrorBoundaryFallback.defaultProps = {className: \"as-error-fallback\"};\n\nexport class ErrorBoundary extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {hasError: false};\n }\n\n componentDidCatch(error, info) {\n this.setState({hasError: true});\n }\n\n render() {\n if (!this.state.hasError) {\n return (this.props.children);\n }\n\n return <this.props.FallbackComponent className={this.props.className} />;\n }\n}\n\nErrorBoundary.defaultProps = {FallbackComponent: ErrorBoundaryFallback};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ErrorBoundary/ErrorBoundary.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\n\nconst _OpenInPrivateWindow = site => ({\n id: \"menu_action_open_private_window\",\n icon: \"new-window-private\",\n action: ac.OnlyToMain({\n type: at.OPEN_PRIVATE_WINDOW,\n data: {url: site.url, referrer: site.referrer}\n }),\n userEvent: \"OPEN_PRIVATE_WINDOW\"\n});\n\nexport const GetPlatformString = platform => {\n switch (platform) {\n case \"win\":\n return \"menu_action_show_file_windows\";\n case \"macosx\":\n return \"menu_action_show_file_mac_os\";\n case \"linux\":\n return \"menu_action_show_file_linux\";\n default:\n return \"menu_action_show_file_default\";\n }\n};\n\n/**\n * List of functions that return items that can be included as menu options in a\n * LinkMenu. All functions take the site as the first parameter, and optionally\n * the index of the site.\n */\nexport const LinkMenuOptions = {\n Separator: () => ({type: \"separator\"}),\n EmptyItem: () => ({type: \"empty\"}),\n RemoveBookmark: site => ({\n id: \"menu_action_remove_bookmark\",\n icon: \"bookmark-added\",\n action: ac.AlsoToMain({\n type: at.DELETE_BOOKMARK_BY_ID,\n data: site.bookmarkGuid\n }),\n userEvent: \"BOOKMARK_DELETE\"\n }),\n AddBookmark: site => ({\n id: \"menu_action_bookmark\",\n icon: \"bookmark-hollow\",\n action: ac.AlsoToMain({\n type: at.BOOKMARK_URL,\n data: {url: site.url, title: site.title, type: site.type}\n }),\n userEvent: \"BOOKMARK_ADD\"\n }),\n OpenInNewWindow: site => ({\n id: \"menu_action_open_new_window\",\n icon: \"new-window\",\n action: ac.AlsoToMain({\n type: at.OPEN_NEW_WINDOW,\n data: {\n referrer: site.referrer,\n typedBonus: site.typedBonus,\n url: site.url\n }\n }),\n userEvent: \"OPEN_NEW_WINDOW\"\n }),\n BlockUrl: (site, index, eventSource) => ({\n id: \"menu_action_dismiss\",\n icon: \"dismiss\",\n action: ac.AlsoToMain({\n type: at.BLOCK_URL,\n data: {url: site.url, pocket_id: site.pocket_id}\n }),\n impression: ac.ImpressionStats({\n source: eventSource,\n block: 0,\n tiles: [{id: site.guid, pos: index}]\n }),\n userEvent: \"BLOCK\"\n }),\n\n // This is an option for web extentions which will result in remove items from\n // memory and notify the web extenion, rather than using the built-in block list.\n WebExtDismiss: (site, index, eventSource) => ({\n id: \"menu_action_webext_dismiss\",\n string_id: \"menu_action_dismiss\",\n icon: \"dismiss\",\n action: ac.WebExtEvent(at.WEBEXT_DISMISS, {\n source: eventSource,\n url: site.url,\n action_position: index\n })\n }),\n DeleteUrl: (site, index, eventSource, isEnabled, siteInfo) => ({\n id: \"menu_action_delete\",\n icon: \"delete\",\n action: {\n type: at.DIALOG_OPEN,\n data: {\n onConfirm: [\n ac.AlsoToMain({type: at.DELETE_HISTORY_URL, data: {url: site.url, pocket_id: site.pocket_id, forceBlock: site.bookmarkGuid}}),\n ac.UserEvent(Object.assign({event: \"DELETE\", source: eventSource, action_position: index}, siteInfo))\n ],\n eventSource,\n body_string_id: [\"confirm_history_delete_p1\", \"confirm_history_delete_notice_p2\"],\n confirm_button_string_id: \"menu_action_delete\",\n cancel_button_string_id: \"topsites_form_cancel_button\",\n icon: \"modal-delete\"\n }\n },\n userEvent: \"DIALOG_OPEN\"\n }),\n ShowFile: (site, index, eventSource, isEnabled, siteInfo, platform) => ({\n id: GetPlatformString(platform),\n icon: \"search\",\n action: ac.OnlyToMain({\n type: at.SHOW_DOWNLOAD_FILE,\n data: {url: site.url}\n })\n }),\n OpenFile: site => ({\n id: \"menu_action_open_file\",\n icon: \"open-file\",\n action: ac.OnlyToMain({\n type: at.OPEN_DOWNLOAD_FILE,\n data: {url: site.url}\n })\n }),\n CopyDownloadLink: site => ({\n id: \"menu_action_copy_download_link\",\n icon: \"copy\",\n action: ac.OnlyToMain({\n type: at.COPY_DOWNLOAD_LINK,\n data: {url: site.url}\n })\n }),\n GoToDownloadPage: site => ({\n id: \"menu_action_go_to_download_page\",\n icon: \"download\",\n action: ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: {url: site.referrer}\n }),\n disabled: !site.referrer\n }),\n RemoveDownload: site => ({\n id: \"menu_action_remove_download\",\n icon: \"delete\",\n action: ac.OnlyToMain({\n type: at.REMOVE_DOWNLOAD_FILE,\n data: {url: site.url}\n })\n }),\n PinTopSite: (site, index) => ({\n id: \"menu_action_pin\",\n icon: \"pin\",\n action: ac.AlsoToMain({\n type: at.TOP_SITES_PIN,\n data: {site: {url: site.url}, index}\n }),\n userEvent: \"PIN\"\n }),\n UnpinTopSite: site => ({\n id: \"menu_action_unpin\",\n icon: \"unpin\",\n action: ac.AlsoToMain({\n type: at.TOP_SITES_UNPIN,\n data: {site: {url: site.url}}\n }),\n userEvent: \"UNPIN\"\n }),\n SaveToPocket: (site, index, eventSource) => ({\n id: \"menu_action_save_to_pocket\",\n icon: \"pocket\",\n action: ac.AlsoToMain({\n type: at.SAVE_TO_POCKET,\n data: {site: {url: site.url, title: site.title}}\n }),\n impression: ac.ImpressionStats({\n source: eventSource,\n pocket: 0,\n tiles: [{id: site.guid, pos: index}]\n }),\n userEvent: \"SAVE_TO_POCKET\"\n }),\n DeleteFromPocket: site => ({\n id: \"menu_action_delete_pocket\",\n icon: \"delete\",\n action: ac.AlsoToMain({\n type: at.DELETE_FROM_POCKET,\n data: {pocket_id: site.pocket_id}\n }),\n userEvent: \"DELETE_FROM_POCKET\"\n }),\n ArchiveFromPocket: site => ({\n id: \"menu_action_archive_pocket\",\n icon: \"check\",\n action: ac.AlsoToMain({\n type: at.ARCHIVE_FROM_POCKET,\n data: {pocket_id: site.pocket_id}\n }),\n userEvent: \"ARCHIVE_FROM_POCKET\"\n }),\n EditTopSite: (site, index) => ({\n id: \"edit_topsites_button_text\",\n icon: \"edit\",\n action: {\n type: at.TOP_SITES_EDIT,\n data: {index}\n }\n }),\n CheckBookmark: site => (site.bookmarkGuid ? LinkMenuOptions.RemoveBookmark(site) : LinkMenuOptions.AddBookmark(site)),\n CheckPinTopSite: (site, index) => (site.isPinned ? LinkMenuOptions.UnpinTopSite(site) : LinkMenuOptions.PinTopSite(site, index)),\n CheckSavedToPocket: (site, index) => (site.pocket_id ? LinkMenuOptions.DeleteFromPocket(site) : LinkMenuOptions.SaveToPocket(site, index)),\n CheckBookmarkOrArchive: site => (site.pocket_id ? LinkMenuOptions.ArchiveFromPocket(site) : LinkMenuOptions.CheckBookmark(site)),\n OpenInPrivateWindow: (site, index, eventSource, isEnabled) => (isEnabled ? _OpenInPrivateWindow(site) : LinkMenuOptions.EmptyItem())\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/link-menu-options.js","import {actionCreators as ac} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {ContextMenu} from \"content-src/components/ContextMenu/ContextMenu\";\nimport {injectIntl} from \"react-intl\";\nimport {LinkMenuOptions} from \"content-src/lib/link-menu-options\";\nimport React from \"react\";\n\nconst DEFAULT_SITE_MENU_OPTIONS = [\"CheckPinTopSite\", \"EditTopSite\", \"Separator\", \"OpenInNewWindow\", \"OpenInPrivateWindow\", \"Separator\", \"BlockUrl\"];\n\nexport class _LinkMenu extends React.PureComponent {\n getOptions() {\n const {props} = this;\n const {site, index, source, isPrivateBrowsingEnabled, siteInfo, platform} = props;\n\n // Handle special case of default site\n const propOptions = !site.isDefault ? props.options : DEFAULT_SITE_MENU_OPTIONS;\n\n const options = propOptions.map(o => LinkMenuOptions[o](site, index, source, isPrivateBrowsingEnabled, siteInfo, platform)).map(option => {\n const {action, impression, id, string_id, type, userEvent} = option;\n if (!type && id) {\n option.label = props.intl.formatMessage({id: string_id || id});\n option.onClick = () => {\n props.dispatch(action);\n if (userEvent) {\n const userEventData = Object.assign({\n event: userEvent,\n source,\n action_position: index\n }, siteInfo);\n props.dispatch(ac.UserEvent(userEventData));\n }\n if (impression && props.shouldSendImpressionStats) {\n props.dispatch(impression);\n }\n };\n }\n return option;\n });\n\n // This is for accessibility to support making each item tabbable.\n // We want to know which item is the first and which item\n // is the last, so we can close the context menu accordingly.\n options[0].first = true;\n options[options.length - 1].last = true;\n return options;\n }\n\n render() {\n return (<ContextMenu\n onUpdate={this.props.onUpdate}\n options={this.getOptions()} />);\n }\n}\n\nconst getState = state => ({isPrivateBrowsingEnabled: state.Prefs.values.isPrivateBrowsingEnabled, platform: state.Prefs.values.platform});\nexport const LinkMenu = connect(getState)(injectIntl(_LinkMenu));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/LinkMenu/LinkMenu.jsx","import React from \"react\";\n\nexport class ContextMenu extends React.PureComponent {\n constructor(props) {\n super(props);\n this.hideContext = this.hideContext.bind(this);\n this.onClick = this.onClick.bind(this);\n }\n\n hideContext() {\n this.props.onUpdate(false);\n }\n\n componentDidMount() {\n setTimeout(() => {\n global.addEventListener(\"click\", this.hideContext);\n }, 0);\n }\n\n componentWillUnmount() {\n global.removeEventListener(\"click\", this.hideContext);\n }\n\n onClick(event) {\n // Eat all clicks on the context menu so they don't bubble up to window.\n // This prevents the context menu from closing when clicking disabled items\n // or the separators.\n event.stopPropagation();\n }\n\n render() {\n return (<span className=\"context-menu\" onClick={this.onClick}>\n <ul role=\"menu\" className=\"context-menu-list\">\n {this.props.options.map((option, i) => (option.type === \"separator\" ?\n (<li key={i} className=\"separator\" />) :\n (option.type !== \"empty\" && <ContextMenuItem key={i} option={option} hideContext={this.hideContext} />)\n ))}\n </ul>\n </span>);\n }\n}\n\nexport class ContextMenuItem extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onClick = this.onClick.bind(this);\n this.onKeyDown = this.onKeyDown.bind(this);\n }\n\n onClick() {\n this.props.hideContext();\n this.props.option.onClick();\n }\n\n onKeyDown(event) {\n const {option} = this.props;\n switch (event.key) {\n case \"Tab\":\n // tab goes down in context menu, shift + tab goes up in context menu\n // if we're on the last item, one more tab will close the context menu\n // similarly, if we're on the first item, one more shift + tab will close it\n if ((event.shiftKey && option.first) || (!event.shiftKey && option.last)) {\n this.props.hideContext();\n }\n break;\n case \"Enter\":\n this.props.hideContext();\n option.onClick();\n break;\n }\n }\n\n render() {\n const {option} = this.props;\n return (\n <li role=\"menuitem\" className=\"context-menu-item\">\n <a onClick={this.onClick} onKeyDown={this.onKeyDown} tabIndex=\"0\" className={option.disabled ? \"disabled\" : \"\"}>\n {option.icon && <span className={`icon icon-spacer icon-${option.icon}`} />}\n {option.label}\n </a>\n </li>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ContextMenu/ContextMenu.jsx","import {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {ErrorBoundary} from \"content-src/components/ErrorBoundary/ErrorBoundary\";\nimport React from \"react\";\nimport {SectionMenu} from \"content-src/components/SectionMenu/SectionMenu\";\nimport {SectionMenuOptions} from \"content-src/lib/section-menu-options\";\n\nconst VISIBLE = \"visible\";\nconst VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\n\nfunction getFormattedMessage(message) {\n return typeof message === \"string\" ? <span>{message}</span> : <FormattedMessage {...message} />;\n}\n\nexport class Disclaimer extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onAcknowledge = this.onAcknowledge.bind(this);\n }\n\n onAcknowledge() {\n this.props.dispatch(ac.SetPref(this.props.disclaimerPref, false));\n this.props.dispatch(ac.UserEvent({event: \"DISCLAIMER_ACKED\", source: this.props.eventSource}));\n }\n\n render() {\n const {disclaimer} = this.props;\n return (\n <div className=\"section-disclaimer\">\n <div className=\"section-disclaimer-text\">\n {getFormattedMessage(disclaimer.text)}\n {disclaimer.link &&\n <a href={disclaimer.link.href} target=\"_blank\" rel=\"noopener noreferrer\">\n {getFormattedMessage(disclaimer.link.title || disclaimer.link)}\n </a>\n }\n </div>\n\n <button onClick={this.onAcknowledge}>\n {getFormattedMessage(disclaimer.button)}\n </button>\n </div>\n );\n }\n}\n\nexport const DisclaimerIntl = injectIntl(Disclaimer);\n\nexport class _CollapsibleSection extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onBodyMount = this.onBodyMount.bind(this);\n this.onHeaderClick = this.onHeaderClick.bind(this);\n this.onTransitionEnd = this.onTransitionEnd.bind(this);\n this.enableOrDisableAnimation = this.enableOrDisableAnimation.bind(this);\n this.onMenuButtonClick = this.onMenuButtonClick.bind(this);\n this.onMenuButtonMouseEnter = this.onMenuButtonMouseEnter.bind(this);\n this.onMenuButtonMouseLeave = this.onMenuButtonMouseLeave.bind(this);\n this.onMenuUpdate = this.onMenuUpdate.bind(this);\n this.state = {enableAnimation: true, isAnimating: false, menuButtonHover: false, showContextMenu: false};\n }\n\n componentWillMount() {\n this.props.document.addEventListener(VISIBILITY_CHANGE_EVENT, this.enableOrDisableAnimation);\n }\n\n componentWillUpdate(nextProps) {\n // Check if we're about to go from expanded to collapsed\n if (!this.props.collapsed && nextProps.collapsed) {\n // This next line forces a layout flush of the section body, which has a\n // max-height style set, so that the upcoming collapse animation can\n // animate from that height to the collapsed height. Without this, the\n // update is coalesced and there's no animation from no-max-height to 0.\n this.sectionBody.scrollHeight; // eslint-disable-line no-unused-expressions\n }\n }\n\n componentWillUnmount() {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this.enableOrDisableAnimation);\n }\n\n enableOrDisableAnimation() {\n // Only animate the collapse/expand for visible tabs.\n const visible = this.props.document.visibilityState === VISIBLE;\n if (this.state.enableAnimation !== visible) {\n this.setState({enableAnimation: visible});\n }\n }\n\n onBodyMount(node) {\n this.sectionBody = node;\n }\n\n onHeaderClick() {\n // If this.sectionBody is unset, it means that we're in some sort of error\n // state, probably displaying the error fallback, so we won't be able to\n // compute the height, and we don't want to persist the preference.\n // If props.collapsed is undefined handler shouldn't do anything.\n if (!this.sectionBody || this.props.collapsed === undefined) {\n return;\n }\n\n // Get the current height of the body so max-height transitions can work\n this.setState({\n isAnimating: true,\n maxHeight: `${this.sectionBody.scrollHeight}px`\n });\n const {action, userEvent} = SectionMenuOptions.CheckCollapsed(this.props);\n this.props.dispatch(action);\n this.props.dispatch(ac.UserEvent({\n event: userEvent,\n source: this.props.source\n }));\n }\n\n onTransitionEnd(event) {\n // Only update the animating state for our own transition (not a child's)\n if (event.target === event.currentTarget) {\n this.setState({isAnimating: false});\n }\n }\n\n renderIcon() {\n const {icon} = this.props;\n if (icon && icon.startsWith(\"moz-extension://\")) {\n return <span className=\"icon icon-small-spacer\" style={{backgroundImage: `url('${icon}')`}} />;\n }\n return <span className={`icon icon-small-spacer icon-${icon || \"webextension\"}`} />;\n }\n\n onMenuButtonClick(event) {\n event.preventDefault();\n this.setState({showContextMenu: true});\n }\n\n onMenuButtonMouseEnter() {\n this.setState({menuButtonHover: true});\n }\n\n onMenuButtonMouseLeave() {\n this.setState({menuButtonHover: false});\n }\n\n onMenuUpdate(showContextMenu) {\n this.setState({showContextMenu});\n }\n\n render() {\n const isCollapsible = this.props.collapsed !== undefined;\n const {enableAnimation, isAnimating, maxHeight, menuButtonHover, showContextMenu} = this.state;\n const {id, eventSource, collapsed, disclaimer, title, extraMenuOptions, showPrefName, privacyNoticeURL, dispatch, isFirst, isLast, isWebExtension} = this.props;\n const disclaimerPref = `section.${id}.showDisclaimer`;\n const needsDisclaimer = disclaimer && this.props.Prefs.values[disclaimerPref];\n const active = menuButtonHover || showContextMenu;\n return (\n <section\n className={`collapsible-section ${this.props.className}${enableAnimation ? \" animation-enabled\" : \"\"}${collapsed ? \" collapsed\" : \"\"}${active ? \" active\" : \"\"}`}\n // Note: data-section-id is used for web extension api tests in mozilla central\n data-section-id={id}>\n <div className=\"section-top-bar\">\n <h3 className=\"section-title\">\n <span className=\"click-target\" onClick={this.onHeaderClick}>\n {this.renderIcon()}\n {getFormattedMessage(title)}\n {isCollapsible && <span className={`collapsible-arrow icon ${collapsed ? \"icon-arrowhead-forward-small\" : \"icon-arrowhead-down-small\"}`} />}\n </span>\n </h3>\n <div>\n <button\n className=\"context-menu-button icon\"\n onClick={this.onMenuButtonClick}\n onMouseEnter={this.onMenuButtonMouseEnter}\n onMouseLeave={this.onMenuButtonMouseLeave}>\n <span className=\"sr-only\">\n <FormattedMessage id=\"section_context_menu_button_sr\" />\n </span>\n </button>\n {showContextMenu &&\n <SectionMenu\n id={id}\n extraOptions={extraMenuOptions}\n eventSource={eventSource}\n showPrefName={showPrefName}\n privacyNoticeURL={privacyNoticeURL}\n collapsed={collapsed}\n onUpdate={this.onMenuUpdate}\n isFirst={isFirst}\n isLast={isLast}\n dispatch={dispatch}\n isWebExtension={isWebExtension} />\n }\n </div>\n </div>\n <ErrorBoundary className=\"section-body-fallback\">\n <div\n className={`section-body${isAnimating ? \" animating\" : \"\"}`}\n onTransitionEnd={this.onTransitionEnd}\n ref={this.onBodyMount}\n style={isAnimating && !collapsed ? {maxHeight} : null}>\n {needsDisclaimer && <DisclaimerIntl disclaimerPref={disclaimerPref} disclaimer={disclaimer} eventSource={eventSource} dispatch={this.props.dispatch} />}\n {this.props.children}\n </div>\n </ErrorBoundary>\n </section>\n );\n }\n}\n\n_CollapsibleSection.defaultProps = {\n document: global.document || {\n addEventListener: () => {},\n removeEventListener: () => {},\n visibilityState: \"hidden\"\n },\n Prefs: {values: {}}\n};\n\nexport const CollapsibleSection = injectIntl(_CollapsibleSection);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/CollapsibleSection/CollapsibleSection.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\n\n/**\n * List of functions that return items that can be included as menu options in a\n * SectionMenu. All functions take the section as the only parameter.\n */\nexport const SectionMenuOptions = {\n Separator: () => ({type: \"separator\"}),\n MoveUp: section => ({\n id: \"section_menu_action_move_up\",\n icon: \"arrowhead-up\",\n action: ac.OnlyToMain({\n type: at.SECTION_MOVE,\n data: {id: section.id, direction: -1}\n }),\n userEvent: \"MENU_MOVE_UP\",\n disabled: !!section.isFirst\n }),\n MoveDown: section => ({\n id: \"section_menu_action_move_down\",\n icon: \"arrowhead-down\",\n action: ac.OnlyToMain({\n type: at.SECTION_MOVE,\n data: {id: section.id, direction: +1}\n }),\n userEvent: \"MENU_MOVE_DOWN\",\n disabled: !!section.isLast\n }),\n RemoveSection: section => ({\n id: \"section_menu_action_remove_section\",\n icon: \"dismiss\",\n action: ac.SetPref(section.showPrefName, false),\n userEvent: \"MENU_REMOVE\"\n }),\n CollapseSection: section => ({\n id: \"section_menu_action_collapse_section\",\n icon: \"minimize\",\n action: ac.OnlyToMain({type: at.UPDATE_SECTION_PREFS, data: {id: section.id, value: {collapsed: true}}}),\n userEvent: \"MENU_COLLAPSE\"\n }),\n ExpandSection: section => ({\n id: \"section_menu_action_expand_section\",\n icon: \"maximize\",\n action: ac.OnlyToMain({type: at.UPDATE_SECTION_PREFS, data: {id: section.id, value: {collapsed: false}}}),\n userEvent: \"MENU_EXPAND\"\n }),\n ManageSection: section => ({\n id: \"section_menu_action_manage_section\",\n icon: \"settings\",\n action: ac.OnlyToMain({type: at.SETTINGS_OPEN}),\n userEvent: \"MENU_MANAGE\"\n }),\n ManageWebExtension: section => ({\n id: \"section_menu_action_manage_webext\",\n icon: \"settings\",\n action: ac.OnlyToMain({type: at.OPEN_WEBEXT_SETTINGS, data: section.id})\n }),\n AddTopSite: section => ({\n id: \"section_menu_action_add_topsite\",\n icon: \"add\",\n action: {type: at.TOP_SITES_EDIT, data: {index: -1}},\n userEvent: \"MENU_ADD_TOPSITE\"\n }),\n PrivacyNotice: section => ({\n id: \"section_menu_action_privacy_notice\",\n icon: \"info\",\n action: ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: {url: section.privacyNoticeURL}\n }),\n userEvent: \"MENU_PRIVACY_NOTICE\"\n }),\n CheckCollapsed: section => (section.collapsed ? SectionMenuOptions.ExpandSection(section) : SectionMenuOptions.CollapseSection(section))\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/section-menu-options.js","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {perfService as perfSvc} from \"common/PerfService.jsm\";\nimport React from \"react\";\n\n// Currently record only a fixed set of sections. This will prevent data\n// from custom sections from showing up or from topstories.\nconst RECORDED_SECTIONS = [\"highlights\", \"topsites\"];\n\nexport class ComponentPerfTimer extends React.Component {\n constructor(props) {\n super(props);\n // Just for test dependency injection:\n this.perfSvc = this.props.perfSvc || perfSvc;\n\n this._sendBadStateEvent = this._sendBadStateEvent.bind(this);\n this._sendPaintedEvent = this._sendPaintedEvent.bind(this);\n this._reportMissingData = false;\n this._timestampHandled = false;\n this._recordedFirstRender = false;\n }\n\n componentDidMount() {\n if (!RECORDED_SECTIONS.includes(this.props.id)) {\n return;\n }\n\n this._maybeSendPaintedEvent();\n }\n\n componentDidUpdate() {\n if (!RECORDED_SECTIONS.includes(this.props.id)) {\n return;\n }\n\n this._maybeSendPaintedEvent();\n }\n\n /**\n * Call the given callback after the upcoming frame paints.\n *\n * @note Both setTimeout and requestAnimationFrame are throttled when the page\n * is hidden, so this callback may get called up to a second or so after the\n * requestAnimationFrame \"paint\" for hidden tabs.\n *\n * Newtabs hidden while loading will presumably be fairly rare (other than\n * preloaded tabs, which we will be filtering out on the server side), so such\n * cases should get lost in the noise.\n *\n * If we decide that it's important to find out when something that's hidden\n * has \"painted\", however, another option is to post a message to this window.\n * That should happen even faster than setTimeout, and, at least as of this\n * writing, it's not throttled in hidden windows in Firefox.\n *\n * @param {Function} callback\n *\n * @returns void\n */\n _afterFramePaint(callback) {\n requestAnimationFrame(() => setTimeout(callback, 0));\n }\n\n _maybeSendBadStateEvent() {\n // Follow up bugs:\n // https://github.com/mozilla/activity-stream/issues/3691\n if (!this.props.initialized) {\n // Remember to report back when data is available.\n this._reportMissingData = true;\n } else if (this._reportMissingData) {\n this._reportMissingData = false;\n // Report how long it took for component to become initialized.\n this._sendBadStateEvent();\n }\n }\n\n _maybeSendPaintedEvent() {\n // If we've already handled a timestamp, don't do it again.\n if (this._timestampHandled || !this.props.initialized) {\n return;\n }\n\n // And if we haven't, we're doing so now, so remember that. Even if\n // something goes wrong in the callback, we can't try again, as we'd be\n // sending back the wrong data, and we have to do it here, so that other\n // calls to this method while waiting for the next frame won't also try to\n // handle it.\n this._timestampHandled = true;\n this._afterFramePaint(this._sendPaintedEvent);\n }\n\n /**\n * Triggered by call to render. Only first call goes through due to\n * `_recordedFirstRender`.\n */\n _ensureFirstRenderTsRecorded() {\n // Used as t0 for recording how long component took to initialize.\n if (!this._recordedFirstRender) {\n this._recordedFirstRender = true;\n // topsites_first_render_ts, highlights_first_render_ts.\n const key = `${this.props.id}_first_render_ts`;\n this.perfSvc.mark(key);\n }\n }\n\n /**\n * Creates `TELEMETRY_UNDESIRED_EVENT` with timestamp in ms\n * of how much longer the data took to be ready for display than it would\n * have been the ideal case.\n * https://github.com/mozilla/ping-centre/issues/98\n */\n _sendBadStateEvent() {\n // highlights_data_ready_ts, topsites_data_ready_ts.\n const dataReadyKey = `${this.props.id}_data_ready_ts`;\n this.perfSvc.mark(dataReadyKey);\n\n try {\n const firstRenderKey = `${this.props.id}_first_render_ts`;\n // value has to be Int32.\n const value = parseInt(this.perfSvc.getMostRecentAbsMarkStartByName(dataReadyKey) -\n this.perfSvc.getMostRecentAbsMarkStartByName(firstRenderKey), 10);\n this.props.dispatch(ac.OnlyToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n // highlights_data_late_by_ms, topsites_data_late_by_ms.\n data: {[`${this.props.id}_data_late_by_ms`]: value}\n }));\n } catch (ex) {\n // If this failed, it's likely because the `privacy.resistFingerprinting`\n // pref is true.\n }\n }\n\n _sendPaintedEvent() {\n // Record first_painted event but only send if topsites.\n if (this.props.id !== \"topsites\") {\n return;\n }\n\n // topsites_first_painted_ts.\n const key = `${this.props.id}_first_painted_ts`;\n this.perfSvc.mark(key);\n\n try {\n const data = {};\n data[key] = this.perfSvc.getMostRecentAbsMarkStartByName(key);\n\n this.props.dispatch(ac.OnlyToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n data\n }));\n } catch (ex) {\n // If this failed, it's likely because the `privacy.resistFingerprinting`\n // pref is true. We should at least not blow up, and should continue\n // to set this._timestampHandled to avoid going through this again.\n }\n }\n\n render() {\n if (RECORDED_SECTIONS.includes(this.props.id)) {\n this._ensureFirstRenderTsRecorded();\n this._maybeSendBadStateEvent();\n }\n return this.props.children;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ComponentPerfTimer/ComponentPerfTimer.jsx","/* globals Services */\n\"use strict\";\n\n/* istanbul ignore if */\nif (typeof ChromeUtils !== \"undefined\") {\n ChromeUtils.import(\"resource://gre/modules/Services.jsm\");\n}\n\nlet usablePerfObj;\n\n/* istanbul ignore if */\n/* istanbul ignore else */\nif (typeof Services !== \"undefined\") {\n // Borrow the high-resolution timer from the hidden window....\n usablePerfObj = Services.appShell.hiddenDOMWindow.performance;\n} else if (typeof performance !== \"undefined\") {\n // we must be running in content space\n // eslint-disable-next-line no-undef\n usablePerfObj = performance;\n} else {\n // This is a dummy object so this file doesn't crash in the node prerendering\n // task.\n usablePerfObj = {\n now() {},\n mark() {}\n };\n}\n\nfunction _PerfService(options) {\n // For testing, so that we can use a fake Window.performance object with\n // known state.\n if (options && options.performanceObj) {\n this._perf = options.performanceObj;\n } else {\n this._perf = usablePerfObj;\n }\n}\n\n_PerfService.prototype = {\n /**\n * Calls the underlying mark() method on the appropriate Window.performance\n * object to add a mark with the given name to the appropriate performance\n * timeline.\n *\n * @param {String} name the name to give the current mark\n * @return {void}\n */\n mark: function mark(str) {\n this._perf.mark(str);\n },\n\n /**\n * Calls the underlying getEntriesByName on the appropriate Window.performance\n * object.\n *\n * @param {String} name\n * @param {String} type eg \"mark\"\n * @return {Array} Performance* objects\n */\n getEntriesByName: function getEntriesByName(name, type) {\n return this._perf.getEntriesByName(name, type);\n },\n\n /**\n * The timeOrigin property from the appropriate performance object.\n * Used to ensure that timestamps from the add-on code and the content code\n * are comparable.\n *\n * @note If this is called from a context without a window\n * (eg a JSM in chrome), it will return the timeOrigin of the XUL hidden\n * window, which appears to be the first created window (and thus\n * timeOrigin) in the browser. Note also, however, there is also a private\n * hidden window, presumably for private browsing, which appears to be\n * created dynamically later. Exactly how/when that shows up needs to be\n * investigated.\n *\n * @return {Number} A double of milliseconds with a precision of 0.5us.\n */\n get timeOrigin() {\n return this._perf.timeOrigin;\n },\n\n /**\n * Returns the \"absolute\" version of performance.now(), i.e. one that\n * should ([bug 1401406](https://bugzilla.mozilla.org/show_bug.cgi?id=1401406)\n * be comparable across both chrome and content.\n *\n * @return {Number}\n */\n absNow: function absNow() {\n return this.timeOrigin + this._perf.now();\n },\n\n /**\n * This returns the absolute startTime from the most recent performance.mark()\n * with the given name.\n *\n * @param {String} name the name to lookup the start time for\n *\n * @return {Number} the returned start time, as a DOMHighResTimeStamp\n *\n * @throws {Error} \"No Marks with the name ...\" if none are available\n *\n * @note Always surround calls to this by try/catch. Otherwise your code\n * may fail when the `privacy.resistFingerprinting` pref is true. When\n * this pref is set, all attempts to get marks will likely fail, which will\n * cause this method to throw.\n *\n * See [bug 1369303](https://bugzilla.mozilla.org/show_bug.cgi?id=1369303)\n * for more info.\n */\n getMostRecentAbsMarkStartByName(name) {\n let entries = this.getEntriesByName(name, \"mark\");\n\n if (!entries.length) {\n throw new Error(`No marks with the name ${name}`);\n }\n\n let mostRecentEntry = entries[entries.length - 1];\n return this._perf.timeOrigin + mostRecentEntry.startTime;\n }\n};\n\nthis.perfService = new _PerfService();\nconst EXPORTED_SYMBOLS = [\"_PerfService\", \"perfService\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/PerfService.jsm","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {FormattedMessage, injectIntl} from \"react-intl\";\nimport {\n MIN_CORNER_FAVICON_SIZE,\n MIN_RICH_FAVICON_SIZE,\n TOP_SITES_CONTEXT_MENU_OPTIONS,\n TOP_SITES_SOURCE\n} from \"./TopSitesConstants\";\nimport {LinkMenu} from \"content-src/components/LinkMenu/LinkMenu\";\nimport React from \"react\";\nimport {TOP_SITES_MAX_SITES_PER_ROW} from \"common/Reducers.jsm\";\n\nexport class TopSiteLink extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onDragEvent = this.onDragEvent.bind(this);\n }\n\n /*\n * Helper to determine whether the drop zone should allow a drop. We only allow\n * dropping top sites for now.\n */\n _allowDrop(e) {\n return e.dataTransfer.types.includes(\"text/topsite-index\");\n }\n\n onDragEvent(event) {\n switch (event.type) {\n case \"click\":\n // Stop any link clicks if we started any dragging\n if (this.dragged) {\n event.preventDefault();\n }\n break;\n case \"dragstart\":\n this.dragged = true;\n event.dataTransfer.effectAllowed = \"move\";\n event.dataTransfer.setData(\"text/topsite-index\", this.props.index);\n event.target.blur();\n this.props.onDragEvent(event, this.props.index, this.props.link, this.props.title);\n break;\n case \"dragend\":\n this.props.onDragEvent(event);\n break;\n case \"dragenter\":\n case \"dragover\":\n case \"drop\":\n if (this._allowDrop(event)) {\n event.preventDefault();\n this.props.onDragEvent(event, this.props.index);\n }\n break;\n case \"mousedown\":\n // Reset at the first mouse event of a potential drag\n this.dragged = false;\n break;\n }\n }\n\n render() {\n const {children, className, defaultStyle, isDraggable, link, onClick, title} = this.props;\n const topSiteOuterClassName = `top-site-outer${className ? ` ${className}` : \"\"}${link.isDragged ? \" dragged\" : \"\"}`;\n const {tippyTopIcon, faviconSize} = link;\n const [letterFallback] = title;\n let imageClassName;\n let imageStyle;\n let showSmallFavicon = false;\n let smallFaviconStyle;\n let smallFaviconFallback;\n if (defaultStyle) { // force no styles (letter fallback) even if the link has imagery\n smallFaviconFallback = false;\n } else if (link.customScreenshotURL) {\n // assume high quality custom screenshot and use rich icon styles and class names\n imageClassName = \"top-site-icon rich-icon\";\n imageStyle = {\n backgroundColor: link.backgroundColor,\n backgroundImage: `url(${link.screenshot})`\n };\n } else if (tippyTopIcon || faviconSize >= MIN_RICH_FAVICON_SIZE) {\n // styles and class names for top sites with rich icons\n imageClassName = \"top-site-icon rich-icon\";\n imageStyle = {\n backgroundColor: link.backgroundColor,\n backgroundImage: `url(${tippyTopIcon || link.favicon})`\n };\n } else {\n // styles and class names for top sites with screenshot + small icon in top left corner\n imageClassName = `screenshot${link.screenshot ? \" active\" : \"\"}`;\n imageStyle = {backgroundImage: link.screenshot ? `url(${link.screenshot})` : \"none\"};\n\n // only show a favicon in top left if it's greater than 16x16\n if (faviconSize >= MIN_CORNER_FAVICON_SIZE) {\n showSmallFavicon = true;\n smallFaviconStyle = {backgroundImage: `url(${link.favicon})`};\n } else if (link.screenshot) {\n // Don't show a small favicon if there is no screenshot, because that\n // would result in two fallback icons\n showSmallFavicon = true;\n smallFaviconFallback = true;\n }\n }\n let draggableProps = {};\n if (isDraggable) {\n draggableProps = {\n onClick: this.onDragEvent,\n onDragEnd: this.onDragEvent,\n onDragStart: this.onDragEvent,\n onMouseDown: this.onDragEvent\n };\n }\n return (<li className={topSiteOuterClassName} onDrop={this.onDragEvent} onDragOver={this.onDragEvent} onDragEnter={this.onDragEvent} onDragLeave={this.onDragEvent} {...draggableProps}>\n <div className=\"top-site-inner\">\n <a href={link.url} onClick={onClick}>\n <div className=\"tile\" aria-hidden={true} data-fallback={letterFallback}>\n <div className={imageClassName} style={imageStyle} />\n {showSmallFavicon && <div\n className=\"top-site-icon default-icon\"\n data-fallback={smallFaviconFallback && letterFallback}\n style={smallFaviconStyle} />}\n </div>\n <div className={`title ${link.isPinned ? \"pinned\" : \"\"}`}>\n {link.isPinned && <div className=\"icon icon-pin-small\" />}\n <span dir=\"auto\">{title}</span>\n </div>\n </a>\n {children}\n </div>\n </li>);\n }\n}\nTopSiteLink.defaultProps = {\n title: \"\",\n link: {},\n isDraggable: true\n};\n\nexport class TopSite extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {showContextMenu: false};\n this.onLinkClick = this.onLinkClick.bind(this);\n this.onMenuButtonClick = this.onMenuButtonClick.bind(this);\n this.onMenuUpdate = this.onMenuUpdate.bind(this);\n }\n\n /**\n * Report to telemetry additional information about the item.\n */\n _getTelemetryInfo() {\n const value = {icon_type: this.props.link.iconType};\n // Filter out \"not_pinned\" type for being the default\n if (this.props.link.isPinned) {\n value.card_type = \"pinned\";\n }\n return {value};\n }\n\n userEvent(event) {\n this.props.dispatch(ac.UserEvent(Object.assign({\n event,\n source: TOP_SITES_SOURCE,\n action_position: this.props.index\n }, this._getTelemetryInfo())));\n }\n\n onLinkClick(event) {\n this.userEvent(\"CLICK\");\n\n // Specially handle a top site link click for \"typed\" frecency bonus as\n // specified as a property on the link.\n event.preventDefault();\n const {altKey, button, ctrlKey, metaKey, shiftKey} = event;\n this.props.dispatch(ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: Object.assign(this.props.link, {event: {altKey, button, ctrlKey, metaKey, shiftKey}})\n }));\n }\n\n onMenuButtonClick(event) {\n event.preventDefault();\n this.props.onActivate(this.props.index);\n this.setState({showContextMenu: true});\n }\n\n onMenuUpdate(showContextMenu) {\n this.setState({showContextMenu});\n }\n\n render() {\n const {props} = this;\n const {link} = props;\n const isContextMenuOpen = this.state.showContextMenu && props.activeIndex === props.index;\n const title = link.label || link.hostname;\n return (<TopSiteLink {...props} onClick={this.onLinkClick} onDragEvent={this.props.onDragEvent} className={`${props.className || \"\"}${isContextMenuOpen ? \" active\" : \"\"}`} title={title}>\n <div>\n <button className=\"context-menu-button icon\" onClick={this.onMenuButtonClick}>\n <span className=\"sr-only\">\n <FormattedMessage id=\"context_menu_button_sr\" values={{title}} />\n </span>\n </button>\n {isContextMenuOpen &&\n <LinkMenu\n dispatch={props.dispatch}\n index={props.index}\n onUpdate={this.onMenuUpdate}\n options={TOP_SITES_CONTEXT_MENU_OPTIONS}\n site={link}\n siteInfo={this._getTelemetryInfo()}\n source={TOP_SITES_SOURCE} />\n }\n </div>\n </TopSiteLink>);\n }\n}\nTopSite.defaultProps = {\n link: {},\n onActivate() {}\n};\n\nexport class TopSitePlaceholder extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onEditButtonClick = this.onEditButtonClick.bind(this);\n }\n\n onEditButtonClick() {\n this.props.dispatch(\n {type: at.TOP_SITES_EDIT, data: {index: this.props.index}});\n }\n\n render() {\n return (<TopSiteLink {...this.props} className={`placeholder ${this.props.className || \"\"}`} isDraggable={false}>\n <button className=\"context-menu-button edit-button icon\"\n title={this.props.intl.formatMessage({id: \"edit_topsites_edit_button\"})}\n onClick={this.onEditButtonClick} />\n </TopSiteLink>);\n }\n}\n\nexport class _TopSiteList extends React.PureComponent {\n static get DEFAULT_STATE() {\n return {\n activeIndex: null,\n draggedIndex: null,\n draggedSite: null,\n draggedTitle: null,\n topSitesPreview: null\n };\n }\n\n constructor(props) {\n super(props);\n this.state = _TopSiteList.DEFAULT_STATE;\n this.onDragEvent = this.onDragEvent.bind(this);\n this.onActivate = this.onActivate.bind(this);\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.state.draggedSite) {\n const prevTopSites = this.props.TopSites && this.props.TopSites.rows;\n const newTopSites = nextProps.TopSites && nextProps.TopSites.rows;\n if (prevTopSites && prevTopSites[this.state.draggedIndex] &&\n prevTopSites[this.state.draggedIndex].url === this.state.draggedSite.url &&\n (!newTopSites[this.state.draggedIndex] || newTopSites[this.state.draggedIndex].url !== this.state.draggedSite.url)) {\n // We got the new order from the redux store via props. We can clear state now.\n this.setState(_TopSiteList.DEFAULT_STATE);\n }\n }\n }\n\n userEvent(event, index) {\n this.props.dispatch(ac.UserEvent({\n event,\n source: TOP_SITES_SOURCE,\n action_position: index\n }));\n }\n\n onDragEvent(event, index, link, title) {\n switch (event.type) {\n case \"dragstart\":\n this.dropped = false;\n this.setState({\n draggedIndex: index,\n draggedSite: link,\n draggedTitle: title,\n activeIndex: null\n });\n this.userEvent(\"DRAG\", index);\n break;\n case \"dragend\":\n if (!this.dropped) {\n // If there was no drop event, reset the state to the default.\n this.setState(_TopSiteList.DEFAULT_STATE);\n }\n break;\n case \"dragenter\":\n if (index === this.state.draggedIndex) {\n this.setState({topSitesPreview: null});\n } else {\n this.setState({topSitesPreview: this._makeTopSitesPreview(index)});\n }\n break;\n case \"drop\":\n if (index !== this.state.draggedIndex) {\n this.dropped = true;\n this.props.dispatch(ac.AlsoToMain({\n type: at.TOP_SITES_INSERT,\n data: {\n site: {\n url: this.state.draggedSite.url,\n label: this.state.draggedTitle,\n customScreenshotURL: this.state.draggedSite.customScreenshotURL\n },\n index,\n draggedFromIndex: this.state.draggedIndex\n }\n }));\n this.userEvent(\"DROP\", index);\n }\n break;\n }\n }\n\n _getTopSites() {\n // Make a copy of the sites to truncate or extend to desired length\n let topSites = this.props.TopSites.rows.slice();\n topSites.length = this.props.TopSitesRows * TOP_SITES_MAX_SITES_PER_ROW;\n return topSites;\n }\n\n /**\n * Make a preview of the topsites that will be the result of dropping the currently\n * dragged site at the specified index.\n */\n _makeTopSitesPreview(index) {\n const topSites = this._getTopSites();\n topSites[this.state.draggedIndex] = null;\n const pinnedOnly = topSites.map(site => ((site && site.isPinned) ? site : null));\n const unpinned = topSites.filter(site => site && !site.isPinned);\n const siteToInsert = Object.assign({}, this.state.draggedSite, {isPinned: true, isDragged: true});\n if (!pinnedOnly[index]) {\n pinnedOnly[index] = siteToInsert;\n } else {\n // Find the hole to shift the pinned site(s) towards. We shift towards the\n // hole left by the site being dragged.\n let holeIndex = index;\n const indexStep = index > this.state.draggedIndex ? -1 : 1;\n while (pinnedOnly[holeIndex]) {\n holeIndex += indexStep;\n }\n\n // Shift towards the hole.\n const shiftingStep = index > this.state.draggedIndex ? 1 : -1;\n while (holeIndex !== index) {\n const nextIndex = holeIndex + shiftingStep;\n pinnedOnly[holeIndex] = pinnedOnly[nextIndex];\n holeIndex = nextIndex;\n }\n pinnedOnly[index] = siteToInsert;\n }\n\n // Fill in the remaining holes with unpinned sites.\n const preview = pinnedOnly;\n for (let i = 0; i < preview.length; i++) {\n if (!preview[i]) {\n preview[i] = unpinned.shift() || null;\n }\n }\n\n return preview;\n }\n\n onActivate(index) {\n this.setState({activeIndex: index});\n }\n\n render() {\n const {props} = this;\n const topSites = this.state.topSitesPreview || this._getTopSites();\n const topSitesUI = [];\n const commonProps = {\n onDragEvent: this.onDragEvent,\n dispatch: props.dispatch,\n intl: props.intl\n };\n // We assign a key to each placeholder slot. We need it to be independent\n // of the slot index (i below) so that the keys used stay the same during\n // drag and drop reordering and the underlying DOM nodes are reused.\n // This mostly (only?) affects linux so be sure to test on linux before changing.\n let holeIndex = 0;\n\n // On narrow viewports, we only show 6 sites per row. We'll mark the rest as\n // .hide-for-narrow to hide in CSS via @media query.\n const maxNarrowVisibleIndex = props.TopSitesRows * 6;\n\n for (let i = 0, l = topSites.length; i < l; i++) {\n const link = topSites[i] && Object.assign({}, topSites[i], {iconType: this.props.topSiteIconType(topSites[i])});\n const slotProps = {\n key: link ? link.url : holeIndex++,\n index: i\n };\n if (i >= maxNarrowVisibleIndex) {\n slotProps.className = \"hide-for-narrow\";\n }\n topSitesUI.push(!link ? (\n <TopSitePlaceholder\n {...slotProps}\n {...commonProps} />\n ) : (\n <TopSite\n link={link}\n activeIndex={this.state.activeIndex}\n onActivate={this.onActivate}\n {...slotProps}\n {...commonProps} />\n ));\n }\n return (<ul className={`top-sites-list${this.state.draggedSite ? \" dnd-active\" : \"\"}`}>\n {topSitesUI}\n </ul>);\n }\n}\n\nexport const TopSiteList = injectIntl(_TopSiteList);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSite.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {addSnippetsSubscriber} from \"content-src/lib/snippets\";\nimport {Base} from \"content-src/components/Base/Base\";\nimport {DetectUserSessionStart} from \"content-src/lib/detect-user-session-start\";\nimport {initStore} from \"content-src/lib/init-store\";\nimport {Provider} from \"react-redux\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {reducers} from \"common/Reducers.jsm\";\n\nconst store = initStore(reducers, global.gActivityStreamPrerenderedState);\n\nnew DetectUserSessionStart(store).sendEventOrAddListener();\n\n// If we are starting in a prerendered state, we must wait until the first render\n// to request state rehydration (see Base.jsx). If we are NOT in a prerendered state,\n// we can request it immedately.\nif (!global.gActivityStreamPrerenderedState) {\n store.dispatch(ac.AlsoToMain({type: at.NEW_TAB_STATE_REQUEST}));\n}\n\nReactDOM.hydrate(<Provider store={store}>\n <Base\n isFirstrun={global.document.location.href === \"about:welcome\"}\n isPrerendered={!!global.gActivityStreamPrerenderedState}\n locale={global.document.documentElement.lang}\n strings={global.gActivityStreamStrings} />\n</Provider>, document.getElementById(\"root\"));\n\naddSnippetsSubscriber(store);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/activity-stream.jsx","const DATABASE_NAME = \"snippets_db\";\nconst DATABASE_VERSION = 1;\nconst SNIPPETS_OBJECTSTORE_NAME = \"snippets\";\nexport const SNIPPETS_UPDATE_INTERVAL_MS = 14400000; // 4 hours.\n\nconst SNIPPETS_ENABLED_EVENT = \"Snippets:Enabled\";\nconst SNIPPETS_DISABLED_EVENT = \"Snippets:Disabled\";\n\nimport {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {initASRouter} from \"content-src/asrouter/asrouter-content\";\n\n/**\n * SnippetsMap - A utility for cacheing values related to the snippet. It has\n * the same interface as a Map, but is optionally backed by\n * indexedDB for persistent storage.\n * Call .connect() to open a database connection and restore any\n * previously cached data, if necessary.\n *\n */\nexport class SnippetsMap extends Map {\n constructor(dispatch) {\n super();\n this._db = null;\n this._dispatch = dispatch;\n }\n\n set(key, value) {\n super.set(key, value);\n return this._dbTransaction(db => db.put(value, key));\n }\n\n delete(key) {\n super.delete(key);\n return this._dbTransaction(db => db.delete(key));\n }\n\n clear() {\n super.clear();\n this._dispatch(ac.OnlyToMain({type: at.SNIPPETS_BLOCKLIST_CLEARED}));\n return this._dbTransaction(db => db.clear());\n }\n\n get blockList() {\n return this.get(\"blockList\") || [];\n }\n\n /**\n * blockSnippetById - Blocks a snippet given an id\n *\n * @param {str|int} id The id of the snippet\n * @return {Promise} Resolves when the id has been written to indexedDB,\n * or immediately if the snippetMap is not connected\n */\n async blockSnippetById(id) {\n if (!id) {\n return;\n }\n const {blockList} = this;\n if (!blockList.includes(id)) {\n blockList.push(id);\n this._dispatch(ac.AlsoToMain({type: at.SNIPPETS_BLOCKLIST_UPDATED, data: id}));\n await this.set(\"blockList\", blockList);\n }\n }\n\n disableOnboarding() {\n this._dispatch(ac.AlsoToMain({type: at.DISABLE_ONBOARDING}));\n }\n\n showFirefoxAccounts() {\n this._dispatch(ac.AlsoToMain({type: at.SHOW_FIREFOX_ACCOUNTS}));\n }\n\n getTotalBookmarksCount() {\n return new Promise(resolve => {\n this._dispatch(ac.OnlyToMain({type: at.TOTAL_BOOKMARKS_REQUEST}));\n global.addMessageListener(\"ActivityStream:MainToContent\", function onMessage({data: action}) {\n if (action.type === at.TOTAL_BOOKMARKS_RESPONSE) {\n resolve(action.data);\n global.removeMessageListener(\"ActivityStream:MainToContent\", onMessage);\n }\n });\n });\n }\n\n getAddonsInfo() {\n return new Promise(resolve => {\n this._dispatch(ac.OnlyToMain({type: at.ADDONS_INFO_REQUEST}));\n global.addMessageListener(\"ActivityStream:MainToContent\", function onMessage({data: action}) {\n if (action.type === at.ADDONS_INFO_RESPONSE) {\n resolve(action.data);\n global.removeMessageListener(\"ActivityStream:MainToContent\", onMessage);\n }\n });\n });\n }\n\n /**\n * connect - Attaches an indexedDB back-end to the Map so that any set values\n * are also cached in a store. It also restores any existing values\n * that are already stored in the indexedDB store.\n *\n * @return {type} description\n */\n async connect() {\n // Open the connection\n const db = await this._openDB();\n\n // Restore any existing values\n await this._restoreFromDb(db);\n\n // Attach a reference to the db\n this._db = db;\n }\n\n /**\n * _dbTransaction - Returns a db transaction wrapped with the given modifier\n * function as a Promise. If the db has not been connected,\n * it resolves immediately.\n *\n * @param {func} modifier A function to call with the transaction\n * @return {obj} A Promise that resolves when the transaction has\n * completed or errored\n */\n _dbTransaction(modifier) {\n if (!this._db) {\n return Promise.resolve();\n }\n return new Promise((resolve, reject) => {\n const transaction = modifier(\n this._db\n .transaction(SNIPPETS_OBJECTSTORE_NAME, \"readwrite\")\n .objectStore(SNIPPETS_OBJECTSTORE_NAME)\n );\n transaction.onsuccess = event => resolve();\n\n /* istanbul ignore next */\n transaction.onerror = event => reject(transaction.error);\n });\n }\n\n _openDB() {\n return new Promise((resolve, reject) => {\n const openRequest = indexedDB.open(DATABASE_NAME, DATABASE_VERSION);\n\n /* istanbul ignore next */\n openRequest.onerror = event => {\n // Try to delete the old database so that we can start this process over\n // next time.\n indexedDB.deleteDatabase(DATABASE_NAME);\n reject(event);\n };\n\n openRequest.onupgradeneeded = event => {\n const db = event.target.result;\n if (!db.objectStoreNames.contains(SNIPPETS_OBJECTSTORE_NAME)) {\n db.createObjectStore(SNIPPETS_OBJECTSTORE_NAME);\n }\n };\n\n openRequest.onsuccess = event => {\n let db = event.target.result;\n\n /* istanbul ignore next */\n db.onerror = err => console.error(err); // eslint-disable-line no-console\n /* istanbul ignore next */\n db.onversionchange = versionChangeEvent => versionChangeEvent.target.close();\n\n resolve(db);\n };\n });\n }\n\n _restoreFromDb(db) {\n return new Promise((resolve, reject) => {\n let cursorRequest;\n try {\n cursorRequest = db.transaction(SNIPPETS_OBJECTSTORE_NAME)\n .objectStore(SNIPPETS_OBJECTSTORE_NAME).openCursor();\n } catch (err) {\n // istanbul ignore next\n reject(err);\n // istanbul ignore next\n return;\n }\n\n /* istanbul ignore next */\n cursorRequest.onerror = event => reject(event);\n\n cursorRequest.onsuccess = event => {\n let cursor = event.target.result;\n // Populate the cache from the persistent storage.\n if (cursor) {\n if (cursor.value !== \"blockList\") {\n this.set(cursor.key, cursor.value);\n }\n cursor.continue();\n } else {\n // We are done.\n resolve();\n }\n };\n });\n }\n}\n\n/**\n * SnippetsProvider - Initializes a SnippetsMap and loads snippets from a\n * remote location, or else default snippets if the remote\n * snippets cannot be retrieved.\n */\nexport class SnippetsProvider {\n constructor(dispatch) {\n // Initialize the Snippets Map and attaches it to a global so that\n // the snippet payload can interact with it.\n global.gSnippetsMap = new SnippetsMap(dispatch);\n this._onAction = this._onAction.bind(this);\n }\n\n get snippetsMap() {\n return global.gSnippetsMap;\n }\n\n async _refreshSnippets() {\n // Check if the cached version of of the snippets in snippetsMap. If it's too\n // old, blow away the entire snippetsMap.\n const cachedVersion = this.snippetsMap.get(\"snippets-cached-version\");\n\n if (cachedVersion !== this.appData.version) {\n this.snippetsMap.clear();\n }\n\n // Has enough time passed for us to require an update?\n const lastUpdate = this.snippetsMap.get(\"snippets-last-update\");\n const needsUpdate = !(lastUpdate >= 0) || Date.now() - lastUpdate > SNIPPETS_UPDATE_INTERVAL_MS;\n\n if (needsUpdate && this.appData.snippetsURL) {\n this.snippetsMap.set(\"snippets-last-update\", Date.now());\n try {\n const response = await fetch(this.appData.snippetsURL);\n if (response.status === 200) {\n const payload = await response.text();\n\n this.snippetsMap.set(\"snippets\", payload);\n this.snippetsMap.set(\"snippets-cached-version\", this.appData.version);\n }\n } catch (e) {\n console.error(e); // eslint-disable-line no-console\n }\n }\n }\n\n _noSnippetFallback() {\n // TODO\n }\n\n _forceOnboardingVisibility(shouldBeVisible) {\n const onboardingEl = document.getElementById(\"onboarding-notification-bar\");\n\n if (onboardingEl) {\n onboardingEl.style.display = shouldBeVisible ? \"\" : \"none\";\n }\n }\n\n _showRemoteSnippets() {\n const snippetsEl = document.getElementById(this.elementId);\n const payload = this.snippetsMap.get(\"snippets\");\n\n if (!snippetsEl) {\n throw new Error(`No element was found with id '${this.elementId}'.`);\n }\n\n // This could happen if fetching failed\n if (!payload) {\n throw new Error(\"No remote snippets were found in gSnippetsMap.\");\n }\n\n if (typeof payload !== \"string\") {\n throw new Error(\"Snippet payload was incorrectly formatted\");\n }\n\n // Note that injecting snippets can throw if they're invalid XML.\n // eslint-disable-next-line no-unsanitized/property\n snippetsEl.innerHTML = payload;\n\n // Scripts injected by innerHTML are inactive, so we have to relocate them\n // through DOM manipulation to activate their contents.\n for (const scriptEl of snippetsEl.getElementsByTagName(\"script\")) {\n const relocatedScript = document.createElement(\"script\");\n relocatedScript.text = scriptEl.text;\n scriptEl.parentNode.replaceChild(relocatedScript, scriptEl);\n }\n }\n\n _onAction(msg) {\n if (msg.data.type === at.SNIPPET_BLOCKED) {\n if (!this.snippetsMap.blockList.includes(msg.data.data)) {\n this.snippetsMap.set(\"blockList\", this.snippetsMap.blockList.concat(msg.data.data));\n document.getElementById(\"snippets-container\").style.display = \"none\";\n }\n }\n }\n\n /**\n * init - Fetch the snippet payload and show snippets\n *\n * @param {obj} options\n * @param {str} options.appData.snippetsURL The URL from which we fetch snippets\n * @param {int} options.appData.version The current snippets version\n * @param {str} options.elementId The id of the element in which to inject snippets\n * @param {bool} options.connect Should gSnippetsMap connect to indexedDB?\n */\n async init(options) {\n Object.assign(this, {\n appData: {},\n elementId: \"snippets\",\n connect: true\n }, options);\n\n // Add listener so we know when snippets are blocked on other pages\n if (global.addMessageListener) {\n global.addMessageListener(\"ActivityStream:MainToContent\", this._onAction);\n }\n\n // TODO: Requires enabling indexedDB on newtab\n // Restore the snippets map from indexedDB\n if (this.connect) {\n try {\n await this.snippetsMap.connect();\n } catch (e) {\n console.error(e); // eslint-disable-line no-console\n }\n }\n\n // Cache app data values so they can be accessible from gSnippetsMap\n for (const key of Object.keys(this.appData)) {\n if (key === \"blockList\") {\n this.snippetsMap.set(\"blockList\", this.appData[key]);\n } else {\n this.snippetsMap.set(`appData.${key}`, this.appData[key]);\n }\n }\n\n // Refresh snippets, if enough time has passed.\n await this._refreshSnippets();\n\n // Try showing remote snippets, falling back to defaults if necessary.\n try {\n this._showRemoteSnippets();\n } catch (e) {\n this._noSnippetFallback(e);\n }\n\n window.dispatchEvent(new Event(SNIPPETS_ENABLED_EVENT));\n\n this._forceOnboardingVisibility(true);\n this.initialized = true;\n }\n\n uninit() {\n window.dispatchEvent(new Event(SNIPPETS_DISABLED_EVENT));\n this._forceOnboardingVisibility(false);\n if (global.removeMessageListener) {\n global.removeMessageListener(\"ActivityStream:MainToContent\", this._onAction);\n }\n this.initialized = false;\n }\n}\n\n/**\n * addSnippetsSubscriber - Creates a SnippetsProvider that Initializes\n * when the store has received the appropriate\n * Snippet data.\n *\n * @param {obj} store The redux store\n * @return {obj} Returns the snippets instance and unsubscribe function\n */\nexport function addSnippetsSubscriber(store) {\n const snippets = new SnippetsProvider(store.dispatch);\n\n let initializing = false;\n\n store.subscribe(async () => {\n const state = store.getState();\n // state.Prefs.values[\"feeds.snippets\"]: Should snippets be shown?\n // state.Snippets.initialized Is the snippets data initialized?\n // snippets.initialized: Is SnippetsProvider currently initialised?\n if (state.Prefs.values[\"feeds.snippets\"] &&\n // If the message center experiment is enabled, don't show snippets\n !state.Prefs.values.asrouterExperimentEnabled &&\n !state.Prefs.values.disableSnippets &&\n state.Snippets.initialized &&\n !snippets.initialized &&\n // Don't call init multiple times\n !initializing &&\n location.href !== \"about:welcome\"\n ) {\n initializing = true;\n await snippets.init({appData: state.Snippets});\n initializing = false;\n } else if (\n (state.Prefs.values[\"feeds.snippets\"] === false ||\n state.Prefs.values.disableSnippets === true) &&\n snippets.initialized\n ) {\n snippets.uninit();\n }\n\n if (state.Prefs.values.asrouterExperimentEnabled) {\n initASRouter();\n }\n });\n\n // These values are returned for testing purposes\n return snippets;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/snippets.js","module.exports = Redux;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"Redux\"\n// module id = 21\n// module chunks = 0","import React from \"react\";\n\nexport const VISIBLE = \"visible\";\nexport const VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\n\n/**\n * Component wrapper used to send telemetry pings on every impression.\n */\nexport class ImpressionsWrapper extends React.PureComponent {\n // This sends an event when a user sees a set of new content. If content\n // changes while the page is hidden (i.e. preloaded or on a hidden tab),\n // only send the event if the page becomes visible again.\n sendImpressionOrAddListener() {\n if (this.props.document.visibilityState === VISIBLE) {\n this.props.sendImpression();\n } else {\n // We should only ever send the latest impression stats ping, so remove any\n // older listeners.\n if (this._onVisibilityChange) {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n\n // When the page becomes visible, send the impression stats ping if the section isn't collapsed.\n this._onVisibilityChange = () => {\n if (this.props.document.visibilityState === VISIBLE) {\n this.props.sendImpression();\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n };\n this.props.document.addEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n componentWillUnmount() {\n if (this._onVisibilityChange) {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n componentDidMount() {\n if (this.props.sendOnMount) {\n this.sendImpressionOrAddListener();\n }\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.shouldSendImpressionOnUpdate(this.props, prevProps)) {\n this.sendImpressionOrAddListener();\n }\n }\n\n render() {\n return this.props.children;\n }\n}\n\nImpressionsWrapper.defaultProps = {\n document: global.document,\n sendOnMount: true\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/ImpressionsWrapper/ImpressionsWrapper.jsx","import React from \"react\";\n\nexport class ModalOverlay extends React.PureComponent {\n componentWillMount() {\n this.setState({active: true});\n document.body.classList.add(\"modal-open\");\n }\n\n componentWillUnmount() {\n document.body.classList.remove(\"modal-open\");\n this.setState({active: false});\n }\n\n render() {\n const {active} = this.state;\n const {title, button_label} = this.props;\n return (\n <div>\n <div className={`modalOverlayOuter ${active ? \"active\" : \"\"}`} />\n <div className={`modalOverlayInner ${active ? \"active\" : \"\"}`}>\n <h2> {title} </h2>\n {this.props.children}\n <div className=\"footer\">\n <button onClick={this.props.onDoneButton} className=\"button primary modalButton\"> {button_label} </button>\n </div>\n </div>\n </div>\n );\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/ModalOverlay/ModalOverlay.jsx","import {ModalOverlay} from \"../../components/ModalOverlay/ModalOverlay\";\nimport React from \"react\";\n\nclass OnboardingCard extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onClick = this.onClick.bind(this);\n }\n\n onClick() {\n const {props} = this;\n props.sendUserActionTelemetry({event: \"TRY_NOW\", message_id: props.id});\n props.onAction(props.content);\n }\n\n render() {\n const {content} = this.props;\n return (\n <div className=\"onboardingMessage\">\n <div className={`onboardingMessageImage ${content.icon}`} />\n <div className=\"onboardingContent\">\n <span>\n <h3> {content.title} </h3>\n <p> {content.text} </p>\n </span>\n <span>\n <button className=\"button onboardingButton\" onClick={this.onClick}> {content.button_label} </button>\n </span>\n </div>\n </div>\n );\n }\n}\n\nexport class OnboardingMessage extends React.PureComponent {\n render() {\n const {props} = this;\n return (\n <ModalOverlay {...props} button_label={\"Start Browsing\"} title={\"Welcome to Firefox\"}>\n <div className=\"onboardingMessageContainer\">\n {props.bundle.map(message => (\n <OnboardingCard key={message.id} sendUserActionTelemetry={props.sendUserActionTelemetry} onAction={props.onAction} {...message} />\n ))}\n </div>\n </ModalOverlay>\n );\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/templates/OnboardingMessage/OnboardingMessage.jsx","export function safeURI(url) {\n if (!url) {\n return \"\";\n }\n const {protocol} = new URL(url);\n const isAllowed = [\n \"http:\",\n \"https:\",\n \"data:\",\n \"resource:\",\n \"chrome:\"\n ].includes(protocol);\n if (!isAllowed) {\n console.warn(`The protocol ${protocol} is not allowed for template URLs.`); // eslint-disable-line no-console\n }\n return isAllowed ? url : \"\";\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/template-utils.js","import React from \"react\";\nimport {safeURI} from \"../../template-utils\";\n\nexport const Button = props => (<a href={safeURI(props.url)}\n onClick={props.onClick}\n className={props.className || \"ASRouterButton\"}>\n {props.children}\n</a>);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/Button/Button.jsx","import React from \"react\";\n\nexport class SnippetBase extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onBlockClicked = this.onBlockClicked.bind(this);\n }\n\n onBlockClicked() {\n this.props.sendUserActionTelemetry({event: \"BLOCK\"});\n this.props.onBlock();\n }\n\n render() {\n const {props} = this;\n\n const containerClassName = `SnippetBaseContainer${props.className ? ` ${props.className}` : \"\"}`;\n\n return (<div className={containerClassName}>\n <div className=\"innerWrapper\">\n {props.children}\n </div>\n <button className=\"blockButton\" onClick={this.onBlockClicked} />\n </div>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/components/SnippetBase/SnippetBase.jsx","import {Button} from \"../../components/Button/Button\";\nimport React from \"react\";\nimport {safeURI} from \"../../template-utils\";\nimport {SnippetBase} from \"../../components/SnippetBase/SnippetBase\";\n\nconst DEFAULT_ICON_PATH = \"chrome://branding/content/icon64.png\";\n\nexport class SimpleSnippet extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onButtonClick = this.onButtonClick.bind(this);\n }\n\n onButtonClick() {\n this.props.sendUserActionTelemetry({event: \"CLICK_BUTTON\"});\n }\n\n renderTitle() {\n const {title} = this.props.content;\n return title ? <h3 className=\"title\">{title}</h3> : null;\n }\n\n renderButton(className) {\n const {props} = this;\n return (<Button\n className={className}\n onClick={this.onButtonClick}\n url={props.content.button_url}>\n {props.content.button_label}\n </Button>);\n }\n\n render() {\n const {props} = this;\n const hasLink = props.content.button_url && props.content.button_type === \"anchor\";\n const hasButton = props.content.button_url && !props.content.button_type;\n return (<SnippetBase {...props} className=\"SimpleSnippet\">\n <img src={safeURI(props.content.icon) || DEFAULT_ICON_PATH} className=\"icon\" />\n <div>\n {this.renderTitle()} <p className=\"body\">{props.content.text}</p> {hasLink ? this.renderButton(\"ASRouterAnchor\") : null}\n </div>\n {hasButton ? <div>{this.renderButton()}</div> : null}\n </SnippetBase>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/asrouter/templates/SimpleSnippet/SimpleSnippet.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {addLocaleData, injectIntl, IntlProvider} from \"react-intl\";\nimport {ASRouterAdmin} from \"content-src/components/ASRouterAdmin/ASRouterAdmin\";\nimport {ConfirmDialog} from \"content-src/components/ConfirmDialog/ConfirmDialog\";\nimport {connect} from \"react-redux\";\nimport {ErrorBoundary} from \"content-src/components/ErrorBoundary/ErrorBoundary\";\nimport {ManualMigration} from \"content-src/components/ManualMigration/ManualMigration\";\nimport {PrerenderData} from \"common/PrerenderData.jsm\";\nimport React from \"react\";\nimport {Search} from \"content-src/components/Search/Search\";\nimport {Sections} from \"content-src/components/Sections/Sections\";\nimport {StartupOverlay} from \"content-src/components/StartupOverlay/StartupOverlay\";\n\nconst PrefsButton = injectIntl(props => (\n <div className=\"prefs-button\">\n <button className=\"icon icon-settings\" onClick={props.onClick} title={props.intl.formatMessage({id: \"settings_pane_button_label\"})} />\n </div>\n));\n\n// Add the locale data for pluralization and relative-time formatting for now,\n// this just uses english locale data. We can make this more sophisticated if\n// more features are needed.\nfunction addLocaleDataForReactIntl(locale) {\n addLocaleData([{locale, parentLocale: \"en\"}]);\n}\n\nexport class _Base extends React.PureComponent {\n componentWillMount() {\n const {App, locale, Theme} = this.props;\n if (Theme.className) {\n this.updateTheme(Theme);\n }\n this.sendNewTabRehydrated(App);\n addLocaleDataForReactIntl(locale);\n }\n\n componentDidMount() {\n // Request state AFTER the first render to ensure we don't cause the\n // prerendered DOM to be unmounted. Otherwise, NEW_TAB_STATE_REQUEST is\n // dispatched right after the store is ready.\n if (this.props.isPrerendered) {\n this.props.dispatch(ac.AlsoToMain({type: at.NEW_TAB_STATE_REQUEST}));\n this.props.dispatch(ac.AlsoToMain({type: at.PAGE_PRERENDERED}));\n }\n }\n\n componentWillUnmount() {\n this.updateTheme({className: \"\"});\n }\n\n componentWillUpdate({App, Theme}) {\n this.updateTheme(Theme);\n this.sendNewTabRehydrated(App);\n }\n\n updateTheme(Theme) {\n const bodyClassName = [\n \"activity-stream\",\n Theme.className,\n this.props.isFirstrun ? \"welcome\" : \"\"\n ].filter(v => v).join(\" \");\n global.document.body.className = bodyClassName;\n }\n\n // The NEW_TAB_REHYDRATED event is used to inform feeds that their\n // data has been consumed e.g. for counting the number of tabs that\n // have rendered that data.\n sendNewTabRehydrated(App) {\n if (App && App.initialized && !this.renderNotified) {\n this.props.dispatch(ac.AlsoToMain({type: at.NEW_TAB_REHYDRATED, data: {}}));\n this.renderNotified = true;\n }\n }\n\n render() {\n const {props} = this;\n const {App, locale, strings} = props;\n const {initialized} = App;\n\n if (props.Prefs.values.asrouterExperimentEnabled && window.location.hash === \"#asrouter\") {\n return (<ASRouterAdmin />);\n }\n\n if (!props.isPrerendered && !initialized) {\n return null;\n }\n\n return (<IntlProvider locale={locale} messages={strings}>\n <ErrorBoundary className=\"base-content-fallback\">\n <BaseContent {...this.props} />\n </ErrorBoundary>\n </IntlProvider>);\n }\n}\n\nexport class BaseContent extends React.PureComponent {\n constructor(props) {\n super(props);\n this.openPreferences = this.openPreferences.bind(this);\n }\n\n openPreferences() {\n this.props.dispatch(ac.OnlyToMain({type: at.SETTINGS_OPEN}));\n this.props.dispatch(ac.UserEvent({event: \"OPEN_NEWTAB_PREFS\"}));\n }\n\n render() {\n const {props} = this;\n const {App} = props;\n const {initialized} = App;\n const prefs = props.Prefs.values;\n\n const shouldBeFixedToTop = PrerenderData.arePrefsValid(name => prefs[name]);\n\n const outerClassName = [\n \"outer-wrapper\",\n shouldBeFixedToTop && \"fixed-to-top\"\n ].filter(v => v).join(\" \");\n\n return (\n <div>\n <div className={outerClassName}>\n <main>\n {prefs.showSearch &&\n <div className=\"non-collapsible-section\">\n <ErrorBoundary>\n <Search />\n </ErrorBoundary>\n </div>\n }\n <div className={`body-wrapper${(initialized ? \" on\" : \"\")}`}>\n {!prefs.migrationExpired &&\n <div className=\"non-collapsible-section\">\n <ManualMigration />\n </div>\n }\n <Sections />\n <PrefsButton onClick={this.openPreferences} />\n </div>\n <ConfirmDialog />\n </main>\n </div>\n {this.props.isFirstrun && <StartupOverlay />}\n </div>);\n }\n}\n\nexport const Base = connect(state => ({App: state.App, Prefs: state.Prefs, Theme: state.Theme}))(_Base);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Base/Base.jsx","import {ASRouterUtils} from \"../../asrouter/asrouter-content\";\nimport React from \"react\";\n\nexport class ASRouterAdmin extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onMessage = this.onMessage.bind(this);\n this.findOtherBundledMessagesOfSameTemplate = this.findOtherBundledMessagesOfSameTemplate.bind(this);\n this.state = {};\n }\n\n onMessage({data: action}) {\n if (action.type === \"ADMIN_SET_STATE\") {\n this.setState(action.data);\n }\n }\n\n componentWillMount() {\n ASRouterUtils.sendMessage({type: \"ADMIN_CONNECT_STATE\"});\n ASRouterUtils.addListener(this.onMessage);\n }\n\n componentWillUnmount() {\n ASRouterUtils.removeListener(this.onMessage);\n }\n\n findOtherBundledMessagesOfSameTemplate(template) {\n return this.state.messages.filter(msg => msg.template === template && msg.bundled);\n }\n\n handleBlock(msg) {\n if (msg.bundled) {\n // If we are blocking a message that belongs to a bundle, block all other messages that are bundled of that same template\n let bundle = this.findOtherBundledMessagesOfSameTemplate(msg.template);\n return () => ASRouterUtils.blockBundle(bundle);\n }\n return () => ASRouterUtils.blockById(msg.id);\n }\n\n handleUnblock(msg) {\n if (msg.bundled) {\n // If we are unblocking a message that belongs to a bundle, unblock all other messages that are bundled of that same template\n let bundle = this.findOtherBundledMessagesOfSameTemplate(msg.template);\n return () => ASRouterUtils.unblockBundle(bundle);\n }\n return () => ASRouterUtils.unblockById(msg.id);\n }\n\n handleOverride(id) {\n return () => ASRouterUtils.overrideMessage(id);\n }\n\n renderMessageItem(msg) {\n const isCurrent = msg.id === this.state.lastMessageId;\n const isBlocked = this.state.blockList.includes(msg.id);\n\n let itemClassName = \"message-item\";\n if (isCurrent) { itemClassName += \" current\"; }\n if (isBlocked) { itemClassName += \" blocked\"; }\n\n return (<tr className={itemClassName} key={msg.id}>\n <td className=\"message-id\"><span>{msg.id}</span></td>\n <td>\n <button className={`button ${(isBlocked ? \"\" : \" primary\")}`} onClick={isBlocked ? this.handleUnblock(msg) : this.handleBlock(msg)}>{isBlocked ? \"Unblock\" : \"Block\"}</button>\n {isBlocked ? null : <button className=\"button\" onClick={this.handleOverride(msg.id)}>Show</button>}\n </td>\n <td className=\"message-summary\">\n <pre>{JSON.stringify(msg, null, 2)}</pre>\n </td>\n </tr>);\n }\n\n renderMessages() {\n if (!this.state.messages) {\n return null;\n }\n return (<table><tbody>\n {this.state.messages.map(msg => this.renderMessageItem(msg))}\n </tbody></table>);\n }\n\n renderProviders() {\n return (<table><tbody>\n {this.state.providers.map((provider, i) => (<tr className=\"message-item\" key={i}>\n <td>{provider.id}</td>\n <td>{provider.type === \"remote\" ? <a target=\"_blank\" href={provider.url}>{provider.url}</a> : \"(local)\"}</td>\n </tr>))}\n </tbody></table>);\n }\n\n render() {\n return (<div className=\"asrouter-admin outer-wrapper\">\n <h1>AS Router Admin</h1>\n <button className=\"button primary\" onClick={ASRouterUtils.getNextMessage}>Refresh Current Message</button>\n <h2>Message Providers</h2>\n {this.state.providers ? this.renderProviders() : null}\n <h2>Messages</h2>\n {this.renderMessages()}\n </div>);\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx","import {actionCreators as ac, actionTypes} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\n/**\n * ConfirmDialog component.\n * One primary action button, one cancel button.\n *\n * Content displayed is controlled by `data` prop the component receives.\n * Example:\n * data: {\n * // Any sort of data needed to be passed around by actions.\n * payload: site.url,\n * // Primary button AlsoToMain action.\n * action: \"DELETE_HISTORY_URL\",\n * // Primary button USerEvent action.\n * userEvent: \"DELETE\",\n * // Array of locale ids to display.\n * message_body: [\"confirm_history_delete_p1\", \"confirm_history_delete_notice_p2\"],\n * // Text for primary button.\n * confirm_button_string_id: \"menu_action_delete\"\n * },\n */\nexport class _ConfirmDialog extends React.PureComponent {\n constructor(props) {\n super(props);\n this._handleCancelBtn = this._handleCancelBtn.bind(this);\n this._handleConfirmBtn = this._handleConfirmBtn.bind(this);\n }\n\n _handleCancelBtn() {\n this.props.dispatch({type: actionTypes.DIALOG_CANCEL});\n this.props.dispatch(ac.UserEvent({event: actionTypes.DIALOG_CANCEL, source: this.props.data.eventSource}));\n }\n\n _handleConfirmBtn() {\n this.props.data.onConfirm.forEach(this.props.dispatch);\n }\n\n _renderModalMessage() {\n const message_body = this.props.data.body_string_id;\n\n if (!message_body) {\n return null;\n }\n\n return (<span>\n {message_body.map(msg => <p key={msg}><FormattedMessage id={msg} /></p>)}\n </span>);\n }\n\n render() {\n if (!this.props.visible) {\n return null;\n }\n\n return (<div className=\"confirmation-dialog\">\n <div className=\"modal-overlay\" onClick={this._handleCancelBtn} />\n <div className=\"modal\">\n <section className=\"modal-message\">\n {this.props.data.icon && <span className={`icon icon-spacer icon-${this.props.data.icon}`} />}\n {this._renderModalMessage()}\n </section>\n <section className=\"actions\">\n <button onClick={this._handleCancelBtn}>\n <FormattedMessage id={this.props.data.cancel_button_string_id} />\n </button>\n <button className=\"done\" onClick={this._handleConfirmBtn}>\n <FormattedMessage id={this.props.data.confirm_button_string_id} />\n </button>\n </section>\n </div>\n </div>);\n }\n}\n\nexport const ConfirmDialog = connect(state => state.Dialog)(_ConfirmDialog);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ConfirmDialog/ConfirmDialog.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\n/**\n * Manual migration component used to start the profile import wizard.\n * Message is presented temporarily and will go away if:\n * 1. User clicks \"No Thanks\"\n * 2. User completed the data import\n * 3. After 3 active days\n * 4. User clicks \"Cancel\" on the import wizard (currently not implemented).\n */\nexport class _ManualMigration extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onLaunchTour = this.onLaunchTour.bind(this);\n this.onCancelTour = this.onCancelTour.bind(this);\n }\n\n onLaunchTour() {\n this.props.dispatch(ac.AlsoToMain({type: at.MIGRATION_START}));\n this.props.dispatch(ac.UserEvent({event: at.MIGRATION_START}));\n }\n\n onCancelTour() {\n this.props.dispatch(ac.AlsoToMain({type: at.MIGRATION_CANCEL}));\n this.props.dispatch(ac.UserEvent({event: at.MIGRATION_CANCEL}));\n }\n\n render() {\n return (<div className=\"manual-migration-container\">\n <p>\n <span className=\"icon icon-import\" />\n <FormattedMessage id=\"manual_migration_explanation2\" />\n </p>\n <div className=\"manual-migration-actions actions\">\n <button className=\"dismiss\" onClick={this.onCancelTour}>\n <FormattedMessage id=\"manual_migration_cancel_button\" />\n </button>\n <button onClick={this.onLaunchTour}>\n <FormattedMessage id=\"manual_migration_import_button\" />\n </button>\n </div>\n </div>);\n }\n}\n\nexport const ManualMigration = connect()(_ManualMigration);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/ManualMigration/ManualMigration.jsx","class _PrerenderData {\n constructor(options) {\n this.initialPrefs = options.initialPrefs;\n this.initialSections = options.initialSections;\n this._setValidation(options.validation);\n }\n\n get validation() {\n return this._validation;\n }\n\n set validation(value) {\n this._setValidation(value);\n }\n\n get invalidatingPrefs() {\n return this._invalidatingPrefs;\n }\n\n // This is needed so we can use it in the constructor\n _setValidation(value = []) {\n this._validation = value;\n this._invalidatingPrefs = value.reduce((result, next) => {\n if (typeof next === \"string\") {\n result.push(next);\n return result;\n } else if (next && next.oneOf) {\n return result.concat(next.oneOf);\n } else if (next && next.indexedDB) {\n return result.concat(next.indexedDB);\n }\n throw new Error(\"Your validation configuration is not properly configured\");\n }, []);\n }\n\n arePrefsValid(getPref, indexedDBPrefs) {\n for (const prefs of this.validation) {\n // {oneOf: [\"foo\", \"bar\"]}\n if (prefs && prefs.oneOf && !prefs.oneOf.some(name => getPref(name) === this.initialPrefs[name])) {\n return false;\n\n // {indexedDB: [\"foo\", \"bar\"]}\n } else if (indexedDBPrefs && prefs && prefs.indexedDB) {\n const anyModifiedPrefs = prefs.indexedDB.some(prefName => indexedDBPrefs.some(pref => pref && pref[prefName]));\n if (anyModifiedPrefs) {\n return false;\n }\n // \"foo\"\n } else if (getPref(prefs) !== this.initialPrefs[prefs]) {\n return false;\n }\n }\n return true;\n }\n}\n\nthis.PrerenderData = new _PrerenderData({\n initialPrefs: {\n \"migrationExpired\": true,\n \"feeds.topsites\": true,\n \"showSearch\": true,\n \"topSitesRows\": 1,\n \"feeds.section.topstories\": true,\n \"feeds.section.highlights\": true,\n \"sectionOrder\": \"topsites,topstories,highlights\",\n \"collapsed\": false\n },\n // Prefs listed as invalidating will prevent the prerendered version\n // of AS from being used if their value is something other than what is listed\n // here. This is required because some preferences cause the page layout to be\n // too different for the prerendered version to be used. Unfortunately, this\n // will result in users who have modified some of their preferences not being\n // able to get the benefits of prerendering.\n validation: [\n \"feeds.topsites\",\n \"showSearch\",\n \"topSitesRows\",\n \"sectionOrder\",\n // This means if either of these are set to their default values,\n // prerendering can be used.\n {oneOf: [\"feeds.section.topstories\", \"feeds.section.highlights\"]},\n // If any component has the following preference set to `true` it will\n // invalidate the prerendered version.\n {indexedDB: [\"collapsed\"]}\n ],\n initialSections: [\n {\n enabled: true,\n icon: \"pocket\",\n id: \"topstories\",\n order: 1,\n title: {id: \"header_recommended_by\", values: {provider: \"Pocket\"}}\n },\n {\n enabled: true,\n id: \"highlights\",\n icon: \"highlights\",\n order: 2,\n title: {id: \"header_highlights\"}\n }\n ]\n});\n\nthis._PrerenderData = _PrerenderData;\nconst EXPORTED_SYMBOLS = [\"PrerenderData\", \"_PrerenderData\"];\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/common/PrerenderData.jsm","/* globals ContentSearchUIController */\n\"use strict\";\n\nimport {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport {IS_NEWTAB} from \"content-src/lib/constants\";\nimport React from \"react\";\n\nexport class _Search extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onClick = this.onClick.bind(this);\n this.onInputMount = this.onInputMount.bind(this);\n }\n\n handleEvent(event) {\n // Also track search events with our own telemetry\n if (event.detail.type === \"Search\") {\n this.props.dispatch(ac.UserEvent({event: \"SEARCH\"}));\n }\n }\n\n onClick(event) {\n window.gContentSearchController.search(event);\n }\n\n componentWillUnmount() {\n delete window.gContentSearchController;\n }\n\n onInputMount(input) {\n if (input) {\n // The \"healthReportKey\" and needs to be \"newtab\" or \"abouthome\" so that\n // BrowserUsageTelemetry.jsm knows to handle events with this name, and\n // can add the appropriate telemetry probes for search. Without the correct\n // name, certain tests like browser_UsageTelemetry_content.js will fail\n // (See github ticket #2348 for more details)\n const healthReportKey = IS_NEWTAB ? \"newtab\" : \"abouthome\";\n\n // The \"searchSource\" needs to be \"newtab\" or \"homepage\" and is sent with\n // the search data and acts as context for the search request (See\n // nsISearchEngine.getSubmission). It is necessary so that search engine\n // plugins can correctly atribute referrals. (See github ticket #3321 for\n // more details)\n const searchSource = IS_NEWTAB ? \"newtab\" : \"homepage\";\n\n // gContentSearchController needs to exist as a global so that tests for\n // the existing about:home can find it; and so it allows these tests to pass.\n // In the future, when activity stream is default about:home, this can be renamed\n window.gContentSearchController = new ContentSearchUIController(input, input.parentNode,\n healthReportKey, searchSource);\n addEventListener(\"ContentSearchClient\", this);\n } else {\n window.gContentSearchController = null;\n removeEventListener(\"ContentSearchClient\", this);\n }\n }\n\n /*\n * Do not change the ID on the input field, as legacy newtab code\n * specifically looks for the id 'newtab-search-text' on input fields\n * in order to execute searches in various tests\n */\n render() {\n return (<div className=\"search-wrapper\">\n <label htmlFor=\"newtab-search-text\" className=\"search-label\">\n <span className=\"sr-only\"><FormattedMessage id=\"search_web_placeholder\" /></span>\n </label>\n <input\n id=\"newtab-search-text\"\n maxLength=\"256\"\n placeholder={this.props.intl.formatMessage({id: \"search_web_placeholder\"})}\n ref={this.onInputMount}\n title={this.props.intl.formatMessage({id: \"search_web_placeholder\"})}\n type=\"search\" />\n <button\n id=\"searchSubmit\"\n className=\"search-button\"\n onClick={this.onClick}\n title={this.props.intl.formatMessage({id: \"search_button\"})}>\n <span className=\"sr-only\"><FormattedMessage id=\"search_button\" /></span>\n </button>\n </div>);\n }\n}\n\nexport const Search = connect()(injectIntl(_Search));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Search/Search.jsx","export const IS_NEWTAB = global.document && global.document.documentURI === \"about:newtab\";\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/constants.js","import {Card, PlaceholderCard} from \"content-src/components/Card/Card\";\nimport {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {CollapsibleSection} from \"content-src/components/CollapsibleSection/CollapsibleSection\";\nimport {ComponentPerfTimer} from \"content-src/components/ComponentPerfTimer/ComponentPerfTimer\";\nimport {connect} from \"react-redux\";\nimport React from \"react\";\nimport {Topics} from \"content-src/components/Topics/Topics\";\nimport {TopSites} from \"content-src/components/TopSites/TopSites\";\n\nconst VISIBLE = \"visible\";\nconst VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\nconst CARDS_PER_ROW_DEFAULT = 3;\nconst CARDS_PER_ROW_COMPACT_WIDE = 4;\n\nfunction getFormattedMessage(message) {\n return typeof message === \"string\" ? <span>{message}</span> : <FormattedMessage {...message} />;\n}\n\nexport class Section extends React.PureComponent {\n _dispatchImpressionStats() {\n const {props} = this;\n let cardsPerRow = CARDS_PER_ROW_DEFAULT;\n if (props.compactCards && global.matchMedia(`(min-width: 1072px)`).matches) {\n // If the section has compact cards and the viewport is wide enough, we show\n // 4 columns instead of 3.\n // $break-point-widest = 1072px (from _variables.scss)\n cardsPerRow = CARDS_PER_ROW_COMPACT_WIDE;\n }\n const maxCards = cardsPerRow * props.maxRows;\n const cards = props.rows.slice(0, maxCards);\n\n if (this.needsImpressionStats(cards)) {\n props.dispatch(ac.ImpressionStats({\n source: props.eventSource,\n tiles: cards.map(link => ({id: link.guid}))\n }));\n this.impressionCardGuids = cards.map(link => link.guid);\n }\n }\n\n // This sends an event when a user sees a set of new content. If content\n // changes while the page is hidden (i.e. preloaded or on a hidden tab),\n // only send the event if the page becomes visible again.\n sendImpressionStatsOrAddListener() {\n const {props} = this;\n\n if (!props.shouldSendImpressionStats || !props.dispatch) {\n return;\n }\n\n if (props.document.visibilityState === VISIBLE) {\n this._dispatchImpressionStats();\n } else {\n // We should only ever send the latest impression stats ping, so remove any\n // older listeners.\n if (this._onVisibilityChange) {\n props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n\n // When the page becomes visible, send the impression stats ping if the section isn't collapsed.\n this._onVisibilityChange = () => {\n if (props.document.visibilityState === VISIBLE) {\n if (!this.props.pref.collapsed) {\n this._dispatchImpressionStats();\n }\n props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n };\n props.document.addEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n componentDidMount() {\n if (this.props.rows.length && !this.props.pref.collapsed) {\n this.sendImpressionStatsOrAddListener();\n }\n }\n\n componentDidUpdate(prevProps) {\n const {props} = this;\n const isCollapsed = props.pref.collapsed;\n const wasCollapsed = prevProps.pref.collapsed;\n if (\n // Don't send impression stats for the empty state\n props.rows.length &&\n (\n // We only want to send impression stats if the content of the cards has changed\n // and the section is not collapsed...\n (props.rows !== prevProps.rows && !isCollapsed) ||\n // or if we are expanding a section that was collapsed.\n (wasCollapsed && !isCollapsed)\n )\n ) {\n this.sendImpressionStatsOrAddListener();\n }\n }\n\n componentWillUnmount() {\n if (this._onVisibilityChange) {\n this.props.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n needsImpressionStats(cards) {\n if (!this.impressionCardGuids || (this.impressionCardGuids.length !== cards.length)) {\n return true;\n }\n\n for (let i = 0; i < cards.length; i++) {\n if (cards[i].guid !== this.impressionCardGuids[i]) {\n return true;\n }\n }\n\n return false;\n }\n\n render() {\n const {\n id, eventSource, title, icon, rows,\n emptyState, dispatch, compactCards, maxRows,\n contextMenuOptions, initialized, disclaimer,\n pref, privacyNoticeURL, isFirst, isLast\n } = this.props;\n\n const maxCardsPerRow = compactCards ? CARDS_PER_ROW_COMPACT_WIDE : CARDS_PER_ROW_DEFAULT;\n const maxCards = maxCardsPerRow * maxRows;\n const maxCardsOnNarrow = CARDS_PER_ROW_DEFAULT * maxRows;\n\n // Show topics only for top stories and if it's not initialized yet (so\n // content doesn't shift when it is loaded) or has loaded with topics\n const shouldShowTopics = (id === \"topstories\" &&\n (!this.props.topics || this.props.topics.length > 0));\n\n const realRows = rows.slice(0, maxCards);\n\n // The empty state should only be shown after we have initialized and there is no content.\n // Otherwise, we should show placeholders.\n const shouldShowEmptyState = initialized && !rows.length;\n\n const cards = [];\n if (!shouldShowEmptyState) {\n for (let i = 0; i < maxCards; i++) {\n const link = realRows[i];\n // On narrow viewports, we only show 3 cards per row. We'll mark the rest as\n // .hide-for-narrow to hide in CSS via @media query.\n const className = (i >= maxCardsOnNarrow) ? \"hide-for-narrow\" : \"\";\n cards.push(link ? (\n <Card key={i}\n index={i}\n className={className}\n dispatch={dispatch}\n link={link}\n contextMenuOptions={contextMenuOptions}\n eventSource={eventSource}\n shouldSendImpressionStats={this.props.shouldSendImpressionStats}\n isWebExtension={this.props.isWebExtension} />\n ) : (\n <PlaceholderCard key={i} className={className} />\n ));\n }\n }\n\n const sectionClassName = [\n \"section\",\n compactCards ? \"compact-cards\" : \"normal-cards\"\n ].join(\" \");\n\n // <Section> <-- React component\n // <section> <-- HTML5 element\n return (<ComponentPerfTimer {...this.props}>\n <CollapsibleSection className={sectionClassName} icon={icon}\n title={title}\n id={id}\n eventSource={eventSource}\n disclaimer={disclaimer}\n collapsed={this.props.pref.collapsed}\n showPrefName={(pref && pref.feed) || id}\n privacyNoticeURL={privacyNoticeURL}\n Prefs={this.props.Prefs}\n isFirst={isFirst}\n isLast={isLast}\n dispatch={this.props.dispatch}\n isWebExtension={this.props.isWebExtension}>\n\n {!shouldShowEmptyState && (<ul className=\"section-list\" style={{padding: 0}}>\n {cards}\n </ul>)}\n {shouldShowEmptyState &&\n <div className=\"section-empty-state\">\n <div className=\"empty-state\">\n {emptyState.icon && emptyState.icon.startsWith(\"moz-extension://\") ?\n <img className=\"empty-state-icon icon\" style={{\"background-image\": `url('${emptyState.icon}')`}} /> :\n <img className={`empty-state-icon icon icon-${emptyState.icon}`} />}\n <p className=\"empty-state-message\">\n {getFormattedMessage(emptyState.message)}\n </p>\n </div>\n </div>}\n {shouldShowTopics && <Topics topics={this.props.topics} read_more_endpoint={this.props.read_more_endpoint} />}\n </CollapsibleSection>\n </ComponentPerfTimer>);\n }\n}\n\nSection.defaultProps = {\n document: global.document,\n rows: [],\n emptyState: {},\n pref: {},\n title: \"\"\n};\n\nexport const SectionIntl = connect(state => ({Prefs: state.Prefs}))(injectIntl(Section));\n\nexport class _Sections extends React.PureComponent {\n renderSections() {\n const sections = [];\n const enabledSections = this.props.Sections.filter(section => section.enabled);\n const {sectionOrder, \"feeds.topsites\": showTopSites} = this.props.Prefs.values;\n // Enabled sections doesn't include Top Sites, so we add it if enabled.\n const expectedCount = enabledSections.length + ~~showTopSites;\n\n for (const sectionId of sectionOrder.split(\",\")) {\n const commonProps = {\n key: sectionId,\n isFirst: sections.length === 0,\n isLast: sections.length === expectedCount - 1\n };\n if (sectionId === \"topsites\" && showTopSites) {\n sections.push(<TopSites {...commonProps} />);\n } else {\n const section = enabledSections.find(s => s.id === sectionId);\n if (section) {\n sections.push(<SectionIntl {...section} {...commonProps} />);\n }\n }\n }\n return sections;\n }\n\n render() {\n return (\n <div className=\"sections-list\">\n {this.renderSections()}\n </div>\n );\n }\n}\n\nexport const Sections = connect(state => ({Sections: state.Sections, Prefs: state.Prefs}))(_Sections);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Sections/Sections.jsx","export const cardContextTypes = {\n history: {\n intlID: \"type_label_visited\",\n icon: \"history-item\"\n },\n bookmark: {\n intlID: \"type_label_bookmarked\",\n icon: \"bookmark-added\"\n },\n trending: {\n intlID: \"type_label_recommended\",\n icon: \"trending\"\n },\n now: {\n intlID: \"type_label_now\",\n icon: \"now\"\n },\n pocket: {\n intlID: \"type_label_pocket\",\n icon: \"pocket\"\n },\n download: {\n intlID: \"type_label_downloaded\",\n icon: \"download\"\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Card/types.js","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {cardContextTypes} from \"./types\";\nimport {connect} from \"react-redux\";\nimport {FormattedMessage} from \"react-intl\";\nimport {GetPlatformString} from \"content-src/lib/link-menu-options\";\nimport {LinkMenu} from \"content-src/components/LinkMenu/LinkMenu\";\nimport React from \"react\";\n\n// Keep track of pending image loads to only request once\nconst gImageLoading = new Map();\n\n/**\n * Card component.\n * Cards are found within a Section component and contain information about a link such\n * as preview image, page title, page description, and some context about if the page\n * was visited, bookmarked, trending etc...\n * Each Section can make an unordered list of Cards which will create one instane of\n * this class. Each card will then get a context menu which reflects the actions that\n * can be done on this Card.\n */\nexport class _Card extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {\n activeCard: null,\n imageLoaded: false,\n showContextMenu: false\n };\n this.onMenuButtonClick = this.onMenuButtonClick.bind(this);\n this.onMenuUpdate = this.onMenuUpdate.bind(this);\n this.onLinkClick = this.onLinkClick.bind(this);\n }\n\n /**\n * Helper to conditionally load an image and update state when it loads.\n */\n async maybeLoadImage() {\n // No need to load if it's already loaded or no image\n const {image} = this.props.link;\n if (!this.state.imageLoaded && image) {\n // Initialize a promise to share a load across multiple card updates\n if (!gImageLoading.has(image)) {\n const loaderPromise = new Promise((resolve, reject) => {\n const loader = new Image();\n loader.addEventListener(\"load\", resolve);\n loader.addEventListener(\"error\", reject);\n loader.src = image;\n });\n\n // Save and remove the promise only while it's pending\n gImageLoading.set(image, loaderPromise);\n loaderPromise.catch(ex => ex).then(() => gImageLoading.delete(image)).catch();\n }\n\n // Wait for the image whether just started loading or reused promise\n await gImageLoading.get(image);\n\n // Only update state if we're still waiting to load the original image\n if (this.props.link.image === image && !this.state.imageLoaded) {\n this.setState({imageLoaded: true});\n }\n }\n }\n\n onMenuButtonClick(event) {\n event.preventDefault();\n this.setState({\n activeCard: this.props.index,\n showContextMenu: true\n });\n }\n\n /**\n * Report to telemetry additional information about the item.\n */\n _getTelemetryInfo() {\n // Filter out \"history\" type for being the default\n if (this.props.link.type !== \"history\") {\n return {value: {card_type: this.props.link.type}};\n }\n\n return null;\n }\n\n onLinkClick(event) {\n event.preventDefault();\n if (this.props.link.type === \"download\") {\n this.props.dispatch(ac.OnlyToMain({\n type: at.SHOW_DOWNLOAD_FILE,\n data: this.props.link\n }));\n } else {\n const {altKey, button, ctrlKey, metaKey, shiftKey} = event;\n this.props.dispatch(ac.OnlyToMain({\n type: at.OPEN_LINK,\n data: Object.assign(this.props.link, {event: {altKey, button, ctrlKey, metaKey, shiftKey}})\n }));\n }\n if (this.props.isWebExtension) {\n this.props.dispatch(ac.WebExtEvent(at.WEBEXT_CLICK, {\n source: this.props.eventSource,\n url: this.props.link.url,\n action_position: this.props.index\n }));\n } else {\n this.props.dispatch(ac.UserEvent(Object.assign({\n event: \"CLICK\",\n source: this.props.eventSource,\n action_position: this.props.index\n }, this._getTelemetryInfo())));\n\n if (this.props.shouldSendImpressionStats) {\n this.props.dispatch(ac.ImpressionStats({\n source: this.props.eventSource,\n click: 0,\n tiles: [{id: this.props.link.guid, pos: this.props.index}]\n }));\n }\n }\n }\n\n onMenuUpdate(showContextMenu) {\n this.setState({showContextMenu});\n }\n\n componentDidMount() {\n this.maybeLoadImage();\n }\n\n componentDidUpdate() {\n this.maybeLoadImage();\n }\n\n componentWillReceiveProps(nextProps) {\n // Clear the image state if changing images\n if (nextProps.link.image !== this.props.link.image) {\n this.setState({imageLoaded: false});\n }\n }\n\n render() {\n const {index, className, link, dispatch, contextMenuOptions, eventSource, shouldSendImpressionStats} = this.props;\n const {props} = this;\n const isContextMenuOpen = this.state.showContextMenu && this.state.activeCard === index;\n // Display \"now\" as \"trending\" until we have new strings #3402\n const {icon, intlID} = cardContextTypes[link.type === \"now\" ? \"trending\" : link.type] || {};\n const hasImage = link.image || link.hasImage;\n const imageStyle = {backgroundImage: link.image ? `url(${link.image})` : \"none\"};\n const outerClassName = [\n \"card-outer\",\n className,\n isContextMenuOpen && \"active\",\n props.placeholder && \"placeholder\"\n ].filter(v => v).join(\" \");\n\n return (<li className={outerClassName}>\n <a href={link.type === \"pocket\" ? link.open_url : link.url} onClick={!props.placeholder ? this.onLinkClick : undefined}>\n <div className=\"card\">\n <div className=\"card-preview-image-outer\">\n {hasImage &&\n <div className={`card-preview-image${this.state.imageLoaded ? \" loaded\" : \"\"}`} style={imageStyle} />\n }\n </div>\n <div className=\"card-details\">\n {link.type === \"download\" && <div className=\"card-host-name alternate\"><FormattedMessage id={GetPlatformString(this.props.platform)} /></div>}\n {link.hostname &&\n <div className=\"card-host-name\">\n {link.hostname}{link.type === \"download\" && ` \\u2014 ${link.description}`}\n </div>\n }\n <div className={[\n \"card-text\",\n icon ? \"\" : \"no-context\",\n link.description ? \"\" : \"no-description\",\n link.hostname ? \"\" : \"no-host-name\"\n ].join(\" \")}>\n <h4 className=\"card-title\" dir=\"auto\">{link.title}</h4>\n <p className=\"card-description\" dir=\"auto\">{link.description}</p>\n </div>\n <div className=\"card-context\">\n {icon && !link.context && <span className={`card-context-icon icon icon-${icon}`} />}\n {link.icon && link.context && <span className=\"card-context-icon icon\" style={{backgroundImage: `url('${link.icon}')`}} />}\n {intlID && !link.context && <div className=\"card-context-label\"><FormattedMessage id={intlID} defaultMessage=\"Visited\" /></div>}\n {link.context && <div className=\"card-context-label\">{link.context}</div>}\n </div>\n </div>\n </div>\n </a>\n {!props.placeholder && <button className=\"context-menu-button icon\"\n onClick={this.onMenuButtonClick}>\n <span className=\"sr-only\">{`Open context menu for ${link.title}`}</span>\n </button>}\n {isContextMenuOpen &&\n <LinkMenu\n dispatch={dispatch}\n index={index}\n source={eventSource}\n onUpdate={this.onMenuUpdate}\n options={link.contextMenuOptions || contextMenuOptions}\n site={link}\n siteInfo={this._getTelemetryInfo()}\n shouldSendImpressionStats={shouldSendImpressionStats} />\n }\n </li>);\n }\n}\n_Card.defaultProps = {link: {}};\nexport const Card = connect(state => ({platform: state.Prefs.values.platform}))(_Card);\nexport const PlaceholderCard = props => <Card placeholder={true} className={props.className} />;\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Card/Card.jsx","import {actionCreators as ac} from \"common/Actions.jsm\";\nimport {ContextMenu} from \"content-src/components/ContextMenu/ContextMenu\";\nimport {injectIntl} from \"react-intl\";\nimport React from \"react\";\nimport {SectionMenuOptions} from \"content-src/lib/section-menu-options\";\n\nconst DEFAULT_SECTION_MENU_OPTIONS = [\"MoveUp\", \"MoveDown\", \"Separator\", \"RemoveSection\", \"CheckCollapsed\", \"Separator\", \"ManageSection\"];\nconst WEBEXT_SECTION_MENU_OPTIONS = [\"MoveUp\", \"MoveDown\", \"Separator\", \"CheckCollapsed\", \"Separator\", \"ManageWebExtension\"];\n\nexport class _SectionMenu extends React.PureComponent {\n getOptions() {\n const {props} = this;\n\n const propOptions = props.isWebExtension ? [...WEBEXT_SECTION_MENU_OPTIONS] : [...DEFAULT_SECTION_MENU_OPTIONS];\n // Prepend custom options and a separator\n if (props.extraOptions) {\n propOptions.splice(0, 0, ...props.extraOptions, \"Separator\");\n }\n // Insert privacy notice before the last option (\"ManageSection\")\n if (props.privacyNoticeURL) {\n propOptions.splice(-1, 0, \"PrivacyNotice\");\n }\n\n const options = propOptions.map(o => SectionMenuOptions[o](props)).map(option => {\n const {action, id, type, userEvent} = option;\n if (!type && id) {\n option.label = props.intl.formatMessage({id});\n option.onClick = () => {\n props.dispatch(action);\n if (userEvent) {\n props.dispatch(ac.UserEvent({\n event: userEvent,\n source: props.source\n }));\n }\n };\n }\n return option;\n });\n\n // This is for accessibility to support making each item tabbable.\n // We want to know which item is the first and which item\n // is the last, so we can close the context menu accordingly.\n options[0].first = true;\n options[options.length - 1].last = true;\n return options;\n }\n\n render() {\n return (<ContextMenu\n onUpdate={this.props.onUpdate}\n options={this.getOptions()} />);\n }\n}\n\nexport const SectionMenu = injectIntl(_SectionMenu);\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/SectionMenu/SectionMenu.jsx","import {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\nexport class Topic extends React.PureComponent {\n render() {\n const {url, name} = this.props;\n return (<li><a key={name} className=\"topic-link\" href={url}>{name}</a></li>);\n }\n}\n\nexport class Topics extends React.PureComponent {\n render() {\n const {topics, read_more_endpoint} = this.props;\n return (\n <div className=\"topic\">\n <span><FormattedMessage id=\"pocket_read_more\" /></span>\n <ul>{topics && topics.map(t => <Topic key={t.name} url={t.url} name={t.name} />)}</ul>\n\n {read_more_endpoint && <a className=\"topic-read-more\" href={read_more_endpoint}>\n <FormattedMessage id=\"pocket_read_even_more\" />\n </a>}\n </div>\n );\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/Topics/Topics.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {MIN_CORNER_FAVICON_SIZE, MIN_RICH_FAVICON_SIZE, TOP_SITES_SOURCE} from \"./TopSitesConstants\";\nimport {CollapsibleSection} from \"content-src/components/CollapsibleSection/CollapsibleSection\";\nimport {ComponentPerfTimer} from \"content-src/components/ComponentPerfTimer/ComponentPerfTimer\";\nimport {connect} from \"react-redux\";\nimport {injectIntl} from \"react-intl\";\nimport React from \"react\";\nimport {TOP_SITES_MAX_SITES_PER_ROW} from \"common/Reducers.jsm\";\nimport {TopSiteForm} from \"./TopSiteForm\";\nimport {TopSiteList} from \"./TopSite\";\n\nfunction topSiteIconType(link) {\n if (link.customScreenshotURL) {\n return \"custom_screenshot\";\n }\n if (link.tippyTopIcon || link.faviconRef === \"tippytop\") {\n return \"tippytop\";\n }\n if (link.faviconSize >= MIN_RICH_FAVICON_SIZE) {\n return \"rich_icon\";\n }\n if (link.screenshot && link.faviconSize >= MIN_CORNER_FAVICON_SIZE) {\n return \"screenshot_with_icon\";\n }\n if (link.screenshot) {\n return \"screenshot\";\n }\n return \"no_image\";\n}\n\n/**\n * Iterates through TopSites and counts types of images.\n * @param acc Accumulator for reducer.\n * @param topsite Entry in TopSites.\n */\nfunction countTopSitesIconsTypes(topSites) {\n const countTopSitesTypes = (acc, link) => {\n acc[topSiteIconType(link)]++;\n return acc;\n };\n\n return topSites.reduce(countTopSitesTypes, {\n \"custom_screenshot\": 0,\n \"screenshot_with_icon\": 0,\n \"screenshot\": 0,\n \"tippytop\": 0,\n \"rich_icon\": 0,\n \"no_image\": 0\n });\n}\n\nexport class _TopSites extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onFormClose = this.onFormClose.bind(this);\n }\n\n /**\n * Dispatch session statistics about the quality of TopSites icons and pinned count.\n */\n _dispatchTopSitesStats() {\n const topSites = this._getVisibleTopSites();\n const topSitesIconsStats = countTopSitesIconsTypes(topSites);\n const topSitesPinned = topSites.filter(site => !!site.isPinned).length;\n // Dispatch telemetry event with the count of TopSites images types.\n this.props.dispatch(ac.AlsoToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n data: {topsites_icon_stats: topSitesIconsStats, topsites_pinned: topSitesPinned}\n }));\n }\n\n /**\n * Return the TopSites that are visible based on prefs and window width.\n */\n _getVisibleTopSites() {\n // We hide 2 sites per row when not in the wide layout.\n let sitesPerRow = TOP_SITES_MAX_SITES_PER_ROW;\n // $break-point-widest = 1072px (from _variables.scss)\n if (!global.matchMedia(`(min-width: 1072px)`).matches) {\n sitesPerRow -= 2;\n }\n return this.props.TopSites.rows.slice(0, this.props.TopSitesRows * sitesPerRow);\n }\n\n componentDidUpdate() {\n this._dispatchTopSitesStats();\n }\n\n componentDidMount() {\n this._dispatchTopSitesStats();\n }\n\n onFormClose() {\n this.props.dispatch(ac.UserEvent({\n source: TOP_SITES_SOURCE,\n event: \"TOP_SITES_EDIT_CLOSE\"\n }));\n this.props.dispatch({type: at.TOP_SITES_CANCEL_EDIT});\n }\n\n render() {\n const {props} = this;\n const {editForm} = props.TopSites;\n\n return (<ComponentPerfTimer id=\"topsites\" initialized={props.TopSites.initialized} dispatch={props.dispatch}>\n <CollapsibleSection\n className=\"top-sites\"\n icon=\"topsites\"\n id=\"topsites\"\n title={{id: \"header_top_sites\"}}\n extraMenuOptions={[\"AddTopSite\"]}\n showPrefName=\"feeds.topsites\"\n eventSource={TOP_SITES_SOURCE}\n collapsed={props.TopSites.pref ? props.TopSites.pref.collapsed : undefined}\n isFirst={props.isFirst}\n isLast={props.isLast}\n dispatch={props.dispatch}>\n <TopSiteList TopSites={props.TopSites} TopSitesRows={props.TopSitesRows} dispatch={props.dispatch} intl={props.intl} topSiteIconType={topSiteIconType} />\n <div className=\"edit-topsites-wrapper\">\n {editForm &&\n <div className=\"edit-topsites\">\n <div className=\"modal-overlay\" onClick={this.onFormClose} />\n <div className=\"modal\">\n <TopSiteForm\n site={props.TopSites.rows[editForm.index]}\n onClose={this.onFormClose}\n dispatch={this.props.dispatch}\n intl={this.props.intl}\n {...editForm} />\n </div>\n </div>\n }\n </div>\n </CollapsibleSection>\n </ComponentPerfTimer>);\n }\n}\n\nexport const TopSites = connect(state => ({\n TopSites: state.TopSites,\n Prefs: state.Prefs,\n TopSitesRows: state.Prefs.values.topSitesRows\n}))(injectIntl(_TopSites));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSites.jsx","import {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\n\nexport class TopSiteFormInput extends React.PureComponent {\n constructor(props) {\n super(props);\n this.state = {validationError: this.props.validationError};\n this.onChange = this.onChange.bind(this);\n this.onMount = this.onMount.bind(this);\n }\n\n componentWillReceiveProps(nextProps) {\n if (nextProps.shouldFocus && !this.props.shouldFocus) {\n this.input.focus();\n }\n if (nextProps.validationError && !this.props.validationError) {\n this.setState({validationError: true});\n }\n // If the component is in an error state but the value was cleared by the parent\n if (this.state.validationError && !nextProps.value) {\n this.setState({validationError: false});\n }\n }\n\n onChange(ev) {\n if (this.state.validationError) {\n this.setState({validationError: false});\n }\n this.props.onChange(ev);\n }\n\n onMount(input) {\n this.input = input;\n }\n\n render() {\n const showClearButton = this.props.value && this.props.onClear;\n const {typeUrl} = this.props;\n const {validationError} = this.state;\n\n return (<label><FormattedMessage id={this.props.titleId} />\n <div className={`field ${typeUrl ? \"url\" : \"\"}${validationError ? \" invalid\" : \"\"}`}>\n {this.props.loading ?\n <div className=\"loading-container\"><div className=\"loading-animation\" /></div> :\n showClearButton && <div className=\"icon icon-clear-input\" onClick={this.props.onClear} />}\n <input type=\"text\"\n value={this.props.value}\n ref={this.onMount}\n onChange={this.onChange}\n placeholder={this.props.intl.formatMessage({id: this.props.placeholderId})}\n autoFocus={this.props.shouldFocus}\n disabled={this.props.loading} />\n {validationError &&\n <aside className=\"error-tooltip\">\n <FormattedMessage id={this.props.errorMessageId} />\n </aside>}\n </div>\n </label>);\n }\n}\n\nTopSiteFormInput.defaultProps = {\n showClearButton: false,\n value: \"\",\n validationError: false\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSiteFormInput.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {FormattedMessage} from \"react-intl\";\nimport React from \"react\";\nimport {TOP_SITES_SOURCE} from \"./TopSitesConstants\";\nimport {TopSiteFormInput} from \"./TopSiteFormInput\";\nimport {TopSiteLink} from \"./TopSite\";\n\nexport class TopSiteForm extends React.PureComponent {\n constructor(props) {\n super(props);\n const {site} = props;\n this.state = {\n label: site ? (site.label || site.hostname) : \"\",\n url: site ? site.url : \"\",\n validationError: false,\n customScreenshotUrl: site ? site.customScreenshotURL : \"\",\n showCustomScreenshotForm: site ? site.customScreenshotURL : false\n };\n this.onClearScreenshotInput = this.onClearScreenshotInput.bind(this);\n this.onLabelChange = this.onLabelChange.bind(this);\n this.onUrlChange = this.onUrlChange.bind(this);\n this.onCancelButtonClick = this.onCancelButtonClick.bind(this);\n this.onClearUrlClick = this.onClearUrlClick.bind(this);\n this.onDoneButtonClick = this.onDoneButtonClick.bind(this);\n this.onCustomScreenshotUrlChange = this.onCustomScreenshotUrlChange.bind(this);\n this.onPreviewButtonClick = this.onPreviewButtonClick.bind(this);\n this.onEnableScreenshotUrlForm = this.onEnableScreenshotUrlForm.bind(this);\n this.validateUrl = this.validateUrl.bind(this);\n }\n\n onLabelChange(event) {\n this.setState({\"label\": event.target.value});\n }\n\n onUrlChange(event) {\n this.setState({\n url: event.target.value,\n validationError: false\n });\n }\n\n onClearUrlClick() {\n this.setState({\n url: \"\",\n validationError: false\n });\n }\n\n onEnableScreenshotUrlForm() {\n this.setState({showCustomScreenshotForm: true});\n }\n\n _updateCustomScreenshotInput(customScreenshotUrl) {\n this.setState({\n customScreenshotUrl,\n validationError: false\n });\n this.props.dispatch({type: at.PREVIEW_REQUEST_CANCEL});\n }\n\n onCustomScreenshotUrlChange(event) {\n this._updateCustomScreenshotInput(event.target.value);\n }\n\n onClearScreenshotInput() {\n this._updateCustomScreenshotInput(\"\");\n }\n\n onCancelButtonClick(ev) {\n ev.preventDefault();\n this.props.onClose();\n }\n\n onDoneButtonClick(ev) {\n ev.preventDefault();\n\n if (this.validateForm()) {\n const site = {url: this.cleanUrl(this.state.url)};\n const {index} = this.props;\n if (this.state.label !== \"\") {\n site.label = this.state.label;\n }\n\n if (this.state.customScreenshotUrl) {\n site.customScreenshotURL = this.cleanUrl(this.state.customScreenshotUrl);\n } else if (this.props.site && this.props.site.customScreenshotURL) {\n // Used to flag that previously cached screenshot should be removed\n site.customScreenshotURL = null;\n }\n this.props.dispatch(ac.AlsoToMain({\n type: at.TOP_SITES_PIN,\n data: {site, index}\n }));\n this.props.dispatch(ac.UserEvent({\n source: TOP_SITES_SOURCE,\n event: \"TOP_SITES_EDIT\",\n action_position: index\n }));\n\n this.props.onClose();\n }\n }\n\n onPreviewButtonClick(event) {\n event.preventDefault();\n if (this.validateForm()) {\n this.props.dispatch(ac.AlsoToMain({\n type: at.PREVIEW_REQUEST,\n data: {url: this.cleanUrl(this.state.customScreenshotUrl)}\n }));\n this.props.dispatch(ac.UserEvent({\n source: TOP_SITES_SOURCE,\n event: \"PREVIEW_REQUEST\"\n }));\n }\n }\n\n cleanUrl(url) {\n // If we are missing a protocol, prepend http://\n if (!url.startsWith(\"http:\") && !url.startsWith(\"https:\")) {\n return `http://${url}`;\n }\n return url;\n }\n\n _tryParseUrl(url) {\n try {\n return new URL(url);\n } catch (e) {\n return null;\n }\n }\n\n validateUrl(url) {\n const validProtocols = [\"http:\", \"https:\"];\n const urlObj = this._tryParseUrl(url) || this._tryParseUrl(this.cleanUrl(url));\n\n return urlObj && validProtocols.includes(urlObj.protocol);\n }\n\n validateCustomScreenshotUrl() {\n const {customScreenshotUrl} = this.state;\n return !customScreenshotUrl || this.validateUrl(customScreenshotUrl);\n }\n\n validateForm() {\n const validate = this.validateUrl(this.state.url) && this.validateCustomScreenshotUrl();\n\n if (!validate) {\n this.setState({validationError: true});\n }\n\n return validate;\n }\n\n _renderCustomScreenshotInput() {\n const {customScreenshotUrl} = this.state;\n const requestFailed = this.props.previewResponse === \"\";\n const validationError = (this.state.validationError && !this.validateCustomScreenshotUrl()) || requestFailed;\n // Set focus on error if the url field is valid or when the input is first rendered and is empty\n const shouldFocus = (validationError && this.validateUrl(this.state.url)) || !customScreenshotUrl;\n const isLoading = this.props.previewResponse === null &&\n customScreenshotUrl && this.props.previewUrl === this.cleanUrl(customScreenshotUrl);\n\n if (!this.state.showCustomScreenshotForm) {\n return (<a className=\"enable-custom-image-input\" onClick={this.onEnableScreenshotUrlForm}>\n <FormattedMessage id=\"topsites_form_use_image_link\" />\n </a>);\n }\n return (<div className=\"custom-image-input-container\">\n <TopSiteFormInput\n errorMessageId={requestFailed ? \"topsites_form_image_validation\" : \"topsites_form_url_validation\"}\n loading={isLoading}\n onChange={this.onCustomScreenshotUrlChange}\n onClear={this.onClearScreenshotInput}\n shouldFocus={shouldFocus}\n typeUrl={true}\n value={customScreenshotUrl}\n validationError={validationError}\n titleId=\"topsites_form_image_url_label\"\n placeholderId=\"topsites_form_url_placeholder\"\n intl={this.props.intl} />\n </div>);\n }\n\n render() {\n const {customScreenshotUrl} = this.state;\n const requestFailed = this.props.previewResponse === \"\";\n // For UI purposes, editing without an existing link is \"add\"\n const showAsAdd = !this.props.site;\n const previous = (this.props.site && this.props.site.customScreenshotURL) || \"\";\n const changed = customScreenshotUrl && this.cleanUrl(customScreenshotUrl) !== previous;\n // Preview mode if changes were made to the custom screenshot URL and no preview was received yet\n // or the request failed\n const previewMode = changed && !this.props.previewResponse;\n const previewLink = Object.assign({}, this.props.site);\n if (this.props.previewResponse) {\n previewLink.screenshot = this.props.previewResponse;\n previewLink.customScreenshotURL = this.props.previewUrl;\n }\n return (\n <form className=\"topsite-form\">\n <div className=\"form-input-container\">\n <h3 className=\"section-title\">\n <FormattedMessage id={showAsAdd ? \"topsites_form_add_header\" : \"topsites_form_edit_header\"} />\n </h3>\n <div className=\"fields-and-preview\">\n <div className=\"form-wrapper\">\n <TopSiteFormInput onChange={this.onLabelChange}\n value={this.state.label}\n titleId=\"topsites_form_title_label\"\n placeholderId=\"topsites_form_title_placeholder\"\n intl={this.props.intl} />\n <TopSiteFormInput onChange={this.onUrlChange}\n shouldFocus={this.state.validationError && !this.validateUrl(this.state.url)}\n value={this.state.url}\n onClear={this.onClearUrlClick}\n validationError={this.state.validationError && !this.validateUrl(this.state.url)}\n titleId=\"topsites_form_url_label\"\n typeUrl={true}\n placeholderId=\"topsites_form_url_placeholder\"\n errorMessageId=\"topsites_form_url_validation\"\n intl={this.props.intl} />\n {this._renderCustomScreenshotInput()}\n </div>\n <TopSiteLink link={previewLink}\n defaultStyle={requestFailed}\n title={this.state.label} />\n </div>\n </div>\n <section className=\"actions\">\n <button className=\"cancel\" type=\"button\" onClick={this.onCancelButtonClick}>\n <FormattedMessage id=\"topsites_form_cancel_button\" />\n </button>\n {previewMode ?\n <button className=\"done preview\" type=\"submit\" onClick={this.onPreviewButtonClick}>\n <FormattedMessage id=\"topsites_form_preview_button\" />\n </button> :\n <button className=\"done\" type=\"submit\" onClick={this.onDoneButtonClick}>\n <FormattedMessage id={showAsAdd ? \"topsites_form_add_button\" : \"topsites_form_save_button\"} />\n </button>}\n </section>\n </form>\n );\n }\n}\n\nTopSiteForm.defaultProps = {\n site: null,\n index: -1\n};\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/TopSites/TopSiteForm.jsx","import {FormattedMessage, injectIntl} from \"react-intl\";\nimport {actionCreators as ac} from \"common/Actions.jsm\";\nimport {connect} from \"react-redux\";\nimport React from \"react\";\n\nexport class _StartupOverlay extends React.PureComponent {\n constructor(props) {\n super(props);\n this.onInputChange = this.onInputChange.bind(this);\n this.onSubmit = this.onSubmit.bind(this);\n this.clickSkip = this.clickSkip.bind(this);\n this.initScene = this.initScene.bind(this);\n this.removeOverlay = this.removeOverlay.bind(this);\n\n this.state = {emailInput: \"\"};\n this.initScene();\n }\n\n initScene() {\n // Timeout to allow the scene to render once before attaching the attribute\n // to trigger the animation.\n setTimeout(() => {\n this.setState({show: true});\n }, 10);\n }\n\n removeOverlay() {\n window.removeEventListener(\"visibilitychange\", this.removeOverlay);\n this.setState({show: false});\n setTimeout(() => {\n // Allow scrolling and fully remove overlay after animation finishes.\n document.body.classList.remove(\"welcome\");\n }, 400);\n }\n\n onInputChange(e) {\n this.setState({emailInput: e.target.value});\n }\n\n onSubmit() {\n this.props.dispatch(ac.UserEvent({event: \"SUBMIT_EMAIL\"}));\n window.addEventListener(\"visibilitychange\", this.removeOverlay);\n }\n\n clickSkip() {\n this.props.dispatch(ac.UserEvent({event: \"SKIPPED_SIGNIN\"}));\n this.removeOverlay();\n }\n\n render() {\n let termsLink = (<a href=\"https://accounts.firefox.com/legal/terms\" target=\"_blank\" rel=\"noopener noreferrer\"><FormattedMessage id=\"firstrun_terms_of_service\" /></a>);\n let privacyLink = (<a href=\"https://accounts.firefox.com/legal/privacy\" target=\"_blank\" rel=\"noopener noreferrer\"><FormattedMessage id=\"firstrun_privacy_notice\" /></a>);\n return (\n <div className={`overlay-wrapper ${this.state.show ? \"show \" : \"\"}`}>\n <div className=\"background\" />\n <div className=\"firstrun-scene\">\n <div className=\"fxaccounts-container\">\n <div className=\"firstrun-left-divider\">\n <h1 className=\"firstrun-title\"><FormattedMessage id=\"firstrun_title\" /></h1>\n <p className=\"firstrun-content\"><FormattedMessage id=\"firstrun_content\" /></p>\n <a className=\"firstrun-link\" href=\"https://www.mozilla.org/firefox/features/sync/\" target=\"_blank\" rel=\"noopener noreferrer\"><FormattedMessage id=\"firstrun_learn_more_link\" /></a>\n </div>\n <div className=\"firstrun-sign-in\">\n <p className=\"form-header\"><FormattedMessage id=\"firstrun_form_header\" /><span><FormattedMessage id=\"firstrun_form_sub_header\" /></span></p>\n <form method=\"get\" action=\"https://accounts.firefox.com?entrypoint=activity-stream-firstrun&utm_source=activity-stream&utm_campaign=firstrun\" target=\"_blank\" rel=\"noopener noreferrer\" onSubmit={this.onSubmit}>\n <input name=\"service\" type=\"hidden\" value=\"sync\" />\n <input name=\"action\" type=\"hidden\" value=\"email\" />\n <input name=\"context\" type=\"hidden\" value=\"fx_desktop_v3\" />\n <input className=\"email-input\" name=\"email\" type=\"email\" required=\"true\" placeholder={this.props.intl.formatMessage({id: \"firstrun_email_input_placeholder\"})} onChange={this.onInputChange} />\n <div className=\"extra-links\">\n <FormattedMessage\n id=\"firstrun_extra_legal_links\"\n values={{\n terms: termsLink,\n privacy: privacyLink\n }} />\n </div>\n <button className=\"continue-button\" type=\"submit\"><FormattedMessage id=\"firstrun_continue_to_login\" /></button>\n </form>\n <button className=\"skip-button\" disabled={!!this.state.emailInput} onClick={this.clickSkip}><FormattedMessage id=\"firstrun_skip_login\" /></button>\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport const StartupOverlay = connect()(injectIntl(_StartupOverlay));\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/components/StartupOverlay/StartupOverlay.jsx","import {actionCreators as ac, actionTypes as at} from \"common/Actions.jsm\";\nimport {perfService as perfSvc} from \"common/PerfService.jsm\";\n\nconst VISIBLE = \"visible\";\nconst VISIBILITY_CHANGE_EVENT = \"visibilitychange\";\n\nexport class DetectUserSessionStart {\n constructor(store, options = {}) {\n this._store = store;\n // Overrides for testing\n this.document = options.document || global.document;\n this._perfService = options.perfService || perfSvc;\n this._onVisibilityChange = this._onVisibilityChange.bind(this);\n }\n\n /**\n * sendEventOrAddListener - Notify immediately if the page is already visible,\n * or else set up a listener for when visibility changes.\n * This is needed for accurate session tracking for telemetry,\n * because tabs are pre-loaded.\n */\n sendEventOrAddListener() {\n if (this.document.visibilityState === VISIBLE) {\n // If the document is already visible, to the user, send a notification\n // immediately that a session has started.\n this._sendEvent();\n } else {\n // If the document is not visible, listen for when it does become visible.\n this.document.addEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n\n /**\n * _sendEvent - Sends a message to the main process to indicate the current\n * tab is now visible to the user, includes the\n * visibility_event_rcvd_ts time in ms from the UNIX epoch.\n */\n _sendEvent() {\n this._perfService.mark(\"visibility_event_rcvd_ts\");\n\n try {\n let visibility_event_rcvd_ts = this._perfService\n .getMostRecentAbsMarkStartByName(\"visibility_event_rcvd_ts\");\n\n this._store.dispatch(ac.AlsoToMain({\n type: at.SAVE_SESSION_PERF_DATA,\n data: {visibility_event_rcvd_ts}\n }));\n } catch (ex) {\n // If this failed, it's likely because the `privacy.resistFingerprinting`\n // pref is true. We should at least not blow up.\n }\n }\n\n /**\n * _onVisibilityChange - If the visibility has changed to visible, sends a notification\n * and removes the event listener. This should only be called once per tab.\n */\n _onVisibilityChange() {\n if (this.document.visibilityState === VISIBLE) {\n this._sendEvent();\n this.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);\n }\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./system-addon/content-src/lib/detect-user-session-start.js"],"sourceRoot":""}
\ No newline at end of file
index fd493c6c027289e6065afc2748a4eecb0a88f0ae..e9a1d92c520ff655b865e2e7b9eaa7c565440f97
GIT binary patch
literal 56250
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¬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
Zp<#$?t)rYx`_2b2y=HN>__E96{{dF)bvXb4
deleted file mode 100644
--- a/browser/extensions/activity-stream/data/content/assets/glyph-download-icon.svg
+++ /dev/null
@@ -1,1 +0,0 @@
-<svg width="42" height="42" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M27 16h-5.849l-1.567-1.462A2 2 0 0 0 18.219 14H15a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8a2 2 0 0 0-2-2zm-8.781 0l1.072 1H15v-1h3.219zM27 26H15v-8h6v-.014c.05 0 .1.014.151.014H27v8z" id="a"/></defs><g fill="none" fill-rule="evenodd"><rect fill="#0A84FF" width="42" height="42" rx="21"/><use fill="#FFF" fill-rule="nonzero" xlink:href="#a"/></g></svg>
\ No newline at end of file
deleted file mode 100644
--- a/browser/extensions/activity-stream/data/content/assets/glyph-historyItem-16.svg
+++ /dev/null
@@ -1,1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="context-fill" d="M8 12a4 4 0 1 1 4-4 4 4 0 0 1-4 4zm0-6a2 2 0 1 0 2 2 2 2 0 0 0-2-2z"/></svg>
\ No newline at end of file
index 3df8150efdfe32e9820e40b46116191fe8b7da98..67f94d0a1bbbecf7ea7d45b769ed9f61585f11e4
GIT binary patch
literal 20104
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
index 00905ab07306e8d42c24d5f79f0b01112e4a7c32..11dd0b895ab63b2b84c18a17921bdd6b9a05b158
GIT binary patch
literal 16627
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
index 1408dbd8cbc52b9b651c854f44783450d0144797..046b46c49d6a853f80f38afe520c44efb78dd812
GIT binary patch
literal 10990
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
--- a/browser/extensions/activity-stream/install.rdf.in
+++ b/browser/extensions/activity-stream/install.rdf.in
@@ -3,17 +3,17 @@
#filter substitution
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest">
<em:id>activity-stream@mozilla.org</em:id>
<em:type>2</em:type>
<em:bootstrap>true</em:bootstrap>
<em:unpack>false</em:unpack>
- <em:version>2018.05.17.1352-edc5578e</em:version>
+ <em:version>2018.05.24.1266-fdda2139</em:version>
<em:name>Activity Stream</em:name>
<em:description>A rich visual history feed and a reimagined home page make it easier than ever to find exactly what you're looking for in Firefox.</em:description>
<em:multiprocessCompatible>true</em:multiprocessCompatible>
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>@MOZ_APP_VERSION@</em:minVersion>
--- a/browser/extensions/activity-stream/lib/ASRouter.jsm
+++ b/browser/extensions/activity-stream/lib/ASRouter.jsm
@@ -76,17 +76,17 @@ const MessageLoaderUtils = {
* @returns {Promise} resolves with an array of messages, or an empty array if none could be fetched
*/
async _remoteLoader(provider) {
let remoteMessages = [];
if (provider.url) {
try {
remoteMessages = (await (await fetch(provider.url)).json())
.messages
- .map(msg => (Object.assign({}, msg, {provider_url: provider.url})));
+ .map(msg => ({...msg, provider_url: provider.url}));
} catch (e) {
Cu.reportError(e);
}
}
return remoteMessages;
},
/**
@@ -122,17 +122,17 @@ const MessageLoaderUtils = {
* loadMessagesForProvider - Load messages for a provider, given the provider's type.
*
* @param {obj} provider An AS Router provider
* @param {string} provider.type An AS Router provider type (defaults to "local")
* @returns {obj} Returns an object with .messages (an array of messages) and .lastUpdated (the time the messages were updated)
*/
async loadMessagesForProvider(provider) {
const messages = (await this._getMessageLoader(provider)(provider))
- .map(msg => Object.assign({}, msg, {provider: provider.id}));
+ .map(msg => ({...msg, provider: provider.id}));
const lastUpdated = Date.now();
return {messages, lastUpdated};
}
};
this.MessageLoaderUtils = MessageLoaderUtils;
/**
@@ -155,25 +155,23 @@ function getRandomItemFromArray(arr) {
* so that it can be more easily unit tested.
*/
class _ASRouter {
constructor(initialState = {}) {
this.initialized = false;
this.messageChannel = null;
this._storage = null;
this._resetInitialization();
- this._state = Object.assign(
- {
- currentId: null,
- providers: [],
- blockList: [],
- messages: []
- },
- initialState
- );
+ this._state = {
+ lastMessageId: null,
+ providers: [],
+ blockList: [],
+ messages: [],
+ ...initialState
+ };
this.onMessage = this.onMessage.bind(this);
}
get state() {
return this._state;
}
set state(value) {
@@ -206,17 +204,17 @@ class _ASRouter {
async loadMessagesFromAllProviders() {
const needsUpdate = this.state.providers.filter(provider => MessageLoaderUtils.shouldProviderUpdate(provider));
// Don't do extra work if we don't need any updates
if (needsUpdate.length) {
let newState = {messages: [], providers: []};
for (const provider of this.state.providers) {
if (needsUpdate.includes(provider)) {
const {messages, lastUpdated} = await MessageLoaderUtils.loadMessagesForProvider(provider);
- newState.providers.push((Object.assign({}, provider, {lastUpdated})));
+ newState.providers.push({...provider, lastUpdated});
newState.messages = [...newState.messages, ...messages];
} else {
// Skip updating this provider's messages if no update is required
let messages = this.state.messages.filter(msg => msg.provider === provider.id);
newState.providers.push(provider);
newState.messages = [...newState.messages, ...messages];
}
}
@@ -240,25 +238,25 @@ class _ASRouter {
const blockList = await this._storage.get("blockList") || [];
await this.setState({blockList});
// sets .initialized to true and resolves .waitForInitialized promise
this._finishInitializing();
}
uninit() {
- this.messageChannel.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
+ this.messageChannel.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_ALL"});
this.messageChannel.removeMessageListener(INCOMING_MESSAGE_NAME, this.onMessage);
this.messageChannel = null;
this._resetInitialization();
}
setState(callbackOrObj) {
const newState = (typeof callbackOrObj === "function") ? callbackOrObj(this.state) : callbackOrObj;
- this._state = Object.assign({}, this.state, newState);
+ this._state = {...this.state, ...newState};
return new Promise(resolve => {
this._onStateChanged(this.state);
resolve();
});
}
getMessageById(id) {
return this.state.messages.find(message => message.id === id);
@@ -283,53 +281,55 @@ class _ASRouter {
return {bundle: bundledMessages, provider: originalMessage.provider, template: originalMessage.template};
}
async sendNextMessage(target) {
let message;
let bundledMessages;
await this.setState(state => {
- message = getRandomItemFromArray(state.messages.filter(item => item.id !== state.currentId && !state.blockList.includes(item.id)));
- return {currentId: message ? message.id : null};
+ message = getRandomItemFromArray(state.messages.filter(item => item.id !== state.lastMessageId && !state.blockList.includes(item.id)));
+ return {lastMessageId: message ? message.id : null};
});
// If this message needs to be bundled with other messages of the same template, find them and bundle them together
if (message && message.bundled) {
bundledMessages = this._getBundledMessages(message);
}
if (message && !bundledMessages) {
// If we only need to send 1 message, send the message
target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "SET_MESSAGE", data: message});
} else if (bundledMessages) {
// If the message we want is bundled with other messages, send the entire bundle
target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "SET_BUNDLED_MESSAGES", data: bundledMessages});
} else {
- target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
+ target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_ALL"});
}
}
async setMessageById(id) {
- await this.setState({currentId: id});
+ await this.setState({lastMessageId: id});
const newMessage = this.getMessageById(id);
if (newMessage) {
// If this message needs to be bundled with other messages of the same template, find them and bundle them together
if (newMessage.bundled) {
let bundledMessages = this._getBundledMessages(newMessage);
this.messageChannel.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "SET_BUNDLED_MESSAGES", data: bundledMessages});
} else {
this.messageChannel.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "SET_MESSAGE", data: newMessage});
}
}
}
- async clearMessage(target, id) {
- if (this.state.currentId === id) {
- await this.setState({currentId: null});
- }
- target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
+ async blockById(idOrIds) {
+ const idsToBlock = Array.isArray(idOrIds) ? idOrIds : [idOrIds];
+ await this.setState(state => {
+ const blockList = [...state.blockList, ...idsToBlock];
+ this._storage.set("blockList", blockList);
+ return {blockList};
+ });
}
openLinkIn(url, target, {isPrivate = false, trusted = false, where = ""}) {
const win = target.browser.ownerGlobal;
const params = {
private: isPrivate,
triggeringPrincipal: Services.scriptSecurityManager.createNullPrincipal({})
};
@@ -355,37 +355,22 @@ class _ASRouter {
break;
case ra.OPEN_URL:
this.openLinkIn(action.data.button_action_params, target, {isPrivate: false, where: "tabshifted"});
break;
case ra.OPEN_ABOUT_PAGE:
this.openLinkIn(`about:${action.data.button_action_params}`, target, {isPrivate: false, trusted: true, where: "tab"});
break;
case "BLOCK_MESSAGE_BY_ID":
- await this.setState(state => {
- const blockList = [...state.blockList];
- blockList.push(action.data.id);
- this._storage.set("blockList", blockList);
-
- return {blockList};
- });
- await this.clearMessage(target, action.data.id);
+ await this.blockById(action.data.id);
+ this.messageChannel.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_MESSAGE", data: {id: action.data.id}});
break;
case "BLOCK_BUNDLE":
- await this.setState(state => {
- const blockList = [...state.blockList];
- for (let message of action.data.bundle) {
- blockList.push(message.id);
- }
- this._storage.set("blockList", blockList);
-
- return {blockList};
- });
- await this.setState({currentId: null});
- target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
+ await this.blockById(action.data.bundle.map(b => b.id));
+ this.messageChannel.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {type: "CLEAR_BUNDLE"});
break;
case "UNBLOCK_MESSAGE_BY_ID":
await this.setState(state => {
const blockList = [...state.blockList];
blockList.splice(blockList.indexOf(action.data.id), 1);
this._storage.set("blockList", blockList);
return {blockList};
});
--- a/browser/extensions/activity-stream/lib/DownloadsManager.jsm
+++ b/browser/extensions/activity-stream/lib/DownloadsManager.jsm
@@ -17,24 +17,16 @@ class DownloadElement extends DownloadsV
this.element = browser;
this.element._shell = this;
}
get download() {
return this._download;
}
- get fileType() {
- if (!this.download.target.path) {
- return null;
- }
- let items = this.download.target.path.split(".");
- return items[items.length - 1].toUpperCase();
- }
-
downloadsCmd_copyLocation() {
let clipboard = Cc["@mozilla.org/widget/clipboardhelper;1"].getService(Ci.nsIClipboardHelper);
clipboard.copyString(this.download.source.url);
}
}
this.DownloadsManager = class DownloadsManager {
constructor(store) {
@@ -47,24 +39,17 @@ this.DownloadsManager = class DownloadsM
setTimeout(callback, delay) {
let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
timer.initWithCallback(callback, delay, Ci.nsITimer.TYPE_ONE_SHOT);
return timer;
}
formatDownload(element) {
const downloadedItem = element.download;
- let description;
- if (element.fileType) {
- // If we have a file type: '1.5 MB — PNG'
- description = `${element.sizeStrings.stateLabel} \u2014 ${element.fileType}`;
- } else {
- // If we do not have a file type: '1.5 MB'
- description = `${element.sizeStrings.stateLabel}`;
- }
+ const description = element.sizeStrings.stateLabel;
return {
hostname: new URL(downloadedItem.source.url).hostname,
url: downloadedItem.source.url,
path: downloadedItem.target.path,
title: element.displayName,
description,
referrer: downloadedItem.source.referrer,
date_added: downloadedItem.endTime
--- a/browser/extensions/activity-stream/lib/SectionsManager.jsm
+++ b/browser/extensions/activity-stream/lib/SectionsManager.jsm
@@ -36,16 +36,17 @@ const BUILT_IN_SECTIONS = {
text: {id: "section_disclaimer_topstories"},
link: {
href: "https://getpocket.com/firefox/new_tab_learn_more",
id: "section_disclaimer_topstories_linktext"
},
button: {id: "section_disclaimer_topstories_buttontext"}
},
privacyNoticeURL: "https://www.mozilla.org/privacy/firefox/#suggest-relevant-content",
+ compactCards: false,
maxRows: 1,
availableLinkMenuOptions: ["CheckBookmarkOrArchive", "CheckSavedToPocket", "Separator", "OpenInNewWindow", "OpenInPrivateWindow", "Separator", "BlockUrl"],
emptyState: {
message: {id: "topstories_empty_state", values: {provider: options.provider_name}},
icon: "check"
},
shouldSendImpressionStats: true,
dedupeFrom: ["highlights"]
@@ -68,17 +69,18 @@ const BUILT_IN_SECTIONS = {
name: "section.highlights.includePocket",
titleString: "prefs_highlights_options_pocket_label"
}]
},
shouldHidePref: false,
eventSource: "HIGHLIGHTS",
icon: "highlights",
title: {id: "header_highlights"},
- maxRows: 3,
+ compactCards: true,
+ maxRows: 2,
emptyState: {
message: {id: "highlights_empty_state"},
icon: "highlights"
},
shouldSendImpressionStats: false
})
};
--- a/browser/extensions/activity-stream/lib/SnippetsFeed.jsm
+++ b/browser/extensions/activity-stream/lib/SnippetsFeed.jsm
@@ -84,17 +84,17 @@ this.SnippetsFeed = class SnippetsFeed {
});
} else {
resolve({engines: [], searchEngineIdentifier: ""});
}
});
});
}
- async getAddonInfo() {
+ async getAddonsInfo(target) {
const {addons, fullData} = await AddonManager.getActiveAddons(["extension", "service"]);
const info = {};
for (const addon of addons) {
info[addon.id] = {
version: addon.version,
type: addon.type,
isSystem: addon.isSystem,
isWebExtension: addon.isWebExtension
@@ -102,17 +102,18 @@ this.SnippetsFeed = class SnippetsFeed {
if (fullData) {
Object.assign(info[addon.id], {
name: addon.name,
userDisabled: addon.userDisabled,
installDate: addon.installDate
});
}
}
- return info;
+ const data = {addons: info, isFullData: fullData};
+ this.store.dispatch(ac.OnlyToOneContent({type: at.ADDONS_INFO_RESPONSE, data}, target));
}
async getTotalBookmarksCount(target) {
if (!this._totalBookmarks || (Date.now() - this._totalBookmarksLastUpdated > ONE_DAY)) {
this._totalBookmarksLastUpdated = Date.now();
try {
this._totalBookmarks = await NewTabUtils.activityStreamProvider.getTotalBookmarksCount();
} catch (e) {
@@ -147,17 +148,16 @@ this.SnippetsFeed = class SnippetsFeed {
snippetsURL: this.snippetsURL,
version: STARTPAGE_VERSION,
telemetryEnabled: Services.prefs.getBoolPref(TELEMETRY_PREF),
onboardingFinished: Services.prefs.getBoolPref(ONBOARDING_FINISHED_PREF),
fxaccount: Services.prefs.prefHasUserValue(FXA_USERNAME_PREF),
selectedSearchEngine: await this.getSelectedSearchEngine(),
defaultBrowser: this.isDefaultBrowser(),
isDevtoolsUser: this.isDevtoolsUser(),
- addonInfo: await this.getAddonInfo(),
blockList: await this._getBlockList() || [],
previousSessionEnd: this._previousSessionEnd
};
this._dispatchChanges(data);
}
async observe(subject, topic, data) {
if (topic === SEARCH_ENGINE_OBSERVER_TOPIC) {
@@ -188,17 +188,17 @@ this.SnippetsFeed = class SnippetsFeed {
}
async showFirefoxAccounts(browser) {
const url = await FxAccounts.config.promiseSignUpURI("snippets");
// We want to replace the current tab.
browser.loadURI(url);
}
- onAction(action) {
+ async onAction(action) {
switch (action.type) {
case at.INIT:
this.init();
break;
case at.UNINIT:
this.uninit();
break;
case at.SHOW_FIREFOX_ACCOUNTS:
@@ -209,13 +209,16 @@ this.SnippetsFeed = class SnippetsFeed {
this.store.dispatch(ac.BroadcastToContent({type: at.SNIPPET_BLOCKED, data: action.data}));
break;
case at.SNIPPETS_BLOCKLIST_CLEARED:
this._clearBlockList();
break;
case at.TOTAL_BOOKMARKS_REQUEST:
this.getTotalBookmarksCount(action.meta.fromTarget);
break;
+ case at.ADDONS_INFO_REQUEST:
+ await this.getAddonsInfo(action.meta.fromTarget);
+ break;
}
}
};
const EXPORTED_SYMBOLS = ["SnippetsFeed"];
--- a/browser/extensions/activity-stream/lib/TelemetryFeed.jsm
+++ b/browser/extensions/activity-stream/lib/TelemetryFeed.jsm
@@ -485,18 +485,23 @@ this.TelemetryFeed = class TelemetryFeed
if (data.visibility_event_rcvd_ts && session.page !== "about:home") {
this.setLoadTriggerInfo(port);
}
Object.assign(session.perf, data);
}
uninit() {
- Services.obs.removeObserver(this.browserOpenNewtabStart,
- "browser-open-newtab-start");
+ try {
+ Services.obs.removeObserver(this.browserOpenNewtabStart,
+ "browser-open-newtab-start");
+ } catch (e) {
+ // Operation can fail when uninit is called before
+ // init has finished setting up the observer
+ }
// Only uninit if the getter has initialized it
if (Object.prototype.hasOwnProperty.call(this, "pingCentre")) {
this.pingCentre.uninit();
}
if (Object.prototype.hasOwnProperty.call(this, "utEvents")) {
this.utEvents.uninit();
}
--- a/browser/extensions/activity-stream/prerendered/locales/ach/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ach/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Dirica matidi manyen</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Yeny kakube</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Yeny kakube" title="Yeny kakube"/><button id="searchSubmit" class="search-button" title="Yeny"><span class="sr-only"><span>Yeny</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Kakube maloyo</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Lami tam obedo Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Lok macuk gi lamal:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wiye madito</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yub potbuk me dirica matidi mamegi manyen"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Yeny kakube</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Yeny kakube" title="Yeny kakube"/><button id="searchSubmit" class="search-button" title="Yeny"><span class="sr-only"><span>Yeny</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Kakube maloyo</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Yub kakube man"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Lami tam obedo Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Lok macuk gi lamal:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wiye madito</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yub potbuk me dirica matidi mamegi manyen"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ach/activity-stream-strings.js
+++ b/browser/extensions/activity-stream/prerendered/locales/ach/activity-stream-strings.js
@@ -5,72 +5,72 @@ window.gActivityStreamStrings = {
"header_highlights": "Wiye madito",
"header_recommended_by": "Lami tam obedo {provider}",
"context_menu_button_sr": "Yab jami ayera pi {title}",
"section_context_menu_button_sr": "Open the section context menu",
"type_label_visited": "Kilimo",
"type_label_bookmarked": "Kiketo alamabuk",
"type_label_recommended": "Ma cuke lamal",
"type_label_pocket": "Kigwoko i Pocket",
- "type_label_downloaded": "Downloaded",
+ "type_label_downloaded": "Ki gamo",
"menu_action_bookmark": "Alamabuk",
"menu_action_remove_bookmark": "Kwany alamabuk",
"menu_action_open_new_window": "Yab i dirica manyen",
"menu_action_open_private_window": "Yab i dirica manyen me mung",
"menu_action_dismiss": "Kwer",
"menu_action_delete": "Kwany ki ii gin mukato",
"menu_action_pin": "Mwon",
"menu_action_unpin": "War",
"confirm_history_delete_p1": "Imoko ni imito kwanyo nyig jami weng me potbuk man ki i gin mukato mamegi?",
"confirm_history_delete_notice_p2": "Pe ki twero gonyo tic man.",
"menu_action_save_to_pocket": "Gwoki i jaba",
"menu_action_delete_pocket": "Kwany ki ii Pocket",
"menu_action_archive_pocket": "Kan i Pocket",
- "menu_action_show_file_mac_os": "Show in Finder",
- "menu_action_show_file_windows": "Open Containing Folder",
- "menu_action_show_file_linux": "Open Containing Folder",
- "menu_action_show_file_default": "Show File",
- "menu_action_open_file": "Open File",
- "menu_action_copy_download_link": "Copy Download Link",
- "menu_action_go_to_download_page": "Go to Download Page",
- "menu_action_remove_download": "Remove from History",
+ "menu_action_show_file_mac_os": "Nyut i Gin nongo",
+ "menu_action_show_file_windows": "Yab boc manonge iyie",
+ "menu_action_show_file_linux": "Yab boc manonge iyie",
+ "menu_action_show_file_default": "Nyut Pwail",
+ "menu_action_open_file": "Yab Pwail",
+ "menu_action_copy_download_link": "Lok Kakube me Gam",
+ "menu_action_go_to_download_page": "Cit i Potbuk me Gam",
+ "menu_action_remove_download": "Kwany ki i Gin mukato",
"search_button": "Yeny",
"search_header": "Yeny me {search_engine_name}",
"search_web_placeholder": "Yeny kakube",
"section_disclaimer_topstories": "Lok ma mit loyo i kakube, ki yero malube ki ngo ma ikwano. Ki ii Pocket, kombedi dong but Mozilla.",
"section_disclaimer_topstories_linktext": "Nong ngec kit ma tyo kwede.",
"section_disclaimer_topstories_buttontext": "Eyo, aniang",
"prefs_home_header": "Jami me Acakki Firefox",
"prefs_home_description": "Yer jami ma imito ii kio me Acakki Firefox.",
"prefs_section_rows_option": "{num} row;{num} rows",
"prefs_search_header": "Yeny me kakube",
"prefs_topsites_description": "Kakube ma ilimo loyo",
- "prefs_topstories_description2": "Great content from around the web, personalized for you",
- "prefs_topstories_options_sponsored_label": "Sponsored Stories",
+ "prefs_topstories_description2": "Jami mabeco loyo ki ii kakube, kiyubo piri",
+ "prefs_topstories_options_sponsored_label": "Lok ma kicwako",
"prefs_topstories_sponsored_learn_more": "Nong ngec mapol",
"prefs_highlights_description": "Yer me kakube ma igwoko nyo ilimo",
- "prefs_highlights_options_visited_label": "Visited Pages",
- "prefs_highlights_options_download_label": "Most Recent Download",
- "prefs_highlights_options_pocket_label": "Pages Saved to Pocket",
+ "prefs_highlights_options_visited_label": "Potbuk ma kilimo",
+ "prefs_highlights_options_download_label": "Gam ma cokcoki loyo",
+ "prefs_highlights_options_pocket_label": "Kigwoko potbuk i Pocket",
"prefs_snippets_description": "Ngec manyen ki bot Mozilla ki Firefox",
"settings_pane_button_label": "Yub potbuk me dirica matidi mamegi manyen",
"settings_pane_topsites_header": "Kakube ma gi loyo",
"settings_pane_highlights_header": "Wiye madito",
"settings_pane_highlights_options_bookmarks": "Alamabuk",
"settings_pane_snippets_header": "Kwena macek",
"edit_topsites_button_text": "Yubi",
"edit_topsites_edit_button": "Yub kakube man",
"topsites_form_add_header": "Kakube maloyo manyen",
"topsites_form_edit_header": "Yub Kakube maloyo",
"topsites_form_title_label": "Wiye madit",
"topsites_form_title_placeholder": "Ket wiye",
"topsites_form_url_label": "URL",
- "topsites_form_image_url_label": "Custom Image URL",
+ "topsites_form_image_url_label": "URL me cal ma kiyubo",
"topsites_form_url_placeholder": "Coo onyo mwon URL",
- "topsites_form_use_image_link": "Use a custom image…",
+ "topsites_form_use_image_link": "Tii ki cal ma kiyubo…",
"topsites_form_preview_button": "Nen",
"topsites_form_add_button": "Medi",
"topsites_form_save_button": "Gwoki",
"topsites_form_cancel_button": "Kwer",
"topsites_form_url_validation": "URL ma tye atir mite",
"topsites_form_image_validation": "Cano cal pe olare. Tem URL mukene.",
"pocket_read_more": "Lok macuk gi lamal:",
"pocket_read_even_more": "Nen Lok mapol",
@@ -95,24 +95,10 @@ window.gActivityStreamStrings = {
"firstrun_learn_more_link": "Learn more about Firefox Accounts",
"firstrun_form_header": "Enter your email",
"firstrun_form_sub_header": "to continue to Firefox Sync.",
"firstrun_email_input_placeholder": "Email",
"firstrun_extra_legal_links": "By proceeding, you agree to the {terms} and {privacy}.",
"firstrun_terms_of_service": "Terms of Service",
"firstrun_privacy_notice": "Privacy Notice",
"firstrun_continue_to_login": "Continue",
- "firstrun_skip_login": "Skip this step",
- "prefs_restore_defaults_button": "Dwok makwongo",
- "prefs_topstories_description": "Jami me rwom ma lamal ma itwero keng",
- "settings_pane_header": "Ter me dirica matidi manyen",
- "settings_pane_body2": "Yer ngo ma i neno i potbuk man.",
- "settings_pane_search_header": "Yeny",
- "settings_pane_search_body": "Yeny Kakube ki i dirica ni matidi manyen.",
- "settings_pane_topsites_body": "Nong kakube ma ilimo loyo.",
- "settings_pane_topsites_options_showmore": "Nyut rek ariyo",
- "settings_pane_highlights_body2": "Nong yoo ni cen i jami mamit ma ilimo gi cokcokki onyo iketo alamabuk.",
- "settings_pane_highlights_options_visited": "Kakube ma kilimo",
- "settings_pane_snippets_body": "Kwan ngec manyen macego dok mamit ki bot Mozilla ikom Firefox, kwo me intanet, ki meme mabino atata.",
- "settings_pane_done_button": "Otum",
- "settings_pane_topstories_options_sponsored": "Nyut lok ma ki cwako",
- "pocket_description": "Nong jami me rwom ma lamal ma itwero keng woko, ki kony ma aa ki bot Pocket, dong tye but Mozilla."
+ "firstrun_skip_login": "Skip this step"
};
--- a/browser/extensions/activity-stream/prerendered/locales/an/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/an/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nueva Pestanya</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Mirar en o Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Mirar en o Web" title="Mirar en o Web"/><button id="searchSubmit" class="search-button" title="Mirar"><span class="sr-only"><span>Mirar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mas freqüents</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ubrir lo menú contextual d'a sección</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendau per Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ubrir lo menú contextual d'a sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temas populars:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacaus</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ubrir lo menú contextual d'a sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personaliza la tuya pachina de Nueva Pestanya"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Mirar en o Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Mirar en o Web" title="Mirar en o Web"/><button id="searchSubmit" class="search-button" title="Mirar"><span class="sr-only"><span>Mirar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mas freqüents</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ubrir lo menú contextual d'a sección</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este puesto"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendau per Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ubrir lo menú contextual d'a sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temas populars:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacaus</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ubrir lo menú contextual d'a sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personaliza la tuya pachina de Nueva Pestanya"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ar/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ar/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>لسان جديد</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ابحث في الوِب</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ابحث في الوِب" title="ابحث في الوِب"/><button id="searchSubmit" class="search-button" title="ابحث"><span class="sr-only"><span>ابحث</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>المواقع الأكثر زيارة</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>افتح قائمة القسم السياقية</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>ينصح به Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>افتح قائمة القسم السياقية</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>المواضيع الشائعة:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>أهم الأحداث</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>افتح قائمة القسم السياقية</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="خصص صفحة اللسان الجديد"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ابحث في الوِب</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ابحث في الوِب" title="ابحث في الوِب"/><button id="searchSubmit" class="search-button" title="ابحث"><span class="sr-only"><span>ابحث</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>المواقع الأكثر زيارة</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>افتح قائمة القسم السياقية</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="حرّر هذا الموقع"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>ينصح به Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>افتح قائمة القسم السياقية</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>المواضيع الشائعة:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>أهم الأحداث</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>افتح قائمة القسم السياقية</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="خصص صفحة اللسان الجديد"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ast/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ast/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Llingüeta nueva</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Guetar na web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Guetar na web" title="Guetar na web"/><button id="searchSubmit" class="search-button" title="Guetar"><span class="sr-only"><span>Guetar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Más visitaos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendáu por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temes populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacaos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar páxina Llingüeta nueva"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Guetar na web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Guetar na web" title="Guetar na web"/><button id="searchSubmit" class="search-button" title="Guetar"><span class="sr-only"><span>Guetar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Más visitaos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar esti sitiu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendáu por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temes populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacaos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar páxina Llingüeta nueva"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/az/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/az/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Yeni Vərəq</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>İnternetdə Axtar</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="İnternetdə Axtar" title="İnternetdə Axtar"/><button id="searchSubmit" class="search-button" title="Axtar"><span class="sr-only"><span>Axtar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Qabaqcıl Saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekst menyusu bölməsini aç</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket məsləhət görür</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekst menyusu bölməsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Məşhur Mövzular:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Seçilmişlər</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekst menyusu bölməsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yeni Vərəq səhifənizi özəlləşdirin"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>İnternetdə Axtar</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="İnternetdə Axtar" title="İnternetdə Axtar"/><button id="searchSubmit" class="search-button" title="Axtar"><span class="sr-only"><span>Axtar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Qabaqcıl Saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekst menyusu bölməsini aç</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytı düzəlt"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket məsləhət görür</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekst menyusu bölməsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Məşhur Mövzular:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Seçilmişlər</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekst menyusu bölməsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yeni Vərəq səhifənizi özəlləşdirin"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/be/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/be/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Новая картка</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Пошук у Інтэрнэце</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Пошук у Інтэрнэце" title="Пошук у Інтэрнэце"/><button id="searchSubmit" class="search-button" title="Шукаць"><span class="sr-only"><span>Шукаць</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Папулярныя сайты</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Адкрыць кантэкстнае меню раздзела</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Рэкамендавана Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Адкрыць кантэкстнае меню раздзела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Папулярныя тэмы:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Выбранае</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Адкрыць кантэкстнае меню раздзела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Наладзіць вашу старонку новай карткі"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Пошук у Інтэрнэце</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Пошук у Інтэрнэце" title="Пошук у Інтэрнэце"/><button id="searchSubmit" class="search-button" title="Шукаць"><span class="sr-only"><span>Шукаць</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Папулярныя сайты</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Адкрыць кантэкстнае меню раздзела</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Рэдагаваць гэты сайт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Рэкамендавана Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Адкрыць кантэкстнае меню раздзела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Папулярныя тэмы:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Выбранае</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Адкрыць кантэкстнае меню раздзела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Наладзіць вашу старонку новай карткі"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/bg/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/bg/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Нов раздел</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Търсене в интернет</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Търсене в интернет" title="Търсене в интернет"/><button id="searchSubmit" class="search-button" title="Търсене"><span class="sr-only"><span>Търсене</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Често посещавани</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Препоръчано от Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Популярни теми:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Акценти</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Настройки на новия раздел"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Търсене в интернет</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Търсене в интернет" title="Търсене в интернет"/><button id="searchSubmit" class="search-button" title="Търсене"><span class="sr-only"><span>Търсене</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Често посещавани</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отваряне на контекстното меню на раздела</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Редактиране"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Препоръчано от Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отваряне на контекстното меню на раздела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Популярни теми:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Акценти</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отваряне на контекстното меню на раздела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Настройки на новия раздел"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/bg/activity-stream-strings.js
+++ b/browser/extensions/activity-stream/prerendered/locales/bg/activity-stream-strings.js
@@ -1,21 +1,21 @@
// Note - this is a generated bg file.
window.gActivityStreamStrings = {
"newtab_page_title": "Нов раздел",
"header_top_sites": "Често посещавани",
"header_highlights": "Акценти",
"header_recommended_by": "Препоръчано от {provider}",
"context_menu_button_sr": "Отваряне на контекстуалното меню на {title}",
- "section_context_menu_button_sr": "Open the section context menu",
+ "section_context_menu_button_sr": "Отваряне на контекстното меню на раздела",
"type_label_visited": "Посетена",
"type_label_bookmarked": "Отметната",
"type_label_recommended": "Тенденции",
- "type_label_pocket": "Saved to Pocket",
- "type_label_downloaded": "Downloaded",
+ "type_label_pocket": "Запазено в Pocket",
+ "type_label_downloaded": "Изтеглено",
"menu_action_bookmark": "Отметка",
"menu_action_remove_bookmark": "Премахване на отметка",
"menu_action_open_new_window": "Отваряне в раздел",
"menu_action_open_private_window": "Отваряне в поверителен прозорец",
"menu_action_dismiss": "Отхвърляне",
"menu_action_delete": "Премахване",
"menu_action_pin": "Закачане",
"menu_action_unpin": "Откачане",
@@ -61,17 +61,17 @@ window.gActivityStreamStrings = {
"topsites_form_add_header": "Нов често посещавана страница",
"topsites_form_edit_header": "Редактиране на често посещавана страница",
"topsites_form_title_label": "Title",
"topsites_form_title_placeholder": "Заглавие",
"topsites_form_url_label": "URL",
"topsites_form_image_url_label": "Custom Image URL",
"topsites_form_url_placeholder": "Адрес",
"topsites_form_use_image_link": "Use a custom image…",
- "topsites_form_preview_button": "Preview",
+ "topsites_form_preview_button": "Преглед",
"topsites_form_add_button": "Добавяне",
"topsites_form_save_button": "Запазване",
"topsites_form_cancel_button": "Отказ",
"topsites_form_url_validation": "Необходим е валиден URL",
"topsites_form_image_validation": "Image failed to load. Try a different URL.",
"pocket_read_more": "Популярни теми:",
"pocket_read_even_more": "Повече статии",
"highlights_empty_state": "Разглеждайте и тук ще ви покажем някои от най-добрите статии, видео и други страници, които сте посетили или отметнали наскоро.",
@@ -82,35 +82,23 @@ window.gActivityStreamStrings = {
"error_fallback_default_info": "Oops, something went wrong loading this content.",
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
"section_menu_action_remove_section": "Remove Section",
"section_menu_action_collapse_section": "Collapse Section",
"section_menu_action_expand_section": "Expand Section",
"section_menu_action_manage_section": "Manage Section",
"section_menu_action_manage_webext": "Manage Extension",
"section_menu_action_add_topsite": "Add Top Site",
- "section_menu_action_move_up": "Move Up",
- "section_menu_action_move_down": "Move Down",
+ "section_menu_action_move_up": "Преместване нагоре",
+ "section_menu_action_move_down": "Преместване надолу",
"section_menu_action_privacy_notice": "Политика за личните данни",
"firstrun_title": "Take Firefox with You",
"firstrun_content": "Get your bookmarks, history, passwords and other settings on all your devices.",
"firstrun_learn_more_link": "Learn more about Firefox Accounts",
"firstrun_form_header": "Enter your email",
"firstrun_form_sub_header": "to continue to Firefox Sync.",
"firstrun_email_input_placeholder": "Email",
"firstrun_extra_legal_links": "By proceeding, you agree to the {terms} and {privacy}.",
"firstrun_terms_of_service": "Terms of Service",
"firstrun_privacy_notice": "Privacy Notice",
"firstrun_continue_to_login": "Continue",
- "firstrun_skip_login": "Skip this step",
- "settings_pane_header": "Настройки на новия раздел",
- "settings_pane_body2": "Изберете какво да виждате на тази страница.",
- "settings_pane_search_header": "Търсене",
- "settings_pane_search_body": "Търсете в мрежата от нов раздел.",
- "settings_pane_topsites_body": "Достъп до страниците, които посещавате най-често.",
- "settings_pane_topsites_options_showmore": "Показване на два реда",
- "settings_pane_highlights_body2": "Намерете интересните неща, които скоро сте посетили или отметнали.",
- "settings_pane_highlights_options_visited": "Посетени страници",
- "settings_pane_snippets_body": "Четете кратки и радостни новини от Mozilla относно Firefox, интернет-културата и случайни мемета.",
- "settings_pane_done_button": "Готово",
- "settings_pane_topstories_options_sponsored": "Показване на платени статии",
- "pocket_description": "Открийте висококачествено съдържание, което иначе може да пропуснете, с помощта на Pocket, вече част от Mozilla."
+ "firstrun_skip_login": "Skip this step"
};
--- a/browser/extensions/activity-stream/prerendered/locales/bn-BD/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/bn-BD/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>নতুন ট্যাব</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ওয়েবে সন্ধান করুন</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ওয়েবে সন্ধান করুন" title="ওয়েবে সন্ধান করুন"/><button id="searchSubmit" class="search-button" title="অনুসন্ধান"><span class="sr-only"><span>অনুসন্ধান</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>শীর্ঘ সাইট</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket দ্বারা সুপারিশকৃত</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>জনপ্রিয় বিষয়:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>হাইলাইটস</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="আপনার নতুন ট্যাব পেজটি কাস্টমাইজ করুন"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ওয়েবে সন্ধান করুন</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ওয়েবে সন্ধান করুন" title="ওয়েবে সন্ধান করুন"/><button id="searchSubmit" class="search-button" title="অনুসন্ধান"><span class="sr-only"><span>অনুসন্ধান</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>শীর্ঘ সাইট</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket দ্বারা সুপারিশকৃত</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>জনপ্রিয় বিষয়:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>হাইলাইটস</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="আপনার নতুন ট্যাব পেজটি কাস্টমাইজ করুন"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/bn-IN/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/bn-IN/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>নতুন ট্যাব</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ওয়েবে সন্ধান করুন</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ওয়েবে সন্ধান করুন" title="ওয়েবে সন্ধান করুন"/><button id="searchSubmit" class="search-button" title="অনুসন্ধান"><span class="sr-only"><span>অনুসন্ধান</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>শীর্ষ সাইটগুলি</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket দ্বারা সুপারিশকৃত</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>জনপ্রিয় বিষয়:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>হাইলাইটস</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="আপনার নতুন ট্যাব পেজটি কাস্টমাইজ করুন"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ওয়েবে সন্ধান করুন</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ওয়েবে সন্ধান করুন" title="ওয়েবে সন্ধান করুন"/><button id="searchSubmit" class="search-button" title="অনুসন্ধান"><span class="sr-only"><span>অনুসন্ধান</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>শীর্ষ সাইটগুলি</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="সাইটটি সম্পাদনা করুন"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket দ্বারা সুপারিশকৃত</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>জনপ্রিয় বিষয়:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>হাইলাইটস</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>কনটেক্স মেন্যু তে সেকশনটি খুলুন</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="আপনার নতুন ট্যাব পেজটি কাস্টমাইজ করুন"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/br/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/br/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Ivinell nevez</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Klask er web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Klask er web" title="Klask er web"/><button id="searchSubmit" class="search-button" title="Klask"><span class="sr-only"><span>Klask</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Lec'hiennoù pennañ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Digeriñ lañser kemperzhel al lodenn-mañ</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Erbedet gant Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Digeriñ lañser kemperzhel al lodenn-mañ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Danvezioù brudet:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Mareoù pouezus</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Digeriñ lañser kemperzhel al lodenn-mañ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personelait ho pajenn Ivinell Nevez"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Klask er web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Klask er web" title="Klask er web"/><button id="searchSubmit" class="search-button" title="Klask"><span class="sr-only"><span>Klask</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Lec'hiennoù pennañ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Digeriñ lañser kemperzhel al lodenn-mañ</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embann al lec'hienn-mañ"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Erbedet gant Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Digeriñ lañser kemperzhel al lodenn-mañ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Danvezioù brudet:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Mareoù pouezus</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Digeriñ lañser kemperzhel al lodenn-mañ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personelait ho pajenn Ivinell Nevez"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/bs/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/bs/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Novi tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pretraži web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pretraži web" title="Pretraži web"/><button id="searchSubmit" class="search-button" title="Traži"><span class="sr-only"><span>Traži</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Najposjećenije stranice</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorite kontekstni meni sekcije</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Preporučeno od Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorite kontekstni meni sekcije</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popularne teme:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Istaknuto</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorite kontekstni meni sekcije</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prilagodite svoju početnu stranicu novog taba"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pretraži web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pretraži web" title="Pretraži web"/><button id="searchSubmit" class="search-button" title="Traži"><span class="sr-only"><span>Traži</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Najposjećenije stranice</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorite kontekstni meni sekcije</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Preporučeno od Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorite kontekstni meni sekcije</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popularne teme:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Istaknuto</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorite kontekstni meni sekcije</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prilagodite svoju početnu stranicu novog taba"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ca/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ca/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Pestanya nova</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cerca al web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cerca al web" title="Cerca al web"/><button id="searchSubmit" class="search-button" title="Cerca"><span class="sr-only"><span>Cerca</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Llocs principals</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Obre el menú contextual de la secció</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomanat per Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Obre el menú contextual de la secció</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temes populars:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacats</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Obre el menú contextual de la secció</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalitzeu la pàgina de pestanya nova"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cerca al web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cerca al web" title="Cerca al web"/><button id="searchSubmit" class="search-button" title="Cerca"><span class="sr-only"><span>Cerca</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Llocs principals</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Obre el menú contextual de la secció</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edita aquest lloc"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomanat per Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Obre el menú contextual de la secció</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temes populars:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacats</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Obre el menú contextual de la secció</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalitzeu la pàgina de pestanya nova"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/cak/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/cak/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>K'ak'a' ruwi'</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Tikanöx pa Ajk'amaya'l</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Tikanöx pa Ajk'amaya'l" title="Tikanöx pa Ajk'amaya'l"/><button id="searchSubmit" class="search-button" title="Tikanöx"><span class="sr-only"><span>Tikanöx</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Utziläj taq Ruxaq K'amaya'l</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Tijaq ruperaj rokem k'utsamaj</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Chilab'en ruma Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Tijaq ruperaj rokem k'utsamaj</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Nima'q taq Na'oj:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Taq k'ewachinïk</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Tijaq ruperaj rokem k'utsamaj</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tawichinaj ri ruxaq richin K'ak'a' Ruwi'"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Tikanöx pa Ajk'amaya'l</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Tikanöx pa Ajk'amaya'l" title="Tikanöx pa Ajk'amaya'l"/><button id="searchSubmit" class="search-button" title="Tikanöx"><span class="sr-only"><span>Tikanöx</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Utziläj taq Ruxaq K'amaya'l</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Tijaq ruperaj rokem k'utsamaj</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tinuk' re ruxaq k'amaya'l re'"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Chilab'en ruma Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Tijaq ruperaj rokem k'utsamaj</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Nima'q taq Na'oj:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Taq k'ewachinïk</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Tijaq ruperaj rokem k'utsamaj</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tawichinaj ri ruxaq richin K'ak'a' Ruwi'"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/crh/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/crh/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Yañı İlmek</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Ağ'da qıdır</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Ağ'da qıdır" title="Ağ'da qıdır"/><button id="searchSubmit" class="search-button" title="Qıdır"><span class="sr-only"><span>Qıdır</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Zirvedeki Saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsini aç</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket tevsiyeli</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Yüksek-ışıtmalar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Ağ'da qıdır</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Ağ'da qıdır" title="Ağ'da qıdır"/><button id="searchSubmit" class="search-button" title="Qıdır"><span class="sr-only"><span>Qıdır</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Zirvedeki Saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsini aç</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket tevsiyeli</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Yüksek-ışıtmalar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsini aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/crh/activity-stream-strings.js
+++ b/browser/extensions/activity-stream/prerendered/locales/crh/activity-stream-strings.js
@@ -5,38 +5,38 @@ window.gActivityStreamStrings = {
"header_highlights": "Yüksek-ışıtmalar",
"header_recommended_by": "{provider} tevsiyeli",
"context_menu_button_sr": "{title} içün bağlam menüsini aç",
"section_context_menu_button_sr": "Bölüm bağlam menüsini aç",
"type_label_visited": "Ziyaret etilgen",
"type_label_bookmarked": "Saifeimlengen",
"type_label_recommended": "Trendli",
"type_label_pocket": "Pocket'ke saqlanğan",
- "type_label_downloaded": "Downloaded",
+ "type_label_downloaded": "Endirilgen",
"menu_action_bookmark": "Saifeimi",
"menu_action_remove_bookmark": "Saifeimini Çetleştir",
"menu_action_open_new_window": "Yañı Bir Pencerede Aç",
"menu_action_open_private_window": "Yañı bir Hususiy Pencerede Aç",
"menu_action_dismiss": "Sav",
"menu_action_delete": "Keçmişten sil",
"menu_action_pin": "Tüyre",
"menu_action_unpin": "Tüyrelmegen yap",
"confirm_history_delete_p1": "Bu saifeniñ her danesini keçmişiñizden silmege istegeniñizden eminsiñizmi?",
"confirm_history_delete_notice_p2": "Bu amel keri yapılalmaz.",
"menu_action_save_to_pocket": "Pocket'ke Saqla",
"menu_action_delete_pocket": "Pocket’ten sil",
"menu_action_archive_pocket": "Pocket’te arhivle",
- "menu_action_show_file_mac_os": "Show in Finder",
- "menu_action_show_file_windows": "Open Containing Folder",
- "menu_action_show_file_linux": "Open Containing Folder",
- "menu_action_show_file_default": "Show File",
- "menu_action_open_file": "Open File",
- "menu_action_copy_download_link": "Copy Download Link",
- "menu_action_go_to_download_page": "Go to Download Page",
- "menu_action_remove_download": "Remove from History",
+ "menu_action_show_file_mac_os": "Tapıcıda Köster",
+ "menu_action_show_file_windows": "İhtiva Etken Cilbentni Aç",
+ "menu_action_show_file_linux": "İhtiva Etken Cilbentni Aç",
+ "menu_action_show_file_default": "Dosyeni Köster",
+ "menu_action_open_file": "Dosyeni Aç",
+ "menu_action_copy_download_link": "Endirme İlişimini Kopiyala",
+ "menu_action_go_to_download_page": "Endirme Saifesine Bar",
+ "menu_action_remove_download": "Keçmişten Çetleştir",
"search_button": "Qıdır",
"search_header": "{search_engine_name} Qıdırması",
"search_web_placeholder": "Ağ'da qıdır",
"section_disclaimer_topstories": "The most interesting stories on the web, selected based on what you read. From Pocket, now part of Mozilla.",
"section_disclaimer_topstories_linktext": "Learn how it works.",
"section_disclaimer_topstories_buttontext": "Tamam, añladım",
"prefs_home_header": "Firefox Home Content",
"prefs_home_description": "Choose what content you want on your Firefox Home screen.",
@@ -72,34 +72,33 @@ window.gActivityStreamStrings = {
"topsites_form_cancel_button": "Vazgeç",
"topsites_form_url_validation": "Valid URL required",
"topsites_form_image_validation": "Image failed to load. Try a different URL.",
"pocket_read_more": "Popular Topics:",
"pocket_read_even_more": "View More Stories",
"highlights_empty_state": "Start browsing, and we’ll show some of the great articles, videos, and other pages you’ve recently visited or bookmarked here.",
"topstories_empty_state": "You’ve caught up. Check back later for more top stories from {provider}. Can’t wait? Select a popular topic to find more great stories from around the web.",
"manual_migration_explanation2": "Try Firefox with the bookmarks, history and passwords from another browser.",
- "manual_migration_cancel_button": "No Thanks",
+ "manual_migration_cancel_button": "Hayır, Teşekkürler",
"manual_migration_import_button": "Import Now",
"error_fallback_default_info": "Oops, something went wrong loading this content.",
"error_fallback_default_refresh_suggestion": "Refresh page to try again.",
- "section_menu_action_remove_section": "Remove Section",
- "section_menu_action_collapse_section": "Collapse Section",
- "section_menu_action_expand_section": "Expand Section",
- "section_menu_action_manage_section": "Manage Section",
+ "section_menu_action_remove_section": "Kesimni Çetleştir",
+ "section_menu_action_collapse_section": "Kesimni Eştir",
+ "section_menu_action_expand_section": "Kesimni Cayıldır",
+ "section_menu_action_manage_section": "Kesimni İdare Et",
"section_menu_action_manage_webext": "Manage Extension",
- "section_menu_action_add_topsite": "Add Top Site",
- "section_menu_action_move_up": "Move Up",
- "section_menu_action_move_down": "Move Down",
+ "section_menu_action_add_topsite": "Zirvedeki Sayt Ekle",
+ "section_menu_action_move_up": "Yuqarı Avuştır",
+ "section_menu_action_move_down": "Aşağı Avuştır",
"section_menu_action_privacy_notice": "Hususiyat Tebliği",
"firstrun_title": "Take Firefox with You",
"firstrun_content": "Get your bookmarks, history, passwords and other settings on all your devices.",
"firstrun_learn_more_link": "Learn more about Firefox Accounts",
"firstrun_form_header": "Enter your email",
"firstrun_form_sub_header": "to continue to Firefox Sync.",
"firstrun_email_input_placeholder": "Email",
"firstrun_extra_legal_links": "By proceeding, you agree to the {terms} and {privacy}.",
"firstrun_terms_of_service": "Terms of Service",
"firstrun_privacy_notice": "Privacy Notice",
"firstrun_continue_to_login": "Continue",
- "firstrun_skip_login": "Skip this step",
- "settings_pane_search_header": "Qıdır"
+ "firstrun_skip_login": "Skip this step"
};
--- a/browser/extensions/activity-stream/prerendered/locales/cs/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/cs/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nový panel</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Vyhledat na webu</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Vyhledat na webu" title="Vyhledat na webu"/><button id="searchSubmit" class="search-button" title="Vyhledat"><span class="sr-only"><span>Vyhledat</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top stránky</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otevřít kontextovou nabídku sekce</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Doporučení ze služby Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otevřít kontextovou nabídku sekce</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populární témata:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Vybrané</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otevřít kontextovou nabídku sekce</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Přizpůsobení stránky nového panelu"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Vyhledat na webu</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Vyhledat na webu" title="Vyhledat na webu"/><button id="searchSubmit" class="search-button" title="Vyhledat"><span class="sr-only"><span>Vyhledat</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top stránky</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otevřít kontextovou nabídku sekce</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upravit tuto stránku"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Doporučení ze služby Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otevřít kontextovou nabídku sekce</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populární témata:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Vybrané</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otevřít kontextovou nabídku sekce</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Přizpůsobení stránky nového panelu"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/cy/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/cy/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Tab Newydd</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Chwilio'r We</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Chwilio'r We" title="Chwilio'r We"/><button id="searchSubmit" class="search-button" title="Chwilio"><span class="sr-only"><span>Chwilio</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Hoff Wefannau</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Agor dewislen cyd-destun yr adran</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Argymhellwyd gan Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Agor dewislen cyd-destun yr adran</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Pynciau Poblogaidd:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Goreuon</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Agor dewislen cyd-destun yr adran</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Cyfaddasu eich tudalen Tab Newydd"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Chwilio'r We</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Chwilio'r We" title="Chwilio'r We"/><button id="searchSubmit" class="search-button" title="Chwilio"><span class="sr-only"><span>Chwilio</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Hoff Wefannau</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Agor dewislen cyd-destun yr adran</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Golygu'r wefan"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Argymhellwyd gan Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Agor dewislen cyd-destun yr adran</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Pynciau Poblogaidd:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Goreuon</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Agor dewislen cyd-destun yr adran</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Cyfaddasu eich tudalen Tab Newydd"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/da/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/da/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nyt faneblad</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Søg på internettet</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Søg på internettet" title="Søg på internettet"/><button id="searchSubmit" class="search-button" title="Søg"><span class="sr-only"><span>Søg</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besøgte websider</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åbn genvejsmenuen afsnit</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Anbefalet af Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åbn genvejsmenuen afsnit</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populære emner:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Fremhævede</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åbn genvejsmenuen afsnit</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tilpas siden Nyt faneblad"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Søg på internettet</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Søg på internettet" title="Søg på internettet"/><button id="searchSubmit" class="search-button" title="Søg"><span class="sr-only"><span>Søg</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besøgte websider</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åbn genvejsmenuen afsnit</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne webside"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Anbefalet af Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åbn genvejsmenuen afsnit</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populære emner:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Fremhævede</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åbn genvejsmenuen afsnit</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tilpas siden Nyt faneblad"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/de/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/de/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Neuer Tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Das Web durchsuchen</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Das Web durchsuchen" title="Das Web durchsuchen"/><button id="searchSubmit" class="search-button" title="Suchen"><span class="sr-only"><span>Suchen</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Wichtige Seiten</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontextmenü des Abschnitts öffnen</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Empfohlen von Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontextmenü des Abschnitts öffnen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Beliebte Themen:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Überblick</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontextmenü des Abschnitts öffnen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Einstellungen für neue Tabs anpassen"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Das Web durchsuchen</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Das Web durchsuchen" title="Das Web durchsuchen"/><button id="searchSubmit" class="search-button" title="Suchen"><span class="sr-only"><span>Suchen</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Wichtige Seiten</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontextmenü des Abschnitts öffnen</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Diese Website bearbeiten"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Empfohlen von Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontextmenü des Abschnitts öffnen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Beliebte Themen:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Überblick</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontextmenü des Abschnitts öffnen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Einstellungen für neue Tabs anpassen"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/dsb/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/dsb/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nowy rejtark</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Web pśepytaś</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Web pśepytaś" title="Web pśepytaś"/><button id="searchSubmit" class="search-button" title="Pytaś"><span class="sr-only"><span>Pytaś</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Nejcesćej woglědane sedła</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wótrězka wócyniś</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Wót Pocket dopórucony</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wótrězka wócyniś</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Woblubowane temy:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wjerški</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wótrězka wócyniś</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Bok wašogo nowego rejtarka pśiměriś"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Web pśepytaś</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Web pśepytaś" title="Web pśepytaś"/><button id="searchSubmit" class="search-button" title="Pytaś"><span class="sr-only"><span>Pytaś</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Nejcesćej woglědane sedła</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wótrězka wócyniś</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Toś to sedło wobźěłaś"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Wót Pocket dopórucony</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wótrězka wócyniś</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Woblubowane temy:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wjerški</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wótrězka wócyniś</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Bok wašogo nowego rejtarka pśiměriś"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/el/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/el/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Νέα καρτέλα</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Αναζήτηση στον ιστό</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Αναζήτηση στον ιστό" title="Αναζήτηση στον ιστό"/><button id="searchSubmit" class="search-button" title="Αναζήτηση"><span class="sr-only"><span>Αναζήτηση</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Κορυφαίες ιστοσελίδες</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Προτεινόμενο από τον πάροχο Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Δημοφιλή θέματα:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Κορυφαίες στιγμές</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Προσαρμογή της σελίδας Νέας Καρτέλας"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Αναζήτηση στον ιστό</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Αναζήτηση στον ιστό" title="Αναζήτηση στον ιστό"/><button id="searchSubmit" class="search-button" title="Αναζήτηση"><span class="sr-only"><span>Αναζήτηση</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Κορυφαίες ιστοσελίδες</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Άνοιγμα του μενού επιλογών ενότητας</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Επεξεργασία ιστοσελίδας"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Προτεινόμενο από τον πάροχο Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Άνοιγμα του μενού επιλογών ενότητας</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Δημοφιλή θέματα:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Κορυφαίες στιγμές</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Άνοιγμα του μενού επιλογών ενότητας</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Προσαρμογή της σελίδας Νέας Καρτέλας"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/el/activity-stream-strings.js
+++ b/browser/extensions/activity-stream/prerendered/locales/el/activity-stream-strings.js
@@ -1,55 +1,55 @@
// Note - this is a generated el file.
window.gActivityStreamStrings = {
"newtab_page_title": "Νέα καρτέλα",
"header_top_sites": "Κορυφαίες ιστοσελίδες",
"header_highlights": "Κορυφαίες στιγμές",
"header_recommended_by": "Προτεινόμενο από τον πάροχο {provider}",
"context_menu_button_sr": "Άνοιγμα μενού επιλογών για το {title}",
- "section_context_menu_button_sr": "Open the section context menu",
+ "section_context_menu_button_sr": "Άνοιγμα του μενού επιλογών ενότητας",
"type_label_visited": "Από ιστορικό",
"type_label_bookmarked": "Από σελιδοδείκτες",
"type_label_recommended": "Τάσεις",
"type_label_pocket": "Αποθηκεύτηκε στο Pocket",
- "type_label_downloaded": "Downloaded",
+ "type_label_downloaded": "Λήψεις",
"menu_action_bookmark": "Προσθήκη σελιδοδείκτη",
"menu_action_remove_bookmark": "Αφαίρεση σελιδοδείκτη",
"menu_action_open_new_window": "Άνοιγμα σε νέο παράθυρο",
"menu_action_open_private_window": "Άνοιγμα σε νέο ιδιωτικό παράθυρο",
"menu_action_dismiss": "Απόρριψη",
"menu_action_delete": "Διαγραφή από ιστορικό",
"menu_action_pin": "Καρφίτσωμα",
"menu_action_unpin": "Ξεκαρφίτσωμα",
"confirm_history_delete_p1": "Θέλετε σίγουρα να διαγράψετε κάθε παρουσία της σελίδας αυτής από το ιστορικό σας;",
"confirm_history_delete_notice_p2": "Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.",
"menu_action_save_to_pocket": "Αποθήκευση στο Pocket",
"menu_action_delete_pocket": "Διαγραφή από το Pocket",
"menu_action_archive_pocket": "Αρχειοθέτηση στο Pocket",
- "menu_action_show_file_mac_os": "Show in Finder",
+ "menu_action_show_file_mac_os": "Εμφάνιση στο Finder",
"menu_action_show_file_windows": "Open Containing Folder",
"menu_action_show_file_linux": "Open Containing Folder",
- "menu_action_show_file_default": "Show File",
- "menu_action_open_file": "Open File",
+ "menu_action_show_file_default": "Προβολή αρχείου",
+ "menu_action_open_file": "Άνοιγμα αρχείου",
"menu_action_copy_download_link": "Copy Download Link",
"menu_action_go_to_download_page": "Go to Download Page",
- "menu_action_remove_download": "Remove from History",
+ "menu_action_remove_download": "Αφαίρεση από το ιστορικό",
"search_button": "Αναζήτηση",
"search_header": "Αναζήτηση {search_engine_name}",
"search_web_placeholder": "Αναζήτηση στον ιστό",
"section_disclaimer_topstories": "Οι πιο ενδιαφέρουσες ιστορίες στο διαδίκτυο, επιλεγμένες βάσει όσων διαβάζετε. Από το Pocket, πλέον μέλος της Mozilla.",
"section_disclaimer_topstories_linktext": "Μάθετε πώς λειτουργεί.",
"section_disclaimer_topstories_buttontext": "Εντάξει, το 'πιασα",
"prefs_home_header": "Περιεχόμενο αρχικής σελίδας Firefox",
"prefs_home_description": "Επιλέξτε τι περιεχόμενο θέλετε στην αρχική σελίδα του Firefox σας.",
"prefs_section_rows_option": "{num} σειρά;{num} σειρές",
"prefs_search_header": "Αναζήτηση ιστού",
"prefs_topsites_description": "Οι ιστοσελίδες που επισκέπτεστε περισσότερο",
"prefs_topstories_description2": "Great content from around the web, personalized for you",
- "prefs_topstories_options_sponsored_label": "Sponsored Stories",
+ "prefs_topstories_options_sponsored_label": "Χορηγούμενες ιστορίες",
"prefs_topstories_sponsored_learn_more": "Μάθετε περισσότερα",
"prefs_highlights_description": "Μια συλλογή ιστοσελίδων που έχετε αποθηκεύσει ή επισκεφθεί",
"prefs_highlights_options_visited_label": "Visited Pages",
"prefs_highlights_options_download_label": "Most Recent Download",
"prefs_highlights_options_pocket_label": "Pages Saved to Pocket",
"prefs_snippets_description": "Ενημερώσεις από τη Mozilla και το Firefox",
"settings_pane_button_label": "Προσαρμογή της σελίδας Νέας Καρτέλας",
"settings_pane_topsites_header": "Κορυφαίες ιστοσελίδες",
@@ -95,25 +95,10 @@ window.gActivityStreamStrings = {
"firstrun_learn_more_link": "Learn more about Firefox Accounts",
"firstrun_form_header": "Enter your email",
"firstrun_form_sub_header": "to continue to Firefox Sync.",
"firstrun_email_input_placeholder": "Email",
"firstrun_extra_legal_links": "By proceeding, you agree to the {terms} and {privacy}.",
"firstrun_terms_of_service": "Terms of Service",
"firstrun_privacy_notice": "Privacy Notice",
"firstrun_continue_to_login": "Continue",
- "firstrun_skip_login": "Skip this step",
- "prefs_restore_defaults_button": "Επαναφορά προεπιλογών",
- "prefs_topstories_description": "Υψηλής ποιότητας περιεχόμενο που ίσως έχετε χάσει",
- "prefs_topstories_show_sponsored_label": "Χορηγούμενες ιστορίες του {provider}",
- "settings_pane_header": "Προτιμήσεις νέας καρτέλας",
- "settings_pane_body2": "Επιλέξτε τι θα βλέπετε σε αυτή τη σελίδα.",
- "settings_pane_search_header": "Αναζήτηση",
- "settings_pane_search_body": "Αναζήτηση στο διαδίκτυο από τη νέα σας καρτέλα.",
- "settings_pane_topsites_body": "Πρόσβαση στις ιστοσελίδες που επισκέπτεστε περισσότερο.",
- "settings_pane_topsites_options_showmore": "Εμφάνιση δύο σειρών",
- "settings_pane_highlights_body2": "Βρείτε ξανά κάτι ενδιαφέρον που έχετε επισκεφθεί πρόσφατα ή έχετε αποθηκεύσει στους σελιδοδείκτες σας.",
- "settings_pane_highlights_options_visited": "Πρόσφατες ιστοσελίδες",
- "settings_pane_snippets_body": "Διαβάστε σύντομες και όμορφες ενημερώσεις από τη Mozilla σχετικά με το Firefox, το διαδικτυακό πολιτισμό και τα περιστασιακά, τυχαία memes.",
- "settings_pane_done_button": "Τέλος",
- "settings_pane_topstories_options_sponsored": "Εμφάνιση χορηγούμενων ιστοριών",
- "pocket_description": "Ανακαλύψτε περιεχόμενο υψηλής ακρίβειας που ίσως να χάνατε διαφορετικά, με τη βοήθεια του Pocket, μέλους της Mozilla."
+ "firstrun_skip_login": "Skip this step"
};
--- a/browser/extensions/activity-stream/prerendered/locales/en-CA/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/en-CA/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>New Tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/en-GB/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/en-GB/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>New Tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customise your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customise your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/en-US/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/en-US/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>New Tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/eo/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/eo/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nova langeto</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Serĉi la reton</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Serĉi la reton" title="Serĉi la reton"/><button id="searchSubmit" class="search-button" title="Serĉi"><span class="sr-only"><span>Serĉi</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Plej vizititaj</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Malfermi sekcion de kunteksta menuo</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekomendita de Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Malfermi sekcion de kunteksta menuo</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Ĉefaj temoj:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Elstaraĵoj</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Malfermi sekcion de kunteksta menuo</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personecigi la paĝon por novaj langetoj"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Serĉi la reton</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Serĉi la reton" title="Serĉi la reton"/><button id="searchSubmit" class="search-button" title="Serĉi"><span class="sr-only"><span>Serĉi</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Plej vizititaj</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Malfermi sekcion de kunteksta menuo</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redakti ĉi tiun retejon"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekomendita de Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Malfermi sekcion de kunteksta menuo</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Ĉefaj temoj:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Elstaraĵoj</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Malfermi sekcion de kunteksta menuo</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personecigi la paĝon por novaj langetoj"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/es-AR/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/es-AR/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nueva pestaña</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la web" title="Buscar en la web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Más visitados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir el menú contextual de la sección</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir el menú contextual de la sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Tópicos populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir el menú contextual de la sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar la página nueva pestaña"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la web" title="Buscar en la web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Más visitados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir el menú contextual de la sección</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir el menú contextual de la sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Tópicos populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir el menú contextual de la sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar la página nueva pestaña"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/es-CL/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/es-CL/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nueva pestaña</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la Web" title="Buscar en la Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios frecuentes</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir sección del menú contextual</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir sección del menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir sección del menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personaliza tu página de Nueva pestaña"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la Web" title="Buscar en la Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios frecuentes</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir sección del menú contextual</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir sección del menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir sección del menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personaliza tu página de Nueva pestaña"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/es-ES/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/es-ES/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nueva pestaña</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la Web" title="Buscar en la Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios favoritos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar la página Nueva pestaña"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la Web" title="Buscar en la Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios favoritos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar la página Nueva pestaña"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/es-MX/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/es-MX/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nueva pestaña</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la Web" title="Buscar en la Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios favoritos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar tu página de nueva pestaña"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar en la Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar en la Web" title="Buscar en la Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios favoritos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir la sección menú contextual</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar tu página de nueva pestaña"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/et/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/et/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Uus kaart</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Otsi veebist</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Otsi veebist" title="Otsi veebist"/><button id="searchSubmit" class="search-button" title="Otsi"><span class="sr-only"><span>Otsi</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top saidid</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ava osa kontekstimenüü</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket soovitab</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ava osa kontekstimenüü</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populaarsed teemad:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Esiletõstetud</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ava osa kontekstimenüü</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Kohanda uue kaardi lehte"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Otsi veebist</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Otsi veebist" title="Otsi veebist"/><button id="searchSubmit" class="search-button" title="Otsi"><span class="sr-only"><span>Otsi</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top saidid</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ava osa kontekstimenüü</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muuda seda saiti"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket soovitab</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ava osa kontekstimenüü</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populaarsed teemad:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Esiletõstetud</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ava osa kontekstimenüü</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Kohanda uue kaardi lehte"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/eu/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/eu/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Fitxa berria</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Bilatu webean</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Bilatu webean" title="Bilatu webean"/><button id="searchSubmit" class="search-button" title="Bilatu"><span class="sr-only"><span>Bilatu</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Gune erabilienak</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ireki atalaren testuinguru-menua</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket hornitzaileak gomendatuta</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ireki atalaren testuinguru-menua</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Gai ezagunak:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Nabarmendutakoak</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ireki atalaren testuinguru-menua</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Pertsonalizatu fitxa berriaren orria"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Bilatu webean</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Bilatu webean" title="Bilatu webean"/><button id="searchSubmit" class="search-button" title="Bilatu"><span class="sr-only"><span>Bilatu</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Gune erabilienak</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ireki atalaren testuinguru-menua</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editatu gune hau"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket hornitzaileak gomendatuta</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ireki atalaren testuinguru-menua</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Gai ezagunak:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Nabarmendutakoak</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ireki atalaren testuinguru-menua</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Pertsonalizatu fitxa berriaren orria"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/fa/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/fa/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>زبانه جدید</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>جستوجوی وب</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="جستوجوی وب" title="جستوجوی وب"/><button id="searchSubmit" class="search-button" title="جستوجو"><span class="sr-only"><span>جستوجو</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>سایتهای برتر</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>پیشنهاد شده توسط Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>موضوعهای محبوب:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>برجستهها</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="صفحهٔ زبانه جدید را سفارشی کنید"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>جستوجوی وب</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="جستوجوی وب" title="جستوجوی وب"/><button id="searchSubmit" class="search-button" title="جستوجو"><span class="sr-only"><span>جستوجو</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>سایتهای برتر</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ویرایش این سایت"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>پیشنهاد شده توسط Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>موضوعهای محبوب:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>برجستهها</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="صفحهٔ زبانه جدید را سفارشی کنید"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ff/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ff/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Tabbere hesere</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Yiylo geese</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Yiylo geese" title="Yiylo geese"/><button id="searchSubmit" class="search-button" title="Yiylo"><span class="sr-only"><span>Yiylo</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Lowe dowrowe</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Uddit taƴre dosol ngonka</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Waggini ɗum ko Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Uddit taƴre dosol ngonka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Loowdiiji lolluɗi:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Jalbine</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Uddit taƴre dosol ngonka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Neɗɗin tabbere maa hello hesere ndee"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Yiylo geese</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Yiylo geese" title="Yiylo geese"/><button id="searchSubmit" class="search-button" title="Yiylo"><span class="sr-only"><span>Yiylo</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Lowe dowrowe</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Uddit taƴre dosol ngonka</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Taƴto ndee lowre"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Waggini ɗum ko Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Uddit taƴre dosol ngonka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Loowdiiji lolluɗi:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Jalbine</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Uddit taƴre dosol ngonka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Neɗɗin tabbere maa hello hesere ndee"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/fi/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/fi/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Uusi välilehti</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Verkkohaku</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Verkkohaku" title="Verkkohaku"/><button id="searchSubmit" class="search-button" title="Haku"><span class="sr-only"><span>Haku</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Ykkössivustot</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Avaa osion ponnahdusvalikko</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Suositukset lähteestä Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Avaa osion ponnahdusvalikko</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Suositut aiheet:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Nostot</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Avaa osion ponnahdusvalikko</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Muokkaa Uusi välilehti -sivua"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Verkkohaku</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Verkkohaku" title="Verkkohaku"/><button id="searchSubmit" class="search-button" title="Haku"><span class="sr-only"><span>Haku</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Ykkössivustot</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Avaa osion ponnahdusvalikko</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Muokkaa tätä sivustoa"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Suositukset lähteestä Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Avaa osion ponnahdusvalikko</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Suositut aiheet:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Nostot</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Avaa osion ponnahdusvalikko</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Muokkaa Uusi välilehti -sivua"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/fr/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/fr/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nouvel onglet</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Rechercher sur le Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Rechercher sur le Web" title="Rechercher sur le Web"/><button id="searchSubmit" class="search-button" title="Rechercher"><span class="sr-only"><span>Rechercher</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sites les plus visités</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ouvrir le menu contextuel de cette section</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommandations par Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ouvrir le menu contextuel de cette section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Sujets populaires :</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Éléments-clés</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ouvrir le menu contextuel de cette section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personnaliser la page Nouvel onglet"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Rechercher sur le Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Rechercher sur le Web" title="Rechercher sur le Web"/><button id="searchSubmit" class="search-button" title="Rechercher"><span class="sr-only"><span>Rechercher</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sites les plus visités</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ouvrir le menu contextuel de cette section</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifier ce site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommandations par Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ouvrir le menu contextuel de cette section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Sujets populaires :</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Éléments-clés</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ouvrir le menu contextuel de cette section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personnaliser la page Nouvel onglet"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/fy-NL/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/fy-NL/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nij ljepblêd</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Sykje op it web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Sykje op it web" title="Sykje op it web"/><button id="searchSubmit" class="search-button" title="Sykje"><span class="sr-only"><span>Sykje</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Topwebsites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstmenu fan seksje iepenje</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Oanrekommandearre troch Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstmenu fan seksje iepenje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populêre ûnderwerpen:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Hichtepunten</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstmenu fan seksje iepenje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Jo side foar nije ljepblêden oanpasse"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Sykje op it web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Sykje op it web" title="Sykje op it web"/><button id="searchSubmit" class="search-button" title="Sykje"><span class="sr-only"><span>Sykje</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Topwebsites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstmenu fan seksje iepenje</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Dizze side bewurkje"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Oanrekommandearre troch Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstmenu fan seksje iepenje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populêre ûnderwerpen:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Hichtepunten</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstmenu fan seksje iepenje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Jo side foar nije ljepblêden oanpasse"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ga-IE/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ga-IE/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Cluaisín Nua</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cuardaigh an Gréasán</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cuardaigh an Gréasán" title="Cuardaigh an Gréasán"/><button id="searchSubmit" class="search-button" title="Cuardach"><span class="sr-only"><span>Cuardach</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Barrshuímh</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Topaicí i mbéal an phobail:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Saincheap an Leathanach do Chluaisín Nua"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cuardaigh an Gréasán</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cuardaigh an Gréasán" title="Cuardaigh an Gréasán"/><button id="searchSubmit" class="search-button" title="Cuardach"><span class="sr-only"><span>Cuardach</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Barrshuímh</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cuir an suíomh seo in eagar"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Topaicí i mbéal an phobail:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Saincheap an Leathanach do Chluaisín Nua"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/gd/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/gd/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Taba ùr</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Lorg air an lìon</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Lorg air an lìon" title="Lorg air an lìon"/><button id="searchSubmit" class="search-button" title="Lorg"><span class="sr-only"><span>Lorg</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Brod nan làrach</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Fosgail clàr-taice co-theacsail na h-earrainn</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>’Ga mholadh le Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Fosgail clàr-taice co-theacsail na h-earrainn</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Cuspairean fèillmhor:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Sàr-roghainn</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Fosgail clàr-taice co-theacsail na h-earrainn</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Gnàthaich duilleag nan tabaichean ùra agad"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Lorg air an lìon</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Lorg air an lìon" title="Lorg air an lìon"/><button id="searchSubmit" class="search-button" title="Lorg"><span class="sr-only"><span>Lorg</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Brod nan làrach</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Fosgail clàr-taice co-theacsail na h-earrainn</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deasaich an làrach seo"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>’Ga mholadh le Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Fosgail clàr-taice co-theacsail na h-earrainn</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Cuspairean fèillmhor:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Sàr-roghainn</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Fosgail clàr-taice co-theacsail na h-earrainn</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Gnàthaich duilleag nan tabaichean ùra agad"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/gl/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/gl/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nova lapela</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar na Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar na Web" title="Buscar na Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios favoritos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menú contextual da sección</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menú contextual da sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menú contextual da sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalice a páxina de nova lapela"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Buscar na Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Buscar na Web" title="Buscar na Web"/><button id="searchSubmit" class="search-button" title="Buscar"><span class="sr-only"><span>Buscar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitios favoritos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menú contextual da sección</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este sitio"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menú contextual da sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temas populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destacados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menú contextual da sección</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalice a páxina de nova lapela"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/gn/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/gn/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Tendayke Pyahu</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Ñandutivevépe Jeheka</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Ñandutivevépe Jeheka" title="Ñandutivevépe Jeheka"/><button id="searchSubmit" class="search-button" title="Eheka"><span class="sr-only"><span>Eheka</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Tenda Ojehechavéva</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Eike poravorã vore jereguávape</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket he'i ndéve reike hag̃ua</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Eike poravorã vore jereguávape</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Ñe'ẽmbyrã Ojehayhuvéva:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Mba'eporãitéva</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Eike poravorã vore jereguávape</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Eñemomba'e ne Tendayke Pyahu roguére"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Ñandutivevépe Jeheka</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Ñandutivevépe Jeheka" title="Ñandutivevépe Jeheka"/><button id="searchSubmit" class="search-button" title="Eheka"><span class="sr-only"><span>Eheka</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Tenda Ojehechavéva</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Eike poravorã vore jereguávape</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Embosako'i ko tenda"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket he'i ndéve reike hag̃ua</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Eike poravorã vore jereguávape</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Ñe'ẽmbyrã Ojehayhuvéva:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Mba'eporãitéva</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Eike poravorã vore jereguávape</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Eñemomba'e ne Tendayke Pyahu roguére"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/gu-IN/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/gu-IN/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>નવી ટૅબ</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>વેબ પર શોધો</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="વેબ પર શોધો" title="વેબ પર શોધો"/><button id="searchSubmit" class="search-button" title="શોધો"><span class="sr-only"><span>શોધો</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ટોચની સાઇટ્સ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>વિભાગ સંદર્ભ મેનૂ ખોલો</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>દ્વારા ભલામણ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>વિભાગ સંદર્ભ મેનૂ ખોલો</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>લોકપ્રિય વિષયો:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>હાઇલાઇટ્સ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>વિભાગ સંદર્ભ મેનૂ ખોલો</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="તમારા નવા ટૅબ પૃષ્ઠને કસ્ટમાઇઝ કરો"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>વેબ પર શોધો</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="વેબ પર શોધો" title="વેબ પર શોધો"/><button id="searchSubmit" class="search-button" title="શોધો"><span class="sr-only"><span>શોધો</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ટોચની સાઇટ્સ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>વિભાગ સંદર્ભ મેનૂ ખોલો</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="આ સાઇટને સંપાદિત કરો"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>દ્વારા ભલામણ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>વિભાગ સંદર્ભ મેનૂ ખોલો</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>લોકપ્રિય વિષયો:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>હાઇલાઇટ્સ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>વિભાગ સંદર્ભ મેનૂ ખોલો</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="તમારા નવા ટૅબ પૃષ્ઠને કસ્ટમાઇઝ કરો"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/he/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/he/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>לשונית חדשה</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>חיפוש ברשת</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="חיפוש ברשת" title="חיפוש ברשת"/><button id="searchSubmit" class="search-button" title="חיפוש"><span class="sr-only"><span>חיפוש</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>אתרים מובילים</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>פתיחת תפריט ההקשר של המדור</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>מומלץ על ידי Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>פתיחת תפריט ההקשר של המדור</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>נושאים פופולריים:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>מומלצים</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>פתיחת תפריט ההקשר של המדור</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="התאמה אישית של דף הלשונית החדשה שלך"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>חיפוש ברשת</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="חיפוש ברשת" title="חיפוש ברשת"/><button id="searchSubmit" class="search-button" title="חיפוש"><span class="sr-only"><span>חיפוש</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>אתרים מובילים</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>פתיחת תפריט ההקשר של המדור</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="עריכת אתר זה"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>מומלץ על ידי Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>פתיחת תפריט ההקשר של המדור</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>נושאים פופולריים:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>מומלצים</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>פתיחת תפריט ההקשר של המדור</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="התאמה אישית של דף הלשונית החדשה שלך"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/hi-IN/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/hi-IN/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>नया टैब</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेब पर खोजें</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेब पर खोजें" title="वेब पर खोजें"/><button id="searchSubmit" class="search-button" title="खोज"><span class="sr-only"><span>खोज</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>सर्वोच्च साइटें</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>अनुभाग प्रसंग मेनू खोलें</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket द्वारा अनुशंसित</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>अनुभाग प्रसंग मेनू खोलें</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>लोकप्रिय विषय:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>झलकियाँ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>अनुभाग प्रसंग मेनू खोलें</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="अपने नए टैब पृष्ठ को अनुकूलित करें"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेब पर खोजें</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेब पर खोजें" title="वेब पर खोजें"/><button id="searchSubmit" class="search-button" title="खोज"><span class="sr-only"><span>खोज</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>सर्वोच्च साइटें</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>अनुभाग प्रसंग मेनू खोलें</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="इस साइट को संपादित करें"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket द्वारा अनुशंसित</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>अनुभाग प्रसंग मेनू खोलें</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>लोकप्रिय विषय:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>झलकियाँ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>अनुभाग प्रसंग मेनू खोलें</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="अपने नए टैब पृष्ठ को अनुकूलित करें"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/hr/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/hr/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nova kartica</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pretraži web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pretraži web" title="Pretraži web"/><button id="searchSubmit" class="search-button" title="Traži"><span class="sr-only"><span>Traži</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Najbolje stranice</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Preporučeno od Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popularne teme:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Istaknuto</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prilagodite svoju početnu stranicu nove kartice"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pretraži web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pretraži web" title="Pretraži web"/><button id="searchSubmit" class="search-button" title="Traži"><span class="sr-only"><span>Traži</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Najbolje stranice</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi ovu stranicu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Preporučeno od Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popularne teme:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Istaknuto</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prilagodite svoju početnu stranicu nove kartice"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/hsb/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/hsb/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nowy rajtark</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Web přepytać</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Web přepytać" title="Web přepytać"/><button id="searchSubmit" class="search-button" title="Pytać"><span class="sr-only"><span>Pytać</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Najhusćišo wopytane sydła</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wotrězka wočinić</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Wot Pocket doporučeny</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wotrězka wočinić</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Woblubowane temy:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wjerški</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wotrězka wočinić</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Stronu wašeho noweho rajtarka přiměrić"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Web přepytać</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Web přepytać" title="Web přepytać"/><button id="searchSubmit" class="search-button" title="Pytać"><span class="sr-only"><span>Pytać</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Najhusćišo wopytane sydła</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wotrězka wočinić</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Tute sydło wobdźěłać"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Wot Pocket doporučeny</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wotrězka wočinić</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Woblubowane temy:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wjerški</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Kontekstowy meni wotrězka wočinić</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Stronu wašeho noweho rajtarka přiměrić"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/hu/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/hu/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Új lap</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Keresés a weben</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Keresés a weben" title="Keresés a weben"/><button id="searchSubmit" class="search-button" title="Keresés"><span class="sr-only"><span>Keresés</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Népszerű oldalak</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>A szakasz környezeti menüjének megnyitása</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>A(z) Pocket ajánlásával</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>A szakasz környezeti menüjének megnyitása</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Népszerű témák:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Kiemelések</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>A szakasz környezeti menüjének megnyitása</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Az Új lap oldal személyre szabása"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Keresés a weben</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Keresés a weben" title="Keresés a weben"/><button id="searchSubmit" class="search-button" title="Keresés"><span class="sr-only"><span>Keresés</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Népszerű oldalak</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>A szakasz környezeti menüjének megnyitása</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Webhely szerkesztése"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>A(z) Pocket ajánlásával</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>A szakasz környezeti menüjének megnyitása</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Népszerű témák:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Kiemelések</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>A szakasz környezeti menüjének megnyitása</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Az Új lap oldal személyre szabása"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/hy-AM/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/hy-AM/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Նոր ներդիր</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Որոնել առցանց</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Որոնել առցանց" title="Որոնել առցանց"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Լավագույն կայքեր</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Գունանշում</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Որոնել առցանց</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Որոնել առցանց" title="Որոնել առցանց"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Լավագույն կայքեր</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Գունանշում</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ia/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ia/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nove scheda</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cercar in le Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cercar in le Web" title="Cercar in le Web"/><button id="searchSubmit" class="search-button" title="Cercar"><span class="sr-only"><span>Cercar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitos popular</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Aperir le menu contextual de section</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommendate per Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Aperir le menu contextual de section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Subjectos popular:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>In evidentia</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Aperir le menu contextual de section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalisar tu pagina de nove scheda"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cercar in le Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cercar in le Web" title="Cercar in le Web"/><button id="searchSubmit" class="search-button" title="Cercar"><span class="sr-only"><span>Cercar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sitos popular</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Aperir le menu contextual de section</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar iste sito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommendate per Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Aperir le menu contextual de section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Subjectos popular:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>In evidentia</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Aperir le menu contextual de section</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalisar tu pagina de nove scheda"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/id/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/id/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Tab Baru</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cari di Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cari di Web" title="Cari di Web"/><button id="searchSubmit" class="search-button" title="Cari"><span class="sr-only"><span>Cari</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Situs Teratas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Disarankan oleh Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Topik Populer:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Sorotan</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Ubahsuai laman Tab Baru Anda"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cari di Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cari di Web" title="Cari di Web"/><button id="searchSubmit" class="search-button" title="Cari"><span class="sr-only"><span>Cari</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Situs Teratas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Sunting situs ini"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Disarankan oleh Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Topik Populer:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Sorotan</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Ubahsuai laman Tab Baru Anda"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/it/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/it/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nuova scheda</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cerca sul Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cerca sul Web" title="Cerca sul Web"/><button id="searchSubmit" class="search-button" title="Cerca"><span class="sr-only"><span>Cerca</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Siti principali</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Apri il menu contestuale per la sezione</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Consigliati da Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Apri il menu contestuale per la sezione</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Argomenti popolari:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>In evidenza</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Apri il menu contestuale per la sezione</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizza la pagina Nuova scheda"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cerca sul Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cerca sul Web" title="Cerca sul Web"/><button id="searchSubmit" class="search-button" title="Cerca"><span class="sr-only"><span>Cerca</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Siti principali</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Apri il menu contestuale per la sezione</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifica questo sito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Consigliati da Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Apri il menu contestuale per la sezione</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Argomenti popolari:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>In evidenza</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Apri il menu contestuale per la sezione</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizza la pagina Nuova scheda"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ja/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ja/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>新しいタブ</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ウェブを検索</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ウェブを検索" title="ウェブを検索"/><button id="searchSubmit" class="search-button" title="検索"><span class="sr-only"><span>検索</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>トップサイト</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>セクションのコンテキストメニューを開く</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket のおすすめ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>セクションのコンテキストメニューを開く</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>人気のトピック:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ハイライト</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>セクションのコンテキストメニューを開く</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="新しいタブページをカスタマイズ"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ウェブを検索</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ウェブを検索" title="ウェブを検索"/><button id="searchSubmit" class="search-button" title="検索"><span class="sr-only"><span>検索</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>トップサイト</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>セクションのコンテキストメニューを開く</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="このサイトを編集"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket のおすすめ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>セクションのコンテキストメニューを開く</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>人気のトピック:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ハイライト</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>セクションのコンテキストメニューを開く</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="新しいタブページをカスタマイズ"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ka/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ka/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>ახალი ჩანართი</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ინტერნეტში ძიება</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ინტერნეტში ძიება" title="ინტერნეტში ძიება"/><button id="searchSubmit" class="search-button" title="ძიება"><span class="sr-only"><span>ძიება</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>რჩეული საიტები</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>გვერდის ნაწილების პარამეტრები</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket-ის შემოთავაზებული</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>გვერდის ნაწილების პარამეტრები</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>პოპულარული თემები:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>მნიშვნელოვანი საიტები</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>გვერდის ნაწილების პარამეტრები</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="მოირგეთ ახალი ჩანართის გვერდი"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ინტერნეტში ძიება</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ინტერნეტში ძიება" title="ინტერნეტში ძიება"/><button id="searchSubmit" class="search-button" title="ძიება"><span class="sr-only"><span>ძიება</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>რჩეული საიტები</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>გვერდის ნაწილების პარამეტრები</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="საიტის ჩასწორება"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket-ის შემოთავაზებული</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>გვერდის ნაწილების პარამეტრები</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>პოპულარული თემები:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>მნიშვნელოვანი საიტები</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>გვერდის ნაწილების პარამეტრები</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="მოირგეთ ახალი ჩანართის გვერდი"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/kab/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/kab/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Iccer amaynut</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Nadi di Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Nadi di Web" title="Nadi di Web"/><button id="searchSubmit" class="search-button" title="Nadi"><span class="sr-only"><span>Nadi</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Ismal ifazen</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ldi umuɣ n usatal n tgezmi</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Iwelleh-it-id Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ldi umuɣ n usatal n tgezmi</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Isental ittwasnen aṭas:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Asebrureq</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ldi umuɣ n usatal n tgezmi</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Sagen asebter n yiccer-ik amaynut"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Nadi di Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Nadi di Web" title="Nadi di Web"/><button id="searchSubmit" class="search-button" title="Nadi"><span class="sr-only"><span>Nadi</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Ismal ifazen</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ldi umuɣ n usatal n tgezmi</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Ẓreg asmel-agi"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Iwelleh-it-id Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ldi umuɣ n usatal n tgezmi</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Isental ittwasnen aṭas:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Asebrureq</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Ldi umuɣ n usatal n tgezmi</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Sagen asebter n yiccer-ik amaynut"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/kk/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/kk/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Жаңа бет</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Интернетте іздеу</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Интернетте іздеу" title="Интернетте іздеу"/><button id="searchSubmit" class="search-button" title="Іздеу"><span class="sr-only"><span>Іздеу</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Үздік сайттар</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Санаттың контекст мәзірін ашу</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Ұсынушы Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Санаттың контекст мәзірін ашу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Әйгілі тақырыптар:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Ерекше жаңалықтар</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Санаттың контекст мәзірін ашу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Жаңа бетті баптаңыз"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Интернетте іздеу</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Интернетте іздеу" title="Интернетте іздеу"/><button id="searchSubmit" class="search-button" title="Іздеу"><span class="sr-only"><span>Іздеу</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Үздік сайттар</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Санаттың контекст мәзірін ашу</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Бұл сайтты түзету"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Ұсынушы Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Санаттың контекст мәзірін ашу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Әйгілі тақырыптар:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Ерекше жаңалықтар</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Санаттың контекст мәзірін ашу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Жаңа бетті баптаңыз"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/km/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/km/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>ផ្ទាំងថ្មី</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ស្វែងរកបណ្ដាញ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ស្វែងរកបណ្ដាញ" title="ស្វែងរកបណ្ដាញ"/><button id="searchSubmit" class="search-button" title="ស្វែងរក"><span class="sr-only"><span>ស្វែងរក</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>វិបសាយលើគេ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>បានណែនាំដោយ Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ប្រធានបទកំពុងពេញនិយម៖</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>រឿងសំខាន់ៗ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ស្វែងរកបណ្ដាញ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ស្វែងរកបណ្ដាញ" title="ស្វែងរកបណ្ដាញ"/><button id="searchSubmit" class="search-button" title="ស្វែងរក"><span class="sr-only"><span>ស្វែងរក</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>វិបសាយលើគេ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="កែសម្រួលសាយនេះ"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>បានណែនាំដោយ Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ប្រធានបទកំពុងពេញនិយម៖</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>រឿងសំខាន់ៗ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/kn/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/kn/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>ಹೊಸ ಹಾಳೆ</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ಅಂತರ್ಜಾಲವನ್ನು ಹುಡುಕಿ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ಅಂತರ್ಜಾಲವನ್ನು ಹುಡುಕಿ" title="ಅಂತರ್ಜಾಲವನ್ನು ಹುಡುಕಿ"/><button id="searchSubmit" class="search-button" title="ಹುಡುಕು"><span class="sr-only"><span>ಹುಡುಕು</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ಪ್ರಮುಖ ತಾಣಗಳು</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket ರಿಂದ ಶಿಫಾರಸುಮಾಡುಲಾಗಿದೆ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ಜನಪ್ರಿಯವಾದ ವಿಷಯಗಳು:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ಮುಖ್ಯಾಂಶಗಳು</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ಹೊಸ ಹಾಳೆಯ ಪುಟವನ್ನು ಅಗತ್ಯಾನುಗುಣಗೊಳಿಸಿ"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ಅಂತರ್ಜಾಲವನ್ನು ಹುಡುಕಿ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ಅಂತರ್ಜಾಲವನ್ನು ಹುಡುಕಿ" title="ಅಂತರ್ಜಾಲವನ್ನು ಹುಡುಕಿ"/><button id="searchSubmit" class="search-button" title="ಹುಡುಕು"><span class="sr-only"><span>ಹುಡುಕು</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ಪ್ರಮುಖ ತಾಣಗಳು</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ಈ ತಾಣವನ್ನು ಸಂಪಾದಿಸು"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket ರಿಂದ ಶಿಫಾರಸುಮಾಡುಲಾಗಿದೆ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ಜನಪ್ರಿಯವಾದ ವಿಷಯಗಳು:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ಮುಖ್ಯಾಂಶಗಳು</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ಹೊಸ ಹಾಳೆಯ ಪುಟವನ್ನು ಅಗತ್ಯಾನುಗುಣಗೊಳಿಸಿ"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ko/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ko/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>새 탭</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>웹 검색</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="웹 검색" title="웹 검색"/><button id="searchSubmit" class="search-button" title="검색"><span class="sr-only"><span>검색</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>상위 사이트</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>섹션 컨텍스트 메뉴 열기</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket 추천</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>섹션 컨텍스트 메뉴 열기</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>인기 주제:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>하이라이트</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>섹션 컨텍스트 메뉴 열기</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="새 탭 페이지 꾸미기"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>웹 검색</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="웹 검색" title="웹 검색"/><button id="searchSubmit" class="search-button" title="검색"><span class="sr-only"><span>검색</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>상위 사이트</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>섹션 컨텍스트 메뉴 열기</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="이 사이트 수정"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket 추천</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>섹션 컨텍스트 메뉴 열기</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>인기 주제:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>하이라이트</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>섹션 컨텍스트 메뉴 열기</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="새 탭 페이지 꾸미기"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/lij/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/lij/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Neuvo Feuggio</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Çerca inta Ræ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Çerca inta Ræ" title="Çerca inta Ræ"/><button id="searchSubmit" class="search-button" title="Çerca"><span class="sr-only"><span>Çerca</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>I megio sciti</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Arvi into menû contesto pe-a seçion</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Consegiou da Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Arvi into menû contesto pe-a seçion</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Argomenti popolari:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>In evidensa</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Arvi into menû contesto pe-a seçion</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizza a teu pagina Neuvo feuggio"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Çerca inta Ræ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Çerca inta Ræ" title="Çerca inta Ræ"/><button id="searchSubmit" class="search-button" title="Çerca"><span class="sr-only"><span>Çerca</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>I megio sciti</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Arvi into menû contesto pe-a seçion</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Cangia sto scito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Consegiou da Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Arvi into menû contesto pe-a seçion</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Argomenti popolari:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>In evidensa</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Arvi into menû contesto pe-a seçion</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizza a teu pagina Neuvo feuggio"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/lo/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/lo/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>ແທັບໃຫມ່</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ຊອກຫາເວັບ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ຊອກຫາເວັບ" title="ຊອກຫາເວັບ"/><button id="searchSubmit" class="search-button" title="ຊອກຫາ"><span class="sr-only"><span>ຊອກຫາ</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ເວັບໄຊຕ໌ຍອດນິຍົມ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>ແນະນຳໂດຍ Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ຫົວຂໍ້ຍອດນິຍົມ:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ລາຍການເດັ່ນ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ປັບແຕ່ງຫນ້າແທັບໃຫມ່ຂອງທ່ານ"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ຊອກຫາເວັບ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ຊອກຫາເວັບ" title="ຊອກຫາເວັບ"/><button id="searchSubmit" class="search-button" title="ຊອກຫາ"><span class="sr-only"><span>ຊອກຫາ</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ເວັບໄຊຕ໌ຍອດນິຍົມ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ແກ້ໄຂເວັບໄຊທ໌ນີ້"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>ແນະນຳໂດຍ Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ຫົວຂໍ້ຍອດນິຍົມ:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ລາຍການເດັ່ນ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ປັບແຕ່ງຫນ້າແທັບໃຫມ່ຂອງທ່ານ"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/lt/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/lt/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nauja kortelė</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Ieškokite saityne</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Ieškokite saityne" title="Ieškokite saityne"/><button id="searchSubmit" class="search-button" title="Ieškoti"><span class="sr-only"><span>Ieškoti</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Lankomiausios svetainės</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atverti skilties kontekstinį meniu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekomendavo „Pocket“</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atverti skilties kontekstinį meniu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populiarios temos:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Akcentai</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atverti skilties kontekstinį meniu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tinkinkite savo naujos kortelės puslapį"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Ieškokite saityne</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Ieškokite saityne" title="Ieškokite saityne"/><button id="searchSubmit" class="search-button" title="Ieškoti"><span class="sr-only"><span>Ieškoti</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Lankomiausios svetainės</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atverti skilties kontekstinį meniu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redaguoti šią svetainę"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekomendavo „Pocket“</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atverti skilties kontekstinį meniu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populiarios temos:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Akcentai</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atverti skilties kontekstinį meniu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tinkinkite savo naujos kortelės puslapį"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ltg/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ltg/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Jauna cilne</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Mekleit teiklā</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Mekleit teiklā" title="Mekleit teiklā"/><button id="searchSubmit" class="search-button" title="Mekleit"><span class="sr-only"><span>Mekleit</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Popularōkōs lopys</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket īsaceitōs</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popularas tēmas:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Izraudzeitī</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Īstateit sovu jaunas cilnes lopu"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Mekleit teiklā</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Mekleit teiklā" title="Mekleit teiklā"/><button id="searchSubmit" class="search-button" title="Mekleit"><span class="sr-only"><span>Mekleit</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Popularōkōs lopys</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Maineit lopu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket īsaceitōs</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popularas tēmas:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Izraudzeitī</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Īstateit sovu jaunas cilnes lopu"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/lv/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/lv/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Jauna cilne</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Meklēt internetā</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Meklēt internetā" title="Meklēt internetā"/><button id="searchSubmit" class="search-button" title="Meklēt"><span class="sr-only"><span>Meklēt</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Populārākās lapas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atvērt sadaļas izvēlni</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Iesaka Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atvērt sadaļas izvēlni</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populārās tēmas:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Aktualitātes</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atvērt sadaļas izvēlni</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Pielāgojiet jaunās cilnes lapu"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Meklēt internetā</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Meklēt internetā" title="Meklēt internetā"/><button id="searchSubmit" class="search-button" title="Meklēt"><span class="sr-only"><span>Meklēt</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Populārākās lapas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atvērt sadaļas izvēlni</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediģēt šo lapu"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Iesaka Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atvērt sadaļas izvēlni</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populārās tēmas:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Aktualitātes</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Atvērt sadaļas izvēlni</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Pielāgojiet jaunās cilnes lapu"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/mai/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/mai/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>नव टैब</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेब पर खोजू</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेब पर खोजू" title="वेब पर खोजू"/><button id="searchSubmit" class="search-button" title="खोज"><span class="sr-only"><span>खोज</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>टॉप साइट</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>सेक्शन कॉन्टेक्ट मेनू खोलू</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket द्वारा अनुशंसित</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>सेक्शन कॉन्टेक्ट मेनू खोलू</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>लोकप्रिय विषय:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>हाइलाइट</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>सेक्शन कॉन्टेक्ट मेनू खोलू</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="अपन नव टैब पृष्ठ पसंदीदा बनाउ"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेब पर खोजू</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेब पर खोजू" title="वेब पर खोजू"/><button id="searchSubmit" class="search-button" title="खोज"><span class="sr-only"><span>खोज</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>टॉप साइट</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>सेक्शन कॉन्टेक्ट मेनू खोलू</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ई साइट केँ संपादित करू"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket द्वारा अनुशंसित</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>सेक्शन कॉन्टेक्ट मेनू खोलू</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>लोकप्रिय विषय:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>हाइलाइट</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>सेक्शन कॉन्टेक्ट मेनू खोलू</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="अपन नव टैब पृष्ठ पसंदीदा बनाउ"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/mk/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/mk/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Ново јазиче</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Пребарајте на Интернет</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Пребарајте на Интернет" title="Пребарајте на Интернет"/><button id="searchSubmit" class="search-button" title="Барај"><span class="sr-only"><span>Барај</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Популарни мрежни места</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Препорачано од Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Популарни теми:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Интереси</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Прилагодете ја страницата на вашето Ново јазиче"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Пребарајте на Интернет</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Пребарајте на Интернет" title="Пребарајте на Интернет"/><button id="searchSubmit" class="search-button" title="Барај"><span class="sr-only"><span>Барај</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Популарни мрежни места</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди го ова место"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Препорачано од Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Популарни теми:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Интереси</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Прилагодете ја страницата на вашето Ново јазиче"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ml/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ml/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>പുതിയ ടാബ്</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ഇൻറർനെറ്റിൽ തിരയുക</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ഇൻറർനെറ്റിൽ തിരയുക" title="ഇൻറർനെറ്റിൽ തിരയുക"/><button id="searchSubmit" class="search-button" title="തിരയുക"><span class="sr-only"><span>തിരയുക</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>മികച്ച സൈറ്റുകൾ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket ശുപാർശ ചെയ്തത്</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ജനപ്രിയ വിഷയങ്ങൾ:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ഹൈലൈറ്റുകൾ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="നിങ്ങളുടെ പുതിയ ടാബ് താള് ഇഷ്ടാനുസൃതമാക്കുക"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ഇൻറർനെറ്റിൽ തിരയുക</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ഇൻറർനെറ്റിൽ തിരയുക" title="ഇൻറർനെറ്റിൽ തിരയുക"/><button id="searchSubmit" class="search-button" title="തിരയുക"><span class="sr-only"><span>തിരയുക</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>മികച്ച സൈറ്റുകൾ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ഈ സൈറ്റ് തിരുത്തുക"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket ശുപാർശ ചെയ്തത്</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ജനപ്രിയ വിഷയങ്ങൾ:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ഹൈലൈറ്റുകൾ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="നിങ്ങളുടെ പുതിയ ടാബ് താള് ഇഷ്ടാനുസൃതമാക്കുക"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/mr/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/mr/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>नवीन टॅब</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेबवर शोधा</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेबवर शोधा" title="वेबवर शोधा"/><button id="searchSubmit" class="search-button" title="शोधा"><span class="sr-only"><span>शोधा</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>खास साईट्स</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ठळक</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="आपले नवीन टॅब पृष्ठ सानुकूलित करा"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेबवर शोधा</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेबवर शोधा" title="वेबवर शोधा"/><button id="searchSubmit" class="search-button" title="शोधा"><span class="sr-only"><span>शोधा</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>खास साईट्स</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ठळक</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="आपले नवीन टॅब पृष्ठ सानुकूलित करा"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ms/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ms/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Tab Baru</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cari dalam Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cari dalam Web" title="Cari dalam Web"/><button id="searchSubmit" class="search-button" title="Cari"><span class="sr-only"><span>Cari</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Laman Teratas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buka bahagian menu konteks</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Disyorkan oleh Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buka bahagian menu konteks</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Topik Popular:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Serlahan</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buka bahagian menu konteks</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Sesuaikan halaman Tab Baru anda"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Cari dalam Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Cari dalam Web" title="Cari dalam Web"/><button id="searchSubmit" class="search-button" title="Cari"><span class="sr-only"><span>Cari</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Laman Teratas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buka bahagian menu konteks</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit laman ini"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Disyorkan oleh Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buka bahagian menu konteks</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Topik Popular:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Serlahan</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buka bahagian menu konteks</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Sesuaikan halaman Tab Baru anda"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/my/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/my/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>တပ်ဗ်အသစ်ဖွင့်</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ဝတ်ဘ်ပေါ်တွင် ရှာဖွေခြင်း</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ဝတ်ဘ်ပေါ်တွင် ရှာဖွေခြင်း" title="ဝတ်ဘ်ပေါ်တွင် ရှာဖွေခြင်း"/><button id="searchSubmit" class="search-button" title="ရှာ"><span class="sr-only"><span>ရှာ</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>အများဆုံးသုံးဆိုက်များ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket က အကြံပြုထားသည်</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>လူကြိုက်များခေါင်းစဉ်များ</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ဦးစားပေးအကြောင်းအရာများ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="သင့်တပ်ဗ်အသစ်စာမျက်နှာအား ပြင်ဆင်မည်"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ဝတ်ဘ်ပေါ်တွင် ရှာဖွေခြင်း</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ဝတ်ဘ်ပေါ်တွင် ရှာဖွေခြင်း" title="ဝတ်ဘ်ပေါ်တွင် ရှာဖွေခြင်း"/><button id="searchSubmit" class="search-button" title="ရှာ"><span class="sr-only"><span>ရှာ</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>အများဆုံးသုံးဆိုက်များ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ဆိုက်အားပြင်မည်"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket က အကြံပြုထားသည်</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>လူကြိုက်များခေါင်းစဉ်များ</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ဦးစားပေးအကြောင်းအရာများ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="သင့်တပ်ဗ်အသစ်စာမျက်နှာအား ပြင်ဆင်မည်"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/nb-NO/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/nb-NO/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Ny fane</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Søk på nettet</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Søk på nettet" title="Søk på nettet"/><button id="searchSubmit" class="search-button" title="Søk"><span class="sr-only"><span>Søk</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besøkte nettsider</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åpne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Anbefalt av Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åpne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populære emner:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Høydepunkter</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åpne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tilpass siden for Ny fane"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Søk på nettet</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Søk på nettet" title="Søk på nettet"/><button id="searchSubmit" class="search-button" title="Søk"><span class="sr-only"><span>Søk</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besøkte nettsider</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åpne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsiden"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Anbefalt av Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åpne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populære emner:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Høydepunkter</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Åpne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tilpass siden for Ny fane"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ne-NP/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ne-NP/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>नयाँ ट्याब</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेबमा खोज्नुहोस्</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेबमा खोज्नुहोस्" title="वेबमा खोज्नुहोस्"/><button id="searchSubmit" class="search-button" title="खोजी गर्नुहोस्"><span class="sr-only"><span>खोजी गर्नुहोस्</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>शीर्ष साइटहरु</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>खण्ड सन्दर्भ मेनु खोल्नुहोस्</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket द्वारा सिफारिस गरिएको</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>खण्ड सन्दर्भ मेनु खोल्नुहोस्</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>लोकप्रिय शीर्षकहरू:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>विशेषताहरू</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>खण्ड सन्दर्भ मेनु खोल्नुहोस्</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="तपाईंको नयाँ ट्याब पृष्ठ अनुकूलन गर्नुहोस्"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>वेबमा खोज्नुहोस्</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="वेबमा खोज्नुहोस्" title="वेबमा खोज्नुहोस्"/><button id="searchSubmit" class="search-button" title="खोजी गर्नुहोस्"><span class="sr-only"><span>खोजी गर्नुहोस्</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>शीर्ष साइटहरु</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>खण्ड सन्दर्भ मेनु खोल्नुहोस्</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="यस साइटलाई सम्पादन गर्नुहोस्"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket द्वारा सिफारिस गरिएको</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>खण्ड सन्दर्भ मेनु खोल्नुहोस्</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>लोकप्रिय शीर्षकहरू:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>विशेषताहरू</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>खण्ड सन्दर्भ मेनु खोल्नुहोस्</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="तपाईंको नयाँ ट्याब पृष्ठ अनुकूलन गर्नुहोस्"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/nl/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/nl/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nieuw tabblad</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Zoeken op het web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Zoeken op het web" title="Zoeken op het web"/><button id="searchSubmit" class="search-button" title="Zoeken"><span class="sr-only"><span>Zoeken</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Topwebsites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Contextmenu van sectie openen</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Aanbevolen door Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Contextmenu van sectie openen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populaire onderwerpen:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Contextmenu van sectie openen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Uw Nieuw-tabbladpagina aanpassen"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Zoeken op het web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Zoeken op het web" title="Zoeken op het web"/><button id="searchSubmit" class="search-button" title="Zoeken"><span class="sr-only"><span>Zoeken</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Topwebsites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Contextmenu van sectie openen</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Deze website bewerken"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Aanbevolen door Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Contextmenu van sectie openen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populaire onderwerpen:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Contextmenu van sectie openen</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Uw Nieuw-tabbladpagina aanpassen"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/nn-NO/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/nn-NO/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Ny fane</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Søk på nettet</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Søk på nettet" title="Søk på nettet"/><button id="searchSubmit" class="search-button" title="Søk"><span class="sr-only"><span>Søk</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besøkte nettsider</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Opne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Tilrådd av Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Opne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populære emne:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Høgdepunkt</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Opne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tilpass sida for Ny fane"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Søk på nettet</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Søk på nettet" title="Søk på nettet"/><button id="searchSubmit" class="search-button" title="Søk"><span class="sr-only"><span>Søk</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besøkte nettsider</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Opne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Rediger denne nettsida"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Tilrådd av Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Opne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populære emne:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Høgdepunkt</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Opne seksjonens kontekstmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tilpass sida for Ny fane"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/pa-IN/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/pa-IN/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>ਨਵੀਂ ਟੈਬ</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ਵੈੱਬ ਨੂੰ ਖੋਜੋ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ਵੈੱਬ ਨੂੰ ਖੋਜੋ" title="ਵੈੱਬ ਨੂੰ ਖੋਜੋ"/><button id="searchSubmit" class="search-button" title="ਖੋਜ"><span class="sr-only"><span>ਖੋਜ</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ਸਿਖਰਲੀਆਂ ਸਾਈਟਾਂ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>ਪ੍ਰਸੰਗ ਮੀਨੂੰ ਚੋਣ ਖ੍ਹੋਲੋ</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket ਵਲੋਂ ਸਿਫਾਰਸ਼ੀ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>ਪ੍ਰਸੰਗ ਮੀਨੂੰ ਚੋਣ ਖ੍ਹੋਲੋ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ਪ੍ਰਸਿੱਧ ਵਿਸ਼ੇ:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ਸੁਰਖੀਆਂ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>ਪ੍ਰਸੰਗ ਮੀਨੂੰ ਚੋਣ ਖ੍ਹੋਲੋ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ਆਪਣੇ ਨਵੀਂ ਟੈਬ ਸਫ਼ੇ ਨੂੰ ਆਪਣੇ ਮੁਤਾਬਕ ਢਾਲੋ"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ਵੈੱਬ ਨੂੰ ਖੋਜੋ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ਵੈੱਬ ਨੂੰ ਖੋਜੋ" title="ਵੈੱਬ ਨੂੰ ਖੋਜੋ"/><button id="searchSubmit" class="search-button" title="ਖੋਜ"><span class="sr-only"><span>ਖੋਜ</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ਸਿਖਰਲੀਆਂ ਸਾਈਟਾਂ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>ਪ੍ਰਸੰਗ ਮੀਨੂੰ ਚੋਣ ਖ੍ਹੋਲੋ</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ਇਹ ਸਾਈਟ ਨੂੰ ਸੋਧੋ"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket ਵਲੋਂ ਸਿਫਾਰਸ਼ੀ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>ਪ੍ਰਸੰਗ ਮੀਨੂੰ ਚੋਣ ਖ੍ਹੋਲੋ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ਪ੍ਰਸਿੱਧ ਵਿਸ਼ੇ:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ਸੁਰਖੀਆਂ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>ਪ੍ਰਸੰਗ ਮੀਨੂੰ ਚੋਣ ਖ੍ਹੋਲੋ</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ਆਪਣੇ ਨਵੀਂ ਟੈਬ ਸਫ਼ੇ ਨੂੰ ਆਪਣੇ ਮੁਤਾਬਕ ਢਾਲੋ"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/pl/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/pl/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nowa karta</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Szukaj</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Szukaj" title="Szukaj"/><button id="searchSubmit" class="search-button" title="Szukaj"><span class="sr-only"><span>Szukaj</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Popularne</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otwórz menu kontekstowe sekcji</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Poleca: Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otwórz menu kontekstowe sekcji</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popularne tematy:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wyróżnione</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otwórz menu kontekstowe sekcji</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Dostosuj stronę nowej karty"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Szukaj</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Szukaj" title="Szukaj"/><button id="searchSubmit" class="search-button" title="Szukaj"><span class="sr-only"><span>Szukaj</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Popularne</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otwórz menu kontekstowe sekcji</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edytuj tę stronę"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Poleca: Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otwórz menu kontekstowe sekcji</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popularne tematy:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Wyróżnione</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otwórz menu kontekstowe sekcji</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Dostosuj stronę nowej karty"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/pt-BR/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/pt-BR/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nova aba</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pesquisar na Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pesquisar na Web" title="Pesquisar na Web"/><button id="searchSubmit" class="search-button" title="Pesquisar"><span class="sr-only"><span>Pesquisar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sites preferidos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da seção</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da seção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Tópicos populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destaques</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da seção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar sua página de nova aba"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pesquisar na Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pesquisar na Web" title="Pesquisar na Web"/><button id="searchSubmit" class="search-button" title="Pesquisar"><span class="sr-only"><span>Pesquisar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sites preferidos</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da seção</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da seção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Tópicos populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destaques</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da seção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar sua página de nova aba"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/pt-PT/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/pt-PT/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Novo separador</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pesquisar na Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pesquisar na Web" title="Pesquisar na Web"/><button id="searchSubmit" class="search-button" title="Pesquisar"><span class="sr-only"><span>Pesquisar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sites mais visitados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da secção</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da secção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Tópicos populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destaques</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da secção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar a sua página de novo separador"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Pesquisar na Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Pesquisar na Web" title="Pesquisar na Web"/><button id="searchSubmit" class="search-button" title="Pesquisar"><span class="sr-only"><span>Pesquisar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sites mais visitados</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da secção</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editar este site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomendado por Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da secção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Tópicos populares:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Destaques</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Abrir o menu de contexto da secção</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizar a sua página de novo separador"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/rm/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/rm/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nov tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Tschertgar en il Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Tschertgar en il Web" title="Tschertgar en il Web"/><button id="searchSubmit" class="search-button" title="Tschertgar"><span class="sr-only"><span>Tschertgar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Paginas preferidas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recumandà da Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Temas populars:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Accents</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Persunalisar tia pagina per novs tabs"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Tschertgar en il Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Tschertgar en il Web" title="Tschertgar en il Web"/><button id="searchSubmit" class="search-button" title="Tschertgar"><span class="sr-only"><span>Tschertgar</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Paginas preferidas</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Modifitgar questa pagina"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recumandà da Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Temas populars:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Accents</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Persunalisar tia pagina per novs tabs"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ro/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ro/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Filă nouă</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Caută pe web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Caută pe web" title="Caută pe web"/><button id="searchSubmit" class="search-button" title="Caută"><span class="sr-only"><span>Caută</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Site-uri de top</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Deschide meniul contextual al secțiunii</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomandat de Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Deschide meniul contextual al secțiunii</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Subiecte populare:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Evidențieri</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Deschide meniul contextual al secțiunii</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Particularizează pagina de filă nouă"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Caută pe web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Caută pe web" title="Caută pe web"/><button id="searchSubmit" class="search-button" title="Caută"><span class="sr-only"><span>Caută</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Site-uri de top</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Deschide meniul contextual al secțiunii</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Editează acest site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recomandat de Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Deschide meniul contextual al secțiunii</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Subiecte populare:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Evidențieri</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Deschide meniul contextual al secțiunii</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Particularizează pagina de filă nouă"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ru/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ru/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Новая вкладка</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Искать в Интернете</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Искать в Интернете" title="Искать в Интернете"/><button id="searchSubmit" class="search-button" title="Искать"><span class="sr-only"><span>Искать</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Топ сайтов</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Открыть контекстное меню раздела</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Рекомендовано Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Открыть контекстное меню раздела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Популярные темы:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Избранное</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Открыть контекстное меню раздела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Настроить свою страницу новой вкладки"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Искать в Интернете</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Искать в Интернете" title="Искать в Интернете"/><button id="searchSubmit" class="search-button" title="Искать"><span class="sr-only"><span>Искать</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Топ сайтов</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Открыть контекстное меню раздела</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Изменить этот сайт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Рекомендовано Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Открыть контекстное меню раздела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Популярные темы:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Избранное</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Открыть контекстное меню раздела</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Настроить свою страницу новой вкладки"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/si/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/si/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>නව ටැබය</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ජාලය තුළ සොයන්න</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ජාලය තුළ සොයන්න" title="ජාලය තුළ සොයන්න"/><button id="searchSubmit" class="search-button" title="සොයන්න"><span class="sr-only"><span>සොයන්න</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ප්රමුඛ අඩවි</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket විසින් නිර්දේශිතයි</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ජනප්රිය මාතෘකා:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ඉස්මතු කිරීම්</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ඔබේ නව ටැබ පිටුව රුචිකරණය කරන්න"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ජාලය තුළ සොයන්න</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ජාලය තුළ සොයන්න" title="ජාලය තුළ සොයන්න"/><button id="searchSubmit" class="search-button" title="සොයන්න"><span class="sr-only"><span>සොයන්න</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ප්රමුඛ අඩවි</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="මෙම අඩවිය සකසන්න"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket විසින් නිර්දේශිතයි</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ජනප්රිය මාතෘකා:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>ඉස්මතු කිරීම්</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ඔබේ නව ටැබ පිටුව රුචිකරණය කරන්න"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/sk/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/sk/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nová karta</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Vyhľadávanie na webe</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Vyhľadávanie na webe" title="Vyhľadávanie na webe"/><button id="searchSubmit" class="search-button" title="Hľadať"><span class="sr-only"><span>Hľadať</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top stránky</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorí kontextovú ponuku sekcie</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Odporúča Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorí kontextovú ponuku sekcie</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populárne témy:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Vybrané stránky</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorí kontextovú ponuku sekcie</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prispôsobte si svoju stránku Nová karta"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Vyhľadávanie na webe</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Vyhľadávanie na webe" title="Vyhľadávanie na webe"/><button id="searchSubmit" class="search-button" title="Hľadať"><span class="sr-only"><span>Hľadať</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top stránky</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorí kontextovú ponuku sekcie</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Upraviť túto stránku"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Odporúča Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorí kontextovú ponuku sekcie</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populárne témy:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Vybrané stránky</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Otvorí kontextovú ponuku sekcie</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prispôsobte si svoju stránku Nová karta"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/sl/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/sl/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Nov zavihek</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Iskanje po spletu</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Iskanje po spletu" title="Iskanje po spletu"/><button id="searchSubmit" class="search-button" title="Iskanje"><span class="sr-only"><span>Iskanje</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Glavne strani</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Odpri priročni meni odseka</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Priporoča Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Odpri priročni meni odseka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Priljubljene teme:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Poudarki</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Odpri priročni meni odseka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prilagodite stran novega zavihka"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Iskanje po spletu</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Iskanje po spletu" title="Iskanje po spletu"/><button id="searchSubmit" class="search-button" title="Iskanje"><span class="sr-only"><span>Iskanje</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Glavne strani</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Odpri priročni meni odseka</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Uredi to stran"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Priporoča Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Odpri priročni meni odseka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Priljubljene teme:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Poudarki</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Odpri priročni meni odseka</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Prilagodite stran novega zavihka"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/sq/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/sq/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Skedë e Re</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Kërkoni në Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Kërkoni në Web" title="Kërkoni në Web"/><button id="searchSubmit" class="search-button" title="Kërko"><span class="sr-only"><span>Kërko</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sajte Kryesues</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Hap menu konteksti ndarjeje</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekomanduar nga Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Hap menu konteksti ndarjeje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Tema Popullore:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Hap menu konteksti ndarjeje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizoni faqen tuaj Skedë e Re"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Kërkoni në Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Kërkoni në Web" title="Kërkoni në Web"/><button id="searchSubmit" class="search-button" title="Kërko"><span class="sr-only"><span>Kërko</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sajte Kryesues</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Hap menu konteksti ndarjeje</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Përpunoni këtë sajt"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekomanduar nga Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Hap menu konteksti ndarjeje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Tema Popullore:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Hap menu konteksti ndarjeje</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Personalizoni faqen tuaj Skedë e Re"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/sr/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/sr/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Нови језичак</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Претражи веб</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Претражи веб" title="Претражи веб"/><button id="searchSubmit" class="search-button" title="Претражи"><span class="sr-only"><span>Претражи</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Омиљени сајтови</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отворите секцију контекст менија</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Предложио Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отворите секцију контекст менија</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Популарне теме:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Истакнуто</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отворите секцију контекст менија</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Прилагодите страницу новог језичка"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Претражи веб</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Претражи веб" title="Претражи веб"/><button id="searchSubmit" class="search-button" title="Претражи"><span class="sr-only"><span>Претражи</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Омиљени сајтови</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отворите секцију контекст менија</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Уреди овај сајт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Предложио Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отворите секцију контекст менија</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Популарне теме:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Истакнуто</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Отворите секцију контекст менија</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Прилагодите страницу новог језичка"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/sv-SE/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/sv-SE/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Ny flik</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Sök på webben</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Sök på webben" title="Sök på webben"/><button id="searchSubmit" class="search-button" title="Sök"><span class="sr-only"><span>Sök</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besökta</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Öppna sektionens snabbmeny</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekommenderas av Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Öppna sektionens snabbmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Populära ämnen:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Höjdpunkter</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Öppna sektionens snabbmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Anpassa sidan för Ny flik"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Sök på webben</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Sök på webben" title="Sök på webben"/><button id="searchSubmit" class="search-button" title="Sök"><span class="sr-only"><span>Sök</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Mest besökta</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Öppna sektionens snabbmeny</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Redigera denna webbplats"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Rekommenderas av Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Öppna sektionens snabbmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Populära ämnen:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Höjdpunkter</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Öppna sektionens snabbmeny</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Anpassa sidan för Ny flik"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ta/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ta/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>புதிய கீற்று</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>இணையத்தில் தேடு</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="இணையத்தில் தேடு" title="இணையத்தில் தேடு"/><button id="searchSubmit" class="search-button" title="தேடு"><span class="sr-only"><span>தேடு</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>சிறந்த தளங்கள்</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket என்பவரால் பரிந்துரைக்கப்பட்டது</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>பிரபலமான தலைப்புகள்:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>மிளிர்ப்புகள்</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="உங்கள் புதிய கீற்றுப் பக்கத்தை விருப்பமை"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>இணையத்தில் தேடு</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="இணையத்தில் தேடு" title="இணையத்தில் தேடு"/><button id="searchSubmit" class="search-button" title="தேடு"><span class="sr-only"><span>தேடு</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>சிறந்த தளங்கள்</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="இத்தளத்தை தொகு"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket என்பவரால் பரிந்துரைக்கப்பட்டது</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>பிரபலமான தலைப்புகள்:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>மிளிர்ப்புகள்</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="உங்கள் புதிய கீற்றுப் பக்கத்தை விருப்பமை"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/te/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/te/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>కొత్త ట్యాబు</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>జాలంలో వెతకండి</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="జాలంలో వెతకండి" title="జాలంలో వెతకండి"/><button id="searchSubmit" class="search-button" title="వెతకండి"><span class="sr-only"><span>వెతకండి</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>మేటి సైట్లు</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>విభాగపు కంటెక్స్టు మెనూ తెరువు</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocketచే సిఫార్సు చేయబడినది</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>విభాగపు కంటెక్స్టు మెనూ తెరువు</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>ప్రముఖ అంశాలు:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>విశేషాలు</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>విభాగపు కంటెక్స్టు మెనూ తెరువు</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="మీ కొత్త ట్యాబు పేజీని మలచుకోండి"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>జాలంలో వెతకండి</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="జాలంలో వెతకండి" title="జాలంలో వెతకండి"/><button id="searchSubmit" class="search-button" title="వెతకండి"><span class="sr-only"><span>వెతకండి</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>మేటి సైట్లు</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>విభాగపు కంటెక్స్టు మెనూ తెరువు</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="ఈ సైటును మార్చు"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocketచే సిఫార్సు చేయబడినది</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>విభాగపు కంటెక్స్టు మెనూ తెరువు</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>ప్రముఖ అంశాలు:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>విశేషాలు</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>విభాగపు కంటెక్స్టు మెనూ తెరువు</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="మీ కొత్త ట్యాబు పేజీని మలచుకోండి"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/th/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/th/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>แท็บใหม่</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ค้นหาเว็บ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ค้นหาเว็บ" title="ค้นหาเว็บ"/><button id="searchSubmit" class="search-button" title="ค้นหา"><span class="sr-only"><span>ค้นหา</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ไซต์เด่น</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>เปิดเมนูบริบทของส่วน</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>แนะนำโดย Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>เปิดเมนูบริบทของส่วน</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>หัวข้อยอดนิยม:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>รายการเด่น</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>เปิดเมนูบริบทของส่วน</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ปรับแต่งหน้าแท็บใหม่ของคุณ"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ค้นหาเว็บ</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ค้นหาเว็บ" title="ค้นหาเว็บ"/><button id="searchSubmit" class="search-button" title="ค้นหา"><span class="sr-only"><span>ค้นหา</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>ไซต์เด่น</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>เปิดเมนูบริบทของส่วน</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="แก้ไขไซต์นี้"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>แนะนำโดย Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>เปิดเมนูบริบทของส่วน</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>หัวข้อยอดนิยม:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>รายการเด่น</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>เปิดเมนูบริบทของส่วน</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="ปรับแต่งหน้าแท็บใหม่ของคุณ"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/tl/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/tl/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Bagong Tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Hanapin sa Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Hanapin sa Web" title="Hanapin sa Web"/><button id="searchSubmit" class="search-button" title="Hanapin"><span class="sr-only"><span>Hanapin</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Tuktok na mga Site</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buksan ang menu ng konteksto ng seksyon</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Inirekomenda ni Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buksan ang menu ng konteksto ng seksyon</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Tanyag na mga paksa:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Naka-highlight</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buksan ang menu ng konteksto ng seksyon</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="I-customize ang iyong pahina ng Bagong Tab"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Hanapin sa Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Hanapin sa Web" title="Hanapin sa Web"/><button id="searchSubmit" class="search-button" title="Hanapin"><span class="sr-only"><span>Hanapin</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Tuktok na mga Site</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buksan ang menu ng konteksto ng seksyon</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="I-edit ang site na ito"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Inirekomenda ni Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buksan ang menu ng konteksto ng seksyon</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Tanyag na mga paksa:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Naka-highlight</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Buksan ang menu ng konteksto ng seksyon</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="I-customize ang iyong pahina ng Bagong Tab"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/tr/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/tr/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Yeni Sekme</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Web’de ara</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Web’de ara" title="Web’de ara"/><button id="searchSubmit" class="search-button" title="Ara"><span class="sr-only"><span>Ara</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sık Kullanılan Siteler</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsünü aç</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket öneriyor</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsünü aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popüler konular:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Öne Çıkanlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsünü aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yeni Sekme sayfanızı özelleştirin"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Web’de ara</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Web’de ara" title="Web’de ara"/><button id="searchSubmit" class="search-button" title="Ara"><span class="sr-only"><span>Ara</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Sık Kullanılan Siteler</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsünü aç</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu siteyi düzenle"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket öneriyor</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsünü aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popüler konular:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Öne Çıkanlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bölüm bağlam menüsünü aç</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yeni Sekme sayfanızı özelleştirin"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/uk/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/uk/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Нова вкладка</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Пошук в Інтернеті</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Пошук в Інтернеті" title="Пошук в Інтернеті"/><button id="searchSubmit" class="search-button" title="Пошук"><span class="sr-only"><span>Пошук</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Популярні сайти</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Відкрити контекстне меню розділу</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Рекомендовано Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Відкрити контекстне меню розділу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Популярні теми:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Обране</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Відкрити контекстне меню розділу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Налаштуйте свою сторінку нової вкладки"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Пошук в Інтернеті</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Пошук в Інтернеті" title="Пошук в Інтернеті"/><button id="searchSubmit" class="search-button" title="Пошук"><span class="sr-only"><span>Пошук</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Популярні сайти</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Відкрити контекстне меню розділу</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Змінити цей сайт"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Рекомендовано Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Відкрити контекстне меню розділу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Популярні теми:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Обране</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Відкрити контекстне меню розділу</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Налаштуйте свою сторінку нової вкладки"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/ur/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/ur/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>نیا ٹیب</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ويب پر تلاش کريں</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ويب پر تلاش کريں" title="ويب پر تلاش کريں"/><button id="searchSubmit" class="search-button" title="تلاش"><span class="sr-only"><span>تلاش</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>بہترین سائٹیں</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket کی جانب سے تجویز کردہ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>مشہور مضامین:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>شہ سرخياں</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="اپنے نئے ٹیب کہ صفحہ کی تخصیص کریں"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>ويب پر تلاش کريں</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="ويب پر تلاش کريں" title="ويب پر تلاش کريں"/><button id="searchSubmit" class="search-button" title="تلاش"><span class="sr-only"><span>تلاش</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>بہترین سائٹیں</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="اس سائٹ کی تدوین کریں"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket کی جانب سے تجویز کردہ</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>مشہور مضامین:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>شہ سرخياں</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="اپنے نئے ٹیب کہ صفحہ کی تخصیص کریں"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/uz/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/uz/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Yangi ichki oyna</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Internetda izlash</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Internetda izlash" title="Internetda izlash"/><button id="searchSubmit" class="search-button" title="Qidiruv"><span class="sr-only"><span>Qidiruv</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Ommabop saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bo‘lim kontekst menyusini ochish</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket tomonidan tavsiya qilingan</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bo‘lim kontekst menyusini ochish</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Mashhur mavzular:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Saralangan saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bo‘lim kontekst menyusini ochish</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yangi ichki oyna sahifasini sozlash"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Internetda izlash</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Internetda izlash" title="Internetda izlash"/><button id="searchSubmit" class="search-button" title="Qidiruv"><span class="sr-only"><span>Qidiruv</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Ommabop saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bo‘lim kontekst menyusini ochish</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Bu saytni tahrirlash"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket tomonidan tavsiya qilingan</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bo‘lim kontekst menyusini ochish</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Mashhur mavzular:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Saralangan saytlar</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Bo‘lim kontekst menyusini ochish</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Yangi ichki oyna sahifasini sozlash"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/vi/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/vi/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>Tab mới</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Tìm trên mạng</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Tìm trên mạng" title="Tìm trên mạng"/><button id="searchSubmit" class="search-button" title="Tìm kiếm"><span class="sr-only"><span>Tìm kiếm</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Trang web hàng đầu</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Được đề nghị bởi Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Các chủ đề phổ biến:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Nổi bật</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tùy biến trang Tab mới"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Tìm trên mạng</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Tìm trên mạng" title="Tìm trên mạng"/><button id="searchSubmit" class="search-button" title="Tìm kiếm"><span class="sr-only"><span>Tìm kiếm</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Trang web hàng đầu</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Chỉnh sửa trang web này"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Được đề nghị bởi Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Các chủ đề phổ biến:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Nổi bật</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Tùy biến trang Tab mới"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/zh-CN/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/zh-CN/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>新标签页</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>在网络上搜索</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="在网络上搜索" title="在网络上搜索"/><button id="searchSubmit" class="search-button" title="搜索"><span class="sr-only"><span>搜索</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>常用网站</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>打开板块快捷菜单</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket 推荐</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>打开板块快捷菜单</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>热门主题:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>集锦</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>打开板块快捷菜单</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="定制您的新标签页"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>在网络上搜索</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="在网络上搜索" title="在网络上搜索"/><button id="searchSubmit" class="search-button" title="搜索"><span class="sr-only"><span>搜索</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>常用网站</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>打开板块快捷菜单</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="编辑此网站"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket 推荐</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>打开板块快捷菜单</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>热门主题:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>集锦</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>打开板块快捷菜单</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="定制您的新标签页"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/locales/zh-TW/activity-stream-prerendered.html
+++ b/browser/extensions/activity-stream/prerendered/locales/zh-TW/activity-stream-prerendered.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>新分頁</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>搜尋 Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="搜尋 Web" title="搜尋 Web"/><button id="searchSubmit" class="search-button" title="搜尋"><span class="sr-only"><span>搜尋</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>熱門網站</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>開啟段落內容選單</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket 推薦</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>開啟段落內容選單</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>熱門主題:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>精選網站</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>開啟段落內容選單</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="自訂您的新分頁頁面"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>搜尋 Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="搜尋 Web" title="搜尋 Web"/><button id="searchSubmit" class="search-button" title="搜尋"><span class="sr-only"><span>搜尋</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>熱門網站</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>開啟段落內容選單</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="編輯此網站"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Pocket 推薦</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>開啟段落內容選單</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>熱門主題:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>精選網站</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>開啟段落內容選單</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="自訂您的新分頁頁面"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/prerendered/static/activity-stream-prerendered-debug.html
+++ b/browser/extensions/activity-stream/prerendered/static/activity-stream-prerendered-debug.html
@@ -4,17 +4,17 @@
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy-Report-Only" content="script-src 'unsafe-inline'; img-src http: https: data: blob:; style-src 'unsafe-inline'; child-src 'none'; object-src 'none'; report-uri https://tiles.services.mozilla.com/v4/links/activity-stream/csp">
<title>New Tab</title>
<link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/>
<link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" />
<link rel="stylesheet" href="resource://activity-stream/css/activity-stream.css" />
</head>
<body class="activity-stream">
- <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li><li class="card-outer placeholder"><a><div class="card"><div class="card-details no-image"><div class="card-text no-context no-description no-host-name no-image"><h4 class="card-title" dir="auto"></h4><p class="card-description" dir="auto"></p></div><div class="card-context"></div></div></div></a></li></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
+ <div id="root"><div data-reactroot=""><div class="outer-wrapper fixed-to-top"><main><div class="non-collapsible-section"><div class="search-wrapper"><label for="newtab-search-text" class="search-label"><span class="sr-only"><span>Search the Web</span></span></label><input type="search" id="newtab-search-text" maxLength="256" placeholder="Search the Web" title="Search the Web"/><button id="searchSubmit" class="search-button" title="Search"><span class="sr-only"><span>Search</span></span></button></div></div><div class="body-wrapper"><div class="sections-list"><section class="collapsible-section top-sites animation-enabled" data-section-id="topsites"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-topsites"></span><span>Top Sites</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="top-sites-list"><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder "><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li><li class="top-site-outer placeholder hide-for-narrow"><div class="top-site-inner"><a><div class="tile" aria-hidden="true"><div class="screenshot" style="background-image:none"></div></div><div class="title "><span dir="auto"></span></div></a><button class="context-menu-button edit-button icon" title="Edit this site"></button></div></li></ul><div class="edit-topsites-wrapper"></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="topstories"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-pocket"></span><span>Recommended by Pocket</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul><div class="topic"><span><span>Popular Topics:</span></span><ul></ul></div></div></section><section class="collapsible-section section normal-cards animation-enabled" data-section-id="highlights"><div class="section-top-bar"><h3 class="section-title"><span class="click-target"><span class="icon icon-small-spacer icon-highlights"></span><span>Highlights</span></span></h3><div><button class="context-menu-button icon"><span class="sr-only"><span>Open the section context menu</span></span></button></div></div><div class="section-body"><ul class="section-list" style="padding:0"></ul></div></section></div><div class="prefs-button"><button class="icon icon-settings" title="Customize your New Tab page"></button></div></div></main></div></div></div>
<div id="snippets-container">
<div id="snippets"></div>
</div>
<script>
// Don't directly load the following scripts as part of html to let the page
// finish loading to render the content sooner.
for (const src of [
"resource://activity-stream/prerendered/static/activity-stream-initial-state.js",
--- a/browser/extensions/activity-stream/test/functional/mochitest/browser_highlights_section.js
+++ b/browser/extensions/activity-stream/test/functional/mochitest/browser_highlights_section.js
@@ -26,17 +26,17 @@ function test_highlights(bookmarkCount,
test_highlights(
2, // Number of highlights cards
function check_highlights_cards() {
let found = content.document.querySelectorAll(".card-outer:not(.placeholder)").length;
is(found, 2, "there should be 2 highlights cards");
found = content.document.querySelectorAll(".section-list .placeholder").length;
- is(found, 1, "there should be 1 highlights placeholder");
+ is(found, 6, "there should be 2 rows * 4 - 2 = 6 highlights placeholder");
found = content.document.querySelectorAll(".card-context-icon.icon-bookmark-added").length;
is(found, 2, "there should be 2 bookmark icons");
}
);
test_highlights(
1, // Number of highlights cards
--- a/browser/extensions/activity-stream/test/unit/asrouter/ASRouter.test.js
+++ b/browser/extensions/activity-stream/test/unit/asrouter/ASRouter.test.js
@@ -143,100 +143,96 @@ describe("ASRouter", () => {
it("should not return a blocked message", async () => {
// Block all messages except the first
await Router.setState(() => ({blockList: ALL_MESSAGE_IDS.slice(1)}));
const targetStub = {sendAsyncMessage: sandbox.stub()};
await Router.sendNextMessage(targetStub, null);
assert.calledOnce(targetStub.sendAsyncMessage);
- assert.equal(Router.state.currentId, ALL_MESSAGE_IDS[0]);
+ assert.equal(Router.state.lastMessageId, ALL_MESSAGE_IDS[0]);
});
it("should not return a message if all messages are blocked", async () => {
await Router.setState(() => ({blockList: ALL_MESSAGE_IDS}));
const targetStub = {sendAsyncMessage: sandbox.stub()};
await Router.sendNextMessage(targetStub, null);
assert.calledOnce(targetStub.sendAsyncMessage);
- assert.equal(Router.state.currentId, null);
+ assert.equal(Router.state.lastMessageId, null);
});
});
describe("#uninit", () => {
it("should remove the message listener on the RemotePageManager", () => {
const [, listenerAdded] = channel.addMessageListener.firstCall.args;
assert.isFunction(listenerAdded);
Router.uninit();
assert.calledWith(channel.removeMessageListener, CHILD_TO_PARENT_MESSAGE_NAME, listenerAdded);
});
});
describe("#onMessage: CONNECT_UI_REQUEST", () => {
- it("should set state.currentId to a message id", async () => {
+ it("should set state.lastMessageId to a message id", async () => {
await Router.onMessage(fakeAsyncMessage({type: "CONNECT_UI_REQUEST"}));
- assert.include(ALL_MESSAGE_IDS, Router.state.currentId);
+ assert.include(ALL_MESSAGE_IDS, Router.state.lastMessageId);
});
it("should send a message back to the to the target", async () => {
// force the only message to be a regular message so getRandomItemFromArray picks it
await Router.setState({messages: [{id: "foo", template: "simple_template", content: {title: "Foo", body: "Foo123"}}]});
const msg = fakeAsyncMessage({type: "CONNECT_UI_REQUEST"});
await Router.onMessage(msg);
- const [currentMessage] = Router.state.messages.filter(message => message.id === Router.state.currentId);
+ const [currentMessage] = Router.state.messages.filter(message => message.id === Router.state.lastMessageId);
assert.calledWith(msg.target.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "SET_MESSAGE", data: currentMessage});
});
it("should send a message back to the to the target if there is a bundle, too", async () => {
// force the only message to be a bundled message so getRandomItemFromArray picks it
await Router.setState({messages: [{id: "foo1", template: "simple_template", bundled: 2, content: {title: "Foo1", body: "Foo123-1"}}]});
const msg = fakeAsyncMessage({type: "CONNECT_UI_REQUEST"});
await Router.onMessage(msg);
- const [currentMessage] = Router.state.messages.filter(message => message.id === Router.state.currentId);
+ const [currentMessage] = Router.state.messages.filter(message => message.id === Router.state.lastMessageId);
assert.calledWith(msg.target.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME);
assert.equal(msg.target.sendAsyncMessage.firstCall.args[1].type, "SET_BUNDLED_MESSAGES");
assert.equal(msg.target.sendAsyncMessage.firstCall.args[1].data.bundle[0].content, currentMessage.content);
});
- it("should send a CLEAR_MESSAGE message and set state.currentId to null if no messages are available", async () => {
+ it("should send a CLEAR_ALL message if no messages are available", async () => {
await Router.setState({messages: []});
const msg = fakeAsyncMessage({type: "CONNECT_UI_REQUEST"});
await Router.onMessage(msg);
- assert.isNull(Router.state.currentId);
- assert.calledWith(msg.target.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
+ assert.calledWith(msg.target.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "CLEAR_ALL"});
});
});
describe("#onMessage: BLOCK_MESSAGE_BY_ID", () => {
- it("should add the id to the blockList, state.currentId to null if it is the blocked message id, and send a CLEAR_MESSAGE message", async () => {
- await Router.setState({currentId: "foo"});
+ it("should add the id to the blockList and broadcast a CLEAR_MESSAGE message with the id", async () => {
+ await Router.setState({lastMessageId: "foo"});
const msg = fakeAsyncMessage({type: "BLOCK_MESSAGE_BY_ID", data: {id: "foo"}});
await Router.onMessage(msg);
assert.isTrue(Router.state.blockList.includes("foo"));
- assert.isNull(Router.state.currentId);
- assert.calledWith(msg.target.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
- assert.calledOnce(Router._storage.set);
- assert.calledWithExactly(Router._storage.set, "blockList", ["foo"]);
+ assert.calledWith(channel.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "CLEAR_MESSAGE", data: {id: "foo"}});
});
});
describe("#onMessage: BLOCK_BUNDLE", () => {
- it("should add all the ids in the bundle to the blockList, state.currentId to null, and send a CLEAR_MESSAGE message", async () => {
- await Router.setState({currentId: "foo"});
+ it("should add all the ids in the bundle to the blockList and send a CLEAR_BUNDLE message", async () => {
+ const bundleIds = [FAKE_BUNDLE[0].id, FAKE_BUNDLE[1].id];
+ await Router.setState({lastMessageId: "foo"});
const msg = fakeAsyncMessage({type: "BLOCK_BUNDLE", data: {bundle: FAKE_BUNDLE}});
await Router.onMessage(msg);
assert.isTrue(Router.state.blockList.includes(FAKE_BUNDLE[0].id));
assert.isTrue(Router.state.blockList.includes(FAKE_BUNDLE[1].id));
- assert.isNull(Router.state.currentId);
- assert.calledWith(msg.target.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "CLEAR_MESSAGE"});
+ assert.calledWith(channel.sendAsyncMessage, PARENT_TO_CHILD_MESSAGE_NAME, {type: "CLEAR_BUNDLE"});
assert.calledOnce(Router._storage.set);
- assert.calledWithExactly(Router._storage.set, "blockList", [FAKE_BUNDLE[0].id, FAKE_BUNDLE[1].id]);
+ assert.calledWithExactly(Router._storage.set, "blockList", bundleIds);
});
});
describe("#onMessage: UNBLOCK_MESSAGE_BY_ID", () => {
it("should remove the id from the blockList", async () => {
await Router.onMessage(fakeAsyncMessage({type: "BLOCK_MESSAGE_BY_ID", data: {id: "foo"}}));
assert.isTrue(Router.state.blockList.includes("foo"));
await Router.onMessage(fakeAsyncMessage({type: "UNBLOCK_MESSAGE_BY_ID", data: {id: "foo"}}));
--- a/browser/extensions/activity-stream/test/unit/lib/SnippetsFeed.test.js
+++ b/browser/extensions/activity-stream/test/unit/lib/SnippetsFeed.test.js
@@ -59,24 +59,16 @@ describe("SnippetsFeed", () => {
.withArgs("browser.onboarding.notification.finished")
.returns(false);
sandbox.stub(global.Services.prefs, "prefHasUserValue")
.withArgs("services.sync.username")
.returns(true);
sandbox.stub(global.Services.prefs, "getIntPref")
.withArgs("devtools.selfxss.count")
.returns(5);
- sandbox.stub(global.AddonManager, "getActiveAddons")
- .resolves({
- addons: [
- Object.assign({id: "foo"}, FAKE_ADDONS.foo),
- Object.assign({id: "bar"}, FAKE_ADDONS.bar)
- ],
- fullData: true
- });
const getStub = sandbox.stub();
getStub.withArgs("previousSessionEnd").resolves(42);
getStub.withArgs("blockList").resolves([1]);
const feed = new SnippetsFeed();
feed.store = {
dispatch: sandbox.stub(),
dbStorage: {getDbTable: sandbox.stub().returns({get: getStub})}
@@ -99,17 +91,16 @@ describe("SnippetsFeed", () => {
assert.propertyVal(action.data, "profileResetWeeksAgo", 1);
assert.propertyVal(action.data, "telemetryEnabled", true);
assert.propertyVal(action.data, "onboardingFinished", false);
assert.propertyVal(action.data, "fxaccount", true);
assert.property(action.data, "selectedSearchEngine");
assert.deepEqual(action.data.selectedSearchEngine, searchData);
assert.propertyVal(action.data, "defaultBrowser", true);
assert.propertyVal(action.data, "isDevtoolsUser", true);
- assert.deepEqual(action.data.addonInfo, FAKE_ADDONS);
assert.deepEqual(action.data.blockList, [1]);
assert.propertyVal(action.data, "previousSessionEnd", 42);
});
it("should call .init on an INIT action", () => {
const feed = new SnippetsFeed();
sandbox.stub(feed, "init");
feed.store = {dispatch: sandbox.stub()};
@@ -218,16 +209,40 @@ describe("SnippetsFeed", () => {
feed.store = {dispatch: sandbox.stub()};
const browser = {};
const action = {type: at.TOTAL_BOOKMARKS_RESPONSE, data: null};
await feed.getTotalBookmarksCount(browser);
assert.calledWith(feed.store.dispatch, ac.OnlyToOneContent(action, browser));
});
+ it("should respond with ADDONS_INFO_RESPONSE when ADDONS_INFO_REQUEST is received", async () => {
+ sandbox.stub(global.AddonManager, "getActiveAddons")
+ .resolves({
+ addons: [
+ Object.assign({id: "foo"}, FAKE_ADDONS.foo),
+ Object.assign({id: "bar"}, FAKE_ADDONS.bar)
+ ],
+ fullData: true
+ });
+ const portId = "1234";
+ const feed = new SnippetsFeed();
+ feed.store = {dispatch: sandbox.stub()};
+ const expectedAction = {
+ type: at.ADDONS_INFO_RESPONSE,
+ data: {
+ isFullData: true,
+ addons: FAKE_ADDONS
+ }
+ };
+
+ await feed.onAction({type: at.ADDONS_INFO_REQUEST, meta: {fromTarget: portId}});
+
+ assert.calledWith(feed.store.dispatch, ac.OnlyToOneContent(expectedAction, portId));
+ });
it("should return true for isDevtoolsUser is devtools.selfxss.count is 5", async () => {
sandbox.stub(global.Services.prefs, "getIntPref")
.withArgs("devtools.selfxss.count")
.returns(5);
const feed = new SnippetsFeed();
const result = feed.isDevtoolsUser();
assert.isTrue(result);
});
new file mode 100644
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/activity-stream/newtab.properties
@@ -0,0 +1,201 @@
+newtab_page_title=New Tab
+
+header_top_sites=Top Sites
+header_highlights=Highlights
+# LOCALIZATION NOTE(header_recommended_by): This is followed by the name
+# of the corresponding content provider.
+header_recommended_by=Recommended by {provider}
+
+# LOCALIZATION NOTE(context_menu_button_sr): This is for screen readers when
+# the context menu button is focused/active. Title is the label or hostname of
+# the site.
+context_menu_button_sr=Open context menu for {title}
+
+# LOCALIZATION NOTE(section_context_menu_button_sr): This is for screen readers when
+# the section edit context menu button is focused/active.
+section_context_menu_button_sr=Open the section context menu
+
+# LOCALIZATION NOTE (type_label_*): These labels are associated to pages to give
+# context on how the element is related to the user, e.g. type indicates that
+# the page is bookmarked, or is currently open on another device
+type_label_visited=Visited
+type_label_bookmarked=Bookmarked
+type_label_recommended=Trending
+type_label_pocket=Saved to Pocket
+type_label_downloaded=Downloaded
+
+# LOCALIZATION NOTE (menu_action_*): These strings are displayed in a context
+# menu and are meant as a call to action for a given page.
+# LOCALIZATION NOTE (menu_action_bookmark): Bookmark is a verb, as in "Add to
+# bookmarks"
+menu_action_bookmark=Bookmark
+menu_action_remove_bookmark=Remove Bookmark
+menu_action_open_new_window=Open in a New Window
+menu_action_open_private_window=Open in a New Private Window
+menu_action_dismiss=Dismiss
+menu_action_delete=Delete from History
+menu_action_pin=Pin
+menu_action_unpin=Unpin
+confirm_history_delete_p1=Are you sure you want to delete every instance of this page from your history?
+# LOCALIZATION NOTE (confirm_history_delete_notice_p2): this string is displayed in
+# the same dialog as confirm_history_delete_p1. "This action" refers to deleting a
+# page from history.
+confirm_history_delete_notice_p2=This action cannot be undone.
+menu_action_save_to_pocket=Save to Pocket
+menu_action_delete_pocket=Delete from Pocket
+menu_action_archive_pocket=Archive in Pocket
+
+# LOCALIZATION NOTE (menu_action_show_file_*): These are platform specific strings
+# found in the context menu of an item that has been downloaded. The intention behind
+# "this action" is that it will show where the downloaded file exists on the file system
+# for each operating system.
+menu_action_show_file_mac_os=Show in Finder
+menu_action_show_file_windows=Open Containing Folder
+menu_action_show_file_linux=Open Containing Folder
+menu_action_show_file_default=Show File
+menu_action_open_file=Open File
+
+# LOCALIZATION NOTE (menu_action_copy_download_link, menu_action_go_to_download_page):
+# "Download" here, in both cases, is not a verb, it is a noun. As in, "Copy the
+# link that belongs to this downloaded item"
+menu_action_copy_download_link=Copy Download Link
+menu_action_go_to_download_page=Go to Download Page
+menu_action_remove_download=Remove from History
+
+# LOCALIZATION NOTE (search_button): This is screenreader only text for the
+# search button.
+search_button=Search
+
+# LOCALIZATION NOTE (search_header): Displayed at the top of the panel
+# showing search suggestions. {search_engine_name} is replaced with the name of
+# the current default search engine. e.g. 'Google Search'
+search_header={search_engine_name} Search
+
+# LOCALIZATION NOTE (search_web_placeholder): This is shown in the searchbox when
+# the user hasn't typed anything yet.
+search_web_placeholder=Search the Web
+
+# LOCALIZATION NOTE (section_disclaimer_topstories): This is shown below
+# the topstories section title to provide additional information about
+# how the stories are selected.
+section_disclaimer_topstories=The most interesting stories on the web, selected based on what you read. From Pocket, now part of Mozilla.
+section_disclaimer_topstories_linktext=Learn how it works.
+# LOCALIZATION NOTE (section_disclaimer_topstories_buttontext): The text of
+# the button used to acknowledge, and hide this disclaimer in the future.
+section_disclaimer_topstories_buttontext=Okay, got it
+
+# LOCALIZATION NOTE (prefs_*, settings_*): These are shown in about:preferences
+# for a "Firefox Home" section. "Firefox" should be treated as a brand and kept
+# in English, while "Home" should be localized matching the about:preferences
+# sidebar mozilla-central string for the panel that has preferences related to
+# what is shown for the homepage, new windows, and new tabs.
+prefs_home_header=Firefox Home Content
+prefs_home_description=Choose what content you want on your Firefox Home screen.
+# LOCALIZATION NOTE (prefs_section_rows_option): This is a semi-colon list of
+# plural forms used in a drop down of multiple row options (1 row, 2 rows).
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+prefs_section_rows_option={num} row;{num} rows
+prefs_search_header=Web Search
+prefs_topsites_description=The sites you visit most
+prefs_topstories_description2=Great content from around the web, personalized for you
+prefs_topstories_options_sponsored_label=Sponsored Stories
+prefs_topstories_sponsored_learn_more=Learn more
+prefs_highlights_description=A selection of sites that you’ve saved or visited
+prefs_highlights_options_visited_label=Visited Pages
+prefs_highlights_options_download_label=Most Recent Download
+prefs_highlights_options_pocket_label=Pages Saved to Pocket
+prefs_snippets_description=Updates from Mozilla and Firefox
+settings_pane_button_label=Customize your New Tab page
+settings_pane_topsites_header=Top Sites
+settings_pane_highlights_header=Highlights
+settings_pane_highlights_options_bookmarks=Bookmarks
+# LOCALIZATION NOTE(settings_pane_snippets_header): For the "Snippets" feature
+# traditionally on about:home. Alternative translation options: "Small Note" or
+# something that expresses the idea of "a small message, shortened from
+# something else, and non-essential but also not entirely trivial and useless."
+settings_pane_snippets_header=Snippets
+
+# LOCALIZATION NOTE (edit_topsites_*): This is shown in the Edit Top Sites modal
+# dialog.
+edit_topsites_button_text=Edit
+edit_topsites_edit_button=Edit this site
+
+# LOCALIZATION NOTE (topsites_form_*): This is shown in the New/Edit Topsite modal.
+topsites_form_add_header=New Top Site
+topsites_form_edit_header=Edit Top Site
+topsites_form_title_label=Title
+topsites_form_title_placeholder=Enter a title
+topsites_form_url_label=URL
+topsites_form_image_url_label=Custom Image URL
+topsites_form_url_placeholder=Type or paste a URL
+topsites_form_use_image_link=Use a custom image…
+# LOCALIZATION NOTE (topsites_form_*_button): These are verbs/actions.
+topsites_form_preview_button=Preview
+topsites_form_add_button=Add
+topsites_form_save_button=Save
+topsites_form_cancel_button=Cancel
+topsites_form_url_validation=Valid URL required
+topsites_form_image_validation=Image failed to load. Try a different URL.
+
+# LOCALIZATION NOTE (pocket_read_more): This is shown at the bottom of the
+# trending stories section and precedes a list of links to popular topics.
+pocket_read_more=Popular Topics:
+# LOCALIZATION NOTE (pocket_read_even_more): This is shown as a link at the
+# end of the list of popular topic links.
+pocket_read_even_more=View More Stories
+
+highlights_empty_state=Start browsing, and we’ll show some of the great articles, videos, and other pages you’ve recently visited or bookmarked here.
+# LOCALIZATION NOTE (topstories_empty_state): When there are no recommendations,
+# in the space that would have shown a few stories, this is shown instead.
+# {provider} is replaced by the name of the content provider for this section.
+topstories_empty_state=You’ve caught up. Check back later for more top stories from {provider}. Can’t wait? Select a popular topic to find more great stories from around the web.
+
+# LOCALIZATION NOTE (manual_migration_explanation2): This message is shown to encourage users to
+# import their browser profile from another browser they might be using.
+manual_migration_explanation2=Try Firefox with the bookmarks, history and passwords from another browser.
+# LOCALIZATION NOTE (manual_migration_cancel_button): This message is shown on a button that cancels the
+# process of importing another browser’s profile into Firefox.
+manual_migration_cancel_button=No Thanks
+# LOCALIZATION NOTE (manual_migration_import_button): This message is shown on a button that starts the process
+# of importing another browser’s profile profile into Firefox.
+manual_migration_import_button=Import Now
+
+# LOCALIZATION NOTE (error_fallback_default_*): This message and suggested
+# action link are shown in each section of UI that fails to render
+error_fallback_default_info=Oops, something went wrong loading this content.
+error_fallback_default_refresh_suggestion=Refresh page to try again.
+
+# LOCALIZATION NOTE (section_menu_action_*). These strings are displayed in the section
+# context menu and are meant as a call to action for the given section.
+section_menu_action_remove_section=Remove Section
+section_menu_action_collapse_section=Collapse Section
+section_menu_action_expand_section=Expand Section
+section_menu_action_manage_section=Manage Section
+section_menu_action_manage_webext=Manage Extension
+section_menu_action_add_topsite=Add Top Site
+section_menu_action_move_up=Move Up
+section_menu_action_move_down=Move Down
+section_menu_action_privacy_notice=Privacy Notice
+
+# LOCALIZATION NOTE (firstrun_*). These strings are displayed only once, on the
+# firstrun of the browser, they give an introduction to Firefox and Sync.
+firstrun_title=Take Firefox with You
+firstrun_content=Get your bookmarks, history, passwords and other settings on all your devices.
+firstrun_learn_more_link=Learn more about Firefox Accounts
+
+# LOCALIZATION NOTE (firstrun_form_header and firstrun_form_sub_header):
+# firstrun_form_sub_header is a continuation of firstrun_form_header, they are one sentence.
+# firstrun_form_header is displayed more boldly as the call to action.
+firstrun_form_header=Enter your email
+firstrun_form_sub_header=to continue to Firefox Sync.
+
+firstrun_email_input_placeholder=Email
+
+# LOCALIZATION NOTE (firstrun_extra_legal_links): {terms} is equal to firstrun_terms_of_service, and
+# {privacy} is equal to firstrun_privacy_notice. {terms} and {privacy} are clickable links.
+firstrun_extra_legal_links=By proceeding, you agree to the {terms} and {privacy}.
+firstrun_terms_of_service=Terms of Service
+firstrun_privacy_notice=Privacy Notice
+
+firstrun_continue_to_login=Continue
+firstrun_skip_login=Skip this step