def create_default_config_from_type_config(type_config): """ Creƫert een dictionary met standaardwaarden gebaseerd op een typedefinitie configuratie. Args: type_config (dict): Het configuration-veld van een typedefinitie (bijv. uit processor_types). Returns: dict: Een dictionary met de naam van ieder veld als sleutel en de standaardwaarde als waarde. Alleen velden met een standaardwaarde of die verplicht zijn, worden opgenomen. Voorbeeld: >>> config = PROCESSOR_TYPES["HTML_PROCESSOR"]["configuration"] >>> create_default_config_from_type_def(config) {'html_tags': 'p, h1, h2, h3, h4, h5, h6, li, table, thead, tbody, tr, td', 'html_end_tags': 'p, li, table', 'html_excluded_classes': '', 'html_excluded_elements': 'header, footer, nav, script', 'html_included_elements': 'article, main', 'chunking_heading_level': 2} """ if not type_config: return {} default_config = {} for field_name, field_def in type_config.items(): # Als het veld een standaardwaarde heeft, voeg deze toe if "default" in field_def: default_config[field_name] = field_def["default"] # Als het veld verplicht is maar geen standaardwaarde heeft, voeg een lege string toe elif field_def.get("required", False): # Kies een geschikte "lege" waarde op basis van het type field_type = field_def.get("type", "string") if field_type == "string": default_config[field_name] = "" elif field_type == "integer": default_config[field_name] = 0 elif field_type == "boolean": default_config[field_name] = False elif field_type == "color": default_config[field_name] = "#000000" else: default_config[field_name] = "" return default_config