diff options
author | Sebastian <sebasjm@gmail.com> | 2021-10-26 12:08:03 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2021-10-26 12:08:08 -0300 |
commit | 21b60c8f6ff69bf114779a767a3ac3355f69a34f (patch) | |
tree | c548dd7601b24d9dae4173d725656d35ce4bc26e /packages/anastasis-core/src/validators.ts | |
parent | 835ac85a28dc11b5d7f5cff041ff7973d244e07e (diff) | |
download | wallet-core-21b60c8f6ff69bf114779a767a3ac3355f69a34f.tar.xz |
added core validators, worked on look and feel
Diffstat (limited to 'packages/anastasis-core/src/validators.ts')
-rw-r--r-- | packages/anastasis-core/src/validators.ts | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/packages/anastasis-core/src/validators.ts b/packages/anastasis-core/src/validators.ts new file mode 100644 index 000000000..1c04bfdb3 --- /dev/null +++ b/packages/anastasis-core/src/validators.ts @@ -0,0 +1,28 @@ +function isPrime(num: number): boolean { + for (let i = 2, s = Math.sqrt(num); i <= s; i++) + if (num % i === 0) return false; + return num > 1; +} + +export function AL_NID_check(s: string): boolean { return true } +export function BE_NRN_check(s: string): boolean { return true } +export function CH_AHV_check(s: string): boolean { return true } +export function CZ_BN_check(s: string): boolean { return true } +export function DE_TIN_check(s: string): boolean { return true } +export function DE_SVN_check(s: string): boolean { return true } +export function ES_DNI_check(s: string): boolean { return true } +export function IN_AADHAR_check(s: string): boolean { return true } +export function IT_CF_check(s: string): boolean { + return true +} + +export function XX_SQUARE_check(s: string): boolean { + const n = parseInt(s, 10) + const r = Math.sqrt(n) + return n === r * r; +} +export function XY_PRIME_check(s: string): boolean { + const n = parseInt(s, 10) + return isPrime(n) +} + |