diff --git a/.eslintrc.json b/.eslintrc.json index 2d4f049..81db53f 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -4,6 +4,9 @@ "wikimedia/client", "wikimedia/jquery" ], + "env": { + "commonjs": true + }, "globals": { "OO": "readonly", "mw": "readonly", diff --git a/resources/skins.minerva.options/BackToTopOverlay.js b/resources/skins.minerva.options/BackToTopOverlay.js index e21e8a6..64344b6 100644 --- a/resources/skins.minerva.options/BackToTopOverlay.js +++ b/resources/skins.minerva.options/BackToTopOverlay.js @@ -53,6 +53,6 @@ } } ); - M.define( 'skins.minerva.options/BackToTopOverlay', BackToTopOverlay ); + module.exports = BackToTopOverlay; }( mw.mobileFrontend ) ); diff --git a/resources/skins.minerva.options/backtotop.js b/resources/skins.minerva.options/backtotop.js index 6010b9e..2e86933 100644 --- a/resources/skins.minerva.options/backtotop.js +++ b/resources/skins.minerva.options/backtotop.js @@ -1,7 +1,8 @@ -( function ( M ) { - var BackToTopOverlay = M.require( 'skins.minerva.options/BackToTopOverlay' ), +module.exports = function () { + var BackToTopOverlay = require( './BackToTopOverlay.js' ), backtotop = new BackToTopOverlay(), features = mw.config.get( 'wgMinervaFeatures', {} ), + M = mw.mobileFrontend, mobile = M.require( 'mobile.startup' ), browser = mobile.Browser.getSingleton(), eventBus = mobile.eventBusSingleton; @@ -21,4 +22,4 @@ backtotop.hide(); } } ); -}( mw.mobileFrontend ) ); +}; diff --git a/resources/skins.minerva.options/categories.js b/resources/skins.minerva.options/categories.js index 3f9acd8..545143e 100644 --- a/resources/skins.minerva.options/categories.js +++ b/resources/skins.minerva.options/categories.js @@ -1,5 +1,6 @@ -( function ( M ) { +module.exports = function () { var + M = mw.mobileFrontend, mobile = M.require( 'mobile.startup' ), loader = mobile.rlModuleLoader, features = mw.config.get( 'wgMinervaFeatures', {} ), @@ -56,4 +57,4 @@ $( initButton ); -}( mw.mobileFrontend ) ); +}; diff --git a/resources/skins.minerva.options/index.js b/resources/skins.minerva.options/index.js new file mode 100644 index 0000000..27df7ad --- /dev/null +++ b/resources/skins.minerva.options/index.js @@ -0,0 +1,6 @@ +// setup back to top button +require( './backtotop.js' )(); +// setup categories button +require( './categories.js' )(); +// setup share button +require( './share.js' )(); diff --git a/resources/skins.minerva.options/share.js b/resources/skins.minerva.options/share.js index 15145f7..eed5410 100644 --- a/resources/skins.minerva.options/share.js +++ b/resources/skins.minerva.options/share.js @@ -1,6 +1,7 @@ -( function ( M, config ) { - var shareIcon = M.require( 'skins.minerva.share/shareIcon' ), - trackShare = M.require( 'skins.minerva.share/track' ), +module.exports = function () { + var config = mw.config, + shareIcon = require( './shareIcon.js' ), + trackShare = require( './trackShare.js' ), features = config.get( 'wgMinervaFeatures', {} ); /** @@ -25,4 +26,4 @@ trackShare( 'shownShareButton' ); } -}( mw.mobileFrontend, mw.config ) ); +}; diff --git a/resources/skins.minerva.options/shareIcon.js b/resources/skins.minerva.options/shareIcon.js index 144a61d..77fda0e 100644 --- a/resources/skins.minerva.options/shareIcon.js +++ b/resources/skins.minerva.options/shareIcon.js @@ -1,6 +1,6 @@ ( function ( M, msg, config ) { var Icon = M.require( 'mobile.startup' ).Icon, - trackShare = M.require( 'skins.minerva.share/track' ); + trackShare = require( './trackShare.js' ); /** * Generate a mouse event that when run @@ -42,5 +42,5 @@ } ); } - M.define( 'skins.minerva.share/shareIcon', shareIcon ); + module.exports = shareIcon; }( mw.mobileFrontend, mw.msg, mw.config ) ); diff --git a/resources/skins.minerva.options/trackShare.js b/resources/skins.minerva.options/trackShare.js index 1d7aeaf..c47c076 100644 --- a/resources/skins.minerva.options/trackShare.js +++ b/resources/skins.minerva.options/trackShare.js @@ -1,4 +1,4 @@ -( function ( M, track, user, config ) { +( function ( track, user, config ) { /** * Helper function to track share button usage * @@ -14,5 +14,5 @@ } ); } - M.define( 'skins.minerva.share/track', trackShare ); -}( mw.mobileFrontend, mw.track, mw.user, mw.config ) ); + module.exports = trackShare; +}( mw.track, mw.user, mw.config ) ); diff --git a/skin.json b/skin.json index 517b2da..5f4df32 100644 --- a/skin.json +++ b/skin.json @@ -587,7 +587,8 @@ "styles": [ "resources/skins.minerva.options/backtotop.less" ], - "scripts": [ + "packageFiles": [ + "resources/skins.minerva.options/index.js", "resources/skins.minerva.options/BackToTopOverlay.js", "resources/skins.minerva.options/backtotop.js", "resources/skins.minerva.options/categories.js",