React smartSelect

                    <ListItem
                      title="Language"
                      smartSelect
                      smartSelectParams={{ openIn: 'popover', routableModals: false, closeOnSelect: true }}
                      onChange={event => {
                        updateLocale(event.target.value as Locale);
                      }}
                    >

onChange never seems to fire.

Also, I tried putting smartSelectParams={{on:{closed:()=>...}}} in there, but I get this:

Clearly, it should check first:

if (!ss.destroyed) {
  ss.modal.destroy();
  delete ss.modal;
}

onChange event for ListItem is for when it is used as a Radio or Checkbox item. With smart select, it should be done as:

<ListItem
  title="Language"
  smartSelect
  smartSelectParams={{
    openIn: 'popover',
    routableModals: false,
    closeOnSelect: true,
    on: {
      change(ss, value) {
        console.log(value)
      }
    }
  }}
>

Or you can attach change event handler directly to inner <select>:

<ListItem
  title="Language"
  smartSelect
  smartSelectParams={{
    openIn: 'popover',
    routableModals: false,
    closeOnSelect: true,
  }}
>
  <select onChange={...}>

This should be fixed in todays 4.5.2 update