include build
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,2 @@
|
|||||||
/target
|
|
||||||
settings.json
|
settings.json
|
||||||
node_modules
|
node_modules
|
||||||
17
readme.md
17
readme.md
@@ -1,3 +1,20 @@
|
|||||||
# discord-cli
|
# discord-cli
|
||||||
|
|
||||||
discord but as a shell
|
discord but as a shell
|
||||||
|
|
||||||
|
## running
|
||||||
|
|
||||||
|
make a `settings.json` file
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"token": "YOUR DISCORD TOKEN"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
then run
|
||||||
|
|
||||||
|
```sh
|
||||||
|
npm i
|
||||||
|
npm run
|
||||||
|
```
|
||||||
|
|||||||
202
target/index.js
Normal file
202
target/index.js
Normal file
@@ -0,0 +1,202 @@
|
|||||||
|
"use strict";
|
||||||
|
exports.__esModule = true;
|
||||||
|
var tslib_1 = require("tslib");
|
||||||
|
var readline = require("readline");
|
||||||
|
var discord_js_1 = require("discord.js");
|
||||||
|
var fs_1 = require("fs");
|
||||||
|
var path = require("path");
|
||||||
|
var settings = JSON.parse((0, fs_1.readFileSync)(path.resolve('./settings.json')).toString());
|
||||||
|
var rl = readline.createInterface({
|
||||||
|
input: process.stdin,
|
||||||
|
output: process.stdout
|
||||||
|
});
|
||||||
|
function exitNicely() {
|
||||||
|
client.destroy();
|
||||||
|
rl.close();
|
||||||
|
process.exit();
|
||||||
|
}
|
||||||
|
var DiscordLocation = (function () {
|
||||||
|
function DiscordLocation(prompt, parent) {
|
||||||
|
this.prompt = '';
|
||||||
|
this.exitListener = function () { };
|
||||||
|
if (parent)
|
||||||
|
prompt = parent.prompt + "/" + prompt;
|
||||||
|
if (prompt)
|
||||||
|
this.prompt = prompt;
|
||||||
|
this.parent = parent;
|
||||||
|
this.runPrompt();
|
||||||
|
}
|
||||||
|
DiscordLocation.prototype.runPrompt = function () {
|
||||||
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
||||||
|
var answer;
|
||||||
|
var _this = this;
|
||||||
|
return (0, tslib_1.__generator)(this, function (_a) {
|
||||||
|
switch (_a.label) {
|
||||||
|
case 0: return [4, new Promise(function (p) { return rl.question(_this.prompt + "> ", p); })];
|
||||||
|
case 1:
|
||||||
|
answer = _a.sent();
|
||||||
|
this.handleRepl(answer, function () { return _this.runPrompt(); });
|
||||||
|
return [2];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
DiscordLocation.prototype.handleRepl = function (rawArgs, done) {
|
||||||
|
var _this = this;
|
||||||
|
var argsArr = rawArgs.split(' '), cmd = argsArr.shift() || '', args = argsArr.join(' ');
|
||||||
|
switch (cmd) {
|
||||||
|
case 'exit':
|
||||||
|
this.exit();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
this.runCommand(cmd, args, done)["catch"](function (e) {
|
||||||
|
console.error(e);
|
||||||
|
_this.runPrompt();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
DiscordLocation.prototype.onExit = function (listener) {
|
||||||
|
this.exitListener = listener;
|
||||||
|
};
|
||||||
|
DiscordLocation.prototype.exit = function () {
|
||||||
|
this.exitListener();
|
||||||
|
};
|
||||||
|
DiscordLocation.prototype.runCommand = function (cmd, args, done) {
|
||||||
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () { return (0, tslib_1.__generator)(this, function (_a) {
|
||||||
|
return [2];
|
||||||
|
}); });
|
||||||
|
};
|
||||||
|
return DiscordLocation;
|
||||||
|
}());
|
||||||
|
var ClientLocation = (function (_super) {
|
||||||
|
(0, tslib_1.__extends)(ClientLocation, _super);
|
||||||
|
function ClientLocation(client) {
|
||||||
|
var _a;
|
||||||
|
var _this = _super.call(this, (_a = client.user) === null || _a === void 0 ? void 0 : _a.username, null) || this;
|
||||||
|
_this.client = client;
|
||||||
|
return _this;
|
||||||
|
}
|
||||||
|
ClientLocation.prototype.runCommand = function (cmd, args, done) {
|
||||||
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
||||||
|
var _a, g, gloc;
|
||||||
|
return (0, tslib_1.__generator)(this, function (_b) {
|
||||||
|
switch (_b.label) {
|
||||||
|
case 0:
|
||||||
|
_a = cmd;
|
||||||
|
switch (_a) {
|
||||||
|
case 'ls': return [3, 1];
|
||||||
|
case 'dir': return [3, 1];
|
||||||
|
case 'guilds': return [3, 1];
|
||||||
|
case 'join': return [3, 2];
|
||||||
|
}
|
||||||
|
return [3, 4];
|
||||||
|
case 1:
|
||||||
|
this.client.guilds.cache.forEach(function (g) {
|
||||||
|
console.log(g.id + ": " + ((g === null || g === void 0 ? void 0 : g.name) || 'ERROR'));
|
||||||
|
});
|
||||||
|
done();
|
||||||
|
return [3, 5];
|
||||||
|
case 2: return [4, this.client.guilds.fetch(args)];
|
||||||
|
case 3:
|
||||||
|
g = _b.sent();
|
||||||
|
gloc = new GuildLocation(this, g);
|
||||||
|
gloc.onExit(done);
|
||||||
|
return [3, 5];
|
||||||
|
case 4:
|
||||||
|
console.log(cmd + " is invalid");
|
||||||
|
done();
|
||||||
|
_b.label = 5;
|
||||||
|
case 5: return [2];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
return ClientLocation;
|
||||||
|
}(DiscordLocation));
|
||||||
|
var GuildLocation = (function (_super) {
|
||||||
|
(0, tslib_1.__extends)(GuildLocation, _super);
|
||||||
|
function GuildLocation(parent, guild) {
|
||||||
|
var _this = _super.call(this, guild.name, parent) || this;
|
||||||
|
_this.guild = guild;
|
||||||
|
return _this;
|
||||||
|
}
|
||||||
|
GuildLocation.prototype.runCommand = function (cmd, args, done) {
|
||||||
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
||||||
|
var _a, c, gloc;
|
||||||
|
return (0, tslib_1.__generator)(this, function (_b) {
|
||||||
|
switch (_b.label) {
|
||||||
|
case 0:
|
||||||
|
_a = cmd;
|
||||||
|
switch (_a) {
|
||||||
|
case 'ls': return [3, 1];
|
||||||
|
case 'dir': return [3, 1];
|
||||||
|
case 'channels': return [3, 1];
|
||||||
|
case 'join': return [3, 2];
|
||||||
|
}
|
||||||
|
return [3, 4];
|
||||||
|
case 1:
|
||||||
|
this.guild.channels.cache.forEach(function (c) {
|
||||||
|
console.log(c.id + ": " + ((c === null || c === void 0 ? void 0 : c.name) || 'ERROR'));
|
||||||
|
});
|
||||||
|
done();
|
||||||
|
return [3, 5];
|
||||||
|
case 2: return [4, this.guild.channels.fetch(args)];
|
||||||
|
case 3:
|
||||||
|
c = _b.sent();
|
||||||
|
gloc = new TextChannelLocation(this, c);
|
||||||
|
gloc.onExit(done);
|
||||||
|
return [3, 5];
|
||||||
|
case 4:
|
||||||
|
console.log(cmd + " is invalid");
|
||||||
|
done();
|
||||||
|
_b.label = 5;
|
||||||
|
case 5: return [2];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
return GuildLocation;
|
||||||
|
}(DiscordLocation));
|
||||||
|
var TextChannelLocation = (function (_super) {
|
||||||
|
(0, tslib_1.__extends)(TextChannelLocation, _super);
|
||||||
|
function TextChannelLocation(parent, channel) {
|
||||||
|
var _this = _super.call(this, "" + channel.name, parent) || this;
|
||||||
|
_this.channel = channel;
|
||||||
|
return _this;
|
||||||
|
}
|
||||||
|
TextChannelLocation.prototype.runCommand = function (cmd, args, done) {
|
||||||
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
||||||
|
var _a;
|
||||||
|
return (0, tslib_1.__generator)(this, function (_b) {
|
||||||
|
switch (_b.label) {
|
||||||
|
case 0:
|
||||||
|
_a = cmd;
|
||||||
|
switch (_a) {
|
||||||
|
case 'say': return [3, 1];
|
||||||
|
}
|
||||||
|
return [3, 3];
|
||||||
|
case 1: return [4, this.channel.send(args)];
|
||||||
|
case 2:
|
||||||
|
_b.sent();
|
||||||
|
done();
|
||||||
|
return [3, 4];
|
||||||
|
case 3:
|
||||||
|
console.log(cmd + " is invalid");
|
||||||
|
done();
|
||||||
|
_b.label = 4;
|
||||||
|
case 4: return [2];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
return TextChannelLocation;
|
||||||
|
}(DiscordLocation));
|
||||||
|
var client = new discord_js_1.Client({ intents: discord_js_1.Intents.FLAGS.GUILDS });
|
||||||
|
client.login(settings.token);
|
||||||
|
client.on('ready', function () {
|
||||||
|
var clientRepl = new ClientLocation(client);
|
||||||
|
clientRepl.onExit(function () {
|
||||||
|
exitNicely();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
//# sourceMappingURL=index.js.map
|
||||||
1
target/index.js.map
Normal file
1
target/index.js.map
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
||||||
Reference in New Issue
Block a user