@sapphire/framework
Version:
Discord bot framework built for advanced and amazing bots.
82 lines (80 loc) • 5.7 kB
JavaScript
"use strict";
const require_lib_utils_application_commands_compute_differences__shared = require('./compute-differences/_shared.cjs');
const require_lib_utils_application_commands_compute_differences_default_member_permissions = require('./compute-differences/default_member_permissions.cjs');
const require_lib_utils_application_commands_compute_differences_description = require('./compute-differences/description.cjs');
const require_lib_utils_application_commands_compute_differences_dm_permission = require('./compute-differences/dm_permission.cjs');
const require_lib_utils_application_commands_compute_differences_localizations = require('./compute-differences/localizations.cjs');
const require_lib_utils_application_commands_compute_differences_name = require('./compute-differences/name.cjs');
const require_lib_utils_application_commands_compute_differences_options = require('./compute-differences/options.cjs');
const require_lib_utils_application_commands_compute_differences_integration_types = require('./compute-differences/integration_types.cjs');
const require_lib_utils_application_commands_compute_differences_contexts = require('./compute-differences/contexts.cjs');
let discord_api_types_v10 = require("discord-api-types/v10");
//#region src/lib/utils/application-commands/computeDifferences.ts
/**
* @returns `true` if there are differences, `false` otherwise
*/
function getCommandDifferencesFast(existingCommand, apiData, guildCommand) {
for (const _ of getCommandDifferences(existingCommand, apiData, guildCommand)) return true;
return false;
}
function* getCommandDifferences(existingCommand, apiData, guildCommand) {
if (existingCommand.type !== discord_api_types_v10.ApplicationCommandType.ChatInput && existingCommand.type) {
if (require_lib_utils_application_commands_compute_differences__shared.contextMenuTypes.includes(existingCommand.type ?? discord_api_types_v10.ApplicationCommandType.ChatInput)) {
const casted$1 = apiData;
yield* require_lib_utils_application_commands_compute_differences_name.checkName({
oldName: existingCommand.name,
newName: casted$1.name
});
if (!guildCommand) yield* require_lib_utils_application_commands_compute_differences_dm_permission.checkDMPermission(existingCommand.dm_permission, casted$1.dm_permission);
yield* require_lib_utils_application_commands_compute_differences_default_member_permissions.checkDefaultMemberPermissions(existingCommand.default_member_permissions, casted$1.default_member_permissions);
const originalLocalizedNames$1 = existingCommand.name_localizations;
const expectedLocalizedNames$1 = casted$1.name_localizations;
yield* require_lib_utils_application_commands_compute_differences_localizations.checkLocalizations({
localeMapName: "nameLocalizations",
localePresentMessage: "localized names",
localeMissingMessage: "no localized names",
originalLocalizedDescriptions: originalLocalizedNames$1,
expectedLocalizedDescriptions: expectedLocalizedNames$1
});
yield* require_lib_utils_application_commands_compute_differences_integration_types.checkIntegrationTypes(existingCommand.integration_types, casted$1.integration_types);
yield* require_lib_utils_application_commands_compute_differences_contexts.checkInteractionContextTypes(existingCommand.contexts, casted$1.contexts);
}
return;
}
const casted = apiData;
yield* require_lib_utils_application_commands_compute_differences_name.checkName({
oldName: existingCommand.name.toLowerCase(),
newName: casted.name.toLowerCase()
});
const originalLocalizedNames = existingCommand.name_localizations;
const expectedLocalizedNames = casted.name_localizations;
yield* require_lib_utils_application_commands_compute_differences_localizations.checkLocalizations({
localeMapName: "nameLocalizations",
localePresentMessage: "localized names",
localeMissingMessage: "no localized names",
originalLocalizedDescriptions: originalLocalizedNames,
expectedLocalizedDescriptions: expectedLocalizedNames
});
if (!guildCommand) yield* require_lib_utils_application_commands_compute_differences_dm_permission.checkDMPermission(existingCommand.dm_permission, casted.dm_permission);
yield* require_lib_utils_application_commands_compute_differences_default_member_permissions.checkDefaultMemberPermissions(existingCommand.default_member_permissions, casted.default_member_permissions);
yield* require_lib_utils_application_commands_compute_differences_description.checkDescription({
oldDescription: existingCommand.description,
newDescription: casted.description
});
const originalLocalizedDescriptions = existingCommand.description_localizations;
const expectedLocalizedDescriptions = casted.description_localizations;
yield* require_lib_utils_application_commands_compute_differences_localizations.checkLocalizations({
localeMapName: "descriptionLocalizations",
localePresentMessage: "localized descriptions",
localeMissingMessage: "no localized descriptions",
originalLocalizedDescriptions,
expectedLocalizedDescriptions
});
yield* require_lib_utils_application_commands_compute_differences_integration_types.checkIntegrationTypes(existingCommand.integration_types, casted.integration_types);
yield* require_lib_utils_application_commands_compute_differences_contexts.checkInteractionContextTypes(existingCommand.contexts, casted.contexts);
yield* require_lib_utils_application_commands_compute_differences_options.checkOptions(existingCommand.options, casted.options);
}
//#endregion
exports.getCommandDifferences = getCommandDifferences;
exports.getCommandDifferencesFast = getCommandDifferencesFast;
//# sourceMappingURL=computeDifferences.cjs.map