reciple 7.9.11 → 8.0.0-dev.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.
Files changed (46) hide show
  1. package/README.md +3 -3
  2. package/{bin → dist}/bin.mjs +36 -64
  3. package/dist/bin.mjs.map +1 -0
  4. package/dist/classes/Config.d.ts +30 -0
  5. package/dist/classes/Config.js +46 -0
  6. package/dist/classes/Config.js.map +1 -0
  7. package/{bin → dist}/exports.d.ts +0 -2
  8. package/{bin → dist}/exports.js +0 -2
  9. package/{bin → dist}/exports.js.map +1 -1
  10. package/dist/index.d.ts +7 -0
  11. package/{bin → dist}/index.js +2 -8
  12. package/dist/index.js.map +1 -0
  13. package/{bin → dist}/utils/cli.d.ts +1 -13
  14. package/{bin → dist}/utils/cli.js +4 -18
  15. package/dist/utils/cli.js.map +1 -0
  16. package/dist/utils/logger.d.ts +6 -0
  17. package/{bin → dist}/utils/logger.js +16 -18
  18. package/dist/utils/logger.js.map +1 -0
  19. package/dist/utils/modules.d.ts +3 -0
  20. package/{bin → dist}/utils/modules.js +8 -14
  21. package/dist/utils/modules.js.map +1 -0
  22. package/package.json +20 -16
  23. package/static/config.d.mts +3 -0
  24. package/static/config.mjs +78 -0
  25. package/bin/bin.mjs.map +0 -1
  26. package/bin/classes/Config.d.ts +0 -38
  27. package/bin/classes/Config.js +0 -102
  28. package/bin/classes/Config.js.map +0 -1
  29. package/bin/index.d.ts +0 -13
  30. package/bin/index.js.map +0 -1
  31. package/bin/utils/cli.js.map +0 -1
  32. package/bin/utils/getConfigExtensions.d.ts +0 -4
  33. package/bin/utils/getConfigExtensions.js +0 -36
  34. package/bin/utils/getConfigExtensions.js.map +0 -1
  35. package/bin/utils/logger.d.ts +0 -7
  36. package/bin/utils/logger.js.map +0 -1
  37. package/bin/utils/modules.d.ts +0 -4
  38. package/bin/utils/modules.js.map +0 -1
  39. package/bin/utils/parseEnvString.d.ts +0 -1
  40. package/bin/utils/parseEnvString.js +0 -21
  41. package/bin/utils/parseEnvString.js.map +0 -1
  42. package/static/config.yml +0 -116
  43. /package/{bin → dist}/bin.d.mts +0 -0
  44. /package/{bin → dist}/esm.d.mts +0 -0
  45. /package/{bin → dist}/esm.mjs +0 -0
  46. /package/{bin → dist}/esm.mjs.map +0 -0
package/README.md CHANGED
@@ -50,7 +50,7 @@ npm i reciple discord.js
50
50
  You can initialize the bot to the current directory with the following command in your terminal:
51
51
 
52
52
  ```bash
53
- npx reciple
53
+ reciple
54
54
  ```
55
55
 
56
56
  It will ask you to continue if the directory is not empty. Type `y` to continue. After the bot has been initialized, it will ask you for your bot token.
@@ -198,13 +198,13 @@ token: "env:TOKEN_VARIABLE"
198
198
  You can override the given token using your terminal
199
199
 
200
200
  ```bash
201
- npx reciple --token "YOUR_TOKEN_HERE"
201
+ reciple --token "YOUR_TOKEN_HERE"
202
202
  ```
203
203
 
204
204
  Use env variable
205
205
 
206
206
  ```bash
207
- npx reciple --token "env:TOKEN_VARIABLE"
207
+ reciple --token "env:TOKEN_VARIABLE"
208
208
  ```
209
209
 
210
210
  ---
@@ -1,40 +1,25 @@
1
1
  #!/usr/bin/env node
2
- import { ContextMenuCommandBuilder, MessageCommandBuilder, SlashCommandBuilder, realVersion, version } from '@reciple/client';
2
+ import { ContextMenuCommandBuilder, MessageCommandBuilder, SlashCommandBuilder, buildVersion, version } from '@reciple/core';
3
+ import { createLogger, addEventListenersToClient } from './utils/logger.js';
3
4
  import { setTimeout as setTimeoutAsync } from 'node:timers/promises';
4
- import { createLogger, eventLogger } from './utils/logger.js';
5
- import { getJsConfig, getModules } from './utils/modules.js';
6
5
  import { checkLatestUpdate } from '@reciple/update-checker';
7
6
  import { command, cli, cliVersion } from './utils/cli.js';
8
- import { mkdir, readdir } from 'node:fs/promises';
9
- import { Config } from './classes/Config.js';
10
- import { RecipleClient } from './index.js';
7
+ import { RecipleClient, findModules } from './index.js';
8
+ import { ConfigReader } from './classes/Config.js';
9
+ import { config as loadEnv } from 'dotenv';
10
+ import { mkdir } from 'node:fs/promises';
11
11
  import { kleur } from 'fallout-utility';
12
12
  import { existsSync } from 'node:fs';
13
- import micromatch from 'micromatch';
14
- import prompts from 'prompts';
15
13
  import path from 'node:path';
16
14
  import semver from 'semver';
17
15
  command.parse();
16
+ if (!existsSync(cli.cwd))
17
+ await mkdir(cli.cwd, { recursive: true });
18
18
  process.chdir(cli.cwd);
19
- const allowedFiles = ['node_modules', 'reciple.yml', 'package.json', '.*'];
20
- let configPaths = cli.options?.config?.map(c => path.isAbsolute(c) ? path.resolve(c) : path.join(process.cwd(), c));
21
- configPaths = !configPaths?.length ? [path.join(process.cwd(), 'reciple.yml')] : configPaths;
22
- const mainConfigPath = configPaths.shift();
23
- if (!existsSync(process.cwd()))
24
- await mkdir(process.cwd(), { recursive: true });
25
- if ((await readdir(process.cwd())).filter(f => !micromatch.isMatch(f, allowedFiles)).length && !existsSync(mainConfigPath) && !cli.options.yes) {
26
- const confirm = await prompts({
27
- initial: false,
28
- message: `Would you like to initialize your Reciple app ${process.cwd() !== process.cwd() ? 'in your chosen directory' : 'here'}?`,
29
- name: 'confirm',
30
- type: 'confirm'
31
- });
32
- if (!confirm.confirm)
33
- process.exit(0);
34
- }
35
- const configParser = await (new Config(mainConfigPath, configPaths)).parseConfig();
36
- const config = configParser.getConfig();
37
- const logger = config.logger?.enabled ? await createLogger(config.logger) : undefined;
19
+ loadEnv({ path: cli.options.env });
20
+ const configPath = path.resolve(cli.options.config);
21
+ const config = await ConfigReader.readConfigJS(configPath).then(c => c.config);
22
+ const logger = config.logger?.enabled ? await createLogger(config.logger) : null;
38
23
  if (cli.options.setup)
39
24
  process.exit(0);
40
25
  if (cli.options.shardmode)
@@ -43,36 +28,26 @@ const processErrorHandler = (err) => logger?.error(err);
43
28
  process.once('uncaughtException', processErrorHandler);
44
29
  process.once('unhandledRejection', processErrorHandler);
45
30
  process.on('warning', warn => logger?.warn(warn));
46
- /**
47
- * !! BREAKING !!
48
- * TODO: use reciple cli version instead of client version when checking
49
- */
50
31
  if (!semver.satisfies(version, config.version)) {
51
32
  logger?.error(`Your config version doesn't support Reciple client v${version}`);
52
33
  process.exit(1);
53
34
  }
54
- logger?.info(`Starting Reciple client v${realVersion} - ${new Date()}`);
55
- const client = new RecipleClient({
56
- recipleOptions: config,
57
- ...config.client,
58
- logger,
59
- makeCache: cli.options.cacheConfig ? await getJsConfig(cli.options.cacheConfig) : undefined,
60
- sweepers: cli.options.sweeperConfig ? await getJsConfig(cli.options.sweeperConfig) : undefined,
61
- });
62
- eventLogger(client);
35
+ logger?.info(`Starting Reciple client v${buildVersion} - ${new Date()}`);
36
+ const client = new RecipleClient(config);
37
+ client.setLogger(logger);
38
+ addEventListenersToClient(client);
63
39
  const moduleFilesFilter = (file) => file.endsWith('.js') || file.endsWith('.cjs') || file.endsWith('.mjs');
