UNPKG

@jadl/cmd

Version:
20 lines (19 loc) 797 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Run = void 0; const Symbols_1 = require("../Symbols"); const Decorators_1 = require("../utils/Decorators"); exports.Run = Decorators_1.Decorators.createCommandDecorator(([dontImply], cmd, base, descriptor) => { cmd.name = Symbols_1.Symbols.baseCommand; if (cmd.interactionOptions && !dontImply) { base[Symbols_1.Symbols.interaction].options = cmd.interactionOptions; } const method = descriptor.value; descriptor.value = async function (int, handler) { const args = [int, handler]; for (let i = 0; i < cmd.params.length; i++) { args[i] = await cmd.params[i](int, handler); } return method.bind(this)(...args); }; });