Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/ui-presets / src / presets / ProductOptions / state / makeMultiState.tsx
Size: Mime:
/**
 * @todo - mostly is able to be ui state of sku
 */
const makeSelectState = name => {
  const state = {
    // value will maybe be used by onClick
    name,
    value: name,

    list: [],
    get className() {
      return state.list.join(' ')
    },
  }
  // @todo handle uniq
  state.select = () => {
    state.isSelected = true
    state.list.push('selected')
  }
  state.disable = () => {
    state.isDisabled = true
    state.list.push('disable')
  }
  return state
}

export { makeSelectState as makeMultiState }
export { makeSelectState }
export default makeSelectState