code: def get_input_feature_conds(model_type: str):
      """This function returns a list of if-then JSON clauses for each input feature type along with their properties
      and constraints.
  
      Returns: List of JSON clauses
      """
      input_feature_types = sorted(
          list(input_config_registry(model_type).keys())
      )
      conds = []
      for feature_type in input_feature_types:
          schema_cls = get_input_feature_cls(model_type, feature_type)
          feature_schema = (
              schema_utils.unload_jsonschema_from_marshmallow_class(
                  schema_cls
              )
          )
          feature_props = feature_schema["properties"]
          schema_utils.remove_duplicate_fields(feature_props)
  
          feature_cond = schema_utils.create_cond(
              {"type": feature_type}, feature_props
          )
          conds.append(feature_cond)
      return conds
  
file_path: ludwig/ludwig/schema/features/utils.py
imports: from collections import defaultdict
  from ludwig.api_annotations import DeveloperAPI
  from ludwig.constants import MODEL_ECD, MODEL_GBM, MODEL_LLM
  from ludwig.schema import utils
  from ludwig.utils.registry import Registry
label_desc: Use image node_id 6 for calling a global function with example usage: get_input_feature_conds(model_type) and returns: conds