updated version
This commit is contained in:
@@ -266,8 +266,9 @@ class CategoryCluster:
|
||||
PREFIX: str
|
||||
PAGEINFO: Optional[Dict["str", PageInfo]]
|
||||
DESCRIPTION: str
|
||||
ENDPOINTS: dict[str, MethodToEvent] # {"MethodToEvent": MethodToEvent, ...}
|
||||
ENDPOINTS: dict[str, MethodToEvent] # {"MethodToEvent": MethodToEvent, ...}
|
||||
SUBCATEGORY: Optional[List["CategoryCluster"]] # [CategoryCluster, ...]
|
||||
MAPPING: Optional[List[Dict[str, Any]]] # [{"key": "value"}, ...]
|
||||
INCLUDE_IN_SCHEMA: Optional[bool] = True
|
||||
IS_CLIENT: Optional[bool] = False
|
||||
|
||||
@@ -279,6 +280,7 @@ class CategoryCluster:
|
||||
description: str,
|
||||
endpoints: dict[str, MethodToEvent],
|
||||
sub_category: list,
|
||||
mapping: Optional[List[Dict[str, Any]]] = None,
|
||||
pageinfo: Optional[Dict["str", PageInfo]] = None,
|
||||
include_in_schema: Optional[bool] = True,
|
||||
is_client: Optional[bool] = False,
|
||||
@@ -291,6 +293,7 @@ class CategoryCluster:
|
||||
self.ENDPOINTS = endpoints or {}
|
||||
self.SUBCATEGORY = sub_category or []
|
||||
self.INCLUDE_IN_SCHEMA = include_in_schema
|
||||
self.MAPPING = mapping
|
||||
self.IS_CLIENT = is_client
|
||||
|
||||
@property
|
||||
@@ -341,16 +344,16 @@ class CategoryCluster:
|
||||
def retrieve_page_info(self):
|
||||
"""
|
||||
PAGE_INFO:ClusterToMethod = {"PageInfo": {...}, "subCategory": PAGE_INFO:ClusterToMethod}
|
||||
return {"prefix": self.PREFIX, **page_info}
|
||||
return {"prefix": self.PREFIX, "mapping": self.MAPPING, **page_infos}
|
||||
"""
|
||||
page_infos = {}
|
||||
if isinstance(self.PAGEINFO, dict):
|
||||
for page_key, page_info in dict(self.PAGEINFO).items():
|
||||
if page_info_dict := getattr(page_info, "as_dict", None):
|
||||
page_infos[page_key] = page_info_dict
|
||||
return {"prefix": self.PREFIX, **page_infos}
|
||||
return {"prefix": self.PREFIX, "mapping": self.MAPPING, **page_infos}
|
||||
if hasattr(self.PAGEINFO, "as_dict"):
|
||||
return {"prefix": self.PREFIX, **self.PAGEINFO.as_dict}
|
||||
return {"prefix": self.PREFIX, "mapping": self.MAPPING, **self.PAGEINFO.as_dict}
|
||||
return
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user