@stll/stdnum 2.1.1 → 2.1.3

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 -18
  878. package/dist/_util/clean.js +0 -76
  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 -91
  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/fr/siret.js CHANGED
@@ -1,63 +1,12 @@
1
- import { luhnChecksum, luhnValidate } from "../_checksums/luhn.js";
2
- import { clean } from "../_util/clean.js";
3
- import { randomDigits } from "../_util/generate.js";
4
- import { err } from "../_util/result.js";
5
- import { isdigits } from "../_util/strings.js";
6
- //#region src/fr/siret.ts
7
- const compact = (value) => clean(value, " -.");
8
- /**
9
- * La Poste SIRET uses digit sum % 5 instead of
10
- * Luhn, EXCEPT the head office (35600000000048)
11
- * which uses standard Luhn.
12
- */
13
- const isLaPoste = (v) => v.startsWith("356000000") && v !== "35600000000048";
14
- const digitSum = (v) => {
15
- let sum = 0;
16
- for (let i = 0; i < v.length; i++) sum += Number(v[i]);
17
- return sum;
18
- };
19
- const validate = (value) => {
20
- const v = compact(value);
21
- if (v.length !== 14) return err("INVALID_LENGTH", "SIRET must be exactly 14 digits");
22
- if (!isdigits(v)) return err("INVALID_FORMAT", "SIRET must contain only digits");
23
- if (!luhnValidate(v.slice(0, 9)) && !isLaPoste(v)) return err("INVALID_CHECKSUM", "SIRET SIREN part fails Luhn check");
24
- if (isLaPoste(v)) {
25
- if (digitSum(v) % 5 !== 0) return err("INVALID_CHECKSUM", "SIRET La Poste digit sum check failed");
26
- } else if (!luhnValidate(v)) return err("INVALID_CHECKSUM", "SIRET fails Luhn check");
27
- return {
28
- valid: true,
29
- compact: v
30
- };
31
- };
32
- const format = (value) => {
33
- const v = compact(value);
34
- return `${v.slice(0, 3)} ${v.slice(3, 6)} ${v.slice(6, 9)} ${v.slice(9)}`;
35
- };
36
- /** Generate a random valid French SIRET. */
37
- const generate = () => {
38
- const sp = randomDigits(8);
39
- const sc = luhnChecksum(sp + "0");
40
- const payload = sp + String((10 - sc) % 10) + randomDigits(4);
41
- const cs = luhnChecksum(payload + "0");
42
- return payload + String((10 - cs) % 10);
43
- };
44
- /** French Establishment Identification Number. */
45
- const siret = {
46
- name: "French Establishment ID",
47
- localName: "Système d'Identification du Répertoire des Établissements",
48
- abbreviation: "SIRET",
49
- aliases: ["SIRET", "numéro SIRET"],
50
- candidatePattern: "\\d{3}\\s?\\d{3}\\s?\\d{3}\\s?\\d{5}",
51
- scope: "country",
52
- country: "FR",
53
- entityType: "company",
54
- sourceUrl: "https://www.insee.fr/fr/information/2549588",
55
- examples: ["73282932000074"],
56
- compact,
57
- format,
58
- validate,
59
- generate
60
- };
1
+ import { createValidator } from "../runtime.js";
2
+ //#region src/generated/fr/siret.ts
3
+ const siret = createValidator("fr.siret", 76);
4
+ const compact = siret.compact;
5
+ const format = siret.format;
6
+ const validate = siret.validate;
7
+ const generate = () => siret.generate?.() ?? (() => {
8
+ throw new Error("Validator fr.siret cannot generate values");
9
+ })();
61
10
  //#endregion
62
11
  export { compact, siret as default, format, generate, validate };
63
12
 
@@ -1 +1 @@
1
- {"version":3,"file":"siret.js","names":[],"sources":["../../src/fr/siret.ts"],"sourcesContent":["/**\n * SIRET (Système d'Identification du Répertoire\n * des Établissements).\n *\n * French establishment identification number.\n * 14 digits: SIREN (9) + NIC (5). Validated\n * with Luhn, with a special case for La Poste.\n *\n * @see https://www.insee.fr/fr/information/2549588\n */\n\nimport type {\n ValidateResult,\n CountryValidator,\n} from \"../types\";\n\nimport {\n luhnValidate,\n luhnChecksum,\n} from \"#checksums/luhn\";\nimport { clean } from \"#util/clean\";\nimport { randomDigits } from \"#util/generate\";\nimport { err } from \"#util/result\";\nimport { isdigits } from \"#util/strings\";\n\nconst compact = (value: string): string =>\n clean(value, \" -.\");\n\n/**\n * La Poste SIRET uses digit sum % 5 instead of\n * Luhn, EXCEPT the head office (35600000000048)\n * which uses standard Luhn.\n */\nconst isLaPoste = (v: string): boolean =>\n v.startsWith(\"356000000\") && v !== \"35600000000048\";\n\nconst digitSum = (v: string): number => {\n let sum = 0;\n for (let i = 0; i < v.length; i++) {\n sum += Number(v[i]);\n }\n return sum;\n};\n\nconst validate = (value: string): ValidateResult => {\n const v = compact(value);\n if (v.length !== 14) {\n return err(\n \"INVALID_LENGTH\",\n \"SIRET must be exactly 14 digits\",\n );\n }\n if (!isdigits(v)) {\n return err(\n \"INVALID_FORMAT\",\n \"SIRET must contain only digits\",\n );\n }\n\n // Validate SIREN part (first 9 digits)\n const siren = v.slice(0, 9);\n if (!luhnValidate(siren) && !isLaPoste(v)) {\n return err(\n \"INVALID_CHECKSUM\",\n \"SIRET SIREN part fails Luhn check\",\n );\n }\n\n // La Poste: digit sum mod 5\n if (isLaPoste(v)) {\n if (digitSum(v) % 5 !== 0) {\n return err(\n \"INVALID_CHECKSUM\",\n \"SIRET La Poste digit sum check failed\",\n );\n }\n } else {\n // Standard: full 14-digit Luhn\n if (!luhnValidate(v)) {\n return err(\n \"INVALID_CHECKSUM\",\n \"SIRET fails Luhn check\",\n );\n }\n }\n\n return { valid: true, compact: v };\n};\n\nconst format = (value: string): string => {\n const v = compact(value);\n return `${v.slice(0, 3)} ${v.slice(3, 6)} ${v.slice(6, 9)} ${v.slice(9)}`;\n};\n\n/** Generate a random valid French SIRET. */\nconst generate = (): string => {\n const sp = randomDigits(8);\n const sc = luhnChecksum(sp + \"0\");\n const siren = sp + String((10 - sc) % 10);\n const nic = randomDigits(4);\n const payload = siren + nic;\n const cs = luhnChecksum(payload + \"0\");\n return payload + String((10 - cs) % 10);\n};\n\n/** French Establishment Identification Number. */\nconst siret: CountryValidator<\"FR\"> = {\n name: \"French Establishment ID\",\n localName:\n \"Système d'Identification du Répertoire des Établissements\",\n abbreviation: \"SIRET\",\n aliases: [\"SIRET\", \"numéro SIRET\"] as const,\n candidatePattern: \"\\\\d{3}\\\\s?\\\\d{3}\\\\s?\\\\d{3}\\\\s?\\\\d{5}\",\n scope: \"country\",\n country: \"FR\",\n entityType: \"company\",\n sourceUrl: \"https://www.insee.fr/fr/information/2549588\",\n examples: [\"73282932000074\"] as const,\n compact,\n format,\n validate,\n generate,\n};\n\nexport default siret;\nexport { compact, format, validate, generate };\n"],"mappings":";;;;;;AAyBA,MAAM,WAAW,UACf,MAAM,OAAO,KAAK;;;;;;AAOpB,MAAM,aAAa,MACjB,EAAE,WAAW,WAAW,KAAK,MAAM;AAErC,MAAM,YAAY,MAAsB;CACtC,IAAI,MAAM;CACV,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,KAC5B,OAAO,OAAO,EAAE,EAAE;CAEpB,OAAO;AACT;AAEA,MAAM,YAAY,UAAkC;CAClD,MAAM,IAAI,QAAQ,KAAK;CACvB,IAAI,EAAE,WAAW,IACf,OAAO,IACL,kBACA,iCACF;CAEF,IAAI,CAAC,SAAS,CAAC,GACb,OAAO,IACL,kBACA,gCACF;CAKF,IAAI,CAAC,aADS,EAAE,MAAM,GAAG,CACH,CAAC,KAAK,CAAC,UAAU,CAAC,GACtC,OAAO,IACL,oBACA,mCACF;CAIF,IAAI,UAAU,CAAC;MACT,SAAS,CAAC,IAAI,MAAM,GACtB,OAAO,IACL,oBACA,uCACF;CAAA,OAIF,IAAI,CAAC,aAAa,CAAC,GACjB,OAAO,IACL,oBACA,wBACF;CAIJ,OAAO;EAAE,OAAO;EAAM,SAAS;CAAE;AACnC;AAEA,MAAM,UAAU,UAA0B;CACxC,MAAM,IAAI,QAAQ,KAAK;CACvB,OAAO,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC;AACxE;;AAGA,MAAM,iBAAyB;CAC7B,MAAM,KAAK,aAAa,CAAC;CACzB,MAAM,KAAK,aAAa,KAAK,GAAG;CAGhC,MAAM,UAFQ,KAAK,QAAQ,KAAK,MAAM,EAAE,IAC5B,aAAa,CACC;CAC1B,MAAM,KAAK,aAAa,UAAU,GAAG;CACrC,OAAO,UAAU,QAAQ,KAAK,MAAM,EAAE;AACxC;;AAGA,MAAM,QAAgC;CACpC,MAAM;CACN,WACE;CACF,cAAc;CACd,SAAS,CAAC,SAAS,cAAc;CACjC,kBAAkB;CAClB,OAAO;CACP,SAAS;CACT,YAAY;CACZ,WAAW;CACX,UAAU,CAAC,gBAAgB;CAC3B;CACA;CACA;CACA;AACF"}
1
+ {"version":3,"file":"siret.js","names":[],"sources":["../../src/generated/fr/siret.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator } from \"../../runtime\";\nimport type { CountryValidator } from \"../../types\";\n\nconst siret: CountryValidator<\"FR\"> = createValidator(\n \"fr.siret\",\n 76,\n);\n\nexport default siret;\nexport const compact = siret.compact;\nexport const format = siret.format;\nexport const validate = siret.validate;\nexport const generate = (): string =>\n siret.generate?.() ??\n (() => {\n throw new Error(\n \"Validator fr.siret cannot generate values\",\n );\n })();\n"],"mappings":";;AAIA,MAAM,QAAgC,gBACpC,YACA,EACF;AAGA,MAAa,UAAU,MAAM;AAC7B,MAAa,SAAS,MAAM;AAC5B,MAAa,WAAW,MAAM;AAC9B,MAAa,iBACX,MAAM,WAAW,YACV;CACL,MAAM,IAAI,MACR,2CACF;AACF,EAAA,CAAG"}
package/dist/fr/tva.d.ts CHANGED
@@ -1,13 +1,10 @@
1
1
  import { CountryValidator, ValidateResult } from "../types.js";
