Overview
@unitto/supabase パッケージのリファレンス
概要
@unitto/supabase は Supabase クライアントの初期化と、自動生成されたデータベース型定義を提供するパッケージ。
エクスポート
| エクスポート | 種類 | 説明 |
|---|---|---|
createClient | 関数 | Supabase クライアントを作成 |
Database | 型 | データベーススキーマの型定義 |
createClient
function createClient(cookieStore: CookieMethods): SupabaseClient<Database>Cookie ベースの認証を使用する Supabase サーバークライアントを作成する。
パラメータ
type CookieMethods = {
getAll: () => { name: string; value: string }[];
setAll: (cookies: { name: string; value: string; options?: object }[]) => void;
};環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
NEXT_PUBLIC_SUPABASE_URL | Yes | Supabase プロジェクト URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Yes | Supabase 匿名キー |
環境変数が未設定の場合はエラーをスローする。
Database 型
database.types.ts は supabase gen types typescript で自動生成されるファイル。手動で編集しないこと。
スキーマを変更した場合は以下の手順で型を再生成する:
- マイグレーションを作成・適用
supabase gen types typescriptを実行- 生成された
database.types.tsを配置
使用例
import { createClient } from "@unitto/supabase";
import { cookies } from "next/headers";
// Next.js Server Component / Server Action
const cookieStore = await cookies();
const client = createClient(cookieStore);
// データ取得
const { data, error } = await client.from("users").select("*");