@jubbio/core 1.3.2 → 1.3.4

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 (130) hide show
  1. package/dist/Client.js +50 -10
  2. package/dist/rest/REST.d.ts +1 -0
  3. package/dist/rest/REST.js +1 -1
  4. package/dist/structures/Channel.d.ts +1 -1
  5. package/dist/structures/Channel.js +11 -4
  6. package/dist/structures/Guild.d.ts +1 -1
  7. package/dist/structures/Guild.js +7 -3
  8. package/dist/structures/Message.d.ts +2 -0
  9. package/dist/structures/Message.js +13 -33
  10. package/package.json +4 -14
  11. package/dist/cjs/Client.d.ts +0 -157
  12. package/dist/cjs/Client.js +0 -640
  13. package/dist/cjs/builders/ActionRowBuilder.d.ts +0 -53
  14. package/dist/cjs/builders/ActionRowBuilder.js +0 -68
  15. package/dist/cjs/builders/ButtonBuilder.d.ts +0 -77
  16. package/dist/cjs/builders/ButtonBuilder.js +0 -96
  17. package/dist/cjs/builders/EmbedBuilder.d.ts +0 -157
  18. package/dist/cjs/builders/EmbedBuilder.js +0 -208
  19. package/dist/cjs/builders/ModalBuilder.d.ts +0 -122
  20. package/dist/cjs/builders/ModalBuilder.js +0 -162
  21. package/dist/cjs/builders/SelectMenuBuilder.d.ts +0 -123
  22. package/dist/cjs/builders/SelectMenuBuilder.js +0 -165
  23. package/dist/cjs/builders/SlashCommandBuilder.d.ts +0 -197
  24. package/dist/cjs/builders/SlashCommandBuilder.js +0 -324
  25. package/dist/cjs/builders/index.d.ts +0 -9
  26. package/dist/cjs/builders/index.js +0 -26
  27. package/dist/cjs/enums.d.ts +0 -191
  28. package/dist/cjs/enums.js +0 -211
  29. package/dist/cjs/index.d.ts +0 -25
  30. package/dist/cjs/index.js +0 -130
  31. package/dist/cjs/managers/BaseManager.d.ts +0 -69
  32. package/dist/cjs/managers/BaseManager.js +0 -106
  33. package/dist/cjs/managers/ChannelManager.d.ts +0 -95
  34. package/dist/cjs/managers/ChannelManager.js +0 -205
  35. package/dist/cjs/managers/GuildMemberManager.d.ts +0 -74
  36. package/dist/cjs/managers/GuildMemberManager.js +0 -157
  37. package/dist/cjs/managers/RoleManager.d.ts +0 -84
  38. package/dist/cjs/managers/RoleManager.js +0 -207
  39. package/dist/cjs/managers/index.d.ts +0 -7
  40. package/dist/cjs/managers/index.js +0 -24
  41. package/dist/cjs/rest/REST.d.ts +0 -527
  42. package/dist/cjs/rest/REST.js +0 -904
  43. package/dist/cjs/rest/index.d.ts +0 -1
  44. package/dist/cjs/rest/index.js +0 -18
  45. package/dist/cjs/sharding/ShardingManager.d.ts +0 -179
  46. package/dist/cjs/sharding/ShardingManager.js +0 -375
  47. package/dist/cjs/sharding/index.d.ts +0 -4
  48. package/dist/cjs/sharding/index.js +0 -21
  49. package/dist/cjs/structures/Channel.d.ts +0 -122
  50. package/dist/cjs/structures/Channel.js +0 -240
  51. package/dist/cjs/structures/Collection.d.ts +0 -53
  52. package/dist/cjs/structures/Collection.js +0 -115
  53. package/dist/cjs/structures/Guild.d.ts +0 -59
  54. package/dist/cjs/structures/Guild.js +0 -94
  55. package/dist/cjs/structures/GuildMember.d.ts +0 -174
  56. package/dist/cjs/structures/GuildMember.js +0 -311
  57. package/dist/cjs/structures/Interaction.d.ts +0 -245
  58. package/dist/cjs/structures/Interaction.js +0 -450
  59. package/dist/cjs/structures/Message.d.ts +0 -98
  60. package/dist/cjs/structures/Message.js +0 -195
  61. package/dist/cjs/structures/User.d.ts +0 -37
  62. package/dist/cjs/structures/User.js +0 -65
  63. package/dist/cjs/structures/index.d.ts +0 -7
  64. package/dist/cjs/structures/index.js +0 -25
  65. package/dist/cjs/structures.d.ts +0 -1
  66. package/dist/cjs/structures.js +0 -19
  67. package/dist/cjs/types.d.ts +0 -255
  68. package/dist/cjs/types.js +0 -3
  69. package/dist/cjs/utils/BitField.d.ts +0 -66
  70. package/dist/cjs/utils/BitField.js +0 -138
  71. package/dist/cjs/utils/Collection.d.ts +0 -116
  72. package/dist/cjs/utils/Collection.js +0 -265
  73. package/dist/cjs/utils/Collector.d.ts +0 -152
  74. package/dist/cjs/utils/Collector.js +0 -314
  75. package/dist/cjs/utils/DataResolver.d.ts +0 -61
  76. package/dist/cjs/utils/DataResolver.js +0 -146
  77. package/dist/cjs/utils/Formatters.d.ts +0 -145
  78. package/dist/cjs/utils/Formatters.js +0 -213
  79. package/dist/cjs/utils/IntentsBitField.d.ts +0 -85
  80. package/dist/cjs/utils/IntentsBitField.js +0 -99
  81. package/dist/cjs/utils/Partials.d.ts +0 -104
  82. package/dist/cjs/utils/Partials.js +0 -148
  83. package/dist/cjs/utils/PermissionsBitField.d.ts +0 -118
  84. package/dist/cjs/utils/PermissionsBitField.js +0 -145
  85. package/dist/cjs/utils/SnowflakeUtil.d.ts +0 -63
  86. package/dist/cjs/utils/SnowflakeUtil.js +0 -93
  87. package/dist/cjs/utils/Sweepers.d.ts +0 -119
  88. package/dist/cjs/utils/Sweepers.js +0 -249
  89. package/dist/cjs/utils/index.d.ts +0 -13
  90. package/dist/cjs/utils/index.js +0 -30
  91. package/dist/esm/Client.js +0 -634
  92. package/dist/esm/builders/ActionRowBuilder.js +0 -64
  93. package/dist/esm/builders/ButtonBuilder.js +0 -92
  94. package/dist/esm/builders/EmbedBuilder.js +0 -204
  95. package/dist/esm/builders/ModalBuilder.js +0 -157
  96. package/dist/esm/builders/SelectMenuBuilder.js +0 -161
  97. package/dist/esm/builders/SlashCommandBuilder.js +0 -311
  98. package/dist/esm/builders/index.js +0 -10
  99. package/dist/esm/enums.js +0 -208
  100. package/dist/esm/index.js +0 -34
  101. package/dist/esm/managers/BaseManager.js +0 -100
  102. package/dist/esm/managers/ChannelManager.js +0 -200
  103. package/dist/esm/managers/GuildMemberManager.js +0 -153
  104. package/dist/esm/managers/RoleManager.js +0 -203
  105. package/dist/esm/managers/index.js +0 -8
  106. package/dist/esm/rest/REST.js +0 -900
  107. package/dist/esm/rest/index.js +0 -2
  108. package/dist/esm/sharding/ShardingManager.js +0 -366
  109. package/dist/esm/sharding/index.js +0 -5
  110. package/dist/esm/structures/Channel.js +0 -232
  111. package/dist/esm/structures/Collection.js +0 -111
  112. package/dist/esm/structures/Guild.js +0 -90
  113. package/dist/esm/structures/GuildMember.js +0 -306
  114. package/dist/esm/structures/Interaction.js +0 -438
  115. package/dist/esm/structures/Message.js +0 -191
  116. package/dist/esm/structures/User.js +0 -61
  117. package/dist/esm/structures/index.js +0 -9
  118. package/dist/esm/structures.js +0 -3
  119. package/dist/esm/types.js +0 -2
  120. package/dist/esm/utils/BitField.js +0 -134
  121. package/dist/esm/utils/Collection.js +0 -261
  122. package/dist/esm/utils/Collector.js +0 -305
  123. package/dist/esm/utils/DataResolver.js +0 -142
  124. package/dist/esm/utils/Formatters.js +0 -191
  125. package/dist/esm/utils/IntentsBitField.js +0 -93
  126. package/dist/esm/utils/Partials.js +0 -137
  127. package/dist/esm/utils/PermissionsBitField.js +0 -141
  128. package/dist/esm/utils/SnowflakeUtil.js +0 -89
  129. package/dist/esm/utils/Sweepers.js +0 -245
  130. package/dist/esm/utils/index.js +0 -14
