52 lines
1,001 B
JavaScript
52 lines
1,001 B
JavaScript
/**
|
|
* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/
|
|
*/
|
|
|
|
function _sendMessage(messageBody) {
|
|
const messageHeader = {
|
|
moduleName: "UtilsParent",
|
|
objectName: "UtilsParent",
|
|
};
|
|
|
|
const message = { ...messageHeader, ...messageBody };
|
|
|
|
postMessage(message);
|
|
}
|
|
|
|
function _recvMessage() {
|
|
return new Promise(function (resolve) {
|
|
addEventListener("message", async function onMessage(event) {
|
|
removeEventListener("message", onMessage);
|
|
const data = event.data;
|
|
resolve(data);
|
|
});
|
|
});
|
|
}
|
|
|
|
export const UtilsChild = {
|
|
async getCachedOriginUsage() {
|
|
_sendMessage({
|
|
op: "getCachedOriginUsage",
|
|
});
|
|
|
|
return _recvMessage();
|
|
},
|
|
|
|
async shrinkStorageSize(size) {
|
|
_sendMessage({
|
|
op: "shrinkStorageSize",
|
|
size,
|
|
});
|
|
|
|
return _recvMessage();
|
|
},
|
|
|
|
async restoreStorageSize() {
|
|
_sendMessage({
|
|
op: "restoreStorageSize",
|
|
});
|
|
|
|
return _recvMessage();
|
|
},
|
|
};
|