27 lines
882 B
JavaScript
27 lines
882 B
JavaScript
import { bindActionCreators } from 'redux'
|
|
import { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps'
|
|
|
|
export function whenMapDispatchToPropsIsFunction(mapDispatchToProps) {
|
|
return (typeof mapDispatchToProps === 'function')
|
|
? wrapMapToPropsFunc(mapDispatchToProps, 'mapDispatchToProps')
|
|
: undefined
|
|
}
|
|
|
|
export function whenMapDispatchToPropsIsMissing(mapDispatchToProps) {
|
|
return (!mapDispatchToProps)
|
|
? wrapMapToPropsConstant(dispatch => ({ dispatch }))
|
|
: undefined
|
|
}
|
|
|
|
export function whenMapDispatchToPropsIsObject(mapDispatchToProps) {
|
|
return (mapDispatchToProps && typeof mapDispatchToProps === 'object')
|
|
? wrapMapToPropsConstant(dispatch => bindActionCreators(mapDispatchToProps, dispatch))
|
|
: undefined
|
|
}
|
|
|
|
export default [
|
|
whenMapDispatchToPropsIsFunction,
|
|
whenMapDispatchToPropsIsMissing,
|
|
whenMapDispatchToPropsIsObject
|
|
]
|