[Discover + Join/Leave] Bind join and host-manage UI states
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 35/100
調査の方向性
Start from the existing layout in lib/screens/home_screen.dart, then create the new lib/screens/sessions/session_detail_screen.dart and choose the Manage, Leave, or Join action from the isHost and isJoined values. Read the onJoin and joinErrorMessage/recoveryFor contracts in the blocking issues (#105, #107, #108) before wiring the pending state. Done when test/screens/sessions/session_detail_screen_dp_d07_test.dart covers the host, pending-tap, and session_full cases, and flutter analyze passes.
索引モデルが issue の本文から書いたものです。
説明
What to build
Show the right action on a study meeting: Manage for its host, Leave for a joined student, and Join otherwise. While joining, prevent repeated taps and show the server’s result before changing the visible membership state.
Files
lib/screens/sessions/session_detail_screen.dart(new file)- Starting example: lib/screens/home_screen.dart
Steps
- Use the supplied isHost/isJoined values to show Manage for the host, Leave for another joined student, and Join otherwise.
- When Join is tapped, disable repeated taps, wait for onJoin, then refresh the meeting and seat count after success.
- If joining fails, use joinErrorMessage and recoveryFor. A last-seat failure should show “This session is full.” and refresh the details; do not mark the student joined.
Example
Host never seesJoin; pending tap disabled; session_full leaves user unjoined and refreshes seats.
Check it works
In test/screens/sessions/session_detail_screen_dp_d07_test.dart, check the example above and the failure or limit described in the steps. Run flutter test test/screens/sessions/session_detail_screen_dp_d07_test.dart and flutter analyze.
Before starting
- #105 — Refresh Discover while keeping previous data
- #107 — Map enrollment/host/onboarding join errors
- #32 — Leave with an own-membership delete
- #108 — Read authorized session detail
- #70 — Bind submission completion to the auth gate
References
Assign yourself before starting, or comment to claim the issue. Project setup.
- 主要言語
- PLpgSQL
- スター
- 0
- フォーク
- 0
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
DevDogsUGA/DogPack のほかの issue
-
polish
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
DevDogsUGA/DogPack#131 ·
-
polish
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
DevDogsUGA/DogPack#130 ·
-
moderation
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
DevDogsUGA/DogPack#119 ·
-
moderation
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
DevDogsUGA/DogPack#113 ·
-
discover
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
DevDogsUGA/DogPack#106 ·
DevDogsUGA/DogPack の issue をすべて見る
似ている issue
-
area:banner
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
interledger/publisher-tools#930 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
apache/rocketmq-dashboard#6870 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
ARTPARK-SAHAI-ORG/calibrate-frontend#727 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
fab-geocommuns/RNB-site#539 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
fabriziosalmi/certmate#1247 ·
メンテナーはふだん 1 日以内に返信