2
-
3
- //#region src/fr/tva.d.ts
2
+ //#region src/generated/fr/tva.d.ts
3
+ declare const tva: CountryValidator<"FR">;
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 French TVA. */
6
+ declare const validate: (value: string) => ValidateResult;
8
7
  declare const generate: () => string;
9
- /** French VAT Number. */
10
- declare const tva: CountryValidator<"FR">;
11
8
  //#endregion
12
9
  export { compact, tva as default, format, generate, validate };
13
10
  //# sourceMappingURL=tva.d.ts.map
package/dist/fr/tva.js CHANGED
@@ -1,69 +1,12 @@
1
- import { luhnChecksum, luhnValidate } from "../_checksums/luhn.js";
2
- import { clean } from "../_util/clean.js";
3
- import { randomDigits } from "../_util/generate.js";
4
- import { err } from "../_util/result.js";
5
- import { isdigits } from "../_util/strings.js";
6
- //#region src/fr/tva.ts
7
- const ALPHABET = "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ";
8
- const compact = (value) => {
9
- let v = clean(value, " -.");
10
- if (v.startsWith("FR") || v.startsWith("fr")) v = v.slice(2);
11
- return v.toUpperCase();
12
- };
13
- const validate = (value) => {
14
- const v = compact(value);
15
- if (v.length !== 11) return err("INVALID_LENGTH", "French TVA must be 11 characters");
16
- const prefix = v.slice(0, 2);
17
- const siren = v.slice(2);
18
- if (!isdigits(siren)) return err("INVALID_FORMAT", "French TVA SIREN part must be digits");
19
- const p0 = prefix[0] ?? "";
20
- const p1 = prefix[1] ?? "";
21
- if (ALPHABET.indexOf(p0) < 0 || ALPHABET.indexOf(p1) < 0) return err("INVALID_FORMAT", "French TVA prefix contains invalid chars");
22
- if (!siren.startsWith("000") && !luhnValidate(siren)) return err("INVALID_CHECKSUM", "French TVA SIREN part fails Luhn check");
23
- const c0 = ALPHABET.indexOf(p0);
24
- const c1 = ALPHABET.indexOf(p1);
25
- if (c0 < 10 && c1 < 10) {
26
- if (Number(prefix) !== Number(siren + "12") % 97) return err("INVALID_CHECKSUM", "French TVA check digits mismatch");
27
- } else {
28
- let cvalue;
29
- if (c0 < 10) cvalue = c0 * 24 + c1 - 10;
30
- else cvalue = c0 * 34 + c1 - 100;
31
- if ((Number(siren) + 1 + Math.floor(cvalue / 11)) % 11 !== cvalue % 11) return err("INVALID_CHECKSUM", "French TVA check digits mismatch");
32
- }
33
- return {
34
- valid: true,
35
- compact: v
36
- };
37
- };
38
- const format = (value) => `FR${compact(value)}`;
39
- /** Generate a random valid French TVA. */
40
- const generate = () => {
41
- const sp = randomDigits(8);
42
- const cs = luhnChecksum(sp + "0");
43
- const siren = sp + String((10 - cs) % 10);
44
- return String((12 + 3 * (Number(siren) % 97)) % 97).padStart(2, "0") + siren;
45
- };
46
- /** French VAT Number. */
47
- const tva = {
48
- name: "French VAT Number",
49
- localName: "Numéro de TVA intracommunautaire",
50
- abbreviation: "TVA",
51
- aliases: [
52
- "numéro de TVA",
53
- "TVA intracommunautaire",
54
- "FR VAT"
55
- ],
56
- candidatePattern: "FR[A-Z0-9]{2}\\d{9}",
57
- scope: "country",
58
- country: "FR",
59
- entityType: "company",
60
- sourceUrl: "https://www.economie.gouv.fr/",
61
- examples: ["40303265045", "K7399859412"],
62
- compact,
63
- format,
64
- validate,
65
- generate
66
- };
1
+ import { createValidator } from "../runtime.js";
2
+ //#region src/generated/fr/tva.ts
3
+ const tva = createValidator("fr.tva", 77);
4
+ const compact = tva.compact;
5
+ const format = tva.format;
6
+ const validate = tva.validate;
7
+ const generate = () => tva.generate?.() ?? (() => {
8
+ throw new Error("Validator fr.tva cannot generate values");
9
+ })();
67
10
  //#endregion
68
11
  export { compact, tva as default, format, generate, validate };
69
12
 
