// src/routes/(protected)/(admin)/+layout.server.ts
import { error } from '@sveltejs/kit';
import type { LayoutServerLoad } from './$types';

export const load: LayoutServerLoad = async ({ parent }) => {
	// 부모 레이아웃(protected)에서 'user' 데이터를 가져옵니다.
	// 이 시점에 'user'는 로그인 상태이며 'role'도 포함되어 있습니다.
	const { user } = await parent();

	// (admin) 그룹에 속한 모든 페이지(video-crop 등)에 대해 이 검사를 실행합니다.
	// 만약 사용자의 role이 'admin'이 아니라면,
	if (user.role !== 'admin') {
		// 403 Forbidden (금지됨) 에러를 발생시켜 페이지 접근을 막습니다.
		throw error(403, 'Forbidden: 이 페이지에 접근할 권한이 없습니다.');
	}

	// 어드민이 맞다면, 페이지 로드를 허용합니다.
	return { user };
};