reciple 9.5.1 → 9.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +206 -206
- package/dist/classes/CLI.d.ts +3 -2
- package/dist/classes/CLI.js +7 -4
- package/dist/classes/CLI.js.map +1 -1
- package/dist/commands/modules.d.ts +9 -0
- package/dist/commands/modules.js +33 -0
- package/dist/commands/modules.js.map +1 -0
- package/dist/commands/shard.d.ts +2 -2
- package/dist/commands/shard.js +6 -5
- package/dist/commands/shard.js.map +1 -1
- package/dist/commands/start.js +7 -7
- package/dist/commands/start.js.map +1 -1
- package/package.json +6 -6
- package/static/config.mjs +86 -86
package/README.md
CHANGED
|
@@ -1,206 +1,206 @@
|
|
|
1
|
-
<h1 align="center">
|
|
2
|
-
<img src="https://i.imgur.com/h0ljJR5.png" width="50%">
|
|
3
|
-
<br>
|
|
4
|
-
</h1>
|
|
5
|
-
|
|
6
|
-
<h3 align="center">
|
|
7
|
-
<a href="https://discord.gg/2gyckrwK7b">
|
|
8
|
-
<img src="https://img.shields.io/discord/1032785824686817291?color=5865F2&logo=discord&logoColor=white">
|
|
9
|
-
</a>
|
|
10
|
-
<a href="https://npmjs.org/package/reciple">
|
|
11
|
-
<img src="https://img.shields.io/npm/v/reciple?label=npm">
|
|
12
|
-
</a>
|
|
13
|
-
<a href="https://github.com/thenorthsolution/Reciple/tree/main/packages/reciple">
|
|
14
|
-
<img src="https://img.shields.io/npm/dt/reciple?maxAge=3600">
|
|
15
|
-
</a>
|
|
16
|
-
<a href="https://www.codefactor.io/repository/github/thenorthsolution/reciple">
|
|
17
|
-
<img src="https://www.codefactor.io/repository/github/thenorthsolution/reciple/badge">
|
|
18
|
-
</a>
|
|
19
|
-
<br>
|
|
20
|
-
<div style="padding-top: 1rem">
|
|
21
|
-
<a href="https://discord.gg/2gyckrwK7b">
|
|
22
|
-
<img src="http://invidget.switchblade.xyz/2gyckrwK7b">
|
|
23
|
-
</a>
|
|
24
|
-
</div>
|
|
25
|
-
</h3>
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## Highlights
|
|
30
|
-
|
|
31
|
-
- [CLI based handler](#cli-usage)
|
|
32
|
-
- [Supports Context Menus](#context-menus)
|
|
33
|
-
- [Supports Prefix/Message commands](#message-commands)
|
|
34
|
-
- [Validate messsage command options](#validate-message-command-options)
|
|
35
|
-
- [Supports Slash Commands](#slash-commands)
|
|
36
|
-
- [Built-in command cooldowns](#command-cooldowns)
|
|
37
|
-
- Automatically register application commands
|
|
38
|
-
- [Highly configurable](#config)
|
|
39
|
-
|
|
40
|
-
## Using Templates
|
|
41
|
-
|
|
42
|
-
To use templates use the following command in your terminal:
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
npm create reciple@latest
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
After that configure the template you want to use. [Learn More](https://reciple.js.org/guide/getting-started/installation)
|
|
49
|
-
|
|
50
|
-
## CLI usage
|
|
51
|
-
|
|
52
|
-
```yml
|
|
53
|
-
Usage: reciple [options] [command]
|
|
54
|
-
|
|
55
|
-
Reciple is a Discord.js bot framework
|
|
56
|
-
|
|
57
|
-
Options:
|
|
58
|
-
-v, --version output the version number
|
|
59
|
-
--env <file> Set .env file path (default: [".env"])
|
|
60
|
-
--debug Enable debug mode (default: false)
|
|
61
|
-
--cwd <dir> Set current working directory (default: "./")
|
|
62
|
-
-h, --help display help for command
|
|
63
|
-
|
|
64
|
-
Commands:
|
|
65
|
-
shard [options] Starts in sharding mode
|
|
66
|
-
start [options] Starts the bot
|
|
67
|
-
help [command] display help for command
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## Message Commands
|
|
71
|
-
|
|
72
|
-
Reciple provides a built-in `MessageCommandBuilder` class that can be used for message command handler.
|
|
73
|
-
|
|
74
|
-
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:MessageCommandBuilder)
|
|
75
|
-
```js
|
|
76
|
-
import { MessageCommandBuilder } from 'reciple';
|
|
77
|
-
|
|
78
|
-
new MessageCommandBuilder()
|
|
79
|
-
.setName("command")
|
|
80
|
-
.setDescription("Your lil tiny description")
|
|
81
|
-
.addAliases("cmd", "cmd1")
|
|
82
|
-
.setExecute(command => command.message.reply("Hello!"));
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
### Validate Message Command Options
|
|
86
|
-
|
|
87
|
-
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:MessageCommandOptionBuilder)
|
|
88
|
-
```js
|
|
89
|
-
import { MessageCommandBuilder } from 'reciple';
|
|
90
|
-
|
|
91
|
-
new MessageCommandBuilder()
|
|
92
|
-
.setName("command")
|
|
93
|
-
.setDescription("Your lil tiny description")
|
|
94
|
-
.addAliases("cmd", "cmd1")
|
|
95
|
-
.setValidateOptions(true) // Validate options
|
|
96
|
-
.addOption(option => option
|
|
97
|
-
.setName("quantity")
|
|
98
|
-
.setDescription("Must be a number")
|
|
99
|
-
.setRequired(true) // A required option
|
|
100
|
-
.setValidate(({ value }) => !isNaN(Number(value))) // Validate value
|
|
101
|
-
.setResolveValue(({ value }) => Number(value)) // Resolves the option value
|
|
102
|
-
)
|
|
103
|
-
.setExecute(async command => {
|
|
104
|
-
/**
|
|
105
|
-
* @type {number}
|
|
106
|
-
*/
|
|
107
|
-
const quantity = await data.options.getOptionValue('number', { required: true, resolveValue: true });;
|
|
108
|
-
await command.message.reply("Quantity: " + quantity);
|
|
109
|
-
});
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
## Context Menus
|
|
113
|
-
|
|
114
|
-
Reciple provides extended `ContextMenuCommandBuilder` class that can be used for context menu command handler.
|
|
115
|
-
|
|
116
|
-
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:ContextMenuCommandBuilder)
|
|
117
|
-
```js
|
|
118
|
-
import { ApplicationCommandType } from 'discord.js';
|
|
119
|
-
import { ContextMenuCommandBuilder } from 'reciple';
|
|
120
|
-
|
|
121
|
-
new ContextMenuCommandBuilder()
|
|
122
|
-
.setName("Ban")
|
|
123
|
-
.setType(ApplicationCommandType.User)
|
|
124
|
-
.setExecute(async ({ interaction }) => {
|
|
125
|
-
if (!interaction.inCachedGuild()) return;
|
|
126
|
-
|
|
127
|
-
await interaction.deferReply();
|
|
128
|
-
await interaction.targetMember.ban();
|
|
129
|
-
await interaction.editReply(`Banned ${interaction.targetUser}`);
|
|
130
|
-
});
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
## Slash Commands
|
|
134
|
-
|
|
135
|
-
Reciple provides extended `SlashCommandBuilder` class that can be used for slash command handler.
|
|
136
|
-
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:SlashCommandBuilder)
|
|
137
|
-
|
|
138
|
-
```js
|
|
139
|
-
import { SlashCommandMenuBuilder } from 'reciple';
|
|
140
|
-
|
|
141
|
-
new SlashCommandBuilder()
|
|
142
|
-
.setName("ping")
|
|
143
|
-
.setDescription("Pong")
|
|
144
|
-
.setExecute(async ({ interaction }) => {
|
|
145
|
-
await interaction.reply(`Pong!`);
|
|
146
|
-
});
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
## Command Cooldowns
|
|
150
|
-
|
|
151
|
-
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:BaseCommandBuilder#setcooldown)
|
|
152
|
-
|
|
153
|
-
```js
|
|
154
|
-
import { ContextMenuCommandBuilder, MessageCommandBuilder, SlashCommandBuilder } from 'reciple';
|
|
155
|
-
import { ApplicationCommandType } from 'discord.js';
|
|
156
|
-
|
|
157
|
-
new ContextMenuCommandBuilder()
|
|
158
|
-
.setName("Context Menu")
|
|
159
|
-
.setType(ApplicationCommandType.Message)
|
|
160
|
-
.setCooldown(1000 * 5) // 5 seconds cooldown
|
|
161
|
-
.setExecute(async ({ interaction }) => {
|
|
162
|
-
await interaction.reply(`Hello!`);
|
|
163
|
-
});
|
|
164
|
-
|
|
165
|
-
new MessageCommandBuilder()
|
|
166
|
-
.setName("message-command")
|
|
167
|
-
.setDescription(`Your command`)
|
|
168
|
-
.setCooldown(1000 * 5) // 5 seconds cooldown
|
|
169
|
-
.setExecute(async ({ message }) => {
|
|
170
|
-
await message.reply(`Hello!`);
|
|
171
|
-
});
|
|
172
|
-
|
|
173
|
-
new SlashCommandBuilder()
|
|
174
|
-
.setName("slash-command")
|
|
175
|
-
.setDescription(`Your command`)
|
|
176
|
-
.setCooldown(1000 * 5) // 5 seconds cooldown
|
|
177
|
-
.setExecute(async ({ interaction }) => {
|
|
178
|
-
await interaction.reply(`Hello!`);
|
|
179
|
-
});
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
## Config
|
|
183
|
-
|
|
184
|
-
You can configure the bot in `reciple.mjs` usually located in the bot's root directory.
|
|
185
|
-
|
|
186
|
-
### Token
|
|
187
|
-
|
|
188
|
-
You can change the token in config.
|
|
189
|
-
|
|
190
|
-
```js
|
|
191
|
-
token: "Your Token" // Directly set token string
|
|
192
|
-
token: process.env.TOKEN // Use env variable
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
You can override the given token as cli flag
|
|
196
|
-
|
|
197
|
-
```bash
|
|
198
|
-
reciple --token "YOUR_TOKEN_HERE"
|
|
199
|
-
reciple --token "env:TOKEN_VARIABLE"
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
---
|
|
203
|
-
|
|
204
|
-
> ## Fun Fact
|
|
205
|
-
>
|
|
206
|
-
> The name reciple is from a minecraft bug. The bug was a misspelling of the word `recipe`. [View Mojang Bug Report](https://bugs.mojang.com/browse/MC-225837)
|
|
1
|
+
<h1 align="center">
|
|
2
|
+
<img src="https://i.imgur.com/h0ljJR5.png" width="50%">
|
|
3
|
+
<br>
|
|
4
|
+
</h1>
|
|
5
|
+
|
|
6
|
+
<h3 align="center">
|
|
7
|
+
<a href="https://discord.gg/2gyckrwK7b">
|
|
8
|
+
<img src="https://img.shields.io/discord/1032785824686817291?color=5865F2&logo=discord&logoColor=white">
|
|
9
|
+
</a>
|
|
10
|
+
<a href="https://npmjs.org/package/reciple">
|
|
11
|
+
<img src="https://img.shields.io/npm/v/reciple?label=npm">
|
|
12
|
+
</a>
|
|
13
|
+
<a href="https://github.com/thenorthsolution/Reciple/tree/main/packages/reciple">
|
|
14
|
+
<img src="https://img.shields.io/npm/dt/reciple?maxAge=3600">
|
|
15
|
+
</a>
|
|
16
|
+
<a href="https://www.codefactor.io/repository/github/thenorthsolution/reciple">
|
|
17
|
+
<img src="https://www.codefactor.io/repository/github/thenorthsolution/reciple/badge">
|
|
18
|
+
</a>
|
|
19
|
+
<br>
|
|
20
|
+
<div style="padding-top: 1rem">
|
|
21
|
+
<a href="https://discord.gg/2gyckrwK7b">
|
|
22
|
+
<img src="http://invidget.switchblade.xyz/2gyckrwK7b">
|
|
23
|
+
</a>
|
|
24
|
+
</div>
|
|
25
|
+
</h3>
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Highlights
|
|
30
|
+
|
|
31
|
+
- [CLI based handler](#cli-usage)
|
|
32
|
+
- [Supports Context Menus](#context-menus)
|
|
33
|
+
- [Supports Prefix/Message commands](#message-commands)
|
|
34
|
+
- [Validate messsage command options](#validate-message-command-options)
|
|
35
|
+
- [Supports Slash Commands](#slash-commands)
|
|
36
|
+
- [Built-in command cooldowns](#command-cooldowns)
|
|
37
|
+
- Automatically register application commands
|
|
38
|
+
- [Highly configurable](#config)
|
|
39
|
+
|
|
40
|
+
## Using Templates
|
|
41
|
+
|
|
42
|
+
To use templates use the following command in your terminal:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm create reciple@latest
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
After that configure the template you want to use. [Learn More](https://reciple.js.org/guide/getting-started/installation)
|
|
49
|
+
|
|
50
|
+
## CLI usage
|
|
51
|
+
|
|
52
|
+
```yml
|
|
53
|
+
Usage: reciple [options] [command]
|
|
54
|
+
|
|
55
|
+
Reciple is a Discord.js bot framework
|
|
56
|
+
|
|
57
|
+
Options:
|
|
58
|
+
-v, --version output the version number
|
|
59
|
+
--env <file> Set .env file path (default: [".env"])
|
|
60
|
+
--debug Enable debug mode (default: false)
|
|
61
|
+
--cwd <dir> Set current working directory (default: "./")
|
|
62
|
+
-h, --help display help for command
|
|
63
|
+
|
|
64
|
+
Commands:
|
|
65
|
+
shard [options] Starts in sharding mode
|
|
66
|
+
start [options] Starts the bot
|
|
67
|
+
help [command] display help for command
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Message Commands
|
|
71
|
+
|
|
72
|
+
Reciple provides a built-in `MessageCommandBuilder` class that can be used for message command handler.
|
|
73
|
+
|
|
74
|
+
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:MessageCommandBuilder)
|
|
75
|
+
```js
|
|
76
|
+
import { MessageCommandBuilder } from 'reciple';
|
|
77
|
+
|
|
78
|
+
new MessageCommandBuilder()
|
|
79
|
+
.setName("command")
|
|
80
|
+
.setDescription("Your lil tiny description")
|
|
81
|
+
.addAliases("cmd", "cmd1")
|
|
82
|
+
.setExecute(command => command.message.reply("Hello!"));
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Validate Message Command Options
|
|
86
|
+
|
|
87
|
+
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:MessageCommandOptionBuilder)
|
|
88
|
+
```js
|
|
89
|
+
import { MessageCommandBuilder } from 'reciple';
|
|
90
|
+
|
|
91
|
+
new MessageCommandBuilder()
|
|
92
|
+
.setName("command")
|
|
93
|
+
.setDescription("Your lil tiny description")
|
|
94
|
+
.addAliases("cmd", "cmd1")
|
|
95
|
+
.setValidateOptions(true) // Validate options
|
|
96
|
+
.addOption(option => option
|
|
97
|
+
.setName("quantity")
|
|
98
|
+
.setDescription("Must be a number")
|
|
99
|
+
.setRequired(true) // A required option
|
|
100
|
+
.setValidate(({ value }) => !isNaN(Number(value))) // Validate value
|
|
101
|
+
.setResolveValue(({ value }) => Number(value)) // Resolves the option value
|
|
102
|
+
)
|
|
103
|
+
.setExecute(async command => {
|
|
104
|
+
/**
|
|
105
|
+
* @type {number}
|
|
106
|
+
*/
|
|
107
|
+
const quantity = await data.options.getOptionValue('number', { required: true, resolveValue: true });;
|
|
108
|
+
await command.message.reply("Quantity: " + quantity);
|
|
109
|
+
});
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Context Menus
|
|
113
|
+
|
|
114
|
+
Reciple provides extended `ContextMenuCommandBuilder` class that can be used for context menu command handler.
|
|
115
|
+
|
|
116
|
+
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:ContextMenuCommandBuilder)
|
|
117
|
+
```js
|
|
118
|
+
import { ApplicationCommandType } from 'discord.js';
|
|
119
|
+
import { ContextMenuCommandBuilder } from 'reciple';
|
|
120
|
+
|
|
121
|
+
new ContextMenuCommandBuilder()
|
|
122
|
+
.setName("Ban")
|
|
123
|
+
.setType(ApplicationCommandType.User)
|
|
124
|
+
.setExecute(async ({ interaction }) => {
|
|
125
|
+
if (!interaction.inCachedGuild()) return;
|
|
126
|
+
|
|
127
|
+
await interaction.deferReply();
|
|
128
|
+
await interaction.targetMember.ban();
|
|
129
|
+
await interaction.editReply(`Banned ${interaction.targetUser}`);
|
|
130
|
+
});
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## Slash Commands
|
|
134
|
+
|
|
135
|
+
Reciple provides extended `SlashCommandBuilder` class that can be used for slash command handler.
|
|
136
|
+
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:SlashCommandBuilder)
|
|
137
|
+
|
|
138
|
+
```js
|
|
139
|
+
import { SlashCommandMenuBuilder } from 'reciple';
|
|
140
|
+
|
|
141
|
+
new SlashCommandBuilder()
|
|
142
|
+
.setName("ping")
|
|
143
|
+
.setDescription("Pong")
|
|
144
|
+
.setExecute(async ({ interaction }) => {
|
|
145
|
+
await interaction.reply(`Pong!`);
|
|
146
|
+
});
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## Command Cooldowns
|
|
150
|
+
|
|
151
|
+
[**Read Docs**](https://reciple.js.org/docs/core/main/classes:BaseCommandBuilder#setcooldown)
|
|
152
|
+
|
|
153
|
+
```js
|
|
154
|
+
import { ContextMenuCommandBuilder, MessageCommandBuilder, SlashCommandBuilder } from 'reciple';
|
|
155
|
+
import { ApplicationCommandType } from 'discord.js';
|
|
156
|
+
|
|
157
|
+
new ContextMenuCommandBuilder()
|
|
158
|
+
.setName("Context Menu")
|
|
159
|
+
.setType(ApplicationCommandType.Message)
|
|
160
|
+
.setCooldown(1000 * 5) // 5 seconds cooldown
|
|
161
|
+
.setExecute(async ({ interaction }) => {
|
|
162
|
+
await interaction.reply(`Hello!`);
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
new MessageCommandBuilder()
|
|
166
|
+
.setName("message-command")
|
|
167
|
+
.setDescription(`Your command`)
|
|
168
|
+
.setCooldown(1000 * 5) // 5 seconds cooldown
|
|
169
|
+
.setExecute(async ({ message }) => {
|
|
170
|
+
await message.reply(`Hello!`);
|
|
171
|
+
});
|
|
172
|
+
|
|
173
|
+
new SlashCommandBuilder()
|
|
174
|
+
.setName("slash-command")
|
|
175
|
+
.setDescription(`Your command`)
|
|
176
|
+
.setCooldown(1000 * 5) // 5 seconds cooldown
|
|
177
|
+
.setExecute(async ({ interaction }) => {
|
|
178
|
+
await interaction.reply(`Hello!`);
|
|
179
|
+
});
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
## Config
|
|
183
|
+
|
|
184
|
+
You can configure the bot in `reciple.mjs` usually located in the bot's root directory.
|
|
185
|
+
|
|
186
|
+
### Token
|
|
187
|
+
|
|
188
|
+
You can change the token in config.
|
|
189
|
+
|
|
190
|
+
```js
|
|
191
|
+
token: "Your Token" // Directly set token string
|
|
192
|
+
token: process.env.TOKEN // Use env variable
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
You can override the given token as cli flag
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
reciple --token "YOUR_TOKEN_HERE"
|
|
199
|
+
reciple --token "env:TOKEN_VARIABLE"
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
> ## Fun Fact
|
|
205
|
+
>
|
|
206
|
+
> The name reciple is from a minecraft bug. The bug was a misspelling of the word `recipe`. [View Mojang Bug Report](https://bugs.mojang.com/browse/MC-225837)
|
package/dist/classes/CLI.d.ts
CHANGED
|
@@ -16,9 +16,10 @@ export declare class CLI implements CLIOptions {
|
|
|
16
16
|
static root: string;
|
|
17
17
|
static commandsDir: string;
|
|
18
18
|
static get shardMode(): boolean;
|
|
19
|
-
static get shardLogsFolder(): string | null
|
|
19
|
+
static get shardLogsFolder(): string | null;
|
|
20
20
|
static get shardDeployCommands(): boolean | null;
|
|
21
21
|
static get threadId(): number | null;
|
|
22
|
+
static get shardEnv(): NodeJS.Dict<string> & NodeJS.ProcessEnv;
|
|
22
23
|
packageJSON: PackageJson;
|
|
23
24
|
processCwd: string;
|
|
24
25
|
commander: Command;
|
|
@@ -35,7 +36,7 @@ export declare class CLI implements CLIOptions {
|
|
|
35
36
|
get isCwdUpdated(): boolean;
|
|
36
37
|
get threadId(): number | null;
|
|
37
38
|
get shardMode(): boolean;
|
|
38
|
-
get shardLogsFolder(): string | null
|
|
39
|
+
get shardLogsFolder(): string | null;
|
|
39
40
|
get shardDeployCommands(): boolean | null;
|
|
40
41
|
get nodeEnv(): string | undefined;
|
|
41
42
|
constructor(options: CLIOptions);
|
package/dist/classes/CLI.js
CHANGED
|
@@ -4,7 +4,7 @@ import { isDebugging, kleur } from 'fallout-utility';
|
|
|
4
4
|
import { mkdir, readdir, stat } from 'node:fs/promises';
|
|
5
5
|
import path from 'node:path';
|
|
6
6
|
import { fileURLToPath } from 'node:url';
|
|
7
|
-
import { isMainThread, parentPort, threadId } from 'node:worker_threads';
|
|
7
|
+
import { isMainThread, parentPort, threadId, workerData } from 'node:worker_threads';
|
|
8
8
|
import { cli } from '../types/constants.js';
|
|
9
9
|
import { config as loadEnv } from 'dotenv';
|
|
10
10
|
import { execSync } from 'node:child_process';
|
|
@@ -12,17 +12,20 @@ export class CLI {
|
|
|
12
12
|
static root = path.join(path.dirname(fileURLToPath(import.meta.url)), '../../');
|
|
13
13
|
static commandsDir = path.join(CLI.root, './dist/commands');
|
|
14
14
|
static get shardMode() {
|
|
15
|
-
return
|
|
15
|
+
return 'SHARDS' in CLI.shardEnv && 'SHARD_COUNT' in CLI.shardEnv;
|
|
16
16
|
}
|
|
17
17
|
static get shardLogsFolder() {
|
|
18
|
-
return CLI.shardMode ?
|
|
18
|
+
return CLI.shardMode ? CLI.shardEnv.SHARDS_LOGS_FOLDER ?? null : null;
|
|
19
19
|
}
|
|
20
20
|
static get shardDeployCommands() {
|
|
21
|
-
return CLI.shardMode ? !!
|
|
21
|
+
return CLI.shardMode ? !!CLI.shardEnv.SHARDS_DEPLOY_COMMANDS : null;
|
|
22
22
|
}
|
|
23
23
|
static get threadId() {
|
|
24
24
|
return (!isMainThread && parentPort !== undefined ? threadId : undefined) ?? null;
|
|
25
25
|
}
|
|
26
|
+
static get shardEnv() {
|
|
27
|
+
return !isMainThread && 'SHARDING_MANAGER' in workerData ? workerData : process.env;
|
|
28
|
+
}
|
|
26
29
|
packageJSON;
|
|
27
30
|
processCwd;
|
|
28
31
|
commander;
|
package/dist/classes/CLI.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CLI.js","sourceRoot":"","sources":["../../src/classes/CLI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAe,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,iBAAiB,EAAoC,MAAM,gBAAgB,CAAC;AAExH,OAAO,EAAoC,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"CLI.js","sourceRoot":"","sources":["../../src/classes/CLI.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Command } from 'commander';
|
|
2
|
+
import type { CLI } from '../classes/CLI.js';
|
|
3
|
+
export interface CLIModulesFlags {
|
|
4
|
+
config: string;
|
|
5
|
+
json: boolean;
|
|
6
|
+
pretty: boolean;
|
|
7
|
+
}
|
|
8
|
+
declare const _default: (command: Command, cli: CLI) => Command;
|
|
9
|
+
export default _default;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Config } from '../classes/Config.js';
|
|
2
|
+
import { ModuleLoader } from '../classes/ModuleLoader.js';
|
|
3
|
+
import { kleur } from 'fallout-utility';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
export default (command, cli) => command
|
|
6
|
+
.command('modules')
|
|
7
|
+
.description('Lists all scannable modules')
|
|
8
|
+
.option('-c, --config <file>', 'Set the config file path', 'reciple.mjs')
|
|
9
|
+
.option('--json', 'Output JSON', false)
|
|
10
|
+
.option('--pretty', 'Pretty print JSON', false)
|
|
11
|
+
.action(async () => {
|
|
12
|
+
const flags = cli.getFlags('modules', true);
|
|
13
|
+
const config = await Config.readConfigFile({ path: flags.config, createIfNotExists: false }).then(config => config?.config);
|
|
14
|
+
const paths = config?.modules && await ModuleLoader.getModulePaths({
|
|
15
|
+
config: config?.modules,
|
|
16
|
+
cwd: cli.cwd,
|
|
17
|
+
filter: ModuleLoader.defaultModulePathsFilter
|
|
18
|
+
}) || [];
|
|
19
|
+
if (flags.json) {
|
|
20
|
+
process.stdout.write(JSON.stringify(paths, null, flags.pretty ? 2 : undefined));
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const relativePaths = paths.map(p => path.relative(cli.cwd, p));
|
|
24
|
+
console.log(relativePaths
|
|
25
|
+
.map(p => {
|
|
26
|
+
const dirs = p.split(path.sep);
|
|
27
|
+
const name = dirs.pop();
|
|
28
|
+
dirs.unshift('.');
|
|
29
|
+
return `${dirs.map(d => kleur.cyan(d)).join(kleur.dim(' > '))}${kleur.dim(` > `)}${kleur.green(name || '')}`;
|
|
30
|
+
})
|
|
31
|
+
.join('\n'));
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=modules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/commands/modules.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAQ7B,eAAe,CAAC,OAAgB,EAAE,GAAQ,EAAE,EAAE,CAAC,OAAO;KACjD,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,qBAAqB,EAAE,0BAA0B,EAAE,aAAa,CAAC;KACxE,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC;KACtC,MAAM,CAAC,UAAU,EAAE,mBAAmB,EAAE,KAAK,CAAC;KAC9C,MAAM,CAAC,KAAK,IAAI,EAAE;IACf,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAkB,SAAS,EAAE,IAAI,CAAE,CAAC;IAC9D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE5H,MAAM,KAAK,GAAG,MAAM,EAAE,OAAO,IAAI,MAAM,YAAY,CAAC,cAAc,CAAC;QAC/D,MAAM,EAAE,MAAM,EAAE,OAAO;QACvB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,MAAM,EAAE,YAAY,CAAC,wBAAwB;KAChD,CAAC,IAAI,EAAE,CAAC;IAET,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAChF,OAAO;IACX,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhE,OAAO,CAAC,GAAG,CACP,aAAa;SACR,GAAG,CAAC,CAAC,CAAC,EAAE;QACL,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAExB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAEjB,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;IACjH,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAClB,CAAC;AACN,CAAC,CAAC,CAAA"}
|
package/dist/commands/shard.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Command } from 'commander';
|
|
2
|
-
import { CLI } from '../classes/CLI.js';
|
|
3
1
|
import type { CLIStartFlags } from './start.js';
|
|
4
2
|
import { ShardingManager } from 'discord.js';
|
|
3
|
+
import type { Command } from 'commander';
|
|
4
|
+
import { CLI } from '../classes/CLI.js';
|
|
5
5
|
export interface CLIShardFlags extends CLIStartFlags {
|
|
6
6
|
}
|
|
7
7
|
declare const _default: (command: Command, cli: CLI) => Command;
|
package/dist/commands/shard.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { CLI } from '../classes/CLI.js';
|
|
2
|
-
import { Config } from '../classes/Config.js';
|
|
3
1
|
import { FileWriteStreamMode, Logger } from 'prtyprnt';
|
|
4
|
-
import path from 'path';
|
|
5
|
-
import { ShardingManager } from 'discord.js';
|
|
6
2
|
import { resolveEnvProtocol } from '@reciple/utils';
|
|
3
|
+
import { Config } from '../classes/Config.js';
|
|
4
|
+
import { ShardingManager } from 'discord.js';
|
|
7
5
|
import { EventHandlers } from '../index.js';
|
|
8
|
-
import { createReadStream } from 'fs';
|
|
6
|
+
import { createReadStream } from 'node:fs';
|
|
9
7
|
import { kleur } from 'fallout-utility';
|
|
8
|
+
import { CLI } from '../classes/CLI.js';
|
|
9
|
+
import path from 'node:path';
|
|
10
10
|
export default (command, cli) => command
|
|
11
11
|
.command('shard')
|
|
12
12
|
.description('Starts in sharding mode')
|
|
@@ -32,6 +32,7 @@ export default (command, cli) => command
|
|
|
32
32
|
let logFile = null;
|
|
33
33
|
let logsFolder = null;
|
|
34
34
|
process.env.SHARDS_DEPLOY_COMMANDS = '1';
|
|
35
|
+
process.env.SHARDING_MANAGER = '1';
|
|
35
36
|
if (!(config.logger instanceof Logger) && config.logger?.logToFile.enabled) {
|
|
36
37
|
logsFolder = path.resolve(path.join(config.logger?.logToFile?.logsFolder, 'sharder', process.pid.toString()));
|
|
37
38
|
logFile = path.join(logsFolder, config.logger?.logToFile?.file);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shard.js","sourceRoot":"","sources":["../../src/commands/shard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"shard.js","sourceRoot":"","sources":["../../src/commands/shard.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/start.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { CLI } from '../classes/CLI.js';
|
|
2
|
-
import { Config } from '../classes/Config.js';
|
|
3
|
-
import { Logger } from 'prtyprnt';
|
|
4
|
-
import { resolveEnvProtocol } from '@reciple/utils';
|
|
5
|
-
import semver from 'semver';
|
|
6
1
|
import { cliBuildVersion, cliVersion } from '../types/constants.js';
|
|
7
|
-
import { RecipleClient } from '../index.js';
|
|
8
|
-
import { buildVersion } from '@reciple/core';
|
|
9
2
|
import { EventHandlers } from '../classes/EventHandlers.js';
|
|
10
3
|
import { ModuleLoader } from '../classes/ModuleLoader.js';
|
|
4
|
+
import { resolveEnvProtocol } from '@reciple/utils';
|
|
5
|
+
import { Config } from '../classes/Config.js';
|
|
6
|
+
import { buildVersion } from '@reciple/core';
|
|
7
|
+
import { RecipleClient } from '../index.js';
|
|
11
8
|
import { kleur } from 'fallout-utility';
|
|
9
|
+
import { CLI } from '../classes/CLI.js';
|
|
10
|
+
import { Logger } from 'prtyprnt';
|
|
11
|
+
import semver from 'semver';
|
|
12
12
|
export default (command, cli) => command
|
|
13
13
|
.command('start', { isDefault: true })
|
|
14
14
|
.description('Starts the bot')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAQ5B,eAAe,CAAC,OAAgB,EAAE,GAAQ,EAAE,EAAE,CAAC,OAAO;KACjD,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;KACrC,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,4BAA4B,EAAE,4BAA4B,CAAC;KAClE,MAAM,CAAC,qBAAqB,EAAE,0BAA0B,EAAE,aAAa,CAAC;KACxE,kBAAkB,CAAC,IAAI,CAAC;KACxB,MAAM,CAAC,KAAK,IAAI,EAAE;IACf,IAAI,MAAM,GAAgB,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC;IAE7C,MAAM,kBAAkB,GAAG,CAAC,GAAQ,EAAE,EAAE;QACpC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;IACvD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAElD,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAgB,OAAO,EAAE,IAAI,CAAE,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE5H,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,EAAE,KAAK,CAAC,6BAA6B,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QACxF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,GAAG,MAAM,CAAC,MAAM,YAAY,MAAM;QACpC,CAAC,CAAC,MAAM,CAAC,MAAM;QACf,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO;YACpB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI;YACxH,CAAC,CAAC,IAAI,CAAC;IAEf,MAAM,EAAE,GAAG,CAAC,YAAY,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;IAEzK,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAC3B,MAAM,CAAC,0BAA0B,GAAG,EAAE,GAAG,MAAM,CAAC,0BAA0B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACjG,CAAC;IAED,IAAI,GAAG,CAAC,SAAS;QAAE,MAAM,GAAG,CAAC,eAAe,EAAE,CAAC;IAE/C,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAElF,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAClE,MAAM,EAAE,KAAK,CAAC,oDAAoD,UAAU,EAAE,CAAC,CAAC;QAChF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IAEzC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,IAAI,MAAM;QAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IAEnC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEzB,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;QAC1B,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;YACtC,KAAK,EAAE,MAAM,YAAY,CAAC,cAAc,CAAC;gBACrC,MAAM,EAAE,MAAM,CAAC,OAAO;gBACtB,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,MAAM,EAAE,YAAY,CAAC,wBAAwB;aAChD,CAAC;YACF,mBAAmB,EAAE,MAAM,CAAC,OAAO,EAAE,yBAAyB;SACjE,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnE,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM;QAAE,MAAM,EAAE,KAAK,CAAC,mBAAmB,SAAS,CAAC,MAAM,CAAC,MAAM,oBAAoB,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEpK,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YAAE,OAAO;QAE9B,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAElC,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,CAAC;QAChE,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;QAEjE,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjE,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM;YAAE,MAAM,EAAE,KAAK,CAAC,kBAAkB,QAAQ,CAAC,MAAM,CAAC,MAAM,oBAAoB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAEhK,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAEvB,aAAa,CAAC,eAAe,CAAC,CAAC,MAAsB,EAAE,EAAE,CAAC,YAAY,CAAC,6BAA6B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACtH,aAAa,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAEhD,IAAI,MAAM,CAAC,0BAA0B,EAAE,OAAO,KAAK,KAAK;YAAE,MAAM,MAAM,CAAC,QAAQ,CAAC,2BAA2B,EAAE,CAAC;QAE9G,MAAM,EAAE,IAAI,CAAC,gBAAgB,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhH,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,0BAA0B,CAAC,CAAC;QAC1F,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,qBAAqB,CAAC,CAAC;QACjF,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,mBAAmB,CAAC,CAAC;QAC7E,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,iCAAiC,CAAC,CAAC;QAC3F,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,yBAAyB,CAAC,CAAC;QAE3E,IAAI,CAAC,MAAM,CAAC,eAAe;YAAE,GAAG,CAAC,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IAE/B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Reciple is a Discord.js bot framework",
|
|
4
4
|
"homepage": "https://reciple.js.org/docs/reciple",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
|
-
"version": "9.
|
|
6
|
+
"version": "9.7.0",
|
|
7
7
|
"module": "./dist/index.js",
|
|
8
8
|
"types": "./dist/index.d.ts",
|
|
9
9
|
"bin": "./dist/bin.js",
|
|
@@ -42,28 +42,28 @@
|
|
|
42
42
|
"README.md"
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@reciple/utils": "^9.
|
|
45
|
+
"@reciple/utils": "^9.5.0",
|
|
46
46
|
"ansi-regex": "^6.0.1",
|
|
47
47
|
"chokidar": "^3.6.0",
|
|
48
48
|
"commander": "^12.1.0",
|
|
49
49
|
"dotenv": "^16.4.5",
|
|
50
50
|
"fallout-utility": "^2.9.1",
|
|
51
51
|
"globby": "^14.0.2",
|
|
52
|
-
"micromatch": "^4.0.
|
|
52
|
+
"micromatch": "^4.0.8",
|
|
53
53
|
"nodemon": "^3.1.4",
|
|
54
54
|
"prompts": "^2.4.2",
|
|
55
55
|
"prtyprnt": "^1.1.0",
|
|
56
56
|
"semver": "^7.6.3"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
|
-
"@reciple/core": "^9.
|
|
59
|
+
"@reciple/core": "^9.7.0",
|
|
60
60
|
"@types/micromatch": "^4.0.9",
|
|
61
61
|
"@types/semver": "^7.5.8",
|
|
62
|
-
"discord.js": "^14.
|
|
62
|
+
"discord.js": "^14.16.1"
|
|
63
63
|
},
|
|
64
64
|
"peerDependencies": {
|
|
65
65
|
"@reciple/core": "^9 || ^9.0.0-dev",
|
|
66
66
|
"discord.js": "^14.15.0"
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "90fe23b2c0b87d78e94ef1fd745e46299917da73"
|
|
69
69
|
}
|
package/static/config.mjs
CHANGED
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
// @ts-check
|
|
2
|
-
import { CooldownPrecondition, CommandPermissionsPrecondition } from 'reciple';
|
|
3
|
-
import { IntentsBitField } from 'discord.js';
|
|
4
|
-
import { cliVersion } from 'reciple';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @satisfies {import('reciple').RecipleConfig}
|
|
8
|
-
*/
|
|
9
|
-
export const config = {
|
|
10
|
-
token: process.env.TOKEN ?? '',
|
|
11
|
-
commands: {
|
|
12
|
-
contextMenuCommand: {
|
|
13
|
-
enabled: true,
|
|
14
|
-
enableCooldown: true,
|
|
15
|
-
acceptRepliedInteractions: false,
|
|
16
|
-
registerCommands: {
|
|
17
|
-
registerGlobally: true,
|
|
18
|
-
registerToGuilds: []
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
messageCommand: {
|
|
22
|
-
enabled: true,
|
|
23
|
-
enableCooldown: true,
|
|
24
|
-
commandArgumentSeparator: ' ',
|
|
25
|
-
prefix: '!'
|
|
26
|
-
},
|
|
27
|
-
slashCommand: {
|
|
28
|
-
enabled: true,
|
|
29
|
-
enableCooldown: true,
|
|
30
|
-
acceptRepliedInteractions: false,
|
|
31
|
-
registerCommands: {
|
|
32
|
-
registerGlobally: true,
|
|
33
|
-
registerToGuilds: []
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
applicationCommandRegister: {
|
|
38
|
-
enabled: true,
|
|
39
|
-
allowRegisterGlobally: true,
|
|
40
|
-
allowRegisterToGuilds: true,
|
|
41
|
-
registerEmptyCommands: true,
|
|
42
|
-
registerToGuilds: []
|
|
43
|
-
},
|
|
44
|
-
client: {
|
|
45
|
-
intents: [
|
|
46
|
-
IntentsBitField.Flags.Guilds,
|
|
47
|
-
IntentsBitField.Flags.GuildMembers,
|
|
48
|
-
IntentsBitField.Flags.GuildMessages,
|
|
49
|
-
IntentsBitField.Flags.MessageContent,
|
|
50
|
-
]
|
|
51
|
-
},
|
|
52
|
-
logger: {
|
|
53
|
-
enabled: true,
|
|
54
|
-
debugmode: null,
|
|
55
|
-
coloredMessages: true,
|
|
56
|
-
disableLogPrefix: false,
|
|
57
|
-
logToFile: {
|
|
58
|
-
enabled: true,
|
|
59
|
-
logsFolder: './logs',
|
|
60
|
-
file: 'latest.log'
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
modules: {
|
|
64
|
-
dirs: ['./modules', './modules/*', './modules/*/*'],
|
|
65
|
-
exclude: ['halts', 'preconditions', '_*'],
|
|
66
|
-
filter: file => true,
|
|
67
|
-
disableModuleVersionCheck: false
|
|
68
|
-
},
|
|
69
|
-
preconditions: [
|
|
70
|
-
new CooldownPrecondition(),
|
|
71
|
-
new CommandPermissionsPrecondition()
|
|
72
|
-
],
|
|
73
|
-
commandHalts: [],
|
|
74
|
-
cooldownSweeperOptions: {
|
|
75
|
-
timer: 1000 * 60 * 60
|
|
76
|
-
},
|
|
77
|
-
checkForUpdates: true,
|
|
78
|
-
version: `^${cliVersion}`
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* @satisfies {import('reciple').RecipleConfigJS['sharding']}
|
|
83
|
-
*/
|
|
84
|
-
export const sharding = {
|
|
85
|
-
mode: 'process'
|
|
86
|
-
}
|
|
1
|
+
// @ts-check
|
|
2
|
+
import { CooldownPrecondition, CommandPermissionsPrecondition } from 'reciple';
|
|
3
|
+
import { IntentsBitField } from 'discord.js';
|
|
4
|
+
import { cliVersion } from 'reciple';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @satisfies {import('reciple').RecipleConfig}
|
|
8
|
+
*/
|
|
9
|
+
export const config = {
|
|
10
|
+
token: process.env.TOKEN ?? '',
|
|
11
|
+
commands: {
|
|
12
|
+
contextMenuCommand: {
|
|
13
|
+
enabled: true,
|
|
14
|
+
enableCooldown: true,
|
|
15
|
+
acceptRepliedInteractions: false,
|
|
16
|
+
registerCommands: {
|
|
17
|
+
registerGlobally: true,
|
|
18
|
+
registerToGuilds: []
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
messageCommand: {
|
|
22
|
+
enabled: true,
|
|
23
|
+
enableCooldown: true,
|
|
24
|
+
commandArgumentSeparator: ' ',
|
|
25
|
+
prefix: '!'
|
|
26
|
+
},
|
|
27
|
+
slashCommand: {
|
|
28
|
+
enabled: true,
|
|
29
|
+
enableCooldown: true,
|
|
30
|
+
acceptRepliedInteractions: false,
|
|
31
|
+
registerCommands: {
|
|
32
|
+
registerGlobally: true,
|
|
33
|
+
registerToGuilds: []
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
applicationCommandRegister: {
|
|
38
|
+
enabled: true,
|
|
39
|
+
allowRegisterGlobally: true,
|
|
40
|
+
allowRegisterToGuilds: true,
|
|
41
|
+
registerEmptyCommands: true,
|
|
42
|
+
registerToGuilds: []
|
|
43
|
+
},
|
|
44
|
+
client: {
|
|
45
|
+
intents: [
|
|
46
|
+
IntentsBitField.Flags.Guilds,
|
|
47
|
+
IntentsBitField.Flags.GuildMembers,
|
|
48
|
+
IntentsBitField.Flags.GuildMessages,
|
|
49
|
+
IntentsBitField.Flags.MessageContent,
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
logger: {
|
|
53
|
+
enabled: true,
|
|
54
|
+
debugmode: null,
|
|
55
|
+
coloredMessages: true,
|
|
56
|
+
disableLogPrefix: false,
|
|
57
|
+
logToFile: {
|
|
58
|
+
enabled: true,
|
|
59
|
+
logsFolder: './logs',
|
|
60
|
+
file: 'latest.log'
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
modules: {
|
|
64
|
+
dirs: ['./modules', './modules/*', './modules/*/*'],
|
|
65
|
+
exclude: ['halts', 'preconditions', '_*'],
|
|
66
|
+
filter: file => true,
|
|
67
|
+
disableModuleVersionCheck: false
|
|
68
|
+
},
|
|
69
|
+
preconditions: [
|
|
70
|
+
new CooldownPrecondition(),
|
|
71
|
+
new CommandPermissionsPrecondition()
|
|
72
|
+
],
|
|
73
|
+
commandHalts: [],
|
|
74
|
+
cooldownSweeperOptions: {
|
|
75
|
+
timer: 1000 * 60 * 60
|
|
76
|
+
},
|
|
77
|
+
checkForUpdates: true,
|
|
78
|
+
version: `^${cliVersion}`
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* @satisfies {import('reciple').RecipleConfigJS['sharding']}
|
|
83
|
+
*/
|
|
84
|
+
export const sharding = {
|
|
85
|
+
mode: 'process'
|
|
86
|
+
}
|