- 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>
48 lines
1.5 KiB
JavaScript
48 lines
1.5 KiB
JavaScript
/**
|
|
* @format
|
|
*/
|
|
|
|
// Must be the first import: it installs `crypto.getRandomValues`, which `uuid`
|
|
// binds at module load. Anything importing `uuid` before this — the device id
|
|
// and the MPIN nonce both do — would otherwise throw at startup.
|
|
import 'react-native-get-random-values';
|
|
|
|
import { AppRegistry, LogBox, Text, TextInput } from 'react-native';
|
|
import notifee from '@notifee/react-native';
|
|
import App from './App';
|
|
import { name as appName } from './app.json';
|
|
|
|
// Keep debug builds free of the on-screen LogBox warning/error toasts. They
|
|
// still print to the Metro terminal and the debugger console; only the
|
|
// in-app overlay is hidden. Release builds never show LogBox anyway.
|
|
if (__DEV__) {
|
|
LogBox.ignoreAllLogs();
|
|
}
|
|
|
|
// Required by Notifee: handles notification interactions that happen while the
|
|
// app is in the background or quit. Tapping a notification opens the app via
|
|
// the default press action, so no extra work is needed here.
|
|
notifee.onBackgroundEvent(async () => {
|
|
// No-op: the default press action launches the app.
|
|
});
|
|
|
|
const customTextProps = {
|
|
style: {
|
|
fontFamily: 'Inter-Regular',
|
|
}
|
|
};
|
|
|
|
if (Text.defaultProps) {
|
|
Text.defaultProps.style = { ...Text.defaultProps.style, ...customTextProps.style };
|
|
} else {
|
|
Text.defaultProps = customTextProps;
|
|
}
|
|
|
|
if (TextInput.defaultProps) {
|
|
TextInput.defaultProps.style = { ...TextInput.defaultProps.style, ...customTextProps.style };
|
|
} else {
|
|
TextInput.defaultProps = customTextProps;
|
|
}
|
|
|
|
AppRegistry.registerComponent(appName, () => App);
|