/**
 * DevExtreme (esm/renovation/ui/grids/data_grid_next/widgets/header_row.js)
 * Version: 22.1.3 (build 22180-0310)
 * Build date: Wed Jun 29 2022
 *
 * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED
 * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
 */
import _extends from "@babel/runtime/helpers/esm/extends";
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
var _excluded = ["columns"];
import {
    createVNode,
    createComponentVNode
} from "inferno";
import {
    BaseInfernoComponent
} from "@devextreme/runtime/inferno";
import {
    HeaderCell
} from "./header_cell";
import CLASSES from "../classes";
export var viewFunction = viewModel => createVNode(1, "tr", "".concat(CLASSES.row, " ").concat(CLASSES.columnLines, " ").concat(CLASSES.headerRow), viewModel.props.columns.map((column, index) => createComponentVNode(2, HeaderCell, {
    column: column,
    headerTemplate: column.headerTemplate,
    countColumn: viewModel.props.columns.length,
    columnIndex: index
}, index)), 0, {
    role: "row"
});
export var HeaderRowProps = {
    columns: Object.freeze([])
};
export class HeaderRow extends BaseInfernoComponent {
    constructor(props) {
        super(props);
        this.state = {}
    }
    get restAttributes() {
        var _this$props = this.props,
            restProps = _objectWithoutPropertiesLoose(_this$props, _excluded);
        return restProps
    }
    render() {
        var props = this.props;
        return viewFunction({
            props: _extends({}, props),
            restAttributes: this.restAttributes
        })
    }
}
HeaderRow.defaultProps = HeaderRowProps;
