diff --git a/Makefile b/Makefile index 2df853fa..3619d1d8 100644 --- a/Makefile +++ b/Makefile @@ -35,12 +35,14 @@ help: @echo "" @echo " 📱 MOBILE APPS (apps/mobile)" @echo " ────────────────────────────────────────────────────────────────────" - @echo " make mobile-install Bootstrap mobile workspace + Dataconnect SDK" + @echo " make mobile-install Bootstrap mobile workspace + SDK" @echo " make mobile-info List mobile development commands" @echo " make mobile-client-dev-android [DEVICE=android] Run client app (Android)" @echo " make mobile-client-build PLATFORM=apk Build client app (apk/ipa/etc)" @echo " make mobile-staff-dev-android [DEVICE=android] Run staff app (Android)" @echo " make mobile-staff-build PLATFORM=apk Build staff app (apk/ipa/etc)" + @echo " make mobile-hot-reload Hot reload running Flutter app" + @echo " make mobile-hot-restart Hot restart running Flutter app" @echo "" @echo " 🗄️ DATA CONNECT & BACKEND (backend/dataconnect)" @echo " ────────────────────────────────────────────────────────────────────" diff --git a/apps/mobile/NEXT_SPRINT_TASKS.md b/apps/mobile/NEXT_SPRINT_TASKS.md index 2345c091..0b758f51 100644 --- a/apps/mobile/NEXT_SPRINT_TASKS.md +++ b/apps/mobile/NEXT_SPRINT_TASKS.md @@ -11,4 +11,5 @@ * Improvement points - apps/mobile/packages/features/client/client_coverage/lib/src/data/repositories_impl/coverage_repository_impl.dart - Fix the location field in CoverageShiftRole to use the correct fallback logic. - - line 125 remove redundant location values. \ No newline at end of file + - line 125 remove redundant location values. +- Need to clarify the difference b/w `case dc.ApplicationStatus.ACCEPTED` and `case dc.ApplicationStatus.CONFIRMED`. diff --git a/makefiles/mobile.mk b/makefiles/mobile.mk index a7ae005b..fce6c43c 100644 --- a/makefiles/mobile.mk +++ b/makefiles/mobile.mk @@ -1,6 +1,6 @@ # --- Mobile App Development --- -.PHONY: mobile-install mobile-info mobile-client-dev-android mobile-staff-dev-android mobile-client-build mobile-staff-build +.PHONY: mobile-install mobile-info mobile-client-dev-android mobile-staff-dev-android mobile-client-build mobile-staff-build mobile-hot-reload mobile-hot-restart MOBILE_DIR := apps/mobile @@ -19,6 +19,21 @@ mobile-info: @echo "--> Fetching mobile command info..." @cd $(MOBILE_DIR) && melos run info +# --- Hot Reload & Restart --- +mobile-hot-reload: + @echo "--> Triggering hot reload for running Flutter app..." + @cd $(MOBILE_DIR) && echo "r" | nc localhost 54321 2>/dev/null || \ + (cd apps/client && flutter attach --pid-file /tmp/flutter_client.pid && echo "r") || \ + (cd apps/staff && flutter attach --pid-file /tmp/flutter_staff.pid && echo "r") || \ + echo "❌ No running Flutter app found. Start an app first with mobile-client-dev-android or mobile-staff-dev-android" + +mobile-hot-restart: + @echo "--> Triggering hot restart for running Flutter app..." + @cd $(MOBILE_DIR) && echo "R" | nc localhost 54321 2>/dev/null || \ + (cd apps/client && flutter attach --pid-file /tmp/flutter_client.pid && echo "R") || \ + (cd apps/staff && flutter attach --pid-file /tmp/flutter_staff.pid && echo "R") || \ + echo "❌ No running Flutter app found. Start an app first with mobile-client-dev-android or mobile-staff-dev-android" + # --- Client App --- mobile-client-dev-android: dataconnect-generate-sdk @echo "--> Running client app on Android (device: $(DEVICE))..."