28b358e1 | const ActionLink = (React, PropTypes) => { |
2aa8beb4 | class ActionLink extends React.Component { constructor(props) { super(props); } render() { const { action, children, ...props } = this.props; |
28b358e1 | const renderedRoute = this.store.pathForAction(action); |
40d8820d | |
2aa8beb4 | return ( <a href={renderedRoute} onClick={ev => { ev.preventDefault(); |
28b358e1 | this.store.dispatch(action); |
2aa8beb4 | }} {...props} > {children} </a> ); } |
478c0afb | } |
7a0c8d3f | ActionLink.propTypes = { |
2aa8beb4 | action: PropTypes.oneOfType([PropTypes.string, PropTypes.object]), |
7a0c8d3f | children: PropTypes.node }; |
384920b4 | return ActionLink; }; let OutComponent = ActionLink; try { const React = require("react"); const PropTypes = require("prop-types"); |
2aa8beb4 | |
28b358e1 | OutComponent = ActionLink(React, PropTypes); |
7a0c8d3f | } catch (e) { /* empty */ } |
40d8820d | |
384920b4 | export const _internal = { ActionLink }; export default OutComponent; |