feat(mobile): PinInput component — 6-digit numeric pad

This commit is contained in:
byGalax
2026-05-16 17:04:25 +02:00
parent 898b7469bb
commit 18a6365586
7 changed files with 688 additions and 4 deletions
+25
View File
@@ -0,0 +1,25 @@
// Vitest cannot transform React Native's Flow-typed source. We monkey-patch
// Node's CommonJS resolver so every bare `react-native` request returns our
// minimal host-component shim. This file is referenced by `setupFiles` in
// vitest.config.ts and runs before any test file imports execute.
// eslint-disable-next-line @typescript-eslint/no-require-imports
const Module = require('node:module');
import * as path from 'node:path';
import { fileURLToPath } from 'node:url';
const here = path.dirname(fileURLToPath(import.meta.url));
const shimPath = path.join(here, 'vitest.rn-shim.ts');
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const originalResolve = (Module as any)._resolveFilename;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
(Module as any)._resolveFilename = function patched(
request: string,
parent: unknown,
...rest: unknown[]
): string {
if (request === 'react-native' || request.startsWith('react-native/')) {
return shimPath;
}
return originalResolve.call(this, request, parent, ...rest);
};