BigBrainParking/app/app.json
Erik 463facbe5a
All checks were successful
build-apk / build (push) Successful in 40m22s
v0.3.0: local free check-in with actionable countdown notification (Phase C)
For a zone labeled free_2h/3h/4h, "Check in (free · Xh)" starts a local, API-free
countdown to the free limit — no ParkSmarter call. The bbp-notify module gains a
showCheckin() that posts the ticking chronometer with "End" / "Pay" buttons, a
BbpActionReceiver (declared in the module's new AndroidManifest.xml) that records
the tap in SharedPreferences and, for Pay, relaunches the app; consumePendingAction()
is drained on foreground by useCheckinSync() — End clears the check-in, Pay hands
off to StartSession for the stored zone. A pre-expiry alert reuses the existing
reminder lead-minutes. Starting a paid session supersedes an active check-in.

Also: MeterDetail shows the free/pay-immediate label and (admins) labeling chips.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-24 18:23:58 +00:00

54 lines
1.5 KiB
JSON

{
"expo": {
"name": "BigBrainParking",
"slug": "bigbrainparking",
"scheme": "bigbrainparking",
"version": "0.3.0",
"orientation": "portrait",
"userInterfaceStyle": "automatic",
"newArchEnabled": true,
"icon": "./assets/icon.png",
"android": {
"package": "top.mowden.bigbrainparking",
"versionCode": 17,
"edgeToEdgeEnabled": true,
"adaptiveIcon": {
"foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#FFFFFF"
},
"permissions": [
"ACCESS_COARSE_LOCATION",
"ACCESS_FINE_LOCATION",
"CAMERA",
"POST_NOTIFICATIONS",
"INTERNET",
"ACCESS_NETWORK_STATE"
]
},
"plugins": [
"expo-secure-store",
[
"expo-location",
{
"locationWhenInUsePermission": "Show nearby parking meters on the map."
}
],
"expo-notifications",
[
"react-native-vision-camera",
{
"cameraPermissionText": "Scan the QR code on a parking kiosk."
}
],
"./plugins/withReleaseSigning"
],
"extra": {
"psEnvironment": "prodv2",
"zoneLabelsApiUrl": "https://bigbrainparking.mowden.top",
"mapStyleUrl": "https://tiles.openfreemap.org/styles/liberty",
"mapStyleUrlDark": "https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",
"unifiedPushDefaultDistributor": "io.heckel.ntfy",
"debugHttp": false
}
}
}