@stll/stdnum 2.1.0 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1181) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +1 -0
  2. package/dist/ad/mod.d.ts +0 -2
  3. package/dist/ad/mod.js +1 -1
  4. package/dist/ad/mod.js.map +1 -1
  5. package/dist/ad/nrt.d.ts +4 -21
  6. package/dist/ad/nrt.js +9 -53
  7. package/dist/ad/nrt.js.map +1 -1
  8. package/dist/ae/eid.d.ts +3 -9
  9. package/dist/ae/eid.js +9 -65
  10. package/dist/ae/eid.js.map +1 -1
  11. package/dist/ae/mod.d.ts +0 -2
  12. package/dist/ae/mod.js +1 -1
  13. package/dist/ae/mod.js.map +1 -1
  14. package/dist/ai/mod.d.ts +0 -2
  15. package/dist/ai/mod.js +1 -1
  16. package/dist/ai/mod.js.map +1 -1
  17. package/dist/ai/tin.d.ts +4 -31
  18. package/dist/ai/tin.js +9 -51
  19. package/dist/ai/tin.js.map +1 -1
  20. package/dist/al/mod.d.ts +0 -2
  21. package/dist/al/mod.js +1 -1
  22. package/dist/al/mod.js.map +1 -1
  23. package/dist/al/nipt.d.ts +4 -18
  24. package/dist/al/nipt.js +9 -42
  25. package/dist/al/nipt.js.map +1 -1
  26. package/dist/am/mod.d.ts +0 -2
  27. package/dist/am/mod.js +1 -1
  28. package/dist/am/mod.js.map +1 -1
  29. package/dist/am/tin.d.ts +4 -21
  30. package/dist/am/tin.js +9 -36
  31. package/dist/am/tin.js.map +1 -1
  32. package/dist/ar/cbu.d.ts +3 -6
  33. package/dist/ar/cbu.js +9 -76
  34. package/dist/ar/cbu.js.map +1 -1
  35. package/dist/ar/cuit.d.ts +3 -11
  36. package/dist/ar/cuit.js +9 -103
  37. package/dist/ar/cuit.js.map +1 -1
  38. package/dist/ar/dni.d.ts +4 -16
  39. package/dist/ar/dni.js +9 -45
  40. package/dist/ar/dni.js.map +1 -1
  41. package/dist/ar/mod.d.ts +0 -2
  42. package/dist/ar/mod.js +1 -1
  43. package/dist/ar/mod.js.map +1 -1
  44. package/dist/at/businessid.d.ts +4 -15
  45. package/dist/at/businessid.js +9 -45
  46. package/dist/at/businessid.js.map +1 -1
  47. package/dist/at/mod.d.ts +0 -2
  48. package/dist/at/mod.js +1 -1
  49. package/dist/at/mod.js.map +1 -1
  50. package/dist/at/tin.d.ts +3 -6
  51. package/dist/at/tin.js +9 -56
  52. package/dist/at/tin.js.map +1 -1
  53. package/dist/at/uid.d.ts +3 -6
  54. package/dist/at/uid.js +9 -52
  55. package/dist/at/uid.js.map +1 -1
  56. package/dist/at/vnr.d.ts +3 -6
  57. package/dist/at/vnr.js +9 -82
  58. package/dist/at/vnr.js.map +1 -1
  59. package/dist/au/abn.d.ts +3 -6
  60. package/dist/au/abn.js +9 -64
  61. package/dist/au/abn.js.map +1 -1
  62. package/dist/au/acn.d.ts +3 -6
  63. package/dist/au/acn.js +9 -57
  64. package/dist/au/acn.js.map +1 -1
  65. package/dist/au/mod.d.ts +0 -2
  66. package/dist/au/mod.js +1 -1
  67. package/dist/au/mod.js.map +1 -1
  68. package/dist/au/tfn.d.ts +3 -6
  69. package/dist/au/tfn.js +9 -58
  70. package/dist/au/tfn.js.map +1 -1
  71. package/dist/az/mod.d.ts +0 -2
  72. package/dist/az/mod.js +1 -1
  73. package/dist/az/mod.js.map +1 -1
  74. package/dist/az/voen.d.ts +3 -13
  75. package/dist/az/voen.js +9 -83
  76. package/dist/az/voen.js.map +1 -1
  77. package/dist/ba/jmbg.d.ts +5 -8
  78. package/dist/ba/jmbg.js +10 -86
  79. package/dist/ba/jmbg.js.map +1 -1
  80. package/dist/ba/mod.d.ts +0 -2
  81. package/dist/ba/mod.js +1 -1
  82. package/dist/ba/mod.js.map +1 -1
  83. package/dist/bd/mod.d.ts +0 -2
  84. package/dist/bd/mod.js +1 -1
  85. package/dist/bd/mod.js.map +1 -1
  86. package/dist/bd/nid.d.ts +4 -28
  87. package/dist/bd/nid.js +9 -91
  88. package/dist/bd/nid.js.map +1 -1
  89. package/dist/be/bis.d.ts +3 -6
  90. package/dist/be/bis.js +9 -51
  91. package/dist/be/bis.js.map +1 -1
  92. package/dist/be/mod.d.ts +0 -2
  93. package/dist/be/mod.js +2 -2
  94. package/dist/be/mod.js.map +1 -1
  95. package/dist/be/nn.d.ts +4 -13
  96. package/dist/be/nn.js +10 -70
  97. package/dist/be/nn.js.map +1 -1
  98. package/dist/be/vat.d.ts +3 -6
  99. package/dist/be/vat.js +9 -58
  100. package/dist/be/vat.js.map +1 -1
  101. package/dist/bg/egn.d.ts +5 -12
  102. package/dist/bg/egn.js +10 -110
  103. package/dist/bg/egn.js.map +1 -1
  104. package/dist/bg/mod.d.ts +0 -2
  105. package/dist/bg/mod.js +1 -1
  106. package/dist/bg/mod.js.map +1 -1
  107. package/dist/bg/pnf.d.ts +3 -6
  108. package/dist/bg/pnf.js +9 -59
  109. package/dist/bg/pnf.js.map +1 -1
  110. package/dist/bg/vat.d.ts +3 -6
  111. package/dist/bg/vat.js +9 -143
  112. package/dist/bg/vat.js.map +1 -1
  113. package/dist/bh/cpr.d.ts +3 -6
  114. package/dist/bh/cpr.js +9 -44
  115. package/dist/bh/cpr.js.map +1 -1
  116. package/dist/bh/mod.d.ts +0 -2
  117. package/dist/bh/mod.js +1 -1
  118. package/dist/bh/mod.js.map +1 -1
  119. package/dist/bic.d.ts +4 -18
  120. package/dist/bic.js +9 -56
  121. package/dist/bic.js.map +1 -1
  122. package/dist/br/cnpj.d.ts +3 -13
  123. package/dist/br/cnpj.js +9 -109
  124. package/dist/br/cnpj.js.map +1 -1
  125. package/dist/br/cpf.d.ts +3 -6
  126. package/dist/br/cpf.js +9 -66
  127. package/dist/br/cpf.js.map +1 -1
  128. package/dist/br/mod.d.ts +0 -2
  129. package/dist/br/mod.js +1 -1
  130. package/dist/br/mod.js.map +1 -1
  131. package/dist/by/mod.d.ts +0 -2
  132. package/dist/by/mod.js +1 -1
  133. package/dist/by/mod.js.map +1 -1
  134. package/dist/by/unp.d.ts +3 -6
  135. package/dist/by/unp.js +9 -102
  136. package/dist/by/unp.js.map +1 -1
  137. package/dist/bz/mod.d.ts +0 -2
  138. package/dist/bz/mod.js +1 -1
  139. package/dist/bz/mod.js.map +1 -1
  140. package/dist/bz/tin.d.ts +3 -10
  141. package/dist/bz/tin.js +9 -64
  142. package/dist/bz/tin.js.map +1 -1
  143. package/dist/ca/bn.d.ts +3 -6
  144. package/dist/ca/bn.js +9 -61
  145. package/dist/ca/bn.js.map +1 -1
  146. package/dist/ca/mod.d.ts +0 -2
  147. package/dist/ca/mod.js +1 -1
  148. package/dist/ca/mod.js.map +1 -1
  149. package/dist/ca/sin.d.ts +3 -6
  150. package/dist/ca/sin.js +9 -50
  151. package/dist/ca/sin.js.map +1 -1
  152. package/dist/catalog.d.ts +9 -0
  153. package/dist/catalog.js +9 -0
  154. package/dist/catalog.js.map +1 -0
  155. package/dist/ch/mod.d.ts +1 -3
  156. package/dist/ch/mod.js +2 -2
  157. package/dist/ch/mod.js.map +1 -1
  158. package/dist/ch/ssn.d.ts +3 -6
  159. package/dist/ch/ssn.js +9 -55
  160. package/dist/ch/ssn.js.map +1 -1
  161. package/dist/ch/uid.d.ts +3 -6
  162. package/dist/ch/uid.js +9 -69
  163. package/dist/ch/uid.js.map +1 -1
  164. package/dist/ch/vat.d.ts +3 -6
  165. package/dist/ch/vat.js +9 -58
  166. package/dist/ch/vat.js.map +1 -1
  167. package/dist/cl/mod.d.ts +0 -2
  168. package/dist/cl/mod.js +1 -1
  169. package/dist/cl/mod.js.map +1 -1
  170. package/dist/cl/rut.d.ts +3 -11
  171. package/dist/cl/rut.js +9 -78
  172. package/dist/cl/rut.js.map +1 -1
  173. package/dist/cn/mod.d.ts +0 -2
  174. package/dist/cn/mod.js +1 -1
  175. package/dist/cn/mod.js.map +1 -1
  176. package/dist/cn/ric.d.ts +5 -12
  177. package/dist/cn/ric.js +10 -94
  178. package/dist/cn/ric.js.map +1 -1
  179. package/dist/cn/uscc.d.ts +3 -6
  180. package/dist/cn/uscc.js +9 -76
  181. package/dist/cn/uscc.js.map +1 -1
  182. package/dist/co/mod.d.ts +0 -2
  183. package/dist/co/mod.js +1 -1
  184. package/dist/co/mod.js.map +1 -1
  185. package/dist/co/nit.d.ts +3 -6
  186. package/dist/co/nit.js +9 -98
  187. package/dist/co/nit.js.map +1 -1
  188. package/dist/cr/cpf.d.ts +4 -31
  189. package/dist/cr/cpf.js +9 -61
  190. package/dist/cr/cpf.js.map +1 -1
  191. package/dist/cr/mod.d.ts +0 -2
  192. package/dist/cr/mod.js +1 -1
  193. package/dist/cr/mod.js.map +1 -1
  194. package/dist/creditcard.d.ts +5 -18
  195. package/dist/creditcard.js +8 -109
  196. package/dist/creditcard.js.map +1 -1
  197. package/dist/crypto/btcbase58.d.ts +5 -6
  198. package/dist/crypto/btcbase58.js +8 -73
  199. package/dist/crypto/btcbase58.js.map +1 -1
  200. package/dist/crypto/btcbech32.d.ts +7 -9
  201. package/dist/crypto/btcbech32.js +10 -142
  202. package/dist/crypto/btcbech32.js.map +1 -1
  203. package/dist/crypto/eth.d.ts +4 -5
  204. package/dist/crypto/eth.js +7 -59
  205. package/dist/crypto/eth.js.map +1 -1
  206. package/dist/crypto/mod.d.ts +4 -6
  207. package/dist/crypto/mod.js +6 -6
  208. package/dist/crypto/mod.js.map +1 -1
  209. package/dist/crypto/wallet.d.ts +3 -4
  210. package/dist/crypto/wallet.js +6 -51
  211. package/dist/crypto/wallet.js.map +1 -1
  212. package/dist/cu/mod.d.ts +0 -2
  213. package/dist/cu/mod.js +1 -1
  214. package/dist/cu/mod.js.map +1 -1
  215. package/dist/cu/ni.d.ts +5 -16
  216. package/dist/cu/ni.js +10 -81
  217. package/dist/cu/ni.js.map +1 -1
  218. package/dist/cy/mod.d.ts +0 -2
  219. package/dist/cy/mod.js +1 -1
  220. package/dist/cy/mod.js.map +1 -1
  221. package/dist/cy/vat.d.ts +3 -6
  222. package/dist/cy/vat.js +9 -77
  223. package/dist/cy/vat.js.map +1 -1
  224. package/dist/cz/dic.d.ts +3 -6
  225. package/dist/cz/dic.js +9 -87
  226. package/dist/cz/dic.js.map +1 -1
  227. package/dist/cz/ico.d.ts +3 -6
  228. package/dist/cz/ico.js +9 -58
  229. package/dist/cz/ico.js.map +1 -1
  230. package/dist/cz/mod.d.ts +0 -2
  231. package/dist/cz/mod.js +2 -2
  232. package/dist/cz/mod.js.map +1 -1
  233. package/dist/cz/rc.d.ts +5 -15
  234. package/dist/cz/rc.js +10 -113
  235. package/dist/cz/rc.js.map +1 -1
  236. package/dist/de/handelsreg.d.ts +4 -28
  237. package/dist/de/handelsreg.js +9 -66
  238. package/dist/de/handelsreg.js.map +1 -1
  239. package/dist/de/idnr.d.ts +3 -6
  240. package/dist/de/idnr.js +9 -88
  241. package/dist/de/idnr.js.map +1 -1
  242. package/dist/de/mod.d.ts +0 -2
  243. package/dist/de/mod.js +1 -1
  244. package/dist/de/mod.js.map +1 -1
  245. package/dist/de/stnr.d.ts +4 -30
  246. package/dist/de/stnr.js +9 -126
  247. package/dist/de/stnr.js.map +1 -1
  248. package/dist/de/svnr.d.ts +3 -6
  249. package/dist/de/svnr.js +9 -95
  250. package/dist/de/svnr.js.map +1 -1
  251. package/dist/de/vat.d.ts +3 -6
  252. package/dist/de/vat.js +9 -52
  253. package/dist/de/vat.js.map +1 -1
  254. package/dist/dk/cpr.d.ts +5 -12
  255. package/dist/dk/cpr.js +10 -79
  256. package/dist/dk/cpr.js.map +1 -1
  257. package/dist/dk/cvr.d.ts +3 -6
  258. package/dist/dk/cvr.js +9 -53
  259. package/dist/dk/cvr.js.map +1 -1
  260. package/dist/dk/mod.d.ts +0 -2
  261. package/dist/dk/mod.js +1 -1
  262. package/dist/dk/mod.js.map +1 -1
  263. package/dist/dk/vat.d.ts +3 -6
  264. package/dist/dk/vat.js +9 -58
  265. package/dist/dk/vat.js.map +1 -1
  266. package/dist/do/mod.d.ts +0 -2
  267. package/dist/do/mod.js +1 -1
  268. package/dist/do/mod.js.map +1 -1
  269. package/dist/do/rnc.d.ts +3 -10
  270. package/dist/do/rnc.js +9 -77
  271. package/dist/do/rnc.js.map +1 -1
  272. package/dist/ec/mod.d.ts +0 -2
  273. package/dist/ec/mod.js +1 -1
  274. package/dist/ec/mod.js.map +1 -1
  275. package/dist/ec/ruc.d.ts +3 -6
  276. package/dist/ec/ruc.js +9 -129
  277. package/dist/ec/ruc.js.map +1 -1
  278. package/dist/ee/ik.d.ts +6 -17
  279. package/dist/ee/ik.js +11 -118
  280. package/dist/ee/ik.js.map +1 -1
  281. package/dist/ee/mod.d.ts +0 -2
  282. package/dist/ee/mod.js +1 -1
  283. package/dist/ee/mod.js.map +1 -1
  284. package/dist/ee/registrikood.d.ts +3 -6
  285. package/dist/ee/registrikood.js +9 -53
  286. package/dist/ee/registrikood.js.map +1 -1
  287. package/dist/ee/vat.d.ts +3 -6
  288. package/dist/ee/vat.js +9 -57
  289. package/dist/ee/vat.js.map +1 -1
  290. package/dist/eg/mod.d.ts +0 -2
  291. package/dist/eg/mod.js +1 -1
  292. package/dist/eg/mod.js.map +1 -1
  293. package/dist/eg/tn.d.ts +4 -16
  294. package/dist/eg/tn.js +9 -69
  295. package/dist/eg/tn.js.map +1 -1
  296. package/dist/es/cif.d.ts +3 -6
  297. package/dist/es/cif.js +9 -53
  298. package/dist/es/cif.js.map +1 -1
  299. package/dist/es/dni.d.ts +4 -7
  300. package/dist/es/dni.js +9 -45
  301. package/dist/es/dni.js.map +1 -1
  302. package/dist/es/mod.d.ts +0 -2
  303. package/dist/es/mod.js +2 -2
  304. package/dist/es/mod.js.map +1 -1
  305. package/dist/es/nie.d.ts +3 -6
  306. package/dist/es/nie.js +9 -66
  307. package/dist/es/nie.js.map +1 -1
  308. package/dist/es/nss.d.ts +3 -6
  309. package/dist/es/nss.js +9 -53
  310. package/dist/es/nss.js.map +1 -1
  311. package/dist/es/vat.d.ts +4 -7
  312. package/dist/es/vat.js +10 -95
  313. package/dist/es/vat.js.map +1 -1
  314. package/dist/eu/mod.d.ts +3 -5
  315. package/dist/eu/mod.js +4 -4
  316. package/dist/eu/mod.js.map +1 -1
  317. package/dist/eu/vat.d.ts +4 -15
  318. package/dist/eu/vat.js +10 -184
  319. package/dist/eu/vat.js.map +1 -1
  320. package/dist/fi/hetu.d.ts +5 -12
  321. package/dist/fi/hetu.js +10 -110
  322. package/dist/fi/hetu.js.map +1 -1
  323. package/dist/fi/mod.d.ts +0 -2
  324. package/dist/fi/mod.js +2 -2
  325. package/dist/fi/mod.js.map +1 -1
  326. package/dist/fi/vat.d.ts +3 -6
  327. package/dist/fi/vat.js +9 -57
  328. package/dist/fi/vat.js.map +1 -1
  329. package/dist/fi/ytunnus.d.ts +3 -6
  330. package/dist/fi/ytunnus.js +9 -59
  331. package/dist/fi/ytunnus.js.map +1 -1
  332. package/dist/fr/mod.d.ts +0 -2
  333. package/dist/fr/mod.js +2 -2
  334. package/dist/fr/mod.js.map +1 -1
  335. package/dist/fr/nif.d.ts +3 -6
  336. package/dist/fr/nif.js +9 -52
  337. package/dist/fr/nif.js.map +1 -1
  338. package/dist/fr/nir.d.ts +5 -8
  339. package/dist/fr/nir.js +10 -91
  340. package/dist/fr/nir.js.map +1 -1
  341. package/dist/fr/siren.d.ts +3 -6
  342. package/dist/fr/siren.js +9 -44
  343. package/dist/fr/siren.js.map +1 -1
  344. package/dist/fr/siret.d.ts +3 -6
  345. package/dist/fr/siret.js +9 -60
  346. package/dist/fr/siret.js.map +1 -1
  347. package/dist/fr/tva.d.ts +3 -6
  348. package/dist/fr/tva.js +9 -66
  349. package/dist/fr/tva.js.map +1 -1
  350. package/dist/gb/mod.d.ts +0 -2
  351. package/dist/gb/mod.js +2 -2
  352. package/dist/gb/mod.js.map +1 -1
  353. package/dist/gb/nhs.d.ts +4 -5
  354. package/dist/gb/nhs.js +7 -47
  355. package/dist/gb/nhs.js.map +1 -1
  356. package/dist/gb/nino.d.ts +4 -17
  357. package/dist/gb/nino.js +9 -90
  358. package/dist/gb/nino.js.map +1 -1
  359. package/dist/gb/sedol.d.ts +4 -7
  360. package/dist/gb/sedol.js +10 -72
  361. package/dist/gb/sedol.js.map +1 -1
  362. package/dist/gb/utr.d.ts +3 -6
  363. package/dist/gb/utr.js +9 -57
  364. package/dist/gb/utr.js.map +1 -1
  365. package/dist/gb/vat.d.ts +3 -6
  366. package/dist/gb/vat.js +9 -89
  367. package/dist/gb/vat.js.map +1 -1
  368. package/dist/ge/mod.d.ts +0 -2
  369. package/dist/ge/mod.js +1 -1
  370. package/dist/ge/mod.js.map +1 -1
  371. package/dist/ge/pin.d.ts +4 -19
  372. package/dist/ge/pin.js +9 -36
  373. package/dist/ge/pin.js.map +1 -1
  374. package/dist/gh/mod.d.ts +0 -2
  375. package/dist/gh/mod.js +1 -1
  376. package/dist/gh/mod.js.map +1 -1
  377. package/dist/gh/tin.d.ts +3 -6
  378. package/dist/gh/tin.js +9 -62
  379. package/dist/gh/tin.js.map +1 -1
  380. package/dist/gr/amka.d.ts +3 -6
  381. package/dist/gr/amka.js +9 -59
  382. package/dist/gr/amka.js.map +1 -1
  383. package/dist/gr/mod.d.ts +0 -2
  384. package/dist/gr/mod.js +2 -2
  385. package/dist/gr/mod.js.map +1 -1
  386. package/dist/gr/vat.d.ts +3 -6
  387. package/dist/gr/vat.js +9 -53
  388. package/dist/gr/vat.js.map +1 -1
  389. package/dist/gt/mod.d.ts +0 -2
  390. package/dist/gt/mod.js +1 -1
  391. package/dist/gt/mod.js.map +1 -1
  392. package/dist/gt/nit.d.ts +3 -13
  393. package/dist/gt/nit.js +9 -86
  394. package/dist/gt/nit.js.map +1 -1
  395. package/dist/hk/hkid.d.ts +3 -7
  396. package/dist/hk/hkid.js +9 -80
  397. package/dist/hk/hkid.js.map +1 -1
  398. package/dist/hk/mod.d.ts +0 -2
  399. package/dist/hk/mod.js +1 -1
  400. package/dist/hk/mod.js.map +1 -1
  401. package/dist/hr/mod.d.ts +0 -2
  402. package/dist/hr/mod.js +1 -1
  403. package/dist/hr/mod.js.map +1 -1
  404. package/dist/hr/vat.d.ts +3 -6
  405. package/dist/hr/vat.js +9 -44
  406. package/dist/hr/vat.js.map +1 -1
  407. package/dist/hu/mod.d.ts +0 -2
  408. package/dist/hu/mod.js +1 -1
  409. package/dist/hu/mod.js.map +1 -1
  410. package/dist/hu/vat.d.ts +3 -6
  411. package/dist/hu/vat.js +9 -57
  412. package/dist/hu/vat.js.map +1 -1
  413. package/dist/iban.d.ts +3 -8
  414. package/dist/iban.js +9 -272
  415. package/dist/iban.js.map +1 -1
  416. package/dist/id/mod.d.ts +0 -2
  417. package/dist/id/mod.js +1 -1
  418. package/dist/id/mod.js.map +1 -1
  419. package/dist/id/npwp.d.ts +3 -6
  420. package/dist/id/npwp.js +9 -119
  421. package/dist/id/npwp.js.map +1 -1
  422. package/dist/ie/mod.d.ts +0 -2
  423. package/dist/ie/mod.js +2 -2
  424. package/dist/ie/mod.js.map +1 -1
  425. package/dist/ie/pps.d.ts +3 -6
  426. package/dist/ie/pps.js +9 -56
  427. package/dist/ie/pps.js.map +1 -1
  428. package/dist/ie/vat.d.ts +3 -6
  429. package/dist/ie/vat.js +9 -71
  430. package/dist/ie/vat.js.map +1 -1
  431. package/dist/il/idnr.d.ts +3 -6
  432. package/dist/il/idnr.js +9 -50
  433. package/dist/il/idnr.js.map +1 -1
  434. package/dist/il/mod.d.ts +0 -2
  435. package/dist/il/mod.js +1 -1
  436. package/dist/il/mod.js.map +1 -1
  437. package/dist/in/aadhaar.d.ts +3 -6
  438. package/dist/in/aadhaar.js +9 -47
  439. package/dist/in/aadhaar.js.map +1 -1
  440. package/dist/in/gstin.d.ts +3 -6
  441. package/dist/in/gstin.js +9 -119
  442. package/dist/in/gstin.js.map +1 -1
  443. package/dist/in/mod.d.ts +0 -2
  444. package/dist/in/mod.js +1 -1
  445. package/dist/in/mod.js.map +1 -1
  446. package/dist/in/pan.d.ts +4 -20
  447. package/dist/in/pan.js +9 -42
  448. package/dist/in/pan.js.map +1 -1
  449. package/dist/index.d.ts +9 -9
  450. package/dist/index.js +2 -2
  451. package/dist/iq/mod.d.ts +0 -2
  452. package/dist/iq/mod.js +1 -1
  453. package/dist/iq/mod.js.map +1 -1
  454. package/dist/iq/nid.d.ts +4 -22
  455. package/dist/iq/nid.js +9 -39
  456. package/dist/iq/nid.js.map +1 -1
  457. package/dist/ir/mod.d.ts +0 -2
  458. package/dist/ir/mod.js +1 -1
  459. package/dist/ir/mod.js.map +1 -1
  460. package/dist/ir/nid.d.ts +3 -10
  461. package/dist/ir/nid.js +9 -64
  462. package/dist/ir/nid.js.map +1 -1
  463. package/dist/is/kennitala.d.ts +3 -6
  464. package/dist/is/kennitala.js +9 -77
  465. package/dist/is/kennitala.js.map +1 -1
  466. package/dist/is/mod.d.ts +0 -2
  467. package/dist/is/mod.js +1 -1
  468. package/dist/is/mod.js.map +1 -1
  469. package/dist/is/vsk.d.ts +4 -14
  470. package/dist/is/vsk.js +9 -37
  471. package/dist/is/vsk.js.map +1 -1
  472. package/dist/isin.d.ts +3 -6
  473. package/dist/isin.js +9 -71
  474. package/dist/isin.js.map +1 -1
  475. package/dist/it/codicefiscale.d.ts +5 -13
  476. package/dist/it/codicefiscale.js +10 -214
  477. package/dist/it/codicefiscale.js.map +1 -1
  478. package/dist/it/iva.d.ts +3 -6
  479. package/dist/it/iva.js +9 -60
  480. package/dist/it/iva.js.map +1 -1
  481. package/dist/it/mod.d.ts +0 -2
  482. package/dist/it/mod.js +2 -2
  483. package/dist/it/mod.js.map +1 -1
  484. package/dist/jp/cn.d.ts +3 -6
  485. package/dist/jp/cn.js +9 -56
  486. package/dist/jp/cn.js.map +1 -1
  487. package/dist/jp/mod.d.ts +0 -2
  488. package/dist/jp/mod.js +1 -1
  489. package/dist/jp/mod.js.map +1 -1
  490. package/dist/jp/mynumber.d.ts +3 -6
  491. package/dist/jp/mynumber.js +9 -73
  492. package/dist/jp/mynumber.js.map +1 -1
  493. package/dist/kr/brn.d.ts +4 -16
  494. package/dist/kr/brn.js +9 -55
  495. package/dist/kr/brn.js.map +1 -1
  496. package/dist/kr/mod.d.ts +0 -2
  497. package/dist/kr/mod.js +1 -1
  498. package/dist/kr/mod.js.map +1 -1
  499. package/dist/kr/rrn.d.ts +5 -17
  500. package/dist/kr/rrn.js +10 -131
  501. package/dist/kr/rrn.js.map +1 -1
  502. package/dist/kw/civil.d.ts +5 -13
  503. package/dist/kw/civil.js +10 -98
  504. package/dist/kw/civil.js.map +1 -1
  505. package/dist/kw/mod.d.ts +0 -2
  506. package/dist/kw/mod.js +1 -1
  507. package/dist/kw/mod.js.map +1 -1
  508. package/dist/kz/iin.d.ts +5 -16
  509. package/dist/kz/iin.js +10 -132
  510. package/dist/kz/iin.js.map +1 -1
  511. package/dist/kz/mod.d.ts +0 -2
  512. package/dist/kz/mod.js +1 -1
  513. package/dist/kz/mod.js.map +1 -1
  514. package/dist/lei.d.ts +3 -6
  515. package/dist/lei.js +9 -55
  516. package/dist/lei.js.map +1 -1
  517. package/dist/li/mod.d.ts +0 -2
  518. package/dist/li/mod.js +1 -1
  519. package/dist/li/mod.js.map +1 -1
  520. package/dist/li/peid.d.ts +4 -16
  521. package/dist/li/peid.js +9 -49
  522. package/dist/li/peid.js.map +1 -1
  523. package/dist/lk/mod.d.ts +0 -2
  524. package/dist/lk/mod.js +1 -1
  525. package/dist/lk/mod.js.map +1 -1
  526. package/dist/lk/nic.d.ts +5 -12
  527. package/dist/lk/nic.js +10 -135
  528. package/dist/lk/nic.js.map +1 -1
  529. package/dist/lt/asmens.d.ts +3 -6
  530. package/dist/lt/asmens.js +9 -78
  531. package/dist/lt/asmens.js.map +1 -1
  532. package/dist/lt/mod.d.ts +0 -2
  533. package/dist/lt/mod.js +2 -2
  534. package/dist/lt/mod.js.map +1 -1
  535. package/dist/lt/vat.d.ts +3 -6
  536. package/dist/lt/vat.js +9 -60
  537. package/dist/lt/vat.js.map +1 -1
  538. package/dist/lu/mod.d.ts +0 -2
  539. package/dist/lu/mod.js +1 -1
  540. package/dist/lu/mod.js.map +1 -1
  541. package/dist/lu/vat.d.ts +3 -6
  542. package/dist/lu/vat.js +9 -46
  543. package/dist/lu/vat.js.map +1 -1
  544. package/dist/luhn.d.ts +3 -9
  545. package/dist/luhn.js +7 -47
  546. package/dist/luhn.js.map +1 -1
  547. package/dist/lv/mod.d.ts +0 -2
  548. package/dist/lv/mod.js +1 -1
  549. package/dist/lv/mod.js.map +1 -1
  550. package/dist/lv/vat.d.ts +3 -6
  551. package/dist/lv/vat.js +9 -101
  552. package/dist/lv/vat.js.map +1 -1
  553. package/dist/ma/ice.d.ts +3 -6
  554. package/dist/ma/ice.js +9 -44
  555. package/dist/ma/ice.js.map +1 -1
  556. package/dist/ma/mod.d.ts +0 -2
  557. package/dist/ma/mod.js +1 -1
  558. package/dist/ma/mod.js.map +1 -1
  559. package/dist/mc/mod.d.ts +0 -2
  560. package/dist/mc/mod.js +1 -1
  561. package/dist/mc/mod.js.map +1 -1
  562. package/dist/mc/tva.d.ts +3 -6
  563. package/dist/mc/tva.js +9 -50
  564. package/dist/mc/tva.js.map +1 -1
  565. package/dist/md/idno.d.ts +3 -5
  566. package/dist/md/idno.js +6 -58
  567. package/dist/md/idno.js.map +1 -1
  568. package/dist/md/mod.d.ts +0 -2
  569. package/dist/md/mod.js +1 -1
  570. package/dist/md/mod.js.map +1 -1
  571. package/dist/me/mod.d.ts +0 -2
  572. package/dist/me/mod.js +1 -1
  573. package/dist/me/mod.js.map +1 -1
  574. package/dist/me/pib.d.ts +3 -6
  575. package/dist/me/pib.js +9 -51
  576. package/dist/me/pib.js.map +1 -1
  577. package/dist/metadata.d.ts +3505 -0
  578. package/dist/metadata.js +4949 -0
  579. package/dist/metadata.js.map +1 -0
  580. package/dist/mk/edb.d.ts +3 -6
  581. package/dist/mk/edb.js +9 -64
  582. package/dist/mk/edb.js.map +1 -1
  583. package/dist/mk/mod.d.ts +0 -2
  584. package/dist/mk/mod.js +1 -1
  585. package/dist/mk/mod.js.map +1 -1
  586. package/dist/mt/mod.d.ts +0 -2
  587. package/dist/mt/mod.js +1 -1
  588. package/dist/mt/mod.js.map +1 -1
  589. package/dist/mt/vat.d.ts +3 -6
  590. package/dist/mt/vat.js +9 -58
  591. package/dist/mt/vat.js.map +1 -1
  592. package/dist/mu/brn.d.ts +4 -28
  593. package/dist/mu/brn.js +9 -44
  594. package/dist/mu/brn.js.map +1 -1
  595. package/dist/mu/mod.d.ts +0 -2
  596. package/dist/mu/mod.js +1 -1
  597. package/dist/mu/mod.js.map +1 -1
  598. package/dist/mx/clabe.d.ts +3 -10
  599. package/dist/mx/clabe.js +9 -70
  600. package/dist/mx/clabe.js.map +1 -1
  601. package/dist/mx/curp.d.ts +5 -16
  602. package/dist/mx/curp.js +10 -144
  603. package/dist/mx/curp.js.map +1 -1
  604. package/dist/mx/mod.d.ts +0 -2
  605. package/dist/mx/mod.js +1 -1
  606. package/dist/mx/mod.js.map +1 -1
  607. package/dist/mx/rfc.d.ts +3 -10
  608. package/dist/mx/rfc.js +9 -91
  609. package/dist/mx/rfc.js.map +1 -1
  610. package/dist/my/mod.d.ts +0 -2
  611. package/dist/my/mod.js +1 -1
  612. package/dist/my/mod.js.map +1 -1
  613. package/dist/my/nric.d.ts +5 -12
  614. package/dist/my/nric.js +10 -184
  615. package/dist/my/nric.js.map +1 -1
  616. package/dist/native-node.d.ts +14 -0
  617. package/dist/native-node.js +75 -0
  618. package/dist/native-node.js.map +1 -0
  619. package/dist/native.d.ts +79 -0
  620. package/dist/native.js +24 -0
  621. package/dist/native.js.map +1 -0
  622. package/dist/ng/mod.d.ts +0 -2
  623. package/dist/ng/mod.js +1 -1
  624. package/dist/ng/mod.js.map +1 -1
  625. package/dist/ng/nin.d.ts +4 -18
  626. package/dist/ng/nin.js +9 -40
  627. package/dist/ng/nin.js.map +1 -1
  628. package/dist/ni/mod.d.ts +0 -2
  629. package/dist/ni/mod.js +1 -1
  630. package/dist/ni/mod.js.map +1 -1
  631. package/dist/ni/ruc.d.ts +3 -15
  632. package/dist/ni/ruc.js +9 -87
  633. package/dist/ni/ruc.js.map +1 -1
  634. package/dist/nl/bsn.d.ts +3 -6
  635. package/dist/nl/bsn.js +9 -58
  636. package/dist/nl/bsn.js.map +1 -1
  637. package/dist/nl/kvk.d.ts +4 -14
  638. package/dist/nl/kvk.js +9 -35
  639. package/dist/nl/kvk.js.map +1 -1
  640. package/dist/nl/mod.d.ts +0 -2
  641. package/dist/nl/mod.js +2 -2
  642. package/dist/nl/mod.js.map +1 -1
  643. package/dist/nl/vat.d.ts +3 -6
  644. package/dist/nl/vat.js +9 -44
  645. package/dist/nl/vat.js.map +1 -1
  646. package/dist/no/fodselsnummer.d.ts +5 -13
  647. package/dist/no/fodselsnummer.js +10 -123
  648. package/dist/no/fodselsnummer.js.map +1 -1
  649. package/dist/no/mod.d.ts +2 -4
  650. package/dist/no/mod.js +3 -3
  651. package/dist/no/mod.js.map +1 -1
  652. package/dist/no/mva.d.ts +3 -6
  653. package/dist/no/mva.js +9 -43
  654. package/dist/no/mva.js.map +1 -1
  655. package/dist/no/orgnr.d.ts +3 -6
  656. package/dist/no/orgnr.js +9 -56
  657. package/dist/no/orgnr.js.map +1 -1
  658. package/dist/nz/ird.d.ts +3 -6
  659. package/dist/nz/ird.js +9 -92
  660. package/dist/nz/ird.js.map +1 -1
  661. package/dist/nz/mod.d.ts +0 -2
  662. package/dist/nz/mod.js +1 -1
  663. package/dist/nz/mod.js.map +1 -1
  664. package/dist/pa/mod.d.ts +0 -2
  665. package/dist/pa/mod.js +1 -1
  666. package/dist/pa/mod.js.map +1 -1
  667. package/dist/pa/ruc.d.ts +3 -15
  668. package/dist/pa/ruc.js +9 -181
  669. package/dist/pa/ruc.js.map +1 -1
  670. package/dist/patterns.d.ts +6 -35
  671. package/dist/patterns.js +10 -171
  672. package/dist/patterns.js.map +1 -1
  673. package/dist/pe/mod.d.ts +0 -2
  674. package/dist/pe/mod.js +1 -1
  675. package/dist/pe/mod.js.map +1 -1
  676. package/dist/pe/ruc.d.ts +3 -11
  677. package/dist/pe/ruc.js +9 -91
  678. package/dist/pe/ruc.js.map +1 -1
  679. package/dist/ph/mod.d.ts +0 -2
  680. package/dist/ph/mod.js +1 -1
  681. package/dist/ph/mod.js.map +1 -1
  682. package/dist/ph/philid.d.ts +4 -19
  683. package/dist/ph/philid.js +9 -45
  684. package/dist/ph/philid.js.map +1 -1
  685. package/dist/pk/cnic.d.ts +4 -19
  686. package/dist/pk/cnic.js +9 -54
  687. package/dist/pk/cnic.js.map +1 -1
  688. package/dist/pk/mod.d.ts +0 -2
  689. package/dist/pk/mod.js +1 -1
  690. package/dist/pk/mod.js.map +1 -1
  691. package/dist/pl/mod.d.ts +0 -2
  692. package/dist/pl/mod.js +1 -1
  693. package/dist/pl/mod.js.map +1 -1
  694. package/dist/pl/nip.d.ts +3 -10
  695. package/dist/pl/nip.js +9 -65
  696. package/dist/pl/nip.js.map +1 -1
  697. package/dist/pl/pesel.d.ts +5 -12
  698. package/dist/pl/pesel.js +10 -96
  699. package/dist/pl/pesel.js.map +1 -1
  700. package/dist/pl/regon.d.ts +3 -6
  701. package/dist/pl/regon.js +9 -72
  702. package/dist/pl/regon.js.map +1 -1
  703. package/dist/pt/cc.d.ts +3 -6
  704. package/dist/pt/cc.js +9 -67
  705. package/dist/pt/cc.js.map +1 -1
  706. package/dist/pt/mod.d.ts +0 -2
  707. package/dist/pt/mod.js +2 -2
  708. package/dist/pt/mod.js.map +1 -1
  709. package/dist/pt/vat.d.ts +3 -6
  710. package/dist/pt/vat.js +9 -61
  711. package/dist/pt/vat.js.map +1 -1
  712. package/dist/registry.d.ts +6 -0
  713. package/dist/registry.js +357 -0
  714. package/dist/registry.js.map +1 -0
  715. package/dist/ro/cnp.d.ts +5 -12
  716. package/dist/ro/cnp.js +10 -163
  717. package/dist/ro/cnp.js.map +1 -1
  718. package/dist/ro/mod.d.ts +0 -2
  719. package/dist/ro/mod.js +2 -2
  720. package/dist/ro/mod.js.map +1 -1
  721. package/dist/ro/vat.d.ts +3 -6
  722. package/dist/ro/vat.js +9 -74
  723. package/dist/ro/vat.js.map +1 -1
  724. package/dist/rs/mod.d.ts +0 -2
  725. package/dist/rs/mod.js +1 -1
  726. package/dist/rs/mod.js.map +1 -1
  727. package/dist/rs/pib.d.ts +3 -6
  728. package/dist/rs/pib.js +9 -48
  729. package/dist/rs/pib.js.map +1 -1
  730. package/dist/ru/inn.d.ts +3 -6
  731. package/dist/ru/inn.js +9 -89
  732. package/dist/ru/inn.js.map +1 -1
  733. package/dist/ru/mod.d.ts +0 -2
  734. package/dist/ru/mod.js +1 -1
  735. package/dist/ru/mod.js.map +1 -1
  736. package/dist/runtime.js +121 -0
  737. package/dist/runtime.js.map +1 -0
  738. package/dist/se/mod.d.ts +0 -2
  739. package/dist/se/mod.js +2 -2
  740. package/dist/se/mod.js.map +1 -1
  741. package/dist/se/orgnr.d.ts +3 -6
  742. package/dist/se/orgnr.js +9 -48
  743. package/dist/se/orgnr.js.map +1 -1
  744. package/dist/se/personnummer.d.ts +5 -16
  745. package/dist/se/personnummer.js +10 -111
  746. package/dist/se/personnummer.js.map +1 -1
  747. package/dist/se/vat.d.ts +3 -6
  748. package/dist/se/vat.js +9 -52
  749. package/dist/se/vat.js.map +1 -1
  750. package/dist/sg/mod.d.ts +0 -2
  751. package/dist/sg/mod.js +1 -1
  752. package/dist/sg/mod.js.map +1 -1
  753. package/dist/sg/uen.d.ts +3 -6
  754. package/dist/sg/uen.js +9 -180
  755. package/dist/sg/uen.js.map +1 -1
  756. package/dist/si/emso.d.ts +5 -12
  757. package/dist/si/emso.js +10 -102
  758. package/dist/si/emso.js.map +1 -1
  759. package/dist/si/mod.d.ts +0 -2
  760. package/dist/si/mod.js +2 -2
  761. package/dist/si/mod.js.map +1 -1
  762. package/dist/si/vat.d.ts +3 -6
  763. package/dist/si/vat.js +9 -61
  764. package/dist/si/vat.js.map +1 -1
  765. package/dist/sk/dic.d.ts +3 -6
  766. package/dist/sk/dic.js +9 -63
  767. package/dist/sk/dic.js.map +1 -1
  768. package/dist/sk/ico.d.ts +6 -5
  769. package/dist/sk/ico.js +9 -27
  770. package/dist/sk/ico.js.map +1 -1
  771. package/dist/sk/mod.d.ts +0 -2
  772. package/dist/sk/mod.js +1 -1
  773. package/dist/sk/mod.js.map +1 -1
  774. package/dist/sk/rc.d.ts +7 -5
  775. package/dist/sk/rc.js +10 -30
  776. package/dist/sk/rc.js.map +1 -1
  777. package/dist/th/mod.d.ts +0 -2
  778. package/dist/th/mod.js +1 -1
  779. package/dist/th/mod.js.map +1 -1
  780. package/dist/th/tin.d.ts +3 -6
  781. package/dist/th/tin.js +9 -49
  782. package/dist/th/tin.js.map +1 -1
  783. package/dist/tr/mod.d.ts +0 -2
  784. package/dist/tr/mod.js +1 -1
  785. package/dist/tr/mod.js.map +1 -1
  786. package/dist/tr/tckimlik.d.ts +3 -7
  787. package/dist/tr/tckimlik.js +9 -56
  788. package/dist/tr/tckimlik.js.map +1 -1
  789. package/dist/tr/vkn.d.ts +3 -7
  790. package/dist/tr/vkn.js +9 -56
  791. package/dist/tr/vkn.js.map +1 -1
  792. package/dist/tw/mod.d.ts +0 -2
  793. package/dist/tw/mod.js +1 -1
  794. package/dist/tw/mod.js.map +1 -1
  795. package/dist/tw/ubn.d.ts +3 -6
  796. package/dist/tw/ubn.js +9 -72
  797. package/dist/tw/ubn.js.map +1 -1
  798. package/dist/types.d.ts +16 -85
  799. package/dist/ua/edrpou.d.ts +3 -6
  800. package/dist/ua/edrpou.js +9 -92
  801. package/dist/ua/edrpou.js.map +1 -1
  802. package/dist/ua/mod.d.ts +0 -2
  803. package/dist/ua/mod.js +1 -1
  804. package/dist/ua/mod.js.map +1 -1
  805. package/dist/us/ein.d.ts +4 -17
  806. package/dist/us/ein.js +9 -221
  807. package/dist/us/ein.js.map +1 -1
  808. package/dist/us/itin.d.ts +4 -20
  809. package/dist/us/itin.js +9 -54
  810. package/dist/us/itin.js.map +1 -1
  811. package/dist/us/mod.d.ts +0 -2
  812. package/dist/us/mod.js +1 -1
  813. package/dist/us/mod.js.map +1 -1
  814. package/dist/us/rtn.d.ts +3 -6
  815. package/dist/us/rtn.js +9 -75
  816. package/dist/us/rtn.js.map +1 -1
  817. package/dist/us/ssn.d.ts +4 -18
  818. package/dist/us/ssn.js +9 -63
  819. package/dist/us/ssn.js.map +1 -1
  820. package/dist/uy/mod.d.ts +0 -2
  821. package/dist/uy/mod.js +1 -1
  822. package/dist/uy/mod.js.map +1 -1
  823. package/dist/uy/rut.d.ts +3 -10
  824. package/dist/uy/rut.js +9 -88
  825. package/dist/uy/rut.js.map +1 -1
  826. package/dist/ve/mod.d.ts +0 -2
  827. package/dist/ve/mod.js +1 -1
  828. package/dist/ve/mod.js.map +1 -1
  829. package/dist/ve/rif.d.ts +3 -10
  830. package/dist/ve/rif.js +9 -92
  831. package/dist/ve/rif.js.map +1 -1
  832. package/dist/vn/mod.d.ts +0 -2
  833. package/dist/vn/mod.js +1 -1
  834. package/dist/vn/mod.js.map +1 -1
  835. package/dist/vn/mst.d.ts +3 -6
  836. package/dist/vn/mst.js +9 -67
  837. package/dist/vn/mst.js.map +1 -1
  838. package/dist/za/idnr.d.ts +5 -12
  839. package/dist/za/idnr.js +10 -94
  840. package/dist/za/idnr.js.map +1 -1
  841. package/dist/za/mod.d.ts +0 -2
  842. package/dist/za/mod.js +1 -1
  843. package/dist/za/mod.js.map +1 -1
  844. package/index.cjs +3 -0
  845. package/package.json +38 -62
  846. package/registry.json +4829 -0
  847. package/registry.schema.json +94 -0
  848. package/LICENSE +0 -21
  849. package/README.md +0 -346
  850. package/dist/_checksums/keccak.d.ts +0 -5
  851. package/dist/_checksums/keccak.js +0 -118
  852. package/dist/_checksums/keccak.js.map +0 -1
  853. package/dist/_checksums/luhn.d.ts +0 -12
  854. package/dist/_checksums/luhn.js +0 -26
  855. package/dist/_checksums/luhn.js.map +0 -1
  856. package/dist/_checksums/mod1110.d.ts +0 -12
  857. package/dist/_checksums/mod1110.js +0 -25
  858. package/dist/_checksums/mod1110.js.map +0 -1
  859. package/dist/_checksums/mod112.d.ts +0 -24
  860. package/dist/_checksums/mod112.js +0 -53
  861. package/dist/_checksums/mod112.js.map +0 -1
  862. package/dist/_checksums/mod97.d.ts +0 -23
  863. package/dist/_checksums/mod97.js +0 -28
  864. package/dist/_checksums/mod97.js.map +0 -1
  865. package/dist/_checksums/sha256.d.ts +0 -5
  866. package/dist/_checksums/sha256.js +0 -164
  867. package/dist/_checksums/sha256.js.map +0 -1
  868. package/dist/_checksums/verhoeff.d.ts +0 -22
  869. package/dist/_checksums/verhoeff.js +0 -271
  870. package/dist/_checksums/verhoeff.js.map +0 -1
  871. package/dist/_checksums/weighted-sum.d.ts +0 -13
  872. package/dist/_checksums/weighted-sum.js +0 -22
  873. package/dist/_checksums/weighted-sum.js.map +0 -1
  874. package/dist/_util/arabic.d.ts +0 -19
  875. package/dist/_util/arabic.js +0 -41
  876. package/dist/_util/arabic.js.map +0 -1
  877. package/dist/_util/clean.d.ts +0 -13
  878. package/dist/_util/clean.js +0 -71
  879. package/dist/_util/clean.js.map +0 -1
  880. package/dist/_util/date.d.ts +0 -12
  881. package/dist/_util/date.js +0 -19
  882. package/dist/_util/date.js.map +0 -1
  883. package/dist/_util/generate.d.ts +0 -28
  884. package/dist/_util/generate.js +0 -43
  885. package/dist/_util/generate.js.map +0 -1
  886. package/dist/_util/result.d.ts +0 -8
  887. package/dist/_util/result.js +0 -13
  888. package/dist/_util/result.js.map +0 -1
  889. package/dist/_util/strings.d.ts +0 -21
  890. package/dist/_util/strings.js +0 -28
  891. package/dist/_util/strings.js.map +0 -1
  892. package/src/_checksums/keccak.ts +0 -145
  893. package/src/_checksums/luhn.ts +0 -24
  894. package/src/_checksums/mod1110.ts +0 -24
  895. package/src/_checksums/mod112.ts +0 -41
  896. package/src/_checksums/mod97.ts +0 -28
  897. package/src/_checksums/sha256.ts +0 -125
  898. package/src/_checksums/verhoeff.ts +0 -71
  899. package/src/_checksums/weighted-sum.ts +0 -23
  900. package/src/_util/arabic.ts +0 -48
  901. package/src/_util/clean.ts +0 -86
  902. package/src/_util/date.ts +0 -23
  903. package/src/_util/generate.ts +0 -62
  904. package/src/_util/result.ts +0 -10
  905. package/src/_util/strings.ts +0 -32
  906. package/src/ad/mod.ts +0 -1
  907. package/src/ad/nrt.ts +0 -123
  908. package/src/ae/eid.ts +0 -110
  909. package/src/ae/mod.ts +0 -1
  910. package/src/ai/mod.ts +0 -1
  911. package/src/ai/tin.ts +0 -102
  912. package/src/al/mod.ts +0 -1
  913. package/src/al/nipt.ts +0 -82
  914. package/src/am/mod.ts +0 -1
  915. package/src/am/tin.ts +0 -77
  916. package/src/ar/cbu.ts +0 -110
  917. package/src/ar/cuit.ts +0 -149
  918. package/src/ar/dni.ts +0 -83
  919. package/src/ar/mod.ts +0 -3
  920. package/src/at/businessid.ts +0 -78
  921. package/src/at/mod.ts +0 -4
  922. package/src/at/tin.ts +0 -94
  923. package/src/at/uid.ts +0 -96
  924. package/src/at/vnr.ts +0 -161
  925. package/src/au/abn.ts +0 -89
  926. package/src/au/acn.ts +0 -90
  927. package/src/au/mod.ts +0 -3
  928. package/src/au/tfn.ts +0 -89
  929. package/src/az/mod.ts +0 -1
  930. package/src/az/voen.ts +0 -131
  931. package/src/ba/jmbg.ts +0 -130
  932. package/src/ba/mod.ts +0 -1
  933. package/src/bd/mod.ts +0 -1
  934. package/src/bd/nid.ts +0 -143
  935. package/src/be/bis.ts +0 -109
  936. package/src/be/mod.ts +0 -3
  937. package/src/be/nn.ts +0 -129
  938. package/src/be/vat.ts +0 -111
  939. package/src/bg/egn.ts +0 -164
  940. package/src/bg/mod.ts +0 -3
  941. package/src/bg/pnf.ts +0 -90
  942. package/src/bg/vat.ts +0 -160
  943. package/src/bh/cpr.ts +0 -94
  944. package/src/bh/mod.ts +0 -1
  945. package/src/bic.ts +0 -105
  946. package/src/br/cnpj.ts +0 -156
  947. package/src/br/cpf.ts +0 -118
  948. package/src/br/mod.ts +0 -2
  949. package/src/by/mod.ts +0 -1
  950. package/src/by/unp.ts +0 -163
  951. package/src/bz/mod.ts +0 -1
  952. package/src/bz/tin.ts +0 -122
  953. package/src/ca/bn.ts +0 -111
  954. package/src/ca/mod.ts +0 -2
  955. package/src/ca/sin.ts +0 -95
  956. package/src/ch/mod.ts +0 -3
  957. package/src/ch/ssn.ts +0 -99
  958. package/src/ch/uid.ts +0 -112
  959. package/src/ch/vat.ts +0 -89
  960. package/src/cl/mod.ts +0 -1
  961. package/src/cl/rut.ts +0 -124
  962. package/src/cn/mod.ts +0 -2
  963. package/src/cn/ric.ts +0 -184
  964. package/src/cn/uscc.ts +0 -127
  965. package/src/co/mod.ts +0 -1
  966. package/src/co/nit.ts +0 -116
  967. package/src/cr/cpf.ts +0 -116
  968. package/src/cr/mod.ts +0 -1
  969. package/src/creditcard.ts +0 -194
  970. package/src/crypto/btcbase58.ts +0 -144
  971. package/src/crypto/btcbech32.ts +0 -210
  972. package/src/crypto/eth.ts +0 -114
  973. package/src/crypto/mod.ts +0 -4
  974. package/src/crypto/wallet.ts +0 -67
  975. package/src/cu/mod.ts +0 -1
  976. package/src/cu/ni.ts +0 -146
  977. package/src/cy/mod.ts +0 -1
  978. package/src/cy/vat.ts +0 -134
  979. package/src/cz/dic.ts +0 -140
  980. package/src/cz/ico.ts +0 -86
  981. package/src/cz/mod.ts +0 -3
  982. package/src/cz/rc.ts +0 -222
  983. package/src/de/handelsreg.ts +0 -122
  984. package/src/de/idnr.ts +0 -147
  985. package/src/de/mod.ts +0 -5
  986. package/src/de/stnr.ts +0 -222
  987. package/src/de/svnr.ts +0 -171
  988. package/src/de/vat.ts +0 -102
  989. package/src/dk/cpr.ts +0 -137
  990. package/src/dk/cvr.ts +0 -91
  991. package/src/dk/mod.ts +0 -3
  992. package/src/dk/vat.ts +0 -96
  993. package/src/do/mod.ts +0 -1
  994. package/src/do/rnc.ts +0 -130
  995. package/src/ec/mod.ts +0 -1
  996. package/src/ec/ruc.ts +0 -199
  997. package/src/ee/ik.ts +0 -167
  998. package/src/ee/mod.ts +0 -3
  999. package/src/ee/registrikood.ts +0 -86
  1000. package/src/ee/vat.ts +0 -89
  1001. package/src/eg/mod.ts +0 -1
  1002. package/src/eg/tn.ts +0 -107
  1003. package/src/es/cif.ts +0 -108
  1004. package/src/es/dni.ts +0 -94
  1005. package/src/es/mod.ts +0 -5
  1006. package/src/es/nie.ts +0 -111
  1007. package/src/es/nss.ts +0 -113
  1008. package/src/es/vat.ts +0 -186
  1009. package/src/eu/mod.ts +0 -1
  1010. package/src/eu/vat.ts +0 -220
  1011. package/src/fi/hetu.ts +0 -200
  1012. package/src/fi/mod.ts +0 -3
  1013. package/src/fi/vat.ts +0 -87
  1014. package/src/fi/ytunnus.ts +0 -87
  1015. package/src/fr/mod.ts +0 -5
  1016. package/src/fr/nif.ts +0 -97
  1017. package/src/fr/nir.ts +0 -197
  1018. package/src/fr/siren.ts +0 -83
  1019. package/src/fr/siret.ts +0 -126
  1020. package/src/fr/tva.ts +0 -150
  1021. package/src/gb/mod.ts +0 -5
  1022. package/src/gb/nhs.ts +0 -92
  1023. package/src/gb/nino.ts +0 -158
  1024. package/src/gb/sedol.ts +0 -143
  1025. package/src/gb/utr.ts +0 -85
  1026. package/src/gb/vat.ts +0 -162
  1027. package/src/ge/mod.ts +0 -1
  1028. package/src/ge/pin.ts +0 -75
  1029. package/src/gh/mod.ts +0 -1
  1030. package/src/gh/tin.ts +0 -105
  1031. package/src/gr/amka.ts +0 -108
  1032. package/src/gr/mod.ts +0 -2
  1033. package/src/gr/vat.ts +0 -100
  1034. package/src/gt/mod.ts +0 -1
  1035. package/src/gt/nit.ts +0 -123
  1036. package/src/hk/hkid.ts +0 -136
  1037. package/src/hk/mod.ts +0 -1
  1038. package/src/hr/mod.ts +0 -1
  1039. package/src/hr/vat.ts +0 -83
  1040. package/src/hu/mod.ts +0 -1
  1041. package/src/hu/vat.ts +0 -87
  1042. package/src/iban.ts +0 -344
  1043. package/src/id/mod.ts +0 -1
  1044. package/src/id/npwp.ts +0 -191
  1045. package/src/ie/mod.ts +0 -2
  1046. package/src/ie/pps.ts +0 -109
  1047. package/src/ie/vat.ts +0 -142
  1048. package/src/il/idnr.ts +0 -91
  1049. package/src/il/mod.ts +0 -1
  1050. package/src/in/aadhaar.ts +0 -100
  1051. package/src/in/gstin.ts +0 -175
  1052. package/src/in/mod.ts +0 -3
  1053. package/src/in/pan.ts +0 -97
  1054. package/src/index.ts +0 -123
  1055. package/src/iq/mod.ts +0 -1
  1056. package/src/iq/nid.ts +0 -75
  1057. package/src/ir/mod.ts +0 -1
  1058. package/src/ir/nid.ts +0 -124
  1059. package/src/is/kennitala.ts +0 -129
  1060. package/src/is/mod.ts +0 -2
  1061. package/src/is/vsk.ts +0 -67
  1062. package/src/isin.ts +0 -124
  1063. package/src/it/codicefiscale.ts +0 -332
  1064. package/src/it/iva.ts +0 -119
  1065. package/src/it/mod.ts +0 -2
  1066. package/src/jp/cn.ts +0 -95
  1067. package/src/jp/mod.ts +0 -2
  1068. package/src/jp/mynumber.ts +0 -107
  1069. package/src/kr/brn.ts +0 -105
  1070. package/src/kr/mod.ts +0 -2
  1071. package/src/kr/rrn.ts +0 -189
  1072. package/src/kw/civil.ts +0 -161
  1073. package/src/kw/mod.ts +0 -1
  1074. package/src/kz/iin.ts +0 -184
  1075. package/src/kz/mod.ts +0 -1
  1076. package/src/lei.ts +0 -102
  1077. package/src/li/mod.ts +0 -1
  1078. package/src/li/peid.ts +0 -70
  1079. package/src/lk/mod.ts +0 -1
  1080. package/src/lk/nic.ts +0 -233
  1081. package/src/lt/asmens.ts +0 -124
  1082. package/src/lt/mod.ts +0 -2
  1083. package/src/lt/vat.ts +0 -114
  1084. package/src/lu/mod.ts +0 -1
  1085. package/src/lu/vat.ts +0 -85
  1086. package/src/luhn.ts +0 -79
  1087. package/src/lv/mod.ts +0 -1
  1088. package/src/lv/vat.ts +0 -169
  1089. package/src/ma/ice.ts +0 -83
  1090. package/src/ma/mod.ts +0 -1
  1091. package/src/mc/mod.ts +0 -1
  1092. package/src/mc/tva.ts +0 -78
  1093. package/src/md/idno.ts +0 -90
  1094. package/src/md/mod.ts +0 -1
  1095. package/src/me/mod.ts +0 -1
  1096. package/src/me/pib.ts +0 -83
  1097. package/src/mk/edb.ts +0 -95
  1098. package/src/mk/mod.ts +0 -1
  1099. package/src/mt/mod.ts +0 -1
  1100. package/src/mt/vat.ts +0 -93
  1101. package/src/mu/brn.ts +0 -106
  1102. package/src/mu/mod.ts +0 -1
  1103. package/src/mx/clabe.ts +0 -115
  1104. package/src/mx/curp.ts +0 -247
  1105. package/src/mx/mod.ts +0 -3
  1106. package/src/mx/rfc.ts +0 -179
  1107. package/src/my/mod.ts +0 -1
  1108. package/src/my/nric.ts +0 -260
  1109. package/src/ng/mod.ts +0 -1
  1110. package/src/ng/nin.ts +0 -76
  1111. package/src/ni/mod.ts +0 -1
  1112. package/src/ni/ruc.ts +0 -180
  1113. package/src/nl/bsn.ts +0 -91
  1114. package/src/nl/kvk.ts +0 -63
  1115. package/src/nl/mod.ts +0 -3
  1116. package/src/nl/vat.ts +0 -95
  1117. package/src/no/fodselsnummer.ts +0 -197
  1118. package/src/no/mod.ts +0 -3
  1119. package/src/no/mva.ts +0 -77
  1120. package/src/no/orgnr.ts +0 -83
  1121. package/src/nz/ird.ts +0 -132
  1122. package/src/nz/mod.ts +0 -1
  1123. package/src/pa/mod.ts +0 -1
  1124. package/src/pa/ruc.ts +0 -387
  1125. package/src/patterns.ts +0 -390
  1126. package/src/pe/mod.ts +0 -1
  1127. package/src/pe/ruc.ts +0 -124
  1128. package/src/ph/mod.ts +0 -1
  1129. package/src/ph/philid.ts +0 -80
  1130. package/src/pk/cnic.ts +0 -109
  1131. package/src/pk/mod.ts +0 -1
  1132. package/src/pl/mod.ts +0 -3
  1133. package/src/pl/nip.ts +0 -100
  1134. package/src/pl/pesel.ts +0 -155
  1135. package/src/pl/regon.ts +0 -102
  1136. package/src/pt/cc.ts +0 -112
  1137. package/src/pt/mod.ts +0 -2
  1138. package/src/pt/vat.ts +0 -98
  1139. package/src/ro/cnp.ts +0 -179
  1140. package/src/ro/mod.ts +0 -2
  1141. package/src/ro/vat.ts +0 -99
  1142. package/src/rs/mod.ts +0 -1
  1143. package/src/rs/pib.ts +0 -87
  1144. package/src/ru/inn.ts +0 -113
  1145. package/src/ru/mod.ts +0 -1
  1146. package/src/se/mod.ts +0 -3
  1147. package/src/se/orgnr.ts +0 -85
  1148. package/src/se/personnummer.ts +0 -183
  1149. package/src/se/vat.ts +0 -97
  1150. package/src/sg/mod.ts +0 -1
  1151. package/src/sg/uen.ts +0 -288
  1152. package/src/si/emso.ts +0 -178
  1153. package/src/si/mod.ts +0 -2
  1154. package/src/si/vat.ts +0 -113
  1155. package/src/sk/dic.ts +0 -110
  1156. package/src/sk/ico.ts +0 -40
  1157. package/src/sk/mod.ts +0 -3
  1158. package/src/sk/rc.ts +0 -44
  1159. package/src/th/mod.ts +0 -1
  1160. package/src/th/tin.ts +0 -106
  1161. package/src/tr/mod.ts +0 -2
  1162. package/src/tr/tckimlik.ts +0 -115
  1163. package/src/tr/vkn.ts +0 -101
  1164. package/src/tw/mod.ts +0 -1
  1165. package/src/tw/ubn.ts +0 -112
  1166. package/src/types.ts +0 -262
  1167. package/src/ua/edrpou.ts +0 -108
  1168. package/src/ua/mod.ts +0 -1
  1169. package/src/us/ein.ts +0 -261
  1170. package/src/us/itin.ts +0 -129
  1171. package/src/us/mod.ts +0 -4
  1172. package/src/us/rtn.ts +0 -139
  1173. package/src/us/ssn.ts +0 -121
  1174. package/src/uy/mod.ts +0 -1
  1175. package/src/uy/rut.ts +0 -150
  1176. package/src/ve/mod.ts +0 -1
  1177. package/src/ve/rif.ts +0 -147
  1178. package/src/vn/mod.ts +0 -1
  1179. package/src/vn/mst.ts +0 -132
  1180. package/src/za/idnr.ts +0 -159
  1181. package/src/za/mod.ts +0 -1
