@@ -9,8 +9,8 @@ class ChoiceElement(ValueElement):
value: Any,
options: Union[List, Dict],
on_change: Callable,
- design: str = '',
- classes: str = '',
+ design: str,
+ classes: str,
):
if isinstance(options, list):
@@ -30,3 +30,9 @@ class Select(ChoiceElement):
return matches[0]['label']
else:
return value
+
+ def handle_change(self, msg):
+ msg['label'] = msg['value']['label']
+ msg['value'] = msg['value']['value']
+ return super().handle_change(msg)
@@ -36,7 +36,7 @@ class ValueElement(Element):
try:
self.on_change()
except TypeError:
- self.on_change(EventArguments(self, value=self.value))
+ self.on_change(EventArguments(self, **msg))
except Exception:
traceback.print_exc()