| import MainWorldContentScriptBridgeClient from '../mainWorldContentScriptBridge/Client.js'; |
| |
| // Main World OptionsWatcher client (used in scripts injected into the Main |
| // World (MW) to get the options). |
| export default class MWOptionsWatcherClient extends |
| MainWorldContentScriptBridgeClient { |
| constructor(options, CSTarget, MWTarget, timeout) { |
| super(CSTarget, MWTarget, timeout); |
| this.#setUp(options); |
| } |
| |
| #setUp(options) { |
| this._sendRequestWithoutCallback('setUp', {options}); |
| } |
| |
| async getOption(option) { |
| if (!option) return null; |
| return this._sendRequest('getOption', {option}); |
| } |
| |
| async getOptions(options) { |
| if (!options || options?.length === 0) return []; |
| return this._sendRequest('getOptions', {options}); |
| } |
| |
| async isEnabled(option) { |
| if (!option) return null; |
| return this._sendRequest('isEnabled', {option}); |
| } |
| |
| async areEnabled(options) { |
| if (!options || options?.length === 0) return []; |
| return this._sendRequest('areEnabled', {options}); |
| } |
| } |