Repository URL to install this package:
|
Version:
2.1.16 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const mobx_react_1 = require("xmobx/mobx-react");
const common_1 = require("@skava/ui/dist/state/common");
const renderProps_1 = require("./renderProps");
let ActionButtonGroup = class ActionButtonGroup extends react_1.default.Component {
constructor() {
super(...arguments);
this.state = common_1.toCommonState(this.props);
}
render() {
const _a = this.props,
{
renderWrapper,
renderDefaultView,
renderActiveView
} = _a,
remainingProps = tslib_1.__rest(_a, ["renderWrapper", "renderDefaultView", "renderActiveView"]);
const currentView = this.state.isActive ? renderActiveView(remainingProps, this.state) : renderDefaultView(remainingProps, this.state);
const children = react_1.default.createElement(react_1.default.Fragment, null, currentView);
const view = renderWrapper(Object.assign({}, remainingProps, {
children
}), this.state);
return view;
}
};
ActionButtonGroup.defaultProps = {
className: '',
renderActiveView: renderProps_1.defaultRenderActiveView,
renderDefaultView: renderProps_1.defaultRenderDefaultView,
renderWrapper: renderProps_1.defaultRenderWrapper
};
ActionButtonGroup = tslib_1.__decorate([mobx_react_1.observer], ActionButtonGroup);
exports.ActionButtonGroup = ActionButtonGroup;
exports.default = ActionButtonGroup;