Jewelry AI・ライブラリ

タブを押してもカテゴリー・ツール・期間のフィルターは残ります

クイックタブと詳細フィルターは、同じリストの別々の部分を受け持ちます。タブを押すとステータス、お気に入り、削除済みがクリアされ、カテゴリー、ツール、期間、並び順は設定したまま残ります。フィルターボタンに出る数字が数えているのは、この後半のグループだけです。

2つの操作系、2つの軸、1つのリスト

ライブラリには、上部に並ぶクイックタブと、フィルターボタンの奥にある詳細フィルター画面があります。この2つは同じものの近道版と正式版ではありません。同じリストの別々の軸を受け持っています。

タブ列が受け持つのは3つの項目です。生成の処理状況、お気に入りに入れてあるかどうか、そして削除済みかどうか。詳細フィルターはそれ以外の4つ、カテゴリー、ツール、期間、そしてリストの並び順を受け持ちます。

どちらの操作系から返ってくるのもリストであって、ファイルではありません。操作して変わるのは、生成した画像のうちどれがどの順で並ぶかだけで、画像そのものに関わることはこの画面には含まれません。

タブを押すと何が変わり、何が変わらないのか

「フィルターは残ります」では大ざっぱすぎて行動に移せないので、ここは正確に答える価値があります。

押すとクリアされるもの。ステータス、お気に入り、削除済み。
操作は「const base: FeedFilters = { ...f, status: undefined, favorite: undefined, deleted: false };」を起点とし、その上に押したタブの条件を重ねます。
押しても残るもの。カテゴリー、ツール、期間。
3つのどれもその行に名前が出てきません。だからどれも触れられません。1つのカテゴリーと1か月に絞り込んだ表示は、完了とお気に入りを行き来しても絞り込まれたままです。
押しても残るもの。並び順。
新しい順か古い順かは、ほかの3つと同じようにタブの操作を越えて残ります。タブ側ではなく詳細フィルター側に属しているからです。
いま選択中のタブは、別に選ぶものではなく導き出されるものです。
詳細フィルターの中で「完了」などのステータスを選ぶと、画面上部のタブも動きます。フィルターの状態は1つで、タブ列はその一部を映したものです。

どの操作系がどの項目を受け持つか

7つの項目、2つの操作系、1つの数字。画面がはっきり示さないのは最後の列です。

項目設定する場所タブを押したあとフィルターボタンの数字に入るか
ステータス(処理中、完了、失敗)タブ列または詳細フィルタークリアされ、押したタブの内容が入る入らない
お気に入りタブ列クリアされ、押したタブの内容が入る入らない
削除済みタブ列クリアされ、押したタブの内容が入る入らない
カテゴリー詳細フィルター残る入る
ツール詳細フィルター残る入る
期間詳細フィルター残る入る
並び順(新しい順か古い順)詳細フィルター残る新しい順でないときは入る

数字が「古い順」を数える理由

フィルターボタンの数字は、詳細フィルターのうち既定値から外れているものを数えています。並び順もその1つです。既定は新しい順なので、古い順を選ぶと数字が1増えます。自分では何も絞り込んでいないつもりなのに数字が1と出る理由は、これがすべてです。

同じ規則は逆向きにも働きます。ステータス、お気に入り、削除済みが数えられることはありません。タブ列がすでにそれを表示しているからです。タブで絞り込んで失敗した生成だけを表示しているリストでも、フィルターボタンには数字が出ないままということがあります。

つまりこの数字は、見た目より狭い問いに答えています。「このリストをどれだけ絞り込んでいるか」ではなく、「詳細フィルターのうちいくつが既定値から外れているか」です。

本当に欲しい表示を組み立てる

履歴が大きくなると出てくる場面と、それぞれに答える操作系です。

状況選択理由
ある期間に1つのツールが作ったものを、状態を問わずすべて見たい。詳細フィルターでツールと期間を設定し、タブは「すべて」のままにします。ツールと期間はタブを押しても残り、「すべて」は押したときにクリアされた3つの項目を何も足し戻さないからです。
1つのカテゴリーの中のお気に入りを見たい。先に詳細フィルターでカテゴリーを設定し、そのあと「お気に入り」を押します。この1回の操作でカテゴリーは保たれ、同時にお気に入りの項目が設定されるからです。
古いものから先に見たい。そして数字の意味も説明できるようにしたい。詳細フィルターで並び順を変え、数字が1多く出ることを見込んでおきます。新しい順以外の並び順は、詳細フィルターとして数えられるからです。
特定のステータスが必要で、すでに詳細フィルターを開いている。そこで設定して終わりにします。あとから同じ内容のタブを押さないでください。選択中のタブはフィルターの状態から導かれるため、選んだ内容に合わせてすでに動いているからです。
同じ日のうちに、この表示にまた戻ってくる。画像は自由に開いてかまいませんが、アプリを再起動したあとはフィルターを設定し直す前提で進めます。選択内容は画面の状態として保たれるだけで、保存領域には書き込まれないからです。

