@talend/react-containers
Version:
Provide connected components aka containers for @talend/react-cmf based on @talend/react-components.
73 lines (72 loc) • 2.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ContainerPieChartButton = ContainerPieChartButton;
exports.default = exports.DEFAULT_STATE = void 0;
var _propTypes = _interopRequireDefault(require("prop-types"));
var _immutable = _interopRequireDefault(require("immutable"));
var _reactCmf = require("@talend/react-cmf");
var _reactComponents = require("@talend/react-components");
var _lodash = require("lodash");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const DEFAULT_STATE = exports.DEFAULT_STATE = new _immutable.default.Map({});
function ContainerPieChartButton(props) {
let overlayComponent = null;
let onClick = null;
if (typeof props.overlayComponent === 'string' && props.overlayComponent) {
overlayComponent = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactCmf.Inject, {
component: props.overlayComponent,
...props.overlayComponentProps
});
}
if (!props.onClick) {
onClick = (event, data) => {
if (props.actionCreator) {
props.dispatchActionCreator(props.actionCreator, event, data);
} else {
props.dispatch({
model: props.model,
...props.payload
});
}
};
}
const state = props.state || DEFAULT_STATE;
const model = state.has('model') ? state.get('model').toJS() : props.model;
const newProps = {
...(0, _lodash.omit)(props, _reactCmf.cmfConnect.INJECTED_PROPS.concat(['getComponent', 'initialState'])),
model,
inProgress: state.get('inProgress', props.inProgress),
loading: state.get('loading', props.loading),
available: state.get('available', props.available),
overlayComponent,
onClick
};
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactComponents.PieChart.Button, {
...newProps
});
}
ContainerPieChartButton.displayName = 'Container(PieChartButton)';
ContainerPieChartButton.propTypes = {
..._reactCmf.cmfConnect.propTypes,
actionCreator: _propTypes.default.string,
dispatch: _propTypes.default.func,
dispatchActionCreator: _propTypes.default.func,
model: _propTypes.default.object,
onClick: _propTypes.default.func,
overlayComponent: _propTypes.default.string,
overlayComponentProps: _propTypes.default.object,
payload: _propTypes.default.object
};
var _default = exports.default = (0, _reactCmf.cmfConnect)({
componentId: ownProps => ownProps.componentId || ownProps.id,
defaultState: DEFAULT_STATE,
omitCMFProps: true,
withComponentRegistry: true,
withDispatch: true,
withDispatchActionCreator: true,
withComponentId: true
})(ContainerPieChartButton);
//# sourceMappingURL=PieChartButton.connect.js.map