'use strict';

var index = require('./index-BEF5cZxd.js');
var props = require('./props-CPENhBnM.js');
var colors = require('./colors-DgrrxjsX.js');
var utils = require('./utils-NnC78QR3.js');
var template = require('./template-Cj6PcLmR.js');
require('./gov.log-C5EH15b_.js');

utils.pick(colors.Colors, ['PRIMARY', 'NEUTRAL', 'ERROR', 'SUCCESS', 'WARNING']);
var MessageType;
(function (MessageType) {
    MessageType["BOLD"] = "bold";
    MessageType["SUBTLE"] = "subtle";
})(MessageType || (MessageType = {}));
const MessageClass = {
    root: 'gov-message',
    content: 'gov-message__content',
};

const GovMessage = class {
    constructor(hostRef) {
        index.registerInstance(this, hostRef);
        /**
         * Style variation of the content message.
         */
        this.color = colors.Colors.PRIMARY;
        /**
         * Message type
         */
        this.type = "subtle";
        this.h = template.govHost(this.host);
    }
    validateColor(newValue) {
        props.validateProp(colors.Colors, newValue, MessageClass.root);
    }
    render() {
        return (index.h(index.Host, { key: '646b418ce94ae2c4a0e68ae7662b6a0cdcb5abdf', class: this.h.classes(MessageClass.root), color: this.color, type: this.type, role: "status" }, this.h.hasSlot("icon") && (index.h("span", { key: 'c628baa7a9302fd2422418f6cb643ab188630d19' }, index.h("slot", { key: '3e06254836e945da56d642ca358730c59da0575d', name: "icon" }))), index.h("div", { key: 'e9732388652c00c5bb4292d61ba71a62b3a6ca07', class: MessageClass.content }, index.h("slot", { key: '71b74db9ecbfa2fcd0bbb102e6d77accbcd1d3f0' }))));
    }
    get host() { return index.getElement(this); }
    static get watchers() { return {
        "color": ["validateColor"]
    }; }
};

exports.gov_message = GovMessage;
//# sourceMappingURL=gov-message.entry.cjs.js.map

//# sourceMappingURL=gov-message.cjs.entry.js.map