All checks were successful
build-apk / build (push) Successful in 49m41s
App: - When the single-estimate fallback sees MaxTime 0 (or an all-$0.00 ladder), show "Parking is currently free" instead of a bogus $0.00 purchase ladder. Free-detection extracted to tested client helpers (isFreeEstimate/ladderAllFree). Client + tests (node:test, zero deps): - src/estimates.ts: pure isFreeEstimate/ladderAllFree helpers (exported). - test/estimates + test/http (mocked fetch): headers, query serialization, error->ParkSmarterApiError, rolling Auth_Token refresh, 401 clears token. - test/integration: live checks against the Sandpoint (DSB) zones; targets the `test` instance by default and SKIPS when it's unreachable (non-prod is IP-restricted -> 403). Verified 3/3 green against prodv2 read-only. - CI runs `npm test` as a build gate. Note: dev/stage/test instances return 403 "Web App - Unavailable" from the public internet (IP-restricted). API schema is otherwise unchanged vs Jul 6. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
53 lines
1.4 KiB
JSON
53 lines
1.4 KiB
JSON
{
|
|
"expo": {
|
|
"name": "BigBrainParking",
|
|
"slug": "bigbrainparking",
|
|
"scheme": "bigbrainparking",
|
|
"version": "0.1.5",
|
|
"orientation": "portrait",
|
|
"userInterfaceStyle": "automatic",
|
|
"newArchEnabled": true,
|
|
"icon": "./assets/icon.png",
|
|
"android": {
|
|
"package": "top.mowden.bigbrainparking",
|
|
"versionCode": 5,
|
|
"edgeToEdgeEnabled": true,
|
|
"adaptiveIcon": {
|
|
"foregroundImage": "./assets/adaptive-icon.png",
|
|
"backgroundColor": "#0F2A33"
|
|
},
|
|
"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",
|
|
"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
|
|
}
|
|
}
|
|
}
|