REPL code quality
This commit is contained in:
parent
902dfa7e7c
commit
6e00066048
1 changed files with 5 additions and 13 deletions
18
src/stdin.js
18
src/stdin.js
|
@ -5,7 +5,7 @@ const util = require("util")
|
||||||
const {addbot} = require("../addbot")
|
const {addbot} = require("../addbot")
|
||||||
|
|
||||||
const passthrough = require("./passthrough")
|
const passthrough = require("./passthrough")
|
||||||
const {discord, sync, db} = passthrough
|
const {discord, sync, db, select, from, as} = passthrough
|
||||||
|
|
||||||
const data = sync.require("../test/data")
|
const data = sync.require("../test/data")
|
||||||
const createSpace = sync.require("./d2m/actions/create-space")
|
const createSpace = sync.require("./d2m/actions/create-space")
|
||||||
|
@ -20,19 +20,17 @@ const updatePins = sync.require("./d2m/actions/update-pins")
|
||||||
const speedbump = sync.require("./d2m/actions/speedbump")
|
const speedbump = sync.require("./d2m/actions/speedbump")
|
||||||
const ks = sync.require("./matrix/kstate")
|
const ks = sync.require("./matrix/kstate")
|
||||||
const setPresence = sync.require("./d2m/actions/set-presence")
|
const setPresence = sync.require("./d2m/actions/set-presence")
|
||||||
|
const channelWebhook = sync.require("./m2d/actions/channel-webhook")
|
||||||
const guildID = "112760669178241024"
|
const guildID = "112760669178241024"
|
||||||
|
|
||||||
const extraContext = {}
|
|
||||||
|
|
||||||
if (process.stdin.isTTY) {
|
if (process.stdin.isTTY) {
|
||||||
setImmediate(() => { // assign after since old extraContext data will get removed
|
setImmediate(() => {
|
||||||
if (!passthrough.repl) {
|
if (!passthrough.repl) {
|
||||||
const cli = repl.start({ prompt: "", eval: customEval, writer: s => s })
|
const cli = repl.start({ prompt: "", eval: customEval, writer: s => s })
|
||||||
Object.assign(cli.context, extraContext, passthrough)
|
Object.assign(cli.context, passthrough)
|
||||||
passthrough.repl = cli
|
passthrough.repl = cli
|
||||||
} else {
|
|
||||||
Object.assign(passthrough.repl.context, extraContext)
|
|
||||||
}
|
}
|
||||||
|
// @ts-ignore
|
||||||
sync.addTemporaryListener(passthrough.repl, "exit", () => process.exit())
|
sync.addTemporaryListener(passthrough.repl, "exit", () => process.exit())
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -61,9 +59,3 @@ async function customEval(input, _context, _filename, callback) {
|
||||||
return callback(null, util.inspect(e, false, 100, true))
|
return callback(null, util.inspect(e, false, 100, true))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sync.events.once(__filename, () => {
|
|
||||||
for (const key in extraContext) {
|
|
||||||
delete passthrough.repl.context[key]
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue