feat: refactor ManagerSelect and ProjectSelector for improved positioning logic and integrate new utility function

This commit is contained in:
2025-06-27 17:59:06 +05:00
parent e8060c594d
commit fc1858a6ed
4 changed files with 58 additions and 35 deletions
+22 -12
View File
@@ -39,7 +39,7 @@ export default function CreateSessionModal({ targetServerId, client }: Props) {
const { data: managers } = useQuery({
queryKey: ["managers"],
queryFn: () => api.get("managers").json<Manager[]>(),
queryFn: () => api.get("users").json<Manager[]>(),
});
const targetServer = targetServerId
@@ -176,6 +176,10 @@ export default function CreateSessionModal({ targetServerId, client }: Props) {
selectedServer,
]);
useEffect(() => {
console.log(managers);
}, [managers]);
const ref = useRef<HTMLFormElement>(null);
return (
@@ -246,20 +250,26 @@ export default function CreateSessionModal({ targetServerId, client }: Props) {
</div>
<div className="flex flex-col gap-y-[0.833vw]">
<p className="title-s font-medium">Выберите параметры сеанса</p>
<ManagerSelect placeholder="Менеджер сеанса" data={managers || []} />
{selectedServer &&
selectedServer?.appsToServers &&
selectedServer.appsToServers?.length > 0 && (
<ProjectSelector
activeProject={
selectedServer?.sessions?.[0]?.status === "started"
? selectedApp
: null
}
projects={selectedServer?.appsToServers.map(({ app }) => app)}
selectedProject={selectedApp}
setSelectedProject={setSelectedApp}
/>
<>
<ManagerSelect
placeholder="Менеджер сеанса"
data={managers || []}
/>
<ProjectSelector
activeProject={
selectedServer?.sessions?.[0]?.status === "started"
? selectedApp
: null
}
projects={selectedServer?.appsToServers.map(({ app }) => app)}
selectedProject={selectedApp}
setSelectedProject={setSelectedApp}
/>
</>
)}
</div>