/** * @license * SPDX-License-Identifier: AGPL-3.0-or-later * This file is part of Wolfree. * This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. */ // @ts-check import Placeholder from "./Placeholder.js"; import Entrypoint from "./Entrypoint.js"; export default class PostProcessor { process = ({ input = String(), i2d = Boolean() } = {}) => { try { new Placeholder().remove(); try { document .querySelectorAll( "html > body > div#__next > div > main > main > div.wolfree-pods > div > div > section > section > div > div > div > details > div" ) .forEach((element = new HTMLElement()) => element.setAttribute("contenteditable", "") ); } catch (error) { console.error( "Fail to make the plaintext in details tags easy to copy.", error ); } try { document .querySelectorAll( "html > body > div#__next > div > main > main > div.wolfree-pods > div > div > section > section > div:is(:first-child) > select" ) .forEach((element = new HTMLSelectElement()) => element.addEventListener( "change", async (event = new Event(String())) => Entrypoint({ input, i2d, extraPodstates: [ event.target instanceof HTMLSelectElement ? event.target.value : (console.error({ event }), String()), ], }) ) ); } catch (error) { console.error( "Fail to set up the drop-down menu for problem-solving strategies.", error ); } } catch (error) { console.error({ error }); } }; }