All files / src adaptor.js

100% Statements 6/6
100% Branches 0/0
100% Functions 2/2
100% Lines 6/6

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38  1x                                                       1x   1x 4x 3x 3x      
 
import React from 'react'
 
// const identity = a => a
//
// export const adaptor = signal => {
//   let internalState = {}
//   signal.observe(state => {
//     internalState = state
//   })
//   return function connect (selector, Component) {
//     if (Component && !selector) {
//       throw new Error('No state selector for connected component')
//     }
//
//     // selector is optional, if it is omitted then assume the first
//     // argument is the component function
//     const select = Component ? selector : identity
//     const Comp = Component || selector
//
//     return props => {
//       let state = select(internalState)
//       return <Comp {...state} {...props} />
//     }
//   }
// }
//
// export default adaptor
 
import { createAdaptor } from './createAdaptor'
 
export const adaptor = createAdaptor((select, getState, func) => {
  return props => {
    let state = select(getState())
    return <func {...state} {...props} />
  }
})