I can format columns

This commit is contained in:
2026-02-06 22:46:59 +01:00
parent 0620cb678b
commit db1e94f930
8 changed files with 141 additions and 31 deletions

View File

@@ -62,11 +62,11 @@ class Commands(BaseCommands):
self._owner,
self._owner.toggle_auto_save).htmx(target=f"#as_{self._id}", trigger="click")
def on_content_changed(self):
return Command("OnContentChanged",
"On content changed",
def save_content(self):
return Command("SaveContent",
"Save content",
self._owner,
self._owner.on_content_changed
self._owner.save_content
).htmx(target=None)
@@ -112,15 +112,24 @@ class DslEditor(MultipleInstance):
"""Get the current editor content."""
return self._state.content
def update_content(self, content: str = "") -> None:
def update_content(self, content: str = ""):
"""Handler for content update from CodeMirror."""
self._state.content = content
if self._state.auto_save:
self.on_content_changed()
logger.debug(f"Content updated: {len(content)} chars")
if self._state.auto_save:
return None, self.on_content_changed() # on_content_changed must be second to benefit from oob swap
return None
def save_content(self):
logger.debug("save_content")
return None, self.on_content_changed() # on_content_changed must be second to benefit from oob swap
def toggle_auto_save(self):
logger.debug("toggle_auto_save")
self._state.auto_save = not self._state.auto_save
logger.debug(f" auto_save={self._state.auto_save}")
return self._mk_auto_save()
def on_content_changed(self) -> None:
@@ -182,7 +191,7 @@ class DslEditor(MultipleInstance):
mk.button("Save",
cls="btn btn-xs btn-primary",
disabled="disabled" if self._state.auto_save else None,
command=self.commands.update_content()),
command=self.commands.save_content()),
cls="flex justify-between items-center p-2",
id=f"as_{self._id}",
),