Source code

Revision control

Copy as Markdown

Other Tools

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script>
/**
* Helper page used by browser_localStorage_snapshotting.js.
*
* We expose methods to be invoked by ContentTask.spawn() calls.
*
**/
var pageName = document.location.search.substring(1);
window.addEventListener(
"load",
() => { document.getElementById("pageNameH").textContent = pageName; });
function applyMutations(mutations) {
mutations.forEach(function([key, value]) {
if (key !== null) {
if (value === null) {
localStorage.removeItem(key);
} else {
localStorage.setItem(key, value);
}
} else {
localStorage.clear();
}
});
}
function getState() {
let state = {};
let length = localStorage.length;
for (let index = 0; index < length; index++) {
let key = localStorage.key(index);
state[key] = localStorage.getItem(key);
}
return state;
}
function getKeys() {
return Object.keys(localStorage);
}
function beginExplicitSnapshot() {
localStorage.beginExplicitSnapshot();
}
function checkpointExplicitSnapshot() {
localStorage.checkpointExplicitSnapshot();
}
function endExplicitSnapshot() {
localStorage.endExplicitSnapshot();
}
function getHasSnapshot() {
return localStorage.hasSnapshot;
}
function getSnapshotUsage() {
return localStorage.snapshotUsage;
}
</script>
</head>
<body><h2 id="pageNameH"></h2></body>
</html>