User:Fumple/vector.js: Difference between revisions

From Inkipedia, the Splatoon wiki
(Testing)
 
(Testing)
Line 1: Line 1:
if(["Scribunto", "javascript", "css"].includes(mw.config.get("wgPageContentModel") && mw.config.get("wgAction") == "edit") /*Module, JS and CSS*/){
if(["Scribunto", "javascript", "css"].includes(mw.config.get("wgPageContentModel")) && mw.config.get("wgAction") == "edit"){
    //mw.loader.load('/w/index.php?title=' + encodeURIComponent(el[0]) + '&action=raw&ctype=text/javascript');
    //mw.loader.load('/w/index.php?title=' + encodeURIComponent(el[0]) + '&action=raw&ctype=text/css', 'text/css');
     //Load editor (https://github.com/microsoft/monaco-editor/tree/main)
     //Load editor (https://github.com/microsoft/monaco-editor/tree/main)
     mw.loader.load('https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.css', 'text/css');
     $("head").append(`<link
     mw.loader.load('https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/loader.js');
        rel="stylesheet"
    mw.loader.load('https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.nls.js');
        data-name="vs/editor/editor.main"
    mw.loader.load('https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.js');
        href="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.css"
    $("#wpTextbox1").after('<div id="vscodeeditor"></div>');
    />`);
    $("#wpTextbox1").css("display", "none");
     $("body").append(`
    $("#wpTextbox1").attr("readonly",true);
        <script>
    var vscodeeditor = monaco.editor.create(document.getElementById('vscodeeditor'), {
            var require = { paths: { vs: 'https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs' } };
        value: $("#wpTextbox1").val(),
        </script>
        language: {"Scribunto":"lua", "javascript":"javascript", "css":"css"}[mw.config.get("wgPageContentModel")]
        <script src="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/loader.js"></script>
     });
        <script src="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.nls.js"></script>
        <script src="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.js"></script>
    `)
    var fplEditorCheck = setInterval(async ()=>{
        if($("#wpTextbox1").length != 0){
            clearInterval(fplEditorCheck);
            $("#wpTextbox1").after('<div id="vscodeeditor"></div>');
            $("#wpTextbox1").css("display", "none");
            $("#wpTextbox1").attr("readonly",true);
            $("#vscodeeditor").css("height", "500px");
            window.fplEditor = monaco.editor.create(document.getElementById('vscodeeditor'), {
                value: $("#wpTextbox1").val(),
                language: {"Scribunto":"lua", "javascript":"javascript", "css":"css"}[mw.config.get("wgPageContentModel")],
                theme: await new mw.Api().get({
                    "action": "query",
                    "format": "json",
                    "list": "gadgets",
                    "gaprop": "id",
                    "gaenabledonly": 1
                }).query.gadgets.map(el=>el.id).includes("darkmode") ? "vs-dark" : "vs"
            });
        }
     }, 100)
}
}

Revision as of 15:46, 27 March 2021

if(["Scribunto", "javascript", "css"].includes(mw.config.get("wgPageContentModel")) && mw.config.get("wgAction") == "edit"){
    //Load editor (https://github.com/microsoft/monaco-editor/tree/main)
    $("head").append(`<link
        rel="stylesheet"
        data-name="vs/editor/editor.main"
        href="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.css"
    />`);
    $("body").append(`
        <script>
            var require = { paths: { vs: 'https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs' } };
        </script>
        <script src="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/loader.js"></script>
        <script src="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.nls.js"></script>
        <script src="https://microsoft.github.io/monaco-editor/node_modules/monaco-editor/min/vs/editor/editor.main.js"></script>
    `)
    var fplEditorCheck = setInterval(async ()=>{
        if($("#wpTextbox1").length != 0){
            clearInterval(fplEditorCheck);
            $("#wpTextbox1").after('<div id="vscodeeditor"></div>');
            $("#wpTextbox1").css("display", "none");
            $("#wpTextbox1").attr("readonly",true);
            $("#vscodeeditor").css("height", "500px");
            window.fplEditor = monaco.editor.create(document.getElementById('vscodeeditor'), {
                value: $("#wpTextbox1").val(),
                language: {"Scribunto":"lua", "javascript":"javascript", "css":"css"}[mw.config.get("wgPageContentModel")],
                theme: await new mw.Api().get({
                    "action": "query",
                    "format": "json",
                    "list": "gadgets",
                    "gaprop": "id",
                    "gaenabledonly": 1
                }).query.gadgets.map(el=>el.id).includes("darkmode") ? "vs-dark" : "vs"
            });
        }
    }, 100)
}