reciple 9.9.0 → 10.0.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 (163) hide show
  1. package/assets/config/reciple.config.js +87 -0
  2. package/assets/config/reciple.config.ts +80 -0
  3. package/assets/global/README.md +1 -0
  4. package/assets/global/gitignore +121 -0
  5. package/assets/global/nodemon.json +13 -0
  6. package/assets/modules/javascript/Base.js +21 -0
  7. package/assets/modules/javascript/ClientEvent.js +14 -0
  8. package/assets/modules/javascript/ContextMenuCommand.js +17 -0
  9. package/assets/modules/javascript/Event.js +17 -0
  10. package/assets/modules/javascript/MessageCommand.js +16 -0
  11. package/assets/modules/javascript/RESTEvent.js +14 -0
  12. package/assets/modules/javascript/SlashCommand.js +16 -0
  13. package/assets/modules/typescript/Base.ts +17 -0
  14. package/assets/modules/typescript/ClientEvent.ts +15 -0
  15. package/assets/modules/typescript/ContextMenuCommand.ts +15 -0
  16. package/assets/modules/typescript/Event.ts +16 -0
  17. package/assets/modules/typescript/MessageCommand.ts +14 -0
  18. package/assets/modules/typescript/RESTEvent.ts +15 -0
  19. package/assets/modules/typescript/SlashCommand.ts +14 -0
  20. package/assets/templates/javascript/jsconfig.json +17 -0
  21. package/assets/templates/typescript/tsconfig.json +17 -0
  22. package/dist/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
  23. package/dist/bin/commands/build.d.mts +16 -0
  24. package/dist/bin/commands/build.mjs +24 -0
  25. package/dist/bin/commands/build.mjs.map +1 -0
  26. package/dist/bin/commands/create.d.mts +23 -0
  27. package/dist/bin/commands/create.mjs +48 -0
  28. package/dist/bin/commands/create.mjs.map +1 -0
  29. package/dist/bin/commands/createModule.d.mts +21 -0
  30. package/dist/bin/commands/createModule.mjs +40 -0
  31. package/dist/bin/commands/createModule.mjs.map +1 -0
  32. package/dist/bin/commands/start.d.mts +18 -0
  33. package/dist/bin/commands/start.mjs +104 -0
  34. package/dist/bin/commands/start.mjs.map +1 -0
  35. package/dist/bin/reciple.d.mts +1 -0
  36. package/dist/bin/reciple.mjs +9 -0
  37. package/dist/bin/reciple.mjs.map +1 -0
  38. package/dist/classes/NotAnError.d.mts +7 -0
  39. package/dist/classes/NotAnError.mjs +11 -0
  40. package/dist/classes/NotAnError.mjs.map +1 -0
  41. package/dist/classes/cli/CLI.d.mts +54 -0
  42. package/dist/classes/cli/CLI.mjs +156 -0
  43. package/dist/classes/cli/CLI.mjs.map +1 -0
  44. package/dist/classes/cli/CLISubcommand.d.mts +27 -0
  45. package/dist/classes/cli/CLISubcommand.mjs +23 -0
  46. package/dist/classes/cli/CLISubcommand.mjs.map +1 -0
  47. package/dist/classes/cli/ConfigReader.d.mts +81 -0
  48. package/dist/classes/cli/ConfigReader.mjs +141 -0
  49. package/dist/classes/cli/ConfigReader.mjs.map +1 -0
  50. package/dist/classes/cli/RuntimeEnvironment.d.mts +14 -0
  51. package/dist/classes/cli/RuntimeEnvironment.mjs +36 -0
  52. package/dist/classes/cli/RuntimeEnvironment.mjs.map +1 -0
  53. package/dist/classes/client/EventListeners.d.mts +26 -0
  54. package/dist/classes/client/EventListeners.mjs +103 -0
  55. package/dist/classes/client/EventListeners.mjs.map +1 -0
  56. package/dist/classes/client/ModuleLoader.d.mts +55 -0
  57. package/dist/classes/client/ModuleLoader.mjs +152 -0
  58. package/dist/classes/client/ModuleLoader.mjs.map +1 -0
  59. package/dist/classes/managers/ModuleManager.d.mts +55 -0
  60. package/dist/classes/managers/ModuleManager.mjs +107 -0
  61. package/dist/classes/managers/ModuleManager.mjs.map +1 -0
  62. package/dist/classes/modules/BaseModule.d.mts +34 -0
  63. package/dist/classes/modules/BaseModule.mjs +33 -0
  64. package/dist/classes/modules/BaseModule.mjs.map +1 -0
  65. package/dist/classes/modules/PostconditionModule.d.mts +20 -0
  66. package/dist/classes/modules/PostconditionModule.mjs +24 -0
  67. package/dist/classes/modules/PostconditionModule.mjs.map +1 -0
  68. package/dist/classes/modules/PreconditionModule.d.mts +20 -0
  69. package/dist/classes/modules/PreconditionModule.mjs +24 -0
  70. package/dist/classes/modules/PreconditionModule.mjs.map +1 -0
  71. package/dist/classes/modules/commands/ContextMenuCommandModule.d.mts +24 -0
  72. package/dist/classes/modules/commands/ContextMenuCommandModule.mjs +27 -0
  73. package/dist/classes/modules/commands/ContextMenuCommandModule.mjs.map +1 -0
  74. package/dist/classes/modules/commands/MessageCommandModule.d.mts +24 -0
  75. package/dist/classes/modules/commands/MessageCommandModule.mjs +27 -0
  76. package/dist/classes/modules/commands/MessageCommandModule.mjs.map +1 -0
  77. package/dist/classes/modules/commands/SlashCommandModule.d.mts +24 -0
  78. package/dist/classes/modules/commands/SlashCommandModule.mjs +27 -0
  79. package/dist/classes/modules/commands/SlashCommandModule.mjs.map +1 -0
  80. package/dist/classes/modules/events/ClientEventModule.d.mts +11 -0
  81. package/dist/classes/modules/events/ClientEventModule.mjs +10 -0
  82. package/dist/classes/modules/events/ClientEventModule.mjs.map +1 -0
  83. package/dist/classes/modules/events/EventModule.d.mts +29 -0
  84. package/dist/classes/modules/events/EventModule.mjs +26 -0
  85. package/dist/classes/modules/events/EventModule.mjs.map +1 -0
  86. package/dist/classes/modules/events/RESTEventModule.d.mts +11 -0
  87. package/dist/classes/modules/events/RESTEventModule.mjs +10 -0
  88. package/dist/classes/modules/events/RESTEventModule.mjs.map +1 -0
  89. package/dist/classes/templates/ModuleTemplateBuilder.d.mts +84 -0
  90. package/dist/classes/templates/ModuleTemplateBuilder.mjs +288 -0
  91. package/dist/classes/templates/ModuleTemplateBuilder.mjs.map +1 -0
  92. package/dist/classes/templates/TemplateBuilder.d.mts +78 -0
  93. package/dist/classes/templates/TemplateBuilder.mjs +351 -0
  94. package/dist/classes/templates/TemplateBuilder.mjs.map +1 -0
  95. package/dist/classes/validation/BaseModuleValidator.d.mts +23 -0
  96. package/dist/classes/validation/BaseModuleValidator.mjs +46 -0
  97. package/dist/classes/validation/BaseModuleValidator.mjs.map +1 -0
  98. package/dist/classes/validation/CommandModuleValidator.d.mts +12 -0
  99. package/dist/classes/validation/CommandModuleValidator.mjs +16 -0
  100. package/dist/classes/validation/CommandModuleValidator.mjs.map +1 -0
  101. package/dist/classes/validation/EventModuleValidator.d.mts +21 -0
  102. package/dist/classes/validation/EventModuleValidator.mjs +42 -0
  103. package/dist/classes/validation/EventModuleValidator.mjs.map +1 -0
  104. package/dist/classes/validation/PostconditionModule.d.mts +18 -0
  105. package/dist/classes/validation/PostconditionModule.mjs +34 -0
  106. package/dist/classes/validation/PostconditionModule.mjs.map +1 -0
  107. package/dist/classes/validation/PreconditionModule.d.mts +16 -0
  108. package/dist/classes/validation/PreconditionModule.mjs +29 -0
  109. package/dist/classes/validation/PreconditionModule.mjs.map +1 -0
  110. package/dist/helpers/constants.d.mts +19 -0
  111. package/dist/helpers/constants.mjs +28 -0
  112. package/dist/helpers/constants.mjs.map +1 -0
  113. package/dist/helpers/types.d.mts +20 -0
  114. package/dist/helpers/types.mjs +1 -0
  115. package/dist/index.d.mts +39 -0
  116. package/dist/index.mjs +39 -0
  117. package/dist/index.mjs.map +1 -0
  118. package/dist/package.mjs +79 -0
  119. package/dist/package.mjs.map +1 -0
  120. package/package.json +80 -66
  121. package/LICENSE +0 -674
  122. package/README.md +0 -206
  123. package/dist/bin.d.ts +0 -2
  124. package/dist/bin.js +0 -4
  125. package/dist/bin.js.map +0 -1
  126. package/dist/classes/CLI.d.ts +0 -55
  127. package/dist/classes/CLI.js +0 -191
  128. package/dist/classes/CLI.js.map +0 -1
  129. package/dist/classes/Config.d.ts +0 -26
  130. package/dist/classes/Config.js +0 -73
  131. package/dist/classes/Config.js.map +0 -1
  132. package/dist/classes/EventHandlers.d.ts +0 -9
  133. package/dist/classes/EventHandlers.js +0 -71
  134. package/dist/classes/EventHandlers.js.map +0 -1
  135. package/dist/classes/ModuleLoader.d.ts +0 -25
  136. package/dist/classes/ModuleLoader.js +0 -91
  137. package/dist/classes/ModuleLoader.js.map +0 -1
  138. package/dist/commands/init.d.ts +0 -7
  139. package/dist/commands/init.js +0 -10
  140. package/dist/commands/init.js.map +0 -1
  141. package/dist/commands/modules.d.ts +0 -9
  142. package/dist/commands/modules.js +0 -33
  143. package/dist/commands/modules.js.map +0 -1
  144. package/dist/commands/shard.d.ts +0 -9
  145. package/dist/commands/shard.js +0 -102
  146. package/dist/commands/shard.js.map +0 -1
  147. package/dist/commands/start.d.ts +0 -9
  148. package/dist/commands/start.js +0 -95
  149. package/dist/commands/start.js.map +0 -1
  150. package/dist/exports.d.ts +0 -6
  151. package/dist/exports.js +0 -7
  152. package/dist/exports.js.map +0 -1
  153. package/dist/index.d.ts +0 -15
  154. package/dist/index.js +0 -8
  155. package/dist/index.js.map +0 -1
  156. package/dist/types/constants.d.ts +0 -6
  157. package/dist/types/constants.js +0 -29
  158. package/dist/types/constants.js.map +0 -1
  159. package/dist/types/structures.d.ts +0 -36
  160. package/dist/types/structures.js +0 -2
  161. package/dist/types/structures.js.map +0 -1
  162. package/static/config.d.mts +0 -5
  163. package/static/config.mjs +0 -105