package/dist/es/vat.js CHANGED
@@ -1,98 +1,13 @@
1
- import { clean } from "../_util/clean.js";
2
- import { randomDigits } from "../_util/generate.js";
3
- import { err } from "../_util/result.js";
4
- import { isdigits } from "../_util/strings.js";
5
- //#region src/es/vat.ts
6
- const DNI_LETTERS = "TRWAGMYFPDXBNJZSQVHLCKE";
7
- const CIF_LETTERS = "JABCDEFGHI";
8
- const compact = (value) => {
9
- let v = clean(value, " -/.");
10
- if (v.startsWith("ES") || v.startsWith("es")) v = v.slice(2);
11
- return v.toUpperCase();
12
- };
13
- const cifChecksum = (digits) => {
14
- let even = 0;
15
- let odd = 0;
16
- for (let i = 0; i < 7; i++) {
17
- const d = Number(digits.charAt(i));
18
- if (i % 2 === 0) {
19
- const doubled = d * 2;
20
- odd += Math.floor(doubled / 10) + doubled % 10;
21
- } else even += d;
22
- }
23
- return (10 - (even + odd) % 10) % 10;
24
- };
25
- const validate = (value) => {
26
- const v = compact(value);
27
- if (v.length !== 9) return err("INVALID_LENGTH", "Spanish VAT number must be 9 characters");
28
- const first = v.charAt(0);
29
- const last = v.charAt(8);
30
- if (isdigits(v.slice(0, 8))) {
31
- if (last !== DNI_LETTERS.charAt(Number.parseInt(v.slice(0, 8), 10) % 23)) return err("INVALID_CHECKSUM", "Spanish DNI check letter mismatch");
32
- return {
33
- valid: true,
34
- compact: v
35
- };
36
- }
37
- if (first === "X" || first === "Y" || first === "Z") {
38
- let prefix = "2";
39
- if (first === "X") prefix = "0";
40
- else if (first === "Y") prefix = "1";
41
- const digits = prefix + v.slice(1, 8);
42
- if (!isdigits(digits) || !isdigits(v.slice(1, 8))) return err("INVALID_FORMAT", "Spanish NIE must have 7 digits after prefix");
43
- if (last !== DNI_LETTERS.charAt(Number.parseInt(digits, 10) % 23)) return err("INVALID_CHECKSUM", "Spanish NIE check letter mismatch");
44
- return {
45
- valid: true,
46
- compact: v
47
- };
48
- }
49
- if (first === "K" || first === "L" || first === "M") {
50
- if (!isdigits(v.slice(1, 8))) return err("INVALID_FORMAT", "Spanish K/L/M number must have 7 digits");
51
- if (last !== DNI_LETTERS.charAt(Number.parseInt(v.slice(1, 8), 10) % 23)) return err("INVALID_CHECKSUM", "Spanish K/L/M check letter mismatch");
52
- return {
53
- valid: true,
54
- compact: v
55
- };
56
- }
57
- if ("ABCDEFGHJNPQRSUVW".includes(first)) {
58
- if (!isdigits(v.slice(1, 8))) return err("INVALID_FORMAT", "Spanish CIF must have 7 digits after prefix");
59
- const check = cifChecksum(v.slice(1, 8));
60
- if (last !== String(check) && last !== CIF_LETTERS.charAt(check)) return err("INVALID_CHECKSUM", "Spanish CIF check digit/letter mismatch");
61
- return {
62
- valid: true,
63
- compact: v
64
- };
65
- }
66
- return err("INVALID_FORMAT", "Spanish VAT number has invalid format");
67
- };
68
- const format = (value) => `ES${compact(value)}`;
69
- /** Generate a random valid Spanish VAT (DNI form). */
70
- const generate = () => {
71
- const letters = "TRWAGMYFPDXBNJZSQVHLCKE";
72
- const num = randomDigits(8);
73
- return num + letters.charAt(Number(num) % 23);
74
- };
75
- /** Spanish VAT Number. */
76
- const vat = {
77
- name: "Spanish VAT Number",
78
- localName: "Número de Identificación Fiscal",
79
- abbreviation: "NIF",
80
- aliases: [
81
- "NIF",
82
- "CIF",
83
- "número de identificación fiscal"
84
- ],
85
- candidatePattern: "ES[A-Z]\\d{7}[A-Z\\d]",
86
- scope: "country",
87
- country: "ES",
88
- entityType: "any",
89
- sourceUrl: "https://www.agenciatributaria.es/",
90
- examples: ["12345678Z", "A78304516"],
91
- compact,
92
- format,
93
- validate,
94
- generate
95
- };
1
+ import { createValidator, getBinding } from "../runtime.js";
2
+ //#region src/generated/es/vat.ts
3
+ const vat = createValidator("es.vat", 68);
4
+ const compact = vat.compact;
5
+ const format = vat.format;
6
+ const validate = vat.validate;
7
+ const generate = () => vat.generate?.() ?? (() => {
8
+ throw new Error("Validator es.vat cannot generate values");
9
+ })();
10
+ const cifChecksum = (digits) => getBinding().esVatCifChecksum(digits);
96
11
  //#endregion
