import { h } from "@stencil/core";
export class ElementTextEditor {
    constructor() {
        this.label = {
            name: 'Text',
            placeholderText: ''
        };
    }
    prop(path, options = {}) {
        return this.handler.prop(path, Object.assign(Object.assign({}, options), { label: this.label }));
    }
    render() {
        return [
            h("bce-input", Object.assign({}, this.prop('text', { localize: true }), { rows: 2, type: "textarea" })),
            h("slot", null)
        ];
    }
    static get is() { return "bce-element-text-editor"; }
    static get encapsulation() { return "shadow"; }
    static get properties() { return {
        "handler": {
            "type": "unknown",
            "mutable": false,
            "complexType": {
                "original": "InputHandler",
                "resolved": "InputHandler",
                "references": {
                    "InputHandler": {
                        "location": "import",
                        "path": "../../../utils/input-handler"
                    }
                }
            },
            "required": true,
            "optional": false,
            "docs": {
                "tags": [],
                "text": ""
            }
        },
        "language": {
            "type": "string",
            "mutable": false,
            "complexType": {
                "original": "string",
                "resolved": "string | undefined",
                "references": {}
            },
            "required": false,
            "optional": true,
            "docs": {
                "tags": [],
                "text": ""
            },
            "attribute": "language",
            "reflect": false
        },
        "label": {
            "type": "unknown",
            "mutable": false,
            "complexType": {
                "original": "TextElement.Label",
                "resolved": "Label",
                "references": {
                    "TextElement": {
                        "location": "import",
                        "path": "./element-text"
                    }
                }
            },
            "required": false,
            "optional": false,
            "docs": {
                "tags": [],
                "text": ""
            },
            "defaultValue": "{\n    name: 'Text',\n    placeholderText: ''\n  }"
        }
    }; }
}
