「MediaWiki:Mobile.js」の版間の差分

提供: Vikipedia
ナビゲーションに移動 検索に移動
タグ: モバイル編集モバイルウェブ編集
タグ: モバイル編集モバイルウェブ編集
1行目: 1行目:
 
(function () {
 
(function () {
     var startup = mw.mobileFrontend.require("mobile.startup");
+
     console.log(mw.loader.getState("mobile.startup"));
     if (startup.mediaViewer) {
+
     console.log(mw.loader.getState("mobile.mediaViewer"));
        console.info("No longer needed 'mediaViewer' polyfill.");
 
        return;
 
    }
 
  
     var mobileMediaViewer = "mobile.mediaViewer";
+
     mw.loader
 
+
        .using([
    var patch = function () {
+
            "mobile.startup",
         console.log("patch");
+
            "mobile.mediaViewer"
        startup.mediaViewer = {
+
        ])
            overlay: mw.mobileFrontend.require(mobileMediaViewer + "/ImageOverlay")
+
         .then(function () {
        };
+
            var startup = mw.mobileFrontend.require("mobile.startup");
    };
+
            if (startup.mediaViewer) {
 
+
                console.info("No longer needed 'mediaViewer' polyfill.");
    var state = mw.loader.getState(mobileMediaViewer);
+
                return;
    console.log(state);
+
            }
    switch (state) {
+
             var overlay = mw.mobileFrontend.require("mobile.mediaViewer/ImageOverlay");
        case "ready":
+
             startup.mediaViewer = {
            patch();
+
                 overlay: overlay
            break;
+
            };
        case "registered":
+
        });
             mw.loader
 
                .using(mobileMediaViewer)
 
                .then(patch);
 
            break;
 
        default:
 
             startup
 
                .rlModuleLoader
 
                 .loadModule(mobileMediaViewer)
 
                .then(patch);
 
    }
 
 
})();
 
})();
  

2019年8月27日 (火) 00:55時点における版

(function () {
    console.log(mw.loader.getState("mobile.startup"));
    console.log(mw.loader.getState("mobile.mediaViewer"));

    mw.loader
        .using([
            "mobile.startup",
            "mobile.mediaViewer"
        ])
        .then(function () {
            var startup = mw.mobileFrontend.require("mobile.startup");
            if (startup.mediaViewer) {
                console.info("No longer needed 'mediaViewer' polyfill.");
                return;
            }
            var overlay = mw.mobileFrontend.require("mobile.mediaViewer/ImageOverlay");
            startup.mediaViewer = {
                overlay: overlay
            };
        });
})();

(function () {
    var disableMobileUI = false
        || window.localStorage.getItem("disableMobileUI")
        || window.sessionStorage.getItem("disableMobileUI")
    if (disableMobileUI) {
        return;
    }

    var wgScript = mw.config.get("wgScript");

    var builderURL = wgScript
        + "?"
        + new URLSearchParams({
            title: "MediaWiki:MobileUI.js",
            action: "raw",
            ctype: "text/javascript"
        })
        .toString();

    var builderThread = mw.loader
        .getScript(builderURL)
        .then(function () {
            return new MobileUIBuilder(mw)
                .prebuild();
        });

    var dataURL = wgScript
        + "?"
        + new URLSearchParams({
            title: "MediaWiki:MobileUI.json",
            action: "raw",
            ctype: "application/json"
        })
        .toString();

    var dataThread = $
        .getJSON(dataURL)
        .then(Object);

    $
        .when(builderThread, dataThread)
        .done(function (builder, data) {
            builder.build(data);
        });
})();