@@ -0,0 +1,87 @@
1
+ // @ts-check
2
+ import { Client, CommandType, CooldownAdapter, CooldownCommandPrecondition, MessageCommandFlagValidatePrecondition, MessageCommandOptionValidatePrecondition } from 'reciple';
3
+
4
+ export const client = new Client({
5
+ token: process.env.TOKEN,
6
+ intents: [
7
+ 'Guilds',
8
+ 'GuildMessages',
9
+ 'MessageContent'
10
+ ],
11
+ preconditions: [
12
+ new CooldownCommandPrecondition({
13
+ scope: [CommandType.Message, CommandType.Slash, CommandType.ContextMenu],
14
+ matchWithin: 'global',
15
+ deleteWhenExpired: true
16
+ }),
17
+ new MessageCommandOptionValidatePrecondition(),
18
+ new MessageCommandFlagValidatePrecondition()
19
+ ],
20
+ postconditions: [],
21
+ commands: [],
22
+ cooldownAdapter: CooldownAdapter,
23
+ });
24
+
25
+ /**
26
+ * @type {import('reciple').Config}
27
+ */
28
+ export const config = {
29
+ token: process.env.DISCORD_TOKEN,
30
+ commands: {
31
+ message: {
32
+ prefix: context => '!',
33
+ separator: context => ' ',
34
+ splitOptions: {},
35
+ throwOnExecuteError: true
36
+ },
37
+ slash: {
38
+ acceptRepliedInteraction: true,
39
+ throwOnExecuteError: true
40
+ },
41
+ contextMenu: {
42
+ acceptRepliedInteraction: true,
43
+ throwOnExecuteError: true
44
+ },
45
+ },
46
+ applicationCommandsRegister: {
47
+ slashCommands: {
48
+ registerToGuilds: false,
49
+ registerGlobally: true
50
+ },
51
+ contextMenuCommands: {
52
+ registerToGuilds: false,
53
+ registerGlobally: true
54
+ },
55
+ registerToGuilds: false,
56
+ registerGlobally: true,
57
+ allowEmptyCommands: true
58
+ },
59
+ cooldowns: {
60
+ sweeperOptions: {
61
+ interval: 1000 * 60 * 60,
62
+ fetchAll: false
63
+ }
64
+ },
65
+ preconditions: {
66
+ returnOnFailure: false
67
+ },
68
+ postconditions: {
69
+ returnOnFailure: false
70
+ },
71
+ modules: {
72
+ directories: ["./modules/**"],
73
+ ignore: ["_*"],
74
+ filter: undefined
75
+ }
76
+ };
77
+
78
+ /**
79
+ * @type {import('reciple').BuildConfig}
80
+ */
81
+ export const build = {
82
+ entry: ['./src/**/*.{js,jsx,ts,tsx}'],
83
+ tsconfig: './jsconfig.json',
84
+ outDir: './modules',
85
+ external: [],
86
+ noExternal: [],
87
+ };
@@ -0,0 +1,80 @@
1
+ import { Client, CommandType, CooldownAdapter, CooldownCommandPrecondition, MessageCommandFlagValidatePrecondition, MessageCommandOptionValidatePrecondition, type BuildConfig, type Config } from 'reciple';
2
+
3
+ export const client = new Client({
4
+ token: process.env.TOKEN,
5
+ intents: [
6
+ 'Guilds',
7
+ 'GuildMessages',
8
+ 'MessageContent'
9
+ ],
10
+ preconditions: [
11
+ new CooldownCommandPrecondition({
12
+ scope: [CommandType.Message, CommandType.Slash, CommandType.ContextMenu],
13
+ matchWithin: 'global',
14
+ deleteWhenExpired: true
15
+ }),
16
+ new MessageCommandOptionValidatePrecondition(),
17
+ new MessageCommandFlagValidatePrecondition()
18
+ ],
19
+ postconditions: [],
20
+ commands: [],
21
+ cooldownAdapter: CooldownAdapter,
22
+ });
23
+
24
+ export const config: Config = {
25
+ token: process.env.DISCORD_TOKEN,
26
+ commands: {
27
+ message: {
28
+ prefix: context => '!',
29
+ separator: context => ' ',
30
+ splitOptions: {},
31
+ throwOnExecuteError: true
32
+ },
33
+ slash: {
34
+ acceptRepliedInteraction: true,
35
+ throwOnExecuteError: true
36
+ },
37
+ contextMenu: {
38
+ acceptRepliedInteraction: true,
39
+ throwOnExecuteError: true
40
+ },
41
+ },
42
+ applicationCommandsRegister: {
43
+ slashCommands: {
44
+ registerToGuilds: false,
45
+ registerGlobally: true
46
+ },
47
+ contextMenuCommands: {
48
+ registerToGuilds: false,
49
+ registerGlobally: true
50
+ },
51
+ registerToGuilds: false,
52
+ registerGlobally: true,
53
+ allowEmptyCommands: true
54
+ },
55
+ cooldowns: {
56
+ sweeperOptions: {
57
+ interval: 1000 * 60 * 60,
58
+ fetchAll: false
59
+ }
60
+ },
61
+ preconditions: {
62
+ returnOnFailure: false
63
+ },
64
+ postconditions: {
65
+ returnOnFailure: false
66
+ },
67
+ modules: {
68
+ directories: ["./modules/**"],
69
+ ignore: ["_*"],
70
+ filter: undefined
71
+ }
72
+ };
73
+
74
+ export const build: BuildConfig = {
75
+ entry: ['./src/**/*.{js,jsx,ts,tsx}'],
76
+ tsconfig: './jsconfig.json',
77
+ outDir: './modules',
78
+ external: [],
79
+ noExternal: [],
80
+ };
@@ -0,0 +1 @@
1
+ # reciple
@@ -0,0 +1,121 @@
1
+ # Logs
2
+ logs
3
+ *.log
4
+ npm-debug.log*
5
+ yarn-debug.log*
6
+ yarn-error.log*
7
+ lerna-debug.log*
8
+ .pnpm-debug.log*
9
+
10
+ # Diagnostic reports (https://nodejs.org/api/report.html)
11
+ report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
12
+
13
+ # Runtime data
14
+ pids
15
+ *.pid
16
+ *.seed
17
+ *.pid.lock
18
+
19
+ # Directory for instrumented libs generated by jscoverage/JSCover
20
+ lib-cov
21
+
22
+ # Coverage directory used by tools like istanbul
23
+ coverage
24
+ *.lcov
25
+
26
+ # nyc test coverage
27
+ .nyc_output
28
+
29
+ # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
30
+ .grunt
31
+
32
+ # Bower dependency directory (https://bower.io/)
33
+ bower_components
34
+
35
+ # node-waf configuration
36
+ .lock-wscript
37
+
38
+ # Compiled binary addons (https://nodejs.org/api/addons.html)
39
+ build/Release
40
+
41
+ # Dependency directories
42
+ node_modules/
43
+ jspm_packages/
44
+
45
+ # Snowpack dependency directory (https://snowpack.dev/)
46
+ web_modules/
47
+
48
+ # TypeScript cache
49
+ *.tsbuildinfo
50
+
51
+ # Optional npm cache directory
52
+ .npm
53
+
54
+ # Optional eslint cache
55
+ .eslintcache
56
+
57
+ # Microbundle cache
58
+ .rpt2_cache/
59
+ .rts2_cache_cjs/
60
+ .rts2_cache_es/
61
+ .rts2_cache_umd/
62
+
63
+ # Optional REPL history
64
+ .node_repl_history
65
+
66
+ # Output of 'npm pack'
67
+ *.tgz
68
+
69
+ # Yarn Integrity file
70
+ .yarn-integrity
71
+
72
+ # dotenv environment variables file
73
+ .env
74
+ .env.test
75
+ .env.production
76
+
77
+ # parcel-bundler cache (https://parceljs.org/)
78
+ .cache
79
+ .parcel-cache
80
+
81
+ # Next.js build output
82
+ .next
83
+ out
84
+
85
+ # Nuxt.js build / generate output
86
+ .nuxt
87
+ dist
88
+
89
+ # Gatsby files
90
+ .cache/
91
+ # Comment in the public line in if your project uses Gatsby and not Next.js
92
+ # https://nextjs.org/blog/next-9-1#public-directory-support
93
+ # public
94
+
95
+ # vuepress build output
96
+ .vuepress/dist
97
+
98
+ # Serverless directories
99
+ .serverless/
100
+
101
+ # FuseBox cache
102
+ .fusebox/
103
+
104
+ # DynamoDB Local files
105
+ .dynamodb/
106
+
107
+ # TernJS port file
108
+ .tern-port
109
+
110
+ # Stores VSCode versions used for testing VSCode extensions
111
+ .vscode-test
112
+
113
+ # yarn v2
114
+ .yarn/cache
115
+ .yarn/unplugged
116
+ .yarn/build-state.yml
117
+ .yarn/install-state.gz
118
+ .pnp.*
119
+
120
+ # Modules
121
+ modules
@@ -0,0 +1,13 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/nodemon.json",
3
+ "restartable": "r",
4
+ "ext": "js,jsx,ts,tsx,json",
5
+ "signal": "SIGHUP",
6
+ "watch": [
7
+ "src",
8
+ "reciple.config.js",
9
+ "reciple.config.ts",
10
+ ".env"
11
+ ],
12
+ "exec": "reciple start --build"
13
+ }
@@ -0,0 +1,21 @@
1
+ // @ts-check
2
+ import { BaseModule } from 'reciple';
3
+
4
+ export class $MODULE_NAME$ extends BaseModule {
5
+ /** @param {BaseModule.EventData<false>} param0 */
6
+ async onEnable({ client }) {
7
+ // Write your code here
8
+ }
9
+
10
+ /** @param {BaseModule.EventData<true>} param0 */
11
+ async onReady({ client }) {
12
+ // Write your code here
13
+ }
14
+
15
+ /** @param {BaseModule.EventData<boolean>} param0 */
16
+ async onDisable({ client }) {
17
+ // Write your code here
18
+ }
19
+ }
20
+
21
+ export default new $MODULE_NAME$();
@@ -0,0 +1,14 @@
1
+ // @ts-check
2
+ import { ClientEventModule } from "reciple";
3
+
4
+ export class $MODULE_NAME$ extends ClientEventModule {
5
+ event = '$EVENT_NAME$';
6
+ // @ts-expect-error
7
+ once = $EVENT_ONCE$;
8
+
9
+ onEvent(...args) {
10
+ // Write your code here
11
+ }
12
+ }
13
+
14
+ export default new $MODULE_NAME$();
@@ -0,0 +1,17 @@
1
+ // @ts-check
2
+ import { ContextMenuCommandBuilder, ContextMenuCommandModule } from "reciple";
3
+
4
+ export class $MODULE_NAME$ extends ContextMenuCommandModule {
5
+ data = new ContextMenuCommandBuilder()
6
+ .setName('$COMMAND_NAME$')
7
+ // @ts-expect-error
8
+ .setType($COMMAND_CONTEXT_MENU_TYPE$)
9
+ .toJSON();
10
+
11
+ /** @param {import('reciple').ContextMenuCommand.ExecuteData} param0 */
12
+ async execute({ interaction }) {
13
+ // Write your code here
14
+ }
15
+ }
16
+
17
+ export default new $MODULE_NAME$();
@@ -0,0 +1,17 @@
1
+ // @ts-check
2
+ import { EventModule } from "reciple";
3
+
4
+ export class $MODULE_NAME$ extends EventModule {
5
+ // @ts-expect-error
6
+ emitter = $EVENT_EMITTER$;
7
+ event = '$EVENT_NAME$';
8
+ // @ts-expect-error
9
+ once = $EVENT_ONCE$;
10
+
11
+ // @ts-expect-error
12
+ onEvent(...args) {
13
+ // Write your code here
14
+ }
15
+ }
16
+
17
+ export default new $MODULE_NAME$();
@@ -0,0 +1,16 @@
1
+ // @ts-check
2
+ import { MessageCommandBuilder, MessageCommandModule } from "reciple";
3
+
4
+ export class $MODULE_NAME$ extends MessageCommandModule {
5
+ data = new MessageCommandBuilder()
6
+ .setName('$COMMAND_NAME$')
7
+ .setDescription('$COMMAND_DESCRIPTION$')
8
+ .toJSON();
9
+
10
+ /** @param {import('reciple').MessageCommand.ExecuteData} param0 */
11
+ async execute({ message }) {
12
+ // Write your code here
13
+ }
14
+ }
15
+
16
+ export default new $MODULE_NAME$();
@@ -0,0 +1,14 @@
1
+ // @ts-check
2
+ import { RESTEventModule } from "reciple";
3
+
4
+ export class $MODULE_NAME$ extends RESTEventModule {
5
+ event = '$EVENT_NAME$';
6
+ // @ts-expect-error
7
+ once = $EVENT_ONCE$;
8
+
9
+ onEvent(...args) {
10
+ // Write your code here
11
+ }
12
+ }
13
+
14
+ export default new $MODULE_NAME$();
@@ -0,0 +1,16 @@
1
+ // @ts-check
2
+ import { SlashCommandBuilder, SlashCommandModule } from "reciple";
3
+
4
+ export class $MODULE_NAME$ extends SlashCommandModule {
5
+ data = new SlashCommandBuilder()
6
+ .setName('$COMMAND_NAME$')
7
+ .setDescription('$COMMAND_DESCRIPTION$')
8
+ .toJSON();
9
+
10
+ /** @param {import('reciple').SlashCommand.ExecuteData} param0 */
11
+ async execute({ interaction }) {
12
+ // Write your code here
13
+ }
14
+ }
15
+
16
+ export default new $MODULE_NAME$();
@@ -0,0 +1,17 @@
1
+ import { BaseModule } from 'reciple';
2
+
3
+ export class $MODULE_NAME$ extends BaseModule {
4
+ async onEnable({ client }: BaseModule.EventData<false>) {
5
+ // Write your code here
6
+ }
7
+
8
+ async onReady({ client }: BaseModule.EventData<true>) {
9
+ // Write your code here
10
+ }
11
+
12
+ async onDisable({ client }: BaseModule.EventData<true>) {
13
+ // Write your code here
14
+ }
15
+ }
16
+
17
+ export default new $MODULE_NAME$();
@@ -0,0 +1,15 @@
1
+ import { ClientEventModule } from "reciple";
2
+
3
+ // @ts-expect-error
4
+ export class $MODULE_NAME$ extends ClientEventModule<'$EVENT_NAME$'> {
5
+ // @ts-expect-error
6
+ event = '$EVENT_NAME$';
7
+ // @ts-expect-error
8
+ once = $EVENT_ONCE$;
9
+
10
+ onEvent(...args) {
11
+ // Write your code here
12
+ }
13
+ }
14
+
15
+ export default new $MODULE_NAME$();
@@ -0,0 +1,15 @@
1
+ import { ContextMenuCommandBuilder, ContextMenuCommandModule, type ContextMenuCommand } from "reciple";
2
+
3
+ export class $MODULE_NAME$ extends ContextMenuCommandModule {
4
+ data = new ContextMenuCommandBuilder()
5
+ .setName('$COMMAND_NAME$')
6
+ // @ts-expect-error
7
+ .setType($COMMAND_CONTEXT_MENU_TYPE$)
8
+ .toJSON();
9
+
10
+ async execute({ interaction }: ContextMenuCommand.ExecuteData) {
11
+ // Write your code here
12
+ }
13
+ }
14
+
15
+ export default new $MODULE_NAME$();
@@ -0,0 +1,16 @@
1
+ import { EventModule } from "reciple";
2
+
3
+ export class $MODULE_NAME$ extends EventModule {
4
+ // @ts-expect-error
5
+ emitter = $EVENT_EMITTER$;
6
+ event = '$EVENT_NAME$';
7
+ // @ts-expect-error
8
+ once = $EVENT_ONCE$;
9
+
10
+ // @ts-expect-error
11
+ onEvent(...args) {
12
+ // Write your code here
13
+ }
14
+ }
15
+
16
+ export default new $MODULE_NAME$();
@@ -0,0 +1,14 @@
1
+ import { MessageCommandBuilder, MessageCommandModule, type MessageCommand } from "reciple";
2
+
3
+ export class $MODULE_NAME$ extends MessageCommandModule {
4
+ data = new MessageCommandBuilder()
5
+ .setName('$COMMAND_NAME$')
6
+ .setDescription('$COMMAND_DESCRIPTION$')
7
+ .toJSON();
8
+
9
+ async execute({ message }: MessageCommand.ExecuteData) {
10
+ // Write your code here
11
+ }
12
+ }
13
+
14
+ export default new $MODULE_NAME$();
@@ -0,0 +1,15 @@
1
+ import { RESTEventModule } from "reciple";
2
+
3
+ // @ts-expect-error
4
+ export class $MODULE_NAME$ extends RESTEventModule<'$EVENT_NAME$'> {
5
+ // @ts-expect-error
6
+ event = '$EVENT_NAME$';
7
+ // @ts-expect-error
8
+ once = $EVENT_ONCE$;
9
+
10
+ onEvent(...args) {
11
+ // Write your code here
12
+ }
13
+ }
14
+
15
+ export default new $MODULE_NAME$();
@@ -0,0 +1,14 @@
1
+ import { SlashCommandBuilder, SlashCommandModule, type SlashCommand } from "reciple";
2
+
3
+ export class $MODULE_NAME$ extends SlashCommandModule {
4
+ data = new SlashCommandBuilder()
5
+ .setName('$COMMAND_NAME$')
6
+ .setDescription('$COMMAND_DESCRIPTION$')
7
+ .toJSON();
8
+
9
+ async execute({ interaction }: SlashCommand.ExecuteData) {
10
+ // Write your code here
11
+ }
12
+ }
13
+
14
+ export default new $MODULE_NAME$();
@@ -0,0 +1,17 @@
1
+ {
2
+ "extends": "@reciple/utils/tsconfig.json",
3
+ "include": [
4
+ "./src/**/*"
5
+ ],
6
+ "compilerOptions": {
7
+ "baseUrl": "./",
8
+ "rootDir": "./src",
9
+ "outDir": "./modules",
10
+ "allowJs": true,
11
+ "jsx": "react-jsx",
12
+ "jsxImportSource": "@reciple/jsx",
13
+ "paths": {
14
+ "@/*": ["./src/*"]
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "extends": "@reciple/utils/tsconfig.json",
3
+ "include": [
4
+ "./src/**/*"
5
+ ],
6
+ "compilerOptions": {
7
+ "baseUrl": "./",
8
+ "rootDir": "./src",
9
+ "outDir": "./modules",
10
+ "allowJs": true,
11
+ "jsx": "react-jsx",
12
+ "jsxImportSource": "@reciple/jsx",
13
+ "paths": {
14
+ "@/*": ["./src/*"]
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,10 @@
1
+ //#region \0@oxc-project+runtime@0.99.0/helpers/decorate.js
2
+ function __decorate(decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ }
8
+
9
+ //#endregion
10
+ export { __decorate };
@@ -0,0 +1,16 @@
1
+ import { CLISubcommand } from "../../classes/cli/CLISubcommand.mjs";
2
+ import { Command } from "commander";
3
+
4
+ //#region src/bin/commands/build.d.ts
5
+ declare class BuildSubcommand extends CLISubcommand {
6
+ subcommand: Command;
7
+ execute(): Promise<void>;
8
+ }
9
+ declare namespace BuildSubcommand {
10
+ interface Flags {
11
+ config?: string;
12
+ }
13
+ }
14
+ //#endregion
15
+ export { BuildSubcommand, BuildSubcommand as default };
16
+ //# sourceMappingURL=build.d.mts.map
@@ -0,0 +1,24 @@
1
+ import { CLISubcommand } from "../../classes/cli/CLISubcommand.mjs";
2
+ import { CLI } from "../../classes/cli/CLI.mjs";
3
+ import { ConfigReader } from "../../classes/cli/ConfigReader.mjs";
4
+ import { Command } from "commander";
5
+ import { build } from "tsdown";
6
+
7
+ //#region src/bin/commands/build.ts
8
+ var BuildSubcommand = class extends CLISubcommand {
9
+ subcommand = new Command("build").description("Build the reciple modules defined in config file").option("-c, --config <path>", "Path to the configuration file");
10
+ async execute() {
11
+ const { build: buildConfig } = await new ConfigReader(this.subcommand.opts().config ?? await ConfigReader.findConfig(process.cwd()) ?? ConfigReader.createConfigFilename("js")).read({ createIfNotExists: false });
12
+ let plugins = buildConfig.plugins ? Array.isArray(buildConfig.plugins) ? buildConfig.plugins : [buildConfig.plugins] : [];
13
+ plugins.push(CLI.createTsdownLogger(this.cli.logger));
14
+ await build({
15
+ ...buildConfig,
16
+ logLevel: "silent",
17
+ plugins
18
+ });
19
+ }
20
+ };
21
+
22
+ //#endregion
23
+ export { BuildSubcommand as default };
24
+ //# sourceMappingURL=build.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.mjs","names":[],"sources":["../../../src/bin/commands/build.ts"],"sourcesContent":["import { Command } from 'commander';\nimport { CLISubcommand } from '../../classes/cli/CLISubcommand.js';\nimport { ConfigReader } from '../../classes/cli/ConfigReader.js';\nimport { build } from 'tsdown';\nimport { CLI } from '../../classes/cli/CLI.js';\n\nexport default class BuildSubcommand extends CLISubcommand {\n public subcommand: Command = new Command('build')\n .description('Build the reciple modules defined in config file')\n .option('-c, --config <path>', 'Path to the configuration file');\n\n public async execute(): Promise<void> {\n const flags = this.subcommand.opts<BuildSubcommand.Flags>();\n\n const configReader = new ConfigReader(\n flags.config\n ?? await ConfigReader.findConfig(process.cwd())\n ?? ConfigReader.createConfigFilename('js')\n );\n\n const { build: buildConfig } = await configReader.read({\n createIfNotExists: false\n });\n\n let plugins = buildConfig.plugins\n ? Array.isArray(buildConfig.plugins)\n ? buildConfig.plugins\n : [buildConfig.plugins]\n : [];\n\n plugins.push(CLI.createTsdownLogger(this.cli.logger));\n\n await build({\n ...buildConfig,\n logLevel: 'silent',\n plugins,\n });\n }\n}\n\nexport namespace BuildSubcommand {\n export interface Flags {\n config?: string;\n }\n}\n"],"mappings":";;;;;;;AAMA,IAAqB,kBAArB,cAA6C,cAAc;CACvD,AAAO,aAAsB,IAAI,QAAQ,QAAQ,CAC5C,YAAY,mDAAmD,CAC/D,OAAO,uBAAuB,iCAAiC;CAEpE,MAAa,UAAyB;EASlC,MAAM,EAAE,OAAO,gBAAgB,MANV,IAAI,aAFX,KAAK,WAAW,MAA6B,CAGjD,UACH,MAAM,aAAa,WAAW,QAAQ,KAAK,CAAC,IAC5C,aAAa,qBAAqB,KAAK,CAC7C,CAEiD,KAAK,EACnD,mBAAmB,OACtB,CAAC;EAEF,IAAI,UAAU,YAAY,UACpB,MAAM,QAAQ,YAAY,QAAQ,GAC9B,YAAY,UACZ,CAAC,YAAY,QAAQ,GACzB,EAAE;AAER,UAAQ,KAAK,IAAI,mBAAmB,KAAK,IAAI,OAAO,CAAC;AAErD,QAAM,MAAM;GACR,GAAG;GACH,UAAU;GACV;GACH,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { CLISubcommand } from "../../classes/cli/CLISubcommand.mjs";
2
+ import { Command } from "commander";
3
+ import { PackageManagerName } from "nypm";
4
+
5
+ //#region src/bin/commands/create.d.ts
6
+ declare class CreateSubcommand extends CLISubcommand {
7
+ subcommand: Command;
8
+ execute(): Promise<void>;
9
+ }
10
+ declare namespace CreateSubcommand {
11
+ interface Flags {
12
+ config?: string;
13
+ token?: string;
14
+ default?: boolean;
15
+ typescript?: boolean;
16
+ packageManager?: PackageManagerName;
17
+ install: boolean;
18
+ build: boolean;
19
+ }
20
+ }
21
+ //#endregion
22
+ export { CreateSubcommand, CreateSubcommand as default };
23
+ //# sourceMappingURL=create.d.mts.map