djs-builder 0.5.41 → 0.6.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 (156) hide show
  1. package/README.md +140 -303
  2. package/function/function.js +236 -0
  3. package/function/log.js +736 -0
  4. package/handler/helper.js +277 -0
  5. package/handler/starter.js +335 -0
  6. package/package.json +10 -42
  7. package/.tsbuildinfo +0 -1
  8. package/dist/discord/builder/components/Buttons.d.ts +0 -22
  9. package/dist/discord/builder/components/Buttons.d.ts.map +0 -1
  10. package/dist/discord/builder/components/Buttons.js +0 -91
  11. package/dist/discord/builder/components/Buttons.js.map +0 -1
  12. package/dist/discord/builder/components/Menus.d.ts +0 -31
  13. package/dist/discord/builder/components/Menus.d.ts.map +0 -1
  14. package/dist/discord/builder/components/Menus.js +0 -82
  15. package/dist/discord/builder/components/Menus.js.map +0 -1
  16. package/dist/discord/builder/permissions/perms.d.ts +0 -6
  17. package/dist/discord/builder/permissions/perms.d.ts.map +0 -1
  18. package/dist/discord/builder/permissions/perms.js +0 -66
  19. package/dist/discord/builder/permissions/perms.js.map +0 -1
  20. package/dist/discord/builder/system/Pagination.d.ts +0 -70
  21. package/dist/discord/builder/system/Pagination.d.ts.map +0 -1
  22. package/dist/discord/builder/system/Pagination.js +0 -227
  23. package/dist/discord/builder/system/Pagination.js.map +0 -1
  24. package/dist/discord/builder/system/collectors.d.ts +0 -27
  25. package/dist/discord/builder/system/collectors.d.ts.map +0 -1
  26. package/dist/discord/builder/system/collectors.js +0 -137
  27. package/dist/discord/builder/system/collectors.js.map +0 -1
  28. package/dist/discord/builder/utils.d.ts +0 -5
  29. package/dist/discord/builder/utils.d.ts.map +0 -1
  30. package/dist/discord/builder/utils.js +0 -10
  31. package/dist/discord/builder/utils.js.map +0 -1
  32. package/dist/discord/events-handler/eventLoader.d.ts +0 -13
  33. package/dist/discord/events-handler/eventLoader.d.ts.map +0 -1
  34. package/dist/discord/events-handler/eventLoader.js +0 -169
  35. package/dist/discord/events-handler/eventLoader.js.map +0 -1
  36. package/dist/discord/events-handler/events.d.ts +0 -8
  37. package/dist/discord/events-handler/events.d.ts.map +0 -1
  38. package/dist/discord/events-handler/events.js +0 -186
  39. package/dist/discord/events-handler/events.js.map +0 -1
  40. package/dist/discord/events-handler/login.d.ts +0 -9
  41. package/dist/discord/events-handler/login.d.ts.map +0 -1
  42. package/dist/discord/events-handler/login.js +0 -273
  43. package/dist/discord/events-handler/login.js.map +0 -1
  44. package/dist/discord/events-handler/prefix-register.d.ts +0 -23
  45. package/dist/discord/events-handler/prefix-register.d.ts.map +0 -1
  46. package/dist/discord/events-handler/prefix-register.js +0 -109
  47. package/dist/discord/events-handler/prefix-register.js.map +0 -1
  48. package/dist/discord/events-handler/prefix-responder.d.ts +0 -5
  49. package/dist/discord/events-handler/prefix-responder.d.ts.map +0 -1
  50. package/dist/discord/events-handler/prefix-responder.js +0 -155
  51. package/dist/discord/events-handler/prefix-responder.js.map +0 -1
  52. package/dist/discord/events-handler/prefixLoader.d.ts +0 -7
  53. package/dist/discord/events-handler/prefixLoader.d.ts.map +0 -1
  54. package/dist/discord/events-handler/prefixLoader.js +0 -74
  55. package/dist/discord/events-handler/prefixLoader.js.map +0 -1
  56. package/dist/discord/events-handler/slash-register.d.ts +0 -4
  57. package/dist/discord/events-handler/slash-register.d.ts.map +0 -1
  58. package/dist/discord/events-handler/slash-register.js +0 -85
  59. package/dist/discord/events-handler/slash-register.js.map +0 -1
  60. package/dist/discord/events-handler/slash-responder.d.ts +0 -3
  61. package/dist/discord/events-handler/slash-responder.d.ts.map +0 -1
  62. package/dist/discord/events-handler/slash-responder.js +0 -112
  63. package/dist/discord/events-handler/slash-responder.js.map +0 -1
  64. package/dist/discord/events-handler/slashLoader.d.ts +0 -7
  65. package/dist/discord/events-handler/slashLoader.d.ts.map +0 -1
  66. package/dist/discord/events-handler/slashLoader.js +0 -94
  67. package/dist/discord/events-handler/slashLoader.js.map +0 -1
  68. package/dist/discord/events-handler/starter.d.ts +0 -6
  69. package/dist/discord/events-handler/starter.d.ts.map +0 -1
  70. package/dist/discord/events-handler/starter.js +0 -85
  71. package/dist/discord/events-handler/starter.js.map +0 -1
  72. package/dist/discord/functions/anticrash.d.ts +0 -3
  73. package/dist/discord/functions/anticrash.d.ts.map +0 -1
  74. package/dist/discord/functions/anticrash.js +0 -55
  75. package/dist/discord/functions/anticrash.js.map +0 -1
  76. package/dist/discord/functions/devLogs.d.ts +0 -2
  77. package/dist/discord/functions/devLogs.d.ts.map +0 -1
  78. package/dist/discord/functions/devLogs.js +0 -137
  79. package/dist/discord/functions/devLogs.js.map +0 -1
  80. package/dist/discord/functions/logger.d.ts +0 -5
  81. package/dist/discord/functions/logger.d.ts.map +0 -1
  82. package/dist/discord/functions/logger.js +0 -57
  83. package/dist/discord/functions/logger.js.map +0 -1
  84. package/dist/discord/functions/mongoDb.d.ts +0 -4
  85. package/dist/discord/functions/mongoDb.d.ts.map +0 -1
  86. package/dist/discord/functions/mongoDb.js +0 -39
  87. package/dist/discord/functions/mongoDb.js.map +0 -1
  88. package/dist/discord/functions/similarity.d.ts +0 -3
  89. package/dist/discord/functions/similarity.d.ts.map +0 -1
  90. package/dist/discord/functions/similarity.js +0 -56
  91. package/dist/discord/functions/similarity.js.map +0 -1
  92. package/dist/discord/functions/terminal.d.ts +0 -2
  93. package/dist/discord/functions/terminal.d.ts.map +0 -1
  94. package/dist/discord/functions/terminal.js +0 -127
  95. package/dist/discord/functions/terminal.js.map +0 -1
  96. package/dist/discord/functions/utils.d.ts +0 -5
  97. package/dist/discord/functions/utils.d.ts.map +0 -1
  98. package/dist/discord/functions/utils.js +0 -11
  99. package/dist/discord/functions/utils.js.map +0 -1
  100. package/dist/discord/functions/versedb.d.ts +0 -3
  101. package/dist/discord/functions/versedb.d.ts.map +0 -1
  102. package/dist/discord/functions/versedb.js +0 -21
  103. package/dist/discord/functions/versedb.js.map +0 -1
  104. package/dist/discord/games/X-O.d.ts +0 -20
  105. package/dist/discord/games/X-O.d.ts.map +0 -1
  106. package/dist/discord/games/X-O.js +0 -166
  107. package/dist/discord/games/X-O.js.map +0 -1
  108. package/dist/discord/games/rps.d.ts +0 -21
  109. package/dist/discord/games/rps.d.ts.map +0 -1
  110. package/dist/discord/games/rps.js +0 -99
  111. package/dist/discord/games/rps.js.map +0 -1
  112. package/dist/discord/types/starter.d.ts +0 -144
  113. package/dist/discord/types/starter.d.ts.map +0 -1
  114. package/dist/discord/types/starter.js +0 -3
  115. package/dist/discord/types/starter.js.map +0 -1
  116. package/dist/discord/types/utils.d.ts +0 -3
  117. package/dist/discord/types/utils.d.ts.map +0 -1
  118. package/dist/discord/types/utils.js +0 -3
  119. package/dist/discord/types/utils.js.map +0 -1
  120. package/dist/discord/utils.d.ts +0 -15
  121. package/dist/discord/utils.d.ts.map +0 -1
  122. package/dist/discord/utils.js +0 -41
  123. package/dist/discord/utils.js.map +0 -1
  124. package/dist/index.d.ts +0 -4
  125. package/dist/index.d.ts.map +0 -1
  126. package/dist/index.js +0 -71
  127. package/dist/index.js.map +0 -1
  128. package/lib/discord/builder/components/Buttons.ts +0 -123
  129. package/lib/discord/builder/components/Menus.ts +0 -106
  130. package/lib/discord/builder/permissions/perms.ts +0 -66
  131. package/lib/discord/builder/system/Pagination.ts +0 -323
  132. package/lib/discord/builder/system/collectors.ts +0 -197
  133. package/lib/discord/builder/utils.ts +0 -9
  134. package/lib/discord/events-handler/eventLoader.ts +0 -166
  135. package/lib/discord/events-handler/events.ts +0 -160
  136. package/lib/discord/events-handler/login.ts +0 -265
  137. package/lib/discord/events-handler/prefix-register.ts +0 -117
  138. package/lib/discord/events-handler/prefix-responder.ts +0 -176
  139. package/lib/discord/events-handler/prefixLoader.ts +0 -83
  140. package/lib/discord/events-handler/slash-register.ts +0 -81
  141. package/lib/discord/events-handler/slash-responder.ts +0 -136
  142. package/lib/discord/events-handler/slashLoader.ts +0 -104
  143. package/lib/discord/events-handler/starter.ts +0 -85
  144. package/lib/discord/functions/anticrash.ts +0 -60
  145. package/lib/discord/functions/devLogs.ts +0 -128
  146. package/lib/discord/functions/logger.ts +0 -58
  147. package/lib/discord/functions/mongoDb.ts +0 -38
  148. package/lib/discord/functions/similarity.ts +0 -70
  149. package/lib/discord/functions/terminal.ts +0 -162
  150. package/lib/discord/functions/utils.ts +0 -4
  151. package/lib/discord/functions/versedb.ts +0 -17
  152. package/lib/discord/types/starter.ts +0 -158
  153. package/lib/discord/types/utils.ts +0 -2
  154. package/lib/discord/utils.ts +0 -17
  155. package/lib/index.ts +0 -37
  156. package/tsconfig.json +0 -21
