-
-
- setQuery(e.target.value)}
- onKeyDown={(e) => {
- if (e.key === 'Enter' && filtered[0]) {
- e.preventDefault()
- goTo(filtered[0].to)
- }
- }}
- />
-
-
- {filtered.length === 0 ? (
-
- Ничего не найдено
-
- ) : (
- filtered.map((item) => (
- - setOpen(false)} />}
+ const agents = (agentsQ.data?.items ?? []).slice(0, 50)
+ const lists = (listsQ.data?.items ?? []).slice(0, 50)
+ const sets = (setsQ.data?.items ?? []).slice(0, 50)
+
+ return (
+
+
+
+ Ничего не найдено.
+
+
+ {can('fw:agents:write') ? (
+
+ go(() =>
+ void navigate({
+ to: '/agents',
+ search: { view: 'cards', add: true },
+ }),
+ )
+ }
+ >
+
+ Добавить агента
+
+ ) : null}
+ {can('fw:lists:write') ? (
+
+ go(() =>
+ void navigate({ to: '/lists', search: { create: true } }),
+ )
+ }
+ >
+
+ Создать список
+
+ ) : null}
+ {can('fw:policies:write') ? (
+
+ go(() =>
+ void navigate({ to: '/rules', search: { create: true } }),
+ )
+ }
+ >
+
+ Создать набор правил
+
+ ) : null}
+
+
+
+
+
+ {navItems.map((item) => (
+ go(() => void navigate({ to: item.to }))}
+ >
+
+ {item.label}
+
+ ))}
+
+
+ {agents.length > 0 ? (
+ <>
+
+
+ {agents.map((a) => (
+
+ go(() =>
+ void navigate({
+ to: '/agents',
+ search: { view: 'cards', agent: a.id },
+ }),
+ )
+ }
>
-
-
-
-
- {item.label}
-
-
- ))
- )}
-
-
-