97
12
  export { cifChecksum, compact, vat as default, format, generate, validate };
98
13
 
@@ -1 +1 @@
1
- {"version":3,"file":"vat.js","names":[],"sources":["../../src/es/vat.ts"],"sourcesContent":["/**\n * NIF/CIF (Spanish VAT number).\n *\n * 9 characters with 4 subtypes: DNI, NIE, CIF,\n * and K/L/M personal numbers.\n *\n * @see https://www.vatify.eu/spain-vat-number.html\n * @see https://www.agenciatributaria.es/\n */\n\nimport type {\n ValidateResult,\n CountryValidator,\n} from \"../types\";\n\nimport { clean } from \"#util/clean\";\nimport { randomDigits } from \"#util/generate\";\nimport { err } from \"#util/result\";\nimport { isdigits } from \"#util/strings\";\n\nconst DNI_LETTERS = \"TRWAGMYFPDXBNJZSQVHLCKE\";\nconst CIF_LETTERS = \"JABCDEFGHI\";\n\nconst compact = (value: string): string => {\n let v = clean(value, \" -/.\");\n if (v.startsWith(\"ES\") || v.startsWith(\"es\")) {\n v = v.slice(2);\n }\n return v.toUpperCase();\n};\n\nconst cifChecksum = (digits: string): number => {\n let even = 0;\n let odd = 0;\n for (let i = 0; i < 7; i++) {\n const d = Number(digits.charAt(i));\n if (i % 2 === 0) {\n // Odd positions (1-indexed): double and sum digits\n const doubled = d * 2;\n odd += Math.floor(doubled / 10) + (doubled % 10);\n } else {\n even += d;\n }\n }\n return (10 - ((even + odd) % 10)) % 10;\n};\n\nconst validate = (value: string): ValidateResult => {\n const v = compact(value);\n if (v.length !== 9) {\n return err(\n \"INVALID_LENGTH\",\n \"Spanish VAT number must be 9 characters\",\n );\n }\n\n const first = v.charAt(0);\n const last = v.charAt(8);\n\n // DNI: 8 digits + letter\n if (isdigits(v.slice(0, 8))) {\n const expected = DNI_LETTERS.charAt(\n Number.parseInt(v.slice(0, 8), 10) % 23,\n );\n if (last !== expected) {\n return err(\n \"INVALID_CHECKSUM\",\n \"Spanish DNI check letter mismatch\",\n );\n }\n return { valid: true, compact: v };\n }\n\n // NIE: X/Y/Z + 7 digits + letter\n if (first === \"X\" || first === \"Y\" || first === \"Z\") {\n let prefix = \"2\";\n if (first === \"X\") {\n prefix = \"0\";\n } else if (first === \"Y\") {\n prefix = \"1\";\n }\n const digits = prefix + v.slice(1, 8);\n if (!isdigits(digits) || !isdigits(v.slice(1, 8))) {\n return err(\n \"INVALID_FORMAT\",\n \"Spanish NIE must have 7 digits after prefix\",\n );\n }\n const expected = DNI_LETTERS.charAt(\n Number.parseInt(digits, 10) % 23,\n );\n if (last !== expected) {\n return err(\n \"INVALID_CHECKSUM\",\n \"Spanish NIE check letter mismatch\",\n );\n }\n return { valid: true, compact: v };\n }\n\n // K, L, M: personal number, letter + 7 digits +\n // check letter\n if (first === \"K\" || first === \"L\" || first === \"M\") {\n if (!isdigits(v.slice(1, 8))) {\n return err(\n \"INVALID_FORMAT\",\n \"Spanish K/L/M number must have 7 digits\",\n );\n }\n const expected = DNI_LETTERS.charAt(\n Number.parseInt(v.slice(1, 8), 10) % 23,\n );\n if (last !== expected) {\n return err(\n \"INVALID_CHECKSUM\",\n \"Spanish K/L/M check letter mismatch\",\n );\n }\n return { valid: true, compact: v };\n }\n\n // CIF: letter + 7 digits + check digit/letter\n const CIF_PREFIXES = \"ABCDEFGHJNPQRSUVW\";\n if (CIF_PREFIXES.includes(first)) {\n if (!isdigits(v.slice(1, 8))) {\n return err(\n \"INVALID_FORMAT\",\n \"Spanish CIF must have 7 digits after prefix\",\n );\n }\n const check = cifChecksum(v.slice(1, 8));\n // Accept either numeric or alphabetic check digit\n // for all CIF prefixes (sources conflict on which\n // prefixes require which type)\n if (\n last !== String(check) &&\n last !== CIF_LETTERS.charAt(check)\n ) {\n return err(\n \"INVALID_CHECKSUM\",\n \"Spanish CIF check digit/letter mismatch\",\n );\n }\n return { valid: true, compact: v };\n }\n\n return err(\n \"INVALID_FORMAT\",\n \"Spanish VAT number has invalid format\",\n );\n};\n\nconst format = (value: string): string =>\n `ES${compact(value)}`;\n\n/** Generate a random valid Spanish VAT (DNI form). */\nconst generate = (): string => {\n const letters = \"TRWAGMYFPDXBNJZSQVHLCKE\";\n const num = randomDigits(8);\n return num + letters.charAt(Number(num) % 23);\n};\n\n/** Spanish VAT Number. */\nconst vat: CountryValidator<\"ES\"> = {\n name: \"Spanish VAT Number\",\n localName: \"Número de Identificación Fiscal\",\n abbreviation: \"NIF\",\n aliases: [\n \"NIF\",\n \"CIF\",\n \"número de identificación fiscal\",\n ] as const,\n candidatePattern: \"ES[A-Z]\\\\d{7}[A-Z\\\\d]\",\n scope: \"country\",\n country: \"ES\",\n entityType: \"any\",\n sourceUrl: \"https://www.agenciatributaria.es/\",\n examples: [\"12345678Z\", \"A78304516\"] as const,\n compact,\n format,\n validate,\n generate,\n};\n\nexport default vat;\nexport { cifChecksum, compact, format, validate, generate };\n"],"mappings":"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"}
1
+ {"version":3,"file":"vat.js","names":[],"sources":["../../src/generated/es/vat.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator, getBinding } from \"../../runtime\";\nimport type { CountryValidator } from \"../../types\";\n\nconst vat: CountryValidator<\"ES\"> = createValidator(\n \"es.vat\",\n 68,\n);\n\nexport default vat;\nexport const compact = vat.compact;\nexport const format = vat.format;\nexport const validate = vat.validate;\nexport const generate = (): string =>\n vat.generate?.() ??\n (() => {\n throw new Error(\n \"Validator es.vat cannot generate values\",\n );\n })();\nexport const cifChecksum = (digits: string): number =>\n getBinding().esVatCifChecksum(digits);\n"],"mappings":";;AAIA,MAAM,MAA8B,gBAClC,UACA,EACF;AAGA,MAAa,UAAU,IAAI;AAC3B,MAAa,SAAS,IAAI;AAC1B,MAAa,WAAW,IAAI;AAC5B,MAAa,iBACX,IAAI,WAAW,YACR;CACL,MAAM,IAAI,MACR,yCACF;AACF,EAAA,CAAG;AACL,MAAa,eAAe,WAC1B,WAAW,CAAC,CAAC,iBAAiB,MAAM"}
package/dist/eu/mod.d.ts CHANGED
@@ -1,9 +1,7 @@
1
- import euVat from "./vat.js";
2
-
3
- //#region src/eu/mod.d.ts
1
+ import vat from "./vat.js";
4
2
  declare namespace mod_d_exports {
5
- export { euVat as vat };
3
+ export { vat };
6
4
  }
