@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
package/dist/cjs/enums.js DELETED
@@ -1,211 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OverwriteType = exports.PermissionFlagsBits = exports.PresenceStatus = exports.ActivityType = exports.MessageFlags = exports.InteractionResponseType = exports.ChannelType = exports.ApplicationCommandOptionType = exports.ApplicationCommandType = exports.InteractionType = exports.GatewayOpcodes = exports.GatewayIntentBits = void 0;
4
- /**
5
- * Gateway Intent Bits
6
- */
7
- var GatewayIntentBits;
8
- (function (GatewayIntentBits) {
9
- GatewayIntentBits[GatewayIntentBits["Guilds"] = 1] = "Guilds";
10
- GatewayIntentBits[GatewayIntentBits["GuildMembers"] = 2] = "GuildMembers";
11
- GatewayIntentBits[GatewayIntentBits["GuildModeration"] = 4] = "GuildModeration";
12
- GatewayIntentBits[GatewayIntentBits["GuildEmojisAndStickers"] = 8] = "GuildEmojisAndStickers";
13
- GatewayIntentBits[GatewayIntentBits["GuildIntegrations"] = 16] = "GuildIntegrations";
14
- GatewayIntentBits[GatewayIntentBits["GuildWebhooks"] = 32] = "GuildWebhooks";
15
- GatewayIntentBits[GatewayIntentBits["GuildInvites"] = 64] = "GuildInvites";
16
- GatewayIntentBits[GatewayIntentBits["GuildVoiceStates"] = 128] = "GuildVoiceStates";
17
- GatewayIntentBits[GatewayIntentBits["GuildPresences"] = 256] = "GuildPresences";
18
- GatewayIntentBits[GatewayIntentBits["GuildMessages"] = 512] = "GuildMessages";
19
- GatewayIntentBits[GatewayIntentBits["GuildMessageReactions"] = 1024] = "GuildMessageReactions";
20
- GatewayIntentBits[GatewayIntentBits["GuildMessageTyping"] = 2048] = "GuildMessageTyping";
21
- GatewayIntentBits[GatewayIntentBits["DirectMessages"] = 4096] = "DirectMessages";
22
- GatewayIntentBits[GatewayIntentBits["DirectMessageReactions"] = 8192] = "DirectMessageReactions";
23
- GatewayIntentBits[GatewayIntentBits["DirectMessageTyping"] = 16384] = "DirectMessageTyping";
24
- GatewayIntentBits[GatewayIntentBits["MessageContent"] = 32768] = "MessageContent";
25
- GatewayIntentBits[GatewayIntentBits["GuildScheduledEvents"] = 65536] = "GuildScheduledEvents";
26
- GatewayIntentBits[GatewayIntentBits["AutoModerationConfiguration"] = 1048576] = "AutoModerationConfiguration";
27
- GatewayIntentBits[GatewayIntentBits["AutoModerationExecution"] = 2097152] = "AutoModerationExecution";
28
- })(GatewayIntentBits || (exports.GatewayIntentBits = GatewayIntentBits = {}));
29
- /**
30
- * Gateway Opcodes
31
- */
32
- var GatewayOpcodes;
33
- (function (GatewayOpcodes) {
34
- GatewayOpcodes[GatewayOpcodes["Dispatch"] = 0] = "Dispatch";
35
- GatewayOpcodes[GatewayOpcodes["Heartbeat"] = 1] = "Heartbeat";
36
- GatewayOpcodes[GatewayOpcodes["Identify"] = 2] = "Identify";
37
- GatewayOpcodes[GatewayOpcodes["PresenceUpdate"] = 3] = "PresenceUpdate";
38
- GatewayOpcodes[GatewayOpcodes["VoiceStateUpdate"] = 4] = "VoiceStateUpdate";
39
- GatewayOpcodes[GatewayOpcodes["Resume"] = 6] = "Resume";
40
- GatewayOpcodes[GatewayOpcodes["Reconnect"] = 7] = "Reconnect";
41
- GatewayOpcodes[GatewayOpcodes["RequestGuildMembers"] = 8] = "RequestGuildMembers";
42
- GatewayOpcodes[GatewayOpcodes["InvalidSession"] = 9] = "InvalidSession";
43
- GatewayOpcodes[GatewayOpcodes["Hello"] = 10] = "Hello";
44
- GatewayOpcodes[GatewayOpcodes["HeartbeatAck"] = 11] = "HeartbeatAck";
45
- })(GatewayOpcodes || (exports.GatewayOpcodes = GatewayOpcodes = {}));
46
- /**
47
- * Interaction Types
48
- */
49
- var InteractionType;
50
- (function (InteractionType) {
51
- InteractionType[InteractionType["Ping"] = 1] = "Ping";
52
- InteractionType[InteractionType["ApplicationCommand"] = 2] = "ApplicationCommand";
53
- InteractionType[InteractionType["MessageComponent"] = 3] = "MessageComponent";
54
- InteractionType[InteractionType["ApplicationCommandAutocomplete"] = 4] = "ApplicationCommandAutocomplete";
55
- InteractionType[InteractionType["ModalSubmit"] = 5] = "ModalSubmit";
56
- })(InteractionType || (exports.InteractionType = InteractionType = {}));
57
- /**
58
- * Application Command Types
59
- */
60
- var ApplicationCommandType;
61
- (function (ApplicationCommandType) {
62
- ApplicationCommandType[ApplicationCommandType["ChatInput"] = 1] = "ChatInput";
63
- ApplicationCommandType[ApplicationCommandType["User"] = 2] = "User";
64
- ApplicationCommandType[ApplicationCommandType["Message"] = 3] = "Message";
65
- })(ApplicationCommandType || (exports.ApplicationCommandType = ApplicationCommandType = {}));
66
- /**
67
- * Application Command Option Types
68
- */
69
- var ApplicationCommandOptionType;
70
- (function (ApplicationCommandOptionType) {
71
- ApplicationCommandOptionType[ApplicationCommandOptionType["Subcommand"] = 1] = "Subcommand";
72
- ApplicationCommandOptionType[ApplicationCommandOptionType["SubcommandGroup"] = 2] = "SubcommandGroup";
73
- ApplicationCommandOptionType[ApplicationCommandOptionType["String"] = 3] = "String";
74
- ApplicationCommandOptionType[ApplicationCommandOptionType["Integer"] = 4] = "Integer";
75
- ApplicationCommandOptionType[ApplicationCommandOptionType["Boolean"] = 5] = "Boolean";
76
- ApplicationCommandOptionType[ApplicationCommandOptionType["User"] = 6] = "User";
77
- ApplicationCommandOptionType[ApplicationCommandOptionType["Channel"] = 7] = "Channel";
78
- ApplicationCommandOptionType[ApplicationCommandOptionType["Role"] = 8] = "Role";
79
- ApplicationCommandOptionType[ApplicationCommandOptionType["Mentionable"] = 9] = "Mentionable";
80
- ApplicationCommandOptionType[ApplicationCommandOptionType["Number"] = 10] = "Number";
81
- ApplicationCommandOptionType[ApplicationCommandOptionType["Attachment"] = 11] = "Attachment";
82
- })(ApplicationCommandOptionType || (exports.ApplicationCommandOptionType = ApplicationCommandOptionType = {}));
83
- /**
84
- * Channel Types
85
- */
86
- var ChannelType;
87
- (function (ChannelType) {
88
- ChannelType[ChannelType["GuildText"] = 0] = "GuildText";
89
- ChannelType[ChannelType["DM"] = 1] = "DM";
90
- ChannelType[ChannelType["GuildVoice"] = 2] = "GuildVoice";
91
- ChannelType[ChannelType["GroupDM"] = 3] = "GroupDM";
92
- ChannelType[ChannelType["GuildCategory"] = 4] = "GuildCategory";
93
- ChannelType[ChannelType["GuildAnnouncement"] = 5] = "GuildAnnouncement";
94
- ChannelType[ChannelType["GuildStageVoice"] = 13] = "GuildStageVoice";
95
- ChannelType[ChannelType["GuildDirectory"] = 14] = "GuildDirectory";
96
- ChannelType[ChannelType["GuildForum"] = 15] = "GuildForum";
97
- })(ChannelType || (exports.ChannelType = ChannelType = {}));
98
- /**
99
- * Interaction Response Types
100
- */
101
- var InteractionResponseType;
102
- (function (InteractionResponseType) {
103
- InteractionResponseType[InteractionResponseType["Pong"] = 1] = "Pong";
104
- InteractionResponseType[InteractionResponseType["ChannelMessageWithSource"] = 4] = "ChannelMessageWithSource";
105
- InteractionResponseType[InteractionResponseType["DeferredChannelMessageWithSource"] = 5] = "DeferredChannelMessageWithSource";
106
- InteractionResponseType[InteractionResponseType["DeferredUpdateMessage"] = 6] = "DeferredUpdateMessage";
107
- InteractionResponseType[InteractionResponseType["UpdateMessage"] = 7] = "UpdateMessage";
108
- InteractionResponseType[InteractionResponseType["ApplicationCommandAutocompleteResult"] = 8] = "ApplicationCommandAutocompleteResult";
109
- InteractionResponseType[InteractionResponseType["Modal"] = 9] = "Modal";
110
- })(InteractionResponseType || (exports.InteractionResponseType = InteractionResponseType = {}));
111
- /**
112
- * Message Flags
113
- */
114
- var MessageFlags;
115
- (function (MessageFlags) {
116
- MessageFlags[MessageFlags["Crossposted"] = 1] = "Crossposted";
117
- MessageFlags[MessageFlags["IsCrosspost"] = 2] = "IsCrosspost";
118
- MessageFlags[MessageFlags["SuppressEmbeds"] = 4] = "SuppressEmbeds";
119
- MessageFlags[MessageFlags["SourceMessageDeleted"] = 8] = "SourceMessageDeleted";
120
- MessageFlags[MessageFlags["Urgent"] = 16] = "Urgent";
121
- MessageFlags[MessageFlags["Ephemeral"] = 64] = "Ephemeral";
122
- MessageFlags[MessageFlags["Loading"] = 128] = "Loading";
123
- MessageFlags[MessageFlags["SuppressNotifications"] = 4096] = "SuppressNotifications";
124
- })(MessageFlags || (exports.MessageFlags = MessageFlags = {}));
125
- /**
126
- * Activity Types
127
- */
128
- var ActivityType;
129
- (function (ActivityType) {
130
- ActivityType[ActivityType["Playing"] = 0] = "Playing";
131
- ActivityType[ActivityType["Streaming"] = 1] = "Streaming";
132
- ActivityType[ActivityType["Listening"] = 2] = "Listening";
133
- ActivityType[ActivityType["Watching"] = 3] = "Watching";
134
- ActivityType[ActivityType["Custom"] = 4] = "Custom";
135
- ActivityType[ActivityType["Competing"] = 5] = "Competing";
136
- })(ActivityType || (exports.ActivityType = ActivityType = {}));
137
- /**
138
- * Presence Status
139
- */
140
- var PresenceStatus;
141
- (function (PresenceStatus) {
142
- PresenceStatus["Online"] = "online";
143
- PresenceStatus["Idle"] = "idle";
144
- PresenceStatus["DoNotDisturb"] = "dnd";
145
- PresenceStatus["Invisible"] = "invisible";
146
- PresenceStatus["Offline"] = "offline";
147
- })(PresenceStatus || (exports.PresenceStatus = PresenceStatus = {}));
148
- /**
149
- * Permission Flags Bits
150
- * Used for channel permission overwrites
151
- */
152
- exports.PermissionFlagsBits = {
153
- // General (0-9)
154
- CreateInstantInvite: 1n << 0n,
155
- KickMembers: 1n << 1n,
156
- BanMembers: 1n << 2n,
157
- Administrator: 1n << 3n,
158
- ManageChannels: 1n << 4n,
159
- ManageGuild: 1n << 5n,
160
- AddReactions: 1n << 6n,
161
- ViewAuditLog: 1n << 7n,
162
- ViewGuildInsights: 1n << 8n,
163
- Stream: 1n << 9n,
164
- ViewChannel: 1n << 10n,
165
- // Messages (11-19)
166
- SendMessages: 1n << 11n,
167
- SendTTSMessages: 1n << 12n,
168
- ManageMessages: 1n << 13n,
169
- EmbedLinks: 1n << 14n,
170
- AttachFiles: 1n << 15n,
171
- ReadMessageHistory: 1n << 16n,
172
- UseExternalEmojis: 1n << 17n,
173
- UseSlashCommands: 1n << 18n,
174
- MentionEveryone: 1n << 19n,
175
- // Voice (20-27)
176
- Connect: 1n << 20n,
177
- Speak: 1n << 21n,
178
- MuteMembers: 1n << 22n,
179
- DeafenMembers: 1n << 23n,
180
- MoveMembers: 1n << 24n,
181
- UseVAD: 1n << 25n,
182
- ChangeCodec: 1n << 26n,
183
- AudioQualityAdmin: 1n << 27n,
184
- // Video and Screen Sharing (28-37)
185
- VideoCall: 1n << 28n,
186
- ShareScreen: 1n << 29n,
187
- ShareCamera: 1n << 30n,
188
- ControlQuality: 1n << 31n,
189
- RequestToSpeak: 1n << 32n,
190
- ManageEvents: 1n << 33n,
191
- AddMembers: 1n << 34n,
192
- RemoveMembers: 1n << 35n,
193
- ChangeGroupIcon: 1n << 36n,
194
- ChangeDMSettings: 1n << 37n,
195
- // Advanced (38-43)
196
- ManageGroup: 1n << 38n,
197
- UseActivities: 1n << 39n,
198
- ModerateMembers: 1n << 40n,
199
- ManageRoles: 1n << 41n,
200
- ManageEmojis: 1n << 42n,
201
- PrioritySpeaker: 1n << 43n,
202
- };
203
- /**
204
- * Overwrite Type - for permission overwrites
205
- */
206
- var OverwriteType;
207
- (function (OverwriteType) {
208
- OverwriteType[OverwriteType["Role"] = 0] = "Role";
209
- OverwriteType[OverwriteType["Member"] = 1] = "Member";
210
- })(OverwriteType || (exports.OverwriteType = OverwriteType = {}));
211
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW51bXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCxJQUFZLGlCQW9CWDtBQXBCRCxXQUFZLGlCQUFpQjtJQUMzQiw2REFBZSxDQUFBO0lBQ2YseUVBQXFCLENBQUE7SUFDckIsK0VBQXdCLENBQUE7SUFDeEIsNkZBQStCLENBQUE7SUFDL0Isb0ZBQTBCLENBQUE7SUFDMUIsNEVBQXNCLENBQUE7SUFDdEIsMEVBQXFCLENBQUE7SUFDckIsbUZBQXlCLENBQUE7SUFDekIsK0VBQXVCLENBQUE7SUFDdkIsNkVBQXNCLENBQUE7SUFDdEIsOEZBQStCLENBQUE7SUFDL0Isd0ZBQTRCLENBQUE7SUFDNUIsZ0ZBQXdCLENBQUE7SUFDeEIsZ0dBQWdDLENBQUE7SUFDaEMsMkZBQTZCLENBQUE7SUFDN0IsaUZBQXdCLENBQUE7SUFDeEIsNkZBQThCLENBQUE7SUFDOUIsNkdBQXFDLENBQUE7SUFDckMscUdBQWlDLENBQUE7QUFDbkMsQ0FBQyxFQXBCVyxpQkFBaUIsaUNBQWpCLGlCQUFpQixRQW9CNUI7QUFFRDs7R0FFRztBQUNILElBQVksY0FZWDtBQVpELFdBQVksY0FBYztJQUN4QiwyREFBWSxDQUFBO0lBQ1osNkRBQWEsQ0FBQTtJQUNiLDJEQUFZLENBQUE7SUFDWix1RUFBa0IsQ0FBQTtJQUNsQiwyRUFBb0IsQ0FBQTtJQUNwQix1REFBVSxDQUFBO0lBQ1YsNkRBQWEsQ0FBQTtJQUNiLGlGQUF1QixDQUFBO0lBQ3ZCLHVFQUFrQixDQUFBO0lBQ2xCLHNEQUFVLENBQUE7SUFDVixvRUFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBWlcsY0FBYyw4QkFBZCxjQUFjLFFBWXpCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGVBTVg7QUFORCxXQUFZLGVBQWU7SUFDekIscURBQVEsQ0FBQTtJQUNSLGlGQUFzQixDQUFBO0lBQ3RCLDZFQUFvQixDQUFBO0lBQ3BC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QUUsRUFBRSxJQUFJLEdBQUc7SUFDMUIsZ0JBQWdCLEVBQUUsRUFBRSxJQUFJLEdBQUc7SUFFM0IsbUJBQW1CO0lBQ25CLFdBQVcsRUFBRSxFQUFFLElBQUksR0FBRztJQUN0QixhQUFhLEVBQUUsRUFBRSxJQUFJLEdBQUc7SUFDeEIsZUFBZSxFQUFFLEVBQUUsSUFBSSxHQUFHO0lBQzFCLFdBQVcsRUFBRSxFQUFFLElBQUksR0FBRztJQUN0QixZQUFZLEVBQUUsRUFBRSxJQUFJLEdBQUc7SUFDdkIsZUFBZSxFQUFFLEVBQUUsSUFBSSxHQUFHO0NBQ2xCLENBQUM7QUFFWDs7R0FFRztBQUNILElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUN2QixpREFBUSxDQUFBO0lBQ1IscURBQVUsQ0FBQTtBQUNaLENBQUMsRUFIVyxhQUFhLDZCQUFiLGFBQWEsUUFHeEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogR2F0ZXdheSBJbnRlbnQgQml0c1xyXG4gKi9cclxuZXhwb3J0IGVudW0gR2F0ZXdheUludGVudEJpdHMge1xyXG4gIEd1aWxkcyA9IDEgPDwgMCxcclxuICBHdWlsZE1lbWJlcnMgPSAxIDw8IDEsXHJcbiAgR3VpbGRNb2RlcmF0aW9uID0gMSA8PCAyLFxyXG4gIEd1aWxkRW1vamlzQW5kU3RpY2tlcnMgPSAxIDw8IDMsXHJcbiAgR3VpbGRJbnRlZ3JhdGlvbnMgPSAxIDw8IDQsXHJcbiAgR3VpbGRXZWJob29rcyA9IDEgPDwgNSxcclxuICBHdWlsZEludml0ZXMgPSAxIDw8IDYsXHJcbiAgR3VpbGRWb2ljZVN0YXRlcyA9IDEgPDwgNyxcclxuICBHdWlsZFByZXNlbmNlcyA9IDEgPDwgOCxcclxuICBHdWlsZE1lc3NhZ2VzID0gMSA8PCA5LFxyXG4gIEd1aWxkTWVzc2FnZVJlYWN0aW9ucyA9IDEgPDwgMTAsXHJcbiAgR3VpbGRNZXNzYWdlVHlwaW5nID0gMSA8PCAxMSxcclxuICBEaXJlY3RNZXNzYWdlcyA9IDEgPDwgMTIsXHJcbiAgRGlyZWN0TWVzc2FnZVJlYWN0aW9ucyA9IDEgPDwgMTMsXHJcbiAgRGlyZWN0TWVzc2FnZVR5cGluZyA9IDEgPDwgMTQsXHJcbiAgTWVzc2FnZUNvbnRlbnQgPSAxIDw8IDE1LFxyXG4gIEd1aWxkU2NoZWR1bGVkRXZlbnRzID0gMSA8PCAxNixcclxuICBBdXRvTW9kZXJhdGlvbkNvbmZpZ3VyYXRpb24gPSAxIDw8IDIwLFxyXG4gIEF1dG9Nb2RlcmF0aW9uRXhlY3V0aW9uID0gMSA8PCAyMVxyXG59XHJcblxyXG4vKipcclxuICogR2F0ZXdheSBPcGNvZGVzXHJcbiAqL1xyXG5leHBvcnQgZW51bSBHYXRld2F5T3Bjb2RlcyB7XHJcbiAgRGlzcGF0Y2ggPSAwLFxyXG4gIEhlYXJ0YmVhdCA9IDEsXHJcbiAgSWRlbnRpZnkgPSAyLFxyXG4gIFByZXNlbmNlVXBkYXRlID0gMyxcclxuICBWb2ljZVN0YXRlVXBkYXRlID0gNCxcclxuICBSZXN1bWUgPSA2LFxyXG4gIFJlY29ubmVjdCA9IDcsXHJcbiAgUmVxdWVzdEd1aWxkTWVtYmVycyA9IDgsXHJcbiAgSW52YWxpZFNlc3Npb24gPSA5LFxyXG4gIEhlbGxvID0gMTAsXHJcbiAgSGVhcnRiZWF0QWNrID0gMTFcclxufVxyXG5cclxuLyoqXHJcbiAqIEludGVyYWN0aW9uIFR5cGVzXHJcbiAqL1xyXG5leHBvcnQgZW51bSBJbnRlcmFjdGlvblR5cGUge1xyXG4gIFBpbmcgPSAxLFxyXG4gIEFwcGxpY2F0aW9uQ29tbWFuZCA9IDIsXHJcbiAgTWVzc2FnZUNvbXBvbmVudCA9IDMsXHJcbiAgQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlID0gNCxcclxuICBNb2RhbFN1Ym1pdCA9IDVcclxufVxyXG5cclxuLyoqXHJcbiAqIEFwcGxpY2F0aW9uIENvbW1hbmQgVHlwZXNcclxuICovXHJcbmV4cG9ydCBlbnVtIEFwcGxpY2F0aW9uQ29tbWFuZFR5cGUge1xyXG4gIENoYXRJbnB1dCA9IDEsXHJcbiAgVXNlciA9IDIsXHJcbiAgTWVzc2FnZSA9IDNcclxufVxyXG5cclxuLyoqXHJcbiAqIEFwcGxpY2F0aW9uIENvbW1hbmQgT3B0aW9uIFR5cGVzXHJcbiAqL1xyXG5leHBvcnQgZW51bSBBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25UeXBlIHtcclxuICBTdWJjb21tYW5kID0gMSxcclxuICBTdWJjb21tYW5kR3JvdXAgPSAyLFxyXG4gIFN0cmluZyA9IDMsXHJcbiAgSW50ZWdlciA9IDQsXHJcbiAgQm9vbGVhbiA9IDUsXHJcbiAgVXNlciA9IDYsXHJcbiAgQ2hhbm5lbCA9IDcsXHJcbiAgUm9sZSA9IDgsXHJcbiAgTWVudGlvbmFibGUgPSA5LFxyXG4gIE51bWJlciA9IDEwLFxyXG4gIEF0dGFjaG1lbnQgPSAxMVxyXG59XHJcblxyXG4vKipcclxuICogQ2hhbm5lbCBUeXBlc1xyXG4gKi9cclxuZXhwb3J0IGVudW0gQ2hhbm5lbFR5cGUge1xyXG4gIEd1aWxkVGV4dCA9IDAsXHJcbiAgRE0gPSAxLFxyXG4gIEd1aWxkVm9pY2UgPSAyLFxyXG4gIEdyb3VwRE0gPSAzLFxyXG4gIEd1aWxkQ2F0ZWdvcnkgPSA0LFxyXG4gIEd1aWxkQW5ub3VuY2VtZW50ID0gNSxcclxuICBHdWlsZFN0YWdlVm9pY2UgPSAxMyxcclxuICBHdWlsZERpcmVjdG9yeSA9IDE0LFxyXG4gIEd1aWxkRm9ydW0gPSAxNVxyXG59XHJcblxyXG4vKipcclxuICogSW50ZXJhY3Rpb24gUmVzcG9uc2UgVHlwZXNcclxuICovXHJcbmV4cG9ydCBlbnVtIEludGVyYWN0aW9uUmVzcG9uc2VUeXBlIHtcclxuICBQb25nID0gMSxcclxuICBDaGFubmVsTWVzc2FnZVdpdGhTb3VyY2UgPSA0LFxyXG4gIERlZmVycmVkQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlID0gNSxcclxuICBEZWZlcnJlZFVwZGF0ZU1lc3NhZ2UgPSA2LFxyXG4gIFVwZGF0ZU1lc3NhZ2UgPSA3LFxyXG4gIEFwcGxpY2F0aW9uQ29tbWFuZEF1dG9jb21wbGV0ZVJlc3VsdCA9IDgsXHJcbiAgTW9kYWwgPSA5XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBNZXNzYWdlIEZsYWdzXHJcbiAqL1xyXG5leHBvcnQgZW51bSBNZXNzYWdlRmxhZ3Mge1xyXG4gIENyb3NzcG9zdGVkID0gMSA8PCAwLFxyXG4gIElzQ3Jvc3Nwb3N0ID0gMSA8PCAxLFxyXG4gIFN1cHByZXNzRW1iZWRzID0gMSA8PCAyLFxyXG4gIFNvdXJjZU1lc3NhZ2VEZWxldGVkID0gMSA8PCAzLFxyXG4gIFVyZ2VudCA9IDEgPDwgNCxcclxuICBFcGhlbWVyYWwgPSAxIDw8IDYsXHJcbiAgTG9hZGluZyA9IDEgPDwgNyxcclxuICBTdXBwcmVzc05vdGlmaWNhdGlvbnMgPSAxIDw8IDEyXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBY3Rpdml0eSBUeXBlc1xyXG4gKi9cclxuZXhwb3J0IGVudW0gQWN0aXZpdHlUeXBlIHtcclxuICBQbGF5aW5nID0gMCxcclxuICBTdHJlYW1pbmcgPSAxLFxyXG4gIExpc3RlbmluZyA9IDIsXHJcbiAgV2F0Y2hpbmcgPSAzLFxyXG4gIEN1c3RvbSA9IDQsXHJcbiAgQ29tcGV0aW5nID0gNVxyXG59XHJcblxyXG4vKipcclxuICogUHJlc2VuY2UgU3RhdHVzXHJcbiAqL1xyXG5leHBvcnQgZW51bSBQcmVzZW5jZVN0YXR1cyB7XHJcbiAgT25saW5lID0gJ29ubGluZScsXHJcbiAgSWRsZSA9ICdpZGxlJyxcclxuICBEb05vdERpc3R1cmIgPSAnZG5kJyxcclxuICBJbnZpc2libGUgPSAnaW52aXNpYmxlJyxcclxuICBPZmZsaW5lID0gJ29mZmxpbmUnXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQZXJtaXNzaW9uIEZsYWdzIEJpdHNcclxuICogVXNlZCBmb3IgY2hhbm5lbCBwZXJtaXNzaW9uIG92ZXJ3cml0ZXNcclxuICovXHJcbmV4cG9ydCBjb25zdCBQZXJtaXNzaW9uRmxhZ3NCaXRzID0ge1xyXG4gIC8vIEdlbmVyYWwgKDAtOSlcclxuICBDcmVhdGVJbnN0YW50SW52aXRlOiAxbiA8PCAwbixcclxuICBLaWNrTWVtYmVyczogMW4gPDwgMW4sXHJcbiAgQmFuTWVtYmVyczogMW4gPDwgMm4sXHJcbiAgQWRtaW5pc3RyYXRvcjogMW4gPDwgM24sXHJcbiAgTWFuYWdlQ2hhbm5lbHM6IDFuIDw8IDRuLFxyXG4gIE1hbmFnZUd1aWxkOiAxbiA8PCA1bixcclxuICBBZGRSZWFjdGlvbnM6IDFuIDw8IDZuLFxyXG4gIFZpZXdBdWRpdExvZzogMW4gPDwgN24sXHJcbiAgVmlld0d1aWxkSW5zaWdodHM6IDFuIDw8IDhuLFxyXG4gIFN0cmVhbTogMW4gPDwgOW4sXHJcbiAgVmlld0NoYW5uZWw6IDFuIDw8IDEwbixcclxuXHJcbiAgLy8gTWVzc2FnZXMgKDExLTE5KVxyXG4gIFNlbmRNZXNzYWdlczogMW4gPDwgMTFuLFxyXG4gIFNlbmRUVFNNZXNzYWdlczogMW4gPDwgMTJuLFxyXG4gIE1hbmFnZU1lc3NhZ2VzOiAxbiA8PCAxM24sXHJcbiAgRW1iZWRMaW5rczogMW4gPDwgMTRuLFxyXG4gIEF0dGFjaEZpbGVzOiAxbiA8PCAxNW4sXHJcbiAgUmVhZE1lc3NhZ2VIaXN0b3J5OiAxbiA8PCAxNm4sXHJcbiAgVXNlRXh0ZXJuYWxFbW9qaXM6IDFuIDw8IDE3bixcclxuICBVc2VTbGFzaENvbW1hbmRzOiAxbiA8PCAxOG4sXHJcbiAgTWVudGlvbkV2ZXJ5b25lOiAxbiA8PCAxOW4sXHJcblxyXG4gIC8vIFZvaWNlICgyMC0yNylcclxuICBDb25uZWN0OiAxbiA8PCAyMG4sXHJcbiAgU3BlYWs6IDFuIDw8IDIxbixcclxuICBNdXRlTWVtYmVyczogMW4gPDwgMjJuLFxyXG4gIERlYWZlbk1lbWJlcnM6IDFuIDw8IDIzbixcclxuICBNb3ZlTWVtYmVyczogMW4gPDwgMjRuLFxyXG4gIFVzZVZBRDogMW4gPDwgMjVuLFxyXG4gIENoYW5nZUNvZGVjOiAxbiA8PCAyNm4sXHJcbiAgQXVkaW9RdWFsaXR5QWRtaW46IDFuIDw8IDI3bixcclxuXHJcbiAgLy8gVmlkZW8gYW5kIFNjcmVlbiBTaGFyaW5nICgyOC0zNylcclxuICBWaWRlb0NhbGw6IDFuIDw8IDI4bixcclxuICBTaGFyZVNjcmVlbjogMW4gPDwgMjluLFxyXG4gIFNoYXJlQ2FtZXJhOiAxbiA8PCAzMG4sXHJcbiAgQ29udHJvbFF1YWxpdHk6IDFuIDw8IDMxbixcclxuICBSZXF1ZXN0VG9TcGVhazogMW4gPDwgMzJuLFxyXG4gIE1hbmFnZUV2ZW50czogMW4gPDwgMzNuLFxyXG4gIEFkZE1lbWJlcnM6IDFuIDw8IDM0bixcclxuICBSZW1vdmVNZW1iZXJzOiAxbiA8PCAzNW4sXHJcbiAgQ2hhbmdlR3JvdXBJY29uOiAxbiA8PCAzNm4sXHJcbiAgQ2hhbmdlRE1TZXR0aW5nczogMW4gPDwgMzduLFxyXG5cclxuICAvLyBBZHZhbmNlZCAoMzgtNDMpXHJcbiAgTWFuYWdlR3JvdXA6IDFuIDw8IDM4bixcclxuICBVc2VBY3Rpdml0aWVzOiAxbiA8PCAzOW4sXHJcbiAgTW9kZXJhdGVNZW1iZXJzOiAxbiA8PCA0MG4sXHJcbiAgTWFuYWdlUm9sZXM6IDFuIDw8IDQxbixcclxuICBNYW5hZ2VFbW9qaXM6IDFuIDw8IDQybixcclxuICBQcmlvcml0eVNwZWFrZXI6IDFuIDw8IDQzbixcclxufSBhcyBjb25zdDtcclxuXHJcbi8qKlxyXG4gKiBPdmVyd3JpdGUgVHlwZSAtIGZvciBwZXJtaXNzaW9uIG92ZXJ3cml0ZXNcclxuICovXHJcbmV4cG9ydCBlbnVtIE92ZXJ3cml0ZVR5cGUge1xyXG4gIFJvbGUgPSAwLFxyXG4gIE1lbWJlciA9IDEsXHJcbn1cclxuIl19
@@ -1,25 +0,0 @@
1
- /**
2
- * @jubbio/core - Bot library for Jubbio
3
- */
4
- export { Client, GatewayIntentBits } from './Client';
5
- export * from './types';
6
- export * from './enums';
7
- export { REST, type MentionsData, type MentionUser, type MentionRole } from './rest/REST';
8
- export { Collection } from './structures/Collection';
9
- export { User } from './structures/User';
10
- export { Guild } from './structures/Guild';
11
- export { GuildMember, Permissions, PermissionFlags } from './structures/GuildMember';
12
- export { Message, type MessageMentions } from './structures/Message';
13
- export { Interaction, CommandInteraction, ButtonInteraction, SelectMenuInteraction, AutocompleteInteraction, ModalSubmitInteraction, CommandInteractionOptions, createInteraction, type InteractionReplyOptions, type AutocompleteChoice, type ModalData, } from './structures/Interaction';
14
- export { BaseChannel, TextChannel, VoiceChannel, DMChannel, createChannel, type MessageCreateOptions, } from './structures/Channel';
15
- export { Collector, MessageCollector, InteractionCollector, ReactionCollector, awaitMessages, awaitReactions, type CollectorOptions, type MessageCollectorOptions, type InteractionCollectorOptions, type ReactionCollectorOptions, } from './utils/Collector';
16
- export { EmbedBuilder, Colors, type APIEmbed, type APIEmbedField, type APIEmbedAuthor, type APIEmbedFooter, type APIEmbedImage, type APIEmbedThumbnail, } from './builders/EmbedBuilder';
17
- export { ButtonBuilder, ButtonStyle, type APIButtonComponent, } from './builders/ButtonBuilder';
18
- export { StringSelectMenuBuilder, SelectMenuBuilder, StringSelectMenuOptionBuilder, type APISelectMenuOption, type APISelectMenuComponent, } from './builders/SelectMenuBuilder';
19
- export { ActionRowBuilder, type APIActionRow, type APIActionRowComponent, } from './builders/ActionRowBuilder';
20
- export { ModalBuilder, TextInputBuilder, TextInputStyle, type APITextInputComponent, type APIModalActionRow, type APIModal, } from './builders/ModalBuilder';
21
- export { SlashCommandBuilder, SlashCommandStringOption, SlashCommandIntegerOption, SlashCommandNumberOption, SlashCommandBooleanOption, SlashCommandUserOption, SlashCommandChannelOption, SlashCommandRoleOption, SlashCommandMentionableOption, SlashCommandAttachmentOption, ApplicationCommandOptionType as SlashCommandOptionType, } from './builders/SlashCommandBuilder';
22
- export { Formatters, userMention, channelMention, roleMention, formatEmoji, bold, italic, underline, strikethrough, spoiler, inlineCode, codeBlock, blockQuote, quote, hyperlink, hideLinkEmbed, time, heading, unorderedList, orderedList, TimestampStyles, } from './utils/Formatters';
23
- export { BitField, type BitFieldResolvable } from './utils/BitField';
24
- export { PermissionsBitField, type PermissionString, type PermissionResolvable } from './utils/PermissionsBitField';
25
- export { ShardingManager, Shard, ShardClientUtil, ShardStatus, type ShardingManagerOptions, } from './sharding/ShardingManager';
package/dist/cjs/index.js DELETED
@@ -1,130 +0,0 @@
1
- "use strict";
2
- /**
3
- * @jubbio/core - Bot library for Jubbio
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.SlashCommandAttachmentOption = exports.SlashCommandMentionableOption = exports.SlashCommandRoleOption = exports.SlashCommandChannelOption = exports.SlashCommandUserOption = exports.SlashCommandBooleanOption = exports.SlashCommandNumberOption = exports.SlashCommandIntegerOption = exports.SlashCommandStringOption = exports.SlashCommandBuilder = exports.TextInputStyle = exports.TextInputBuilder = exports.ModalBuilder = exports.ActionRowBuilder = exports.StringSelectMenuOptionBuilder = exports.SelectMenuBuilder = exports.StringSelectMenuBuilder = exports.ButtonStyle = exports.ButtonBuilder = exports.Colors = exports.EmbedBuilder = exports.awaitReactions = exports.awaitMessages = exports.ReactionCollector = exports.InteractionCollector = exports.MessageCollector = exports.Collector = exports.createChannel = exports.DMChannel = exports.VoiceChannel = exports.TextChannel = exports.BaseChannel = exports.createInteraction = exports.CommandInteractionOptions = exports.ModalSubmitInteraction = exports.AutocompleteInteraction = exports.SelectMenuInteraction = exports.ButtonInteraction = exports.CommandInteraction = exports.Interaction = exports.Message = exports.PermissionFlags = exports.Permissions = exports.GuildMember = exports.Guild = exports.User = exports.Collection = exports.REST = exports.GatewayIntentBits = exports.Client = void 0;
21
- exports.ShardStatus = exports.ShardClientUtil = exports.Shard = exports.ShardingManager = exports.PermissionsBitField = exports.BitField = exports.TimestampStyles = exports.orderedList = exports.unorderedList = exports.heading = exports.time = exports.hideLinkEmbed = exports.hyperlink = exports.quote = exports.blockQuote = exports.codeBlock = exports.inlineCode = exports.spoiler = exports.strikethrough = exports.underline = exports.italic = exports.bold = exports.formatEmoji = exports.roleMention = exports.channelMention = exports.userMention = exports.Formatters = exports.SlashCommandOptionType = void 0;
22
- // Core
23
- var Client_1 = require("./Client");
24
- Object.defineProperty(exports, "Client", { enumerable: true, get: function () { return Client_1.Client; } });
25
- Object.defineProperty(exports, "GatewayIntentBits", { enumerable: true, get: function () { return Client_1.GatewayIntentBits; } });
26
- __exportStar(require("./types"), exports);
27
- __exportStar(require("./enums"), exports);
28
- // REST
29
- var REST_1 = require("./rest/REST");
30
- Object.defineProperty(exports, "REST", { enumerable: true, get: function () { return REST_1.REST; } });
31
- // Structures
32
- var Collection_1 = require("./structures/Collection");
33
- Object.defineProperty(exports, "Collection", { enumerable: true, get: function () { return Collection_1.Collection; } });
34
- var User_1 = require("./structures/User");
35
- Object.defineProperty(exports, "User", { enumerable: true, get: function () { return User_1.User; } });
36
- var Guild_1 = require("./structures/Guild");
37
- Object.defineProperty(exports, "Guild", { enumerable: true, get: function () { return Guild_1.Guild; } });
38
- var GuildMember_1 = require("./structures/GuildMember");
39
- Object.defineProperty(exports, "GuildMember", { enumerable: true, get: function () { return GuildMember_1.GuildMember; } });
40
- Object.defineProperty(exports, "Permissions", { enumerable: true, get: function () { return GuildMember_1.Permissions; } });
41
- Object.defineProperty(exports, "PermissionFlags", { enumerable: true, get: function () { return GuildMember_1.PermissionFlags; } });
42
- var Message_1 = require("./structures/Message");
43
- Object.defineProperty(exports, "Message", { enumerable: true, get: function () { return Message_1.Message; } });
44
- var Interaction_1 = require("./structures/Interaction");
45
- Object.defineProperty(exports, "Interaction", { enumerable: true, get: function () { return Interaction_1.Interaction; } });
46
- Object.defineProperty(exports, "CommandInteraction", { enumerable: true, get: function () { return Interaction_1.CommandInteraction; } });
47
- Object.defineProperty(exports, "ButtonInteraction", { enumerable: true, get: function () { return Interaction_1.ButtonInteraction; } });
48
- Object.defineProperty(exports, "SelectMenuInteraction", { enumerable: true, get: function () { return Interaction_1.SelectMenuInteraction; } });
49
- Object.defineProperty(exports, "AutocompleteInteraction", { enumerable: true, get: function () { return Interaction_1.AutocompleteInteraction; } });
50
- Object.defineProperty(exports, "ModalSubmitInteraction", { enumerable: true, get: function () { return Interaction_1.ModalSubmitInteraction; } });
51
- Object.defineProperty(exports, "CommandInteractionOptions", { enumerable: true, get: function () { return Interaction_1.CommandInteractionOptions; } });
52
- Object.defineProperty(exports, "createInteraction", { enumerable: true, get: function () { return Interaction_1.createInteraction; } });
53
- var Channel_1 = require("./structures/Channel");
54
- Object.defineProperty(exports, "BaseChannel", { enumerable: true, get: function () { return Channel_1.BaseChannel; } });
55
- Object.defineProperty(exports, "TextChannel", { enumerable: true, get: function () { return Channel_1.TextChannel; } });
56
- Object.defineProperty(exports, "VoiceChannel", { enumerable: true, get: function () { return Channel_1.VoiceChannel; } });
57
- Object.defineProperty(exports, "DMChannel", { enumerable: true, get: function () { return Channel_1.DMChannel; } });
58
- Object.defineProperty(exports, "createChannel", { enumerable: true, get: function () { return Channel_1.createChannel; } });
59
- // Collectors (from utils - more comprehensive)
60
- var Collector_1 = require("./utils/Collector");
61
- Object.defineProperty(exports, "Collector", { enumerable: true, get: function () { return Collector_1.Collector; } });
62
- Object.defineProperty(exports, "MessageCollector", { enumerable: true, get: function () { return Collector_1.MessageCollector; } });
63
- Object.defineProperty(exports, "InteractionCollector", { enumerable: true, get: function () { return Collector_1.InteractionCollector; } });
64
- Object.defineProperty(exports, "ReactionCollector", { enumerable: true, get: function () { return Collector_1.ReactionCollector; } });
65
- Object.defineProperty(exports, "awaitMessages", { enumerable: true, get: function () { return Collector_1.awaitMessages; } });
66
- Object.defineProperty(exports, "awaitReactions", { enumerable: true, get: function () { return Collector_1.awaitReactions; } });
67
- // Builders
68
- var EmbedBuilder_1 = require("./builders/EmbedBuilder");
69
- Object.defineProperty(exports, "EmbedBuilder", { enumerable: true, get: function () { return EmbedBuilder_1.EmbedBuilder; } });
70
- Object.defineProperty(exports, "Colors", { enumerable: true, get: function () { return EmbedBuilder_1.Colors; } });
71
- var ButtonBuilder_1 = require("./builders/ButtonBuilder");
72
- Object.defineProperty(exports, "ButtonBuilder", { enumerable: true, get: function () { return ButtonBuilder_1.ButtonBuilder; } });
73
- Object.defineProperty(exports, "ButtonStyle", { enumerable: true, get: function () { return ButtonBuilder_1.ButtonStyle; } });
74
- var SelectMenuBuilder_1 = require("./builders/SelectMenuBuilder");
75
- Object.defineProperty(exports, "StringSelectMenuBuilder", { enumerable: true, get: function () { return SelectMenuBuilder_1.StringSelectMenuBuilder; } });
76
- Object.defineProperty(exports, "SelectMenuBuilder", { enumerable: true, get: function () { return SelectMenuBuilder_1.SelectMenuBuilder; } });
77
- Object.defineProperty(exports, "StringSelectMenuOptionBuilder", { enumerable: true, get: function () { return SelectMenuBuilder_1.StringSelectMenuOptionBuilder; } });
78
- var ActionRowBuilder_1 = require("./builders/ActionRowBuilder");
79
- Object.defineProperty(exports, "ActionRowBuilder", { enumerable: true, get: function () { return ActionRowBuilder_1.ActionRowBuilder; } });
80
- var ModalBuilder_1 = require("./builders/ModalBuilder");
81
- Object.defineProperty(exports, "ModalBuilder", { enumerable: true, get: function () { return ModalBuilder_1.ModalBuilder; } });
82
- Object.defineProperty(exports, "TextInputBuilder", { enumerable: true, get: function () { return ModalBuilder_1.TextInputBuilder; } });
83
- Object.defineProperty(exports, "TextInputStyle", { enumerable: true, get: function () { return ModalBuilder_1.TextInputStyle; } });
84
- var SlashCommandBuilder_1 = require("./builders/SlashCommandBuilder");
85
- Object.defineProperty(exports, "SlashCommandBuilder", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandBuilder; } });
86
- Object.defineProperty(exports, "SlashCommandStringOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandStringOption; } });
87
- Object.defineProperty(exports, "SlashCommandIntegerOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandIntegerOption; } });
88
- Object.defineProperty(exports, "SlashCommandNumberOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandNumberOption; } });
89
- Object.defineProperty(exports, "SlashCommandBooleanOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandBooleanOption; } });
90
- Object.defineProperty(exports, "SlashCommandUserOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandUserOption; } });
91
- Object.defineProperty(exports, "SlashCommandChannelOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandChannelOption; } });
92
- Object.defineProperty(exports, "SlashCommandRoleOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandRoleOption; } });
93
- Object.defineProperty(exports, "SlashCommandMentionableOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandMentionableOption; } });
94
- Object.defineProperty(exports, "SlashCommandAttachmentOption", { enumerable: true, get: function () { return SlashCommandBuilder_1.SlashCommandAttachmentOption; } });
95
- Object.defineProperty(exports, "SlashCommandOptionType", { enumerable: true, get: function () { return SlashCommandBuilder_1.ApplicationCommandOptionType; } });
96
- // Utils - Formatters
97
- var Formatters_1 = require("./utils/Formatters");
98
- Object.defineProperty(exports, "Formatters", { enumerable: true, get: function () { return Formatters_1.Formatters; } });
99
- Object.defineProperty(exports, "userMention", { enumerable: true, get: function () { return Formatters_1.userMention; } });
100
- Object.defineProperty(exports, "channelMention", { enumerable: true, get: function () { return Formatters_1.channelMention; } });
101
- Object.defineProperty(exports, "roleMention", { enumerable: true, get: function () { return Formatters_1.roleMention; } });
102
- Object.defineProperty(exports, "formatEmoji", { enumerable: true, get: function () { return Formatters_1.formatEmoji; } });
103
- Object.defineProperty(exports, "bold", { enumerable: true, get: function () { return Formatters_1.bold; } });
104
- Object.defineProperty(exports, "italic", { enumerable: true, get: function () { return Formatters_1.italic; } });
105
- Object.defineProperty(exports, "underline", { enumerable: true, get: function () { return Formatters_1.underline; } });
106
- Object.defineProperty(exports, "strikethrough", { enumerable: true, get: function () { return Formatters_1.strikethrough; } });
107
- Object.defineProperty(exports, "spoiler", { enumerable: true, get: function () { return Formatters_1.spoiler; } });
108
- Object.defineProperty(exports, "inlineCode", { enumerable: true, get: function () { return Formatters_1.inlineCode; } });
109
- Object.defineProperty(exports, "codeBlock", { enumerable: true, get: function () { return Formatters_1.codeBlock; } });
110
- Object.defineProperty(exports, "blockQuote", { enumerable: true, get: function () { return Formatters_1.blockQuote; } });
111
- Object.defineProperty(exports, "quote", { enumerable: true, get: function () { return Formatters_1.quote; } });
112
- Object.defineProperty(exports, "hyperlink", { enumerable: true, get: function () { return Formatters_1.hyperlink; } });
113
- Object.defineProperty(exports, "hideLinkEmbed", { enumerable: true, get: function () { return Formatters_1.hideLinkEmbed; } });
114
- Object.defineProperty(exports, "time", { enumerable: true, get: function () { return Formatters_1.time; } });
115
- Object.defineProperty(exports, "heading", { enumerable: true, get: function () { return Formatters_1.heading; } });
116
- Object.defineProperty(exports, "unorderedList", { enumerable: true, get: function () { return Formatters_1.unorderedList; } });
117
- Object.defineProperty(exports, "orderedList", { enumerable: true, get: function () { return Formatters_1.orderedList; } });
118
- Object.defineProperty(exports, "TimestampStyles", { enumerable: true, get: function () { return Formatters_1.TimestampStyles; } });
119
- // Utils - BitFields
120
- var BitField_1 = require("./utils/BitField");
121
- Object.defineProperty(exports, "BitField", { enumerable: true, get: function () { return BitField_1.BitField; } });
122
- var PermissionsBitField_1 = require("./utils/PermissionsBitField");
123
- Object.defineProperty(exports, "PermissionsBitField", { enumerable: true, get: function () { return PermissionsBitField_1.PermissionsBitField; } });
124
- // Sharding
125
- var ShardingManager_1 = require("./sharding/ShardingManager");
126
- Object.defineProperty(exports, "ShardingManager", { enumerable: true, get: function () { return ShardingManager_1.ShardingManager; } });
127
- Object.defineProperty(exports, "Shard", { enumerable: true, get: function () { return ShardingManager_1.Shard; } });
128
- Object.defineProperty(exports, "ShardClientUtil", { enumerable: true, get: function () { return ShardingManager_1.ShardClientUtil; } });
129
- Object.defineProperty(exports, "ShardStatus", { enumerable: true, get: function () { return ShardingManager_1.ShardStatus; } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCxPQUFPO0FBQ1AsbUNBQXFEO0FBQTVDLGdHQUFBLE1BQU0sT0FBQTtBQUFFLDJHQUFBLGlCQUFpQixPQUFBO0FBQ2xDLDBDQUF3QjtBQUN4QiwwQ0FBd0I7QUFFeEIsT0FBTztBQUNQLG9DQUEwRjtBQUFqRiw0RkFBQSxJQUFJLE9BQUE7QUFFYixhQUFhO0FBQ2Isc0RBQXFEO0FBQTVDLHdHQUFBLFVBQVUsT0FBQTtBQUNuQiwwQ0FBeUM7QUFBaEMsNEZBQUEsSUFBSSxPQUFBO0FBQ2IsNENBQTJDO0FBQWxDLDhGQUFBLEtBQUssT0FBQTtBQUNkLHdEQUFxRjtBQUE1RSwwR0FBQSxXQUFXLE9BQUE7QUFBRSwwR0FBQSxXQUFXLE9BQUE7QUFBRSw4R0FBQSxlQUFlLE9BQUE7QUFDbEQsZ0RBQXFFO0FBQTVELGtHQUFBLE9BQU8sT0FBQTtBQUNoQix3REFZa0M7QUFYaEMsMEdBQUEsV0FBVyxPQUFBO0FBQ1gsaUhBQUEsa0JBQWtCLE9BQUE7QUFDbEIsZ0hBQUEsaUJBQWlCLE9BQUE7QUFDakIsb0hBQUEscUJBQXFCLE9BQUE7QUFDckIsc0hBQUEsdUJBQXVCLE9BQUE7QUFDdkIscUhBQUEsc0JBQXNCLE9BQUE7QUFDdEIsd0hBQUEseUJBQXlCLE9BQUE7QUFDekIsZ0hBQUEsaUJBQWlCLE9BQUE7QUFLbkIsZ0RBTzhCO0FBTjVCLHNHQUFBLFdBQVcsT0FBQTtBQUNYLHNHQUFBLFdBQVcsT0FBQTtBQUNYLHVHQUFBLFlBQVksT0FBQTtBQUNaLG9HQUFBLFNBQVMsT0FBQTtBQUNULHdHQUFBLGFBQWEsT0FBQTtBQUlmLCtDQUErQztBQUMvQywrQ0FXMkI7QUFWekIsc0dBQUEsU0FBUyxPQUFBO0FBQ1QsNkdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsaUhBQUEsb0JBQW9CLE9BQUE7QUFDcEIsOEdBQUEsaUJBQWlCLE9BQUE7QUFDakIsMEdBQUEsYUFBYSxPQUFBO0FBQ2IsMkdBQUEsY0FBYyxPQUFBO0FBT2hCLFdBQVc7QUFDWCx3REFTaUM7QUFSL0IsNEdBQUEsWUFBWSxPQUFBO0FBQ1osc0dBQUEsTUFBTSxPQUFBO0FBU1IsMERBSWtDO0FBSGhDLDhHQUFBLGFBQWEsT0FBQTtBQUNiLDRHQUFBLFdBQVcsT0FBQTtBQUliLGtFQU1zQztBQUxwQyw0SEFBQSx1QkFBdUIsT0FBQTtBQUN2QixzSEFBQSxpQkFBaUIsT0FBQTtBQUNqQixrSUFBQSw2QkFBNkIsT0FBQTtBQUsvQixnRUFJcUM7QUFIbkMsb0hBQUEsZ0JBQWdCLE9BQUE7QUFLbEIsd0RBT2lDO0FBTi9CLDRHQUFBLFlBQVksT0FBQTtBQUNaLGdIQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDhHQUFBLGNBQWMsT0FBQTtBQU1oQixzRUFZd0M7QUFYdEMsMEhBQUEsbUJBQW1CLE9BQUE7QUFDbkIsK0hBQUEsd0JBQXdCLE9BQUE7QUFDeEIsZ0lBQUEseUJBQXlCLE9BQUE7QUFDekIsK0hBQUEsd0JBQXdCLE9BQUE7QUFDeEIsZ0lBQUEseUJBQXlCLE9BQUE7QUFDekIsNkhBQUEsc0JBQXNCLE9BQUE7QUFDdEIsZ0lBQUEseUJBQXlCLE9BQUE7QUFDekIsNkhBQUEsc0JBQXNCLE9BQUE7QUFDdEIsb0lBQUEsNkJBQTZCLE9BQUE7QUFDN0IsbUlBQUEsNEJBQTRCLE9BQUE7QUFDNUIsNkhBQUEsNEJBQTRCLE9BQTBCO0FBR3hELHFCQUFxQjtBQUNyQixpREFzQjRCO0FBckIxQix3R0FBQSxVQUFVLE9BQUE7QUFDVix5R0FBQSxXQUFXLE9BQUE7QUFDWCw0R0FBQSxjQUFjLE9BQUE7QUFDZCx5R0FBQSxXQUFXLE9BQUE7QUFDWCx5R0FBQSxXQUFXLE9BQUE7QUFDWCxrR0FBQSxJQUFJLE9BQUE7QUFDSixvR0FBQSxNQUFNLE9BQUE7QUFDTix1R0FBQSxTQUFTLE9BQUE7QUFDVCwyR0FBQSxhQUFhLE9BQUE7QUFDYixxR0FBQSxPQUFPLE9BQUE7QUFDUCx3R0FBQSxVQUFVLE9BQUE7QUFDVix1R0FBQSxTQUFTLE9BQUE7QUFDVCx3R0FBQSxVQUFVLE9BQUE7QUFDVixtR0FBQSxLQUFLLE9BQUE7QUFDTCx1R0FBQSxTQUFTLE9BQUE7QUFDVCwyR0FBQSxhQUFhLE9BQUE7QUFDYixrR0FBQSxJQUFJLE9BQUE7QUFDSixxR0FBQSxPQUFPLE9BQUE7QUFDUCwyR0FBQSxhQUFhLE9BQUE7QUFDYix5R0FBQSxXQUFXLE9BQUE7QUFDWCw2R0FBQSxlQUFlLE9BQUE7QUFHakIsb0JBQW9CO0FBQ3BCLDZDQUFxRTtBQUE1RCxvR0FBQSxRQUFRLE9BQUE7QUFDakIsbUVBSXFDO0FBSG5DLDBIQUFBLG1CQUFtQixPQUFBO0FBS3JCLFdBQVc7QUFDWCw4REFNb0M7QUFMbEMsa0hBQUEsZUFBZSxPQUFBO0FBQ2Ysd0dBQUEsS0FBSyxPQUFBO0FBQ0wsa0hBQUEsZUFBZSxPQUFBO0FBQ2YsOEdBQUEsV0FBVyxPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBqdWJiaW8vY29yZSAtIEJvdCBsaWJyYXJ5IGZvciBKdWJiaW9cclxuICovXHJcblxyXG4vLyBDb3JlXHJcbmV4cG9ydCB7IENsaWVudCwgR2F0ZXdheUludGVudEJpdHMgfSBmcm9tICcuL0NsaWVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW1zJztcclxuXHJcbi8vIFJFU1RcclxuZXhwb3J0IHsgUkVTVCwgdHlwZSBNZW50aW9uc0RhdGEsIHR5cGUgTWVudGlvblVzZXIsIHR5cGUgTWVudGlvblJvbGUgfSBmcm9tICcuL3Jlc3QvUkVTVCc7XHJcblxyXG4vLyBTdHJ1Y3R1cmVzXHJcbmV4cG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuL3N0cnVjdHVyZXMvQ29sbGVjdGlvbic7XHJcbmV4cG9ydCB7IFVzZXIgfSBmcm9tICcuL3N0cnVjdHVyZXMvVXNlcic7XHJcbmV4cG9ydCB7IEd1aWxkIH0gZnJvbSAnLi9zdHJ1Y3R1cmVzL0d1aWxkJztcclxuZXhwb3J0IHsgR3VpbGRNZW1iZXIsIFBlcm1pc3Npb25zLCBQZXJtaXNzaW9uRmxhZ3MgfSBmcm9tICcuL3N0cnVjdHVyZXMvR3VpbGRNZW1iZXInO1xyXG5leHBvcnQgeyBNZXNzYWdlLCB0eXBlIE1lc3NhZ2VNZW50aW9ucyB9IGZyb20gJy4vc3RydWN0dXJlcy9NZXNzYWdlJztcclxuZXhwb3J0IHsgXHJcbiAgSW50ZXJhY3Rpb24sIFxyXG4gIENvbW1hbmRJbnRlcmFjdGlvbiwgXHJcbiAgQnV0dG9uSW50ZXJhY3Rpb24sIFxyXG4gIFNlbGVjdE1lbnVJbnRlcmFjdGlvbixcclxuICBBdXRvY29tcGxldGVJbnRlcmFjdGlvbixcclxuICBNb2RhbFN1Ym1pdEludGVyYWN0aW9uLFxyXG4gIENvbW1hbmRJbnRlcmFjdGlvbk9wdGlvbnMsXHJcbiAgY3JlYXRlSW50ZXJhY3Rpb24sXHJcbiAgdHlwZSBJbnRlcmFjdGlvblJlcGx5T3B0aW9ucyxcclxuICB0eXBlIEF1dG9jb21wbGV0ZUNob2ljZSxcclxuICB0eXBlIE1vZGFsRGF0YSxcclxufSBmcm9tICcuL3N0cnVjdHVyZXMvSW50ZXJhY3Rpb24nO1xyXG5leHBvcnQgeyBcclxuICBCYXNlQ2hhbm5lbCwgXHJcbiAgVGV4dENoYW5uZWwsIFxyXG4gIFZvaWNlQ2hhbm5lbCwgXHJcbiAgRE1DaGFubmVsLFxyXG4gIGNyZWF0ZUNoYW5uZWwsXHJcbiAgdHlwZSBNZXNzYWdlQ3JlYXRlT3B0aW9ucyxcclxufSBmcm9tICcuL3N0cnVjdHVyZXMvQ2hhbm5lbCc7XHJcblxyXG4vLyBDb2xsZWN0b3JzIChmcm9tIHV0aWxzIC0gbW9yZSBjb21wcmVoZW5zaXZlKVxyXG5leHBvcnQge1xyXG4gIENvbGxlY3RvcixcclxuICBNZXNzYWdlQ29sbGVjdG9yLFxyXG4gIEludGVyYWN0aW9uQ29sbGVjdG9yLFxyXG4gIFJlYWN0aW9uQ29sbGVjdG9yLFxyXG4gIGF3YWl0TWVzc2FnZXMsXHJcbiAgYXdhaXRSZWFjdGlvbnMsXHJcbiAgdHlwZSBDb2xsZWN0b3JPcHRpb25zLFxyXG4gIHR5cGUgTWVzc2FnZUNvbGxlY3Rvck9wdGlvbnMsXHJcbiAgdHlwZSBJbnRlcmFjdGlvbkNvbGxlY3Rvck9wdGlvbnMsXHJcbiAgdHlwZSBSZWFjdGlvbkNvbGxlY3Rvck9wdGlvbnMsXHJcbn0gZnJvbSAnLi91dGlscy9Db2xsZWN0b3InO1xyXG5cclxuLy8gQnVpbGRlcnNcclxuZXhwb3J0IHsgXHJcbiAgRW1iZWRCdWlsZGVyLCBcclxuICBDb2xvcnMsXHJcbiAgdHlwZSBBUElFbWJlZCxcclxuICB0eXBlIEFQSUVtYmVkRmllbGQsXHJcbiAgdHlwZSBBUElFbWJlZEF1dGhvcixcclxuICB0eXBlIEFQSUVtYmVkRm9vdGVyLFxyXG4gIHR5cGUgQVBJRW1iZWRJbWFnZSxcclxuICB0eXBlIEFQSUVtYmVkVGh1bWJuYWlsLFxyXG59IGZyb20gJy4vYnVpbGRlcnMvRW1iZWRCdWlsZGVyJztcclxuXHJcbmV4cG9ydCB7IFxyXG4gIEJ1dHRvbkJ1aWxkZXIsIFxyXG4gIEJ1dHRvblN0eWxlLFxyXG4gIHR5cGUgQVBJQnV0dG9uQ29tcG9uZW50LFxyXG59IGZyb20gJy4vYnVpbGRlcnMvQnV0dG9uQnVpbGRlcic7XHJcblxyXG5leHBvcnQgeyBcclxuICBTdHJpbmdTZWxlY3RNZW51QnVpbGRlciwgXHJcbiAgU2VsZWN0TWVudUJ1aWxkZXIsXHJcbiAgU3RyaW5nU2VsZWN0TWVudU9wdGlvbkJ1aWxkZXIsXHJcbiAgdHlwZSBBUElTZWxlY3RNZW51T3B0aW9uLFxyXG4gIHR5cGUgQVBJU2VsZWN0TWVudUNvbXBvbmVudCxcclxufSBmcm9tICcuL2J1aWxkZXJzL1NlbGVjdE1lbnVCdWlsZGVyJztcclxuXHJcbmV4cG9ydCB7IFxyXG4gIEFjdGlvblJvd0J1aWxkZXIsXHJcbiAgdHlwZSBBUElBY3Rpb25Sb3csXHJcbiAgdHlwZSBBUElBY3Rpb25Sb3dDb21wb25lbnQsXHJcbn0gZnJvbSAnLi9idWlsZGVycy9BY3Rpb25Sb3dCdWlsZGVyJztcclxuXHJcbmV4cG9ydCB7IFxyXG4gIE1vZGFsQnVpbGRlciwgXHJcbiAgVGV4dElucHV0QnVpbGRlciwgXHJcbiAgVGV4dElucHV0U3R5bGUsXHJcbiAgdHlwZSBBUElUZXh0SW5wdXRDb21wb25lbnQsXHJcbiAgdHlwZSBBUElNb2RhbEFjdGlvblJvdyxcclxuICB0eXBlIEFQSU1vZGFsLFxyXG59IGZyb20gJy4vYnVpbGRlcnMvTW9kYWxCdWlsZGVyJztcclxuXHJcbmV4cG9ydCB7IFxyXG4gIFNsYXNoQ29tbWFuZEJ1aWxkZXIsXHJcbiAgU2xhc2hDb21tYW5kU3RyaW5nT3B0aW9uLFxyXG4gIFNsYXNoQ29tbWFuZEludGVnZXJPcHRpb24sXHJcbiAgU2xhc2hDb21tYW5kTnVtYmVyT3B0aW9uLFxyXG4gIFNsYXNoQ29tbWFuZEJvb2xlYW5PcHRpb24sXHJcbiAgU2xhc2hDb21tYW5kVXNlck9wdGlvbixcclxuICBTbGFzaENvbW1hbmRDaGFubmVsT3B0aW9uLFxyXG4gIFNsYXNoQ29tbWFuZFJvbGVPcHRpb24sXHJcbiAgU2xhc2hDb21tYW5kTWVudGlvbmFibGVPcHRpb24sXHJcbiAgU2xhc2hDb21tYW5kQXR0YWNobWVudE9wdGlvbixcclxuICBBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25UeXBlIGFzIFNsYXNoQ29tbWFuZE9wdGlvblR5cGUsXHJcbn0gZnJvbSAnLi9idWlsZGVycy9TbGFzaENvbW1hbmRCdWlsZGVyJztcclxuXHJcbi8vIFV0aWxzIC0gRm9ybWF0dGVyc1xyXG5leHBvcnQgeyBcclxuICBGb3JtYXR0ZXJzLFxyXG4gIHVzZXJNZW50aW9uLFxyXG4gIGNoYW5uZWxNZW50aW9uLFxyXG4gIHJvbGVNZW50aW9uLFxyXG4gIGZvcm1hdEVtb2ppLFxyXG4gIGJvbGQsXHJcbiAgaXRhbGljLFxyXG4gIHVuZGVybGluZSxcclxuICBzdHJpa2V0aHJvdWdoLFxyXG4gIHNwb2lsZXIsXHJcbiAgaW5saW5lQ29kZSxcclxuICBjb2RlQmxvY2ssXHJcbiAgYmxvY2tRdW90ZSxcclxuICBxdW90ZSxcclxuICBoeXBlcmxpbmssXHJcbiAgaGlkZUxpbmtFbWJlZCxcclxuICB0aW1lLFxyXG4gIGhlYWRpbmcsXHJcbiAgdW5vcmRlcmVkTGlzdCxcclxuICBvcmRlcmVkTGlzdCxcclxuICBUaW1lc3RhbXBTdHlsZXMsXHJcbn0gZnJvbSAnLi91dGlscy9Gb3JtYXR0ZXJzJztcclxuXHJcbi8vIFV0aWxzIC0gQml0RmllbGRzXHJcbmV4cG9ydCB7IEJpdEZpZWxkLCB0eXBlIEJpdEZpZWxkUmVzb2x2YWJsZSB9IGZyb20gJy4vdXRpbHMvQml0RmllbGQnO1xyXG5leHBvcnQgeyBcclxuICBQZXJtaXNzaW9uc0JpdEZpZWxkLCBcclxuICB0eXBlIFBlcm1pc3Npb25TdHJpbmcsIFxyXG4gIHR5cGUgUGVybWlzc2lvblJlc29sdmFibGUgXHJcbn0gZnJvbSAnLi91dGlscy9QZXJtaXNzaW9uc0JpdEZpZWxkJztcclxuXHJcbi8vIFNoYXJkaW5nXHJcbmV4cG9ydCB7XHJcbiAgU2hhcmRpbmdNYW5hZ2VyLFxyXG4gIFNoYXJkLFxyXG4gIFNoYXJkQ2xpZW50VXRpbCxcclxuICBTaGFyZFN0YXR1cyxcclxuICB0eXBlIFNoYXJkaW5nTWFuYWdlck9wdGlvbnMsXHJcbn0gZnJvbSAnLi9zaGFyZGluZy9TaGFyZGluZ01hbmFnZXInO1xyXG4iXX0=
@@ -1,69 +0,0 @@
1
- /**
2
- * Base manager class for caching and managing structures
3
- */
4
- import { Collection } from '../utils/Collection';
5
- /**
6
- * Base manager for caching structures
7
- */
8
- export declare abstract class BaseManager<K extends string, V, R = V> {
9
- /** The client that instantiated this manager */
10
- readonly client: any;
11
- /** The cache of items */
12
- readonly cache: Collection<K, V>;
13
- /** The class to instantiate for items */
14
- protected readonly holds: new (...args: any[]) => V;
15
- constructor(client: any, holds: new (...args: any[]) => V, iterable?: Iterable<R>);
16
- /**
17
- * Add an item to the cache
18
- */
19
- abstract _add(data: any, cache?: boolean, options?: {
20
- id?: K;
21
- extras?: any[];
22
- }): V;
23
- /**
24
- * Resolve an item from the cache or ID
25
- */
26
- resolve(idOrInstance: K | V): V | null;
27
- /**
28
- * Resolve an ID from an item or ID
29
- */
30
- resolveId(idOrInstance: K | V | {
31
- id: K;
32
- }): K | null;
33
- /**
34
- * Get the cache as a JSON array
35
- */
36
- valueOf(): V[];
37
- }
38
- /**
39
- * Caching manager that fetches data from the API
40
- */
41
- export declare abstract class CachedManager<K extends string, V, R = V> extends BaseManager<K, V, R> {
42
- /**
43
- * Fetch an item from the API
44
- */
45
- abstract fetch(id: K, options?: {
46
- cache?: boolean;
47
- force?: boolean;
48
- }): Promise<V>;
49
- /**
50
- * Fetch an item, using cache if available (async version)
51
- */
52
- resolveAsync(idOrInstance: K | V, options?: {
53
- cache?: boolean;
54
- force?: boolean;
55
- }): Promise<V | null>;
56
- }
57
- /**
58
- * Data manager that doesn't cache
59
- */
60
- export declare abstract class DataManager<K extends string, V, R = V> extends BaseManager<K, V, R> {
61
- /**
62
- * Add an item to the cache
63
- */
64
- _add(data: any, cache?: boolean, options?: {
65
- id?: K;
66
- extras?: any[];
67
- }): V;
68
- }
69
- export default BaseManager;
@@ -1,106 +0,0 @@
1
- "use strict";
2
- /**
3
- * Base manager class for caching and managing structures
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DataManager = exports.CachedManager = exports.BaseManager = void 0;
7
- const Collection_1 = require("../utils/Collection");
8
- /**
9
- * Base manager for caching structures
10
- */
11
- class BaseManager {
12
- /** The client that instantiated this manager */
13
- client;
14
- /** The cache of items */
15
- cache;
16
- /** The class to instantiate for items */
17
- holds;
18
- constructor(client, holds, iterable) {
19
- this.client = client;
20
- this.holds = holds;
21
- this.cache = new Collection_1.Collection();
22
- if (iterable) {
23
- for (const item of iterable) {
24
- this._add(item);
25
- }
26
- }
27
- }
28
- /**
29
- * Resolve an item from the cache or ID
30
- */
31
- resolve(idOrInstance) {
32
- if (idOrInstance instanceof this.holds)
33
- return idOrInstance;
34
- if (typeof idOrInstance === 'string')
35
- return this.cache.get(idOrInstance) ?? null;
36
- return null;
37
- }
38
- /**
39
- * Resolve an ID from an item or ID
40
- */
41
- resolveId(idOrInstance) {
42
- if (idOrInstance instanceof this.holds)
43
- return idOrInstance.id;
44
- if (typeof idOrInstance === 'string')
45
- return idOrInstance;
46
- if (typeof idOrInstance === 'object' && idOrInstance !== null && 'id' in idOrInstance) {
47
- return idOrInstance.id;
48
- }
49
- return null;
50
- }
51
- /**
52
- * Get the cache as a JSON array
53
- */
54
- valueOf() {
55
- return [...this.cache.values()];
56
- }
57
- }
58
- exports.BaseManager = BaseManager;
59
- /**
60
- * Caching manager that fetches data from the API
61
- */
62
- class CachedManager extends BaseManager {
63
- /**
64
- * Fetch an item, using cache if available (async version)
65
- */
66
- async resolveAsync(idOrInstance, options) {
67
- const existing = super.resolve(idOrInstance);
68
- if (existing && !options?.force)
69
- return existing;
70
- const id = this.resolveId(idOrInstance);
71
- if (!id)
72
- return null;
73
- try {
74
- return await this.fetch(id, options);
75
- }
76
- catch {
77
- return null;
78
- }
79
- }
80
- }
81
- exports.CachedManager = CachedManager;
82
- /**
83
- * Data manager that doesn't cache
84
- */
85
- class DataManager extends BaseManager {
86
- /**
87
- * Add an item to the cache
88
- */
89
- _add(data, cache = true, options) {
90
- const existing = this.cache.get(options?.id ?? data.id);
91
- if (existing) {
92
- if (cache) {
93
- existing._patch?.(data);
94
- }
95
- return existing;
96
- }
97
- const entry = new this.holds(this.client, data, ...(options?.extras ?? []));
98
- if (cache) {
99
- this.cache.set(options?.id ?? data.id, entry);
100
- }
101
- return entry;
102
- }
103
- }
104
- exports.DataManager = DataManager;
105
- exports.default = BaseManager;
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZU1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWFuYWdlcnMvQmFzZU1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSCxvREFBaUQ7QUFFakQ7O0dBRUc7QUFDSCxNQUFzQixXQUFXO0lBQy9CLGdEQUFnRDtJQUNoQyxNQUFNLENBQU07SUFFNUIseUJBQXlCO0lBQ1QsS0FBSyxDQUFtQjtJQUV4Qyx5Q0FBeUM7SUFDdEIsS0FBSyxDQUE0QjtJQUVwRCxZQUFZLE1BQVcsRUFBRSxLQUFnQyxFQUFFLFFBQXNCO1FBQy9FLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSx1QkFBVSxFQUFRLENBQUM7UUFFcEMsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNiLEtBQUssTUFBTSxJQUFJLElBQUksUUFBUSxFQUFFLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBVyxDQUFDLENBQUM7WUFDekIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBT0Q7O09BRUc7SUFDSCxPQUFPLENBQUMsWUFBbUI7UUFDekIsSUFBSSxZQUFZLFlBQVksSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLFlBQVksQ0FBQztRQUM1RCxJQUFJLE9BQU8sWUFBWSxLQUFLLFFBQVE7WUFBRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQWlCLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDdkYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTLENBQUMsWUFBK0I7UUFDdkMsSUFBSSxZQUFZLFlBQVksSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFRLFlBQW9CLENBQUMsRUFBRSxDQUFDO1FBQ3hFLElBQUksT0FBTyxZQUFZLEtBQUssUUFBUTtZQUFFLE9BQU8sWUFBaUIsQ0FBQztRQUMvRCxJQUFJLE9BQU8sWUFBWSxLQUFLLFFBQVEsSUFBSSxZQUFZLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUN0RixPQUFPLFlBQVksQ0FBQyxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBQ0Y7QUF0REQsa0NBc0RDO0FBRUQ7O0dBRUc7QUFDSCxNQUFzQixhQUEwQyxTQUFRLFdBQW9CO0lBTTFGOztPQUVHO0lBQ0gsS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFtQixFQUFFLE9BQThDO1FBQ3BGLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0MsSUFBSSxRQUFRLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSztZQUFFLE9BQU8sUUFBUSxDQUFDO1FBRWpELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLEVBQUU7WUFBRSxPQUFPLElBQUksQ0FBQztRQUVyQixJQUFJLENBQUM7WUFDSCxPQUFPLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7Q0FDRjtBQXRCRCxzQ0FzQkM7QUFFRDs7R0FFRztBQUNILE1BQXNCLFdBQXdDLFNBQVEsV0FBb0I7SUFDeEY7O09BRUc7SUFDSCxJQUFJLENBQUMsSUFBUyxFQUFFLEtBQUssR0FBRyxJQUFJLEVBQUUsT0FBb0M7UUFDaEUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNiLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ1QsUUFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsT0FBTyxRQUFRLENBQUM7UUFDbEIsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVFLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGO0FBbkJELGtDQW1CQztBQUVELGtCQUFlLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQmFzZSBtYW5hZ2VyIGNsYXNzIGZvciBjYWNoaW5nIGFuZCBtYW5hZ2luZyBzdHJ1Y3R1cmVzXG4gKi9cblxuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uL3V0aWxzL0NvbGxlY3Rpb24nO1xuXG4vKipcbiAqIEJhc2UgbWFuYWdlciBmb3IgY2FjaGluZyBzdHJ1Y3R1cmVzXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTWFuYWdlcjxLIGV4dGVuZHMgc3RyaW5nLCBWLCBSID0gVj4ge1xuICAvKiogVGhlIGNsaWVudCB0aGF0IGluc3RhbnRpYXRlZCB0aGlzIG1hbmFnZXIgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNsaWVudDogYW55O1xuICBcbiAgLyoqIFRoZSBjYWNoZSBvZiBpdGVtcyAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2FjaGU6IENvbGxlY3Rpb248SywgVj47XG4gIFxuICAvKiogVGhlIGNsYXNzIHRvIGluc3RhbnRpYXRlIGZvciBpdGVtcyAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaG9sZHM6IG5ldyAoLi4uYXJnczogYW55W10pID0+IFY7XG5cbiAgY29uc3RydWN0b3IoY2xpZW50OiBhbnksIGhvbGRzOiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBWLCBpdGVyYWJsZT86IEl0ZXJhYmxlPFI+KSB7XG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnQ7XG4gICAgdGhpcy5ob2xkcyA9IGhvbGRzO1xuICAgIHRoaXMuY2FjaGUgPSBuZXcgQ29sbGVjdGlvbjxLLCBWPigpO1xuICAgIFxuICAgIGlmIChpdGVyYWJsZSkge1xuICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZXJhYmxlKSB7XG4gICAgICAgIHRoaXMuX2FkZChpdGVtIGFzIGFueSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhbiBpdGVtIHRvIHRoZSBjYWNoZVxuICAgKi9cbiAgYWJzdHJhY3QgX2FkZChkYXRhOiBhbnksIGNhY2hlPzogYm9vbGVhbiwgb3B0aW9ucz86IHsgaWQ/OiBLOyBleHRyYXM/OiBhbnlbXSB9KTogVjtcblxuICAvKipcbiAgICogUmVzb2x2ZSBhbiBpdGVtIGZyb20gdGhlIGNhY2hlIG9yIElEXG4gICAqL1xuICByZXNvbHZlKGlkT3JJbnN0YW5jZTogSyB8IFYpOiBWIHwgbnVsbCB7XG4gICAgaWYgKGlkT3JJbnN0YW5jZSBpbnN0YW5jZW9mIHRoaXMuaG9sZHMpIHJldHVybiBpZE9ySW5zdGFuY2U7XG4gICAgaWYgKHR5cGVvZiBpZE9ySW5zdGFuY2UgPT09ICdzdHJpbmcnKSByZXR1cm4gdGhpcy5jYWNoZS5nZXQoaWRPckluc3RhbmNlIGFzIEspID8/IG51bGw7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZSBhbiBJRCBmcm9tIGFuIGl0ZW0gb3IgSURcbiAgICovXG4gIHJlc29sdmVJZChpZE9ySW5zdGFuY2U6IEsgfCBWIHwgeyBpZDogSyB9KTogSyB8IG51bGwge1xuICAgIGlmIChpZE9ySW5zdGFuY2UgaW5zdGFuY2VvZiB0aGlzLmhvbGRzKSByZXR1cm4gKGlkT3JJbnN0YW5jZSBhcyBhbnkpLmlkO1xuICAgIGlmICh0eXBlb2YgaWRPckluc3RhbmNlID09PSAnc3RyaW5nJykgcmV0dXJuIGlkT3JJbnN0YW5jZSBhcyBLO1xuICAgIGlmICh0eXBlb2YgaWRPckluc3RhbmNlID09PSAnb2JqZWN0JyAmJiBpZE9ySW5zdGFuY2UgIT09IG51bGwgJiYgJ2lkJyBpbiBpZE9ySW5zdGFuY2UpIHtcbiAgICAgIHJldHVybiBpZE9ySW5zdGFuY2UuaWQ7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgY2FjaGUgYXMgYSBKU09OIGFycmF5XG4gICAqL1xuICB2YWx1ZU9mKCk6IFZbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLmNhY2hlLnZhbHVlcygpXTtcbiAgfVxufVxuXG4vKipcbiAqIENhY2hpbmcgbWFuYWdlciB0aGF0IGZldGNoZXMgZGF0YSBmcm9tIHRoZSBBUElcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENhY2hlZE1hbmFnZXI8SyBleHRlbmRzIHN0cmluZywgViwgUiA9IFY+IGV4dGVuZHMgQmFzZU1hbmFnZXI8SywgViwgUj4ge1xuICAvKipcbiAgICogRmV0Y2ggYW4gaXRlbSBmcm9tIHRoZSBBUElcbiAgICovXG4gIGFic3RyYWN0IGZldGNoKGlkOiBLLCBvcHRpb25zPzogeyBjYWNoZT86IGJvb2xlYW47IGZvcmNlPzogYm9vbGVhbiB9KTogUHJvbWlzZTxWPjtcblxuICAvKipcbiAgICogRmV0Y2ggYW4gaXRlbSwgdXNpbmcgY2FjaGUgaWYgYXZhaWxhYmxlIChhc3luYyB2ZXJzaW9uKVxuICAgKi9cbiAgYXN5bmMgcmVzb2x2ZUFzeW5jKGlkT3JJbnN0YW5jZTogSyB8IFYsIG9wdGlvbnM/OiB7IGNhY2hlPzogYm9vbGVhbjsgZm9yY2U/OiBib29sZWFuIH0pOiBQcm9taXNlPFYgfCBudWxsPiB7XG4gICAgY29uc3QgZXhpc3RpbmcgPSBzdXBlci5yZXNvbHZlKGlkT3JJbnN0YW5jZSk7XG4gICAgaWYgKGV4aXN0aW5nICYmICFvcHRpb25zPy5mb3JjZSkgcmV0dXJuIGV4aXN0aW5nO1xuICAgIFxuICAgIGNvbnN0IGlkID0gdGhpcy5yZXNvbHZlSWQoaWRPckluc3RhbmNlKTtcbiAgICBpZiAoIWlkKSByZXR1cm4gbnVsbDtcbiAgICBcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZmV0Y2goaWQsIG9wdGlvbnMpO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRGF0YSBtYW5hZ2VyIHRoYXQgZG9lc24ndCBjYWNoZVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0YU1hbmFnZXI8SyBleHRlbmRzIHN0cmluZywgViwgUiA9IFY+IGV4dGVuZHMgQmFzZU1hbmFnZXI8SywgViwgUj4ge1xuICAvKipcbiAgICogQWRkIGFuIGl0ZW0gdG8gdGhlIGNhY2hlXG4gICAqL1xuICBfYWRkKGRhdGE6IGFueSwgY2FjaGUgPSB0cnVlLCBvcHRpb25zPzogeyBpZD86IEs7IGV4dHJhcz86IGFueVtdIH0pOiBWIHtcbiAgICBjb25zdCBleGlzdGluZyA9IHRoaXMuY2FjaGUuZ2V0KG9wdGlvbnM/LmlkID8/IGRhdGEuaWQpO1xuICAgIGlmIChleGlzdGluZykge1xuICAgICAgaWYgKGNhY2hlKSB7XG4gICAgICAgIChleGlzdGluZyBhcyBhbnkpLl9wYXRjaD8uKGRhdGEpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGV4aXN0aW5nO1xuICAgIH1cbiAgICBcbiAgICBjb25zdCBlbnRyeSA9IG5ldyB0aGlzLmhvbGRzKHRoaXMuY2xpZW50LCBkYXRhLCAuLi4ob3B0aW9ucz8uZXh0cmFzID8/IFtdKSk7XG4gICAgaWYgKGNhY2hlKSB7XG4gICAgICB0aGlzLmNhY2hlLnNldChvcHRpb25zPy5pZCA/PyBkYXRhLmlkLCBlbnRyeSk7XG4gICAgfVxuICAgIHJldHVybiBlbnRyeTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBCYXNlTWFuYWdlcjtcbiJdfQ==