Skip to content

Commit

Permalink
fix(translation): auto translate state names in event too
Browse files Browse the repository at this point in the history
  • Loading branch information
jourdain committed Sep 20, 2024
1 parent f0584c1 commit 46a2c74
Showing 1 changed file with 20 additions and 4 deletions.
24 changes: 20 additions & 4 deletions trame_client/widgets/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,7 @@ def attrs(self, *names):
else:
translated_value = str(value[0])
if AbstractElement._debug:
logger.warn(
logger.warning(
'Warning: <%s %s="..." /> is set with an (%s)',
self._elem_name,
js_key,
Expand Down Expand Up @@ -531,7 +531,12 @@ def events(self, *names):
continue

if isinstance(value, str):
self._attributes[name] = f'{js_key}="{value}"'
translated_value = (
self.server.state.translator.translate_js_expression(
self.server.state, value
)
)
self._attributes[name] = f'{js_key}="{translated_value}"'
elif callable(value):
trigger_name = self.server.trigger_name(value)
self._attributes[name] = f"{js_key}=\"trigger('{trigger_name}')\""
Expand All @@ -544,12 +549,23 @@ def events(self, *names):
f"{js_key}=\"trigger('{trigger_name}')\""
)
if len(value) == 2:
translated_value = (
self.server.state.translator.translate_js_expression(
self.server.state, value[1]
)
)
self._attributes[name] = (
f"{js_key}=\"trigger('{trigger_name}', {value[1]})\""
f"{js_key}=\"trigger('{trigger_name}', {translated_value})\""
)
if len(value) == 3:
translated_value = (
self.server.state.translator.translate_js_expression(
self.server.state, value[1]
)
)
# We don't want to translate kwargs as we may change keys rather than just values
self._attributes[name] = (
f"{js_key}=\"trigger('{trigger_name}', {value[1]}, {value[2]})\""
f"{js_key}=\"trigger('{trigger_name}', {translated_value}, {value[2]})\""
)
else:
print(
Expand Down

0 comments on commit 46a2c74

Please sign in to comment.