@talend/react-containers
Version:
Provide connected components aka containers for @talend/react-cmf based on @talend/react-components.
70 lines (69 loc) • 1.9 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
exports.mapStateToProps = mapStateToProps;
exports.mergeProps = mergeProps;
var _reactCmf = require("@talend/react-cmf");
var _Action = _interopRequireDefault(require("../Action"));
var _Actions = _interopRequireDefault(require("../Actions"));
var _ActionDropdown = _interopRequireDefault(require("../ActionDropdown"));
var _ActionSplitDropdown = _interopRequireDefault(require("../ActionSplitDropdown"));
var _renderers = _interopRequireDefault(require("../renderers"));
var _reactComponents = require("@talend/react-components");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const renderers = {
Action: _Action.default,
Actions: _Actions.default,
ActionDropdown: _ActionDropdown.default,
ActionSplitDropdown: _ActionSplitDropdown.default
};
function getAction(actionId) {
if (typeof actionId === 'string') {
return {
actionId
};
}
return actionId;
}
function mapStateToProps(state, {
actionIds
}) {
const props = {
renderers: (0, _renderers.default)(renderers)
};
if (actionIds) {
props.actions = {};
const {
left,
right
} = actionIds;
if (left) {
props.actions.left = left.map(getAction);
}
if (right) {
props.actions.right = right.map(getAction);
}
}
return props;
}
function mergeProps(stateProps, dispatchProps, ownProps) {
const props = {
...ownProps,
...stateProps,
...dispatchProps
};
delete props.actionIds;
return props;
}
var _default = exports.default = (0, _reactCmf.cmfConnect)({
mapStateToProps,
mergeProps,
omitCMFProps: true,
withComponentRegistry: true,
withDispatch: true,
withDispatchActionCreator: true,
withComponentId: true
})(_reactComponents.ActionBar);
//# sourceMappingURL=ActionBar.connect.js.map