perf: lookup

Co-Authored-By: alifurkanstahl <180474740+alifurkanstahl@users.noreply.github.com>
This commit is contained in:
Timothy Jaeryang Baek
2026-03-24 16:24:46 -05:00
co-authored by alifurkanstahl
parent 2376258f02
commit 7eae377c01
2 changed files with 9 additions and 9 deletions
+3 -3
View File
@@ -34,17 +34,17 @@ def get_sorted_filter_ids(request, model: dict, enabled_filter_ids: list = None)
if 'info' in model and 'meta' in model['info']:
filter_ids.extend(model['info']['meta'].get('filterIds', []))
filter_ids = list(set(filter_ids))
active_filter_ids = [function.id for function in Functions.get_functions_by_type('filter', active_only=True)]
active_filter_ids = {function.id for function in Functions.get_functions_by_type('filter', active_only=True)}
def get_active_status(filter_id):
function_module = get_function_module(request, filter_id)
if getattr(function_module, 'toggle', None):
return filter_id in (enabled_filter_ids or [])
return filter_id in (enabled_filter_ids or set())
return True
active_filter_ids = [filter_id for filter_id in active_filter_ids if get_active_status(filter_id)]
active_filter_ids = {filter_id for filter_id in active_filter_ids if get_active_status(filter_id)}
filter_ids = [fid for fid in filter_ids if fid in active_filter_ids]
filter_ids.sort(key=lambda fid: (get_priority(fid), fid))
+6 -6
View File
@@ -130,11 +130,11 @@ async def get_all_models(request, refresh: bool = False, user: UserModel = None)
]
models = models + arena_models
global_action_ids = [function.id for function in Functions.get_global_action_functions()]
enabled_action_ids = [function.id for function in Functions.get_functions_by_type('action', active_only=True)]
global_action_ids = {function.id for function in Functions.get_global_action_functions()}
enabled_action_ids = {function.id for function in Functions.get_functions_by_type('action', active_only=True)}
global_filter_ids = [function.id for function in Functions.get_global_filter_functions()]
enabled_filter_ids = [function.id for function in Functions.get_functions_by_type('filter', active_only=True)]
global_filter_ids = {function.id for function in Functions.get_global_filter_functions()}
enabled_filter_ids = {function.id for function in Functions.get_functions_by_type('filter', active_only=True)}
custom_models = Models.get_all_models()
@@ -328,14 +328,14 @@ async def get_all_models(request, refresh: bool = False, user: UserModel = None)
for model in models:
action_ids = [
action_id
for action_id in list(set(model.pop('action_ids', []) + global_action_ids))
for action_id in set(model.pop('action_ids', [])) | global_action_ids
if action_id in enabled_action_ids
]
action_ids.sort(key=lambda aid: (get_action_priority(aid), aid))
filter_ids = [
filter_id
for filter_id in list(set(model.pop('filter_ids', []) + global_filter_ids))
for filter_id in set(model.pop('filter_ids', [])) | global_filter_ids
if filter_id in enabled_filter_ids
]