7
5
  //#endregion
8
- export { mod_d_exports, euVat as vat };
6
+ export { mod_d_exports, vat };
9
7
  //# sourceMappingURL=mod.d.ts.map
package/dist/eu/mod.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { __exportAll } from "../_virtual/_rolldown/runtime.js";
2
- import euVat from "./vat.js";
3
- //#region src/eu/mod.ts
4
- var eu_exports = /* @__PURE__ */ __exportAll({ vat: () => euVat });
2
+ import vat from "./vat.js";
3
+ //#region src/generated/eu/mod.ts
4
+ var eu_exports = /* @__PURE__ */ __exportAll({ vat: () => vat });
5
5
  //#endregion
6
- export { eu_exports, euVat as vat };
6
+ export { eu_exports, vat };
7
7
 
8
8
  //# sourceMappingURL=mod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.js","names":[],"sources":["../../src/eu/mod.ts"],"sourcesContent":["export { default as vat } from \"./vat\";\n"],"mappings":""}
1
+ {"version":3,"file":"mod.js","names":[],"sources":["../../src/generated/eu/mod.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nexport { default as vat } from \"./vat\";\n"],"mappings":""}
package/dist/eu/vat.d.ts CHANGED
@@ -1,21 +1,10 @@
1
1
  import { GlobalValidator, ValidateResult } from "../types.js";