64
- const modules = await client.modules.resolveModuleFiles(await getModules(config.modules, (f) => moduleFilesFilter(f)), config.modules.disableModuleVersionCheck);
65
- const startedModules = await client.modules.startModules({
66
- modules,
67
- addToModulesCollection: true
40
+ const modules = await client.modules.resolveModuleFiles({
41
+ files: await findModules(config.modules, (f) => moduleFilesFilter(f)),
42
+ disableVersionCheck: config.modules.disableModuleVersionCheck
68
43
  });
44
+ const startedModules = await client.modules.startModules();
69
45
  const failedToStartModules = modules.length - startedModules.length;
70
- logger?.debug(`Failed to start (${failedToStartModules}) modules.`);
46
+ if (failedToStartModules > 0)
47
+ logger?.error(`Failed to start (${failedToStartModules}) modules.`);
71
48
  client.once('ready', async () => {
72
- if (!client.isReady()) {
73
- logger?.error(`Client did not start properly!`);
74
- return process.exit(1);
75
- }
49
+ if (!client.isReady())
50
+ return;
76
51
  logger?.debug(`Client is ready!`);
77
52
  process.removeListener('uncaughtException', processErrorHandler);
78
53
  process.removeListener('unhandledRejection', processErrorHandler);
@@ -86,12 +61,10 @@ client.once('ready', async () => {
86
61
  ` ${kleur.bold().cyan('npm i reciple@' + data.updatedVersion)}`) : null)
87
62
  .catch(() => null);
88
63
  }
89
- const loadedModules = await client.modules.loadModules({
90
- modules: [...client.modules.cache.values()],
91
- resolveCommands: true
92
- });
93
- const unloaded = client.modules.cache.sweep(m => !loadedModules.some(s => s.id == m.id));
94
- logger?.debug(`Failed to load (${unloaded}) modules.`);
64
+ const loadedModules = await client.modules.loadModules({ cacheCommands: true });
65
+ const failedToLoadModules = startedModules.length - loadedModules.length;
66
+ if (failedToLoadModules > 0)
67
+ logger?.debug(`Failed to load (${failedToLoadModules}) modules.`);
95
68
  let stopping = false;
96
69
  const unloadModulesAndStopProcess = async (signal) => {
97
70
  if (stopping)
@@ -100,11 +73,10 @@ client.once('ready', async () => {
100
73
  stopping = true;
101
74
  await client.modules.unloadModules({
102
75
  reason: 'ProcessExit',
103
- modules: [...client.modules.cache.values()],
104
- removeCommandsFromClient: false,
105
- removeFromModulesCollection: true
76
+ removeFromCache: true,
77
+ removeModuleCommands: true
106
78
  });
107
- client.destroy();
79
+ await client.destroy();
108
80
  const signalString = signal === 'SIGINT' ? 'keyboard interrupt' : signal === 'SIGTERM' ? 'terminate' : String(signal);
109
81
  logger?.warn(`Process exited: ${kleur.yellow(signalString)}`);
110
82
  logger?.closeWriteStream();
@@ -122,22 +94,22 @@ client.once('ready', async () => {
122
94
  process.once('SIGUSR2', unloadModulesAndStopProcess);
123
95
  client.on('interactionCreate', interaction => {
124
96
  if (interaction.isContextMenuCommand()) {
125
- ContextMenuCommandBuilder.execute(client, interaction);
97
+ ContextMenuCommandBuilder.execute({ client, interaction });
126
98
  }
127
99
  else if (interaction.isChatInputCommand()) {
128
- SlashCommandBuilder.execute(client, interaction);
100
+ SlashCommandBuilder.execute({ client, interaction });
129
101
  }
130
102
  });
131
103
  client.on('messageCreate', message => {
132
- MessageCommandBuilder.execute(client, message);
104
+ MessageCommandBuilder.execute({ client, message });
133
105
  });
134
106
  await client.commands.registerApplicationCommands();
135
107
  logger?.warn(`Logged in as ${kleur.bold().cyan(client.user.tag)} ${kleur.magenta('(' + client.user.id + ')')}`);
136
108
  logger?.log(`Loaded ${client.commands.contextMenuCommands.size} context menu command(s)`);
137
109
  logger?.log(`Loaded ${client.commands.messageCommands.size} message command(s)`);
138
110
  logger?.log(`Loaded ${client.commands.slashCommands.size} slash command(s)`);
111
+ logger?.log(`Loaded ${client.commands.preconditions.size} precondition(s)`);
139
112
  });
140
113
  logger?.debug(`Logging in...`);
141
- await client.login(config.token)
142
- .then(() => logger?.debug(`Login successful`));
114
+ await client.login().then(() => logger?.debug(`Login successful`));
143
115
  //# sourceMappingURL=bin.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.mjs","sourceRoot":"","sources":["../src/bin.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { RecipleClientConfig } from '@reciple/core';
2
+ export interface RecipleConfig extends RecipleClientConfig {
3
+ logger: {
4
+ enabled: boolean;
5
+ debugmode?: boolean | null;
6
+ coloredMessages: boolean;
7
+ disableLogPrefix: boolean;
8
+ logToFile: {
9
+ enabled: boolean;
10
+ logsFolder: string;
11
+ file: string;
12
+ };
13
+ };
14
+ modules: {
15
+ dirs: string[];
16
+ exclude: string[];
17
+ disableModuleVersionCheck: boolean;
18
+ };
19
+ checkForUpdates: boolean;
20
+ version: string;
21
+ }
22
+ export interface RecipleConfigJS {
23
+ config: RecipleConfig;
24
+ }
25
+ export declare class ConfigReader {
26
+ static defaultConfigFile: string;
27
+ static readDefaultConfig(): Promise<RecipleConfigJS>;
28
+ static getDefaultConfigData(useCommonJS?: boolean): Promise<string>;
29
+ static readConfigJS(config: string): Promise<RecipleConfigJS>;
30
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ConfigReader = void 0;
7
+ const core_1 = require("@reciple/core");
8
+ const utils_1 = require("@reciple/utils");
9
+ const promises_1 = require("node:fs/promises");
10
+ const strings_1 = require("fallout-utility/strings");
11
+ const node_fs_1 = require("node:fs");
12
+ const node_path_1 = __importDefault(require("node:path"));
13
+ class ConfigReader {
14
+ static defaultConfigFile = node_path_1.default.join(__dirname, '../../static/config.mjs');
15
+ static async readDefaultConfig() {
16
+ return (0, utils_1.recursiveDefaults)(await import(this.defaultConfigFile));
17
+ }
18
+ static async getDefaultConfigData(useCommonJS) {
19
+ let defaultConfig = await (0, promises_1.readFile)(this.defaultConfigFile, 'utf-8');
20
+ defaultConfig = defaultConfig.replace(`import { version } from '@reciple/core';\n`, '');
21
+ defaultConfig = defaultConfig.replace('version: `^${version}`', 'version: `^' + core_1.version + '`');
22
+ if (useCommonJS) {
23
+ defaultConfig = defaultConfig.replace(`import { CooldownPrecondition, CommandPermissionsPrecondition } from 'reciple';`, `const { CooldownPrecondition, CommandPermissionsPrecondition } = require('reciple');`);
24
+ defaultConfig = defaultConfig.replace(`import { IntentsBitField } from 'discord.js';`, `const { IntentsBitField } = require('discord.js');`);
25
+ defaultConfig = defaultConfig.replace(`export const config`, `const config`);
26
+ defaultConfig += `\nmodule.exports = { config };\n`;
27
+ }
28
+ return defaultConfig;
29
+ }
30
+ static async readConfigJS(config) {
31
+ const file = (config.startsWith('.') || config.startsWith('/') ? node_path_1.default.resolve(config) : config);
32
+ const isAbsolute = config !== file || node_path_1.default.isAbsolute(config);
33
+ if (isAbsolute && !(0, node_fs_1.existsSync)(file)) {
34
+ const isCommonJS = file.endsWith('.cjs') || ((await (0, utils_1.getDirModuleType)(node_path_1.default.dirname(file))) === 'commonjs');
35
+ const defaultConfig = await this.getDefaultConfigData(!file.endsWith('.mjs') && isCommonJS);
36
+ await (0, promises_1.mkdir)(node_path_1.default.dirname(file), { recursive: true });
37
+ await (0, promises_1.writeFile)(file, defaultConfig);
38
+ }
39
+ const data = (0, utils_1.recursiveDefaults)(await import(isAbsolute ? ('file://' + file) : file));
40
+ if (!data || !('config' in data))
41
+ throw new core_1.RecipleError(`Invalid config data in ${strings_1.kleur.yellow("'" + file) + "'"}`);
42
+ return data;
43
+ }
44
+ }
45
+ exports.ConfigReader = ConfigReader;
46
+ //# sourceMappingURL=Config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/classes/Config.ts"],"names":[],"mappings":";;;;;;AAAA,wCAA2E;AAC3E,0CAAqE;AACrE,+CAA8D;AAC9D,qDAAgD;AAChD,qCAAqC;AACrC,0DAA6B;AA2B7B,MAAa,YAAY;IACd,MAAM,CAAC,iBAAiB,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;IAE3E,MAAM,CAAC,KAAK,CAAC,iBAAiB;QACjC,OAAO,IAAA,yBAAiB,EAAkB,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAE,CAAC;IACrF,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,WAAqB;QAC1D,IAAI,aAAa,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAEpE,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,4CAA4C,EAAE,EAAE,CAAC,CAAC;QACxF,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,wBAAwB,EAAE,aAAa,GAAE,cAAO,GAAE,GAAG,CAAC,CAAC;QAE7F,IAAI,WAAW,EAAE;YACb,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,iFAAiF,EAAE,sFAAsF,CAAC,CAAC;YACjN,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,+CAA+C,EAAE,oDAAoD,CAAC,CAAC;YAC7I,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC;YAC7E,aAAa,IAAI,kCAAkC,CAAC;SACvD;QAED,OAAO,aAAa,CAAC;IACzB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,MAAc;QAC3C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAChG,MAAM,UAAU,GAAG,MAAM,KAAK,IAAI,IAAI,mBAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAE9D,IAAI,UAAU,IAAI,CAAC,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE;YACjC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAA,wBAAgB,EAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC;YAC1G,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC;YAE5F,MAAM,IAAA,gBAAK,EAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,MAAM,IAAA,oBAAS,EAAC,IAAI,EAAE,aAAa,CAAC,CAAC;SACxC;QAED,MAAM,IAAI,GAAG,IAAA,yBAAiB,EAAkB,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;YAAE,MAAM,IAAI,mBAAY,CAAC,0BAA0B,eAAK,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;QAErH,OAAO,IAAI,CAAC;IAChB,CAAC;;AAvCL,oCAwCC"}
@@ -1,6 +1,4 @@
1
1
  export * from './classes/Config';
2
2
  export * from './utils/cli';
3
- export * from './utils/getConfigExtensions';
4
3
  export * from './utils/logger';
5
4
  export * from './utils/modules';
6
- export * from './utils/parseEnvString';
@@ -16,8 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./classes/Config"), exports);
18
18
  __exportStar(require("./utils/cli"), exports);
19
- __exportStar(require("./utils/getConfigExtensions"), exports);
20
19
  __exportStar(require("./utils/logger"), exports);
21
20
  __exportStar(require("./utils/modules"), exports);
22
- __exportStar(require("./utils/parseEnvString"), exports);
23
21
  //# sourceMappingURL=exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exports.js","sourceRoot":"","sources":["../src/exports.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,8CAA4B;AAC5B,8DAA4C;AAC5C,iDAA+B;AAC/B,kDAAgC;AAChC,yDAAuC"}
1
+ {"version":3,"file":"exports.js","sourceRoot":"","sources":["../src/exports.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,8CAA4B;AAC5B,iDAA+B;AAC/B,kDAAgC"}
@@ -0,0 +1,7 @@
1
+ import { RecipleClient as Client } from '@reciple/core';
2
+ import { RecipleConfig } from './classes/Config';
3
+ export * from '@reciple/core';
4
+ export * from './exports';
5
+ export declare class RecipleClient<Ready extends boolean = boolean> extends Client<Ready> {
6
+ readonly config: RecipleConfig;
7
+ }
@@ -13,14 +13,8 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
13
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
- var __importDefault = (this && this.__importDefault) || function (mod) {
17
- return (mod && mod.__esModule) ? mod : { "default": mod };
18
- };
19
16
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.yaml = void 0;
21
- const yaml_1 = __importDefault(require("yaml"));
22
- exports.yaml = yaml_1.default;
23
- const client_1 = require("@reciple/client");
24
- __exportStar(require("@reciple/client"), exports);
17
+ const core_1 = require("@reciple/core");
18
+ __exportStar(require("@reciple/core"), exports);
25
19
  __exportStar(require("./exports"), exports);
26
20
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAwD;AAGxD,gDAA8B;AAC9B,4CAA0B"}
@@ -3,7 +3,7 @@ export declare let command: Command;
3
3
  export interface CLIOptions {
4
4
  version?: string;
5
5
  token?: string;
6
- config?: string[];
6
+ config: string;
7
7
  debugmode?: boolean;
8
8
  yes?: boolean;
9
9
  env?: string;
@@ -20,15 +20,3 @@ export declare const cli: {
20
20
  binPath: string;
21
21
  };
22
22
  export declare const cliVersion: string;
23
- /**
24
- * @deprecated Use `cli` object instead
25
- */
26
- export declare const flags: CLIOptions;
27
- /**
28
- * @deprecated Use `cli` object instead
29
- */
30
- export declare const argvOptions: () => CLIOptions;
31
- /**
32
- * @deprecated Use `cli` object instead
33
- */
34
- export declare const cwd: string;
@@ -3,10 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.cwd = exports.argvOptions = exports.flags = exports.cliVersion = exports.cli = exports.command = void 0;
7
- const client_1 = require("@reciple/client");
6
+ exports.cliVersion = exports.cli = exports.command = void 0;
7
+ const core_1 = require("@reciple/core");
8
8
  const node_fs_1 = require("node:fs");
9
- const node_util_1 = require("node:util");
10
9
  const commander_1 = require("commander");
11
10
  const semver_1 = require("semver");
12
11
  const node_path_1 = __importDefault(require("node:path"));
@@ -15,10 +14,10 @@ const originalCwd = process.cwd();
15
14
  exports.command = new commander_1.Command()
16
15
  .name('reciple')
17
16
  .description(description)
18
- .version(`Reciple CLI: ${version}\nReciple Client: ${client_1.realVersion}`, '-v, --version')
17
+ .version(`Reciple CLI: ${version}\nReciple Client: ${core_1.buildVersion}`, '-v, --version')
19
18
  .argument('[cwd]', 'Change the current working directory')
20
19
  .option('-t, --token <token>', 'Replace used bot token')
21
- .option('-c, --config <dir>', 'Set path to a config file', (v, p) => p.concat([v]), [])
20
+ .option('-c, --config <dir>', 'Set path to a config file', 'reciple.mjs')
22
21
  .option('-D, --debugmode', 'Enable debug mode')
23
22
  .option('-y, --yes', 'Agree to all Reciple confirmation prompts')
24
23
  .option('--env <file>', '.env file location')
@@ -38,17 +37,4 @@ exports.cli = {
38
37
  binPath: node_path_1.default.join(__dirname, '../bin.mjs')
39
38
  };
40
39
  exports.cliVersion = `${(0, semver_1.coerce)(version)}`;
41
- // TODO: Remove deprecated
42
- /**
43
- * @deprecated Use `cli` object instead
44
- */
45
- exports.flags = exports.cli.options;
46
- /**
47
- * @deprecated Use `cli` object instead
48
- */
49
- exports.argvOptions = (0, node_util_1.deprecate)(() => exports.cli.options, 'argvOptions() is deprecated. Use the cli.args instead.');
50
- /**
51
- * @deprecated Use `cli` object instead
52
- */
53
- exports.cwd = exports.cli.args[0] ? node_path_1.default.resolve(exports.cli.args[0]) : process.cwd();
54
40
  //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":";;;;;;AAAA,wCAA6C;AAC7C,qCAAuC;AACvC,yCAAoC;AACpC,mCAAgC;AAChC,0DAA6B;AAE7B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/G,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAEvB,QAAA,OAAO,GAAG,IAAI,mBAAO,EAAE;KAC7B,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,WAAW,CAAC;KACxB,OAAO,CAAC,gBAAgB,OAAO,qBAAqB,mBAAY,EAAE,EAAE,eAAe,CAAC;KACpF,QAAQ,CAAC,OAAO,EAAE,sCAAsC,CAAC;KACzD,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;KACvD,MAAM,CAAC,oBAAoB,EAAE,2BAA2B,EAAE,aAAa,CAAC;KACxE,MAAM,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;KAC9C,MAAM,CAAC,WAAW,EAAE,2CAA2C,CAAC;KAChE,MAAM,CAAC,cAAc,EAAE,oBAAoB,CAAC;KAC5C,MAAM,CAAC,aAAa,EAAE,mDAAmD,CAAC;KAC1E,MAAM,CAAC,SAAS,EAAE,iDAAiD,CAAC;KACpE,MAAM,CAAC,uBAAuB,EAAE,2BAA2B,CAAC;KAC5D,MAAM,CAAC,yBAAyB,EAAE,2BAA2B,CAAC;KAC9D,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAgBjB,QAAA,GAAG,GAAG;IACf,IAAI,IAAI,KAAK,OAAO,eAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACnC,IAAI,OAAO,KAAK,OAAO,eAAO,CAAC,IAAI,EAAc,CAAC,CAAC,CAAC;IACpD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,mBAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACrF,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC;CAC9C,CAAC;AAEW,QAAA,UAAU,GAAG,GAAG,IAAA,eAAM,EAAC,OAAO,CAAC,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Logger, LoggerLevel, PartialDeep } from 'fallout-utility';
2
+ import { RecipleConfig } from '../classes/Config';
3
+ import { RecipleClient } from '../';
4
+ export declare function formatLogMessage(message: string, logger: Logger, config: PartialDeep<RecipleConfig['logger']>, level: LoggerLevel): string;
5
+ export declare function createLogger(config: PartialDeep<RecipleConfig['logger']>): Promise<Logger>;
6
+ export declare function addEventListenersToClient(client: RecipleClient<true>): void;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.eventLogger = exports.quoteString = exports.createLogger = exports.formatLogMessage = void 0;
6
+ exports.addEventListenersToClient = exports.createLogger = exports.formatLogMessage = void 0;
7
7
  const fallout_utility_1 = require("fallout-utility");
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
9
  const cli_1 = require("./cli");
@@ -31,7 +31,7 @@ function formatLogMessage(message, logger, config, level) {
31
31
  exports.formatLogMessage = formatLogMessage;
32
32
  async function createLogger(config) {
33
33
  const logger = new fallout_utility_1.Logger({
34
- enableDebugmode: cli_1.cli.options.debugmode || config.debugmode === true,
34
+ enableDebugmode: (cli_1.cli.options.debugmode || config.debugmode) ?? null,
35
35
  forceEmitLogEvents: true,
36
36
  formatMessage: (message, level, logger) => formatLogMessage(message, logger, config, level)
37
37
  });
@@ -43,24 +43,22 @@ async function createLogger(config) {
43
43
  return logger;
44
44
  }
45
45
  exports.createLogger = createLogger;
46
- function quoteString(string, quote = "'") {
47
- return `${quote}${string}${quote}`;
48
- }
49
- exports.quoteString = quoteString;
50
- function eventLogger(client) {
46
+ function addEventListenersToClient(client) {
51
47
  client.on('recipleDebug', debug => client.logger?.debug(debug));
52
48
  client.modules.on('resolveModuleFileError', (file, error) => client.logger?.err(`Failed to resolve module ${fallout_utility_1.kleur.yellow(quoteString(file))}:`, error));
53
- client.modules.on('preStartModule', (module_) => client.logger?.debug(`Starting module ${fallout_utility_1.kleur.cyan(quoteString(module_.displayName))}`));
54
- client.modules.on('postStartModule', (module_) => client.logger?.log(`Started module ${fallout_utility_1.kleur.cyan(quoteString(module_.displayName))}`));
55
- client.modules.on('startModuleFailed', (module_) => client.logger?.error(`Failed to start module ${fallout_utility_1.kleur.yellow(quoteString(module_.displayName))}: ${fallout_utility_1.kleur.red('Module returned false')}`));
56
- client.modules.on('startModuleError', (module_, err) => client.logger?.error(`An error occured while starting module ${fallout_utility_1.kleur.yellow(quoteString(module_.displayName))}:`, err));
57
- client.modules.on('preLoadModule', (module_) => client.logger?.debug(`Loading module ${fallout_utility_1.kleur.cyan(quoteString(module_.displayName))}`));
58
- client.modules.on('postLoadModule', (module_) => client.logger?.log(`Loaded module ${fallout_utility_1.kleur.cyan(quoteString(module_.displayName))}`));
59
- client.modules.on('loadModuleError', (module_, err) => client.logger?.error(`An error occured while loading module ${fallout_utility_1.kleur.yellow(quoteString(module_.displayName))}:`, err));
60
- client.modules.on('preUnloadModule', (module_) => client.logger?.debug(`Unloading module ${fallout_utility_1.kleur.cyan(quoteString(module_.displayName))}`));
61
- client.modules.on('postUnloadModule', (module_) => client.logger?.log(`Unloaded module ${fallout_utility_1.kleur.cyan(quoteString(module_.displayName))}`));
62
- client.modules.on('unloadModuleError', (module_, err) => client.logger?.error(`An error occured while unloading module ${fallout_utility_1.kleur.yellow(quoteString(module_.displayName))}:`, err));
49
+ client.modules.on('preStartModule', (m) => client.logger?.debug(`Starting module ${fallout_utility_1.kleur.cyan(quoteString(m.displayName))}`));
50
+ client.modules.on('postStartModule', (m) => client.logger?.log(`Started module ${fallout_utility_1.kleur.cyan(quoteString(m.displayName))}`));
51
+ client.modules.on('startModuleError', (m, err) => client.logger?.error(`Failed to start module ${fallout_utility_1.kleur.yellow(quoteString(m.displayName))}:`, err));
52
+ client.modules.on('preLoadModule', (m) => client.logger?.debug(`Loading module ${fallout_utility_1.kleur.cyan(quoteString(m.displayName))}`));
53
+ client.modules.on('postLoadModule', (m) => client.logger?.log(`Loaded module ${fallout_utility_1.kleur.cyan(quoteString(m.displayName))}`));
54
+ client.modules.on('loadModuleError', (m, err) => client.logger?.error(`Failed to load module ${fallout_utility_1.kleur.yellow(quoteString(m.displayName))}:`, err));
55
+ client.modules.on('preUnloadModule', (m) => client.logger?.debug(`Unloading module ${fallout_utility_1.kleur.cyan(quoteString(m.displayName))}`));
56
+ client.modules.on('postUnloadModule', (m) => client.logger?.log(`Unloaded module ${fallout_utility_1.kleur.cyan(quoteString(m.displayName))}`));
57
+ client.modules.on('unloadModuleError', (m, err) => client.logger?.error(`Failed to unload module ${fallout_utility_1.kleur.yellow(quoteString(m.displayName))}:`, err));
63
58
  client.on('recipleRegisterApplicationCommands', (commands, guild) => client.logger?.log(`Registered (${commands?.size || 0}) application commands ${guild ? 'to ' + guild : 'globally'}`));
64
59
  }
65
- exports.eventLogger = eventLogger;
60
+ exports.addEventListenersToClient = addEventListenersToClient;
61
+ function quoteString(string, quote = "'") {
62
+ return `${quote}${string}${quote}`;
63
+ }
66
64
  //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Awaitable } from 'fallout-utility/types';
2
+ import { RecipleConfig } from '../classes/Config';
3
+ export declare function findModules(config: RecipleConfig['modules'], filter?: (filename: string) => Awaitable<boolean>): Promise<string[]>;
@@ -3,27 +3,26 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getJsConfig = exports.getModules = void 0;
6
+ exports.findModules = void 0;
7
7
  const promises_1 = require("node:fs/promises");
8
- const client_1 = require("@reciple/client");
9
8
  const node_fs_1 = require("node:fs");
10
9
  const micromatch_1 = __importDefault(require("micromatch"));
11
10
  const node_path_1 = __importDefault(require("node:path"));
12
- async function getModules(config, filter) {
11
+ async function findModules(config, filter) {
13
12
  const modules = [];
14
13
  const { globby, isDynamicPattern } = await import('globby');
15
- for (const folder of config.modulesFolders) {
14
+ for (const folder of config.dirs) {
16
15
  const dir = node_path_1.default.isAbsolute(folder) ? folder : node_path_1.default.join(process.cwd(), folder);
17
16
  if (isDynamicPattern(folder, { cwd: process.cwd() })) {
18
- let modulesFolders = await globby(folder, {
17
+ let dirs = await globby(folder, {
19
18
  cwd: process.cwd(),
20
19
  onlyDirectories: true,
21
20
  absolute: true
22
21
  });
23
- modulesFolders = modulesFolders.filter(f => !micromatch_1.default.isMatch(node_path_1.default.basename(f), config.exclude));
24
- modules.push(...await getModules({
22
+ dirs = dirs.filter(f => !micromatch_1.default.isMatch(node_path_1.default.basename(f), config.exclude));
23
+ modules.push(...await findModules({
25
24
  ...config,
26
- modulesFolders
25
+ dirs
27
26
  }));
28
27
  continue;
29
28
  }
@@ -36,10 +35,5 @@ async function getModules(config, filter) {
36
35
  }
37
36
  return modules;
38
37
  }
39
- exports.getModules = getModules;
40
- async function getJsConfig(file) {
41
- file = node_path_1.default.resolve(node_path_1.default.isAbsolute(file) ? file : node_path_1.default.join(process.cwd(), file));
42
- return (0, client_1.recursiveDefaults)(await import(`file://${file}`));
43
- }
44
- exports.getJsConfig = getJsConfig;
38
+ exports.findModules = findModules;
45
39
  //# sourceMappingURL=modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/utils/modules.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAyD;AAGzD,qCAAqC;AACrC,4DAAoC;AACpC,0DAA6B;AAEtB,KAAK,UAAU,WAAW,CAAC,MAAgC,EAAE,MAAiD;IACjH,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE;QAC9B,MAAM,GAAG,GAAG,mBAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QAEhF,IAAI,gBAAgB,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAClD,IAAI,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE;gBACxB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,eAAe,EAAE,IAAI;gBACrB,QAAQ,EAAE,IAAI;aACjB,CAAC,CAAC;YAEH,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAU,CAAC,OAAO,CAAC,mBAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAEnF,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,WAAW,CAAC;gBAC9B,GAAG,MAAM;gBACT,IAAI;aACP,CAAC,CAAC,CAAC;YAEJ,SAAS;SACZ;QAED,IAAI,CAAC,IAAA,oBAAU,EAAC,GAAG,CAAC;YAAE,MAAM,IAAA,gBAAK,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,CAAC,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE;YAAE,SAAS;QAEhD,MAAM,KAAK,GAAG,CAAC,MAAM,IAAA,kBAAO,EAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAU,CAAC,OAAO,CAAC,mBAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACxI,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KACzF;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAhCD,kCAgCC"}
package/package.json CHANGED
@@ -3,11 +3,11 @@
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": "7.9.11",
7
- "main": "./bin/index.js",
8
- "module": "./bin/esm.mjs",
9
- "types": "./bin/index.d.ts",
10
- "bin": "./bin/bin.mjs",
6
+ "version": "8.0.0-dev.0",
7
+ "main": "./dist/index.js",
8
+ "module": "./dist/esm.mjs",
9
+ "types": "./dist/index.d.ts",
10
+ "bin": "./dist/bin.mjs",
11
11
  "keywords": [
12
12
  "reciple",
13
13
  "discord.js",
@@ -21,24 +21,29 @@
21
21
  },
22
22
  "exports": {
23
23
  ".": {
24
- "types": "./bin/index.d.ts",
25
- "import": "./bin/esm.mjs",
26
- "require": "./bin/index.js"
24
+ "types": "./dist/index.d.ts",
25
+ "import": "./dist/esm.mjs",
26
+ "require": "./dist/index.js"
27
+ },
28
+ "./config.mjs": {
29
+ "types": "./static/config.d.mts",
30
+ "import": "./static/config.mjs"
27
31
  }
28
32
  },
29
33
  "scripts": {
30
- "clean": "npx rimraf ./bin",
31
- "build": "npm run clean && npx tsc",
34
+ "clean": "rimraf ./dist",
35
+ "build": "npm run clean && tsc",
32
36
  "docs": "node ../docgen/dist/bin.js -i ./src/exports.ts -o ./docs/docs.json"
33
37
  },
34
38
  "files": [
35
- "bin",
39
+ "dist",
36
40
  "static",
37
41
  "README.md"
38
42
  ],
39
43
  "dependencies": {
40
- "@reciple/client": "^7.8.9",
41
- "@reciple/update-checker": "^7.2.3",
44
+ "@reciple/core": "^8.0.0-dev.0",
45
+ "@reciple/update-checker": "^8.0.0-dev.0",
46
+ "@reciple/utils": "^8.0.0-dev.0",
42
47
  "commander": "^11.0.0",
43
48
  "dotenv": "^16.3.1",
44
49
  "fallout-utility": "^2.7.1",
@@ -47,8 +52,7 @@
47
52
  "micromatch": "^4.0.5",
48
53
  "prompts": "^2.4.2",
49
54
  "semver": "^7.5.4",
50
- "typescript": "^5.2.2",
51
- "yaml": "^2.3.2"
55
+ "typescript": "^5.2.2"
52
56
  },
53
57
  "devDependencies": {
54
58
  "@types/lodash.mergewith": "^4.6.7",
@@ -60,5 +64,5 @@
60
64
  "peerDependencies": {
61
65
  "discord.js": "^14.7.1"
62
66
  },
63
- "gitHead": "44727a379456ebe0ecd124143e2a453caa8e3be3"
67
+ "gitHead": "43851bb8cee6768fa28ec67a954512725b6fa787"
64
68
  }
@@ -0,0 +1,3 @@
1
+ import { RecipleConfig } from 'reciple';
2
+
3
+ export const config: RecipleConfig;
@@ -0,0 +1,78 @@
1
+ import { CooldownPrecondition, CommandPermissionsPrecondition } from 'reciple';
2
+ import { IntentsBitField } from 'discord.js';
3
+ import { version } from '@reciple/core';
4
+
5
+ // @ts-check
6
+
7
+ /**
8
+ * @type {import('reciple').RecipleConfig}
9
+ */
10
+ export const config = {
11
+ token: process.env.TOKEN ?? '',
12
+ commands: {
13
+ contextMenuCommands: {
14
+ enabled: true,
15
+ enableCooldown: true,
16
+ acceptRepliedInteractions: false,
17
+ registerCommands: {
18
+ registerGlobally: true,
19
+ registerToGuilds: []
20
+ }
21
+ },
22
+ messageCommand: {
23
+ enabled: true,
24
+ enableCooldown: true,
25
+ commandArgumentSeparator: ' ',
26
+ prefix: '!'
27
+ },
28
+ slashCommand: {
29
+ enabled: true,
30
+ enableCooldown: true,
31
+ acceptRepliedInteractions: false,
32
+ registerCommands: {
33
+ registerGlobally: true,
34
+ registerToGuilds: []
35
+ }
36
+ }
37
+ },
38
+ applicationCommandRegister: {
39
+ enabled: true,
40
+ allowRegisterGlobally: true,
41
+ allowRegisterToGuilds: true,
42
+ registerEmptyCommands: true,
43
+ registerToGuilds: []
44
+ },
45
+ client: {
46
+ intents: [
47
+ IntentsBitField.Flags.Guilds,
48
+ IntentsBitField.Flags.GuildMembers,
49
+ IntentsBitField.Flags.GuildMessages,
50
+ IntentsBitField.Flags.MessageContent,
51
+ ]
52
+ },
53
+ logger: {
54
+ enabled: true,
55
+ debugmode: null,
56
+ coloredMessages: true,
57
+ disableLogPrefix: false,
58
+ logToFile: {
59
+ enabled: true,
60
+ logsFolder: './logs',
61
+ file: 'latest.log'
62
+ }
63
+ },
64
+ modules: {
65
+ dirs: ['./modules'],
66
+ exclude: [],
67
+ disableModuleVersionCheck: false
68
+ },
69
+ preconditions: [
70
+ CooldownPrecondition.create(),
71
+ CommandPermissionsPrecondition.create()
72
+ ],
73
+ cooldownSweeperOptions: {
74
+ timer: 1000 * 60 * 60
75
+ },
76
+ checkForUpdates: true,
77
+ version: `^${version}`
78
+ };
package/bin/bin.mjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"bin.mjs","sourceRoot":"","sources":["../src/bin.mts"],"names":[],"mappings":";AAEA,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC9H,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,CAAC,KAAK,EAAE,CAAC;AAChB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEvB,MAAM,YAAY,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;AAC3E,IAAI,WAAW,GAAG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAChH,WAAW,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AAEjG,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,EAAG,CAAC;AAE5C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAAE,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAChF,IAAI,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;IAC5I,MAAM,OAAO,GAAG,MAAM,OAAO,CACzB;QACI,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,iDAAiD,OAAO,CAAC,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,0BAA0B,CAAA,CAAC,CAAC,MAAM,GAAG;QACjI,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;KAClB,CACJ,CAAC;IAEF,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CACzC;AAED,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AACnF,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC;AACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAEtF,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK;IAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACvC,IAAI,GAAG,CAAC,OAAO,CAAC,SAAS;IAAE,MAAM,CAAC,0BAA0B,GAAG,EAAE,GAAG,MAAM,CAAC,0BAA0B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAExH,MAAM,mBAAmB,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AAE7D,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;AACvD,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;AAExD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAElD;;;GAGG;AACH,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;IAC5C,MAAM,EAAE,KAAK,CAAC,uDAAuD,OAAO,EAAE,CAAC,CAAC;IAChF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CACnB;AAED,MAAM,EAAE,IAAI,CAAC,4BAA4B,WAAW,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;AAExE,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC;IAC7B,cAAc,EAAE,MAAM;IACtB,GAAG,MAAM,CAAC,MAAM;IAChB,MAAM;IACN,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,WAAW,CAAe,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;IACzG,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,WAAW,CAAiB,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;CACjH,CAAC,CAAC;AAEH,WAAW,CAAC,MAAM,CAAC,CAAC;AAEpB,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAEnH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;AACjK,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;IACrD,OAAO;IACP,sBAAsB,EAAE,IAAI;CAC/B,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;AAEpE,MAAM,EAAE,KAAK,CAAC,oBAAoB,oBAAoB,YAAY,CAAC,CAAC;AAEpE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;IAC5B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE;QACnB,MAAM,EAAE,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC1B;IAED,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAElC,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;IACjE,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,mBAAmB,CAAC,CAAC;IAElE,IAAI,MAAM,CAAC,eAAe,KAAK,KAAK,EAAE;QAClC,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC;aACnC,IAAI,CAAC,IAAI,CAAC,EAAE;YACT,MAAM,EAAE,KAAK,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CACpE,8DAA8D,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK;YACxI,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CACpE,CAAC,CAAC,CAAC,IAAI,CAAC;aACR,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;KAC1B;IAED,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;QACnD,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC3C,eAAe,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEzF,MAAM,EAAE,KAAK,CAAC,mBAAmB,QAAQ,YAAY,CAAC,CAAC;IAEvD,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,MAAM,2BAA2B,GAAG,KAAK,EAAE,MAAsB,EAAE,EAAE;QACjE,IAAI,QAAQ;YAAE,OAAO;QAErB,MAAM,EAAE,KAAK,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;QAEjD,QAAQ,GAAG,IAAI,CAAC;QAEhB,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;YAC/B,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3C,wBAAwB,EAAE,KAAK;YAC/B,2BAA2B,EAAE,IAAI;SACpC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,EAAE,CAAC;QAEjB,MAAM,YAAY,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEtH,MAAM,EAAE,IAAI,CAAC,mBAAmB,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC9D,MAAM,EAAE,gBAAgB,EAAE,CAAC;QAE3B,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAEvB,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,2BAA2B,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,2BAA2B,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAC,2BAA2B,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,CAAC;IAErD,MAAM,CAAC,EAAE,CAAC,mBAAmB,EAAE,WAAW,CAAC,EAAE;QACzC,IAAI,WAAW,CAAC,oBAAoB,EAAE,EAAE;YACpC,yBAAyB,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;SAC1D;aAAM,IAAI,WAAW,CAAC,kBAAkB,EAAE,EAAE;YACzC,mBAAmB,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;SACpD;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC,EAAE;QACjC,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,CAAC,QAAQ,CAAC,2BAA2B,EAAE,CAAC;IAEpD,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;IAEhH,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,0BAA0B,CAAC,CAAC;IAC1F,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,qBAAqB,CAAC,CAAC;IACjF,MAAM,EAAE,GAAG,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,mBAAmB,CAAC,CAAC;AACjF,CAAC,CAAC,CAAC;AAEH,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;AAE/B,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;KAC3B,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC"}
@@ -1,38 +0,0 @@
1
- import { RecipleConfigOptions } from '@reciple/client';
2
- import { ClientOptions } from 'discord.js';
3
- export interface IConfig extends RecipleConfigOptions {
4
- extends?: string | string[];
5
- logger: {
6
- enabled: boolean;
7
- debugmode: boolean;
8
- coloredMessages: boolean;
9
- disableLogPrefix: boolean;
10
- logToFile: {
11
- enabled: boolean;
12
- logsFolder: string;
13
- file: string;
14
- };
15
- };
16
- modules: {
17
- modulesFolders: string[];
18
- exclude: string[];
19
- disableModuleVersionCheck: boolean;
20
- };
21
- client: ClientOptions;
22
- checkForUpdates: boolean;
23
- version: string;
24
- }
25
- export declare class Config {
26
- static defaultConfigPath: string;
27
- config: IConfig | null;
28
- readonly configPath: string;
29
- readonly extensionPaths: string[];
30
- constructor(configPath: string, extensionPaths?: string[]);
31
- parseConfig(): Promise<this>;
32
- getConfig(): IConfig;
33
- askToken(): Promise<string>;
34
- parseToken(): string | null;
35
- static resolveEnvValues<T extends Record<any, any> | string | Array<any>>(object: T, envFile?: string): T;
36
- static defaultConfig(): IConfig;
37
- static defaultConfigYaml(): string;
38
- }
@@ -1,102 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Config = void 0;
7
- const client_1 = require("@reciple/client");
8
- const discord_js_1 = require("discord.js");
9
- const getConfigExtensions_1 = require("../utils/getConfigExtensions");
10
- const promises_1 = require("node:fs/promises");
11
- const parseEnvString_1 = require("../utils/parseEnvString");
12
- const fallout_utility_1 = require("fallout-utility");
13
- const node_fs_1 = require("node:fs");
14
- const cli_1 = require("../utils/cli");
15
- const node_path_1 = __importDefault(require("node:path"));
16
- const dotenv_1 = __importDefault(require("dotenv"));
17
- const yaml_1 = __importDefault(require("yaml"));
18
- class Config {
19
- static defaultConfigPath = node_path_1.default.join(__dirname, '../../static/config.yml');
20
- config = null;
21
- configPath;
22
- extensionPaths = [];
23
- constructor(configPath, extensionPaths) {
24
- if (!configPath)
25
- throw new client_1.RecipleError({ message: 'Config path is not defined', name: 'InvalidConfigPath' });
26
- this.configPath = configPath;
27
- this.extensionPaths = extensionPaths ?? [];
28
- }
29
- async parseConfig() {
30
- if (!(0, node_fs_1.existsSync)(this.configPath)) {
31
- let configYaml = (0, fallout_utility_1.replaceAll)(Config.defaultConfigYaml(), 'VERSION', client_1.version);
32
- const configData = yaml_1.default.parse(configYaml);
33
- if (configData.token === 'TOKEN') {
34
- configData.token = cli_1.cli.options.token || (await this.askToken()) || 'TOKEN';
35
- configYaml = (0, fallout_utility_1.replaceAll)(configYaml, 'token: TOKEN', `token: ${configData.token}`);
36
- }
37
- await (0, promises_1.mkdir)(node_path_1.default.dirname(this.configPath), { recursive: true });
38
- await (0, promises_1.writeFile)(this.configPath, configYaml, 'utf-8');
39
- this.config = configData;
40
- }
41
- else {
42
- this.config = yaml_1.default.parse(await (0, promises_1.readFile)(this.configPath, 'utf-8'));
43
- }
44
- this.config.extends = (0, discord_js_1.normalizeArray)([this.config?.extends ?? []]);
45
- this.config.extends.push(...this.extensionPaths);
46
- this.config = (0, getConfigExtensions_1.getConfigExtensions)(this.config, this.configPath);
47
- return this;
48
- }
49
- getConfig() {
50
- if (!this.config)
51
- throw new client_1.RecipleError({ message: 'Config is not parsed', name: 'InvalidParsedConfigData' });
52
- this.config.token = this.parseToken() || 'TOKEN';
53
- return Config.resolveEnvValues(this.config);
54
- }
55
- async askToken() {
56
- return (await (await import('prompts')).default({
57
- name: 'token',
58
- type: 'password',
59
- mask: '*',
60
- message: 'Bot token:',
61
- validate: value => !value.length ? `Enter a valid bot token` : true
62
- }, { onCancel: () => process.exit(1) })).token;
63
- }
64
- parseToken() {
65
- const token = cli_1.cli.options.token || this.config?.token || null;
66
- if (!token)
67
- return token;
68
- return (0, parseEnvString_1.parseEnvString)(token, cli_1.cli.options.env ? node_path_1.default.resolve(cli_1.cli.options.env) : node_path_1.default.join(process.cwd(), '.env')) || null;
69
- }
70
- static resolveEnvValues(object, envFile) {
71
- if (envFile)
72
- dotenv_1.default.config({ path: envFile, override: true });
73
- if (typeof object !== 'object')
74
- return (typeof object === 'string' ? (0, parseEnvString_1.parseEnvString)(object) : object);
75
- if (Array.isArray(object))
76
- return object.map(v => (0, parseEnvString_1.parseEnvString)(v));
77
- const keys = object ? Object.keys(object) : [];
78
- const values = Object.values(object);
79
- let newObject = {};
80
- let i = 0;
81
- for (const value of values) {
82
- newObject = {
83
- ...newObject,
84
- [keys[i]]: typeof value === 'string' || typeof value === 'object'
85
- ? this.resolveEnvValues(value)
86
- : value
87
- };
88
- i++;
89
- }
90
- return newObject;
91
- }
92
- static defaultConfig() {
93
- return yaml_1.default.parse(this.defaultConfigYaml());
94
- }
95
- static defaultConfigYaml() {
96
- if (!(0, node_fs_1.existsSync)(this.defaultConfigPath))
97
- throw new client_1.RecipleError(`Default config file does not exists '${fallout_utility_1.kleur.yellow(this.defaultConfigPath)}'`);
98
- return (0, node_fs_1.readFileSync)(this.defaultConfigPath, 'utf-8');
99
- }
100
- }
101
- exports.Config = Config;
102
- //# sourceMappingURL=Config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/classes/Config.ts"],"names":[],"mappings":"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"}
package/bin/index.d.ts DELETED
@@ -1,13 +0,0 @@
1
- import yaml from 'yaml';
2
- import { IConfig } from './classes/Config';
3
- import { RecipleClient as Client, RecipleClientOptions } from '@reciple/client';
4
- export * from '@reciple/client';
5
- export * from './exports';
6
- export {
7
- /**
8
- * Exports the `yaml` package used for parsing yml files
9
- */
10
- yaml };
11
- export declare class RecipleClient<Ready extends boolean = boolean> extends Client<Ready> {
12
- config: RecipleClientOptions["recipleOptions"] & Partial<IConfig>;
13
- }
package/bin/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAWpB,eAXG,cAAI,CAWH;AATR,4CAAgF;AAEhF,kDAAgC;AAChC,4CAA0B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA8C;AAC9C,qCAAuC;AACvC,yCAAsC;AACtC,yCAAoC;AACpC,mCAAgC;AAChC,0DAA6B;AAE7B,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/G,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAEvB,QAAA,OAAO,GAAG,IAAI,mBAAO,EAAE;KAC7B,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,WAAW,CAAC;KACxB,OAAO,CAAC,gBAAgB,OAAO,qBAAqB,oBAAW,EAAE,EAAE,eAAe,CAAC;KACnF,QAAQ,CAAC,OAAO,EAAE,sCAAsC,CAAC;KACzD,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;KACvD,MAAM,CAAC,oBAAoB,EAAE,2BAA2B,EAAE,CAAC,CAAC,EAAE,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;KAChG,MAAM,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;KAC9C,MAAM,CAAC,WAAW,EAAE,2CAA2C,CAAC;KAChE,MAAM,CAAC,cAAc,EAAE,oBAAoB,CAAC;KAC5C,MAAM,CAAC,aAAa,EAAE,mDAAmD,CAAC;KAC1E,MAAM,CAAC,SAAS,EAAE,iDAAiD,CAAC;KACpE,MAAM,CAAC,uBAAuB,EAAE,2BAA2B,CAAC;KAC5D,MAAM,CAAC,yBAAyB,EAAE,2BAA2B,CAAC;KAC9D,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAgBjB,QAAA,GAAG,GAAG;IACf,IAAI,IAAI,KAAK,OAAO,eAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACnC,IAAI,OAAO,KAAK,OAAO,eAAO,CAAC,IAAI,EAAc,CAAC,CAAC,CAAC;IACpD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,mBAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACrF,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC;CAC9C,CAAC;AAEW,QAAA,UAAU,GAAG,GAAG,IAAA,eAAM,EAAC,OAAO,CAAC,EAAE,CAAC;AAE/C,0BAA0B;AAE1B;;GAEG;AACU,QAAA,KAAK,GAAG,WAAG,CAAC,OAAO,CAAC;AAEjC;;GAEG;AACU,QAAA,WAAW,GAAG,IAAA,qBAAS,EAAC,GAAG,EAAE,CAAC,WAAG,CAAC,OAAO,EAAE,wDAAwD,CAAC,CAAC;AAElH;;GAEG;AACU,QAAA,GAAG,GAAG,WAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,WAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare function configMergeCustomizer(objValue: any, srcValue: any, key: string): any;
2
- export declare function getConfigExtensions<T extends {
3
- extends?: string | string[];
4
- }>(config: T, configPath?: string): T;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getConfigExtensions = exports.configMergeCustomizer = void 0;
7
- const node_fs_1 = require("node:fs");
8
- const client_1 = require("@reciple/client");
9
- const lodash_mergewith_1 = __importDefault(require("lodash.mergewith"));
10
- const node_path_1 = __importDefault(require("node:path"));
11
- const yaml_1 = __importDefault(require("yaml"));
12
- function configMergeCustomizer(objValue, srcValue, key) {
13
- if (Array.isArray(objValue))
14
- return srcValue;
15
- }
16
- exports.configMergeCustomizer = configMergeCustomizer;
17
- function getConfigExtensions(config, configPath) {
18
- if (!config.extends || Array.isArray(config.extends) && !config.extends.length)
19
- return config;
20
- let extensions = typeof config.extends === 'string' ? [config.extends] : config.extends;
21
- extensions = extensions.map(e => configPath
22
- ? node_path_1.default.isAbsolute(e)
23
- ? e
24
- : node_path_1.default.join(node_path_1.default.dirname(configPath), e)
25
- : e);
26
- for (const extension of extensions) {
27
- if (!(0, node_fs_1.existsSync)(extension))
28
- throw new client_1.RecipleError({ message: `Config extension file doesn't exists: ${extension}`, name: 'InvalidConfigExtensionPath' });
29
- const configExtension = getConfigExtensions(yaml_1.default.parse((0, node_fs_1.readFileSync)(extension, 'utf-8')), extension);
30
- config = (0, lodash_mergewith_1.default)(configExtension, config, configMergeCustomizer);
31
- }
32
- config.extends = extensions;
33
- return config;
34
- }
35
- exports.getConfigExtensions = getConfigExtensions;
36
- //# sourceMappingURL=getConfigExtensions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getConfigExtensions.js","sourceRoot":"","sources":["../../src/utils/getConfigExtensions.ts"],"names":[],"mappings":";;;;;;AAAA,qCAAmD;AACnD,4CAA+C;AAC/C,wEAAqC;AACrC,0DAA6B;AAC7B,gDAAuB;AAEvB,SAAgB,qBAAqB,CAAC,QAAa,EAAE,QAAa,EAAE,GAAW;IAC3E,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;AACjD,CAAC;AAFD,sDAEC;AAED,SAAgB,mBAAmB,CAA2C,MAAS,EAAE,UAAmB;IACxG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IAE9F,IAAI,UAAU,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACpF,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU;QACvC,CAAC,CAAC,mBAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC,CAAC,CAAC;IAEb,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAChC,IAAI,CAAC,IAAA,oBAAU,EAAC,SAAS,CAAC;YAAE,MAAM,IAAI,qBAAY,CAAC,EAAE,OAAO,EAAE,yCAAyC,SAAS,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAE1J,MAAM,eAAe,GAAG,mBAAmB,CAAC,cAAG,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAEpG,MAAM,GAAG,IAAA,0BAAK,EAAC,eAAe,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;KAClE;IAED,MAAM,CAAC,OAAO,GAAG,UAAU,CAAC;IAE5B,OAAO,MAAM,CAAC;AAClB,CAAC;AArBD,kDAqBC"}
@@ -1,7 +0,0 @@
1
- import { Logger, LoggerLevel, PartialDeep } from 'fallout-utility';
2
- import { IConfig } from '../classes/Config';
3
- import { RecipleClient } from '../';
4
- export declare function formatLogMessage(message: string, logger: Logger, config: PartialDeep<IConfig['logger']>, level: LoggerLevel): string;
5
- export declare function createLogger(config: PartialDeep<IConfig['logger']>): Promise<Logger>;
6
- export declare function quoteString(string: string, quote?: string): string;
7
- export declare function eventLogger(client: RecipleClient): void;
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { Awaitable } from 'fallout-utility';
2
- import { IConfig } from '../classes/Config';
3
- export declare function getModules(config: IConfig['modules'], filter?: (filename: string) => Awaitable<boolean>): Promise<string[]>;
4
- export declare function getJsConfig<T>(file: string): Promise<T | undefined>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/utils/modules.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAyD;AACzD,4CAAoD;AAGpD,qCAAqC;AACrC,4DAAoC;AACpC,0DAA6B;AAEtB,KAAK,UAAU,UAAU,CAAC,MAA0B,EAAE,MAAiD;IAC1G,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE;QACxC,MAAM,GAAG,GAAG,mBAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QAEhF,IAAI,gBAAgB,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAClD,IAAI,cAAc,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE;gBAClC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,eAAe,EAAE,IAAI;gBACrB,QAAQ,EAAE,IAAI;aACjB,CAAC,CAAC;YAEH,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAU,CAAC,OAAO,CAAC,mBAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAEvG,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,UAAU,CAAC;gBAC7B,GAAG,MAAM;gBACT,cAAc;aACjB,CAAC,CAAC,CAAC;YAEJ,SAAS;SACZ;QAED,IAAI,CAAC,IAAA,oBAAU,EAAC,GAAG,CAAC;YAAE,MAAM,IAAA,gBAAK,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,CAAC,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE;YAAE,SAAS;QAEhD,MAAM,KAAK,GAAG,CAAC,MAAM,IAAA,kBAAO,EAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,oBAAU,CAAC,OAAO,CAAC,mBAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACxI,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KACzF;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAhCD,gCAgCC;AAEM,KAAK,UAAU,WAAW,CAAI,IAAY;IAC7C,IAAI,GAAG,mBAAI,CAAC,OAAO,CAAC,mBAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IAEnF,OAAO,IAAA,0BAAiB,EAAI,MAAM,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC;AAJD,kCAIC"}
@@ -1 +0,0 @@
1
- export declare function parseEnvString(value: string, envFile?: string): string;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.parseEnvString = void 0;
7
- const dotenv_1 = __importDefault(require("dotenv"));
8
- function parseEnvString(value, envFile) {
9
- const env = String(value).split(':');
10
- if (env.length !== 2 || env[0].toLowerCase() !== 'env')
11
- return value;
12
- if (envFile) {
13
- dotenv_1.default.config({
14
- path: envFile,
15
- override: true
16
- });
17
- }
18
- return process.env[env[1]] ?? '';
19
- }
20
- exports.parseEnvString = parseEnvString;
21
- //# sourceMappingURL=parseEnvString.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseEnvString.js","sourceRoot":"","sources":["../../src/utils/parseEnvString.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,SAAgB,cAAc,CAAC,KAAa,EAAE,OAAgB;IAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAErE,IAAI,OAAO,EAAE;QACT,gBAAM,CAAC,MAAM,CAAC;YACV,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;KACN;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACrC,CAAC;AAZD,wCAYC"}
package/static/config.yml DELETED
@@ -1,116 +0,0 @@
1
- # The bot token
2
- # You can directly set the bot token as value or use token from env
3
- # To use token from env set the value like this:
4
- # token: env:TOKEN
5
- token: TOKEN
6
-
7
- # Commands Config
8
- commands:
9
- contextMenuCommand:
10
- # If false, the client will ignore this type of command when executed
11
- enabled: true
12
- # Enable user command cooldowns if available
13
- enableCooldown: true
14
- # Command register config
15
- registerCommands:
16
- # Allow commands to be registered globally
17
- registerGlobally: true
18
- # Allow commands to be registered a given guilds/servers
19
- registerToGuilds: []
20
- # If enabled, the client will accept replied interactions of this type
21
- acceptRepliedInteractions: false
22
- slashCommand:
23
- # If false, the client will ignore this type of command when executed
24
- enabled: true
25
- # Enable user command cooldowns if available
26
- enableCooldown: true
27
- # Command register config
28
- registerCommands:
29
- # Allow commands to be registered globally
30
- registerGlobally: true
31
- # Allow commands to be registered a given guilds/servers
32
- registerToGuilds: []
33
- # If enabled, the client will accept replied interactions of this type
34
- acceptRepliedInteractions: false
35
- additionalApplicationCommands:
36
- # Command register config
37
- registerCommands:
38
- # Allow commands to be registered globally
39
- registerGlobally: true
40
- # Allow commands to be registered a given guilds/servers
41
- registerToGuilds: []
42
- messageCommand:
43
- # If false, the client will ignore this type of command when executed
44
- enabled: true
45
- # Enable user command cooldowns if available
46
- enableCooldown: true
47
- # String separator for command options
48
- commandArgumentSeparator: ' '
49
- # Command prefix
50
- prefix: '!'
51
-
52
- # Application commands register config
53
- applicationCommandRegister:
54
- # If false, any application commands will not be registered
55
- enabled: true
56
- # Wether allow all application commands to be registered globally
57
- # This ignores their specific configs
58
- allowRegisterGlobally: true
59
- # Wether allow all application commands to be registered to guilds
60
- # This ignores their specific configs
61
- allowRegisterToGuilds: true
62
- # Register empty command list
63
- registerEmptyCommands: true
64
- # Register all application commands to guilds/servers
65
- registerToGuilds: []
66
-
67
- # Logger config
68
- logger:
69
- # Enables client logger
70
- enabled: true
71
- # Enables logger debug mode
72
- debugmode: false
73
- # Enables colored console logs
74
- coloredMessages: true
75
- # Disables the log prefix to logged messages
76
- disableLogPrefix: false
77
- # File file config
78
- logToFile:
79
- # Enables log file
80
- enabled: true
81
- # Sets the log file folder
82
- logsFolder: ./logs
83
- # Latest log file name
84
- file: latest.log
85
-
86
- # Modules config
87
- modules:
88
- # Reciple modules folders
89
- # You can add multiple folders by adding the folder path or using glob patterns
90
- modulesFolders:
91
- - ./modules
92
- # Excluded files or folders
93
- # You can add the file/folder name or use glob patterns
94
- exclude: []
95
- # If false, the client will still load unsupported modules
96
- disableModuleVersionCheck: false
97
-
98
- # Cooldown sweeper
99
- cooldownSweeper:
100
- # Enables cooldown sweeper
101
- enabled: true
102
- # Run sweeper every given milleseconds
103
- interval: 3600000
104
-
105
- # Discord.js client options
106
- client:
107
- intents:
108
- - Guilds
109
- - GuildMessages
110
- - MessageContent
111
-
112
- # Notifies you for package updates
113
- checkForUpdates: true
114
-
115
- # Don't change this value
116
- version: ^VERSION
File without changes
File without changes
File without changes
File without changes