in atr/util.py [0:0]
def _get_dict_to_list_inner_type_adapter(source_type: Any, key: str) -> pydantic.TypeAdapter[dict[Any, Any]]:
root_adapter = pydantic.TypeAdapter(source_type)
schema = root_adapter.core_schema
# support further nesting of model classes
if schema["type"] == "definitions":
schema = schema["schema"]
assert schema["type"] == "list"
assert (item_schema := schema["items_schema"])
assert item_schema["type"] == "model"
assert (cls := item_schema["cls"]) # noqa: RUF018
fields = cls.model_fields
assert (key_field := fields.get(key)) # noqa: RUF018
assert (other_fields := {k: v for k, v in fields.items() if k != key}) # noqa: RUF018
model_name = f"{cls.__name__}Inner"
# Create proper field definitions for create_model
inner_model = pydantic.create_model(model_name, **{k: (v.annotation, v) for k, v in other_fields.items()}) # type: ignore
return pydantic.TypeAdapter(dict[Annotated[str, key_field], inner_model]) # type: ignore