from typing import Self from .metadata import BrickMetadata # Lego set status metadata class BrickSetStatus(BrickMetadata): kind: str = 'status' # Set state endpoint set_state_endpoint: str = 'set.update_status' # Queries delete_query: str = 'set/metadata/status/delete' insert_query: str = 'set/metadata/status/insert' select_query: str = 'set/metadata/status/select' update_field_query: str = 'set/metadata/status/update/field' update_set_state_query: str = 'set/metadata/status/update/state' # Grab data from a form def from_form(self, form: dict[str, str], /) -> Self: super().from_form(form) grid = form.get('grid', None) self.fields.displayed_on_grid = grid == 'on' return self # Insert into database def insert(self, /, **_) -> None: super().insert( displayed_on_grid=self.fields.displayed_on_grid )