fox-block-builder
Version:
Maintainable code for loop slack-block-kit-like modal builder
28 lines • 1.22 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.OptionBuilder = void 0;
const internal_1 = require("../internal");
const base_1 = require("../internal/base");
const dto_1 = require("../internal/dto");
const helpers_1 = require("../internal/helpers");
const methods_1 = require("../internal/methods");
/**
* @@link https://api.slack.com/reference/block-kit/composition-objects#option
* @@displayName Option
*/
class OptionBuilder extends base_1.BitBuilderBase {
/** @internal */
build({ isMarkdown } = { isMarkdown: false }) {
return this.getResult(dto_1.SlackDto, {
text: isMarkdown
? (0, helpers_1.getMarkdownObject)(this.props.text)
: (0, helpers_1.getPlainTextObject)(this.props.text),
description: isMarkdown
? (0, helpers_1.getMarkdownObject)(this.props.description)
: (0, helpers_1.getPlainTextObject)(this.props.description),
});
}
}
exports.OptionBuilder = OptionBuilder;
(0, helpers_1.applyMixins)(OptionBuilder, [methods_1.Description, methods_1.End, methods_1.Text, methods_1.Url, methods_1.Value, methods_1.OnSelect]);
//# sourceMappingURL=option.js.map
;