code: def component_by_tags(self, tags):
          
          tags_keys = [t['key'] for t in tags]
          filtered = [
              c for c in self.components
              if set(tags_keys).issubset([ct['key'] for ct in c.tags])]
          return filtered
docs: Retrieve components by tags.
  
          :param tags: List of tags
          :type tags: list
  
          :return: List of ReportComponentsMetadata
          :rtype: list[ReportComponentsMetadata]
  
          .. versionadded:: 4.0