2
-
3
- //#region src/eu/vat.d.ts
2
+ //#region src/generated/eu/vat.d.ts
3
+ declare const vat: GlobalValidator;
4
4
  declare const compact: (value: string) => string;
5
- declare const validate: (value: string) => ValidateResult;
6
- /**
7
- * Format returns the compact EU VAT form:
8
- * `CC` + country-compacted number. Equivalent to
9
- * compact() because country format() methods
10
- * prepend their own prefix (e.g., AT UID format
11
- * returns "ATU..."), which would cause double-
12
- * prefixing if used here.
13
- */
14
5
  declare const format: (value: string) => string;
15
- /** Generate a random EU VAT number from a member validator. */
6
+ declare const validate: (value: string) => ValidateResult;
16
7
  declare const generate: () => string;
17
- /** European Union VAT Number. */
18
- declare const euVat: GlobalValidator;
19
8
  //#endregion
20
- export { compact, euVat as default, format, generate, validate };
9
+ export { compact, vat as default, format, generate, validate };
21
10
  //# sourceMappingURL=vat.d.ts.map
package/dist/eu/vat.js CHANGED
@@ -1,187 +1,13 @@
1
- import { clean } from "../_util/clean.js";
2
- import { randomInt } from "../_util/generate.js";
3
- import { err } from "../_util/result.js";
4
- import uid from "../at/uid.js";
5
- import vat from "../be/vat.js";
6
- import vat$1 from "../bg/vat.js";
7
- import vat$2 from "../cy/vat.js";
8
- import dic from "../cz/dic.js";
9
- import vat$3 from "../de/vat.js";
10
- import vat$4 from "../dk/vat.js";
11
- import vat$5 from "../ee/vat.js";
12
- import vat$6 from "../es/vat.js";
13
- import vat$7 from "../fi/vat.js";
14
- import tva from "../fr/tva.js";
15
- import vat$8 from "../gb/vat.js";
16
- import vat$9 from "../gr/vat.js";
17
- import vat$10 from "../hr/vat.js";
18
- import vat$11 from "../hu/vat.js";
19
- import vat$12 from "../ie/vat.js";
20
- import iva from "../it/iva.js";
21
- import vat$13 from "../lt/vat.js";
22
- import vat$14 from "../lu/vat.js";
23
- import vat$15 from "../lv/vat.js";
24
- import vat$16 from "../mt/vat.js";
25
- import vat$17 from "../nl/vat.js";
26
- import nip from "../pl/nip.js";
27
- import vat$18 from "../pt/vat.js";
28
- import vat$19 from "../ro/vat.js";
29
- import vat$20 from "../se/vat.js";
30
- import vat$21 from "../si/vat.js";
31
- import dic$1 from "../sk/dic.js";
32
- //#region src/eu/vat.ts
33
- /**
34
- * EU VAT (European Union VAT Number).
35
- *
36
- * Dispatcher that routes to per-country VAT
37
- * validators. Extracts the 2-letter country prefix
38
- * and delegates to the matching country module.
39
- *
40
- * Special cases:
41
- * - EL → Greece (gr.vat)
42
- * - XI → Northern Ireland (gb.vat)
43
- *
44
- * @see https://ec.europa.eu/taxation_customs/vies/
45
- */
46
- /**
47
- * Map of EU VAT country prefixes to their
48
- * country-specific validators.
49
- */
50
- const VALIDATORS = {
51
- AT: uid,
52
- BE: vat,
53
- BG: vat$1,
54
- CY: vat$2,
55
- CZ: dic,
56
- DE: vat$3,
57
- DK: vat$4,
58
- EE: vat$5,
59
- EL: vat$9,
60
- ES: vat$6,
61
- FI: vat$7,
62
- FR: tva,
63
- GR: vat$9,
64
- HR: vat$10,
65
- HU: vat$11,
66
- IE: vat$12,
67
- IT: iva,
68
- LT: vat$13,
69
- LU: vat$14,
70
- LV: vat$15,
71
- MT: vat$16,
72
- NL: vat$17,
73
- PL: nip,
74
- PT: vat$18,
75
- RO: vat$19,
76
- SE: vat$20,
77
- SI: vat$21,
78
- SK: dic$1,
79
- XI: vat$8
80
- };
81
- /**
82
- * Extract the 2-letter country prefix and the
83
- * remaining number from an EU VAT string.
84
- */
85
- const splitPrefix = (value) => {
86
- const v = clean(value, " -").toUpperCase();
87
- if (v.length < 3) return void 0;
88
- const cc = v.slice(0, 2);
89
- if (!/^[A-Z]{2}$/.test(cc)) return void 0;
90
- return {
91
- cc,
92
- rest: v.slice(2)
93
- };
94
- };
95
- const compact = (value) => {
96
- const parts = splitPrefix(value);
97
- if (parts === void 0) return clean(value, " -").toUpperCase();
98
- const validator = VALIDATORS[parts.cc];
99
- if (validator === void 0) return clean(value, " -").toUpperCase();
100
- return `${parts.cc}${validator.compact(parts.rest)}`;
101
- };
102
- const validate = (value) => {
103
- const parts = splitPrefix(value);
104
- if (parts === void 0) return err("INVALID_FORMAT", "EU VAT must start with a 2-letter country code");
105
- const validator = VALIDATORS[parts.cc];
106
- if (validator === void 0) return err("INVALID_COMPONENT", `Unsupported EU VAT country: ${parts.cc}`);
107
- const result = validator.validate(parts.rest);
108
- if (!result.valid) return result;
109
- return {
110
- valid: true,
111
- compact: `${parts.cc}${result.compact}`
112
- };
113
- };
114
- /**
115
- * Format returns the compact EU VAT form:
116
- * `CC` + country-compacted number. Equivalent to
117
- * compact() because country format() methods
118
- * prepend their own prefix (e.g., AT UID format
119
- * returns "ATU..."), which would cause double-
120
- * prefixing if used here.
121
- */
122
- const format = (value) => {
123
- const parts = splitPrefix(value);
124
- if (parts === void 0) return value;
125
- const validator = VALIDATORS[parts.cc];
126
- if (validator === void 0) return value;
127
- return `${parts.cc}${validator.compact(parts.rest)}`;
128
- };
129
- const GENERATORS = [
130
- ["AT", uid],
131
- ["BE", vat],
132
- ["BG", vat$1],
133
- ["CY", vat$2],
134
- ["CZ", dic],
135
- ["DE", vat$3],
136
- ["DK", vat$4],
137
- ["EE", vat$5],
138
- ["ES", vat$6],
139
- ["FI", vat$7],
140
- ["FR", tva],
141
- ["GR", vat$9],
142
- ["HR", vat$10],
143
- ["HU", vat$11],
144
- ["IE", vat$12],
145
- ["IT", iva],
146
- ["LT", vat$13],
147
- ["LU", vat$14],
148
- ["LV", vat$15],
149
- ["MT", vat$16],
150
- ["NL", vat$17],
151
- ["PL", nip],
152
- ["PT", vat$18],
153
- ["RO", vat$19],
154
- ["SE", vat$20],
155
- ["SI", vat$21],
156
- ["SK", dic$1]
157
- ];
158
- /** Generate a random EU VAT number from a member validator. */
159
- const generate = () => {
160
- for (;;) {
161
- const candidate = GENERATORS[randomInt(0, GENERATORS.length - 1)];
162
- if (!candidate) continue;
163
- const [prefix, validator] = candidate;
164
- if (validator.generate === void 0) continue;
165
- return `${prefix}${validator.generate()}`;
166
- }
167
- };
168
- /** European Union VAT Number. */
169
- const euVat = {
170
- scope: "global",
171
- name: "EU VAT Number",
172
- localName: "EU VAT Number",
173
- abbreviation: "EU VAT",
174
- aliases: ["EU VAT", "VAT identification number"],
175
- candidatePattern: "[A-Z]{2}\\d{8,12}",
176
- entityType: "company",
177
- sourceUrl: "https://ec.europa.eu/taxation_customs/vies/",
178
- examples: ["ATU13585627", "DE136695976"],
179
- compact,
180
- format,
181
- validate,
182
- generate
183
- };
1
+ import { createValidator } from "../runtime.js";
2
+ //#region src/generated/eu/vat.ts
3
+ const vat = createValidator("eu.vat", 69);
4
+ const compact = vat.compact;
5
+ const format = vat.format;
6
+ const validate = vat.validate;
7
+ const generate = () => vat.generate?.() ?? (() => {
8
+ throw new Error("Validator eu.vat cannot generate values");
9
+ })();
184
10
  //#endregion
