(element, props)
| 14743 | } |
| 14744 | |
| 14745 | function postUpdateWrapper(element, props) { |
| 14746 | var node = element; |
| 14747 | // After the initial mount, we control selected-ness manually so don't pass |
| 14748 | // this value down |
| 14749 | node._wrapperState.initialValue = undefined; |
| 14750 | |
| 14751 | var wasMultiple = node._wrapperState.wasMultiple; |
| 14752 | node._wrapperState.wasMultiple = !!props.multiple; |
| 14753 | |
| 14754 | var value = props.value; |
| 14755 | if (value != null) { |
| 14756 | updateOptions(node, !!props.multiple, value, false); |
| 14757 | } else if (wasMultiple !== !!props.multiple) { |
| 14758 | // For simplicity, reapply `defaultValue` if `multiple` is toggled. |
| 14759 | if (props.defaultValue != null) { |
| 14760 | updateOptions(node, !!props.multiple, props.defaultValue, true); |
| 14761 | } else { |
| 14762 | // Revert the select back to its default unselected state. |
| 14763 | updateOptions(node, !!props.multiple, props.multiple ? [] : '', false); |
| 14764 | } |
| 14765 | } |
| 14766 | } |
| 14767 | |
| 14768 | function restoreControlledState$2(element, props) { |
| 14769 | var node = element; |
no test coverage detected