Skip to content

Commit 688e646

Browse files
committed
スポット詳細・絞り込み・モーダル表示まわりのUI改善
- シリーズ絞り込みの「すべて」を先頭(左端)に移し、「シリーズから探す」の 既定をすべて(空配列)に戻す - 訪問予定のトグルをブックマーク風の★に変え、スポット詳細ヘッダー右上 (旧×ボタンの位置。閉じるは外側タップで足りる)へ移動 - スポット詳細に「訪問予定」セクションを追加。「リストに追加」ボタンと、 このスポットを含む訪問予定リストの一覧(タイトルのリンクからリスト詳細を 開ける。経由スポットのタップは新設のonOpenSpot propで表示対象を差し替え) - 「+ 未訪問記録」ボタンを廃止(フォーム内のチェックボックスに一本化) - 訪問日時の入力欄右に「削除」(空欄に戻す)ボタンを追加 - 全モーダルをスマホでも中央表示に統一(角丸画面で下端が見切れるため。 上下に余白を残してモーダル内スクロール) - PWA(iOSスタンドアロン)ではWikipediaリンクをx-safari-スキームで 本物のSafariで開く Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 0a6c5ef commit 688e646

14 files changed

Lines changed: 235 additions & 112 deletions

CLAUDE.md

Lines changed: 3 additions & 3 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ docker compose pull && docker compose up -d
162162

163163
- **訪問予定(非公開)**: 「行きたい場所」のブックマーク。訪問を記録すると自動的に外れる
164164
- **未訪問記録(非公開)**: 訪問記録と同じフォーム・同じ訪問履歴に「訪問済みに数えない
165-
記録」として残すメモ(フォームのチェックボックスまたは「+ 未訪問記録」ボタンから)。
165+
記録」として残すメモ(訪問記録フォームのチェックボックスから)。
166166
訪問日を入れると「訪れたが改めて来たい」記録としてその日の訪問順の経路に含まれ、
167167
訪問予定からも外れる。訪問日なしは下調べのメモになり、訪問予定は残る。
168168
どちらもピンは緑にならず、一覧では「未訪問」バッジ付きで表示される

components/AddSpotModal.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -222,13 +222,13 @@ export default function AddSpotModal({
222222

223223
return (
224224
<div
225-
className="fixed inset-0 z-50 flex items-end justify-center bg-black/40 sm:items-center"
225+
className="fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4"
226226
onClick={onClose}
227227
>
228228
<form
229229
onSubmit={handleSubmit}
230230
onClick={(e) => e.stopPropagation()}
231-
className="max-h-[90dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-t-2xl bg-white p-4 sm:rounded-2xl"
231+
className="max-h-[85dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-2xl bg-white p-4"
232232
>
233233
<h2 className="font-bold">
234234
{isEdit

components/AddToPlanListModal.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,11 @@ export default function AddToPlanListModal({
7272

7373
return (
7474
<div
75-
className="fixed inset-0 z-50 flex items-end justify-center bg-black/40 sm:items-center"
75+
className="fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4"
7676
onClick={onClose}
7777
>
7878
<div
79-
className="max-h-[90dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-t-2xl bg-white p-4 sm:rounded-2xl"
79+
className="max-h-[85dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-2xl bg-white p-4"
8080
onClick={(e) => e.stopPropagation()}
8181
>
8282
<div>

components/MapView.tsx

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2606,12 +2606,12 @@ export default function MapView({
26062606
{/* 絞り込みモーダル */}
26072607
{showFilterModal && (
26082608
<div
2609-
className="fixed inset-0 z-50 flex items-end justify-center bg-black/40 sm:items-center"
2609+
className="fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4"
26102610
onClick={() => setShowFilterModal(false)}
26112611
>
26122612
<div
26132613
onClick={(e) => e.stopPropagation()}
2614-
className="max-h-[90dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-t-2xl bg-white p-4 sm:rounded-2xl"
2614+
className="max-h-[85dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-2xl bg-white p-4"
26152615
>
26162616
<div className="flex items-center justify-between gap-2">
26172617
<h2 className="font-bold">絞り込み</h2>
@@ -2882,12 +2882,12 @@ export default function MapView({
28822882
const overlayType = spotTypes.find((t) => t.key === overlayTypeKey);
28832883
return (
28842884
<div
2885-
className="fixed inset-0 z-[60] flex items-end justify-center bg-black/40 sm:items-center"
2885+
className="fixed inset-0 z-[60] flex items-center justify-center bg-black/40 p-4"
28862886
onClick={() => setShowOverlayFilterModal(false)}
28872887
>
28882888
<div
28892889
onClick={(e) => e.stopPropagation()}
2890-
className="max-h-[90dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-t-2xl bg-white p-4 sm:rounded-2xl"
2890+
className="max-h-[85dvh] w-full max-w-md space-y-3 overflow-y-auto rounded-2xl bg-white p-4"
28912891
>
28922892
<div className="flex items-center justify-between gap-2">
28932893
<h2 className="font-bold">
@@ -3113,9 +3113,7 @@ export default function MapView({
31133113
)}
31143114

31153115
{/* ルート・経路の詳細モーダル(ルート/訪問順の経路/訪問予定リストの経路の線・矢印の
3116-
タップで開く。重ね表示のルートも共用)。他のモーダルと違い常に中央表示にする
3117-
(角丸画面のスマホで下端に寄せると端が見切れるため。中身が地点一覧だけの小さな
3118-
モーダルなので中央でも邪魔にならない) */}
3116+
タップで開く。重ね表示のルートも共用) */}
31193117
{routeDetailView && (
31203118
<div
31213119
className="fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4"
@@ -3255,6 +3253,7 @@ export default function MapView({
32553253
spotCache.applySpotDelete(id);
32563254
loadPrivateSpots();
32573255
}}
3256+
onOpenSpot={setDetailSpotId}
32583257
/>
32593258
)}
32603259

components/SeriesFilter.tsx

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,17 @@ export default function SeriesFilter({
6767

6868
return (
6969
<div className="flex overflow-hidden rounded-lg border border-gray-300 bg-white text-sm">
70+
<button
71+
type="button"
72+
onClick={() => onChange([])}
73+
className={`flex-1 px-2 py-1.5 font-medium ${
74+
selected.length === 0
75+
? "bg-blue-600 text-white"
76+
: "text-gray-500 hover:bg-gray-50"
77+
}`}
78+
>
79+
すべて
80+
</button>
7081
{series.map((r) => {
7182
const style = findSeriesStyle(r, seriesStyles);
7283
const active = selected.includes(r);
@@ -101,17 +112,6 @@ export default function SeriesFilter({
101112
</button>
102113
);
103114
})}
104-
<button
105-
type="button"
106-
onClick={() => onChange([])}
107-
className={`flex-1 px-2 py-1.5 font-medium ${
108-
selected.length === 0
109-
? "bg-blue-600 text-white"
110-
: "text-gray-500 hover:bg-gray-50"
111-
}`}
112-
>
113-
すべて
114-
</button>
115115
</div>
116116
);
117117
}

0 commit comments

Comments
 (0)