splix-js-demodularizer

A vile trick that may aid you in executing your beloved scripts in the novel version of the client

Ajankohdalta 30.10.2023. Katso uusin versio.

Tätä skriptiä ei tulisi asentaa suoraan. Se on kirjasto muita skriptejä varten sisällytettäväksi metadirektiivillä // @require https://updategreasyfork.deno.dev/scripts/478491/1272517/splix-js-demodularizer.js.

// ==UserScript==
// @name         splix-js-demodularizer
// @namespace    http://tampermonkey.net/
// @version      0.1.2
// @description  A vile trick that may aid you in executing your beloved scripts in the novel version of the client
// @author       You
// @match        https://splix.io/
// @icon         https://www.google.com/s2/favicons?sz=64&domain=splix.io
// @grant        none
// @run-at       document-start
// ==/UserScript==

await (async function() {
    'use strict';

    if (window.jsDemodularized) return;

    let clientCodeTimestamp = localStorage.getItem("clientCodeTimestamp");

    if (clientCodeTimestamp && Math.abs(new Date().getTime() - Number.parseInt(clientCodeTimestamp)) < 1000 * 60 * 60) {
        const clientCode = localStorage.getItem("clientCode");
        document.open('text/html');
        document.write(clientCode);
        document.close();
        window.jsDemodularized = true;
    } else {
       const response = await fetch("https://splix.io/");
       let clientCode = await response.text();
       clientCode = clientCode.replace(/type\=\"module\" src\=\"\.\/bundle\/main\-\w+\.js\"/, 'defer src="./bundle/main-b98314ab.js"');
       localStorage.setItem("clientCode", clientCode);
       localStorage.setItem("clientCodeTimestamp", new Date().getTime());
       location.reload();
    }
})();