From 3a21f6092a5bb99d6086ed823cc87058e167c712 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Wed, 25 Oct 2023 11:51:40 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20chore(service.py):=20add=20suppo?= =?UTF-8?q?rt=20for=20filtering=20components=20by=20user=5Fcreated=20field?= =?UTF-8?q?=20=F0=9F=94=A7=20chore(service.py):=20add=20support=20for=20fi?= =?UTF-8?q?ltering=20components=20by=20user=5Fcreated=20field=20when=20fil?= =?UTF-8?q?ter=5Fby=5Fuser=20flag=20is=20set=20to=20True,=20otherwise=20fi?= =?UTF-8?q?lter=20by=20status=20field?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/services/store/service.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/backend/langflow/services/store/service.py b/src/backend/langflow/services/store/service.py index 9d8da7e0a..438d9125d 100644 --- a/src/backend/langflow/services/store/service.py +++ b/src/backend/langflow/services/store/service.py @@ -72,6 +72,7 @@ class StoreService(Service): date_to: Optional[datetime] = None, sort: Optional[List[str]] = ["-likes"], fields: Optional[List[str]] = None, + filter_by_user: bool = False, ) -> List[ComponentResponse]: # ?sort=sort,-date_created,author.name @@ -104,6 +105,17 @@ class StoreService(Service): if fields: params["fields"] = ",".join(fields) + if filter_by_user: + params["deep"] = json.dumps( + { + "components": { + "_filter": {"user_created": {"token": {"_eq": api_key}}} + } + } + ) + else: + params["filter"] = json.dumps({"status": {"_eq": "public"}}) + results = self._get(self.components_url, api_key, params) return [ComponentResponse(**component) for component in results]