'Returns the metadata fields to be edited in Studio. These are fields with scope `Scope.settings`.
Can be limited by extending `non_editable_metadata_fields`.'

@property
def editable_metadata_fields(self):

    metadata_fields = {}
    fields = getattr(self, 'unmixed_class', self.__class__).fields
    for field in fields.values():
        if (field in self.non_editable_metadata_fields):
            continue
        if (field.scope not in (Scope.settings, Scope.content)):
            continue
        metadata_fields[field.name] = self._create_metadata_editor_info(field)
    return metadata_fields