@@ -1 +0,0 @@
1
- {"version":3,"file":"similarity.js","sourceRoot":"","sources":["../../../lib/discord/functions/similarity.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function terminalLogs(client: any, bot: any): Promise<void>;
2
- //# sourceMappingURL=terminal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/terminal.ts"],"names":[],"mappings":"AAoBA,wBAAsB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CA6IvE"}
@@ -1,127 +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.terminalLogs = terminalLogs;
7
- const colorette_1 = require("colorette");
8
- const cli_table_1 = __importDefault(require("cli-table"));
9
- const fs_1 = __importDefault(require("fs"));
10
- const path_1 = __importDefault(require("path"));
11
- const figlet_1 = __importDefault(require("figlet"));
12
- async function showLoadingBar(duration) {
13
- const steps = [15, 30, 70, 85, 95, 100];
14
- const interval = duration / steps.length;
15
- for (const step of steps) {
16
- process.stdout.write(`\r${(0, colorette_1.cyanBright)('Loading... ')}${'█'.repeat(step / 10)}${'░'.repeat(10 - step / 10)} ${step}%`);
17
- await new Promise(resolve => setTimeout(resolve, interval));
18
- }
19
- process.stdout.write('\r'.padEnd(50) + '\r');
20
- }
21
- async function terminalLogs(client, bot) {
22
- const { user, prefixSize = 0, slashSize = 0, eventSize = 0 } = client;
23
- const totalCommands = slashSize + prefixSize;
24
- const totalGuilds = client.guilds.cache.size;
25
- const totalMembers = client.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0);
26
- function getProjectSize(dir) {
27
- let size = 0;
28
- const files = fs_1.default.readdirSync(dir, { withFileTypes: true });
29
- files.forEach(file => {
30
- const filePath = path_1.default.join(dir, file.name);
31
- if (file.isDirectory() && file.name !== 'node_modules') {
32
- size += getProjectSize(filePath);
33
- }
34
- else if (file.isFile()) {
35
- size += fs_1.default.statSync(filePath).size;
36
- }
37
- });
38
- return size;
39
- }
40
- function findProjectRoot() {
41
- let currentDir = __dirname;
42
- while (!fs_1.default.existsSync(path_1.default.join(currentDir, 'package.json'))) {
43
- currentDir = path_1.default.dirname(currentDir);
44
- }
45
- return currentDir;
46
- }
47
- const projectPath = findProjectRoot();
48
- const projectSize = getProjectSize(projectPath);
49
- await showLoadingBar(3000);
50
- const colors = [
51
- '\x1b[34m', // Navy Blue
52
- '\x1b[36m', // Light Blue
53
- '\x1b[90m', // Dark Gray
54
- '\x1b[35m' // Magenta
55
- ];
56
- const reset = '\x1b[0m'; // Reset color code
57
- function printFigletText(text, font, colorArray, width, padding = 0, verticalPadding = 0) {
58
- // @ts-ignore
59
- figlet_1.default.text(text, { font, width }, (err, data) => {
60
- if (err) {
61
- console.log('Something went wrong...');
62
- console.dir(err);
63
- return;
64
- }
65
- const lines = data?.split('\n');
66
- const coloredLines = lines?.map((line, index) => {
67
- const color = colorArray[index % colorArray.length];
68
- const paddedLine = ' '.repeat(padding) + line;
69
- return `${color}${paddedLine}${reset}`;
70
- });
71
- const validVerticalPadding = Math.max(verticalPadding, 0);
72
- const outputLines = Array(validVerticalPadding).fill('').concat(coloredLines).join('\n');
73
- console.log(outputLines);
74
- });
75
- }
76
- const secondText = 'djs-builder';
77
- const secondFont = 'Small Slant';
78
- const secondColor = colors[2];
79
- const horizontalPadding = 50;
80
- const verticalPadding = 2000;
81
- if (bot.logs.waterMark) {
82
- printFigletText(secondText, secondFont, [secondColor], 50, horizontalPadding, -verticalPadding);
83
- printFigletText(user.username, '3D-ASCII', colors, 100);
84
- }
85
- await new Promise(resolve => setTimeout(resolve, 2000));
86
- const botStatesTable = new cli_table_1.default({
87
- head: [(0, colorette_1.blue)('# Bot States')],
88
- colWidths: [30, 40],
89
- style: { 'padding-left': 1, 'padding-right': 1 }
90
- });
91
- botStatesTable.push([(0, colorette_1.yellowBright)('Bot Name'), user.username], [(0, colorette_1.greenBright)('Prefix Count'), prefixSize], [(0, colorette_1.red)('Slash Command Count'), slashSize], [(0, colorette_1.cyanBright)('Total Commands'), totalCommands], [(0, colorette_1.magentaBright)('Event Count'), eventSize]);
92
- const botInfoTable = new cli_table_1.default({
93
- head: [(0, colorette_1.blue)('# Bot Info')],
94
- colWidths: [30, 50],
95
- style: { 'padding-left': 1, 'padding-right': 1 }
96
- });
97
- if (client.presence?.status) {
98
- botInfoTable.push([(0, colorette_1.yellowBright)('Status'), client.presence.status]);
99
- }
100
- if (bot.Status?.activities && bot.Status.activities.length > 0) {
101
- botInfoTable.push([(0, colorette_1.cyanBright)('Activity'), bot.Status.activities[0]]);
102
- }
103
- if (bot.BotInfo?.botInvite) {
104
- botInfoTable.push([(0, colorette_1.cyanBright)('Bot Invite'), bot.BotInfo.botInvite]);
105
- }
106
- botInfoTable.push([(0, colorette_1.red)('Guilds Count'), totalGuilds], [(0, colorette_1.redBright)('Members Count'), totalMembers]);
107
- if (bot.Database?.verse) {
108
- botInfoTable.push([(0, colorette_1.gray)('Bot Database'), 'VerseDb']);
109
- }
110
- else if (bot.Database?.mongo) {
111
- botInfoTable.push([(0, colorette_1.greenBright)('Bot Database'), 'MongoDb']);
112
- }
113
- botInfoTable.push([(0, colorette_1.redBright)('Bot Size'), `${(projectSize / (1024 * 1024)).toFixed(2)} MB`]);
114
- if (client.user?.displayAvatarURL()) {
115
- botInfoTable.push([(0, colorette_1.blueBright)('AvatarURL'), client.user.displayAvatarURL()]);
116
- }
117
- if (bot.BotInfo?.ownerId) {
118
- botInfoTable.push([(0, colorette_1.cyan)('Owner'), bot.BotInfo.ownerId]);
119
- }
120
- if (client.readyTimestamp) {
121
- const loggedInAt = new Date(client.readyTimestamp).toLocaleString();
122
- botInfoTable.push([(0, colorette_1.yellowBright)('Logged In At'), loggedInAt]);
123
- }
124
- console.log(`\n${(0, colorette_1.blueBright)('Bot States')}\n${botStatesTable.toString()}\n`);
125
- console.log(`${(0, colorette_1.blueBright)('Bot Info')}\n${botInfoTable.toString()}\n`);
126
- }
127
- //# sourceMappingURL=terminal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../../lib/discord/functions/terminal.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { getSimilarCommands } from './similarity';
2
- import { mongoConnect, getDb } from './mongoDb';
3
- import { verseConnect } from './versedb';
4
- export { getSimilarCommands, mongoConnect, getDb, verseConnect };
5
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.verseConnect = exports.getDb = exports.mongoConnect = exports.getSimilarCommands = void 0;
4
- const similarity_1 = require("./similarity");
5
- Object.defineProperty(exports, "getSimilarCommands", { enumerable: true, get: function () { return similarity_1.getSimilarCommands; } });
6
- const mongoDb_1 = require("./mongoDb");
7
- Object.defineProperty(exports, "mongoConnect", { enumerable: true, get: function () { return mongoDb_1.mongoConnect; } });
8
- Object.defineProperty(exports, "getDb", { enumerable: true, get: function () { return mongoDb_1.getDb; } });
9
- const versedb_1 = require("./versedb");
10
- Object.defineProperty(exports, "verseConnect", { enumerable: true, get: function () { return versedb_1.verseConnect; } });
11
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../lib/discord/functions/utils.ts"],"names":[],"mappings":";;;AAAA,6CAAkD;AAGzC,mGAHA,+BAAkB,OAGA;AAF3B,uCAAgD;AAEnB,6FAFpB,sBAAY,OAEoB;AAAE,sFAFpB,eAAK,OAEoB;AADhD,uCAAwC;AACU,6FADzC,sBAAY,OACyC"}
@@ -1,3 +0,0 @@
1
- import { LocalDb } from "../types/starter";
2
- export declare function verseConnect(options: LocalDb): Promise<import("verse.db").connect>;
3
- //# sourceMappingURL=versedb.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"versedb.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/versedb.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,wBAAsB,YAAY,CAAC,OAAO,EAAE,OAAO,uCAalD"}
@@ -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.verseConnect = verseConnect;
7
- const verse_db_1 = __importDefault(require("verse.db"));
8
- async function verseConnect(options) {
9
- const connection = {
10
- adapter: options.adapterType,
11
- dataPath: options.path,
12
- secure: { enable: options.secure?.enable, secret: options.secure?.secret || 'djs-builder' },
13
- devLogs: {
14
- enable: options.dev.enable,
15
- path: options.dev.logsPath || ''
16
- }
17
- };
18
- const db = new verse_db_1.default.connect(connection);
19
- return db;
20
- }
21
- //# sourceMappingURL=versedb.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"versedb.js","sourceRoot":"","sources":["../../../lib/discord/functions/versedb.ts"],"names":[],"mappings":";;;;;AAGA,oCAaC;AAhBD,wDAA+B;AAGxB,KAAK,UAAU,YAAY,CAAC,OAAgB;IAC/C,MAAM,UAAU,GAAG;QACf,OAAO,EAAE,OAAO,CAAC,WAAW;QAC5B,QAAQ,EAAE,OAAO,CAAC,IAAI;QACtB,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,aAAa,EAAE;QAC3F,OAAO,EAAE;YACL,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM;YAC1B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE;SACnC;KACJ,CAAC;IAEF,MAAM,EAAE,GAAG,IAAI,kBAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAC1C,OAAO,EAAE,CAAC;AACd,CAAC"}
@@ -1,20 +0,0 @@
1
- import { CommandInteraction, Message } from 'discord.js';
2
- type Interaction = CommandInteraction | Message;
3
- export declare class TicTacToe {
4
- private board;
5
- private currentPlayer;
6
- private gameEnded;
7
- private createButton;
8
- players({ interaction, challengerId, }: {
9
- interaction: Interaction;
10
- challengerId: string;
11
- }): Promise<void>;
12
- private updateGameMessage;
13
- private drawBoard;
14
- private drawSymbol;
15
- private checkWinner;
16
- private isBoardFull;
17
- private displayResults;
18
- }
19
- export {};
20
- //# sourceMappingURL=X-O.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"X-O.d.ts","sourceRoot":"","sources":["../../../lib/discord/games/X-O.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,kBAAkB,EAAE,OAAO,EAAkC,MAAM,YAAY,CAAC;AAGxI,KAAK,WAAW,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEhD,qBAAa,SAAS;IAClB,OAAO,CAAC,KAAK,CAIX;IACF,OAAO,CAAC,aAAa,CAAO;IAC5B,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,YAAY;IAQP,OAAO,CAAC,EACjB,WAAW,EACX,YAAY,GACf,EAAE;QACC,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,IAAI,CAAC;YAsFH,iBAAiB;YAuBjB,SAAS;IAgCvB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,WAAW;IAqBnB,OAAO,CAAC,WAAW;YAIL,cAAc;CAqB/B"}
@@ -1,166 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TicTacToe = void 0;
4
- const discord_js_1 = require("discord.js");
5
- const canvas_1 = require("@napi-rs/canvas");
6
- class TicTacToe {
7
- board = [
8
- ['', '', ''],
9
- ['', '', ''],
10
- ['', '', ''],
11
- ];
12
- currentPlayer = 'X';
13
- gameEnded = false;
14
- createButton(cellId) {
15
- return new discord_js_1.ButtonBuilder()
16
- .setCustomId(cellId)
17
- .setLabel(' ')
18
- .setStyle(discord_js_1.ButtonStyle.Primary)
19
- .setDisabled(this.gameEnded);
20
- }
21
- async players({ interaction, challengerId, }) {
22
- const userId = 'user' in interaction ? interaction.user.id : interaction.author.id;
23
- const gameEmbed = new discord_js_1.EmbedBuilder()
24
- .setTitle('Tic-Tac-Toe')
25
- .setDescription(`<@${userId}> (**X**) vs. <@${challengerId}> (**O**)\nIt's <@${userId}>'s turn!`)
26
- .setColor('DarkNavy');
27
- const row1 = new discord_js_1.ActionRowBuilder().addComponents(this.createButton('0-0'), this.createButton('0-1'), this.createButton('0-2'));
28
- const row2 = new discord_js_1.ActionRowBuilder().addComponents(this.createButton('1-0'), this.createButton('1-1'), this.createButton('1-2'));
29
- const row3 = new discord_js_1.ActionRowBuilder().addComponents(this.createButton('2-0'), this.createButton('2-1'), this.createButton('2-2'));
30
- const canvasBuffer = await this.drawBoard();
31
- const gameMessage = 'user' in interaction
32
- ? await interaction.reply({
33
- embeds: [gameEmbed],
34
- files: [new discord_js_1.AttachmentBuilder(canvasBuffer, { name: 'tictactoe.png' })],
35
- components: [row1, row2, row3],
36
- fetchReply: true,
37
- })
38
- : await interaction.reply({
39
- embeds: [gameEmbed],
40
- files: [new discord_js_1.AttachmentBuilder(canvasBuffer, { name: 'tictactoe.png' })],
41
- components: [row1, row2, row3],
42
- });
43
- const filter = (btnInteraction) => {
44
- return [userId, challengerId].includes(btnInteraction.user.id) && !this.gameEnded;
45
- };
46
- const collector = gameMessage.createMessageComponentCollector({
47
- filter,
48
- time: 60000,
49
- });
50
- collector.on('collect', async (btnInteraction) => {
51
- const [row, col] = btnInteraction.customId.split('-').map(Number);
52
- if (this.board[row][col] !== '') {
53
- await btnInteraction.reply({ content: 'This cell is already taken!', ephemeral: true });
54
- return;
55
- }
56
- this.board[row][col] = this.currentPlayer;
57
- const player = this.currentPlayer === 'X' ? userId : challengerId;
58
- this.currentPlayer = this.currentPlayer === 'X' ? 'O' : 'X';
59
- const winner = this.checkWinner();
60
- if (winner || this.isBoardFull()) {
61
- this.gameEnded = true;
62
- collector.stop();
63
- await this.displayResults(interaction, winner, userId, challengerId);
64
- }
65
- else {
66
- await this.updateGameMessage(btnInteraction, userId, challengerId, row1, row2, row3);
67
- }
68
- });
69
- collector.on('end', async (_collected, reason) => {
70
- if (reason === 'time' && !this.gameEnded) {
71
- const endMessage = 'The game has ended due to inactivity!';
72
- if ('editReply' in interaction) {
73
- await interaction.editReply({ content: endMessage, components: [] });
74
- }
75
- else {
76
- await interaction.channel?.send({ content: endMessage });
77
- }
78
- }
79
- });
80
- }
81
- async updateGameMessage(btnInteraction, userId, challengerId, row1, row2, row3) {
82
- const canvasBuffer = await this.drawBoard();
83
- const nextPlayer = this.currentPlayer === 'X' ? userId : challengerId;
84
- const updatedEmbed = new discord_js_1.EmbedBuilder()
85
- .setTitle('Tic-Tac-Toe')
86
- .setDescription(`It's <@${nextPlayer}>'s turn!`)
87
- .setColor('DarkNavy');
88
- await btnInteraction.update({
89
- embeds: [updatedEmbed],
90
- files: [new discord_js_1.AttachmentBuilder(canvasBuffer, { name: 'tictactoe.png' })],
91
- components: [row1, row2, row3],
92
- });
93
- }
94
- async drawBoard() {
95
- const canvas = (0, canvas_1.createCanvas)(300, 300);
96
- const ctx = canvas.getContext('2d');
97
- ctx.strokeStyle = '#000000';
98
- ctx.lineWidth = 5;
99
- ctx.beginPath();
100
- ctx.moveTo(0, 100);
101
- ctx.lineTo(300, 100);
102
- ctx.moveTo(0, 200);
103
- ctx.lineTo(300, 200);
104
- ctx.stroke();
105
- ctx.moveTo(100, 0);
106
- ctx.lineTo(100, 300);
107
- ctx.moveTo(200, 0);
108
- ctx.lineTo(200, 300);
109
- ctx.stroke();
110
- for (let row = 0; row < 3; row++) {
111
- for (let col = 0; col < 3; col++) {
112
- const symbol = this.board[row][col];
113
- if (symbol) {
114
- this.drawSymbol(ctx, symbol, row, col);
115
- }
116
- }
117
- }
118
- return canvas.toBuffer('image/png');
119
- }
120
- drawSymbol(ctx, symbol, row, col) {
121
- ctx.font = '80px Arial';
122
- ctx.textAlign = 'center';
123
- ctx.textBaseline = 'middle';
124
- const x = col * 100 + 50;
125
- const y = row * 100 + 50;
126
- ctx.fillText(symbol, x, y);
127
- }
128
- checkWinner() {
129
- const winningPatterns = [
130
- [[0, 0], [0, 1], [0, 2]],
131
- [[1, 0], [1, 1], [1, 2]],
132
- [[2, 0], [2, 1], [2, 2]],
133
- [[0, 0], [1, 0], [2, 0]],
134
- [[0, 1], [1, 1], [2, 1]],
135
- [[0, 2], [1, 2], [2, 2]],
136
- [[0, 0], [1, 1], [2, 2]],
137
- [[0, 2], [1, 1], [2, 0]],
138
- ];
139
- for (const pattern of winningPatterns) {
140
- const [a, b, c] = pattern;
141
- if (this.board[a[0]][a[1]] && this.board[a[0]][a[1]] === this.board[b[0]][b[1]] && this.board[a[0]][a[1]] === this.board[c[0]][c[1]]) {
142
- return this.board[a[0]][a[1]];
143
- }
144
- }
145
- return null;
146
- }
147
- isBoardFull() {
148
- return this.board.flat().every(cell => cell !== '');
149
- }
150
- async displayResults(interaction, winner, userId, challengerId) {
151
- const resultEmbed = new discord_js_1.EmbedBuilder()
152
- .setTitle('Tic-Tac-Toe Results')
153
- .setDescription(winner
154
- ? `<@${winner}> wins!\n<@${userId}> vs. <@${challengerId}>`
155
- : "It's a tie!\n<@${userId}> vs. <@${challengerId}>")
156
- .setColor('DarkNavy');
157
- if ('editReply' in interaction) {
158
- await interaction.editReply({ embeds: [resultEmbed], components: [] });
159
- }
160
- else {
161
- await interaction.channel?.send({ embeds: [resultEmbed], components: [] });
162
- }
163
- }
164
- }
165
- exports.TicTacToe = TicTacToe;
166
- //# sourceMappingURL=X-O.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"X-O.js","sourceRoot":"","sources":["../../../lib/discord/games/X-O.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- import { CommandInteraction, Message } from 'discord.js';
2
- type Interaction = CommandInteraction | Message;
3
- export declare class RPS {
4
- private playerChoices;
5
- private resultData;
6
- players({ interaction, challengerId, }: {
7
- interaction: Interaction;
8
- challengerId: string;
9
- }): Promise<void>;
10
- private displayResults;
11
- private getResult;
12
- results(): {
13
- userId: string;
14
- challengerId: string;
15
- results: {
16
- [key: string]: boolean;
17
- };
18
- } | null;
19
- }
20
- export {};
21
- //# sourceMappingURL=rps.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rps.d.ts","sourceRoot":"","sources":["../../../lib/discord/games/rps.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,kBAAkB,EAClB,OAAO,EAEV,MAAM,YAAY,CAAC;AAEpB,KAAK,WAAW,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEhD,qBAAa,GAAG;IACZ,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,UAAU,CAA8F;IAEnG,OAAO,CAAC,EACjB,WAAW,EACX,YAAY,GACf,EAAE;QACC,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,IAAI,CAAC;YA+DH,cAAc;IA6B5B,OAAO,CAAC,SAAS;IAYV,OAAO;;;;;;;CAUjB"}
@@ -1,99 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RPS = void 0;
4
- const discord_js_1 = require("discord.js");
5
- class RPS {
6
- playerChoices = new Map();
7
- resultData = null;
8
- async players({ interaction, challengerId, }) {
9
- const userId = 'user' in interaction ? interaction.user.id : interaction.author.id;
10
- const duelEmbed = new discord_js_1.EmbedBuilder()
11
- .setTitle('Rock-Paper-Scissors Duel!')
12
- .setDescription(`<@${challengerId}>, you have been challenged to a duel of Rock-Paper-Scissors by <@${userId}>. Make your choice!`)
13
- .setColor('DarkNavy');
14
- const row = new discord_js_1.ActionRowBuilder().addComponents(new discord_js_1.ButtonBuilder().setCustomId('rock').setLabel('🪨 Rock').setStyle(discord_js_1.ButtonStyle.Primary), new discord_js_1.ButtonBuilder().setCustomId('paper').setLabel('📄 Paper').setStyle(discord_js_1.ButtonStyle.Primary), new discord_js_1.ButtonBuilder().setCustomId('scissors').setLabel('✂️ Scissors').setStyle(discord_js_1.ButtonStyle.Primary));
15
- const duelMessage = 'user' in interaction
16
- ? await interaction.reply({
17
- embeds: [duelEmbed],
18
- components: [row],
19
- fetchReply: true,
20
- ephemeral: false,
21
- })
22
- : await interaction.reply({ embeds: [duelEmbed], components: [row] });
23
- const filter = (btnInteraction) => {
24
- return [userId, challengerId].includes(btnInteraction.user.id);
25
- };
26
- const collector = duelMessage.createMessageComponentCollector({
27
- filter,
28
- time: 60000,
29
- });
30
- collector.on('collect', async (btnInteraction) => {
31
- const playerId = btnInteraction.user.id;
32
- const playerChoice = btnInteraction.customId;
33
- if (!this.playerChoices.has(playerId)) {
34
- this.playerChoices.set(playerId, playerChoice);
35
- await btnInteraction.reply({ content: `You chose ${playerChoice}`, ephemeral: true });
36
- if (this.playerChoices.size === 2) {
37
- collector.stop();
38
- this.displayResults(interaction, userId, challengerId);
39
- }
40
- }
41
- });
42
- collector.on('end', async (_collected, reason) => {
43
- if (reason === 'time') {
44
- const endMessage = `The duel has expired. <@${challengerId}> did not respond in time!`;
45
- if ('editReply' in interaction) {
46
- await interaction.editReply({ content: endMessage, components: [] });
47
- }
48
- else {
49
- await interaction.channel?.send({ content: endMessage });
50
- }
51
- }
52
- });
53
- }
54
- async displayResults(interaction, userId, challengerId) {
55
- const userChoice = this.playerChoices.get(userId);
56
- const challengerChoice = this.playerChoices.get(challengerId);
57
- const result = this.getResult(userChoice, challengerChoice);
58
- this.resultData = {
59
- userId,
60
- challengerId,
61
- results: {
62
- [userId]: result === userId,
63
- [challengerId]: result === challengerId,
64
- },
65
- };
66
- const resultEmbed = new discord_js_1.EmbedBuilder()
67
- .setTitle('Rock-Paper-Scissors Results')
68
- .setDescription(`<@${userId}> chose **${userChoice}**.\n<@${challengerId}> chose **${challengerChoice}**.\n\n**${result}**`)
69
- .setColor('DarkNavy');
70
- if ('editReply' in interaction) {
71
- await interaction.editReply({ embeds: [resultEmbed], components: [] });
72
- }
73
- else {
74
- await interaction.channel?.send({ embeds: [resultEmbed], components: [] });
75
- }
76
- }
77
- getResult(userChoice, challengerChoice) {
78
- if (userChoice === challengerChoice)
79
- return "It's a tie!";
80
- if ((userChoice === 'rock' && challengerChoice === 'scissors') ||
81
- (userChoice === 'paper' && challengerChoice === 'rock') ||
82
- (userChoice === 'scissors' && challengerChoice === 'paper')) {
83
- return userChoice ? userChoice : "";
84
- }
85
- return challengerChoice ? challengerChoice : "";
86
- }
87
- results() {
88
- if (this.resultData) {
89
- return {
90
- userId: this.resultData.userId,
91
- challengerId: this.resultData.challengerId,
92
- results: this.resultData.results,
93
- };
94
- }
95
- return null;
96
- }
97
- }
98
- exports.RPS = RPS;
99
- //# sourceMappingURL=rps.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rps.js","sourceRoot":"","sources":["../../../lib/discord/games/rps.ts"],"names":[],"mappings":"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"}