(prop, promise)
| 7 | }; |
| 8 | |
| 9 | export default function resolve(prop, promise) { |
| 10 | const asyncProps = (arguments.length === 1) ? prop : { [prop]: promise }; |
| 11 | const asyncNames = Object.keys(asyncProps).map(capitalize).join(""); |
| 12 | |
| 13 | return function resolveDecorator(Component) { |
| 14 | return class PropResolver extends React.Component { |
| 15 | static displayName = `${asyncNames}Resolver` |
| 16 | |
| 17 | render() { |
| 18 | return ( |
| 19 | <Resolver props={this.props} resolve={asyncProps}> |
| 20 | {(resolved) => <Component {...this.props} {...resolved} />} |
| 21 | </Resolver> |
| 22 | ); |
| 23 | } |
| 24 | }; |
| 25 | }; |
| 26 | } |
no outgoing calls
no test coverage detected