UNPKG

@shgysk8zer0/slack

Version:

An npm package for sending messages in Slack

46 lines (35 loc) 1.03 kB
'use strict'; var input = require('./input.cjs'); var functions = require('../../functions.cjs'); var validation = require('../../validation.cjs'); class SlackURLInputElement extends input.SlackInputElement { #initialValue; constructor({ id, action, autoFocus = false, placeholder, initialValue } = {}) { super({ id, action, autoFocus, placeholder }); if (typeof initialValue !== 'undefined') { this.initialValue = initialValue.toString(); } } get initialValue() { return this.#initialValue; } set initialValue(val) { if (validation.isURL(val)) { this.#initialValue = val; } else { throw new TypeError('initialValue must be a non-empty string.'); } } toJSON() { return { ...super.toJSON(), initial_value: this.#initialValue, }; } static get TYPE() { return 'url_text_input'; } } const createSlackURLInputElement = functions.createFactory(SlackURLInputElement); exports.SlackURLInputElement = SlackURLInputElement; exports.createSlackURLInputElement = createSlackURLInputElement;