画面を離れても残るもの

生成した画像を開いてライブラリに戻っても、フィルターの選択内容は残ります。以前は逆でした。結果画面や処理中の画面から戻るとフィルターがリセットされ、選択内容は手作業で組み直す必要がありました。このリセットは取り除かれたので、組み直す習慣はいま不要になっています。

境界は正確に述べておく価値があります。必要以上に広く読み取られやすいからです。選択内容はライブラリ画面が生きているあいだ保たれ、アプリを再起動すると空から始まります。保存領域に書き込まれることはないため、セッションをまたいで覚えられてはいません。

実際には、1つの画面で長く作業を続けるあいだはその表示が保たれ、再起動したあとの作業はフィルターのない状態から始まります。

手順として固める前に知っておきたい制約

繰り返し使える表示が何になれて何になれないかを決める、4つの境界です。

  • 並べ替えの選択肢はちょうど2つ、新しい順と古い順だけです。名前順、カテゴリー順、費用順の並べ替えはありません。
  • フィルターボタンの数字が数えるのは詳細フィルターだけです。ステータス、お気に入り、削除済みは加算されないため、リストを絞り込んでいるものすべての数ではありません。
  • タブ列と詳細フィルターは独立していません。選択中のタブはフィルターの状態から導かれるため、詳細フィルターでステータスを設定するとタブも動きます。
  • フィルターはライブラリ画面の状態として保たれます。その画面が生きているあいだは残り、アプリを再起動すると空から始まります。

絞り込んだ表示に頼る前に

実際に進めていく順に並べた5つの確認です。

  • 欲しい状態は1か所で決める。タブ列か詳細フィルターのどちらかで、両方では決めない。
  • カテゴリー、ツール、期間は詳細フィルターで設定する。あとからタブを押しても3つとも残る。
  • リストを読む前に並び順を確認する。既定は新しい順で、代わりになるのは古い順だけ。
  • タブと数字はセットで読む。数字はタブが表示している内容を数えていない。
  • アプリを再起動した直後なら、フィルターは空だとみなして設定し直す。

これらの記述の出どころ

このページの記述はすべて、2026年8月18日(原文表記: 18 August 2026.)にアプリ自身のソースコードと突き合わせて確認しました。背後に外部の文書はありません。

タブの挙動。apps/jewelry-mobile/src/features/generation/feed-filters.ts。タブを押したときの起点が「const base: FeedFilters = { ...f, status: undefined, favorite: undefined, deleted: false };」として組み立てられている箇所です。カテゴリー、ツール、期間、並び順はこの行にないため残ります。

数字の集計。同じファイルの「if (f.sort !== 'newest') n++;」。既定以外の並び順を詳細フィルターとして数えている行です。

保たれ方。apps/jewelry-mobile/src/app/(tabs)/library.tsx:850, useState<FeedFilters>(emptyFilters)の行です。フィルターの組はここで作られます。ライブラリに戻るたびに走っていたリセットが取り除かれたことは、同じファイルのコメントに記録されています。

よくある質問

タブを押すと、設定したフィルターは失われますか?

いいえ。タブを押すとステータス、お気に入り、削除済みがクリアされ、そのあと押したタブの条件が適用されます。カテゴリー、ツール、期間、並び順はそのままです。

「古い順」に変えただけなのに、フィルターボタンに1と出るのはなぜですか?

並び順が詳細フィルターとして数えられているからです。既定は新しい順なので、それ以外の並び順はフィルターボタンの数字を1増やします。

名前順、カテゴリー順、費用順に並べ替えられますか?

いいえ。並び順はちょうど2つ、新しい順と古い順だけです。1つのカテゴリーや1つのツールを順に見ていきたい場合は、対応するフィルターで絞り込んでください。

画像を開いたときや、アプリを閉じたとき、フィルターは残りますか?

画像を開いてライブラリに戻った場合は残ります。フィルターはライブラリ画面の状態としてだけ保たれるため、その画面が生きているあいだは残り、アプリを再起動すると再び空になります。