UNPKG

@guildedts/framework

Version:

A framework for creating a Guilded bot.

33 lines 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.BooleanArgument = void 0; const guilded_ts_1 = require("guilded.ts"); const Argument_1 = require("./Argument"); /** * Represents a boolean command argument. * @example * class MyArgument extends BooleanArgument { * name = 'my-argument'; * } */ class BooleanArgument extends Argument_1.Argument { /** The default value of the argument. */ default; /** * Validates the boolean argument. * @param value The value of the argument. * @returns The validated value, or error. * @example booleanArgument.validate('true'); // true */ async validate(value) { value = (await super.validate(value)); if (this.default && !value) return this.default; else if (['true', 'yes', 'y', 'on', 'enable', 'false', 'no', 'n', 'off', 'disable'].includes(value.toLocaleLowerCase())) return ['true', 'yes', 'y', 'on', 'enable'].includes(value.toLocaleLowerCase()); else throw new Error(`${(0, guilded_ts_1.inlineCode)(this.name)} must be a boolean`); } } exports.BooleanArgument = BooleanArgument; //# sourceMappingURL=BooleanArgument.js.map