Files
Abin ToppoandClaude Opus 5.5 f960a119e8 Add Positive Pay, statement guide v1.0, onboarding, and switch every feature on
- Positive Pay on the 12 Oct /pps contract (account number, not account ID):
  OTP enrollment, cheque submit, saved cheques, detail and stop payment.
  Full flow passed on the phone against mobile-banking-backend.lincpay.
- Statement & Mini Statement guide v1.0 (14 Oct): mini statement JSON on
  Home and the Statement screen; dated PDF export with the password rule.
- Onboarding slides and splash screen, Inter font, shared Icon and
  TypewriterText components, nearby branches via OpenStreetMap.
- Every feature switched on; the 14 Oct switch set is kept in
  featureConfig.stage-2026-10-14.ts. Loans run on demo data until the
  backend has /loans routes.
- npm run android wraps run-android for shells spawned from VS Code.
- OpenProject work packages updated to 14-10-2026 status, with screenshots
  of Positive Pay, statement, loans and cards.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 18:18:40 +05:30

26 lines
768 B
TypeScript

import axios from 'axios';
import { env } from '../../config/env';
import { attachInterceptors } from './interceptors';
/**
* Single client for the CBS backend. The response interceptor unwraps the
* `{ success, message, data }` envelope, so callers read `response.data` as the
* endpoint payload and a `success: false` body arrives as a thrown
* `CbsApiError` carrying the code to switch on.
*/
export const apiClient = axios.create({
baseURL: env.apiBaseUrl,
timeout: 15000,
headers: {
'Content-Type': 'application/json',
},
});
attachInterceptors(apiClient);
if (__DEV__ && env.devMockBackend) {
// Required lazily so a release bundle never evaluates the fixtures.
apiClient.defaults.adapter = require('./devMockAdapter').devMockAdapter;
}