import { __decorate, __extends, __metadata } from "tslib";
import { Component, Prop } from 'vue-property-decorator';
import { StackItemStyles as baseStyles } from './StackItem.styles';
import { mergeStyleSets, getTheme } from '@uifabric/styling';
import { classNamesFunction } from '@uifabric-vue/utilities';
import StatelessComponent from '../../StatelessComponent';
var getClassNames = classNamesFunction({
    disableCaching: true,
});
var StackItem = /** @class */ (function (_super) {
    __extends(StackItem, _super);
    function StackItem() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    StackItem.prototype.render = function (h, ctx) {
        var _a = ctx.props, grow = _a.grow, shrink = _a.shrink, disableShrink = _a.disableShrink, align = _a.align, verticalFill = _a.verticalFill, order = _a.order, className = _a.className, styles = _a.styles;
        var classNames = getClassNames(mergeStyleSets(baseStyles({
            grow: grow,
            shrink: shrink,
            disableShrink: disableShrink,
            align: align,
            verticalFill: verticalFill,
            order: order,
            className: className,
        }, getTheme(), {}), styles));
        return h('div', { class: classNames.root }, ctx.children);
    };
    __decorate([
        Prop({ type: [Number, Boolean], default: 0 }),
        __metadata("design:type", Object)
    ], StackItem.prototype, "grow", void 0);
    __decorate([
        Prop(),
        __metadata("design:type", Object)
    ], StackItem.prototype, "shrink", void 0);
    __decorate([
        Prop(),
        __metadata("design:type", Object)
    ], StackItem.prototype, "disableShrink", void 0);
    __decorate([
        Prop(),
        __metadata("design:type", Object)
    ], StackItem.prototype, "align", void 0);
    __decorate([
        Prop(),
        __metadata("design:type", Object)
    ], StackItem.prototype, "verticalFill", void 0);
    __decorate([
        Prop({ type: Number, default: null }),
        __metadata("design:type", Number)
    ], StackItem.prototype, "order", void 0);
    __decorate([
        Prop({ type: Number, default: 0 }),
        __metadata("design:type", Number)
    ], StackItem.prototype, "test", void 0);
    StackItem = __decorate([
        Component({
            components: {},
        })
    ], StackItem);
    return StackItem;
}(StatelessComponent));
export default StackItem;
//# sourceMappingURL=StackItem.js.map