# %% import dataclasses as dc import enum import re from PySide6.QtCore import QDate, Qt class FormFieldType(enum.StrEnum): TEXT = enum.auto() LONGTEXT = enum.auto() DATE = enum.auto() DATETIME = enum.auto() @dc.dataclass(slots=True) class FormField: key: str label: str type: FormFieldType required: bool def __post_init__(self) -> None: self.label = self.label.strip() if not self.label.endswith(":"): self.label += ":" if self.required: self.label += "*" # %% DYNAMIC_LIST_KEY_PATTERN = r"-\[(\d+)\]" key = "Schulbildung-[12].7b8da0f7-7a0e-4f71-878a-85616099e849" matches = re.search(DYNAMIC_LIST_KEY_PATTERN, key) # %% matches # %% matches.group(1) # %% t_str = "asd.yxcxc.dfgjj.aasdsdsdsd.sdsdsdsd" splitted = t_str.split(".") part, rest = splitted[0], splitted[1:] part # %% ".".join([part] + rest) # %% FormField("name", "Projektbeschreibung", FormFieldType.LONGTEXT, required=True) # %% FormField("name", "Projektbeschreibung:", FormFieldType.LONGTEXT, required=True) # %% FormField("name", "Projektbeschreibung", FormFieldType.LONGTEXT, required=False) # %% FormField("name", "Projektbeschreibung:", FormFieldType.LONGTEXT, required=False) # %% addr.export() # %% set_date = QDate.fromString("26.07.2026", "dd.MM.yyyy") # %% Qt.Tet