@@ -1,146 +0,0 @@
1
- "use strict";
2
- /**
3
- * Data resolver utilities for handling various data types
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DataResolver = void 0;
7
- const promises_1 = require("fs/promises");
8
- const path_1 = require("path");
9
- /**
10
- * Resolves various data types to usable formats
11
- */
12
- class DataResolver {
13
- /**
14
- * Resolves a BufferResolvable to a Buffer
15
- * @param resource The resource to resolve
16
- */
17
- static async resolveBuffer(resource) {
18
- if (Buffer.isBuffer(resource))
19
- return resource;
20
- if (typeof resource === 'string') {
21
- // Check if it's a file path
22
- if (resource.startsWith('/') || resource.startsWith('./') || resource.startsWith('../') || /^[a-zA-Z]:/.test(resource)) {
23
- return (0, promises_1.readFile)(resource);
24
- }
25
- // Check if it's a URL
26
- if (resource.startsWith('http://') || resource.startsWith('https://')) {
27
- const response = await fetch(resource);
28
- const arrayBuffer = await response.arrayBuffer();
29
- return Buffer.from(arrayBuffer);
30
- }
31
- // Check if it's base64
32
- if (resource.startsWith('data:')) {
33
- const base64Data = resource.split(',')[1];
34
- return Buffer.from(base64Data, 'base64');
35
- }
36
- // Assume it's a file path
37
- return (0, promises_1.readFile)(resource);
38
- }
39
- throw new TypeError('Invalid resource type');
40
- }
41
- /**
42
- * Resolves a Base64Resolvable to a base64 string
43
- * @param resource The resource to resolve
44
- * @param mimeType The MIME type for the data URI
45
- */
46
- static async resolveBase64(resource, mimeType = 'image/png') {
47
- const buffer = await this.resolveBuffer(resource);
48
- return `data:${mimeType};base64,${buffer.toString('base64')}`;
49
- }
50
- /**
51
- * Resolves a file to a name and buffer
52
- * @param resource The file resource
53
- */
54
- static async resolveFile(resource) {
55
- if (typeof resource === 'object' && 'attachment' in resource) {
56
- const buffer = await this.resolveBuffer(resource.attachment);
57
- const name = resource.name ?? 'file';
58
- return { name, data: buffer };
59
- }
60
- const buffer = await this.resolveBuffer(resource);
61
- const name = typeof resource === 'string' ? (0, path_1.basename)(resource) : 'file';
62
- return { name, data: buffer };
63
- }
64
- /**
65
- * Resolves multiple files
66
- * @param resources The file resources
67
- */
68
- static async resolveFiles(resources) {
69
- return Promise.all(resources.map(r => this.resolveFile(r)));
70
- }
71
- /**
72
- * Resolves a color to a number
73
- * @param color The color to resolve
74
- */
75
- static resolveColor(color) {
76
- if (color === null)
77
- return null;
78
- if (typeof color === 'number') {
79
- if (color < 0 || color > 0xFFFFFF)
80
- throw new RangeError('Color must be between 0 and 16777215');
81
- return color;
82
- }
83
- if (typeof color === 'string') {
84
- if (color.startsWith('#')) {
85
- return parseInt(color.slice(1), 16);
86
- }
87
- // Named colors
88
- const namedColors = {
89
- default: 0x000000,
90
- white: 0xFFFFFF,
91
- aqua: 0x1ABC9C,
92
- green: 0x57F287,
93
- blue: 0x3498DB,
94
- yellow: 0xFEE75C,
95
- purple: 0x9B59B6,
96
- fuchsia: 0xEB459E,
97
- gold: 0xF1C40F,
98
- orange: 0xE67E22,
99
- red: 0xED4245,
100
- grey: 0x95A5A6,
101
- navy: 0x34495E,
102
- blurple: 0x5865F2,
103
- };
104
- const lower = color.toLowerCase();
105
- if (lower in namedColors)
106
- return namedColors[lower];
107
- return parseInt(color, 16);
108
- }
109
- if (Array.isArray(color)) {
110
- return (color[0] << 16) + (color[1] << 8) + color[2];
111
- }
112
- throw new TypeError('Invalid color type');
113
- }
114
- /**
115
- * Resolves a string to a snowflake ID
116
- * @param value The value to resolve
117
- */
118
- static resolveSnowflake(value) {
119
- if (typeof value === 'object' && 'id' in value) {
120
- return String(value.id);
121
- }
122
- return String(value);
123
- }
124
- /**
125
- * Resolves an image to a base64 data URI
126
- * @param image The image to resolve
127
- */
128
- static async resolveImage(image) {
129
- const buffer = await this.resolveBuffer(image);
130
- // Detect MIME type from magic bytes
131
- let mimeType = 'image/png';
132
- if (buffer[0] === 0xFF && buffer[1] === 0xD8) {
133
- mimeType = 'image/jpeg';
134
- }
135
- else if (buffer[0] === 0x47 && buffer[1] === 0x49 && buffer[2] === 0x46) {
136
- mimeType = 'image/gif';
137
- }
138
- else if (buffer[0] === 0x52 && buffer[1] === 0x49 && buffer[2] === 0x46 && buffer[3] === 0x46) {
139
- mimeType = 'image/webp';
140
- }
141
- return `data:${mimeType};base64,${buffer.toString('base64')}`;
142
- }
143
- }
144
- exports.DataResolver = DataResolver;
145
- exports.default = DataResolver;
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0YVJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL0RhdGFSZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7OztBQUVILDBDQUF1QztBQUN2QywrQkFBZ0M7QUFLaEM7O0dBRUc7QUFDSCxNQUFhLFlBQVk7SUFDdkI7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsUUFBMEI7UUFDbkQsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztZQUFFLE9BQU8sUUFBUSxDQUFDO1FBRS9DLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDakMsNEJBQTRCO1lBQzVCLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUN2SCxPQUFPLElBQUEsbUJBQVEsRUFBQyxRQUFRLENBQUMsQ0FBQztZQUM1QixDQUFDO1lBRUQsc0JBQXNCO1lBQ3RCLElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxRQUFRLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RFLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN2QyxNQUFNLFdBQVcsR0FBRyxNQUFNLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDakQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2xDLENBQUM7WUFFRCx1QkFBdUI7WUFDdkIsSUFBSSxRQUFRLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ2pD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VyxDQUFDO1FBQzNCLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDN0MsUUFBUSxHQUFHLFlBQVksQ0FBQztRQUMxQixDQUFDO2FBQU0sSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQzFFLFFBQVEsR0FBRyxXQUFXLENBQUM7UUFDekIsQ0FBQzthQUFNLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2hHLFFBQVEsR0FBRyxZQUFZLENBQUM7UUFDMUIsQ0FBQztRQUVELE9BQU8sUUFBUSxRQUFRLFdBQVcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ2hFLENBQUM7Q0FDRjtBQS9JRCxvQ0ErSUM7QUFFRCxrQkFBZSxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERhdGEgcmVzb2x2ZXIgdXRpbGl0aWVzIGZvciBoYW5kbGluZyB2YXJpb3VzIGRhdGEgdHlwZXNcbiAqL1xuXG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJ2ZzL3Byb21pc2VzJztcbmltcG9ydCB7IGJhc2VuYW1lIH0gZnJvbSAncGF0aCc7XG5cbmV4cG9ydCB0eXBlIEJ1ZmZlclJlc29sdmFibGUgPSBCdWZmZXIgfCBzdHJpbmc7XG5leHBvcnQgdHlwZSBCYXNlNjRSZXNvbHZhYmxlID0gQnVmZmVyIHwgc3RyaW5nO1xuXG4vKipcbiAqIFJlc29sdmVzIHZhcmlvdXMgZGF0YSB0eXBlcyB0byB1c2FibGUgZm9ybWF0c1xuICovXG5leHBvcnQgY2xhc3MgRGF0YVJlc29sdmVyIHtcbiAgLyoqXG4gICAqIFJlc29sdmVzIGEgQnVmZmVyUmVzb2x2YWJsZSB0byBhIEJ1ZmZlclxuICAgKiBAcGFyYW0gcmVzb3VyY2UgVGhlIHJlc291cmNlIHRvIHJlc29sdmVcbiAgICovXG4gIHN0YXRpYyBhc3luYyByZXNvbHZlQnVmZmVyKHJlc291cmNlOiBCdWZmZXJSZXNvbHZhYmxlKTogUHJvbWlzZTxCdWZmZXI+IHtcbiAgICBpZiAoQnVmZmVyLmlzQnVmZmVyKHJlc291cmNlKSkgcmV0dXJuIHJlc291cmNlO1xuICAgIFxuICAgIGlmICh0eXBlb2YgcmVzb3VyY2UgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBDaGVjayBpZiBpdCdzIGEgZmlsZSBwYXRoXG4gICAgICBpZiAocmVzb3VyY2Uuc3RhcnRzV2l0aCgnLycpIHx8IHJlc291cmNlLnN0YXJ0c1dpdGgoJy4vJykgfHwgcmVzb3VyY2Uuc3RhcnRzV2l0aCgnLi4vJykgfHwgL15bYS16QS1aXTovLnRlc3QocmVzb3VyY2UpKSB7XG4gICAgICAgIHJldHVybiByZWFkRmlsZShyZXNvdXJjZSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIENoZWNrIGlmIGl0J3MgYSBVUkxcbiAgICAgIGlmIChyZXNvdXJjZS5zdGFydHNXaXRoKCdodHRwOi8vJykgfHwgcmVzb3VyY2Uuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHJlc291cmNlKTtcbiAgICAgICAgY29uc3QgYXJyYXlCdWZmZXIgPSBhd2FpdCByZXNwb25zZS5hcnJheUJ1ZmZlcigpO1xuICAgICAgICByZXR1cm4gQnVmZmVyLmZyb20oYXJyYXlCdWZmZXIpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBDaGVjayBpZiBpdCdzIGJhc2U2NFxuICAgICAgaWYgKHJlc291cmNlLnN0YXJ0c1dpdGgoJ2RhdGE6JykpIHtcbiAgICAgICAgY29uc3QgYmFzZTY0RGF0YSA9IHJlc291cmNlLnNwbGl0KCcsJylbMV07XG4gICAgICAgIHJldHVybiBCdWZmZXIuZnJvbShiYXNlNjREYXRhLCAnYmFzZTY0Jyk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC8vIEFzc3VtZSBpdCdzIGEgZmlsZSBwYXRoXG4gICAgICByZXR1cm4gcmVhZEZpbGUocmVzb3VyY2UpO1xuICAgIH1cbiAgICBcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIHJlc291cmNlIHR5cGUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlcyBhIEJhc2U2NFJlc29sdmFibGUgdG8gYSBiYXNlNjQgc3RyaW5nXG4gICAqIEBwYXJhbSByZXNvdXJjZSBUaGUgcmVzb3VyY2UgdG8gcmVzb2x2ZVxuICAgKiBAcGFyYW0gbWltZVR5cGUgVGhlIE1JTUUgdHlwZSBmb3IgdGhlIGRhdGEgVVJJXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgcmVzb2x2ZUJhc2U2NChyZXNvdXJjZTogQmFzZTY0UmVzb2x2YWJsZSwgbWltZVR5cGUgPSAnaW1hZ2UvcG5nJyk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgYnVmZmVyID0gYXdhaXQgdGhpcy5yZXNvbHZlQnVmZmVyKHJlc291cmNlKTtcbiAgICByZXR1cm4gYGRhdGE6JHttaW1lVHlwZX07YmFzZTY0LCR7YnVmZmVyLnRvU3RyaW5nKCdiYXNlNjQnKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIGEgZmlsZSB0byBhIG5hbWUgYW5kIGJ1ZmZlclxuICAgKiBAcGFyYW0gcmVzb3VyY2UgVGhlIGZpbGUgcmVzb3VyY2VcbiAgICovXG4gIHN0YXRpYyBhc3luYyByZXNvbHZlRmlsZShyZXNvdXJjZTogQnVmZmVyUmVzb2x2YWJsZSB8IHsgbmFtZT86IHN0cmluZzsgYXR0YWNobWVudDogQnVmZmVyUmVzb2x2YWJsZSB9KTogUHJvbWlzZTx7IG5hbWU6IHN0cmluZzsgZGF0YTogQnVmZmVyIH0+IHtcbiAgICBpZiAodHlwZW9mIHJlc291cmNlID09PSAnb2JqZWN0JyAmJiAnYXR0YWNobWVudCcgaW4gcmVzb3VyY2UpIHtcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IGF3YWl0IHRoaXMucmVzb2x2ZUJ1ZmZlcihyZXNvdXJjZS5hdHRhY2htZW50KTtcbiAgICAgIGNvbnN0IG5hbWUgPSByZXNvdXJjZS5uYW1lID8/ICdmaWxlJztcbiAgICAgIHJldHVybiB7IG5hbWUsIGRhdGE6IGJ1ZmZlciB9O1xuICAgIH1cbiAgICBcbiAgICBjb25zdCBidWZmZXIgPSBhd2FpdCB0aGlzLnJlc29sdmVCdWZmZXIocmVzb3VyY2UpO1xuICAgIGNvbnN0IG5hbWUgPSB0eXBlb2YgcmVzb3VyY2UgPT09ICdzdHJpbmcnID8gYmFzZW5hbWUocmVzb3VyY2UpIDogJ2ZpbGUnO1xuICAgIHJldHVybiB7IG5hbWUsIGRhdGE6IGJ1ZmZlciB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIG11bHRpcGxlIGZpbGVzXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIGZpbGUgcmVzb3VyY2VzXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgcmVzb2x2ZUZpbGVzKHJlc291cmNlczogKEJ1ZmZlclJlc29sdmFibGUgfCB7IG5hbWU/OiBzdHJpbmc7IGF0dGFjaG1lbnQ6IEJ1ZmZlclJlc29sdmFibGUgfSlbXSk6IFByb21pc2U8eyBuYW1lOiBzdHJpbmc7IGRhdGE6IEJ1ZmZlciB9W10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwocmVzb3VyY2VzLm1hcChyID0+IHRoaXMucmVzb2x2ZUZpbGUocikpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlcyBhIGNvbG9yIHRvIGEgbnVtYmVyXG4gICAqIEBwYXJhbSBjb2xvciBUaGUgY29sb3IgdG8gcmVzb2x2ZVxuICAgKi9cbiAgc3RhdGljIHJlc29sdmVDb2xvcihjb2xvcjogbnVtYmVyIHwgc3RyaW5nIHwgW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHwgbnVsbCk6IG51bWJlciB8IG51bGwge1xuICAgIGlmIChjb2xvciA9PT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gICAgXG4gICAgaWYgKHR5cGVvZiBjb2xvciA9PT0gJ251bWJlcicpIHtcbiAgICAgIGlmIChjb2xvciA8IDAgfHwgY29sb3IgPiAweEZGRkZGRikgdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ0NvbG9yIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAxNjc3NzIxNScpO1xuICAgICAgcmV0dXJuIGNvbG9yO1xuICAgIH1cbiAgICBcbiAgICBpZiAodHlwZW9mIGNvbG9yID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKGNvbG9yLnN0YXJ0c1dpdGgoJyMnKSkge1xuICAgICAgICByZXR1cm4gcGFyc2VJbnQoY29sb3Iuc2xpY2UoMSksIDE2KTtcbiAgICAgIH1cbiAgICAgIC8vIE5hbWVkIGNvbG9yc1xuICAgICAgY29uc3QgbmFtZWRDb2xvcnM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7XG4gICAgICAgIGRlZmF1bHQ6IDB4MDAwMDAwLFxuICAgICAgICB3aGl0ZTogMHhGRkZGRkYsXG4gICAgICAgIGFxdWE6IDB4MUFCQzlDLFxuICAgICAgICBncmVlbjogMHg1N0YyODcsXG4gICAgICAgIGJsdWU6IDB4MzQ5OERCLFxuICAgICAgICB5ZWxsb3c6IDB4RkVFNzVDLFxuICAgICAgICBwdXJwbGU6IDB4OUI1OUI2LFxuICAgICAgICBmdWNoc2lhOiAweEVCNDU5RSxcbiAgICAgICAgZ29sZDogMHhGMUM0MEYsXG4gICAgICAgIG9yYW5nZTogMHhFNjdFMjIsXG4gICAgICAgIHJlZDogMHhFRDQyNDUsXG4gICAgICAgIGdyZXk6IDB4OTVBNUE2LFxuICAgICAgICBuYXZ5OiAweDM0NDk1RSxcbiAgICAgICAgYmx1cnBsZTogMHg1ODY1RjIsXG4gICAgICB9O1xuICAgICAgY29uc3QgbG93ZXIgPSBjb2xvci50b0xvd2VyQ2FzZSgpO1xuICAgICAgaWYgKGxvd2VyIGluIG5hbWVkQ29sb3JzKSByZXR1cm4gbmFtZWRDb2xvcnNbbG93ZXJdO1xuICAgICAgcmV0dXJuIHBhcnNlSW50KGNvbG9yLCAxNik7XG4gICAgfVxuICAgIFxuICAgIGlmIChBcnJheS5pc0FycmF5KGNvbG9yKSkge1xuICAgICAgcmV0dXJuIChjb2xvclswXSA8PCAxNikgKyAoY29sb3JbMV0gPDwgOCkgKyBjb2xvclsyXTtcbiAgICB9XG4gICAgXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBjb2xvciB0eXBlJyk7XG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgYSBzdHJpbmcgdG8gYSBzbm93Zmxha2UgSURcbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byByZXNvbHZlXG4gICAqL1xuICBzdGF0aWMgcmVzb2x2ZVNub3dmbGFrZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgeyBpZDogc3RyaW5nIHwgbnVtYmVyIH0pOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmICdpZCcgaW4gdmFsdWUpIHtcbiAgICAgIHJldHVybiBTdHJpbmcodmFsdWUuaWQpO1xuICAgIH1cbiAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlcyBhbiBpbWFnZSB0byBhIGJhc2U2NCBkYXRhIFVSSVxuICAgKiBAcGFyYW0gaW1hZ2UgVGhlIGltYWdlIHRvIHJlc29sdmVcbiAgICovXG4gIHN0YXRpYyBhc3luYyByZXNvbHZlSW1hZ2UoaW1hZ2U6IEJ1ZmZlclJlc29sdmFibGUpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGJ1ZmZlciA9IGF3YWl0IHRoaXMucmVzb2x2ZUJ1ZmZlcihpbWFnZSk7XG4gICAgXG4gICAgLy8gRGV0ZWN0IE1JTUUgdHlwZSBmcm9tIG1hZ2ljIGJ5dGVzXG4gICAgbGV0IG1pbWVUeXBlID0gJ2ltYWdlL3BuZyc7XG4gICAgaWYgKGJ1ZmZlclswXSA9PT0gMHhGRiAmJiBidWZmZXJbMV0gPT09IDB4RDgpIHtcbiAgICAgIG1pbWVUeXBlID0gJ2ltYWdlL2pwZWcnO1xuICAgIH0gZWxzZSBpZiAoYnVmZmVyWzBdID09PSAweDQ3ICYmIGJ1ZmZlclsxXSA9PT0gMHg0OSAmJiBidWZmZXJbMl0gPT09IDB4NDYpIHtcbiAgICAgIG1pbWVUeXBlID0gJ2ltYWdlL2dpZic7XG4gICAgfSBlbHNlIGlmIChidWZmZXJbMF0gPT09IDB4NTIgJiYgYnVmZmVyWzFdID09PSAweDQ5ICYmIGJ1ZmZlclsyXSA9PT0gMHg0NiAmJiBidWZmZXJbM10gPT09IDB4NDYpIHtcbiAgICAgIG1pbWVUeXBlID0gJ2ltYWdlL3dlYnAnO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gYGRhdGE6JHttaW1lVHlwZX07YmFzZTY0LCR7YnVmZmVyLnRvU3RyaW5nKCdiYXNlNjQnKX1gO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IERhdGFSZXNvbHZlcjtcbiJdfQ==
@@ -1,145 +0,0 @@
1
- /**
2
- * Formatters for markdown and mentions
3
- */
4
- /**
5
- * Formats a user mention
6
- * @param userId The user ID to mention
7
- */
8
- export declare function userMention(userId: string | number): string;
9
- /**
10
- * Formats a channel mention
11
- * @param channelId The channel ID to mention
12
- */
13
- export declare function channelMention(channelId: string | number): string;
14
- /**
15
- * Formats a role mention
16
- * @param roleId The role ID to mention
17
- */
18
- export declare function roleMention(roleId: string | number): string;
19
- /**
20
- * Formats a custom emoji
21
- * @param emojiId The emoji ID
22
- * @param name The emoji name
23
- * @param animated Whether the emoji is animated
24
- */
25
- export declare function formatEmoji(emojiId: string | number, name: string, animated?: boolean): string;
26
- /**
27
- * Formats text as bold
28
- * @param text The text to format
29
- */
30
- export declare function bold(text: string): string;
31
- /**
32
- * Formats text as italic
33
- * @param text The text to format
34
- */
35
- export declare function italic(text: string): string;
36
- /**
37
- * Formats text as underline
38
- * @param text The text to format
39
- */
40
- export declare function underline(text: string): string;
41
- /**
42
- * Formats text as strikethrough
43
- * @param text The text to format
44
- */
45
- export declare function strikethrough(text: string): string;
46
- /**
47
- * Formats text as spoiler
48
- * @param text The text to format
49
- */
50
- export declare function spoiler(text: string): string;
51
- /**
52
- * Formats text as inline code
53
- * @param text The text to format
54
- */
55
- export declare function inlineCode(text: string): string;
56
- /**
57
- * Formats text as a code block
58
- * @param text The text to format
59
- * @param language The language for syntax highlighting
60
- */
61
- export declare function codeBlock(text: string, language?: string): string;
62
- /**
63
- * Formats text as a block quote
64
- * @param text The text to format
65
- */
66
- export declare function blockQuote(text: string): string;
67
- /**
68
- * Formats text as a single-line quote
69
- * @param text The text to format
70
- */
71
- export declare function quote(text: string): string;
72
- /**
73
- * Formats a URL as a hyperlink
74
- * @param text The text to display
75
- * @param url The URL to link to
76
- * @param title Optional title for the link
77
- */
78
- export declare function hyperlink(text: string, url: string, title?: string): string;
79
- /**
80
- * Formats a URL to hide the embed
81
- * @param url The URL to format
82
- */
83
- export declare function hideLinkEmbed(url: string): string;
84
- /**
85
- * Time format styles
86
- */
87
- export declare enum TimestampStyles {
88
- /** Short time format (e.g., 16:20) */
89
- ShortTime = "t",
90
- /** Long time format (e.g., 16:20:30) */
91
- LongTime = "T",
92
- /** Short date format (e.g., 20/04/2021) */
93
- ShortDate = "d",
94
- /** Long date format (e.g., 20 April 2021) */
95
- LongDate = "D",
96
- /** Short date/time format (e.g., 20 April 2021 16:20) */
97
- ShortDateTime = "f",
98
- /** Long date/time format (e.g., Tuesday, 20 April 2021 16:20) */
99
- LongDateTime = "F",
100
- /** Relative time format (e.g., 2 months ago) */
101
- RelativeTime = "R"
102
- }
103
- /**
104
- * Formats a timestamp
105
- * @param timestamp The timestamp (Date, number in ms, or seconds)
106
- * @param style The style to use
107
- */
108
- export declare function time(timestamp: Date | number, style?: TimestampStyles): string;
109
- /**
110
- * Formats a heading (H1)
111
- * @param text The text to format
112
- */
113
- export declare function heading(text: string, level?: 1 | 2 | 3): string;
114
- /**
115
- * Formats an unordered list
116
- * @param items The items to list
117
- */
118
- export declare function unorderedList(items: string[]): string;
119
- /**
120
- * Formats an ordered list
121
- * @param items The items to list
122
- */
123
- export declare function orderedList(items: string[]): string;
124
- export declare const Formatters: {
125
- userMention: typeof userMention;
126
- channelMention: typeof channelMention;
127
- roleMention: typeof roleMention;
128
- formatEmoji: typeof formatEmoji;
129
- bold: typeof bold;
130
- italic: typeof italic;
131
- underline: typeof underline;
132
- strikethrough: typeof strikethrough;
133
- spoiler: typeof spoiler;
134
- inlineCode: typeof inlineCode;
135
- codeBlock: typeof codeBlock;
136
- blockQuote: typeof blockQuote;
137
- quote: typeof quote;
138
- hyperlink: typeof hyperlink;
139
- hideLinkEmbed: typeof hideLinkEmbed;
140
- time: typeof time;
141
- heading: typeof heading;
142
- unorderedList: typeof unorderedList;
143
- orderedList: typeof orderedList;
144
- TimestampStyles: typeof TimestampStyles;
145
- };
@@ -1,213 +0,0 @@
1
- "use strict";
2
- /**
3
- * Formatters for markdown and mentions
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Formatters = exports.TimestampStyles = void 0;
7
- exports.userMention = userMention;
8
- exports.channelMention = channelMention;
9
- exports.roleMention = roleMention;
10
- exports.formatEmoji = formatEmoji;
11
- exports.bold = bold;
12
- exports.italic = italic;
13
- exports.underline = underline;
14
- exports.strikethrough = strikethrough;
15
- exports.spoiler = spoiler;
16
- exports.inlineCode = inlineCode;
17
- exports.codeBlock = codeBlock;
18
- exports.blockQuote = blockQuote;
19
- exports.quote = quote;
20
- exports.hyperlink = hyperlink;
21
- exports.hideLinkEmbed = hideLinkEmbed;
22
- exports.time = time;
23
- exports.heading = heading;
24
- exports.unorderedList = unorderedList;
25
- exports.orderedList = orderedList;
26
- /**
27
- * Formats a user mention
28
- * @param userId The user ID to mention
29
- */
30
- function userMention(userId) {
31
- return `<@${userId}>`;
32
- }
33
- /**
34
- * Formats a channel mention
35
- * @param channelId The channel ID to mention
36
- */
37
- function channelMention(channelId) {
38
- return `<#${channelId}>`;
39
- }
40
- /**
41
- * Formats a role mention
42
- * @param roleId The role ID to mention
43
- */
44
- function roleMention(roleId) {
45
- return `<@&${roleId}>`;
46
- }
47
- /**
48
- * Formats a custom emoji
49
- * @param emojiId The emoji ID
50
- * @param name The emoji name
51
- * @param animated Whether the emoji is animated
52
- */
53
- function formatEmoji(emojiId, name, animated = false) {
54
- return `<${animated ? 'a' : ''}:${name}:${emojiId}>`;
55
- }
56
- /**
57
- * Formats text as bold
58
- * @param text The text to format
59
- */
60
- function bold(text) {
61
- return `**${text}**`;
62
- }
63
- /**
64
- * Formats text as italic
65
- * @param text The text to format
66
- */
67
- function italic(text) {
68
- return `*${text}*`;
69
- }
70
- /**
71
- * Formats text as underline
72
- * @param text The text to format
73
- */
74
- function underline(text) {
75
- return `__${text}__`;
76
- }
77
- /**
78
- * Formats text as strikethrough
79
- * @param text The text to format
80
- */
81
- function strikethrough(text) {
82
- return `~~${text}~~`;
83
- }
84
- /**
85
- * Formats text as spoiler
86
- * @param text The text to format
87
- */
88
- function spoiler(text) {
89
- return `||${text}||`;
90
- }
91
- /**
92
- * Formats text as inline code
93
- * @param text The text to format
94
- */
95
- function inlineCode(text) {
96
- return `\`${text}\``;
97
- }
98
- /**
99
- * Formats text as a code block
100
- * @param text The text to format
101
- * @param language The language for syntax highlighting
102
- */
103
- function codeBlock(text, language) {
104
- return `\`\`\`${language ?? ''}\n${text}\n\`\`\``;
105
- }
106
- /**
107
- * Formats text as a block quote
108
- * @param text The text to format
109
- */
110
- function blockQuote(text) {
111
- return `>>> ${text}`;
112
- }
113
- /**
114
- * Formats text as a single-line quote
115
- * @param text The text to format
116
- */
117
- function quote(text) {
118
- return `> ${text}`;
119
- }
120
- /**
121
- * Formats a URL as a hyperlink
122
- * @param text The text to display
123
- * @param url The URL to link to
124
- * @param title Optional title for the link
125
- */
126
- function hyperlink(text, url, title) {
127
- return title ? `[${text}](${url} "${title}")` : `[${text}](${url})`;
128
- }
129
- /**
130
- * Formats a URL to hide the embed
131
- * @param url The URL to format
132
- */
133
- function hideLinkEmbed(url) {
134
- return `<${url}>`;
135
- }
136
- /**
137
- * Time format styles
138
- */
139
- var TimestampStyles;
140
- (function (TimestampStyles) {
141
- /** Short time format (e.g., 16:20) */
142
- TimestampStyles["ShortTime"] = "t";
143
- /** Long time format (e.g., 16:20:30) */
144
- TimestampStyles["LongTime"] = "T";
145
- /** Short date format (e.g., 20/04/2021) */
146
- TimestampStyles["ShortDate"] = "d";
147
- /** Long date format (e.g., 20 April 2021) */
148
- TimestampStyles["LongDate"] = "D";
149
- /** Short date/time format (e.g., 20 April 2021 16:20) */
150
- TimestampStyles["ShortDateTime"] = "f";
151
- /** Long date/time format (e.g., Tuesday, 20 April 2021 16:20) */
152
- TimestampStyles["LongDateTime"] = "F";
153
- /** Relative time format (e.g., 2 months ago) */
154
- TimestampStyles["RelativeTime"] = "R";
155
- })(TimestampStyles || (exports.TimestampStyles = TimestampStyles = {}));
156
- /**
157
- * Formats a timestamp
158
- * @param timestamp The timestamp (Date, number in ms, or seconds)
159
- * @param style The style to use
160
- */
161
- function time(timestamp, style) {
162
- const seconds = timestamp instanceof Date
163
- ? Math.floor(timestamp.getTime() / 1000)
164
- : typeof timestamp === 'number' && timestamp > 1e12
165
- ? Math.floor(timestamp / 1000)
166
- : timestamp;
167
- return style ? `<t:${seconds}:${style}>` : `<t:${seconds}>`;
168
- }
169
- /**
170
- * Formats a heading (H1)
171
- * @param text The text to format
172
- */
173
- function heading(text, level = 1) {
174
- return `${'#'.repeat(level)} ${text}`;
175
- }
176
- /**
177
- * Formats an unordered list
178
- * @param items The items to list
179
- */
180
- function unorderedList(items) {
181
- return items.map(item => `- ${item}`).join('\n');
182
- }
183
- /**
184
- * Formats an ordered list
185
- * @param items The items to list
186
- */
187
- function orderedList(items) {
188
- return items.map((item, i) => `${i + 1}. ${item}`).join('\n');
189
- }
190
- // Export all formatters as a namespace too (DJS compatibility)
191
- exports.Formatters = {
192
- userMention,
193
- channelMention,
194
- roleMention,
195
- formatEmoji,
196
- bold,
197
- italic,
198
- underline,
199
- strikethrough,
200
- spoiler,
201
- inlineCode,
202
- codeBlock,
203
- blockQuote,
204
- quote,
205
- hyperlink,
206
- hideLinkEmbed,
207
- time,
208
- heading,
209
- unorderedList,
210
- orderedList,
211
- TimestampStyles,
212
- };
213
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybWF0dGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9Gb3JtYXR0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBTUgsa0NBRUM7QUFNRCx3Q0FFQztBQU1ELGtDQUVDO0FBUUQsa0NBRUM7QUFNRCxvQkFFQztBQU1ELHdCQUVDO0FBTUQsOEJBRUM7QUFNRCxzQ0FFQztBQU1ELDBCQUVDO0FBTUQsZ0NBRUM7QUFPRCw4QkFFQztBQU1ELGdDQUVDO0FBTUQsc0JBRUM7QUFRRCw4QkFFQztBQU1ELHNDQUVDO0FBMkJELG9CQVFDO0FBTUQsMEJBRUM7QUFNRCxzQ0FFQztBQU1ELGtDQUVDO0FBdExEOzs7R0FHRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxNQUF1QjtJQUNqRCxPQUFPLEtBQUssTUFBTSxHQUFHLENBQUM7QUFDeEIsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLGNBQWMsQ0FBQyxTQUEwQjtJQUN2RCxPQUFPLEtBQUssU0FBUyxHQUFHLENBQUM7QUFDM0IsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxNQUF1QjtJQUNqRCxPQUFPLE1BQU0sTUFBTSxHQUFHLENBQUM7QUFDekIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLE9BQXdCLEVBQUUsSUFBWSxFQUFFLFFBQVEsR0FBRyxLQUFLO0lBQ2xGLE9BQU8sSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLElBQUksSUFBSSxPQUFPLEdBQUcsQ0FBQztBQUN2RCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsSUFBSSxDQUFDLElBQVk7SUFDL0IsT0FBTyxLQUFLLElBQUksSUFBSSxDQUFDO0FBQ3ZCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixNQUFNLENBQUMsSUFBWTtJQUNqQyxPQUFPLElBQUksSUFB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QUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDbkQsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxLQUFlO0lBQ3pDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNoRSxDQUFDO0FBRUQsK0RBQStEO0FBQ2xELFFBQUEsVUFBVSxHQUFHO0lBQ3hCLFdBQVc7SUFDWCxjQUFjO0lBQ2QsV0FBVztJQUNYLFdBQVc7SUFDWCxJQUFJO0lBQ0osTUFBTTtJQUNOLFNBQVM7SUFDVCxhQUFhO0lBQ2IsT0FBTztJQUNQLFVBQVU7SUFDVixTQUFTO0lBQ1QsVUFBVTtJQUNWLEtBQUs7SUFDTCxTQUFTO0lBQ1QsYUFBYTtJQUNiLElBQUk7SUFDSixPQUFPO0lBQ1AsYUFBYTtJQUNiLFdBQVc7SUFDWCxlQUFlO0NBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEZvcm1hdHRlcnMgZm9yIG1hcmtkb3duIGFuZCBtZW50aW9uc1xuICovXG5cbi8qKlxuICogRm9ybWF0cyBhIHVzZXIgbWVudGlvblxuICogQHBhcmFtIHVzZXJJZCBUaGUgdXNlciBJRCB0byBtZW50aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1c2VyTWVudGlvbih1c2VySWQ6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiBgPEAke3VzZXJJZH0+YDtcbn1cblxuLyoqXG4gKiBGb3JtYXRzIGEgY2hhbm5lbCBtZW50aW9uXG4gKiBAcGFyYW0gY2hhbm5lbElkIFRoZSBjaGFubmVsIElEIHRvIG1lbnRpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoYW5uZWxNZW50aW9uKGNoYW5uZWxJZDogc3RyaW5nIHwgbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIGA8IyR7Y2hhbm5lbElkfT5gO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgYSByb2xlIG1lbnRpb25cbiAqIEBwYXJhbSByb2xlSWQgVGhlIHJvbGUgSUQgdG8gbWVudGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gcm9sZU1lbnRpb24ocm9sZUlkOiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gYDxAJiR7cm9sZUlkfT5gO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgYSBjdXN0b20gZW1vamlcbiAqIEBwYXJhbSBlbW9qaUlkIFRoZSBlbW9qaSBJRFxuICogQHBhcmFtIG5hbWUgVGhlIGVtb2ppIG5hbWVcbiAqIEBwYXJhbSBhbmltYXRlZCBXaGV0aGVyIHRoZSBlbW9qaSBpcyBhbmltYXRlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0RW1vamkoZW1vamlJZDogc3RyaW5nIHwgbnVtYmVyLCBuYW1lOiBzdHJpbmcsIGFuaW1hdGVkID0gZmFsc2UpOiBzdHJpbmcge1xuICByZXR1cm4gYDwke2FuaW1hdGVkID8gJ2EnIDogJyd9OiR7bmFtZX06JHtlbW9qaUlkfT5gO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgdGV4dCBhcyBib2xkXG4gKiBAcGFyYW0gdGV4dCBUaGUgdGV4dCB0byBmb3JtYXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJvbGQodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAqKiR7dGV4dH0qKmA7XG59XG5cbi8qKlxuICogRm9ybWF0cyB0ZXh0IGFzIGl0YWxpY1xuICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gZm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpdGFsaWModGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAqJHt0ZXh0fSpgO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgdGV4dCBhcyB1bmRlcmxpbmVcbiAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5kZXJsaW5lKHRleHQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgX18ke3RleHR9X19gO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgdGV4dCBhcyBzdHJpa2V0aHJvdWdoXG4gKiBAcGFyYW0gdGV4dCBUaGUgdGV4dCB0byBmb3JtYXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN0cmlrZXRocm91Z2godGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGB+fiR7dGV4dH1+fmA7XG59XG5cbi8qKlxuICogRm9ybWF0cyB0ZXh0IGFzIHNwb2lsZXJcbiAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gc3BvaWxlcih0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYHx8JHt0ZXh0fXx8YDtcbn1cblxuLyoqXG4gKiBGb3JtYXRzIHRleHQgYXMgaW5saW5lIGNvZGVcbiAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5saW5lQ29kZSh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYFxcYCR7dGV4dH1cXGBgO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgdGV4dCBhcyBhIGNvZGUgYmxvY2tcbiAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIGZvcm1hdFxuICogQHBhcmFtIGxhbmd1YWdlIFRoZSBsYW5ndWFnZSBmb3Igc3ludGF4IGhpZ2hsaWdodGluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gY29kZUJsb2NrKHRleHQ6IHN0cmluZywgbGFuZ3VhZ2U/OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYFxcYFxcYFxcYCR7bGFuZ3VhZ2UgPz8gJyd9XFxuJHt0ZXh0fVxcblxcYFxcYFxcYGA7XG59XG5cbi8qKlxuICogRm9ybWF0cyB0ZXh0IGFzIGEgYmxvY2sgcXVvdGVcbiAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gYmxvY2tRdW90ZSh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYD4+PiAke3RleHR9YDtcbn1cblxuLyoqXG4gKiBGb3JtYXRzIHRleHQgYXMgYSBzaW5nbGUtbGluZSBxdW90ZVxuICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gZm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBxdW90ZSh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYD4gJHt0ZXh0fWA7XG59XG5cbi8qKlxuICogRm9ybWF0cyBhIFVSTCBhcyBhIGh5cGVybGlua1xuICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gZGlzcGxheVxuICogQHBhcmFtIHVybCBUaGUgVVJMIHRvIGxpbmsgdG9cbiAqIEBwYXJhbSB0aXRsZSBPcHRpb25hbCB0aXRsZSBmb3IgdGhlIGxpbmtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGh5cGVybGluayh0ZXh0OiBzdHJpbmcsIHVybDogc3RyaW5nLCB0aXRsZT86IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB0aXRsZSA/IGBbJHt0ZXh0fV0oJHt1cmx9IFwiJHt0aXRsZX1cIilgIDogYFske3RleHR9XSgke3VybH0pYDtcbn1cblxuLyoqXG4gKiBGb3JtYXRzIGEgVVJMIHRvIGhpZGUgdGhlIGVtYmVkXG4gKiBAcGFyYW0gdXJsIFRoZSBVUkwgdG8gZm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoaWRlTGlua0VtYmVkKHVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGA8JHt1cmx9PmA7XG59XG5cbi8qKlxuICogVGltZSBmb3JtYXQgc3R5bGVzXG4gKi9cbmV4cG9ydCBlbnVtIFRpbWVzdGFtcFN0eWxlcyB7XG4gIC8qKiBTaG9ydCB0aW1lIGZvcm1hdCAoZS5nLiwgMTY6MjApICovXG4gIFNob3J0VGltZSA9ICd0JyxcbiAgLyoqIExvbmcgdGltZSBmb3JtYXQgKGUuZy4sIDE2OjIwOjMwKSAqL1xuICBMb25nVGltZSA9ICdUJyxcbiAgLyoqIFNob3J0IGRhdGUgZm9ybWF0IChlLmcuLCAyMC8wNC8yMDIxKSAqL1xuICBTaG9ydERhdGUgPSAnZCcsXG4gIC8qKiBMb25nIGRhdGUgZm9ybWF0IChlLmcuLCAyMCBBcHJpbCAyMDIxKSAqL1xuICBMb25nRGF0ZSA9ICdEJyxcbiAgLyoqIFNob3J0IGRhdGUvdGltZSBmb3JtYXQgKGUuZy4sIDIwIEFwcmlsIDIwMjEgMTY6MjApICovXG4gIFNob3J0RGF0ZVRpbWUgPSAnZicsXG4gIC8qKiBMb25nIGRhdGUvdGltZSBmb3JtYXQgKGUuZy4sIFR1ZXNkYXksIDIwIEFwcmlsIDIwMjEgMTY6MjApICovXG4gIExvbmdEYXRlVGltZSA9ICdGJyxcbiAgLyoqIFJlbGF0aXZlIHRpbWUgZm9ybWF0IChlLmcuLCAyIG1vbnRocyBhZ28pICovXG4gIFJlbGF0aXZlVGltZSA9ICdSJyxcbn1cblxuLyoqXG4gKiBGb3JtYXRzIGEgdGltZXN0YW1wXG4gKiBAcGFyYW0gdGltZXN0YW1wIFRoZSB0aW1lc3RhbXAgKERhdGUsIG51bWJlciBpbiBtcywgb3Igc2Vjb25kcylcbiAqIEBwYXJhbSBzdHlsZSBUaGUgc3R5bGUgdG8gdXNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0aW1lKHRpbWVzdGFtcDogRGF0ZSB8IG51bWJlciwgc3R5bGU/OiBUaW1lc3RhbXBTdHlsZXMpOiBzdHJpbmcge1xuICBjb25zdCBzZWNvbmRzID0gdGltZXN0YW1wIGluc3RhbmNlb2YgRGF0ZSBcbiAgICA/IE1hdGguZmxvb3IodGltZXN0YW1wLmdldFRpbWUoKSAvIDEwMDApIFxuICAgIDogdHlwZW9mIHRpbWVzdGFtcCA9PT0gJ251bWJlcicgJiYgdGltZXN0YW1wID4gMWUxMiBcbiAgICAgID8gTWF0aC5mbG9vcih0aW1lc3RhbXAgLyAxMDAwKSBcbiAgICAgIDogdGltZXN0YW1wO1xuICBcbiAgcmV0dXJuIHN0eWxlID8gYDx0OiR7c2Vjb25kc306JHtzdHlsZX0+YCA6IGA8dDoke3NlY29uZHN9PmA7XG59XG5cbi8qKlxuICogRm9ybWF0cyBhIGhlYWRpbmcgKEgxKVxuICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gZm9ybWF0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoZWFkaW5nKHRleHQ6IHN0cmluZywgbGV2ZWw6IDEgfCAyIHwgMyA9IDEpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7JyMnLnJlcGVhdChsZXZlbCl9ICR7dGV4dH1gO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgYW4gdW5vcmRlcmVkIGxpc3RcbiAqIEBwYXJhbSBpdGVtcyBUaGUgaXRlbXMgdG8gbGlzdFxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5vcmRlcmVkTGlzdChpdGVtczogc3RyaW5nW10pOiBzdHJpbmcge1xuICByZXR1cm4gaXRlbXMubWFwKGl0ZW0gPT4gYC0gJHtpdGVtfWApLmpvaW4oJ1xcbicpO1xufVxuXG4vKipcbiAqIEZvcm1hdHMgYW4gb3JkZXJlZCBsaXN0XG4gKiBAcGFyYW0gaXRlbXMgVGhlIGl0ZW1zIHRvIGxpc3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9yZGVyZWRMaXN0KGl0ZW1zOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gIHJldHVybiBpdGVtcy5tYXAoKGl0ZW0sIGkpID0+IGAke2kgKyAxfS4gJHtpdGVtfWApLmpvaW4oJ1xcbicpO1xufVxuXG4vLyBFeHBvcnQgYWxsIGZvcm1hdHRlcnMgYXMgYSBuYW1lc3BhY2UgdG9vIChESlMgY29tcGF0aWJpbGl0eSlcbmV4cG9ydCBjb25zdCBGb3JtYXR0ZXJzID0ge1xuICB1c2VyTWVudGlvbixcbiAgY2hhbm5lbE1lbnRpb24sXG4gIHJvbGVNZW50aW9uLFxuICBmb3JtYXRFbW9qaSxcbiAgYm9sZCxcbiAgaXRhbGljLFxuICB1bmRlcmxpbmUsXG4gIHN0cmlrZXRocm91Z2gsXG4gIHNwb2lsZXIsXG4gIGlubGluZUNvZGUsXG4gIGNvZGVCbG9jayxcbiAgYmxvY2tRdW90ZSxcbiAgcXVvdGUsXG4gIGh5cGVybGluayxcbiAgaGlkZUxpbmtFbWJlZCxcbiAgdGltZSxcbiAgaGVhZGluZyxcbiAgdW5vcmRlcmVkTGlzdCxcbiAgb3JkZXJlZExpc3QsXG4gIFRpbWVzdGFtcFN0eWxlcyxcbn07XG4iXX0=
@@ -1,85 +0,0 @@
1
- /**
2
- * Intents BitField for calculating gateway intents
3
- */
4
- import { BitField, BitFieldResolvable } from './BitField';
5
- /**
6
- * Intent flag names
7
- */
8
- export type IntentFlagsString = keyof typeof IntentsBitField.Flags;
9
- /**
10
- * Gateway Intent Bits
11
- */
12
- export declare const GatewayIntentBits: {
13
- readonly Guilds: number;
14
- readonly GuildMembers: number;
15
- readonly GuildModeration: number;
16
- readonly GuildEmojisAndStickers: number;
17
- readonly GuildIntegrations: number;
18
- readonly GuildWebhooks: number;
19
- readonly GuildInvites: number;
20
- readonly GuildVoiceStates: number;
21
- readonly GuildPresences: number;
22
- readonly GuildMessages: number;
23
- readonly GuildMessageReactions: number;
24
- readonly GuildMessageTyping: number;
25
- readonly DirectMessages: number;
26
- readonly DirectMessageReactions: number;
27
- readonly DirectMessageTyping: number;
28
- readonly MessageContent: number;
29
- readonly GuildScheduledEvents: number;
30
- readonly AutoModerationConfiguration: number;
31
- readonly AutoModerationExecution: number;
32
- };
33
- /**
34
- * All non-privileged intents
35
- */
36
- export declare const IntentsAll: number;
37
- /**
38
- * Privileged intents that require approval
39
- */
40
- export declare const PrivilegedIntents: number;
41
- /**
42
- * Data structure for gateway intents
43
- */
44
- export declare class IntentsBitField extends BitField<IntentFlagsString, number> {
45
- static Flags: {
46
- readonly Guilds: number;
47
- readonly GuildMembers: number;
48
- readonly GuildModeration: number;
49
- readonly GuildEmojisAndStickers: number;
50
- readonly GuildIntegrations: number;
51
- readonly GuildWebhooks: number;
52
- readonly GuildInvites: number;
53
- readonly GuildVoiceStates: number;
54
- readonly GuildPresences: number;
55
- readonly GuildMessages: number;
56
- readonly GuildMessageReactions: number;
57
- readonly GuildMessageTyping: number;
58
- readonly DirectMessages: number;
59
- readonly DirectMessageReactions: number;
60
- readonly DirectMessageTyping: number;
61
- readonly MessageContent: number;
62
- readonly GuildScheduledEvents: number;
63
- readonly AutoModerationConfiguration: number;
64
- readonly AutoModerationExecution: number;
65
- };
66
- static DefaultBit: number;
67
- constructor(bits?: BitFieldResolvable<IntentFlagsString, number>);
68
- /**
69
- * Check if any privileged intents are enabled
70
- */
71
- hasPrivileged(): boolean;
72
- /**
73
- * Get all privileged intents that are enabled
74
- */
75
- getPrivileged(): IntentFlagsString[];
76
- }
77
- /**
78
- * Calculate intents from an array of intent names or values
79
- */
80
- export declare function calculateIntents(intents: (IntentFlagsString | number)[]): number;
81
- /**
82
- * Get all intent names from a bitfield value
83
- */
84
- export declare function resolveIntents(bits: number): IntentFlagsString[];
85
- export default IntentsBitField;