diff --git a/pyobas/contracts/contract_config.py b/pyobas/contracts/contract_config.py index 8262829..62a842f 100644 --- a/pyobas/contracts/contract_config.py +++ b/pyobas/contracts/contract_config.py @@ -2,7 +2,7 @@ from abc import ABC, abstractmethod from dataclasses import dataclass, field from enum import Enum -from typing import List +from typing import Dict, List from pyobas import utils from pyobas.contracts.contract_utils import ContractCardinality, ContractVariable @@ -73,11 +73,12 @@ class ContractElement(ABC): key: str label: str type: str = field(default="", init=False) - mandatoryGroups: List[str] = None - mandatoryConditionField: str = None - mandatoryConditionValue: str = None - linkedFields: List["ContractElement"] = field(default_factory=list) - linkedValues: List[str] = field(default_factory=list) + mandatoryGroups: List[str] = field(default_factory=list) + mandatoryConditionFields: List[str] = field(default_factory=list) + mandatoryConditionValues: Dict[str, any] = field(default_factory=list) + visibleConditionFields: List[str] = field(default_factory=list) + visibleConditionValues: Dict[str, any] = field(default_factory=list) + linkedFields: List[str] = field(default_factory=list) mandatory: bool = False readOnly: bool = False