wip: clerk auth

This commit is contained in:
Carl-Gerhard Lindesvärd
2024-02-07 11:59:40 +01:00
parent bd62127451
commit a9cbff2306
46 changed files with 611 additions and 816 deletions

View File

@@ -1,20 +1,18 @@
'use client';
import { Combobox } from '@/components/ui/combobox';
import type { getProjectsByOrganizationId } from '@/server/services/project.service';
import { useParams, usePathname, useRouter } from 'next/navigation';
import { useAppParams } from '@/hooks/useAppParams';
import type { getCurrentProjects } from '@/server/services/project.service';
import { usePathname, useRouter } from 'next/navigation';
interface LayoutProjectSelectorProps {
projects: Awaited<ReturnType<typeof getProjectsByOrganizationId>>;
organizationId: string | null;
projects: Awaited<ReturnType<typeof getCurrentProjects>>;
}
export default function LayoutProjectSelector({
projects,
organizationId,
}: LayoutProjectSelectorProps) {
const router = useRouter();
const params = useParams<{ projectId: string }>();
const projectId = params?.projectId ? params.projectId : null;
const { organizationId, projectId } = useAppParams();
const pathname = usePathname() || '';
return (
@@ -27,7 +25,7 @@ export default function LayoutProjectSelector({
// we know its safe to just replace the current projectId
// since the rest of the url is to a static page
// e.g. /[organizationId]/[projectId]/events
if (params && projectId && Object.keys(params).length === 2) {
if (organizationId && projectId) {
router.push(pathname.replace(projectId, value));
} else {
router.push(`/${organizationId}/${value}`);