MCPcopy Index your code
hub / github.com/simstudioai/sim / LogsFilterPanel

Function LogsFilterPanel

apps/sim/app/workspace/[workspaceId]/logs/logs.tsx:1179–1469  ·  view source on GitHub ↗
({ searchQuery, onSearchQueryChange }: LogsFilterPanelProps)

Source from the content-addressed store, hash-verified

1177}
1178
1179function LogsFilterPanel({ searchQuery, onSearchQueryChange }: LogsFilterPanelProps) {
1180 const params = useParams()
1181 const workspaceId = params.workspaceId as string
1182
1183 const {
1184 level,
1185 setLevel,
1186 workflowIds,
1187 setWorkflowIds,
1188 folderIds,
1189 setFolderIds,
1190 triggers,
1191 setTriggers,
1192 timeRange,
1193 setTimeRange,
1194 startDate,
1195 endDate,
1196 setDateRange,
1197 clearDateRange,
1198 resetFilters,
1199 } = useLogFilters()
1200
1201 const [datePickerOpen, setDatePickerOpen] = useState(false)
1202 const previousTimeRangeRef = useRef(timeRange)
1203 const dateRangeAppliedRef = useRef(false)
1204 const { data: folders = {} } = useFolderMap(workspaceId)
1205 const { data: allWorkflowList = [] } = useWorkflows(workspaceId)
1206
1207 const workflows = allWorkflowList.map((w) => ({ id: w.id, name: w.name }))
1208 const folderList = Object.values(folders).filter((f) => f.workspaceId === workspaceId)
1209
1210 const selectedStatuses = level === 'all' || !level ? [] : level.split(',').filter(Boolean)
1211
1212 const statusOptions: ComboboxOption[] = useMemo(
1213 () =>
1214 (Object.keys(STATUS_CONFIG) as LogStatus[])
1215 .filter((status) => STATUS_CONFIG[status].filterable)
1216 .map((status) => ({
1217 value: status,
1218 label: STATUS_CONFIG[status].label,
1219 icon: getColorIcon(STATUS_CONFIG[status].color),
1220 })),
1221 []
1222 )
1223
1224 const handleStatusChange = (values: string[]) => {
1225 setLevel(values.length === 0 ? 'all' : values.join(','))
1226 }
1227
1228 const statusDisplayLabel =
1229 selectedStatuses.length === 0
1230 ? 'Status'
1231 : selectedStatuses.length === 1
1232 ? statusOptions.find((s) => s.value === selectedStatuses[0])?.label || '1 selected'
1233 : `${selectedStatuses.length} selected`
1234
1235 const selectedStatusColor =
1236 selectedStatuses.length === 1

Callers

nothing calls this directly

Calls 9

useLogFiltersFunction · 0.90
useFolderMapFunction · 0.90
useWorkflowsFunction · 0.90
getTriggerOptionsFunction · 0.90
formatDateShortFunction · 0.90
hasActiveFiltersFunction · 0.90
getColorIconFunction · 0.85
getTriggerIconFunction · 0.85
handleDatePickerCancelFunction · 0.70

Tested by

no test coverage detected