components_data_GetFiltersTask.bs
import "pkg:/source/api/ApiClient.bs"
import "pkg:/source/api/apiPool.bs"
import "pkg:/source/utils/misc.bs"
sub init()
m.top.functionName = "getFiltersTask"
end sub
' Orchestrator Task: submits to ApiTask pool via queue and waits off the render thread.
sub getFiltersTask()
' Debug error injection — compiled out in production (bs_const=debug=false)
#if debug
if isValid(m.global.debug) and m.global.debug.shouldForceFiltersFail
m.top.error = "[DEBUG] Forced filter failure"
m.top.filters = {}
return
end if
#end if
res = fetchRes(GetApi().BuildGetFiltersRequest(m.top.params), "filters")
if isValid(res) and res.ok
m.top.filters = res.json
else
m.top.error = "Unable to load filter options"
m.top.filters = {}
end if
end sub