1#if 0 2# 3# This Source Code Form is subject to the terms of the Mozilla Public 4# License, v. 2.0. If a copy of the MPL was not distributed with this 5# file, You can obtain one at http://mozilla.org/MPL/2.0/. 6# 7# This template file is used to construct the cached about:home document. 8# The following template strings are used: 9# 10# {{ CACHE_TIME }}: 11# A date string representing when the cache was generated. 12# 13# {{ MARKUP }}: 14# The generated DOM content from ReactDOMServer for the cache. 15# 16# Also note the final script load of about:home?jscache. This loads the cached 17# script, which does the important work of telling React how to connect the 18# cached page state to the pre-existing DOM that's being rendered. 19# 20#endif 21<!doctype html> 22<html> 23 <head> 24 <meta charset="utf-8"> 25 <meta http-equiv="Content-Security-Policy" content="default-src 'none'; object-src 'none'; script-src resource: chrome:; connect-src https:; img-src https: data: blob: chrome:; style-src 'unsafe-inline';"> 26 <meta name="color-scheme" content="light dark"> 27 <title data-l10n-id="newtab-page-title"></title> 28 <link rel="icon" type="image/png" href="chrome://branding/content/icon32.png"/> 29 <link rel="localization" href="branding/brand.ftl" /> 30 <link rel="localization" href="browser/branding/brandings.ftl" /> 31 <link rel="localization" href="browser/newtab/newtab.ftl" /> 32 <link rel="stylesheet" href="chrome://browser/content/contentSearchUI.css" /> 33 <link rel="stylesheet" href="chrome://activity-stream/content/css/activity-stream.css" /> 34 </head> 35 <!-- Cached: {{ CACHE_TIME }} --> 36 <body class="activity-stream"> 37 <div id="header-asrouter-container" role="presentation"></div> 38 <div id="root"> 39 {{ MARKUP }} 40 </div> 41 <div id="footer-asrouter-container" role="presentation"></div> 42 <script src="about:home?jscache"></script> 43 </body> 44</html> 45