First version of DataGridQuery. Fixed scrollbar issue

This commit is contained in:
2026-01-23 21:26:19 +01:00
parent 872d110f07
commit 191ead1c89
6 changed files with 432 additions and 331 deletions

View File

@@ -14,6 +14,7 @@ logger = logging.getLogger("Commands")
AUTO_SWAP_OOB = "__auto_swap_oob__"
class Command:
"""
Represents the base command class for defining executable actions.
@@ -99,7 +100,7 @@ class Command:
def get_key(self):
return self._key
def get_htmx_params(self, escaped=False):
def get_htmx_params(self, escaped=False, values_encode=None):
res = {
"hx-post": f"{ROUTE_ROOT}{Routes.Commands}",
"hx-swap": "outerHTML",
@@ -120,6 +121,9 @@ class Command:
if escaped:
res["hx-vals"] = html.escape(json.dumps(res["hx-vals"]))
if values_encode is "json":
res["hx-vals"] = json.dumps(res["hx-vals"])
return res
def execute(self, client_response: dict = None):

View File

@@ -7,7 +7,9 @@ by generating HTML strings directly instead of creating full FastHTML objects.
from functools import lru_cache
from fastcore.xml import FT
from fasthtml.common import NotStr
from fasthtml.components import Span
from myfasthtml.core.constants import NO_DEFAULT_VALUE
@@ -46,6 +48,8 @@ class OptimizedFt:
return item.to_html()
elif isinstance(item, NotStr):
return str(item)
elif isinstance(item, FT):
return str(item)
else:
raise Exception(f"Unsupported type: {type(item)}, {item=}")