diff --git a/actions.js b/actions.js index 64fa845..cba9b47 100644 --- a/actions.js +++ b/actions.js @@ -1,7 +1,6 @@ const ghReservedNames = require("github-reserved-names") const util = require("./util") -const Hints = require("./hints") const actions = {} @@ -55,8 +54,12 @@ actions.showWayback = ({ href = util.getCurrentLocation("href") } = {}) => () => // Surfingkeys-specific actions // ---------------------------- -actions.createHint = (selector, action = Hints.dispatchMouseClick) => () => Hints - .create(selector, action) +actions.createHint = (selector, action) => () => { + if (typeof action === "undefined") { + action = Hints.dispatchMouseClick // eslint-disable-line no-param-reassign + } + Hints.create(selector, action) +} actions.openAnchor = ({ newTab = false, prop = "href" } = {}) => a => actions.openLink(a[prop], { newTab })() diff --git a/gulpfile.js b/gulpfile.js index d2551df..d142f71 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -13,10 +13,22 @@ const fetch = require("node-fetch") const { spawn } = require("child_process") const { URL } = require("url") -const compl = require("./completions") -const conf = require("./conf") -const keys = require("./keys") -const util = require("./util") +let srcFilesLoaded = false +let compl +let conf +let keys +let util + +const requireSrcFiles = () => { + if (srcFilesLoaded) { + return + } + compl = require("./completions") // eslint-disable-line global-require + conf = require("./conf") // eslint-disable-line global-require + keys = require("./keys") // eslint-disable-line global-require + util = require("./util") // eslint-disable-line global-require + srcFilesLoaded = true +} const paths = { scripts: ["conf.priv.js", "completions.js", "conf.js", "actions.js", "help.js", "keys.js", "util.js"], @@ -73,6 +85,8 @@ gulp.task("lint-gulpfile", () => gulp // }) gulp.task("docs", parallel(async () => { + requireSrcFiles() + const screens = {} let screenshotList = "" @@ -190,6 +204,8 @@ const getFavicon = async ({ domain, favicon }, timeout = 5000) => { } gulp.task("favicons", series("clean-favicons", async () => { + requireSrcFiles() + const sites = [].concat( // search engine completions Object.entries(compl) diff --git a/hints.js b/hints.js deleted file mode 100644 index 127a329..0000000 --- a/hints.js +++ /dev/null @@ -1,9 +0,0 @@ -if (typeof Hints === "undefined") { - module.exports = { - create: () => {}, - dispatchMouseClick: () => {}, - } -} else { - module.exports = Hints -} -