Closed kei615ykhm closed 1 month ago
現在のコードにzodライブラリによる堅牢なバリデーションチェックを実装し、型安全なコードにリファクタリングを行う。
zod
src/schemas ディレクトリの作成
src/schemas/memoSchema.ts
src/types ディレクトリの更新
src/types/index.ts
src/utils ディレクトリの作成
src/utils/zodParser.ts
src/hooks/useManager.ts の更新
src/components/memos/MemoForm.tsx の更新
src/app/page.tsx の更新
src/ ├── app/ │ ├── page.tsx │ └── layout.tsx ├── components/ │ └── memos/ │ ├── MemoList.tsx │ └── MemoForm.tsx ├── hooks/ │ └── useMemoManager.ts ├── schemas/ // 新しく追加 │ └── memoSchema.ts // 新しく追加 ├── types/ │ └── index.ts └── utils/ // 新しく追加 └── zodParser.ts // 新しく追加
[x] src/schemas/ ディレクトリを作成し、メモのスキーマを定義
src/schemas/
memoSchema.ts
[x] src/types/ ディレクトリを更新し、zodスキーマから型を生成
src/types/
index.ts
[x] src/utils/ ディレクトリを作成し、汎用的なzodパース関数を実装
src/utils/
zodParser.ts
[x] src/hooks/useMemoManager.ts を更新し、zodスキーマを使用してバリデーションを実装
src/hooks/useMemoManager.ts
[ ] src/components/memos/MemoForm.tsx を更新し、フォームの送信時にバリデーションを実装
src/components/memos/MemoForm.tsx
[ ] src/app/page.tsx を更新し、新しいバリデーション機能に対応
src/app/page.tsx
src/hooks/useManager.ts
現在のコードに
zod
ライブラリによる堅牢なバリデーションチェックを実装し、型安全なコードにリファクタリングを行う。現状
今後の予定
src/schemas ディレクトリの作成
src/schemas/memoSchema.ts
: メモのスキーマを定義src/types ディレクトリの更新
src/types/index.ts
: zodスキーマから型を生成src/utils ディレクトリの作成
src/utils/zodParser.ts
: 汎用的なzodパース関数を実装src/hooks/useManager.ts の更新
src/components/memos/MemoForm.tsx の更新
src/app/page.tsx の更新
ディレクトリ構成
TODOリスト
[x]
src/schemas/
ディレクトリを作成し、メモのスキーマを定義memoSchema.ts
ファイルを作成[x]
src/types/
ディレクトリを更新し、zodスキーマから型を生成index.ts
ファイルを更新[x]
src/utils/
ディレクトリを作成し、汎用的なzodパース関数を実装zodParser.ts
ファイルを作成[x]
src/hooks/useMemoManager.ts
を更新し、zodスキーマを使用してバリデーションを実装[ ]
src/components/memos/MemoForm.tsx
を更新し、フォームの送信時にバリデーションを実装[ ]
src/app/page.tsx
を更新し、新しいバリデーション機能に対応