185
- export { compact, euVat as default, format, generate, validate };
11
+ export { compact, vat as default, format, generate, validate };
186
12
 
187
13
  //# sourceMappingURL=vat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vat.js","names":["atUid","beVat","bgVat","cyVat","czDic","deVat","dkVat","eeVat","grVat","esVat","fiVat","frTva","hrVat","huVat","ieVat","itIva","ltVat","luVat","lvVat","mtVat","nlVat","plNip","ptVat","roVat","seVat","siVat","skDic","gbVat"],"sources":["../../src/eu/vat.ts"],"sourcesContent":["/**\n * EU VAT (European Union VAT Number).\n *\n * Dispatcher that routes to per-country VAT\n * validators. Extracts the 2-letter country prefix\n * and delegates to the matching country module.\n *\n * Special cases:\n * - EL → Greece (gr.vat)\n * - XI → Northern Ireland (gb.vat)\n *\n * @see https://ec.europa.eu/taxation_customs/vies/\n */\n\nimport atUid from \"../at/uid\";\nimport beVat from \"../be/vat\";\nimport bgVat from \"../bg/vat\";\nimport cyVat from \"../cy/vat\";\nimport czDic from \"../cz/dic\";\nimport deVat from \"../de/vat\";\nimport dkVat from \"../dk/vat\";\nimport eeVat from \"../ee/vat\";\nimport esVat from \"../es/vat\";\nimport fiVat from \"../fi/vat\";\nimport frTva from \"../fr/tva\";\nimport gbVat from \"../gb/vat\";\nimport grVat from \"../gr/vat\";\nimport hrVat from \"../hr/vat\";\nimport huVat from \"../hu/vat\";\nimport ieVat from \"../ie/vat\";\nimport itIva from \"../it/iva\";\nimport ltVat from \"../lt/vat\";\nimport luVat from \"../lu/vat\";\nimport lvVat from \"../lv/vat\";\nimport mtVat from \"../mt/vat\";\nimport nlVat from \"../nl/vat\";\nimport plNip from \"../pl/nip\";\nimport ptVat from \"../pt/vat\";\nimport roVat from \"../ro/vat\";\nimport seVat from \"../se/vat\";\nimport siVat from \"../si/vat\";\nimport skDic from \"../sk/dic\";\nimport type {\n GlobalValidator,\n ValidateResult,\n} from \"../types\";\n\nimport { clean } from \"#util/clean\";\nimport { randomInt } from \"#util/generate\";\nimport { err } from \"#util/result\";\n\ntype CountryValidator = {\n compact: (value: string) => string;\n validate: (value: string) => ValidateResult;\n format: (value: string) => string;\n};\n\n/**\n * Map of EU VAT country prefixes to their\n * country-specific validators.\n */\nconst VALIDATORS: Record<string, CountryValidator> = {\n AT: atUid,\n BE: beVat,\n BG: bgVat,\n CY: cyVat,\n CZ: czDic,\n DE: deVat,\n DK: dkVat,\n EE: eeVat,\n EL: grVat, // Greece uses EL prefix in EU VAT\n ES: esVat,\n FI: fiVat,\n FR: frTva,\n GR: grVat,\n HR: hrVat,\n HU: huVat,\n IE: ieVat,\n IT: itIva,\n LT: ltVat,\n LU: luVat,\n LV: lvVat,\n MT: mtVat,\n NL: nlVat,\n PL: plNip,\n PT: ptVat,\n RO: roVat,\n SE: seVat,\n SI: siVat,\n SK: skDic,\n XI: gbVat, // Northern Ireland\n};\n\n/**\n * Extract the 2-letter country prefix and the\n * remaining number from an EU VAT string.\n */\nconst splitPrefix = (\n value: string,\n): { cc: string; rest: string } | undefined => {\n const v = clean(value, \" -\").toUpperCase();\n if (v.length < 3) return undefined;\n const cc = v.slice(0, 2);\n if (!/^[A-Z]{2}$/.test(cc)) return undefined;\n return { cc, rest: v.slice(2) };\n};\n\nconst compact = (value: string): string => {\n const parts = splitPrefix(value);\n if (parts === undefined) {\n return clean(value, \" -\").toUpperCase();\n }\n const validator = VALIDATORS[parts.cc];\n if (validator === undefined) {\n return clean(value, \" -\").toUpperCase();\n }\n return `${parts.cc}${validator.compact(parts.rest)}`;\n};\n\nconst validate = (value: string): ValidateResult => {\n const parts = splitPrefix(value);\n if (parts === undefined) {\n return err(\n \"INVALID_FORMAT\",\n \"EU VAT must start with a 2-letter country code\",\n );\n }\n const validator = VALIDATORS[parts.cc];\n if (validator === undefined) {\n return err(\n \"INVALID_COMPONENT\",\n `Unsupported EU VAT country: ${parts.cc}`,\n );\n }\n const result = validator.validate(parts.rest);\n if (!result.valid) return result;\n return {\n valid: true,\n compact: `${parts.cc}${result.compact}`,\n };\n};\n\n/**\n * Format returns the compact EU VAT form:\n * `CC` + country-compacted number. Equivalent to\n * compact() because country format() methods\n * prepend their own prefix (e.g., AT UID format\n * returns \"ATU...\"), which would cause double-\n * prefixing if used here.\n */\nconst format = (value: string): string => {\n const parts = splitPrefix(value);\n if (parts === undefined) return value;\n const validator = VALIDATORS[parts.cc];\n if (validator === undefined) return value;\n return `${parts.cc}${validator.compact(parts.rest)}`;\n};\n\nconst GENERATORS = [\n [\"AT\", atUid],\n [\"BE\", beVat],\n [\"BG\", bgVat],\n [\"CY\", cyVat],\n [\"CZ\", czDic],\n [\"DE\", deVat],\n [\"DK\", dkVat],\n [\"EE\", eeVat],\n [\"ES\", esVat],\n [\"FI\", fiVat],\n [\"FR\", frTva],\n [\"GR\", grVat],\n [\"HR\", hrVat],\n [\"HU\", huVat],\n [\"IE\", ieVat],\n [\"IT\", itIva],\n [\"LT\", ltVat],\n [\"LU\", luVat],\n [\"LV\", lvVat],\n [\"MT\", mtVat],\n [\"NL\", nlVat],\n [\"PL\", plNip],\n [\"PT\", ptVat],\n [\"RO\", roVat],\n [\"SE\", seVat],\n [\"SI\", siVat],\n [\"SK\", skDic],\n] as const;\n\n/** Generate a random EU VAT number from a member validator. */\nconst generate = (): string => {\n for (;;) {\n const candidate =\n GENERATORS[randomInt(0, GENERATORS.length - 1)];\n if (!candidate) continue;\n\n const [prefix, validator] = candidate;\n if (validator.generate === undefined) continue;\n return `${prefix}${validator.generate()}`;\n }\n};\n\n/** European Union VAT Number. */\nconst euVat: GlobalValidator = {\n scope: \"global\",\n name: \"EU VAT Number\",\n localName: \"EU VAT Number\",\n abbreviation: \"EU VAT\",\n aliases: [\"EU VAT\", \"VAT identification number\"] as const,\n candidatePattern: \"[A-Z]{2}\\\\d{8,12}\",\n entityType: \"company\",\n sourceUrl: \"https://ec.europa.eu/taxation_customs/vies/\",\n examples: [\"ATU13585627\", \"DE136695976\"] as const,\n compact,\n format,\n validate,\n generate,\n};\n\nexport default euVat;\nexport { compact, format, generate, validate };\n"],"mappings":"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"}