@@ -1 +1 @@
1
- {"version":3,"file":"tva.js","names":[],"sources":["../../src/fr/tva.ts"],"sourcesContent":["/**\n * TVA (Numéro de TVA intracommunautaire).\n *\n * French VAT number. 11 characters: 2-char\n * check prefix + 9-digit SIREN. The prefix\n * can be numeric (old style) or alphanumeric\n * (new style, letters from a restricted\n * alphabet excluding I and O).\n *\n * @see https://www.economie.gouv.fr/\n */\n\nimport type {\n ValidateResult,\n CountryValidator,\n} from \"../types\";\n\nimport {\n luhnValidate,\n luhnChecksum,\n} from \"#checksums/luhn\";\nimport { clean } from \"#util/clean\";\nimport { randomDigits } from \"#util/generate\";\nimport { err } from \"#util/result\";\nimport { isdigits } from \"#util/strings\";\n\nconst ALPHABET = \"0123456789ABCDEFGHJKLMNPQRSTUVWXYZ\";\n\nconst compact = (value: string): string => {\n let v = clean(value, \" -.\");\n if (v.startsWith(\"FR\") || v.startsWith(\"fr\")) {\n v = v.slice(2);\n }\n return v.toUpperCase();\n};\n\nconst validate = (value: string): ValidateResult => {\n const v = compact(value);\n if (v.length !== 11) {\n return err(\n \"INVALID_LENGTH\",\n \"French TVA must be 11 characters\",\n );\n }\n\n const prefix = v.slice(0, 2);\n const siren = v.slice(2);\n\n if (!isdigits(siren)) {\n return err(\n \"INVALID_FORMAT\",\n \"French TVA SIREN part must be digits\",\n );\n }\n\n // Validate prefix characters are in alphabet\n const p0 = prefix[0] ?? \"\";\n const p1 = prefix[1] ?? \"\";\n if (\n ALPHABET.indexOf(p0) < 0 ||\n ALPHABET.indexOf(p1) < 0\n ) {\n return err(\n \"INVALID_FORMAT\",\n \"French TVA prefix contains invalid chars\",\n );\n }\n\n // SIREN validation (skip Monaco: starts with 000)\n if (!siren.startsWith(\"000\") && !luhnValidate(siren)) {\n return err(\n \"INVALID_CHECKSUM\",\n \"French TVA SIREN part fails Luhn check\",\n );\n }\n\n const c0 = ALPHABET.indexOf(p0);\n const c1 = ALPHABET.indexOf(p1);\n\n if (c0 < 10 && c1 < 10) {\n // Old-style: both digits numeric\n const check = Number(prefix);\n const expected = Number(siren + \"12\") % 97;\n if (check !== expected) {\n return err(\n \"INVALID_CHECKSUM\",\n \"French TVA check digits mismatch\",\n );\n }\n } else {\n // New-style: at least one letter\n let cvalue: number;\n if (c0 < 10) {\n cvalue = c0 * 24 + c1 - 10;\n } else {\n cvalue = c0 * 34 + c1 - 100;\n }\n const sirenNum = Number(siren);\n if (\n (sirenNum + 1 + Math.floor(cvalue / 11)) % 11 !==\n cvalue % 11\n ) {\n return err(\n \"INVALID_CHECKSUM\",\n \"French TVA check digits mismatch\",\n );\n }\n }\n\n return { valid: true, compact: v };\n};\n\nconst format = (value: string): string =>\n `FR${compact(value)}`;\n\n/** Generate a random valid French TVA. */\nconst generate = (): string => {\n const sp = randomDigits(8);\n const cs = luhnChecksum(sp + \"0\");\n const siren = sp + String((10 - cs) % 10);\n const prefix = String(\n (12 + 3 * (Number(siren) % 97)) % 97,\n ).padStart(2, \"0\");\n return prefix + siren;\n};\n\n/** French VAT Number. */\nconst tva: CountryValidator<\"FR\"> = {\n name: \"French VAT Number\",\n localName: \"Numéro de TVA intracommunautaire\",\n abbreviation: \"TVA\",\n aliases: [\n \"numéro de TVA\",\n \"TVA intracommunautaire\",\n \"FR VAT\",\n ] as const,\n candidatePattern: \"FR[A-Z0-9]{2}\\\\d{9}\",\n scope: \"country\",\n country: \"FR\",\n entityType: \"company\",\n sourceUrl: \"https://www.economie.gouv.fr/\",\n examples: [\"40303265045\", \"K7399859412\"] as const,\n compact,\n format,\n validate,\n generate,\n};\n\nexport default tva;\nexport { compact, format, validate, generate };\n"],"mappings":";;;;;;AA0BA,MAAM,WAAW;AAEjB,MAAM,WAAW,UAA0B;CACzC,IAAI,IAAI,MAAM,OAAO,KAAK;CAC1B,IAAI,EAAE,WAAW,IAAI,KAAK,EAAE,WAAW,IAAI,GACzC,IAAI,EAAE,MAAM,CAAC;CAEf,OAAO,EAAE,YAAY;AACvB;AAEA,MAAM,YAAY,UAAkC;CAClD,MAAM,IAAI,QAAQ,KAAK;CACvB,IAAI,EAAE,WAAW,IACf,OAAO,IACL,kBACA,kCACF;CAGF,MAAM,SAAS,EAAE,MAAM,GAAG,CAAC;CAC3B,MAAM,QAAQ,EAAE,MAAM,CAAC;CAEvB,IAAI,CAAC,SAAS,KAAK,GACjB,OAAO,IACL,kBACA,sCACF;CAIF,MAAM,KAAK,OAAO,MAAM;CACxB,MAAM,KAAK,OAAO,MAAM;CACxB,IACE,SAAS,QAAQ,EAAE,IAAI,KACvB,SAAS,QAAQ,EAAE,IAAI,GAEvB,OAAO,IACL,kBACA,0CACF;CAIF,IAAI,CAAC,MAAM,WAAW,KAAK,KAAK,CAAC,aAAa,KAAK,GACjD,OAAO,IACL,oBACA,wCACF;CAGF,MAAM,KAAK,SAAS,QAAQ,EAAE;CAC9B,MAAM,KAAK,SAAS,QAAQ,EAAE;CAE9B,IAAI,KAAK,MAAM,KAAK;MAEJ,OAAO,MAEb,MADS,OAAO,QAAQ,IAAI,IAAI,IAEtC,OAAO,IACL,oBACA,kCACF;CAAA,OAEG;EAEL,IAAI;EACJ,IAAI,KAAK,IACP,SAAS,KAAK,KAAK,KAAK;OAExB,SAAS,KAAK,KAAK,KAAK;EAG1B,KADiB,OAAO,KAEd,IAAI,IAAI,KAAK,MAAM,SAAS,EAAE,KAAK,OAC3C,SAAS,IAET,OAAO,IACL,oBACA,kCACF;CAEJ;CAEA,OAAO;EAAE,OAAO;EAAM,SAAS;CAAE;AACnC;AAEA,MAAM,UAAU,UACd,KAAK,QAAQ,KAAK;;AAGpB,MAAM,iBAAyB;CAC7B,MAAM,KAAK,aAAa,CAAC;CACzB,MAAM,KAAK,aAAa,KAAK,GAAG;CAChC,MAAM,QAAQ,KAAK,QAAQ,KAAK,MAAM,EAAE;CAIxC,OAHe,QACZ,KAAK,KAAK,OAAO,KAAK,IAAI,OAAO,EACpC,CAAC,CAAC,SAAS,GAAG,GACF,IAAI;AAClB;;AAGA,MAAM,MAA8B;CAClC,MAAM;CACN,WAAW;CACX,cAAc;CACd,SAAS;EACP;EACA;EACA;CACF;CACA,kBAAkB;CAClB,OAAO;CACP,SAAS;CACT,YAAY;CACZ,WAAW;CACX,UAAU,CAAC,eAAe,aAAa;CACvC;CACA;CACA;CACA;AACF"}
1
+ {"version":3,"file":"tva.js","names":[],"sources":["../../src/generated/fr/tva.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator } from \"../../runtime\";\nimport type { CountryValidator } from \"../../types\";\n\nconst tva: CountryValidator<\"FR\"> = createValidator(\n \"fr.tva\",\n 77,\n);\n\nexport default tva;\nexport const compact = tva.compact;\nexport const format = tva.format;\nexport const validate = tva.validate;\nexport const generate = (): string =>\n tva.generate?.() ??\n (() => {\n throw new Error(\n \"Validator fr.tva cannot generate values\",\n );\n })();\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"}
package/dist/gb/mod.d.ts CHANGED
@@ -3,8 +3,6 @@ import nino from "./nino.js";
3
3
  import sedol from "./sedol.js";
4
4
  import utr from "./utr.js";
5
5
  import vat from "./vat.js";
6
-
7
- //#region src/gb/mod.d.ts
8
6
  declare namespace mod_d_exports {
9
7
  export { nhs, nino, sedol, utr, vat };
10
8
  }
package/dist/gb/mod.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { __exportAll } from "../_virtual/_rolldown/runtime.js";
2
- import vat from "./vat.js";
3
2
  import nhs from "./nhs.js";
4
3
  import nino from "./nino.js";
5
4
  import sedol from "./sedol.js";
6
5
  import utr from "./utr.js";
7
- //#region src/gb/mod.ts
6
+ import vat from "./vat.js";
7
+ //#region src/generated/gb/mod.ts
8
8
  var gb_exports = /* @__PURE__ */ __exportAll({
9
9
  nhs: () => nhs,
10
10
  nino: () => nino,
@@ -1 +1 @@
1
- {"version":3,"file":"mod.js","names":[],"sources":["../../src/gb/mod.ts"],"sourcesContent":["export { default as nhs } from \"./nhs\";\nexport { default as nino } from \"./nino\";\nexport { default as sedol } from \"./sedol\";\nexport { default as utr } from \"./utr\";\nexport { default as vat } from \"./vat\";\n"],"mappings":""}
1
+ {"version":3,"file":"mod.js","names":[],"sources":["../../src/generated/gb/mod.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nexport { default as nhs } from \"./nhs\";\nexport { default as nino } from \"./nino\";\nexport { default as sedol } from \"./sedol\";\nexport { default as utr } from \"./utr\";\nexport { default as vat } from \"./vat\";\n"],"mappings":""}
package/dist/gb/nhs.d.ts CHANGED
@@ -1,11 +1,10 @@
1
1
  import { CountryValidator, ValidateResult } from "../types.js";
2
-
3
- //#region src/gb/nhs.d.ts
2
+ //#region src/generated/gb/nhs.d.ts
3
+ declare const nhs: CountryValidator<"GB">;
4
4
  declare const compact: (value: string) => string;
5
- declare const calcCheckDigit: (value: string) => number | null;
6
- declare const validate: (value: string) => ValidateResult;
7
5
  declare const format: (value: string) => string;
8
- declare const nhs: CountryValidator<"GB">;
6
+ declare const validate: (value: string) => ValidateResult;
7
+ declare const calcCheckDigit: (value: string) => number | null;
9
8
  //#endregion
10
9
  export { calcCheckDigit, compact, nhs as default, format, validate };
11
10
  //# sourceMappingURL=nhs.d.ts.map
package/dist/gb/nhs.js CHANGED
@@ -1,50 +1,10 @@
1
- import { clean } from "../_util/clean.js";
2
- import { err } from "../_util/result.js";
3
- import { isdigits } from "../_util/strings.js";
4
- //#region src/gb/nhs.ts
5
- const NHS_NUMBER_LENGTH = 10;
6
- const CHECK_DIGIT_INDEX = 9;
7
- const compact = (value) => clean(value, " ");
8
- const calcCheckDigit = (value) => {
9
- if (value.length !== NHS_NUMBER_LENGTH) return null;
10
- if (!isdigits(value)) return null;
11
- let total = 0;
12
- for (let i = 0; i < CHECK_DIGIT_INDEX; i += 1) total += Number(value.charAt(i)) * (10 - i);
13
- const check = 11 - total % 11;
14
- if (check === 10) return null;
15
- return check === 11 ? 0 : check;
16
- };
17
- const validate = (value) => {
18
- const v = compact(value);
19
- if (v.length !== NHS_NUMBER_LENGTH) return err("INVALID_LENGTH", "NHS number must be 10 digits");
20
- if (!isdigits(v)) return err("INVALID_FORMAT", "NHS number must contain only digits");
21
- const check = calcCheckDigit(v);
22
- if (check === null || check !== Number(v.charAt(CHECK_DIGIT_INDEX))) return err("INVALID_CHECKSUM", "NHS number fails modulus 11 check");
23
- return {
24
- valid: true,
25
- compact: v
26
- };
27
- };
28
- const format = (value) => {
29
- const v = compact(value);
30
- if (v.length !== NHS_NUMBER_LENGTH) return v;
31
- return `${v.slice(0, 3)} ${v.slice(3, 6)} ${v.slice(6)}`;
32
- };
33
- const nhs = {
34
- scope: "country",
35
- country: "GB",
36
- name: "UK NHS Number",
37
- localName: "NHS number",
38
- abbreviation: "NHS",
39
- aliases: ["NHS number", "National Health Service number"],
40
- candidatePattern: "\\d{3}\\s?\\d{3}\\s?\\d{4}",
41
- entityType: "person",
42
- lengths: [NHS_NUMBER_LENGTH],
43
- examples: ["4010232137"],
44
- compact,
45
- format,
46
- validate
47
- };
1
+ import { createValidator, getBinding } from "../runtime.js";
2
+ //#region src/generated/gb/nhs.ts
3
+ const nhs = createValidator("gb.nhs", 78);
4
+ const compact = nhs.compact;
5
+ const format = nhs.format;
6
+ const validate = nhs.validate;
7
+ const calcCheckDigit = (value) => getBinding().gbNhsCalcCheckDigit(value);
48
8
  //#endregion
49
9
  export { calcCheckDigit, compact, nhs as default, format, validate };
50
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"nhs.js","names":[],"sources":["../../src/gb/nhs.ts"],"sourcesContent":["/**\n * UK NHS Number.\n *\n * Validates the 10-digit NHS number using the\n * modulus 11 checksum used by NHS England.\n */\n\nimport type {\n CountryValidator,\n ValidateResult,\n} from \"../types\";\n\nimport { clean } from \"#util/clean\";\nimport { err } from \"#util/result\";\nimport { isdigits } from \"#util/strings\";\n\nconst NHS_NUMBER_LENGTH = 10;\nconst CHECK_DIGIT_INDEX = 9;\n\nconst compact = (value: string): string =>\n clean(value, \" \");\n\nconst calcCheckDigit = (value: string): number | null => {\n if (value.length !== NHS_NUMBER_LENGTH) return null;\n if (!isdigits(value)) return null;\n\n let total = 0;\n for (let i = 0; i < CHECK_DIGIT_INDEX; i += 1) {\n total += Number(value.charAt(i)) * (10 - i);\n }\n\n const check = 11 - (total % 11);\n if (check === 10) return null;\n return check === 11 ? 0 : check;\n};\n\nconst validate = (value: string): ValidateResult => {\n const v = compact(value);\n if (v.length !== NHS_NUMBER_LENGTH) {\n return err(\n \"INVALID_LENGTH\",\n \"NHS number must be 10 digits\",\n );\n }\n if (!isdigits(v)) {\n return err(\n \"INVALID_FORMAT\",\n \"NHS number must contain only digits\",\n );\n }\n\n const check = calcCheckDigit(v);\n if (\n check === null ||\n check !== Number(v.charAt(CHECK_DIGIT_INDEX))\n ) {\n return err(\n \"INVALID_CHECKSUM\",\n \"NHS number fails modulus 11 check\",\n );\n }\n\n return { valid: true, compact: v };\n};\n\nconst format = (value: string): string => {\n const v = compact(value);\n if (v.length !== NHS_NUMBER_LENGTH) return v;\n return `${v.slice(0, 3)} ${v.slice(3, 6)} ${v.slice(6)}`;\n};\n\nconst nhs: CountryValidator<\"GB\"> = {\n scope: \"country\",\n country: \"GB\",\n name: \"UK NHS Number\",\n localName: \"NHS number\",\n abbreviation: \"NHS\",\n aliases: [\n \"NHS number\",\n \"National Health Service number\",\n ] as const,\n candidatePattern: \"\\\\d{3}\\\\s?\\\\d{3}\\\\s?\\\\d{4}\",\n entityType: \"person\",\n lengths: [NHS_NUMBER_LENGTH] as const,\n examples: [\"4010232137\"] as const,\n compact,\n format,\n validate,\n};\n\nexport default nhs;\nexport { calcCheckDigit, compact, format, validate };\n"],"mappings":";;;;AAgBA,MAAM,oBAAoB;AAC1B,MAAM,oBAAoB;AAE1B,MAAM,WAAW,UACf,MAAM,OAAO,GAAG;AAElB,MAAM,kBAAkB,UAAiC;CACvD,IAAI,MAAM,WAAW,mBAAmB,OAAO;CAC/C,IAAI,CAAC,SAAS,KAAK,GAAG,OAAO;CAE7B,IAAI,QAAQ;CACZ,KAAK,IAAI,IAAI,GAAG,IAAI,mBAAmB,KAAK,GAC1C,SAAS,OAAO,MAAM,OAAO,CAAC,CAAC,KAAK,KAAK;CAG3C,MAAM,QAAQ,KAAM,QAAQ;CAC5B,IAAI,UAAU,IAAI,OAAO;CACzB,OAAO,UAAU,KAAK,IAAI;AAC5B;AAEA,MAAM,YAAY,UAAkC;CAClD,MAAM,IAAI,QAAQ,KAAK;CACvB,IAAI,EAAE,WAAW,mBACf,OAAO,IACL,kBACA,8BACF;CAEF,IAAI,CAAC,SAAS,CAAC,GACb,OAAO,IACL,kBACA,qCACF;CAGF,MAAM,QAAQ,eAAe,CAAC;CAC9B,IACE,UAAU,QACV,UAAU,OAAO,EAAE,OAAO,iBAAiB,CAAC,GAE5C,OAAO,IACL,oBACA,mCACF;CAGF,OAAO;EAAE,OAAO;EAAM,SAAS;CAAE;AACnC;AAEA,MAAM,UAAU,UAA0B;CACxC,MAAM,IAAI,QAAQ,KAAK;CACvB,IAAI,EAAE,WAAW,mBAAmB,OAAO;CAC3C,OAAO,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC;AACvD;AAEA,MAAM,MAA8B;CAClC,OAAO;CACP,SAAS;CACT,MAAM;CACN,WAAW;CACX,cAAc;CACd,SAAS,CACP,cACA,gCACF;CACA,kBAAkB;CAClB,YAAY;CACZ,SAAS,CAAC,iBAAiB;CAC3B,UAAU,CAAC,YAAY;CACvB;CACA;CACA;AACF"}
1
+ {"version":3,"file":"nhs.js","names":[],"sources":["../../src/generated/gb/nhs.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator, getBinding } from \"../../runtime\";\nimport type { CountryValidator } from \"../../types\";\n\nconst nhs: CountryValidator<\"GB\"> = createValidator(\n \"gb.nhs\",\n 78,\n);\n\nexport default nhs;\nexport const compact = nhs.compact;\nexport const format = nhs.format;\nexport const validate = nhs.validate;\nexport const calcCheckDigit = (\n value: string,\n): number | null => getBinding().gbNhsCalcCheckDigit(value);\n"],"mappings":";;AAIA,MAAM,MAA8B,gBAClC,UACA,EACF;AAGA,MAAa,UAAU,IAAI;AAC3B,MAAa,SAAS,IAAI;AAC1B,MAAa,WAAW,IAAI;AAC5B,MAAa,kBACX,UACkB,WAAW,CAAC,CAAC,oBAAoB,KAAK"}
package/dist/gb/nino.d.ts CHANGED
@@ -1,23 +1,10 @@
1
1
  import { CountryValidator, ValidateResult } from "../types.js";
2
-
3
- //#region src/gb/nino.d.ts
4
- /** Generate a random valid UK NINO. */
5
- declare const generate: () => string;
6
- /**
7
- * NINO (National Insurance Number).
8
- *
9
- * UK National Insurance Number. Format: 2 letters
10
- * + 6 digits + 1 suffix letter (A, B, C, or D).
11
- * Validated by format and prefix rules only; there
12
- * is no checksum.
13
- *
14
- * @see https://www.gov.uk/hmrc-internal-manuals/national-insurance-manual/nim39110
15
- */
2
+ //#region src/generated/gb/nino.d.ts
3
+ declare const nino: CountryValidator<"GB">;
16
4
  declare const compact: (value: string) => string;
17
- declare const validate: (value: string) => ValidateResult;
18
5
  declare const format: (value: string) => string;
19
- /** UK National Insurance Number. */
20
- declare const nino: CountryValidator<"GB">;
6
+ declare const validate: (value: string) => ValidateResult;
7
+ declare const generate: () => string;
21
8
  //#endregion
22
9
  export { compact, nino as default, format, generate, validate };
23
10
  //# sourceMappingURL=nino.d.ts.map
package/dist/gb/nino.js CHANGED
@@ -1,93 +1,12 @@
1
- import { clean } from "../_util/clean.js";
2
- import { randomChar, randomDigits } from "../_util/generate.js";
3
- import { err } from "../_util/result.js";
4
- //#region src/gb/nino.ts
5
- const NINO_VALID_FIRST = "ABCEGHJKLMNOPRSTWXYZ";
6
- const NINO_VALID_SECOND = "ABCEGHJKLMNPRSTWXYZ";
7
- const NINO_SUFFIXES = "ABCD";
8
- /** Generate a random valid UK NINO. */
9
- const generate = () => {
10
- let first;
11
- let second;
12
- let prefix;
13
- do {
14
- first = randomChar(NINO_VALID_FIRST);
15
- second = randomChar(NINO_VALID_SECOND);
16
- prefix = first + second;
17
- } while (INVALID_PREFIX.has(prefix));
18
- const digits = randomDigits(6);
19
- const suffix = randomChar(NINO_SUFFIXES);
20
- return `${prefix}${digits}${suffix}`;
21
- };
22
- const INVALID_FIRST = new Set([
23
- "D",
24
- "F",
25
- "I",
26
- "Q",
27
- "U",
28
- "V"
29
- ]);
30
- const INVALID_SECOND = new Set([
31
- "D",
32
- "F",
33
- "I",
34
- "O",
35
- "Q",
36
- "U",
37
- "V"
38
- ]);
39
- const INVALID_PREFIX = new Set([
40
- "BG",
41
- "GB",
42
- "NK",
43
- "KN",
44
- "TN",
45
- "NT",
46
- "ZZ"
47
- ]);
48
- const compact = (value) => clean(value, " -").toUpperCase();
49
- const validate = (value) => {
50
- const v = compact(value);
51
- if (v.length !== 9) return err("INVALID_LENGTH", "UK NINO must be 9 characters");
52
- if (!/^[A-Z]{2}\d{6}[A-D]$/.test(v)) return err("INVALID_FORMAT", "UK NINO must be 2 letters, 6 digits, then A/B/C/D");
53
- const first = v[0];
54
- const second = v[1];
55
- const prefix = v.slice(0, 2);
56
- if (INVALID_FIRST.has(first)) return err("INVALID_COMPONENT", `UK NINO first letter cannot be ${first}`);
57
- if (INVALID_SECOND.has(second)) return err("INVALID_COMPONENT", `UK NINO second letter cannot be ${second}`);
58
- if (INVALID_PREFIX.has(prefix)) return err("INVALID_COMPONENT", `UK NINO prefix ${prefix} is not allowed`);
59
- return {
60
- valid: true,
61
- compact: v
62
- };
63
- };
64
- const format = (value) => {
65
- const v = compact(value);
66
- return `${v.slice(0, 2)} ${v.slice(2, 4)} ${v.slice(4, 6)} ${v.slice(6, 8)} ${v.slice(8)}`;
67
- };
68
- /** UK National Insurance Number. */
69
- const nino = {
70
- name: "UK National Insurance Number",
71
- localName: "National Insurance Number",
72
- abbreviation: "NINO",
73
- aliases: [
74
- "National Insurance number",
75
- "NINO",
76
- "NI number"
77
- ],
78
- candidatePattern: "[A-Z]{2}\\d{6}[A-Z]",
79
- scope: "country",
80
- country: "GB",
81
- entityType: "person",
82
- description: "UK National Insurance Number for tax and benefits",
83
- sourceUrl: "https://www.gov.uk/hmrc-internal-manuals/national-insurance-manual/nim39110",
84
- lengths: [9],
85
- examples: ["AB123456C"],
86
- compact,
87
- format,
88
- validate,
89
- generate
90
- };
1
+ import { createValidator } from "../runtime.js";
2
+ //#region src/generated/gb/nino.ts
3
+ const nino = createValidator("gb.nino", 79);
4
+ const compact = nino.compact;
5
+ const format = nino.format;
6
+ const validate = nino.validate;
7
+ const generate = () => nino.generate?.() ?? (() => {
8
+ throw new Error("Validator gb.nino cannot generate values");
9
+ })();
91
10
  //#endregion
92
11
  export { compact, nino as default, format, generate, validate };
93
12
 
@@ -1 +1 @@
1
- {"version":3,"file":"nino.js","names":[],"sources":["../../src/gb/nino.ts"],"sourcesContent":["const NINO_VALID_FIRST = \"ABCEGHJKLMNOPRSTWXYZ\";\nconst NINO_VALID_SECOND = \"ABCEGHJKLMNPRSTWXYZ\";\nconst NINO_SUFFIXES = \"ABCD\";\n\n/** Generate a random valid UK NINO. */\nconst generate = (): string => {\n let first: string;\n let second: string;\n let prefix: string;\n do {\n first = randomChar(NINO_VALID_FIRST);\n second = randomChar(NINO_VALID_SECOND);\n prefix = first + second;\n } while (INVALID_PREFIX.has(prefix));\n const digits = randomDigits(6);\n const suffix = randomChar(NINO_SUFFIXES);\n return `${prefix}${digits}${suffix}`;\n};\n\n/**\n * NINO (National Insurance Number).\n *\n * UK National Insurance Number. Format: 2 letters\n * + 6 digits + 1 suffix letter (A, B, C, or D).\n * Validated by format and prefix rules only; there\n * is no checksum.\n *\n * @see https://www.gov.uk/hmrc-internal-manuals/national-insurance-manual/nim39110\n */\n\nimport type {\n ValidateResult,\n CountryValidator,\n} from \"../types\";\n\nimport { clean } from \"#util/clean\";\nimport { randomChar, randomDigits } from \"#util/generate\";\nimport { err } from \"#util/result\";\n\nconst INVALID_FIRST = new Set([\n \"D\",\n \"F\",\n \"I\",\n \"Q\",\n \"U\",\n \"V\",\n]);\n\nconst INVALID_SECOND = new Set([\n \"D\",\n \"F\",\n \"I\",\n \"O\",\n \"Q\",\n \"U\",\n \"V\",\n]);\n\nconst INVALID_PREFIX = new Set([\n \"BG\",\n \"GB\",\n \"NK\",\n \"KN\",\n \"TN\",\n \"NT\",\n \"ZZ\",\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 !== 9) {\n return err(\n \"INVALID_LENGTH\",\n \"UK NINO must be 9 characters\",\n );\n }\n\n if (!/^[A-Z]{2}\\d{6}[A-D]$/.test(v)) {\n return err(\n \"INVALID_FORMAT\",\n \"UK NINO must be 2 letters, 6 digits, \" +\n \"then A/B/C/D\",\n );\n }\n\n // SAFETY: regex above guarantees v.length === 9.\n // eslint-disable-next-line no-non-null-assertion\n const first = v[0]!;\n // eslint-disable-next-line no-non-null-assertion\n const second = v[1]!;\n const prefix = v.slice(0, 2);\n\n if (INVALID_FIRST.has(first)) {\n return err(\n \"INVALID_COMPONENT\",\n `UK NINO first letter cannot be ${first}`,\n );\n }\n\n if (INVALID_SECOND.has(second)) {\n return err(\n \"INVALID_COMPONENT\",\n `UK NINO second letter cannot be ${second}`,\n );\n }\n\n if (INVALID_PREFIX.has(prefix)) {\n return err(\n \"INVALID_COMPONENT\",\n `UK NINO prefix ${prefix} is not allowed`,\n );\n }\n\n return { valid: true, compact: v };\n};\n\nconst format = (value: string): string => {\n const v = compact(value);\n return (\n `${v.slice(0, 2)} ${v.slice(2, 4)}` +\n ` ${v.slice(4, 6)} ${v.slice(6, 8)}` +\n ` ${v.slice(8)}`\n );\n};\n\n/** UK National Insurance Number. */\nconst nino: CountryValidator<\"GB\"> = {\n name: \"UK National Insurance Number\",\n localName: \"National Insurance Number\",\n abbreviation: \"NINO\",\n aliases: [\n \"National Insurance number\",\n \"NINO\",\n \"NI number\",\n ] as const,\n candidatePattern: \"[A-Z]{2}\\\\d{6}[A-Z]\",\n scope: \"country\",\n country: \"GB\",\n entityType: \"person\",\n description:\n \"UK National Insurance Number for tax \" +\n \"and benefits\",\n sourceUrl:\n \"https://www.gov.uk/hmrc-internal-manuals/\" +\n \"national-insurance-manual/nim39110\",\n lengths: [9] as const,\n examples: [\"AB123456C\"] as const,\n compact,\n format,\n validate,\n generate,\n};\n\nexport default nino;\nexport { compact, format, validate, generate };\n"],"mappings":";;;;AAAA,MAAM,mBAAmB;AACzB,MAAM,oBAAoB;AAC1B,MAAM,gBAAgB;;AAGtB,MAAM,iBAAyB;CAC7B,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,GAAG;EACD,QAAQ,WAAW,gBAAgB;EACnC,SAAS,WAAW,iBAAiB;EACrC,SAAS,QAAQ;CACnB,SAAS,eAAe,IAAI,MAAM;CAClC,MAAM,SAAS,aAAa,CAAC;CAC7B,MAAM,SAAS,WAAW,aAAa;CACvC,OAAO,GAAG,SAAS,SAAS;AAC9B;AAsBA,MAAM,gBAAgB,IAAI,IAAI;CAC5B;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,iBAAiB,IAAI,IAAI;CAC7B;CACA;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,iBAAiB,IAAI,IAAI;CAC7B;CACA;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAED,MAAM,WAAW,UACf,MAAM,OAAO,IAAI,CAAC,CAAC,YAAY;AAEjC,MAAM,YAAY,UAAkC;CAClD,MAAM,IAAI,QAAQ,KAAK;CACvB,IAAI,EAAE,WAAW,GACf,OAAO,IACL,kBACA,8BACF;CAGF,IAAI,CAAC,uBAAuB,KAAK,CAAC,GAChC,OAAO,IACL,kBACA,mDAEF;CAKF,MAAM,QAAQ,EAAE;CAEhB,MAAM,SAAS,EAAE;CACjB,MAAM,SAAS,EAAE,MAAM,GAAG,CAAC;CAE3B,IAAI,cAAc,IAAI,KAAK,GACzB,OAAO,IACL,qBACA,kCAAkC,OACpC;CAGF,IAAI,eAAe,IAAI,MAAM,GAC3B,OAAO,IACL,qBACA,mCAAmC,QACrC;CAGF,IAAI,eAAe,IAAI,MAAM,GAC3B,OAAO,IACL,qBACA,kBAAkB,OAAO,gBAC3B;CAGF,OAAO;EAAE,OAAO;EAAM,SAAS;CAAE;AACnC;AAEA,MAAM,UAAU,UAA0B;CACxC,MAAM,IAAI,QAAQ,KAAK;CACvB,OACE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAA,GAC5B,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,EAAA,GAC7B,EAAE,MAAM,CAAC;AAEjB;;AAGA,MAAM,OAA+B;CACnC,MAAM;CACN,WAAW;CACX,cAAc;CACd,SAAS;EACP;EACA;EACA;CACF;CACA,kBAAkB;CAClB,OAAO;CACP,SAAS;CACT,YAAY;CACZ,aACE;CAEF,WACE;CAEF,SAAS,CAAC,CAAC;CACX,UAAU,CAAC,WAAW;CACtB;CACA;CACA;CACA;AACF"}
1
+ {"version":3,"file":"nino.js","names":[],"sources":["../../src/generated/gb/nino.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator } from \"../../runtime\";\nimport type { CountryValidator } from \"../../types\";\n\nconst nino: CountryValidator<\"GB\"> = createValidator(\n \"gb.nino\",\n 79,\n);\n\nexport default nino;\nexport const compact = nino.compact;\nexport const format = nino.format;\nexport const validate = nino.validate;\nexport const generate = (): string =>\n nino.generate?.() ??\n (() => {\n throw new Error(\n \"Validator gb.nino cannot generate values\",\n );\n })();\n"],"mappings":";;AAIA,MAAM,OAA+B,gBACnC,WACA,EACF;AAGA,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"}
@@ -1,14 +1,11 @@
1
1
  import { CountryValidator, ValidateResult } from "../types.js";
2
-
3
- //#region src/gb/sedol.d.ts
4
- declare const calcCheckDigit: (number: string) => string;
2
+ //#region src/generated/gb/sedol.d.ts
3
+ declare const sedol: CountryValidator<"GB">;
5
4
  declare const compact: (value: string) => string;
6
- declare const validate: (value: string) => ValidateResult;
7
5
  declare const format: (value: string) => string;
8
- /** Generate a random valid SEDOL. */
6
+ declare const validate: (value: string) => ValidateResult;
9
7
  declare const generate: () => string;
10
- /** Stock Exchange Daily Official List number. */
11
- declare const sedol: CountryValidator<"GB">;
8
+ declare const calcCheckDigit: (value: string) => string;
12
9
  //#endregion
13
10
  export { calcCheckDigit, compact, sedol as default, format, generate, validate };
14
11
  //# sourceMappingURL=sedol.d.ts.map
package/dist/gb/sedol.js CHANGED
@@ -1,75 +1,13 @@
1
- import { clean } from "../_util/clean.js";
2
- import { randomChar } from "../_util/generate.js";
3
- import { err } from "../_util/result.js";
4
- import { isdigits } from "../_util/strings.js";
5
- //#region src/gb/sedol.ts
6
- /**
7
- * Allowed characters in a SEDOL: digits and
8
- * consonants only (vowels are never used).
9
- * Spaces occupy vowel positions (A=10, E=14,
10
- * I=18, O=24, U=30) so that indexOf returns
11
- * the correct SEDOL weight for each consonant.
12
- */
13
- const ALPHABET = "0123456789 BCD FGH JKLMN PQRST VWXYZ";
14
- const WEIGHTS = [
15
- 1,
16
- 3,
17
- 1,
18
- 7,
19
- 3,
20
- 9
21
- ];
22
- const calcCheckDigit = (number) => {
23
- if (number.length !== 6) throw new Error("calcCheckDigit requires a 6-character SEDOL prefix");
24
- let sum = 0;
25
- for (const [i, weight] of WEIGHTS.entries()) {
26
- const ch = number[i];
27
- if (ch === void 0) continue;
28
- const val = ALPHABET.indexOf(ch);
29
- if (val < 0) throw new Error(`Invalid SEDOL character: ${ch}`);
30
- sum += weight * val;
31
- }
32
- return String((10 - sum % 10) % 10);
33
- };
34
- const compact = (value) => clean(value, " ").toUpperCase();
35
- const validate = (value) => {
36
- const v = compact(value);
37
- if (v.length !== 7) return err("INVALID_LENGTH", "SEDOL must be exactly 7 characters");
38
- for (const ch of v) if (!ALPHABET.includes(ch)) return err("INVALID_FORMAT", "SEDOL contains invalid character: vowels are not allowed");
39
- if (isdigits(v[0]) && !isdigits(v)) return err("INVALID_FORMAT", "Numeric-prefix SEDOL must be fully numeric (old-style)");
40
- if (calcCheckDigit(v.slice(0, 6)) !== v[6]) return err("INVALID_CHECKSUM", "SEDOL check digit mismatch");
41
- return {
42
- valid: true,
43
- compact: v
44
- };
45
- };
46
- const format = (value) => compact(value);
47
- const SEDOL_CONSONANTS = "BCDFGHJKLMNPQRSTVWXYZ";
48
- const SEDOL_CHARS = "0123456789BCDFGHJKLMNPQRSTVWXYZ";
49
- /** Generate a random valid SEDOL. */
50
- const generate = () => {
51
- let payload = randomChar(SEDOL_CONSONANTS);
52
- for (let i = 1; i < 6; i++) payload += randomChar(SEDOL_CHARS);
53
- return payload + calcCheckDigit(payload);
54
- };
55
- /** Stock Exchange Daily Official List number. */
56
- const sedol = {
57
- name: "Stock Exchange Daily Official List number",
58
- localName: "Stock Exchange Daily Official List number",
59
- abbreviation: "SEDOL",
60
- aliases: ["SEDOL", "Stock Exchange Daily Official List"],
61
- candidatePattern: "[B-DF-HJ-NP-TV-Z0-9]{6}\\d",
62
- scope: "country",
63
- country: "GB",
64
- entityType: "any",
65
- sourceUrl: "https://en.wikipedia.org/wiki/SEDOL",
66
- lengths: [7],
67
- examples: ["B15KXQ8"],
68
- compact,
69
- format,
70
- validate,
71
- generate
72
- };
1
+ import { createValidator, getBinding } from "../runtime.js";
2
+ //#region src/generated/gb/sedol.ts
3
+ const sedol = createValidator("gb.sedol", 80);
4
+ const compact = sedol.compact;
5
+ const format = sedol.format;
6
+ const validate = sedol.validate;
7
+ const generate = () => sedol.generate?.() ?? (() => {
8
+ throw new Error("Validator gb.sedol cannot generate values");
9
+ })();
10
+ const calcCheckDigit = (value) => getBinding().gbSedolCalcCheckDigit(value);
73
11
  //#endregion
74
12
  export { calcCheckDigit, compact, sedol as default, format, generate, validate };
75
13
 
@@ -1 +1 @@
1
- {"version":3,"file":"sedol.js","names":[],"sources":["../../src/gb/sedol.ts"],"sourcesContent":["/**\n * SEDOL (Stock Exchange Daily Official List number).\n *\n * 7-character security identifier used in the UK and\n * Ireland, assigned by the London Stock Exchange.\n * Consists of 6 alphanumeric characters (vowels\n * excluded) followed by a weighted mod-10 check\n * digit.\n *\n * @see https://en.wikipedia.org/wiki/SEDOL\n */\n\nimport type {\n ValidateResult,\n CountryValidator,\n} from \"../types\";\n\nimport { clean } from \"#util/clean\";\nimport { randomChar } from \"#util/generate\";\nimport { err } from \"#util/result\";\nimport { isdigits } from \"#util/strings\";\n\n/**\n * Allowed characters in a SEDOL: digits and\n * consonants only (vowels are never used).\n * Spaces occupy vowel positions (A=10, E=14,\n * I=18, O=24, U=30) so that indexOf returns\n * the correct SEDOL weight for each consonant.\n */\nconst ALPHABET = \"0123456789 BCD FGH JKLMN PQRST VWXYZ\";\n\nconst WEIGHTS = [1, 3, 1, 7, 3, 9] as const;\n\nconst calcCheckDigit = (number: string): string => {\n if (number.length !== 6) {\n throw new Error(\n \"calcCheckDigit requires a 6-character \" +\n \"SEDOL prefix\",\n );\n }\n let sum = 0;\n for (const [i, weight] of WEIGHTS.entries()) {\n const ch = number[i];\n if (ch === undefined) continue;\n const val = ALPHABET.indexOf(ch);\n if (val < 0) {\n throw new Error(`Invalid SEDOL character: ${ch}`);\n }\n sum += weight * val;\n }\n return String((10 - (sum % 10)) % 10);\n};\n\nconst compact = (value: string): string =>\n clean(value, \" \").toUpperCase();\n\nconst validate = (value: string): ValidateResult => {\n const v = compact(value);\n\n if (v.length !== 7) {\n return err(\n \"INVALID_LENGTH\",\n \"SEDOL must be exactly 7 characters\",\n );\n }\n\n for (const ch of v) {\n if (!ALPHABET.includes(ch)) {\n return err(\n \"INVALID_FORMAT\",\n \"SEDOL contains invalid character: \" +\n \"vowels are not allowed\",\n );\n }\n }\n\n // Old-style SEDOLs are fully numeric; new-style\n // SEDOLs start with a letter. A number that starts\n // with a digit but contains letters is invalid.\n // SAFETY: v.length === 7 here.\n // eslint-disable-next-line no-non-null-assertion\n if (isdigits(v[0]!) && !isdigits(v)) {\n return err(\n \"INVALID_FORMAT\",\n \"Numeric-prefix SEDOL must be fully \" +\n \"numeric (old-style)\",\n );\n }\n\n if (calcCheckDigit(v.slice(0, 6)) !== v[6]) {\n return err(\n \"INVALID_CHECKSUM\",\n \"SEDOL check digit mismatch\",\n );\n }\n\n return { valid: true, compact: v };\n};\n\nconst format = (value: string): string => compact(value);\n\nconst SEDOL_CONSONANTS = \"BCDFGHJKLMNPQRSTVWXYZ\";\nconst SEDOL_CHARS = \"0123456789BCDFGHJKLMNPQRSTVWXYZ\";\n\n/** Generate a random valid SEDOL. */\nconst generate = (): string => {\n let payload = randomChar(SEDOL_CONSONANTS);\n for (let i = 1; i < 6; i++) {\n payload += randomChar(SEDOL_CHARS);\n }\n return payload + calcCheckDigit(payload);\n};\n\n/** Stock Exchange Daily Official List number. */\nconst sedol: CountryValidator<\"GB\"> = {\n name: \"Stock Exchange Daily Official List number\",\n localName: \"Stock Exchange Daily Official List number\",\n abbreviation: \"SEDOL\",\n aliases: [\n \"SEDOL\",\n \"Stock Exchange Daily Official List\",\n ] as const,\n candidatePattern: \"[B-DF-HJ-NP-TV-Z0-9]{6}\\\\d\",\n scope: \"country\",\n country: \"GB\",\n entityType: \"any\",\n sourceUrl: \"https://en.wikipedia.org/wiki/SEDOL\",\n lengths: [7] as const,\n examples: [\"B15KXQ8\"] as const,\n compact,\n format,\n validate,\n generate,\n};\n\nexport default sedol;\nexport {\n calcCheckDigit,\n compact,\n format,\n validate,\n generate,\n};\n"],"mappings":";;;;;;;;;;;;AA6BA,MAAM,WAAW;AAEjB,MAAM,UAAU;CAAC;CAAG;CAAG;CAAG;CAAG;CAAG;AAAC;AAEjC,MAAM,kBAAkB,WAA2B;CACjD,IAAI,OAAO,WAAW,GACpB,MAAM,IAAI,MACR,oDAEF;CAEF,IAAI,MAAM;CACV,KAAK,MAAM,CAAC,GAAG,WAAW,QAAQ,QAAQ,GAAG;EAC3C,MAAM,KAAK,OAAO;EAClB,IAAI,OAAO,KAAA,GAAW;EACtB,MAAM,MAAM,SAAS,QAAQ,EAAE;EAC/B,IAAI,MAAM,GACR,MAAM,IAAI,MAAM,4BAA4B,IAAI;EAElD,OAAO,SAAS;CAClB;CACA,OAAO,QAAQ,KAAM,MAAM,MAAO,EAAE;AACtC;AAEA,MAAM,WAAW,UACf,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY;AAEhC,MAAM,YAAY,UAAkC;CAClD,MAAM,IAAI,QAAQ,KAAK;CAEvB,IAAI,EAAE,WAAW,GACf,OAAO,IACL,kBACA,oCACF;CAGF,KAAK,MAAM,MAAM,GACf,IAAI,CAAC,SAAS,SAAS,EAAE,GACvB,OAAO,IACL,kBACA,0DAEF;CASJ,IAAI,SAAS,EAAE,EAAG,KAAK,CAAC,SAAS,CAAC,GAChC,OAAO,IACL,kBACA,wDAEF;CAGF,IAAI,eAAe,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,IACtC,OAAO,IACL,oBACA,4BACF;CAGF,OAAO;EAAE,OAAO;EAAM,SAAS;CAAE;AACnC;AAEA,MAAM,UAAU,UAA0B,QAAQ,KAAK;AAEvD,MAAM,mBAAmB;AACzB,MAAM,cAAc;;AAGpB,MAAM,iBAAyB;CAC7B,IAAI,UAAU,WAAW,gBAAgB;CACzC,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,KACrB,WAAW,WAAW,WAAW;CAEnC,OAAO,UAAU,eAAe,OAAO;AACzC;;AAGA,MAAM,QAAgC;CACpC,MAAM;CACN,WAAW;CACX,cAAc;CACd,SAAS,CACP,SACA,oCACF;CACA,kBAAkB;CAClB,OAAO;CACP,SAAS;CACT,YAAY;CACZ,WAAW;CACX,SAAS,CAAC,CAAC;CACX,UAAU,CAAC,SAAS;CACpB;CACA;CACA;CACA;AACF"}
1
+ {"version":3,"file":"sedol.js","names":[],"sources":["../../src/generated/gb/sedol.ts"],"sourcesContent":["// Generated by scripts/generate-public-surface.ts. Do not edit.\nimport { createValidator, getBinding } from \"../../runtime\";\nimport type { CountryValidator } from \"../../types\";\n\nconst sedol: CountryValidator<\"GB\"> = createValidator(\n \"gb.sedol\",\n 80,\n);\n\nexport default sedol;\nexport const compact = sedol.compact;\nexport const format = sedol.format;\nexport const validate = sedol.validate;\nexport const generate = (): string =>\n sedol.generate?.() ??\n (() => {\n throw new Error(\n \"Validator gb.sedol cannot generate values\",\n );\n })();\nexport const calcCheckDigit = (value: string): string =>\n getBinding().gbSedolCalcCheckDigit(value);\n"],"mappings":";;AAIA,MAAM,QAAgC,gBACpC,YACA,EACF;AAGA,MAAa,UAAU,MAAM;AAC7B,MAAa,SAAS,MAAM;AAC5B,MAAa,WAAW,MAAM;AAC9B,MAAa,iBACX,MAAM,WAAW,YACV;CACL,MAAM,IAAI,MACR,2CACF;AACF,EAAA,CAAG;AACL,MAAa,kBAAkB,UAC7B,WAAW,CAAC,CAAC,sBAAsB,KAAK"}