'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

const index$1 = require('./index-457520a1.js');
const elementQuestionBase = require('./element-question-base-a6f39464.js');

const BceElementTableTemplate = class {
    constructor(hostRef) {
        index$1.registerInstance(this, hostRef);
        this.label = {
            name: 'Table',
            labelQuestion: 'Formulate your question',
            labelRequired: 'Required',
            labelOCOptionAdd: 'Add Column',
            labelOCOptionRemove: 'Delete Column',
            labelOrientation: 'Oriëntation',
            labelOrientationH: 'Horizontal',
            labelOrientationV: 'Vertical',
            labelMaxRows: 'Max row count',
            placeholderColumns: 'Column'
        };
    }
    prop(path, options = {}) {
        return this.handler.prop(path, Object.assign(Object.assign({}, options), { label: this.label }));
    }
    render() {
        const { labelOrientationH, labelOrientationV } = this.label;
        return (index$1.h(elementQuestionBase.ElementQuestionBase, { question: this.prop('question', { localize: true }), required: this.prop('required') }, index$1.h("bce-option-creator", Object.assign({}, this.prop('columns'), { label: this.label })), index$1.h("bce-select", Object.assign({}, this.prop('orientation')), index$1.h("bce-option", { value: "horizontal" }, labelOrientationH), index$1.h("bce-option", { value: "vertical" }, labelOrientationV)), index$1.h("bce-input", Object.assign({ type: "number" }, this.prop('maxRows'))), index$1.h("slot", null)));
    }
};

exports.bce_element_table_editor = BceElementTableTemplate;
