@discordeno/bot 19.0.0 → 20.0.0-next.41219d5
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.
- package/dist/cjs/bot.cjs +82 -0
- package/dist/cjs/commandOptionsParser.cjs +53 -0
- package/dist/cjs/constants.cjs +30 -0
- package/dist/cjs/desiredProperties.cjs +542 -0
- package/dist/cjs/events.cjs +6 -0
- package/dist/cjs/handlers/channels/CHANNEL_CREATE.cjs +21 -0
- package/dist/cjs/handlers/channels/CHANNEL_DELETE.cjs +21 -0
- package/dist/cjs/handlers/channels/CHANNEL_PINS_UPDATE.cjs +21 -0
- package/dist/cjs/handlers/channels/CHANNEL_UPDATE.cjs +20 -0
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_CREATE.cjs +22 -0
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_DELETE.cjs +22 -0
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_UPDATE.cjs +22 -0
- package/dist/cjs/handlers/channels/THREAD_CREATE.cjs +19 -0
- package/dist/cjs/handlers/channels/THREAD_DELETE.cjs +19 -0
- package/dist/cjs/handlers/channels/THREAD_LIST_SYNC.cjs +31 -0
- package/dist/cjs/handlers/channels/THREAD_MEMBERS_UPDATE.cjs +22 -0
- package/dist/cjs/handlers/channels/THREAD_MEMBER_UPDATE.cjs +22 -0
- package/dist/cjs/handlers/channels/THREAD_UPDATE.cjs +19 -0
- package/dist/cjs/handlers/channels/index.cjs +32 -0
- package/dist/cjs/handlers/emojis/GUILD_EMOJIS_UPDATE.cjs +24 -0
- package/dist/cjs/handlers/emojis/index.cjs +20 -0
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_CREATE.cjs +17 -0
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_DELETE.cjs +17 -0
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/entitlements/index.cjs +22 -0
- package/dist/cjs/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.cjs +18 -0
- package/dist/cjs/handlers/guilds/GUILD_BAN_ADD.cjs +17 -0
- package/dist/cjs/handlers/guilds/GUILD_BAN_REMOVE.cjs +17 -0
- package/dist/cjs/handlers/guilds/GUILD_CREATE.cjs +20 -0
- package/dist/cjs/handlers/guilds/GUILD_DELETE.cjs +22 -0
- package/dist/cjs/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.cjs +19 -0
- package/dist/cjs/handlers/guilds/GUILD_STICKERS_UPDATE.cjs +23 -0
- package/dist/cjs/handlers/guilds/GUILD_UPDATE.cjs +20 -0
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.cjs +17 -0
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.cjs +17 -0
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.cjs +17 -0
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/guilds/automod/index.cjs +23 -0
- package/dist/cjs/handlers/guilds/index.cjs +29 -0
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.cjs +17 -0
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.cjs +17 -0
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.cjs +21 -0
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.cjs +21 -0
- package/dist/cjs/handlers/guilds/scheduledEvents/index.cjs +24 -0
- package/dist/cjs/handlers/index.cjs +35 -0
- package/dist/cjs/handlers/integrations/INTEGRATION_CREATE.cjs +16 -0
- package/dist/cjs/handlers/integrations/INTEGRATION_DELETE.cjs +21 -0
- package/dist/cjs/handlers/integrations/INTEGRATION_UPDATE.cjs +16 -0
- package/dist/cjs/handlers/integrations/index.cjs +22 -0
- package/dist/cjs/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/interactions/INTERACTION_CREATE.cjs +19 -0
- package/dist/cjs/handlers/interactions/index.cjs +21 -0
- package/dist/cjs/handlers/invites/INVITE_CREATE.cjs +19 -0
- package/dist/cjs/handlers/invites/INVITE_DELETE.cjs +21 -0
- package/dist/cjs/handlers/invites/index.cjs +21 -0
- package/dist/cjs/handlers/members/GUILD_MEMBERS_CHUNK.cjs +30 -0
- package/dist/cjs/handlers/members/GUILD_MEMBER_ADD.cjs +20 -0
- package/dist/cjs/handlers/members/GUILD_MEMBER_REMOVE.cjs +19 -0
- package/dist/cjs/handlers/members/GUILD_MEMBER_UPDATE.cjs +19 -0
- package/dist/cjs/handlers/members/index.cjs +23 -0
- package/dist/cjs/handlers/messages/MESSAGE_CREATE.cjs +20 -0
- package/dist/cjs/handlers/messages/MESSAGE_DELETE.cjs +21 -0
- package/dist/cjs/handlers/messages/MESSAGE_DELETE_BULK.cjs +23 -0
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_ADD.cjs +30 -0
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE.cjs +24 -0
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.cjs +21 -0
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.cjs +22 -0
- package/dist/cjs/handlers/messages/MESSAGE_UPDATE.cjs +21 -0
- package/dist/cjs/handlers/messages/index.cjs +27 -0
- package/dist/cjs/handlers/misc/PRESENCE_UPDATE.cjs +16 -0
- package/dist/cjs/handlers/misc/READY.cjs +28 -0
- package/dist/cjs/handlers/misc/TYPING_START.cjs +25 -0
- package/dist/cjs/handlers/misc/USER_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/misc/index.cjs +23 -0
- package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_ADD.cjs +23 -0
- package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.cjs +23 -0
- package/dist/cjs/handlers/poll/index.cjs +21 -0
- package/dist/cjs/handlers/roles/GUILD_ROLE_CREATE.cjs +20 -0
- package/dist/cjs/handlers/roles/GUILD_ROLE_DELETE.cjs +20 -0
- package/dist/cjs/handlers/roles/GUILD_ROLE_UPDATE.cjs +20 -0
- package/dist/cjs/handlers/roles/index.cjs +22 -0
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.cjs +20 -0
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.cjs +17 -0
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.cjs +20 -0
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/soundboard/SOUNDBOARD_SOUNDS.cjs +20 -0
- package/dist/cjs/handlers/soundboard/index.cjs +24 -0
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_CREATE.cjs +17 -0
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_DELETE.cjs +17 -0
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_UPDATE.cjs +17 -0
- package/dist/cjs/handlers/subscriptions/index.cjs +22 -0
- package/dist/cjs/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.cjs +26 -0
- package/dist/cjs/handlers/voice/VOICE_SERVER_UPDATE.cjs +21 -0
- package/dist/cjs/handlers/voice/VOICE_STATE_UPDATE.cjs +22 -0
- package/dist/cjs/handlers/voice/index.cjs +22 -0
- package/dist/cjs/handlers/webhooks/WEBHOOKS_UPDATE.cjs +20 -0
- package/dist/cjs/handlers/webhooks/index.cjs +20 -0
- package/dist/cjs/handlers.cjs +132 -0
- package/dist/cjs/helpers.cjs +776 -0
- package/dist/cjs/index.cjs +34 -0
- package/dist/cjs/transformers/activity.cjs +74 -0
- package/dist/cjs/transformers/application.cjs +69 -0
- package/dist/cjs/transformers/applicationCommand.cjs +29 -0
- package/dist/cjs/transformers/applicationCommandOption.cjs +31 -0
- package/dist/cjs/transformers/applicationCommandOptionChoice.cjs +20 -0
- package/dist/cjs/transformers/applicationCommandPermission.cjs +25 -0
- package/dist/cjs/transformers/attachment.cjs +31 -0
- package/dist/cjs/transformers/auditLogEntry.cjs +37 -0
- package/dist/cjs/transformers/automodActionExecution.cjs +35 -0
- package/dist/cjs/transformers/automodRule.cjs +41 -0
- package/dist/cjs/transformers/avatarDecorationData.cjs +20 -0
- package/dist/cjs/transformers/channel.cjs +149 -0
- package/dist/cjs/transformers/component.cjs +97 -0
- package/dist/cjs/transformers/embed.cjs +54 -0
- package/dist/cjs/transformers/emoji.cjs +57 -0
- package/dist/cjs/transformers/entitlement.cjs +27 -0
- package/dist/cjs/transformers/gatewayBot.cjs +25 -0
- package/dist/cjs/transformers/guild.cjs +157 -0
- package/dist/cjs/transformers/index.cjs +66 -0
- package/dist/cjs/transformers/integration.cjs +44 -0
- package/dist/cjs/transformers/interaction.cjs +274 -0
- package/dist/cjs/transformers/invite.cjs +51 -0
- package/dist/cjs/transformers/member.cjs +69 -0
- package/dist/cjs/transformers/message.cjs +300 -0
- package/dist/cjs/transformers/onboarding.cjs +56 -0
- package/dist/cjs/transformers/poll.cjs +50 -0
- package/dist/cjs/transformers/presence.cjs +25 -0
- package/dist/cjs/transformers/reverse/activity.cjs +53 -0
- package/dist/cjs/transformers/reverse/allowedMentions.cjs +20 -0
- package/dist/cjs/transformers/reverse/application.cjs +38 -0
- package/dist/cjs/transformers/reverse/applicationCommand.cjs +28 -0
- package/dist/cjs/transformers/reverse/applicationCommandOption.cjs +30 -0
- package/dist/cjs/transformers/reverse/applicationCommandOptionChoice.cjs +19 -0
- package/dist/cjs/transformers/reverse/applicationCommandPermission.cjs +24 -0
- package/dist/cjs/transformers/reverse/attachment.cjs +29 -0
- package/dist/cjs/transformers/reverse/auditLogEntry.cjs +37 -0
- package/dist/cjs/transformers/reverse/component.cjs +94 -0
- package/dist/cjs/transformers/reverse/createApplicationCommand.cjs +36 -0
- package/dist/cjs/transformers/reverse/embed.cjs +53 -0
- package/dist/cjs/transformers/reverse/emoji.cjs +24 -0
- package/dist/cjs/transformers/reverse/gatewayBot.cjs +24 -0
- package/dist/cjs/transformers/reverse/index.cjs +37 -0
- package/dist/cjs/transformers/reverse/member.cjs +59 -0
- package/dist/cjs/transformers/reverse/presence.cjs +41 -0
- package/dist/cjs/transformers/reverse/team.cjs +28 -0
- package/dist/cjs/transformers/reverse/widgetSettings.cjs +18 -0
- package/dist/cjs/transformers/role.cjs +78 -0
- package/dist/cjs/transformers/scheduledEvent.cjs +58 -0
- package/dist/cjs/transformers/sku.cjs +23 -0
- package/dist/cjs/transformers/soundboardSound.cjs +25 -0
- package/dist/cjs/transformers/stageInstance.cjs +22 -0
- package/dist/cjs/transformers/stageInviteInstance.cjs +23 -0
- package/dist/cjs/transformers/sticker.cjs +48 -0
- package/dist/cjs/transformers/subscription.cjs +27 -0
- package/dist/cjs/transformers/team.cjs +29 -0
- package/dist/cjs/transformers/template.cjs +28 -0
- package/dist/cjs/transformers/threadMember.cjs +35 -0
- package/dist/cjs/transformers/toggles/Permissions.cjs +28 -0
- package/dist/cjs/transformers/toggles/ToggleBitfield.cjs +60 -0
- package/dist/cjs/transformers/toggles/channel.cjs +73 -0
- package/dist/cjs/transformers/toggles/emoji.cjs +63 -0
- package/dist/cjs/transformers/toggles/guild.cjs +257 -0
- package/dist/cjs/transformers/toggles/index.cjs +28 -0
- package/dist/cjs/transformers/toggles/member.cjs +126 -0
- package/dist/cjs/transformers/toggles/role.cjs +73 -0
- package/dist/cjs/transformers/toggles/user.cjs +63 -0
- package/dist/cjs/transformers/toggles/voice.cjs +78 -0
- package/dist/cjs/transformers/types.cjs +6 -0
- package/dist/cjs/transformers/user.cjs +60 -0
- package/dist/cjs/transformers/voiceRegion.cjs +22 -0
- package/dist/cjs/transformers/voiceState.cjs +24 -0
- package/dist/cjs/transformers/webhook.cjs +37 -0
- package/dist/cjs/transformers/welcomeScreen.cjs +24 -0
- package/dist/cjs/transformers/widget.cjs +35 -0
- package/dist/cjs/transformers/widgetSettings.cjs +19 -0
- package/dist/cjs/transformers.cjs +165 -0
- package/dist/cjs/utils.cjs +32 -0
- package/dist/esm/bot.js +2 -7
- package/dist/esm/commandOptionsParser.js +4 -2
- package/dist/esm/desiredProperties.js +2 -1
- package/dist/esm/events.js +1 -1
- package/dist/esm/helpers.js +4 -1
- package/dist/esm/transformers/component.js +5 -1
- package/dist/esm/transformers/emoji.js +4 -2
- package/dist/esm/transformers/guild.js +2 -2
- package/dist/esm/transformers/interaction.js +4 -4
- package/dist/esm/transformers/member.js +2 -2
- package/dist/esm/transformers/message.js +2 -2
- package/dist/esm/transformers/role.js +2 -2
- package/dist/esm/transformers/subscription.js +2 -1
- package/dist/esm/transformers/types.js +1 -1
- package/dist/esm/transformers/user.js +2 -2
- package/dist/esm/transformers.js +1 -1
- package/dist/types/bot.d.ts +2 -1
- package/dist/types/bot.d.ts.map +1 -1
- package/dist/types/commandOptionsParser.d.ts +9 -4
- package/dist/types/commandOptionsParser.d.ts.map +1 -1
- package/dist/types/desiredProperties.d.ts +7 -4
- package/dist/types/desiredProperties.d.ts.map +1 -1
- package/dist/types/events.d.ts +51 -52
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/helpers.d.ts +96 -95
- package/dist/types/helpers.d.ts.map +1 -1
- package/dist/types/transformers/component.d.ts.map +1 -1
- package/dist/types/transformers/emoji.d.ts +1 -0
- package/dist/types/transformers/emoji.d.ts.map +1 -1
- package/dist/types/transformers/guild.d.ts +1 -0
- package/dist/types/transformers/guild.d.ts.map +1 -1
- package/dist/types/transformers/interaction.d.ts +1 -0
- package/dist/types/transformers/interaction.d.ts.map +1 -1
- package/dist/types/transformers/member.d.ts +1 -0
- package/dist/types/transformers/member.d.ts.map +1 -1
- package/dist/types/transformers/message.d.ts +1 -0
- package/dist/types/transformers/message.d.ts.map +1 -1
- package/dist/types/transformers/role.d.ts +1 -0
- package/dist/types/transformers/role.d.ts.map +1 -1
- package/dist/types/transformers/subscription.d.ts.map +1 -1
- package/dist/types/transformers/types.d.ts +4 -2
- package/dist/types/transformers/types.d.ts.map +1 -1
- package/dist/types/transformers/user.d.ts +1 -0
- package/dist/types/transformers/user.d.ts.map +1 -1
- package/dist/types/transformers.d.ts +153 -153
- package/dist/types/transformers.d.ts.map +1 -1
- package/package.json +9 -9
package/dist/cjs/bot.cjs
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "createBot", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return createBot;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _gateway = require("@discordeno/gateway");
|
|
12
|
+
const _rest = require("@discordeno/rest");
|
|
13
|
+
const _utils = require("@discordeno/utils");
|
|
14
|
+
const _handlers = require("./handlers.cjs");
|
|
15
|
+
const _helpers = require("./helpers.cjs");
|
|
16
|
+
const _transformers = require("./transformers.cjs");
|
|
17
|
+
function createBot(options) {
|
|
18
|
+
if (!options.transformers) options.transformers = {};
|
|
19
|
+
if (!options.transformers.desiredProperties) options.transformers.desiredProperties = options.desiredProperties;
|
|
20
|
+
if (!options.rest) options.rest = {
|
|
21
|
+
token: options.token,
|
|
22
|
+
applicationId: options.applicationId
|
|
23
|
+
};
|
|
24
|
+
if (!options.rest.token) options.rest.token = options.token;
|
|
25
|
+
if (!options.rest.logger && options.loggerFactory) options.rest.logger = options.loggerFactory('REST');
|
|
26
|
+
if (!options.gateway) options.gateway = {
|
|
27
|
+
token: options.token
|
|
28
|
+
};
|
|
29
|
+
if (!options.gateway.token) options.gateway.token = options.token;
|
|
30
|
+
if (!options.gateway.events) options.gateway.events = {};
|
|
31
|
+
if (!options.gateway.logger && options.loggerFactory) options.gateway.logger = options.loggerFactory('GATEWAY');
|
|
32
|
+
if (!options.gateway.events.message) {
|
|
33
|
+
options.gateway.events.message = async (shard, data)=>{
|
|
34
|
+
// TRIGGER RAW EVENT
|
|
35
|
+
bot.events.raw?.(data, shard.id);
|
|
36
|
+
if (!data.t) return;
|
|
37
|
+
// RUN DISPATCH CHECK
|
|
38
|
+
await bot.events.dispatchRequirements?.(data, shard.id);
|
|
39
|
+
bot.handlers[data.t]?.(bot, data, shard.id);
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
options.gateway.intents = options.intents;
|
|
43
|
+
options.gateway.preferSnakeCase = true;
|
|
44
|
+
const id = (0, _utils.getBotIdFromToken)(options.token);
|
|
45
|
+
const bot = {
|
|
46
|
+
id,
|
|
47
|
+
applicationId: id,
|
|
48
|
+
transformers: (0, _transformers.createTransformers)(options.transformers),
|
|
49
|
+
handlers: (0, _handlers.createBotGatewayHandlers)(options.handlers ?? {}),
|
|
50
|
+
rest: (0, _rest.createRestManager)(options.rest),
|
|
51
|
+
gateway: (0, _gateway.createGatewayManager)(options.gateway),
|
|
52
|
+
events: options.events ?? {},
|
|
53
|
+
logger: options.loggerFactory ? options.loggerFactory('BOT') : (0, _utils.createLogger)({
|
|
54
|
+
name: 'BOT'
|
|
55
|
+
}),
|
|
56
|
+
// Set up helpers below.
|
|
57
|
+
helpers: {},
|
|
58
|
+
async start () {
|
|
59
|
+
if (!options.gateway?.connection) {
|
|
60
|
+
bot.gateway.connection = await bot.rest.getSessionInfo();
|
|
61
|
+
// Check for overrides in the configuration
|
|
62
|
+
if (!options.gateway?.url) bot.gateway.url = bot.gateway.connection.url;
|
|
63
|
+
if (!options.gateway?.totalShards) bot.gateway.totalShards = bot.gateway.connection.shards;
|
|
64
|
+
if (!options.gateway?.lastShardId && !options.gateway?.totalShards) bot.gateway.lastShardId = bot.gateway.connection.shards - 1;
|
|
65
|
+
}
|
|
66
|
+
if (!bot.gateway.resharding.getSessionInfo) {
|
|
67
|
+
bot.gateway.resharding.getSessionInfo = async ()=>{
|
|
68
|
+
return await bot.rest.getGatewayBot();
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
await bot.gateway.spawnShards();
|
|
72
|
+
},
|
|
73
|
+
async shutdown () {
|
|
74
|
+
return await bot.gateway.shutdown(_gateway.ShardSocketCloseCodes.Shutdown, 'User requested bot stop');
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
bot.helpers = (0, _helpers.createBotHelpers)(bot);
|
|
78
|
+
if (options.applicationId) bot.applicationId = bot.transformers.snowflake(options.applicationId);
|
|
79
|
+
return bot;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ib3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDcmVhdGVHYXRld2F5TWFuYWdlck9wdGlvbnMsIEdhdGV3YXlNYW5hZ2VyIH0gZnJvbSAnQGRpc2NvcmRlbm8vZ2F0ZXdheSdcbmltcG9ydCB7IFNoYXJkU29ja2V0Q2xvc2VDb2RlcywgY3JlYXRlR2F0ZXdheU1hbmFnZXIgfSBmcm9tICdAZGlzY29yZGVuby9nYXRld2F5J1xuaW1wb3J0IHR5cGUgeyBDcmVhdGVSZXN0TWFuYWdlck9wdGlvbnMsIFJlc3RNYW5hZ2VyIH0gZnJvbSAnQGRpc2NvcmRlbm8vcmVzdCdcbmltcG9ydCB7IGNyZWF0ZVJlc3RNYW5hZ2VyIH0gZnJvbSAnQGRpc2NvcmRlbm8vcmVzdCdcbmltcG9ydCB0eXBlIHsgQmlnU3RyaW5nLCBHYXRld2F5RGlzcGF0Y2hFdmVudE5hbWVzLCBHYXRld2F5SW50ZW50cywgUmVjdXJzaXZlUGFydGlhbCB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHsgY3JlYXRlTG9nZ2VyLCBnZXRCb3RJZEZyb21Ub2tlbiwgdHlwZSBsb2dnZXIgfSBmcm9tICdAZGlzY29yZGVuby91dGlscydcbmltcG9ydCB0eXBlIHtcbiAgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllcyxcbiAgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcixcbiAgU2V0dXBEZXNpcmVkUHJvcHMsXG4gIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICBUcmFuc2Zvcm1lcnNPYmplY3RzLFxufSBmcm9tICcuL2Rlc2lyZWRQcm9wZXJ0aWVzLmpzJ1xuaW1wb3J0IHR5cGUgeyBFdmVudEhhbmRsZXJzIH0gZnJvbSAnLi9ldmVudHMuanMnXG5pbXBvcnQgeyB0eXBlIEJvdEdhdGV3YXlIYW5kbGVyLCB0eXBlIEdhdGV3YXlIYW5kbGVycywgY3JlYXRlQm90R2F0ZXdheUhhbmRsZXJzIH0gZnJvbSAnLi9oYW5kbGVycy5qcydcbmltcG9ydCB7IHR5cGUgQm90SGVscGVycywgY3JlYXRlQm90SGVscGVycyB9IGZyb20gJy4vaGVscGVycy5qcydcbmltcG9ydCB7IHR5cGUgVHJhbnNmb3JtZXJzLCBjcmVhdGVUcmFuc2Zvcm1lcnMgfSBmcm9tICcuL3RyYW5zZm9ybWVycy5qcydcblxuLyoqXG4gKiBDcmVhdGUgYSBib3Qgb2JqZWN0IHRoYXQgd2lsbCBtYWludGFpbiB0aGUgcmVzdCBhbmQgZ2F0ZXdheSBjb25uZWN0aW9uLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb25zIG9wdGlvbnMgdXNlZCB0byBtYW5hZ2UgdGhpcyBib3QuXG4gKiBAcmV0dXJucyBCb3RcbiAqL1xuXG4vLyBPdmVybG9hZHMgdG8gYXZvaWQgYWRkaW5nIENvbXBsZXRlRGVzaXJlZFByb3BlcnRpZXMgaWYgd2UgYXJlIGdpdmVuIGEgY29tcGxldGUgb2JqZWN0XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQm90PFxuICBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciA9IERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5LFxuPihvcHRpb25zOiBDcmVhdGVCb3RPcHRpb25zPFRQcm9wcywgVEJlaGF2aW9yPik6IEJvdDxUUHJvcHMsIFRCZWhhdmlvcj5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVCb3Q8XG4gIFRQcm9wcyBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LFxuICBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yID0gRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXksXG4+KG9wdGlvbnM6IENyZWF0ZUJvdE9wdGlvbnM8VFByb3BzLCBUQmVoYXZpb3I+KTogQm90PENvbXBsZXRlRGVzaXJlZFByb3BlcnRpZXM8VFByb3BzPiwgVEJlaGF2aW9yPlxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQm90PFxuICBUUHJvcHMgZXh0ZW5kcyBSZWN1cnNpdmVQYXJ0aWFsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzPixcbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciA9IERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5LFxuPihvcHRpb25zOiBDcmVhdGVCb3RPcHRpb25zPFRQcm9wcywgVEJlaGF2aW9yPik6IEJvdDxDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFRQcm9wcz4sIFRCZWhhdmlvcj4ge1xuICB0eXBlIENvbXBsZXRlUHJvcHMgPSBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFRQcm9wcz5cbiAgdHlwZSBUeXBlZEJvdCA9IEJvdDxDb21wbGV0ZVByb3BzLCBUQmVoYXZpb3I+XG5cbiAgaWYgKCFvcHRpb25zLnRyYW5zZm9ybWVycykgb3B0aW9ucy50cmFuc2Zvcm1lcnMgPSB7fVxuICBpZiAoIW9wdGlvbnMudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzKSBvcHRpb25zLnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcyA9IG9wdGlvbnMuZGVzaXJlZFByb3BlcnRpZXNcbiAgaWYgKCFvcHRpb25zLnJlc3QpIG9wdGlvbnMucmVzdCA9IHsgdG9rZW46IG9wdGlvbnMudG9rZW4sIGFwcGxpY2F0aW9uSWQ6IG9wdGlvbnMuYXBwbGljYXRpb25JZCB9XG4gIGlmICghb3B0aW9ucy5yZXN0LnRva2VuKSBvcHRpb25zLnJlc3QudG9rZW4gPSBvcHRpb25zLnRva2VuXG4gIGlmICghb3B0aW9ucy5yZXN0LmxvZ2dlciAmJiBvcHRpb25zLmxvZ2dlckZhY3RvcnkpIG9wdGlvbnMucmVzdC5sb2dnZXIgPSBvcHRpb25zLmxvZ2dlckZhY3RvcnkoJ1JFU1QnKVxuICBpZiAoIW9wdGlvbnMuZ2F0ZXdheSkgb3B0aW9ucy5nYXRld2F5ID0geyB0b2tlbjogb3B0aW9ucy50b2tlbiB9XG4gIGlmICghb3B0aW9ucy5nYXRld2F5LnRva2VuKSBvcHRpb25zLmdhdGV3YXkudG9rZW4gPSBvcHRpb25zLnRva2VuXG4gIGlmICghb3B0aW9ucy5nYXRld2F5LmV2ZW50cykgb3B0aW9ucy5nYXRld2F5LmV2ZW50cyA9IHt9XG4gIGlmICghb3B0aW9ucy5nYXRld2F5LmxvZ2dlciAmJiBvcHRpb25zLmxvZ2dlckZhY3RvcnkpIG9wdGlvbnMuZ2F0ZXdheS5sb2dnZXIgPSBvcHRpb25zLmxvZ2dlckZhY3RvcnkoJ0dBVEVXQVknKVxuICBpZiAoIW9wdGlvbnMuZ2F0ZXdheS5ldmVudHMubWVzc2FnZSkge1xuICAgIG9wdGlvbnMuZ2F0ZXdheS5ldmVudHMubWVzc2FnZSA9IGFzeW5jIChzaGFyZCwgZGF0YSkgPT4ge1xuICAgICAgLy8gVFJJR0dFUiBSQVcgRVZFTlRcbiAgICAgIGJvdC5ldmVudHMucmF3Py4oZGF0YSwgc2hhcmQuaWQpXG5cbiAgICAgIGlmICghZGF0YS50KSByZXR1cm5cblxuICAgICAgLy8gUlVOIERJU1BBVENIIENIRUNLXG4gICAgICBhd2FpdCBib3QuZXZlbnRzLmRpc3BhdGNoUmVxdWlyZW1lbnRzPy4oZGF0YSwgc2hhcmQuaWQpXG4gICAgICBib3QuaGFuZGxlcnNbZGF0YS50IGFzIEdhdGV3YXlEaXNwYXRjaEV2ZW50TmFtZXNdPy4oYm90LCBkYXRhLCBzaGFyZC5pZClcbiAgICB9XG4gIH1cblxuICBvcHRpb25zLmdhdGV3YXkuaW50ZW50cyA9IG9wdGlvbnMuaW50ZW50c1xuICBvcHRpb25zLmdhdGV3YXkucHJlZmVyU25ha2VDYXNlID0gdHJ1ZVxuXG4gIGNvbnN0IGlkID0gZ2V0Qm90SWRGcm9tVG9rZW4ob3B0aW9ucy50b2tlbilcblxuICBjb25zdCBib3Q6IFR5cGVkQm90ID0ge1xuICAgIGlkLFxuICAgIGFwcGxpY2F0aW9uSWQ6IGlkLFxuICAgIHRyYW5zZm9ybWVyczogY3JlYXRlVHJhbnNmb3JtZXJzKG9wdGlvbnMudHJhbnNmb3JtZXJzKSBhcyBUeXBlZEJvdFsndHJhbnNmb3JtZXJzJ10sXG4gICAgaGFuZGxlcnM6IGNyZWF0ZUJvdEdhdGV3YXlIYW5kbGVyczxDb21wbGV0ZVByb3BzLCBUQmVoYXZpb3I+KG9wdGlvbnMuaGFuZGxlcnMgPz8ge30pLFxuICAgIHJlc3Q6IGNyZWF0ZVJlc3RNYW5hZ2VyKG9wdGlvbnMucmVzdCBhcyBDcmVhdGVSZXN0TWFuYWdlck9wdGlvbnMpLFxuICAgIGdhdGV3YXk6IGNyZWF0ZUdhdGV3YXlNYW5hZ2VyKG9wdGlvbnMuZ2F0ZXdheSBhcyBDcmVhdGVHYXRld2F5TWFuYWdlck9wdGlvbnMpLFxuICAgIGV2ZW50czogb3B0aW9ucy5ldmVudHMgPz8ge30sXG4gICAgbG9nZ2VyOiBvcHRpb25zLmxvZ2dlckZhY3RvcnkgPyBvcHRpb25zLmxvZ2dlckZhY3RvcnkoJ0JPVCcpIDogY3JlYXRlTG9nZ2VyKHsgbmFtZTogJ0JPVCcgfSksXG4gICAgLy8gU2V0IHVwIGhlbHBlcnMgYmVsb3cuXG4gICAgaGVscGVyczoge30gYXMgQm90SGVscGVyczxDb21wbGV0ZVByb3BzLCBUQmVoYXZpb3I+LFxuICAgIGFzeW5jIHN0YXJ0KCkge1xuICAgICAgaWYgKCFvcHRpb25zLmdhdGV3YXk/LmNvbm5lY3Rpb24pIHtcbiAgICAgICAgYm90LmdhdGV3YXkuY29ubmVjdGlvbiA9IGF3YWl0IGJvdC5yZXN0LmdldFNlc3Npb25JbmZvKClcblxuICAgICAgICAvLyBDaGVjayBmb3Igb3ZlcnJpZGVzIGluIHRoZSBjb25maWd1cmF0aW9uXG4gICAgICAgIGlmICghb3B0aW9ucy5nYXRld2F5Py51cmwpIGJvdC5nYXRld2F5LnVybCA9IGJvdC5nYXRld2F5LmNvbm5lY3Rpb24udXJsXG5cbiAgICAgICAgaWYgKCFvcHRpb25zLmdhdGV3YXk/LnRvdGFsU2hhcmRzKSBib3QuZ2F0ZXdheS50b3RhbFNoYXJkcyA9IGJvdC5nYXRld2F5LmNvbm5lY3Rpb24uc2hhcmRzXG5cbiAgICAgICAgaWYgKCFvcHRpb25zLmdhdGV3YXk/Lmxhc3RTaGFyZElkICYmICFvcHRpb25zLmdhdGV3YXk/LnRvdGFsU2hhcmRzKSBib3QuZ2F0ZXdheS5sYXN0U2hhcmRJZCA9IGJvdC5nYXRld2F5LmNvbm5lY3Rpb24uc2hhcmRzIC0gMVxuICAgICAgfVxuXG4gICAgICBpZiAoIWJvdC5nYXRld2F5LnJlc2hhcmRpbmcuZ2V0U2Vzc2lvbkluZm8pIHtcbiAgICAgICAgYm90LmdhdGV3YXkucmVzaGFyZGluZy5nZXRTZXNzaW9uSW5mbyA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZ2V0R2F0ZXdheUJvdCgpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYXdhaXQgYm90LmdhdGV3YXkuc3Bhd25TaGFyZHMoKVxuICAgIH0sXG5cbiAgICBhc3luYyBzaHV0ZG93bigpIHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QuZ2F0ZXdheS5zaHV0ZG93bihTaGFyZFNvY2tldENsb3NlQ29kZXMuU2h1dGRvd24sICdVc2VyIHJlcXVlc3RlZCBib3Qgc3RvcCcpXG4gICAgfSxcbiAgfVxuXG4gIGJvdC5oZWxwZXJzID0gY3JlYXRlQm90SGVscGVycyhib3QpXG4gIGlmIChvcHRpb25zLmFwcGxpY2F0aW9uSWQpIGJvdC5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uob3B0aW9ucy5hcHBsaWNhdGlvbklkKVxuXG4gIHJldHVybiBib3Rcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVCb3RPcHRpb25zPFRQcm9wcyBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LCBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiB7XG4gIC8qKiBUaGUgYm90J3MgdG9rZW4uICovXG4gIHRva2VuOiBzdHJpbmdcbiAgLyoqIEFwcGxpY2F0aW9uIElkIG9mIHRoZSBib3QgaW5jYXNlIGl0IGlzIGFuIG9sZCBib3QgdG9rZW4uICovXG4gIGFwcGxpY2F0aW9uSWQ/OiBCaWdTdHJpbmdcbiAgLyoqIFRoZSBib3QncyBpbnRlbnRzIHRoYXQgd2lsbCBiZSB1c2VkIHRvIG1ha2UgYSBjb25uZWN0aW9uIHdpdGggZGlzY29yZHMgZ2F0ZXdheS4gKi9cbiAgaW50ZW50cz86IEdhdGV3YXlJbnRlbnRzXG4gIC8qKiBBbnkgb3B0aW9ucyB5b3Ugd2lzaCB0byBwcm92aWRlIHRvIHRoZSByZXN0IG1hbmFnZXIuICovXG4gIHJlc3Q/OiBPbWl0PENyZWF0ZVJlc3RNYW5hZ2VyT3B0aW9ucywgJ3Rva2VuJz4gJiBQYXJ0aWFsPFBpY2s8Q3JlYXRlUmVzdE1hbmFnZXJPcHRpb25zLCAndG9rZW4nPj5cbiAgLyoqIEFueSBvcHRpb25zIHlvdSB3aXNoIHRvIHByb3ZpZGUgdG8gdGhlIGdhdGV3YXkgbWFuYWdlci4gKi9cbiAgZ2F0ZXdheT86IE9taXQ8Q3JlYXRlR2F0ZXdheU1hbmFnZXJPcHRpb25zLCAndG9rZW4nPiAmIFBhcnRpYWw8UGljazxDcmVhdGVHYXRld2F5TWFuYWdlck9wdGlvbnMsICd0b2tlbic+PlxuICAvKiogVGhlIGV2ZW50IGhhbmRsZXJzLiAqL1xuICBldmVudHM/OiBQYXJ0aWFsPEV2ZW50SGFuZGxlcnM8Q29tcGxldGVEZXNpcmVkUHJvcGVydGllczxOb0luZmVyPFRQcm9wcz4+LCBUQmVoYXZpb3I+PlxuICAvKiogVGhlIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCB0cmFuc2Zvcm0gZGlzY29yZCBvYmplY3RzIHRvIGRpc2NvcmRlbm8gc2hhcGVkIG9iamVjdHMuICovXG4gIHRyYW5zZm9ybWVycz86IFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzPENvbXBsZXRlRGVzaXJlZFByb3BlcnRpZXM8Tm9JbmZlcjxUUHJvcHM+PiwgVEJlaGF2aW9yPj5cbiAgLyoqIFRoZSBoYW5kbGVyIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBoYW5kbGUgaW5jb21pbmcgZGlzY29yZCBwYXlsb2FkcyBmcm9tIGdhdGV3YXkgYW5kIGNhbGwgYW4gZXZlbnQuICovXG4gIGhhbmRsZXJzPzogUGFydGlhbDxSZWNvcmQ8R2F0ZXdheURpc3BhdGNoRXZlbnROYW1lcywgQm90R2F0ZXdheUhhbmRsZXI8Q29tcGxldGVEZXNpcmVkUHJvcGVydGllczxOb0luZmVyPFRQcm9wcz4+LCBUQmVoYXZpb3I+Pj5cbiAgLyoqXG4gICAqIFNldCB0aGUgZGVzaXJlZCBwcm9wZXJ0aWVzIGZvciB0aGUgYm90XG4gICAqXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqL1xuICBkZXNpcmVkUHJvcGVydGllcz86IFRQcm9wc1xuICAvKipcbiAgICogU2V0IHRoZSBkZXNpcmVkIHByb3BlcnRpZXMgYmVoYXZpb3IgZm9yIHVuZGVzaXJlZCBwcm9wZXJ0aWVzXG4gICAqXG4gICAqIEBkZWZhdWx0IERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5XG4gICAqL1xuICBkZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPzogVEJlaGF2aW9yXG4gIC8qKlxuICAgKiBUaGlzIGZhY3Rvcnkgd2lsbCBiZSBpbnZva2VkIHRvIGNyZWF0ZSB0aGUgbG9nZ2VyIGZvciBnYXRld2F5LCByZXN0IGFuZCBib3RcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogSWYgbm90IHByb3ZpZGVkIHRoZSBkZWZhdWx0IGxvZ2dlciB3aWxsIGJlIHVzZWQgd2l0aCByZXN0IGFuZCBnYXRld2F5IHNoYXJpbmcgdGhlIHNhbWUgbG9nZ2VyXG4gICAqXG4gICAqIFRoaXMgZnVuY3Rpb24gd2lsbCBiZSBpbnZva2VkIDMgdGltZXMsIG9uZSB3aXRoIHRoZSBuYW1lIG9mIGBSRVNUYCwgb25lIHdpdGggYEdBVEVXQVlgIGFuZCB0aGUgdGhpcmQgb25lIHdpdGggbmFtZSBgQk9UYFxuICAgKi9cbiAgbG9nZ2VyRmFjdG9yeT86IChuYW1lOiAnUkVTVCcgfCAnR0FURVdBWScgfCAnQk9UJykgPT4gUGljazx0eXBlb2YgbG9nZ2VyLCAnZGVidWcnIHwgJ2luZm8nIHwgJ3dhcm4nIHwgJ2Vycm9yJyB8ICdmYXRhbCc+XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm90PFxuICBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyA9IFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yID0gRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXksXG4+IHtcbiAgLyoqIFRoZSBpZCBvZiB0aGUgYm90LiAqL1xuICBpZDogYmlnaW50XG4gIC8qKiBUaGUgYXBwbGljYXRpb24gaWQgb2YgdGhlIGJvdC4gVGhpcyBpcyB1c3VhbGx5IHRoZSBzYW1lIGFzIGlkIGJ1dCBpbiB0aGUgY2FzZSBvZiBvbGQgYm90cyBjYW4gYmUgZGlmZmVyZW50LiAqL1xuICBhcHBsaWNhdGlvbklkOiBiaWdpbnRcbiAgLyoqIFRoZSByZXN0IG1hbmFnZXIuICovXG4gIHJlc3Q6IFJlc3RNYW5hZ2VyXG4gIC8qKiBUaGUgZ2F0ZXdheSBtYW5hZ2VyLiAqL1xuICBnYXRld2F5OiBHYXRld2F5TWFuYWdlclxuICAvKiogVGhlIGV2ZW50IGhhbmRsZXJzLiAqL1xuICBldmVudHM6IFBhcnRpYWw8RXZlbnRIYW5kbGVyczxUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIC8qKiBBIGxvZ2dlciB1dGlsaXR5IHRvIG1ha2UgaXQgZWFzeSB0byBsb2cgbmljZSBhbmQgdXNlZnVsIHRoaW5ncyBpbiB0aGUgYm90IGNvZGUuICovXG4gIGxvZ2dlcjogUGljazx0eXBlb2YgbG9nZ2VyLCAnZGVidWcnIHwgJ2luZm8nIHwgJ3dhcm4nIHwgJ2Vycm9yJyB8ICdmYXRhbCc+XG4gIC8qKiBUaGUgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIHRyYW5zZm9ybSBkaXNjb3JkIG9iamVjdHMgdG8gZGlzY29yZGVubyBzaGFwZWQgb2JqZWN0cy4gKi9cbiAgdHJhbnNmb3JtZXJzOiBUcmFuc2Zvcm1lcnM8VFByb3BzLCBUQmVoYXZpb3I+ICYge1xuICAgICRpbmZlcnJlZFR5cGVzOiB7XG4gICAgICBbSyBpbiBrZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXTogU2V0dXBEZXNpcmVkUHJvcHM8VHJhbnNmb3JtZXJzT2JqZWN0c1tLXSwgVFByb3BzLCBUQmVoYXZpb3I+XG4gICAgfVxuICB9XG4gIC8qKiBUaGUgaGFuZGxlciBmdW5jdGlvbnMgdGhhdCBzaG91bGQgaGFuZGxlIGluY29taW5nIGRpc2NvcmQgcGF5bG9hZHMgZnJvbSBnYXRld2F5IGFuZCBjYWxsIGFuIGV2ZW50LiAqL1xuICBoYW5kbGVyczogR2F0ZXdheUhhbmRsZXJzPFRQcm9wcywgVEJlaGF2aW9yPlxuICBoZWxwZXJzOiBCb3RIZWxwZXJzPFRQcm9wcywgVEJlaGF2aW9yPlxuICAvKiogU3RhcnQgdGhlIGJvdCBjb25uZWN0aW9uIHRvIHRoZSBnYXRld2F5LiAqL1xuICBzdGFydDogKCkgPT4gUHJvbWlzZTx2b2lkPlxuICAvKiogU2h1dHMgZG93biBhbGwgdGhlIGJvdCBjb25uZWN0aW9ucyB0byB0aGUgZ2F0ZXdheS4gKi9cbiAgc2h1dGRvd246ICgpID0+IFByb21pc2U8dm9pZD5cbn1cblxuLyoqIEBpbnRlcm5hbCBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZSAqL1xuZXhwb3J0IHR5cGUgSW50ZXJuYWxCb3QgPSBCb3Q8Q29tcGxldGVEZXNpcmVkUHJvcGVydGllczx7fSwgdHJ1ZT4sIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5PlxuIl0sIm5hbWVzIjpbImNyZWF0ZUJvdCIsIm9wdGlvbnMiLCJ0cmFuc2Zvcm1lcnMiLCJkZXNpcmVkUHJvcGVydGllcyIsInJlc3QiLCJ0b2tlbiIsImFwcGxpY2F0aW9uSWQiLCJsb2dnZXIiLCJsb2dnZXJGYWN0b3J5IiwiZ2F0ZXdheSIsImV2ZW50cyIsIm1lc3NhZ2UiLCJzaGFyZCIsImRhdGEiLCJib3QiLCJyYXciLCJpZCIsInQiLCJkaXNwYXRjaFJlcXVpcmVtZW50cyIsImhhbmRsZXJzIiwiaW50ZW50cyIsInByZWZlclNuYWtlQ2FzZSIsImdldEJvdElkRnJvbVRva2VuIiwiY3JlYXRlVHJhbnNmb3JtZXJzIiwiY3JlYXRlQm90R2F0ZXdheUhhbmRsZXJzIiwiY3JlYXRlUmVzdE1hbmFnZXIiLCJjcmVhdGVHYXRld2F5TWFuYWdlciIsImNyZWF0ZUxvZ2dlciIsIm5hbWUiLCJoZWxwZXJzIiwic3RhcnQiLCJjb25uZWN0aW9uIiwiZ2V0U2Vzc2lvbkluZm8iLCJ1cmwiLCJ0b3RhbFNoYXJkcyIsInNoYXJkcyIsImxhc3RTaGFyZElkIiwicmVzaGFyZGluZyIsImdldEdhdGV3YXlCb3QiLCJzcGF3blNoYXJkcyIsInNodXRkb3duIiwiU2hhcmRTb2NrZXRDbG9zZUNvZGVzIiwiU2h1dGRvd24iLCJjcmVhdGVCb3RIZWxwZXJzIiwic25vd2ZsYWtlIl0sIm1hcHBpbmdzIjoiOzs7OytCQW1DZ0JBOzs7ZUFBQUE7Ozt5QkFsQzRDO3NCQUUxQjt1QkFFMkI7MEJBUzBCO3lCQUNyQzs4QkFDSTtBQW1CL0MsU0FBU0EsVUFHZEMsT0FBNEM7SUFJNUMsSUFBSSxDQUFDQSxRQUFRQyxZQUFZLEVBQUVELFFBQVFDLFlBQVksR0FBRyxDQUFDO0lBQ25ELElBQUksQ0FBQ0QsUUFBUUMsWUFBWSxDQUFDQyxpQkFBaUIsRUFBRUYsUUFBUUMsWUFBWSxDQUFDQyxpQkFBaUIsR0FBR0YsUUFBUUUsaUJBQWlCO0lBQy9HLElBQUksQ0FBQ0YsUUFBUUcsSUFBSSxFQUFFSCxRQUFRRyxJQUFJLEdBQUc7UUFBRUMsT0FBT0osUUFBUUksS0FBSztRQUFFQyxlQUFlTCxRQUFRSyxhQUFhO0lBQUM7SUFDL0YsSUFBSSxDQUFDTCxRQUFRRyxJQUFJLENBQUNDLEtBQUssRUFBRUosUUFBUUcsSUFBSSxDQUFDQyxLQUFLLEdBQUdKLFFBQVFJLEtBQUs7SUFDM0QsSUFBSSxDQUFDSixRQUFRRyxJQUFJLENBQUNHLE1BQU0sSUFBSU4sUUFBUU8s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
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "commandOptionsParser", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return commandOptionsParser;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _types = require("@discordeno/types");
|
|
12
|
+
function commandOptionsParser(__interaction, options) {
|
|
13
|
+
// This is necessary as typescript gets really confused when using __interaction alone, as it will say that 'data' does not exist despite it surely exist since we have the &
|
|
14
|
+
const interaction = __interaction;
|
|
15
|
+
if (!interaction.data) return {};
|
|
16
|
+
if (!options) options = interaction.data.options ?? [];
|
|
17
|
+
const args = {};
|
|
18
|
+
for (const option of options){
|
|
19
|
+
switch(option.type){
|
|
20
|
+
case _types.ApplicationCommandOptionTypes.SubCommandGroup:
|
|
21
|
+
case _types.ApplicationCommandOptionTypes.SubCommand:
|
|
22
|
+
args[option.name] = commandOptionsParser(interaction, option.options);
|
|
23
|
+
break;
|
|
24
|
+
case _types.ApplicationCommandOptionTypes.Channel:
|
|
25
|
+
args[option.name] = interaction.data.resolved?.channels?.get(BigInt(option.value));
|
|
26
|
+
break;
|
|
27
|
+
case _types.ApplicationCommandOptionTypes.Role:
|
|
28
|
+
args[option.name] = interaction.data.resolved?.roles?.get(BigInt(option.value));
|
|
29
|
+
break;
|
|
30
|
+
case _types.ApplicationCommandOptionTypes.User:
|
|
31
|
+
args[option.name] = {
|
|
32
|
+
user: interaction.data.resolved?.users?.get(BigInt(option.value)),
|
|
33
|
+
member: interaction.data.resolved?.members?.get(BigInt(option.value))
|
|
34
|
+
};
|
|
35
|
+
break;
|
|
36
|
+
case _types.ApplicationCommandOptionTypes.Attachment:
|
|
37
|
+
args[option.name] = interaction.data.resolved?.attachments?.get(BigInt(option.value));
|
|
38
|
+
break;
|
|
39
|
+
case _types.ApplicationCommandOptionTypes.Mentionable:
|
|
40
|
+
// Mentionable are roles or users
|
|
41
|
+
args[option.name] = interaction.data.resolved?.roles?.get(BigInt(option.value)) ?? {
|
|
42
|
+
user: interaction.data.resolved?.users?.get(BigInt(option.value)),
|
|
43
|
+
member: interaction.data.resolved?.members?.get(BigInt(option.value))
|
|
44
|
+
};
|
|
45
|
+
break;
|
|
46
|
+
default:
|
|
47
|
+
args[option.name] = option.value;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return args;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kT3B0aW9uc1BhcnNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25UeXBlcyB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHR5cGUge1xuICBBdHRhY2htZW50LFxuICBDaGFubmVsLFxuICBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzLFxuICBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLFxuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25EYXRhT3B0aW9uLFxuICBNZW1iZXIsXG4gIFJvbGUsXG4gIFNldHVwRGVzaXJlZFByb3BzLFxuICBUcmFuc2Zvcm1Qcm9wZXJ0eSxcbiAgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG4gIFVzZXIsXG59IGZyb20gJy4vaW5kZXguanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBjb21tYW5kT3B0aW9uc1BhcnNlcjxcbiAgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgJiB7IGludGVyYWN0aW9uOiB7IGRhdGE6IHRydWUgfSB9LFxuICBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLFxuPihfX2ludGVyYWN0aW9uOiBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvbiwgVFByb3BzLCBUQmVoYXZpb3I+LCBvcHRpb25zPzogSW50ZXJhY3Rpb25EYXRhT3B0aW9uW10pOiBQYXJzZWRJbnRlcmFjdGlvbk9wdGlvbjxUUHJvcHMsIFRCZWhhdmlvcj4ge1xuICAvLyBUaGlzIGlzIG5lY2Vzc2FyeSBhcyB0eXBlc2NyaXB0IGdldHMgcmVhbGx5IGNvbmZ1c2VkIHdoZW4gdXNpbmcgX19pbnRlcmFjdGlvbiBhbG9uZSwgYXMgaXQgd2lsbCBzYXkgdGhhdCAnZGF0YScgZG9lcyBub3QgZXhpc3QgZGVzcGl0ZSBpdCBzdXJlbHkgZXhpc3Qgc2luY2Ugd2UgaGF2ZSB0aGUgJlxuICBjb25zdCBpbnRlcmFjdGlvbiA9IF9faW50ZXJhY3Rpb24gYXMgU2V0dXBEZXNpcmVkUHJvcHM8XG4gICAgSW50ZXJhY3Rpb24sXG4gICAgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllczx7IGludGVyYWN0aW9uOiB7IGRhdGE6IHRydWUgfSB9PixcbiAgICBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleVxuICA+XG5cbiAgaWYgKCFpbnRlcmFjdGlvbi5kYXRhKSByZXR1cm4ge31cbiAgaWYgKCFvcHRpb25zKSBvcHRpb25zID0gaW50ZXJhY3Rpb24uZGF0YS5vcHRpb25zID8/IFtdXG5cbiAgY29uc3QgYXJnczogUGFyc2VkSW50ZXJhY3Rpb25PcHRpb248VFByb3BzLCBUQmVoYXZpb3I+ID0ge31cblxuICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBvcHRpb25zKSB7XG4gICAgc3dpdGNoIChvcHRpb24udHlwZSkge1xuICAgICAgY2FzZSBBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25UeXBlcy5TdWJDb21tYW5kR3JvdXA6XG4gICAgICBjYXNlIEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvblR5cGVzLlN1YkNvbW1hbmQ6XG4gICAgICAgIGFyZ3Nbb3B0aW9uLm5hbWVdID0gY29tbWFuZE9wdGlvbnNQYXJzZXIoaW50ZXJhY3Rpb24sIG9wdGlvbi5vcHRpb25zKSBhcyBJbnRlcmFjdGlvblJlc29sdmVkRGF0YTxUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgQXBwbGljYXRpb25Db21tYW5kT3B0aW9uVHlwZXMuQ2hhbm5lbDpcbiAgICAgICAgYXJnc1tvcHRpb24ubmFtZV0gPSBpbnRlcmFjdGlvbi5kYXRhLnJlc29sdmVkPy5jaGFubmVscz8uZ2V0KEJpZ0ludChvcHRpb24udmFsdWUhKSkgYXMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGE8VFByb3BzLCBUQmVoYXZpb3I+XG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlIEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvblR5cGVzLlJvbGU6XG4gICAgICAgIGFyZ3Nbb3B0aW9uLm5hbWVdID0gaW50ZXJhY3Rpb24uZGF0YS5yZXNvbHZlZD8ucm9sZXM/LmdldChCaWdJbnQob3B0aW9uLnZhbHVlISkpIGFzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhPFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICBicmVha1xuICAgICAgY2FzZSBBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25UeXBlcy5Vc2VyOlxuICAgICAgICBhcmdzW29wdGlvbi5uYW1lXSA9IHtcbiAgICAgICAgICB1c2VyOiBpbnRlcmFjdGlvbi5kYXRhLnJlc29sdmVkPy51c2Vycz8uZ2V0KEJpZ0ludChvcHRpb24udmFsdWUhKSkgYXMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGE8VFByb3BzLCBUQmVoYXZpb3I+LFxuICAgICAgICAgIG1lbWJlcjogaW50ZXJhY3Rpb24uZGF0YS5yZXNvbHZlZD8ubWVtYmVycz8uZ2V0KEJpZ0ludChvcHRpb24udmFsdWUhKSkgYXMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGE8VFByb3BzLCBUQmVoYXZpb3I+LFxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlIEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvblR5cGVzLkF0dGFjaG1lbnQ6XG4gICAgICAgIGFyZ3Nbb3B0aW9uLm5hbWVdID0gaW50ZXJhY3Rpb24uZGF0YS5yZXNvbHZlZD8uYXR0YWNobWVudHM/LmdldChCaWdJbnQob3B0aW9uLnZhbHVlISkpIGFzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhPFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICBicmVha1xuICAgICAgY2FzZSBBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25UeXBlcy5NZW50aW9uYWJsZTpcbiAgICAgICAgLy8gTWVudGlvbmFibGUgYXJlIHJvbGVzIG9yIHVzZXJzXG4gICAgICAgIGFyZ3Nbb3B0aW9uLm5hbWVdID0gKGludGVyYWN0aW9uLmRhdGEucmVzb2x2ZWQ/LnJvbGVzPy5nZXQoQmlnSW50KG9wdGlvbi52YWx1ZSEpKSBhcyBQYXJzZWRJbnRlcmFjdGlvbk9wdGlvbjxUUHJvcHMsIFRCZWhhdmlvcj5bc3RyaW5nXSkgPz8ge1xuICAgICAgICAgIHVzZXI6IGludGVyYWN0aW9uLmRhdGEucmVzb2x2ZWQ/LnVzZXJzPy5nZXQoQmlnSW50KG9wdGlvbi52YWx1ZSEpKSBhcyBJbnRlcmFjdGlvblJlc29sdmVkRGF0YTxUUHJvcHMsIFRCZWhhdmlvcj4sXG4gICAgICAgICAgbWVtYmVyOiBpbnRlcmFjdGlvbi5kYXRhLnJlc29sdmVkPy5tZW1iZXJzPy5nZXQoQmlnSW50KG9wdGlvbi52YWx1ZSEpKSBhcyBJbnRlcmFjdGlvblJlc29sdmVkRGF0YTxUUHJvcHMsIFRCZWhhdmlvcj4sXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGFyZ3Nbb3B0aW9uLm5hbWVdID0gb3B0aW9uLnZhbHVlIGFzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhPFRQcm9wcywgVEJlaGF2aW9yPlxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhcmdzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VkSW50ZXJhY3Rpb25PcHRpb248VFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+IHtcbiAgW2tleTogc3RyaW5nXTogSW50ZXJhY3Rpb25SZXNvbHZlZERhdGE8VFByb3BzLCBUQmVoYXZpb3I+XG59XG5cbmV4cG9ydCB0eXBlIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhPFRQcm9wcyBleHRlbmRzIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiA9XG4gIHwgc3RyaW5nXG4gIHwgbnVtYmVyXG4gIHwgYm9vbGVhblxuICB8IFRyYW5zZm9ybVByb3BlcnR5PEludGVyYWN0aW9uUmVzb2x2ZWRVc2VyLCBUUHJvcHMsIFRCZWhhdmlvcj5cbiAgfCBUcmFuc2Zvcm1Qcm9wZXJ0eTxJbnRlcmFjdGlvblJlc29sdmVkQ2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+XG4gIHwgVHJhbnNmb3JtUHJvcGVydHk8Um9sZSwgVFByb3BzLCBUQmVoYXZpb3I+XG4gIHwgVHJhbnNmb3JtUHJvcGVydHk8QXR0YWNobWVudCwgVFByb3BzLCBUQmVoYXZpb3I+XG4gIHwgUGFyc2VkSW50ZXJhY3Rpb25PcHRpb248VFByb3BzLCBUQmVoYXZpb3I+XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJhY3Rpb25SZXNvbHZlZFVzZXIge1xuICB1c2VyOiBVc2VyXG4gIG1lbWJlcjogSW50ZXJhY3Rpb25SZXNvbHZlZE1lbWJlclxufVxuXG5leHBvcnQgdHlwZSBJbnRlcmFjdGlvblJlc29sdmVkQ2hhbm5lbCA9IFBpY2s8Q2hhbm5lbCwgJ2lkJyB8ICduYW1lJyB8ICd0eXBlJyB8ICdwZXJtaXNzaW9ucycgfCAndGhyZWFkTWV0YWRhdGEnIHwgJ3BhcmVudElkJz5cblxuZXhwb3J0IHR5cGUgSW50ZXJhY3Rpb25SZXNvbHZlZE1lbWJlciA9IE9taXQ8TWVtYmVyLCAndXNlcicgfCAnZGVhZicgfCAnbXV0ZSc+XG4iXSwibmFtZXMiOlsiY29tbWFuZE9wdGlvbnNQYXJzZXIiLCJfX2ludGVyYWN0aW9uIiwib3B0aW9ucyIsImludGVyYWN0aW9uIiwiZGF0YSIsImFyZ3MiLCJvcHRpb24iLCJ0eXBlIiwiQXBwbGljYXRpb25Db21tYW5kT3B0aW9uVHlwZXMiLCJTdWJDb21tYW5kR3JvdXAiLCJTdWJDb21tYW5kIiwibmFtZSIsIkNoYW5uZWwiLCJyZXNvbHZlZCIsImNoYW5uZWxzIiwiZ2V0IiwiQmlnSW50IiwidmFsdWUiLCJSb2xlIiwicm9sZXMiLCJVc2VyIiwidXNlciIsInVzZXJzIiwibWVtYmVyIiwibWVtYmVycyIsIkF0dGFjaG1lbnQiLCJhdHRhY2htZW50cyIsIk1lbnRpb25hYmxlIl0sIm1hcHBpbmdzIjoiOzs7OytCQWdCZ0JBOzs7ZUFBQUE7Ozt1QkFoQjhCO0FBZ0J2QyxTQUFTQSxxQkFHZEMsYUFBZ0UsRUFBRUMsT0FBaUM7SUFDbkcsNktBQTZLO0lBQzdLLE1BQU1DLGNBQWNGO0lBTXBCLElBQUksQ0FBQ0UsWUFBWUMsSUFBSSxFQUFFLE9BQU8sQ0FBQztJQUMvQixJQUFJLENBQUNGLFNBQVNBLFVBQVVDLFlBQVlDLElBQUksQ0FBQ0YsT0FBTyxJQUFJLEVBQUU7SUFFdEQsTUFBTUcsT0FBbUQsQ0FBQztJQUUxRCxLQUFLLE1BQU1DLFVBQVVKLFFBQVM7UUFDNUIsT0FBUUksT0FBT0MsSUFBSTtZQUNqQixLQUFLQyxvQ0FBNkIsQ0FBQ0MsZUFBZTtZQUNsRCxLQUFLRCxvQ0FBNkIsQ0FBQ0UsVUFBVTtnQkFDM0NMLElBQUksQ0FBQ0MsT0FBT0ssSUFBSSxDQUFDLEdBQUdYLHFCQUFxQkcsYUFBYUcsT0FBT0osT0FBTztnQkFDcEU7WUFDRixLQUFLTSxvQ0FBNkIsQ0FBQ0ksT0FBTztnQkFDeENQLElBQUksQ0FBQ0MsT0FBT0ssSUFBSSxDQUFDLEdBQUdSLFlBQVlDLElBQUksQ0FBQ1MsUUFBUSxFQUFFQyxVQUFVQyxJQUFJQyxPQUFPVixPQUFPVyxLQUFLO2dCQUNoRjtZQUNGLEtBQUtULG9DQUE2QixDQUFDVSxJQUFJO2dCQUNyQ2IsSUFBSSxDQUFDQyxPQUFPSyxJQUFJLENBQUMsR0FBR1IsWUFBWUMsSUFBSSxDQUFDUyxRQUFRLEVBQUVNLE9BQU9KLElBQUlDLE9BQU9WLE9BQU9XLEtBQUs7Z0JBQzdFO1lBQ0YsS0FBS1Qsb0NBQTZCLENBQUNZLElBQUk7Z0JBQ3JDZixJQUFJLENBQUNDLE9BQU9LLElBQUksQ0FBQyxHQUFHO29CQUNsQlUsTUFBTWxCLFlBQVlDLElBQUksQ0FBQ1MsUUFBUSxFQUFFUyxPQUFPUCxJQUFJQyxPQUFPVixPQUFPVyxLQUFLO29CQUMvRE0sUUFBUXBCLFlBQVlDLElBQUksQ0FBQ1MsUUFBUSxFQUFFVyxTQUFTVCxJQUFJQyxPQUFPVixPQUFPVyxLQUFLO2dCQUNyRTtnQkFDQTtZQUNGLEtBQUtULG9DQUE2QixDQUFDaUIsVUFBVTtnQkFDM0NwQixJQUFJLENBQUNDLE9BQU9LLElBQUksQ0FBQyxHQUFHUixZQUFZQyxJQUFJLENBQUNTLFFBQVEsRUFBRWEsYUFBYVgsSUFBSUMsT0FBT1YsT0FBT1csS0FBSztnQkFDbkY7WUFDRixLQUFLVCxvQ0FBNkIsQ0FBQ21CLFdBQVc7Z0JBQzVDLGlDQUFpQztnQkFDakN0QixJQUFJLENBQUNDLE9BQU9LLElBQUksQ0FBQyxHQUFHLEFBQUNSLFlBQVlDLElBQUksQ0FBQ1MsUUFBUSxFQUFFTSxPQUFPSixJQUFJQyxPQUFPVixPQUFPVyxLQUFLLE1BQThEO29CQUMxSUksTUFBTWxCLFlBQVlDLElBQUksQ0FBQ1MsUUFBUSxFQUFFUyxPQUFPUCxJQUFJQyxPQUFPVixPQUFPVyxLQUFLO29CQUMvRE0sUUFBUXBCLFlBQVlDLElBQUksQ0FBQ1MsUUFBUSxFQUFFVyxTQUFTVCxJQUFJQyxPQUFPVixPQUFPVyxLQUFLO2dCQUNyRTtnQkFDQTtZQUNGO2dCQUNFWixJQUFJLENBQUNDLE9BQU9LLElBQUksQ0FBQyxHQUFHTCxPQUFPVyxLQUFLO1FBQ3BDO0lBQ0Y7SUFFQSxPQUFPWjtBQUNUIn0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
CHANNEL_MENTION_REGEX: function() {
|
|
13
|
+
return CHANNEL_MENTION_REGEX;
|
|
14
|
+
},
|
|
15
|
+
CONTEXT_MENU_COMMANDS_NAME_REGEX: function() {
|
|
16
|
+
return CONTEXT_MENU_COMMANDS_NAME_REGEX;
|
|
17
|
+
},
|
|
18
|
+
DISCORD_SNOWFLAKE_REGEX: function() {
|
|
19
|
+
return DISCORD_SNOWFLAKE_REGEX;
|
|
20
|
+
},
|
|
21
|
+
SLASH_COMMANDS_NAME_REGEX: function() {
|
|
22
|
+
return SLASH_COMMANDS_NAME_REGEX;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
const SLASH_COMMANDS_NAME_REGEX = /^[-_\p{L}\p{N}\p{sc=Deva}\p{sc=Thai}]{1,32}$/u;
|
|
26
|
+
const CONTEXT_MENU_COMMANDS_NAME_REGEX = /^[\w-\s]{1,32}$/;
|
|
27
|
+
const CHANNEL_MENTION_REGEX = /<#[0-9]+>/g;
|
|
28
|
+
const DISCORD_SNOWFLAKE_REGEX = /^(?<id>\d{17,19})$/;
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFNMQVNIX0NPTU1BTkRTX05BTUVfUkVHRVggPSAvXlstX1xccHtMfVxccHtOfVxccHtzYz1EZXZhfVxccHtzYz1UaGFpfV17MSwzMn0kL3VcbmV4cG9ydCBjb25zdCBDT05URVhUX01FTlVfQ09NTUFORFNfTkFNRV9SRUdFWCA9IC9eW1xcdy1cXHNdezEsMzJ9JC9cbmV4cG9ydCBjb25zdCBDSEFOTkVMX01FTlRJT05fUkVHRVggPSAvPCNbMC05XSs+L2dcbmV4cG9ydCBjb25zdCBESVNDT1JEX1NOT1dGTEFLRV9SRUdFWCA9IC9eKD88aWQ+XFxkezE3LDE5fSkkL1xuIl0sIm5hbWVzIjpbIkNIQU5ORUxfTUVOVElPTl9SRUdFWCIsIkNPTlRFWFRfTUVOVV9DT01NQU5EU19OQU1FX1JFR0VYIiwiRElTQ09SRF9TTk9XRkxBS0VfUkVHRVgiLCJTTEFTSF9DT01NQU5EU19OQU1FX1JFR0VYIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUVhQSxxQkFBcUI7ZUFBckJBOztJQURBQyxnQ0FBZ0M7ZUFBaENBOztJQUVBQyx1QkFBdUI7ZUFBdkJBOztJQUhBQyx5QkFBeUI7ZUFBekJBOzs7QUFBTixNQUFNQSw0QkFBNEI7QUFDbEMsTUFBTUYsbUNBQW1DO0FBQ3pDLE1BQU1ELHdCQUF3QjtBQUM5QixNQUFNRSwwQkFBMEIifQ==
|