1
+ {"version":3,"file":"vat.js","names":[],"sources":["../../src/generated/eu/vat.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator } from \"../../runtime\";\nimport type { GlobalValidator } from \"../../types\";\n\nconst vat: GlobalValidator = createValidator(\"eu.vat\", 69);\n\nexport default vat;\nexport const compact = vat.compact;\nexport const format = vat.format;\nexport const validate = vat.validate;\nexport const generate = (): string =>\n vat.generate?.() ??\n (() => {\n throw new Error(\n \"Validator eu.vat cannot generate values\",\n );\n })();\n"],"mappings":";;AAIA,MAAM,MAAuB,gBAAgB,UAAU,EAAE;AAGzD,MAAa,UAAU,IAAI;AAC3B,MAAa,SAAS,IAAI;AAC1B,MAAa,WAAW,IAAI;AAC5B,MAAa,iBACX,IAAI,WAAW,YACR;CACL,MAAM,IAAI,MACR,yCACF;AACF,EAAA,CAAG"}
package/dist/fi/hetu.d.ts CHANGED
@@ -1,18 +1,11 @@
1
- import { CountryValidator, ParsedPersonId, ValidateResult } from "../types.js";
2
-
3
- //#region src/fi/hetu.d.ts
1
+ import { CountryValidator, ParsedIdentifier, ParsedPersonId, ValidateResult } from "../types.js";
2
+ //#region src/generated/fi/hetu.d.ts
3
+ declare const hetu: CountryValidator<"FI", ParsedPersonId>;
4
4
  declare const compact: (value: string) => string;
5
- declare const validate: (value: string) => ValidateResult;
6
5
  declare const format: (value: string) => string;
7
- /**
8
- * Extract birth date and gender from a HETU.
9
- * Returns null if the value is not valid.
10
- */
11
- declare const parse: (value: string) => ParsedPersonId | null;
12
- /** Generate a random valid HETU. */
6
+ declare const validate: (value: string) => ValidateResult;
13
7
  declare const generate: () => string;
14
- /** Finnish Personal Identity Code. */
15
- declare const hetu: CountryValidator<"FI", ParsedPersonId>;
8
+ declare const parse: ((value: string) => ParsedIdentifier | null) & ((value: string) => ParsedPersonId | null);
16
9
  //#endregion
17
10
  export { compact, hetu as default, format, generate, parse, validate };
18
11
  //# sourceMappingURL=hetu.d.ts.map
