import { Song } from '@/types';
import { createServerComponentClient } from '@supabase/auth-helpers-nextjs';
import { cookies } from 'next/headers';
import getSongs from './getSongs';

const getSongsByTitle = async (title: string): Promise<Song[]> => {
  const supabase = createServerComponentClient({
    cookies: cookies,
  });
	
	// 타이틀이 따로 없다면 걍 전체 노래 가져온다
  if (!title) {
    const allSongs = await getSongs();
    return allSongs;
  }

  const { data, error } = await supabase
    .from('songs')
    .select('*')
    .ilike('title', `%${title}%`)
    .order('created_at', { ascending: false });

  if (error) {
    console.log(error);
  }

  return (data as any) || [];
};

export default getSongsByTitle;

검색 페이지

Songs는 어디서 console이 찍힐까

<aside> 💡 서버 컴포넌트와 클라이언트 컴포넌트 어디서 어떤걸 찍을지 확인을 해본다!

</aside>