(()=>{"use strict";const e=e=>{window.postMessage({sender:"asbplayer-extension-to-player",message:e})},s=new class{async get(e){return await chrome.storage.local.get(e)}async set(e){await chrome.storage.local.set(e)}};window.addEventListener("message",(async a=>{if(a.source!==window)return;const n=a.data;if("asbplayer"===n.sender||"asbplayerv2"===n.sender)switch(n.message.command){case"get-settings":const a=n.message;e({response:await s.get(a.keysAndDefaults),messageId:n.message.messageId});break;case"set-settings":const t=n.message;await s.set(t.settings),e({messageId:n.message.messageId});break;default:chrome.runtime.sendMessage(n)}})),chrome.runtime.onMessage.addListener(((e,s,a)=>{"asbplayer-extension-to-player"===e.sender&&window.postMessage(e)}));const a=chrome.runtime.getManifest();window.addEventListener("DOMContentLoaded",(async s=>{const n=await chrome.runtime.sendMessage({sender:"asbplayerv2",message:{command:"extension-commands"}});e({command:"version",version:a.version,extensionCommands:n})}))})();