package/dist/fi/hetu.js CHANGED
@@ -1,113 +1,13 @@
1
- import { clean } from "../_util/clean.js";
2
- import { isValidDate } from "../_util/date.js";
3
- import { randomInt } from "../_util/generate.js";
4
- import { err } from "../_util/result.js";
5
- import { isdigits } from "../_util/strings.js";
6
- //#region src/fi/hetu.ts
7
- const CHECK_CHARS = "0123456789ABCDEFHJKLMNPRSTUVWXY";
8
- const SEPARATORS_1800 = new Set(["+"]);
9
- const SEPARATORS_1900 = new Set([
10
- "-",
11
- "Y",
12
- "X",
13
- "W",
14
- "V",
15
- "U"
16
- ]);
17
- const SEPARATORS_2000 = new Set([
18
- "A",
19
- "B",
20
- "C",
21
- "D",
22
- "E",
23
- "F"
24
- ]);
25
- const compact = (value) => clean(value, " ").toUpperCase();
26
- const validate = (value) => {
27
- const v = compact(value);
28
- if (v.length !== 11) return err("INVALID_LENGTH", "HETU must be exactly 11 characters");
29
- const dd = v.slice(0, 2);
30
- const mm = v.slice(2, 4);
31
- const yy = v.slice(4, 6);
32
- const separator = v.charAt(6);
33
- const serial = v.slice(7, 10);
34
- const checkChar = v.charAt(10);
35
- if (!isdigits(dd) || !isdigits(mm) || !isdigits(yy)) return err("INVALID_FORMAT", "HETU date part must be digits");
36
- if (!isdigits(serial)) return err("INVALID_FORMAT", "HETU serial must be digits");
37
- let century;
38
- if (SEPARATORS_1800.has(separator)) century = 1800;
39
- else if (SEPARATORS_1900.has(separator)) century = 1900;
40
- else if (SEPARATORS_2000.has(separator)) century = 2e3;
41
- else return err("INVALID_COMPONENT", "HETU separator is invalid");
42
- if (!isValidDate(century + Number(yy), Number(mm), Number(dd))) return err("INVALID_COMPONENT", "HETU contains an invalid date");
43
- const serialNum = Number(serial);
44
- if (serialNum < 2) return err("INVALID_COMPONENT", "HETU individual number must be >= 002");
45
- if (serialNum >= 900) return err("INVALID_COMPONENT", "HETU temporary individual range 900-999");
46
- const checkNum = Number(`${dd}${mm}${yy}${serial}`);
47
- if (checkChar !== CHECK_CHARS.charAt(checkNum % 31)) return err("INVALID_CHECKSUM", "HETU check character does not match");
48
- return {
49
- valid: true,
50
- compact: v
51
- };
52
- };
53
- const format = (value) => compact(value);
54
- /**
55
- * Extract birth date and gender from a HETU.
56
- * Returns null if the value is not valid.
57
- */
58
- const parse = (value) => {
59
- const result = validate(value);
60
- if (!result.valid) return null;
61
- const v = result.compact;
62
- const dd = Number(v.slice(0, 2));
63
- const mm = Number(v.slice(2, 4));
64
- const yy = Number(v.slice(4, 6));
65
- const separator = v.charAt(6);
66
- const serial = Number(v.slice(7, 10));
67
- let century;
68
- if (SEPARATORS_1800.has(separator)) century = 1800;
69
- else if (SEPARATORS_1900.has(separator)) century = 1900;
70
- else century = 2e3;
71
- const year = century + yy;
72
- return {
73
- birthDate: new Date(year, mm - 1, dd),
74
- gender: serial % 2 === 0 ? "female" : "male"
75
- };
76
- };
77
- /** Generate a random valid HETU. */
78
- const generate = () => {
79
- const year = randomInt(1900, 2024);
80
- const month = String(randomInt(1, 12)).padStart(2, "0");
81
- const day = String(randomInt(1, 28)).padStart(2, "0");
82
- const yy = String(year % 100).padStart(2, "0");
83
- const separator = year >= 2e3 ? "A" : "-";
84
- const serial = String(randomInt(2, 899)).padStart(3, "0");
85
- const checkNum = Number(`${day}${month}${yy}${serial}`);
86
- return `${day}${month}${yy}${separator}${serial}${CHECK_CHARS.charAt(checkNum % 31)}`;
87
- };
88
- /** Finnish Personal Identity Code. */
89
- const hetu = {
90
- name: "Finnish Personal ID",
91
- localName: "Henkilötunnus",
92
- abbreviation: "HETU",
93
- aliases: [
94
- "henkilötunnus",
95
- "HETU",
96
- "sosiaaliturvatunnus"
97
- ],
98
- candidatePattern: "\\d{6}[-+A]\\d{3}[\\dA-Z]",
99
- scope: "country",
100
- country: "FI",
101
- entityType: "person",
102
- sourceUrl: "https://dvv.fi/en/personal-identity-code",
103
- lengths: [11],
104
- examples: ["131052-308T"],
105
- compact,
106
- format,
107
- parse,
108
- validate,
109
- generate
110
- };
1
+ import { createValidator } from "../runtime.js";
2
+ //#region src/generated/fi/hetu.ts
3
+ const hetu = createValidator("fi.hetu", 70);
4
+ const compact = hetu.compact;
5
+ const format = hetu.format;
6
+ const validate = hetu.validate;
7
+ const generate = () => hetu.generate?.() ?? (() => {
8
+ throw new Error("Validator fi.hetu cannot generate values");
9
+ })();
10
+ const parse = hetu.parse;
111
11
  //#endregion
112
12
  export { compact, hetu as default, format, generate, parse, validate };
113
13
 
@@ -1 +1 @@
1
- {"version":3,"file":"hetu.js","names":[],"sources":["../../src/fi/hetu.ts"],"sourcesContent":["/**\n * HETU (Henkilötunnus).\n *\n * Finnish personal identity code. 11 characters in\n * format DDMMYY+CCC+X where the separator indicates\n * the century and X is a check character.\n *\n * @see https://dvv.fi/en/personal-identity-code\n */\n\nimport type {\n ParsedPersonId,\n ValidateResult,\n CountryValidator,\n} from \"../types\";\n\nimport { clean } from \"#util/clean\";\nimport { isValidDate } from \"#util/date\";\nimport { randomInt } from \"#util/generate\";\nimport { err } from \"#util/result\";\nimport { isdigits } from \"#util/strings\";\n\nconst CHECK_CHARS = \"0123456789ABCDEFHJKLMNPRSTUVWXY\";\n\nconst SEPARATORS_1800 = new Set([\"+\"]);\nconst SEPARATORS_1900 = new Set([\n \"-\",\n \"Y\",\n \"X\",\n \"W\",\n \"V\",\n \"U\",\n]);\nconst SEPARATORS_2000 = new Set([\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\",\n \"F\",\n]);\n\nconst compact = (value: string): string =>\n clean(value, \" \").toUpperCase();\n\nconst validate = (value: string): ValidateResult => {\n const v = compact(value);\n if (v.length !== 11) {\n return err(\n \"INVALID_LENGTH\",\n \"HETU must be exactly 11 characters\",\n );\n }\n\n const dd = v.slice(0, 2);\n const mm = v.slice(2, 4);\n const yy = v.slice(4, 6);\n const separator = v.charAt(6);\n const serial = v.slice(7, 10);\n const checkChar = v.charAt(10);\n\n if (!isdigits(dd) || !isdigits(mm) || !isdigits(yy)) {\n return err(\n \"INVALID_FORMAT\",\n \"HETU date part must be digits\",\n );\n }\n if (!isdigits(serial)) {\n return err(\n \"INVALID_FORMAT\",\n \"HETU serial must be digits\",\n );\n }\n\n let century: number;\n if (SEPARATORS_1800.has(separator)) {\n century = 1800;\n } else if (SEPARATORS_1900.has(separator)) {\n century = 1900;\n } else if (SEPARATORS_2000.has(separator)) {\n century = 2000;\n } else {\n return err(\n \"INVALID_COMPONENT\",\n \"HETU separator is invalid\",\n );\n }\n\n const year = century + Number(yy);\n const month = Number(mm);\n const day = Number(dd);\n\n if (!isValidDate(year, month, day)) {\n return err(\n \"INVALID_COMPONENT\",\n \"HETU contains an invalid date\",\n );\n }\n\n // Individual number must be >= 002\n const serialNum = Number(serial);\n if (serialNum < 2) {\n return err(\n \"INVALID_COMPONENT\",\n \"HETU individual number must be >= 002\",\n );\n }\n // Temporary range 900-999 is not valid\n if (serialNum >= 900) {\n return err(\n \"INVALID_COMPONENT\",\n \"HETU temporary individual range 900-999\",\n );\n }\n\n const checkNum = Number(`${dd}${mm}${yy}${serial}`);\n const expected = CHECK_CHARS.charAt(checkNum % 31);\n if (checkChar !== expected) {\n return err(\n \"INVALID_CHECKSUM\",\n \"HETU check character does not match\",\n );\n }\n\n return { valid: true, compact: v };\n};\n\nconst format = (value: string): string => compact(value);\n\n/**\n * Extract birth date and gender from a HETU.\n * Returns null if the value is not valid.\n */\nconst parse = (value: string): ParsedPersonId | null => {\n const result = validate(value);\n if (!result.valid) return null;\n\n const v = result.compact;\n const dd = Number(v.slice(0, 2));\n const mm = Number(v.slice(2, 4));\n const yy = Number(v.slice(4, 6));\n const separator = v.charAt(6);\n const serial = Number(v.slice(7, 10));\n\n let century: number;\n if (SEPARATORS_1800.has(separator)) {\n century = 1800;\n } else if (SEPARATORS_1900.has(separator)) {\n century = 1900;\n } else {\n century = 2000;\n }\n\n const year = century + yy;\n\n return {\n birthDate: new Date(year, mm - 1, dd),\n gender: serial % 2 === 0 ? \"female\" : \"male\",\n };\n};\n\n/** Generate a random valid HETU. */\nconst generate = (): string => {\n const year = randomInt(1900, 2024);\n const month = String(randomInt(1, 12)).padStart(2, \"0\");\n const day = String(randomInt(1, 28)).padStart(2, \"0\");\n const yy = String(year % 100).padStart(2, \"0\");\n const separator = year >= 2000 ? \"A\" : \"-\";\n const serial = String(randomInt(2, 899)).padStart(3, \"0\");\n const checkNum = Number(`${day}${month}${yy}${serial}`);\n const checkChar = CHECK_CHARS.charAt(checkNum % 31);\n return `${day}${month}${yy}${separator}${serial}${checkChar}`;\n};\n\n/** Finnish Personal Identity Code. */\nconst hetu: CountryValidator<\"FI\", ParsedPersonId> = {\n name: \"Finnish Personal ID\",\n localName: \"Henkilötunnus\",\n abbreviation: \"HETU\",\n aliases: [\n \"henkilötunnus\",\n \"HETU\",\n \"sosiaaliturvatunnus\",\n ] as const,\n candidatePattern: \"\\\\d{6}[-+A]\\\\d{3}[\\\\dA-Z]\",\n scope: \"country\",\n country: \"FI\",\n entityType: \"person\",\n sourceUrl: \"https://dvv.fi/en/personal-identity-code\",\n lengths: [11] as const,\n examples: [\"131052-308T\"] as const,\n compact,\n format,\n parse,\n validate,\n generate,\n};\n\nexport default hetu;\nexport { compact, format, generate, parse, validate };\n"],"mappings":"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"}
1
+ {"version":3,"file":"hetu.js","names":[],"sources":["../../src/generated/fi/hetu.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator } from \"../../runtime\";\nimport type {\n CountryValidator,\n ParsedPersonId,\n} from \"../../types\";\n\nconst hetu: CountryValidator<\"FI\", ParsedPersonId> =\n createValidator(\"fi.hetu\", 70);\n\nexport default hetu;\nexport const compact = hetu.compact;\nexport const format = hetu.format;\nexport const validate = hetu.validate;\nexport const generate = (): string =>\n hetu.generate?.() ??\n (() => {\n throw new Error(\n \"Validator fi.hetu cannot generate values\",\n );\n })();\nexport const parse = hetu.parse;\n"],"mappings":";;AAOA,MAAM,OACJ,gBAAgB,WAAW,EAAE;AAG/B,MAAa,UAAU,KAAK;AAC5B,MAAa,SAAS,KAAK;AAC3B,MAAa,WAAW,KAAK;AAC7B,MAAa,iBACX,KAAK,WAAW,YACT;CACL,MAAM,IAAI,MACR,0CACF;AACF,EAAA,CAAG;AACL,MAAa,QAAQ,KAAK"}
package/dist/fi/mod.d.ts CHANGED
@@ -1,8 +1,6 @@
1
1
  import hetu from "./hetu.js";
2
2
  import vat from "./vat.js";
3
3
  import ytunnus from "./ytunnus.js";
4
-
5
- //#region src/fi/mod.d.ts
6
4
  declare namespace mod_d_exports {
7
5
  export { hetu, vat, ytunnus };
8
6
  }
package/dist/fi/mod.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { __exportAll } from "../_virtual/_rolldown/runtime.js";
2
- import vat from "./vat.js";
3
2
  import hetu from "./hetu.js";
3
+ import vat from "./vat.js";
4
4
  import ytunnus from "./ytunnus.js";
5
- //#region src/fi/mod.ts
5
+ //#region src/generated/fi/mod.ts
6
6
  var fi_exports = /* @__PURE__ */ __exportAll({
7
7
  hetu: () => hetu,
8
8
  vat: () => vat,
@@ -1 +1 @@
1
- {"version":3,"file":"mod.js","names":[],"sources":["../../src/fi/mod.ts"],"sourcesContent":["export { default as hetu } from \"./hetu\";\nexport { default as vat } from \"./vat\";\nexport { default as ytunnus } from \"./ytunnus\";\n"],"mappings":""}
1
+ {"version":3,"file":"mod.js","names":[],"sources":["../../src/generated/fi/mod.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nexport { default as hetu } from \"./hetu\";\nexport { default as vat } from \"./vat\";\nexport { default as ytunnus } from \"./ytunnus\";\n"],"mappings":""}
package/dist/fi/vat.d.ts CHANGED
@@ -1,13 +1,10 @@
1
1
  import { CountryValidator, ValidateResult } from "../types.js";
2
-
3
- //#region src/fi/vat.d.ts
2
+ //#region src/generated/fi/vat.d.ts
3
+ declare const vat: CountryValidator<"FI">;
4
4
  declare const compact: (value: string) => string;
5
- declare const validate: (value: string) => ValidateResult;
6
5
  declare const format: (value: string) => string;
7
- /** Generate a random valid Finnish VAT number. */
6
+ declare const validate: (value: string) => ValidateResult;
8
7
  declare const generate: () => string;
9
- /** Finnish VAT Number. */
10
- declare const vat: CountryValidator<"FI">;
11
8
  //#endregion
12
9
  export { compact, vat as default, format, generate, validate };
13
10
  //# sourceMappingURL=vat.d.ts.map