@fgv/ts-bcp47 0.5.1 → 0.5.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 (413) hide show
  1. package/{src/bcp47 → bcp47}/bcp47Subtags/converters.d.ts +0 -0
  2. package/bcp47/bcp47Subtags/converters.d.ts.map +1 -0
  3. package/{src/bcp47 → bcp47}/bcp47Subtags/converters.js +1 -1
  4. package/{src/bcp47 → bcp47}/bcp47Subtags/index.d.ts +0 -0
  5. package/bcp47/bcp47Subtags/index.d.ts.map +1 -0
  6. package/{src/iana/jar/language-subtags/converters.js → bcp47/bcp47Subtags/index.js} +8 -6
  7. package/{src/bcp47 → bcp47}/bcp47Subtags/model.d.ts +0 -0
  8. package/bcp47/bcp47Subtags/model.d.ts.map +1 -0
  9. package/{src/bcp47/overrides → bcp47/bcp47Subtags}/model.js +1 -1
  10. package/{src/bcp47 → bcp47}/bcp47Subtags/validate.d.ts +0 -0
  11. package/bcp47/bcp47Subtags/validate.d.ts.map +1 -0
  12. package/bcp47/bcp47Subtags/validate.js +74 -0
  13. package/{src/bcp47 → bcp47}/common.d.ts +0 -0
  14. package/bcp47/common.d.ts.map +1 -0
  15. package/bcp47/common.js +59 -0
  16. package/{src/bcp47 → bcp47}/helpers.d.ts +0 -0
  17. package/bcp47/helpers.d.ts.map +1 -0
  18. package/bcp47/helpers.js +103 -0
  19. package/{src/bcp47 → bcp47}/index.d.ts +0 -0
  20. package/bcp47/index.d.ts.map +1 -0
  21. package/bcp47/index.js +27 -0
  22. package/bcp47/languageRegistryData.d.ts +88 -0
  23. package/bcp47/languageRegistryData.d.ts.map +1 -0
  24. package/bcp47/languageRegistryData.js +144 -0
  25. package/{src/bcp47 → bcp47}/languageTag.d.ts +6 -0
  26. package/bcp47/languageTag.d.ts.map +1 -0
  27. package/bcp47/languageTag.js +344 -0
  28. package/{src/bcp47 → bcp47}/languageTagParser.d.ts +0 -0
  29. package/bcp47/languageTagParser.d.ts.map +1 -0
  30. package/bcp47/languageTagParser.js +310 -0
  31. package/{src/bcp47 → bcp47}/match/chooser.d.ts +1 -1
  32. package/bcp47/match/chooser.d.ts.map +1 -0
  33. package/bcp47/match/chooser.js +92 -0
  34. package/{src/bcp47 → bcp47}/match/common.d.ts +0 -0
  35. package/bcp47/match/common.d.ts.map +1 -0
  36. package/bcp47/match/common.js +42 -0
  37. package/{src/bcp47 → bcp47}/match/index.d.ts +0 -0
  38. package/bcp47/match/index.d.ts.map +1 -0
  39. package/{src/iana/jar/language-subtags/registry/converters.js → bcp47/match/index.js} +10 -23
  40. package/{src/bcp47 → bcp47}/match/similarity.d.ts +0 -0
  41. package/bcp47/match/similarity.d.ts.map +1 -0
  42. package/bcp47/match/similarity.js +230 -0
  43. package/{src/bcp47 → bcp47}/normalization/baseNormalizer.d.ts +0 -0
  44. package/bcp47/normalization/baseNormalizer.d.ts.map +1 -0
  45. package/bcp47/normalization/baseNormalizer.js +114 -0
  46. package/{src/bcp47 → bcp47}/normalization/canonicalNormalizer.d.ts +0 -0
  47. package/bcp47/normalization/canonicalNormalizer.d.ts.map +1 -0
  48. package/bcp47/normalization/canonicalNormalizer.js +110 -0
  49. package/{src/bcp47 → bcp47}/normalization/common.d.ts +0 -0
  50. package/bcp47/normalization/common.d.ts.map +1 -0
  51. package/bcp47/normalization/common.js +82 -0
  52. package/{src/bcp47 → bcp47}/normalization/index.d.ts +0 -0
  53. package/bcp47/normalization/index.d.ts.map +1 -0
  54. package/{src/bcp47 → bcp47}/normalization/index.js +1 -1
  55. package/{src/bcp47 → bcp47}/normalization/normalizeTag.d.ts +0 -0
  56. package/bcp47/normalization/normalizeTag.d.ts.map +1 -0
  57. package/bcp47/normalization/normalizeTag.js +105 -0
  58. package/{src/bcp47 → bcp47}/normalization/preferredTagNormalizer.d.ts +0 -0
  59. package/bcp47/normalization/preferredTagNormalizer.d.ts.map +1 -0
  60. package/bcp47/normalization/preferredTagNormalizer.js +178 -0
  61. package/{src/bcp47 → bcp47}/overrides/converters.d.ts +0 -0
  62. package/bcp47/overrides/converters.d.ts.map +1 -0
  63. package/bcp47/overrides/converters.js +75 -0
  64. package/{src/bcp47 → bcp47}/overrides/defaultRegistries.d.ts +0 -0
  65. package/bcp47/overrides/defaultRegistries.d.ts.map +1 -0
  66. package/bcp47/overrides/defaultRegistries.js +42 -0
  67. package/{src/bcp47 → bcp47}/overrides/index.d.ts +0 -0
  68. package/bcp47/overrides/index.d.ts.map +1 -0
  69. package/bcp47/overrides/index.js +30 -0
  70. package/{src/bcp47 → bcp47}/overrides/model.d.ts +0 -0
  71. package/bcp47/overrides/model.d.ts.map +1 -0
  72. package/bcp47/overrides/model.js +24 -0
  73. package/{src/bcp47 → bcp47}/overrides/overridesRegistry.d.ts +0 -0
  74. package/bcp47/overrides/overridesRegistry.d.ts.map +1 -0
  75. package/bcp47/overrides/overridesRegistry.js +112 -0
  76. package/{src/bcp47 → bcp47}/validation/baseValidator.d.ts +0 -0
  77. package/bcp47/validation/baseValidator.d.ts.map +1 -0
  78. package/bcp47/validation/baseValidator.js +111 -0
  79. package/{src/bcp47 → bcp47}/validation/common.d.ts +0 -0
  80. package/bcp47/validation/common.d.ts.map +1 -0
  81. package/bcp47/validation/common.js +84 -0
  82. package/{src/bcp47 → bcp47}/validation/index.d.ts +0 -0
  83. package/bcp47/validation/index.d.ts.map +1 -0
  84. package/{src/iana/jar/language-subtags → bcp47/validation}/index.js +14 -17
  85. package/{src/bcp47 → bcp47}/validation/isCanonical.d.ts +0 -0
  86. package/bcp47/validation/isCanonical.d.ts.map +1 -0
  87. package/bcp47/validation/isCanonical.js +101 -0
  88. package/{src/bcp47 → bcp47}/validation/isInPreferredForm.d.ts +0 -0
  89. package/bcp47/validation/isInPreferredForm.d.ts.map +1 -0
  90. package/bcp47/validation/isInPreferredForm.js +73 -0
  91. package/{src/bcp47 → bcp47}/validation/isStrictlyValid.d.ts +0 -0
  92. package/bcp47/validation/isStrictlyValid.d.ts.map +1 -0
  93. package/bcp47/validation/isStrictlyValid.js +98 -0
  94. package/{src/bcp47 → bcp47}/validation/isValid.d.ts +0 -0
  95. package/bcp47/validation/isValid.d.ts.map +1 -0
  96. package/bcp47/validation/isValid.js +115 -0
  97. package/{src/bcp47 → bcp47}/validation/isWellFormed.d.ts +0 -0
  98. package/bcp47/validation/isWellFormed.d.ts.map +1 -0
  99. package/bcp47/validation/isWellFormed.js +98 -0
  100. package/{src/bcp47 → bcp47}/validation/validateTag.d.ts +0 -0
  101. package/bcp47/validation/validateTag.d.ts.map +1 -0
  102. package/bcp47/validation/validateTag.js +159 -0
  103. package/{src/iana → iana}/common/converters.d.ts +0 -0
  104. package/iana/common/converters.d.ts.map +1 -0
  105. package/iana/common/converters.js +84 -0
  106. package/{src/iana → iana}/common/model.d.ts +0 -0
  107. package/iana/common/model.d.ts.map +1 -0
  108. package/{src/unsd/csv → iana/common}/model.js +1 -1
  109. package/{src/iana → iana}/common/registeredItems.d.ts +0 -0
  110. package/iana/common/registeredItems.d.ts.map +1 -0
  111. package/iana/common/registeredItems.js +124 -0
  112. package/{src/iana → iana}/common/utils.d.ts +0 -0
  113. package/iana/common/utils.d.ts.map +1 -0
  114. package/iana/common/utils.js +34 -0
  115. package/{src/iana → iana}/common/validate.d.ts +0 -0
  116. package/iana/common/validate.d.ts.map +1 -0
  117. package/iana/common/validate.js +61 -0
  118. package/{src/iana → iana}/converters.d.ts +0 -0
  119. package/iana/converters.d.ts.map +1 -0
  120. package/{src/iana/jar/model.js → iana/converters.js} +8 -8
  121. package/{src/iana → iana}/defaultRegistries.d.ts +0 -0
  122. package/iana/defaultRegistries.d.ts.map +1 -0
  123. package/iana/defaultRegistries.js +42 -0
  124. package/{src/iana → iana}/index.d.ts +0 -0
  125. package/iana/index.d.ts.map +1 -0
  126. package/{src/iana → iana}/index.js +1 -1
  127. package/{src/iana → iana}/jar/converters.d.ts +0 -0
  128. package/iana/jar/converters.d.ts.map +1 -0
  129. package/{src/iana → iana}/jar/converters.js +1 -1
  130. package/{src/iana → iana}/jar/index.d.ts +0 -0
  131. package/iana/jar/index.d.ts.map +1 -0
  132. package/{src/iana/jar/language-subtags/tags → iana/jar}/index.js +4 -8
  133. package/{src/iana → iana}/jar/jarConverters.d.ts +0 -0
  134. package/iana/jar/jarConverters.d.ts.map +1 -0
  135. package/iana/jar/jarConverters.js +85 -0
  136. package/{src/iana → iana}/jar/jarModel.d.ts +0 -0
  137. package/iana/jar/jarModel.d.ts.map +1 -0
  138. package/{src/iana/common/model.js → iana/jar/jarModel.js} +1 -1
  139. package/{src/iana → iana}/jar/language-subtags/converters.d.ts +0 -0
  140. package/iana/jar/language-subtags/converters.d.ts.map +1 -0
  141. package/{src/iana/jar/language-subtags/model.js → iana/jar/language-subtags/converters.js} +3 -3
  142. package/{src/iana → iana}/jar/language-subtags/index.d.ts +0 -0
  143. package/iana/jar/language-subtags/index.d.ts.map +1 -0
  144. package/{src/utils → iana/jar/language-subtags}/index.js +18 -4
  145. package/{src/iana → iana}/jar/language-subtags/model.d.ts +0 -0
  146. package/iana/jar/language-subtags/model.d.ts.map +1 -0
  147. package/{src/unsd/common.js → iana/jar/language-subtags/model.js} +29 -1
  148. package/{src/iana → iana}/jar/language-subtags/registry/converters.d.ts +0 -0
  149. package/iana/jar/language-subtags/registry/converters.d.ts.map +1 -0
  150. package/{src/iana/language-subtags/common.js → iana/jar/language-subtags/registry/converters.js} +35 -1
  151. package/{src/iana → iana}/jar/language-subtags/registry/index.d.ts +0 -0
  152. package/iana/jar/language-subtags/registry/index.d.ts.map +1 -0
  153. package/{src/bcp47/bcp47Subtags → iana/jar/language-subtags/registry}/index.js +28 -27
  154. package/{src/iana → iana}/jar/language-subtags/registry/model.d.ts +0 -0
  155. package/iana/jar/language-subtags/registry/model.d.ts.map +1 -0
  156. package/iana/jar/language-subtags/registry/model.js +41 -0
  157. package/{src/iana → iana}/jar/language-subtags/tags/converters.d.ts +0 -0
  158. package/iana/jar/language-subtags/tags/converters.d.ts.map +1 -0
  159. package/iana/jar/language-subtags/tags/converters.js +128 -0
  160. package/{src/iana → iana}/jar/language-subtags/tags/index.d.ts +0 -0
  161. package/iana/jar/language-subtags/tags/index.d.ts.map +1 -0
  162. package/{src/iana/converters.js → iana/jar/language-subtags/tags/index.js} +10 -8
  163. package/{src/iana → iana}/jar/language-subtags/tags/model.d.ts +0 -0
  164. package/iana/jar/language-subtags/tags/model.d.ts.map +1 -0
  165. package/{src/unsd/csv/index.js → iana/jar/language-subtags/tags/model.js} +1 -29
  166. package/{src/iana → iana}/jar/language-subtags/tags/tagValidation.d.ts +0 -0
  167. package/iana/jar/language-subtags/tags/tagValidation.d.ts.map +1 -0
  168. package/iana/jar/language-subtags/tags/tagValidation.js +70 -0
  169. package/{src/iana → iana}/jar/language-subtags/tags/validate.d.ts +0 -0
  170. package/iana/jar/language-subtags/tags/validate.d.ts.map +1 -0
  171. package/iana/jar/language-subtags/tags/validate.js +87 -0
  172. package/{src/iana → iana}/jar/model.d.ts +0 -0
  173. package/iana/jar/model.d.ts.map +1 -0
  174. package/{src/iana/jar/language-subtags/registry/index.js → iana/jar/model.js} +26 -27
  175. package/{src/iana → iana}/language-subtags/common.d.ts +0 -0
  176. package/iana/language-subtags/common.d.ts.map +1 -0
  177. package/iana/language-subtags/common.js +24 -0
  178. package/{src/iana → iana}/language-subtags/converters.d.ts +0 -0
  179. package/iana/language-subtags/converters.d.ts.map +1 -0
  180. package/iana/language-subtags/converters.js +200 -0
  181. package/{src/iana → iana}/language-subtags/index.d.ts +0 -0
  182. package/iana/language-subtags/index.d.ts.map +1 -0
  183. package/{src/iana → iana}/language-subtags/index.js +1 -1
  184. package/{src/iana → iana}/language-subtags/jarConverters.d.ts +12 -12
  185. package/iana/language-subtags/jarConverters.d.ts.map +1 -0
  186. package/iana/language-subtags/jarConverters.js +213 -0
  187. package/{src/iana → iana}/language-subtags/model.d.ts +0 -0
  188. package/iana/language-subtags/model.d.ts.map +1 -0
  189. package/iana/language-subtags/model.js +24 -0
  190. package/{src/iana → iana}/language-subtags/scope.d.ts +0 -0
  191. package/iana/language-subtags/scope.d.ts.map +1 -0
  192. package/iana/language-subtags/scope.js +179 -0
  193. package/{src/iana → iana}/language-subtags/subtagRegistry.d.ts +0 -0
  194. package/iana/language-subtags/subtagRegistry.d.ts.map +1 -0
  195. package/iana/language-subtags/subtagRegistry.js +149 -0
  196. package/{src/iana → iana}/language-subtags/validate.d.ts +0 -0
  197. package/iana/language-subtags/validate.d.ts.map +1 -0
  198. package/{src/iana → iana}/language-subtags/validate.js +1 -1
  199. package/{src/iana → iana}/language-tag-extensions/converters.d.ts +0 -0
  200. package/iana/language-tag-extensions/converters.d.ts.map +1 -0
  201. package/iana/language-tag-extensions/converters.js +87 -0
  202. package/{src/iana → iana}/language-tag-extensions/extensionsRegistry.d.ts +0 -0
  203. package/iana/language-tag-extensions/extensionsRegistry.d.ts.map +1 -0
  204. package/iana/language-tag-extensions/extensionsRegistry.js +104 -0
  205. package/{src/iana → iana}/language-tag-extensions/extensionsScope.d.ts +0 -0
  206. package/iana/language-tag-extensions/extensionsScope.d.ts.map +1 -0
  207. package/iana/language-tag-extensions/extensionsScope.js +77 -0
  208. package/{src/iana → iana}/language-tag-extensions/index.d.ts +0 -0
  209. package/iana/language-tag-extensions/index.d.ts.map +1 -0
  210. package/{src/iana → iana}/language-tag-extensions/index.js +1 -1
  211. package/{src/iana → iana}/language-tag-extensions/jarConverters.d.ts +0 -0
  212. package/iana/language-tag-extensions/jarConverters.d.ts.map +1 -0
  213. package/iana/language-tag-extensions/jarConverters.js +102 -0
  214. package/{src/iana → iana}/language-tag-extensions/model.d.ts +0 -0
  215. package/iana/language-tag-extensions/model.d.ts.map +1 -0
  216. package/{src/bcp47/overrides/defaultRegistries.js → iana/language-tag-extensions/model.js} +1 -19
  217. package/{src/iana → iana}/language-tag-extensions/validate.d.ts +0 -0
  218. package/iana/language-tag-extensions/validate.d.ts.map +1 -0
  219. package/iana/language-tag-extensions/validate.js +36 -0
  220. package/{src/iana → iana}/languageRegistries.d.ts +0 -0
  221. package/iana/languageRegistries.d.ts.map +1 -0
  222. package/iana/languageRegistries.js +56 -0
  223. package/{src/iana → iana}/model.d.ts +0 -0
  224. package/iana/model.d.ts.map +1 -0
  225. package/{src/iana → iana}/model.js +1 -1
  226. package/{src/iana → iana}/validate.d.ts +0 -0
  227. package/iana/validate.d.ts.map +1 -0
  228. package/{src/iana → iana}/validate.js +1 -1
  229. package/{src/index.d.ts → index.d.ts} +0 -0
  230. package/index.d.ts.map +1 -0
  231. package/{src/index.js → index.js} +1 -1
  232. package/package.json +1 -1
  233. package/{src/unsd → unsd}/areas.d.ts +0 -0
  234. package/unsd/areas.d.ts.map +1 -0
  235. package/unsd/areas.js +96 -0
  236. package/{src/unsd → unsd}/common.d.ts +0 -0
  237. package/unsd/common.d.ts.map +1 -0
  238. package/unsd/common.js +24 -0
  239. package/{src/unsd → unsd}/csv/converters.d.ts +0 -0
  240. package/unsd/csv/converters.d.ts.map +1 -0
  241. package/unsd/csv/converters.js +70 -0
  242. package/{src/unsd → unsd}/csv/index.d.ts +0 -0
  243. package/unsd/csv/index.d.ts.map +1 -0
  244. package/{src/iana/jar → unsd/csv}/index.js +1 -1
  245. package/{src/unsd → unsd}/csv/model.d.ts +0 -0
  246. package/unsd/csv/model.d.ts.map +1 -0
  247. package/{src/unsd/index.js → unsd/csv/model.js} +1 -21
  248. package/{src/unsd → unsd}/defaultRegistries.d.ts +0 -0
  249. package/unsd/defaultRegistries.d.ts.map +1 -0
  250. package/unsd/defaultRegistries.js +42 -0
  251. package/{src/unsd → unsd}/index.d.ts +0 -0
  252. package/unsd/index.d.ts.map +1 -0
  253. package/unsd/index.js +44 -0
  254. package/{src/unsd → unsd}/regionCodes.d.ts +0 -0
  255. package/unsd/regionCodes.d.ts.map +1 -0
  256. package/unsd/regionCodes.js +121 -0
  257. package/{src/unsd → unsd}/regions.d.ts +0 -0
  258. package/unsd/regions.d.ts.map +1 -0
  259. package/unsd/regions.js +77 -0
  260. package/{src/utils → utils}/index.d.ts +0 -0
  261. package/utils/index.d.ts.map +1 -0
  262. package/{src/utils/jsonHelpers.js → utils/index.js} +17 -6
  263. package/{src/utils → utils}/jsonHelpers.d.ts +0 -0
  264. package/utils/jsonHelpers.d.ts.map +1 -0
  265. package/{src/iana/jar/language-subtags/tags/model.js → utils/jsonHelpers.js} +7 -2
  266. package/{src/utils → utils}/validationHelpers.d.ts +0 -0
  267. package/utils/validationHelpers.d.ts.map +1 -0
  268. package/utils/validationHelpers.js +88 -0
  269. package/src/bcp47/bcp47Subtags/converters.d.ts.map +0 -1
  270. package/src/bcp47/bcp47Subtags/index.d.ts.map +0 -1
  271. package/src/bcp47/bcp47Subtags/model.d.ts.map +0 -1
  272. package/src/bcp47/bcp47Subtags/model.js +0 -24
  273. package/src/bcp47/bcp47Subtags/validate.d.ts.map +0 -1
  274. package/src/bcp47/bcp47Subtags/validate.js +0 -74
  275. package/src/bcp47/common.d.ts.map +0 -1
  276. package/src/bcp47/common.js +0 -59
  277. package/src/bcp47/helpers.d.ts.map +0 -1
  278. package/src/bcp47/helpers.js +0 -103
  279. package/src/bcp47/index.d.ts.map +0 -1
  280. package/src/bcp47/index.js +0 -27
  281. package/src/bcp47/languageTag.d.ts.map +0 -1
  282. package/src/bcp47/languageTag.js +0 -342
  283. package/src/bcp47/languageTagParser.d.ts.map +0 -1
  284. package/src/bcp47/languageTagParser.js +0 -310
  285. package/src/bcp47/match/chooser.d.ts.map +0 -1
  286. package/src/bcp47/match/chooser.js +0 -92
  287. package/src/bcp47/match/common.d.ts.map +0 -1
  288. package/src/bcp47/match/common.js +0 -42
  289. package/src/bcp47/match/index.d.ts.map +0 -1
  290. package/src/bcp47/match/index.js +0 -45
  291. package/src/bcp47/match/similarity.d.ts.map +0 -1
  292. package/src/bcp47/match/similarity.js +0 -230
  293. package/src/bcp47/normalization/baseNormalizer.d.ts.map +0 -1
  294. package/src/bcp47/normalization/baseNormalizer.js +0 -114
  295. package/src/bcp47/normalization/canonicalNormalizer.d.ts.map +0 -1
  296. package/src/bcp47/normalization/canonicalNormalizer.js +0 -110
  297. package/src/bcp47/normalization/common.d.ts.map +0 -1
  298. package/src/bcp47/normalization/common.js +0 -82
  299. package/src/bcp47/normalization/index.d.ts.map +0 -1
  300. package/src/bcp47/normalization/normalizeTag.d.ts.map +0 -1
  301. package/src/bcp47/normalization/normalizeTag.js +0 -105
  302. package/src/bcp47/normalization/preferredTagNormalizer.d.ts.map +0 -1
  303. package/src/bcp47/normalization/preferredTagNormalizer.js +0 -178
  304. package/src/bcp47/overrides/converters.d.ts.map +0 -1
  305. package/src/bcp47/overrides/converters.js +0 -75
  306. package/src/bcp47/overrides/defaultRegistries.d.ts.map +0 -1
  307. package/src/bcp47/overrides/index.d.ts.map +0 -1
  308. package/src/bcp47/overrides/index.js +0 -30
  309. package/src/bcp47/overrides/model.d.ts.map +0 -1
  310. package/src/bcp47/overrides/overridesRegistry.d.ts.map +0 -1
  311. package/src/bcp47/overrides/overridesRegistry.js +0 -112
  312. package/src/bcp47/validation/baseValidator.d.ts.map +0 -1
  313. package/src/bcp47/validation/baseValidator.js +0 -111
  314. package/src/bcp47/validation/common.d.ts.map +0 -1
  315. package/src/bcp47/validation/common.js +0 -84
  316. package/src/bcp47/validation/index.d.ts.map +0 -1
  317. package/src/bcp47/validation/index.js +0 -51
  318. package/src/bcp47/validation/isCanonical.d.ts.map +0 -1
  319. package/src/bcp47/validation/isCanonical.js +0 -101
  320. package/src/bcp47/validation/isInPreferredForm.d.ts.map +0 -1
  321. package/src/bcp47/validation/isInPreferredForm.js +0 -73
  322. package/src/bcp47/validation/isStrictlyValid.d.ts.map +0 -1
  323. package/src/bcp47/validation/isStrictlyValid.js +0 -98
  324. package/src/bcp47/validation/isValid.d.ts.map +0 -1
  325. package/src/bcp47/validation/isValid.js +0 -115
  326. package/src/bcp47/validation/isWellFormed.d.ts.map +0 -1
  327. package/src/bcp47/validation/isWellFormed.js +0 -98
  328. package/src/bcp47/validation/validateTag.d.ts.map +0 -1
  329. package/src/bcp47/validation/validateTag.js +0 -159
  330. package/src/iana/common/converters.d.ts.map +0 -1
  331. package/src/iana/common/converters.js +0 -84
  332. package/src/iana/common/model.d.ts.map +0 -1
  333. package/src/iana/common/registeredItems.d.ts.map +0 -1
  334. package/src/iana/common/registeredItems.js +0 -124
  335. package/src/iana/common/utils.d.ts.map +0 -1
  336. package/src/iana/common/utils.js +0 -34
  337. package/src/iana/common/validate.d.ts.map +0 -1
  338. package/src/iana/common/validate.js +0 -61
  339. package/src/iana/converters.d.ts.map +0 -1
  340. package/src/iana/defaultRegistries.d.ts.map +0 -1
  341. package/src/iana/defaultRegistries.js +0 -42
  342. package/src/iana/index.d.ts.map +0 -1
  343. package/src/iana/jar/converters.d.ts.map +0 -1
  344. package/src/iana/jar/index.d.ts.map +0 -1
  345. package/src/iana/jar/jarConverters.d.ts.map +0 -1
  346. package/src/iana/jar/jarConverters.js +0 -85
  347. package/src/iana/jar/jarModel.d.ts.map +0 -1
  348. package/src/iana/jar/jarModel.js +0 -24
  349. package/src/iana/jar/language-subtags/converters.d.ts.map +0 -1
  350. package/src/iana/jar/language-subtags/index.d.ts.map +0 -1
  351. package/src/iana/jar/language-subtags/model.d.ts.map +0 -1
  352. package/src/iana/jar/language-subtags/registry/converters.d.ts.map +0 -1
  353. package/src/iana/jar/language-subtags/registry/index.d.ts.map +0 -1
  354. package/src/iana/jar/language-subtags/registry/model.d.ts.map +0 -1
  355. package/src/iana/jar/language-subtags/registry/model.js +0 -41
  356. package/src/iana/jar/language-subtags/tags/converters.d.ts.map +0 -1
  357. package/src/iana/jar/language-subtags/tags/converters.js +0 -128
  358. package/src/iana/jar/language-subtags/tags/index.d.ts.map +0 -1
  359. package/src/iana/jar/language-subtags/tags/model.d.ts.map +0 -1
  360. package/src/iana/jar/language-subtags/tags/tagValidation.d.ts.map +0 -1
  361. package/src/iana/jar/language-subtags/tags/tagValidation.js +0 -70
  362. package/src/iana/jar/language-subtags/tags/validate.d.ts.map +0 -1
  363. package/src/iana/jar/language-subtags/tags/validate.js +0 -87
  364. package/src/iana/jar/model.d.ts.map +0 -1
  365. package/src/iana/language-subtags/common.d.ts.map +0 -1
  366. package/src/iana/language-subtags/converters.d.ts.map +0 -1
  367. package/src/iana/language-subtags/converters.js +0 -200
  368. package/src/iana/language-subtags/index.d.ts.map +0 -1
  369. package/src/iana/language-subtags/jarConverters.d.ts.map +0 -1
  370. package/src/iana/language-subtags/jarConverters.js +0 -213
  371. package/src/iana/language-subtags/model.d.ts.map +0 -1
  372. package/src/iana/language-subtags/model.js +0 -24
  373. package/src/iana/language-subtags/scope.d.ts.map +0 -1
  374. package/src/iana/language-subtags/scope.js +0 -179
  375. package/src/iana/language-subtags/subtagRegistry.d.ts.map +0 -1
  376. package/src/iana/language-subtags/subtagRegistry.js +0 -149
  377. package/src/iana/language-subtags/validate.d.ts.map +0 -1
  378. package/src/iana/language-tag-extensions/converters.d.ts.map +0 -1
  379. package/src/iana/language-tag-extensions/converters.js +0 -87
  380. package/src/iana/language-tag-extensions/extensionsRegistry.d.ts.map +0 -1
  381. package/src/iana/language-tag-extensions/extensionsRegistry.js +0 -104
  382. package/src/iana/language-tag-extensions/extensionsScope.d.ts.map +0 -1
  383. package/src/iana/language-tag-extensions/extensionsScope.js +0 -77
  384. package/src/iana/language-tag-extensions/index.d.ts.map +0 -1
  385. package/src/iana/language-tag-extensions/jarConverters.d.ts.map +0 -1
  386. package/src/iana/language-tag-extensions/jarConverters.js +0 -102
  387. package/src/iana/language-tag-extensions/model.d.ts.map +0 -1
  388. package/src/iana/language-tag-extensions/model.js +0 -24
  389. package/src/iana/language-tag-extensions/validate.d.ts.map +0 -1
  390. package/src/iana/language-tag-extensions/validate.js +0 -36
  391. package/src/iana/languageRegistries.d.ts.map +0 -1
  392. package/src/iana/languageRegistries.js +0 -56
  393. package/src/iana/model.d.ts.map +0 -1
  394. package/src/iana/validate.d.ts.map +0 -1
  395. package/src/index.d.ts.map +0 -1
  396. package/src/unsd/areas.d.ts.map +0 -1
  397. package/src/unsd/areas.js +0 -96
  398. package/src/unsd/common.d.ts.map +0 -1
  399. package/src/unsd/csv/converters.d.ts.map +0 -1
  400. package/src/unsd/csv/converters.js +0 -70
  401. package/src/unsd/csv/index.d.ts.map +0 -1
  402. package/src/unsd/csv/model.d.ts.map +0 -1
  403. package/src/unsd/defaultRegistries.d.ts.map +0 -1
  404. package/src/unsd/defaultRegistries.js +0 -42
  405. package/src/unsd/index.d.ts.map +0 -1
  406. package/src/unsd/regionCodes.d.ts.map +0 -1
  407. package/src/unsd/regionCodes.js +0 -121
  408. package/src/unsd/regions.d.ts.map +0 -1
  409. package/src/unsd/regions.js +0 -77
  410. package/src/utils/index.d.ts.map +0 -1
  411. package/src/utils/jsonHelpers.d.ts.map +0 -1
  412. package/src/utils/validationHelpers.d.ts.map +0 -1
  413. package/src/utils/validationHelpers.js +0 -88
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022 Erik Fortune
4
+ *
5
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ * of this software and associated documentation files (the "Software"), to deal
7
+ * in the Software without restriction, including without limitation the rights
8
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ * copies of the Software, and to permit persons to whom the Software is
10
+ * furnished to do so, subject to the following conditions:
11
+ *
12
+ * The above copyright notice and this permission notice shall be included in all
13
+ * copies or substantial portions of the Software.
14
+ *
15
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ * SOFTWARE.
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.ValidateTag = void 0;
25
+ const ts_utils_1 = require("@fgv/ts-utils");
26
+ const common_1 = require("./common");
27
+ const isCanonical_1 = require("./isCanonical");
28
+ const isInPreferredForm_1 = require("./isInPreferredForm");
29
+ const isStrictlyValid_1 = require("./isStrictlyValid");
30
+ const isValid_1 = require("./isValid");
31
+ const isWellFormed_1 = require("./isWellFormed");
32
+ /**
33
+ * Validation helpers for BCP-47 language tags.
34
+ * @public
35
+ */
36
+ class ValidateTag {
37
+ /**
38
+ * Determines if supplied {@link Bcp47.Subtags | subtags } are in canonical form,
39
+ * meaning that they are at least well-formed as specified by
40
+ * {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.2.9 | RFC 5646}, and
41
+ * all subtags are also
42
+ * {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.1.1 | capitalized as recommended}.
43
+ * @param subtags - The {@link Bcp47.Subtags | subtags } to test.
44
+ * @returns `true` if the {@link Bcp47.Subtags | subtags } represent
45
+ * a language tag in canonical, false otherwise.
46
+ * @example `en-US` is in canonical form, `en-us` is not.
47
+ * @example `eng-US` is in canonical form, `eng-us` is not.
48
+ */
49
+ static isCanonical(subtags) {
50
+ if (!this._isCanonical) {
51
+ this._isCanonical = new isCanonical_1.IsCanonicalValidator();
52
+ }
53
+ return this._isCanonical.validateSubtags(subtags).isSuccess();
54
+ }
55
+ /**
56
+ * Determines if supplied {@link Bcp47.Subtags | subtags } are
57
+ * in preferred form. Preferred form is valid as specified by
58
+ * {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.2.9 | RFC 5646} and
59
+ * also meets additional preferences specified in the
60
+ * {@link https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry | language subtag registry} -
61
+ * extraneous (suppressed) script tags, deprecated language, extlang, script or region tags or
62
+ * deprecated grandfathered or redundant tags (with a defined preferred-value) are not allowed.
63
+ * @param subtags - The {@link Bcp47.Subtags | subtags } to test.
64
+ * @returns `true` if the {@link Bcp47.Subtags | subtags } represent
65
+ * a valid language tag in preferred form, false otherwise.
66
+ * @example `en-US` is in preferred form, `en-Latn-US` is not.
67
+ * @example `cmn` is in preferred form, `zh-cmn-Hans` is not.
68
+ */
69
+ static isInPreferredForm(subtags) {
70
+ if (!this._isInPreferredForm) {
71
+ this._isInPreferredForm = new isInPreferredForm_1.IsInPreferredFromValidator();
72
+ }
73
+ return this._isInPreferredForm.validateSubtags(subtags).isSuccess();
74
+ }
75
+ /**
76
+ * Determines if supplied {@link Bcp47.Subtags | subtags } are
77
+ * strictly valid. A strictly valid tag is both
78
+ * {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.2.9 | valid as defined in the RFC}
79
+ * and meets any other requirements such as
80
+ * {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-3.1.8 | prefix validity}.
81
+ * @param subtags - The {@link Bcp47.Subtags | subtags } to test.
82
+ * @returns `true` if the {@link Bcp47.Subtags | subtags } represent
83
+ * a strictly valid language tag, false otherwise.
84
+ * @example `ca-valencia` is strictly valid, `es-valencia` is not.
85
+ */
86
+ static isStrictlyValid(subtags) {
87
+ return this.validateSubtags(subtags, 'strictly-valid').isSuccess();
88
+ }
89
+ /**
90
+ * Determines if supplied {@link Bcp47.Subtags | subtags } are
91
+ * valid as specified by {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.2.9 | RFC 5646},
92
+ * meaning that all subtags, or the tag itself for grandfathered tags, are defined in the
93
+ * {@link https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry | IANA language subtag registry}.
94
+ * @param subtags - The {@link Bcp47.Subtags | subtags } to test.
95
+ * @returns `true` if the {@link Bcp47.Subtags | subtags } represent
96
+ * a valid language tag, false otherwise.
97
+ * @example `en-US` is valid, `eng-US` is not.
98
+ */
99
+ static isValid(subtags) {
100
+ return this.validateSubtags(subtags, 'valid').isSuccess();
101
+ }
102
+ /**
103
+ * Determines if supplied {@link Bcp47.Subtags | subtags } are
104
+ * well-formed as specified by {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.2.9 | RFC 5646},
105
+ * meaning that all subtags meet the grammar defined in the specification.
106
+ * @param subtags - The {@link Bcp47.Subtags | subtags } to test.
107
+ * @returns `true` if the {@link Bcp47.Subtags | subtags } represent
108
+ * a well-formed language tag, false otherwise.
109
+ * @example `en-US` is valid, `english-US` is not.
110
+ * @public
111
+ */
112
+ static isWellFormed(subtags) {
113
+ return this.validateSubtags(subtags, 'well-formed').isSuccess();
114
+ }
115
+ /**
116
+ * Chooses an appropriate default tag validator given desired and optional current
117
+ * {@link Bcp47.TagValidity | validation level}.
118
+ * @param wantValidity - The desired {@link Bcp47.TagValidity | validity level}.
119
+ * @param haveValidity - (optional) The current {@link Bcp47.TagValidity | validity level}.
120
+ * @returns An appropriate {@link Bcp47.TagValidator | tag validator} or `undefined` if no
121
+ * additional validation is necessary.
122
+ * @internal
123
+ */
124
+ static chooseValidator(wantValidity, haveValidity) {
125
+ if (haveValidity && (0, common_1.compareValidity)(haveValidity, wantValidity) >= 0) {
126
+ return undefined;
127
+ }
128
+ if (!this._validators) {
129
+ this._validators = {
130
+ /* eslint-disable @typescript-eslint/naming-convention */
131
+ unknown: new isWellFormed_1.IsWellFormedValidator(),
132
+ 'well-formed': new isWellFormed_1.IsWellFormedValidator(),
133
+ valid: new isValid_1.IsValidValidator(),
134
+ 'strictly-valid': new isStrictlyValid_1.IsStrictlyValidValidator(),
135
+ /* eslint-enable @typescript-eslint/naming-convention */
136
+ };
137
+ }
138
+ return this._validators[wantValidity];
139
+ }
140
+ /**
141
+ * Validates supplied {@link Bcp47.Subtags | subtags } to a requested
142
+ * {@link Bcp47.TagValidity | validity level}, if necessary.
143
+ * @param subtags - The {@link Bcp47.Subtags | subtags } to be validated.
144
+ * @param wantValidity - The desired {@link Bcp47.TagValidity | validity level}.
145
+ * @param haveValidity - (optional) The current {@link Bcp47.TagValidity | validity level}.
146
+ * @returns `Success` with the validated {@link Bcp47.Subtags | subtags }, or
147
+ * `Failure` with details if an error occurs.
148
+ * @public
149
+ */
150
+ static validateSubtags(subtags, wantValidity, haveValidity) {
151
+ var _a;
152
+ const validator = this.chooseValidator(wantValidity, haveValidity);
153
+ // istanbul ignore next - a pain to test
154
+ return (_a = validator === null || validator === void 0 ? void 0 : validator.validateSubtags(subtags)) !== null && _a !== void 0 ? _a : (0, ts_utils_1.succeed)(true);
155
+ }
156
+ }
157
+ exports.ValidateTag = ValidateTag;
158
+ ValidateTag._validators = undefined;
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVUYWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmNwNDcvdmFsaWRhdGlvbi92YWxpZGF0ZVRhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHOzs7QUFFSCw0Q0FBZ0Q7QUFDaEQscUNBQXdEO0FBRXhELCtDQUFxRDtBQUNyRCwyREFBaUU7QUFDakUsdURBQTZEO0FBQzdELHVDQUE2QztBQUM3QyxpREFBdUQ7QUFJdkQ7OztHQUdHO0FBQ0gsTUFBYSxXQUFXO0lBS3BCOzs7Ozs7Ozs7OztPQVdHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFnQjtRQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNwQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksa0NBQW9CLEVBQUUsQ0FBQztTQUNsRDtRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSSxNQUFNLENBQUMsaUJBQWlCLENBQUMsT0FBZ0I7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMxQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSw4Q0FBMEIsRUFBRSxDQUFDO1NBQzlEO1FBQ0QsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFnQjtRQUMxQyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBZ0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFnQjtRQUN2QyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxlQUFlLENBQUMsWUFBeUIsRUFBRSxZQUEwQjtRQUMvRSxJQUFJLFlBQVksSUFBSSxJQUFBLHdCQUFlLEVBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNsRSxPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUc7Z0JBQ2YseURBQXlEO2dCQUN6RCxPQUFPLEVBQUUsSUFBSSxvQ0FBcUIsRUFBRTtnQkFDcEMsYUFBYSxFQUFFLElBQUksb0NBQXFCLEVBQUU7Z0JBQzFDLEtBQUssRUFBRSxJQUFJLDBCQUFnQixFQUFFO2dCQUM3QixnQkFBZ0IsRUFBRSxJQUFJLDBDQUF3QixFQUFFO2dCQUNoRCx3REFBd0Q7YUFDM0QsQ0FBQztTQUNMO1FBQ0QsT0FBTyxJQUFJLENBQUMsV0FBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQWdCLEVBQUUsWUFBeUIsRUFBRSxZQUEwQjs7UUFDakcsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDbkUsd0NBQXdDO1FBQ3hDLE9BQU8sTUFBQSxTQUFTLGFBQVQsU0FBUyx1QkFBVCxTQUFTLENBQUUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxtQ0FBSSxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEUsQ0FBQzs7QUFqSUwsa0NBa0lDO0FBL0hrQix1QkFBVyxHQUFrRCxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0IHsgUmVzdWx0LCBzdWNjZWVkIH0gZnJvbSAnQGZndi90cy11dGlscyc7XG5pbXBvcnQgeyBUYWdWYWxpZGl0eSwgY29tcGFyZVZhbGlkaXR5IH0gZnJvbSAnLi9jb21tb24nO1xuXG5pbXBvcnQgeyBJc0Nhbm9uaWNhbFZhbGlkYXRvciB9IGZyb20gJy4vaXNDYW5vbmljYWwnO1xuaW1wb3J0IHsgSXNJblByZWZlcnJlZEZyb21WYWxpZGF0b3IgfSBmcm9tICcuL2lzSW5QcmVmZXJyZWRGb3JtJztcbmltcG9ydCB7IElzU3RyaWN0bHlWYWxpZFZhbGlkYXRvciB9IGZyb20gJy4vaXNTdHJpY3RseVZhbGlkJztcbmltcG9ydCB7IElzVmFsaWRWYWxpZGF0b3IgfSBmcm9tICcuL2lzVmFsaWQnO1xuaW1wb3J0IHsgSXNXZWxsRm9ybWVkVmFsaWRhdG9yIH0gZnJvbSAnLi9pc1dlbGxGb3JtZWQnO1xuaW1wb3J0IHsgU3VidGFncyB9IGZyb20gJy4uL2NvbW1vbic7XG5pbXBvcnQgeyBUYWdWYWxpZGF0b3IgfSBmcm9tICcuL2Jhc2VWYWxpZGF0b3InO1xuXG4vKipcbiAqIFZhbGlkYXRpb24gaGVscGVycyBmb3IgQkNQLTQ3IGxhbmd1YWdlIHRhZ3MuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBjbGFzcyBWYWxpZGF0ZVRhZyB7XG4gICAgcHJpdmF0ZSBzdGF0aWMgX2lzQ2Fub25pY2FsPzogVGFnVmFsaWRhdG9yO1xuICAgIHByaXZhdGUgc3RhdGljIF9pc0luUHJlZmVycmVkRm9ybT86IFRhZ1ZhbGlkYXRvcjtcbiAgICBwcml2YXRlIHN0YXRpYyBfdmFsaWRhdG9yczogUmVjb3JkPFRhZ1ZhbGlkaXR5LCBUYWdWYWxpZGF0b3I+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lcyBpZiBzdXBwbGllZCB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSBhcmUgaW4gY2Fub25pY2FsIGZvcm0sXG4gICAgICogbWVhbmluZyB0aGF0IHRoZXkgYXJlIGF0IGxlYXN0IHdlbGwtZm9ybWVkIGFzIHNwZWNpZmllZCBieVxuICAgICAqIHtAbGluayBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNTY0Ni5odG1sI3NlY3Rpb24tMi4yLjkgfCBSRkMgNTY0Nn0sIGFuZFxuICAgICAqIGFsbCBzdWJ0YWdzIGFyZSBhbHNvXG4gICAgICoge0BsaW5rIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM1NjQ2Lmh0bWwjc2VjdGlvbi0yLjEuMSB8IGNhcGl0YWxpemVkIGFzIHJlY29tbWVuZGVkfS5cbiAgICAgKiBAcGFyYW0gc3VidGFncyAtIFRoZSB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSB0byB0ZXN0LlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0gcmVwcmVzZW50XG4gICAgICogYSBsYW5ndWFnZSB0YWcgaW4gY2Fub25pY2FsLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICogQGV4YW1wbGUgYGVuLVVTYCBpcyBpbiBjYW5vbmljYWwgZm9ybSwgYGVuLXVzYCBpcyBub3QuXG4gICAgICogQGV4YW1wbGUgYGVuZy1VU2AgaXMgaW4gY2Fub25pY2FsIGZvcm0sIGBlbmctdXNgIGlzIG5vdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzQ2Fub25pY2FsKHN1YnRhZ3M6IFN1YnRhZ3MpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLl9pc0Nhbm9uaWNhbCkge1xuICAgICAgICAgICAgdGhpcy5faXNDYW5vbmljYWwgPSBuZXcgSXNDYW5vbmljYWxWYWxpZGF0b3IoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5faXNDYW5vbmljYWwudmFsaWRhdGVTdWJ0YWdzKHN1YnRhZ3MpLmlzU3VjY2VzcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERldGVybWluZXMgaWYgc3VwcGxpZWQge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0gYXJlXG4gICAgICogaW4gcHJlZmVycmVkIGZvcm0uIFByZWZlcnJlZCBmb3JtIGlzIHZhbGlkIGFzIHNwZWNpZmllZCBieVxuICAgICAqIHtAbGluayAgaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzU2NDYuaHRtbCNzZWN0aW9uLTIuMi45IHwgUkZDIDU2NDZ9IGFuZFxuICAgICAqIGFsc28gbWVldHMgYWRkaXRpb25hbCBwcmVmZXJlbmNlcyBzcGVjaWZpZWQgaW4gdGhlXG4gICAgICoge0BsaW5rIGh0dHBzOi8vd3d3LmlhbmEub3JnL2Fzc2lnbm1lbnRzL2xhbmd1YWdlLXN1YnRhZy1yZWdpc3RyeS9sYW5ndWFnZS1zdWJ0YWctcmVnaXN0cnkgfCBsYW5ndWFnZSBzdWJ0YWcgcmVnaXN0cnl9IC1cbiAgICAgKiBleHRyYW5lb3VzIChzdXBwcmVzc2VkKSBzY3JpcHQgdGFncywgZGVwcmVjYXRlZCBsYW5ndWFnZSwgZXh0bGFuZywgc2NyaXB0IG9yIHJlZ2lvbiB0YWdzIG9yXG4gICAgICogZGVwcmVjYXRlZCBncmFuZGZhdGhlcmVkIG9yIHJlZHVuZGFudCB0YWdzICh3aXRoIGEgZGVmaW5lZCBwcmVmZXJyZWQtdmFsdWUpIGFyZSBub3QgYWxsb3dlZC5cbiAgICAgKiBAcGFyYW0gc3VidGFncyAtIFRoZSB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSB0byB0ZXN0LlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0gcmVwcmVzZW50XG4gICAgICogYSB2YWxpZCBsYW5ndWFnZSB0YWcgaW4gcHJlZmVycmVkIGZvcm0sIGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKiBAZXhhbXBsZSBgZW4tVVNgIGlzIGluIHByZWZlcnJlZCBmb3JtLCBgZW4tTGF0bi1VU2AgaXMgbm90LlxuICAgICAqIEBleGFtcGxlIGBjbW5gIGlzIGluIHByZWZlcnJlZCBmb3JtLCBgemgtY21uLUhhbnNgIGlzIG5vdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzSW5QcmVmZXJyZWRGb3JtKHN1YnRhZ3M6IFN1YnRhZ3MpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLl9pc0luUHJlZmVycmVkRm9ybSkge1xuICAgICAgICAgICAgdGhpcy5faXNJblByZWZlcnJlZEZvcm0gPSBuZXcgSXNJblByZWZlcnJlZEZyb21WYWxpZGF0b3IoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5faXNJblByZWZlcnJlZEZvcm0udmFsaWRhdGVTdWJ0YWdzKHN1YnRhZ3MpLmlzU3VjY2VzcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERldGVybWluZXMgaWYgc3VwcGxpZWQge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0gYXJlXG4gICAgICogc3RyaWN0bHkgdmFsaWQuICBBIHN0cmljdGx5IHZhbGlkIHRhZyBpcyBib3RoXG4gICAgICoge0BsaW5rIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM1NjQ2Lmh0bWwjc2VjdGlvbi0yLjIuOSB8IHZhbGlkIGFzIGRlZmluZWQgaW4gdGhlIFJGQ31cbiAgICAgKiBhbmQgbWVldHMgYW55IG90aGVyIHJlcXVpcmVtZW50cyBzdWNoIGFzXG4gICAgICoge0BsaW5rIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM1NjQ2Lmh0bWwjc2VjdGlvbi0zLjEuOCB8IHByZWZpeCB2YWxpZGl0eX0uXG4gICAgICogQHBhcmFtIHN1YnRhZ3MgLSBUaGUge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0gdG8gdGVzdC5cbiAgICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFncyB9IHJlcHJlc2VudFxuICAgICAqIGEgc3RyaWN0bHkgdmFsaWQgbGFuZ3VhZ2UgdGFnLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICogQGV4YW1wbGUgYGNhLXZhbGVuY2lhYCBpcyBzdHJpY3RseSB2YWxpZCwgYGVzLXZhbGVuY2lhYCBpcyBub3QuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpc1N0cmljdGx5VmFsaWQoc3VidGFnczogU3VidGFncyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZVN1YnRhZ3Moc3VidGFncywgJ3N0cmljdGx5LXZhbGlkJykuaXNTdWNjZXNzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lcyBpZiBzdXBwbGllZCB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSBhcmVcbiAgICAgKiB2YWxpZCBhcyBzcGVjaWZpZWQgYnkge0BsaW5rIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM1NjQ2Lmh0bWwjc2VjdGlvbi0yLjIuOSB8IFJGQyA1NjQ2fSxcbiAgICAgKiBtZWFuaW5nIHRoYXQgYWxsIHN1YnRhZ3MsIG9yIHRoZSB0YWcgaXRzZWxmIGZvciBncmFuZGZhdGhlcmVkIHRhZ3MsIGFyZSBkZWZpbmVkIGluIHRoZVxuICAgICAqIHtAbGluayBodHRwczovL3d3dy5pYW5hLm9yZy9hc3NpZ25tZW50cy9sYW5ndWFnZS1zdWJ0YWctcmVnaXN0cnkvbGFuZ3VhZ2Utc3VidGFnLXJlZ2lzdHJ5IHwgSUFOQSBsYW5ndWFnZSBzdWJ0YWcgcmVnaXN0cnl9LlxuICAgICAqIEBwYXJhbSBzdWJ0YWdzIC0gVGhlIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFncyB9IHRvIHRlc3QuXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSByZXByZXNlbnRcbiAgICAgKiBhIHZhbGlkIGxhbmd1YWdlIHRhZywgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqIEBleGFtcGxlIGBlbi1VU2AgaXMgdmFsaWQsIGBlbmctVVNgIGlzIG5vdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzVmFsaWQoc3VidGFnczogU3VidGFncyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZVN1YnRhZ3Moc3VidGFncywgJ3ZhbGlkJykuaXNTdWNjZXNzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lcyBpZiBzdXBwbGllZCB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSBhcmVcbiAgICAgKiB3ZWxsLWZvcm1lZCBhcyBzcGVjaWZpZWQgYnkge0BsaW5rIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM1NjQ2Lmh0bWwjc2VjdGlvbi0yLjIuOSB8IFJGQyA1NjQ2fSxcbiAgICAgKiBtZWFuaW5nIHRoYXQgYWxsIHN1YnRhZ3MgbWVldCB0aGUgZ3JhbW1hciBkZWZpbmVkIGluIHRoZSBzcGVjaWZpY2F0aW9uLlxuICAgICAqIEBwYXJhbSBzdWJ0YWdzIC0gVGhlIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFncyB9IHRvIHRlc3QuXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3MgfSByZXByZXNlbnRcbiAgICAgKiBhIHdlbGwtZm9ybWVkIGxhbmd1YWdlIHRhZywgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqIEBleGFtcGxlIGBlbi1VU2AgaXMgdmFsaWQsIGBlbmdsaXNoLVVTYCBpcyBub3QuXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaXNXZWxsRm9ybWVkKHN1YnRhZ3M6IFN1YnRhZ3MpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsaWRhdGVTdWJ0YWdzKHN1YnRhZ3MsICd3ZWxsLWZvcm1lZCcpLmlzU3VjY2VzcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENob29zZXMgYW4gYXBwcm9wcmlhdGUgZGVmYXVsdCB0YWcgdmFsaWRhdG9yIGdpdmVuIGRlc2lyZWQgYW5kIG9wdGlvbmFsIGN1cnJlbnRcbiAgICAgKiB7QGxpbmsgQmNwNDcuVGFnVmFsaWRpdHkgfCB2YWxpZGF0aW9uIGxldmVsfS5cbiAgICAgKiBAcGFyYW0gd2FudFZhbGlkaXR5IC0gVGhlIGRlc2lyZWQge0BsaW5rIEJjcDQ3LlRhZ1ZhbGlkaXR5IHwgdmFsaWRpdHkgbGV2ZWx9LlxuICAgICAqIEBwYXJhbSBoYXZlVmFsaWRpdHkgLSAob3B0aW9uYWwpIFRoZSBjdXJyZW50IHtAbGluayBCY3A0Ny5UYWdWYWxpZGl0eSB8IHZhbGlkaXR5IGxldmVsfS5cbiAgICAgKiBAcmV0dXJucyBBbiBhcHByb3ByaWF0ZSB7QGxpbmsgQmNwNDcuVGFnVmFsaWRhdG9yIHwgdGFnIHZhbGlkYXRvcn0gb3IgYHVuZGVmaW5lZGAgaWYgbm9cbiAgICAgKiBhZGRpdGlvbmFsIHZhbGlkYXRpb24gaXMgbmVjZXNzYXJ5LlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgY2hvb3NlVmFsaWRhdG9yKHdhbnRWYWxpZGl0eTogVGFnVmFsaWRpdHksIGhhdmVWYWxpZGl0eT86IFRhZ1ZhbGlkaXR5KTogVGFnVmFsaWRhdG9yIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKGhhdmVWYWxpZGl0eSAmJiBjb21wYXJlVmFsaWRpdHkoaGF2ZVZhbGlkaXR5LCB3YW50VmFsaWRpdHkpID49IDApIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuX3ZhbGlkYXRvcnMpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbGlkYXRvcnMgPSB7XG4gICAgICAgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uICovXG4gICAgICAgICAgICAgICAgdW5rbm93bjogbmV3IElzV2VsbEZvcm1lZFZhbGlkYXRvcigpLFxuICAgICAgICAgICAgICAgICd3ZWxsLWZvcm1lZCc6IG5ldyBJc1dlbGxGb3JtZWRWYWxpZGF0b3IoKSxcbiAgICAgICAgICAgICAgICB2YWxpZDogbmV3IElzVmFsaWRWYWxpZGF0b3IoKSxcbiAgICAgICAgICAgICAgICAnc3RyaWN0bHktdmFsaWQnOiBuZXcgSXNTdHJpY3RseVZhbGlkVmFsaWRhdG9yKCksXG4gICAgICAgICAgICAgICAgLyogZXNsaW50LWVuYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRvcnMhW3dhbnRWYWxpZGl0eV07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVmFsaWRhdGVzIHN1cHBsaWVkIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFncyB9IHRvIGEgcmVxdWVzdGVkXG4gICAgICoge0BsaW5rIEJjcDQ3LlRhZ1ZhbGlkaXR5IHwgdmFsaWRpdHkgbGV2ZWx9LCBpZiBuZWNlc3NhcnkuXG4gICAgICogQHBhcmFtIHN1YnRhZ3MgLSBUaGUge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0gdG8gYmUgdmFsaWRhdGVkLlxuICAgICAqIEBwYXJhbSB3YW50VmFsaWRpdHkgLSBUaGUgZGVzaXJlZCB7QGxpbmsgQmNwNDcuVGFnVmFsaWRpdHkgfCB2YWxpZGl0eSBsZXZlbH0uXG4gICAgICogQHBhcmFtIGhhdmVWYWxpZGl0eSAtIChvcHRpb25hbCkgVGhlIGN1cnJlbnQge0BsaW5rIEJjcDQ3LlRhZ1ZhbGlkaXR5IHwgdmFsaWRpdHkgbGV2ZWx9LlxuICAgICAqIEByZXR1cm5zIGBTdWNjZXNzYCB3aXRoIHRoZSB2YWxpZGF0ZWQge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzIH0sIG9yXG4gICAgICogYEZhaWx1cmVgIHdpdGggZGV0YWlscyBpZiBhbiBlcnJvciBvY2N1cnMuXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgdmFsaWRhdGVTdWJ0YWdzKHN1YnRhZ3M6IFN1YnRhZ3MsIHdhbnRWYWxpZGl0eTogVGFnVmFsaWRpdHksIGhhdmVWYWxpZGl0eT86IFRhZ1ZhbGlkaXR5KTogUmVzdWx0PGJvb2xlYW4+IHtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5jaG9vc2VWYWxpZGF0b3Iod2FudFZhbGlkaXR5LCBoYXZlVmFsaWRpdHkpO1xuICAgICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAtIGEgcGFpbiB0byB0ZXN0XG4gICAgICAgIHJldHVybiB2YWxpZGF0b3I/LnZhbGlkYXRlU3VidGFncyhzdWJ0YWdzKSA/PyBzdWNjZWVkKHRydWUpO1xuICAgIH1cbn1cbiJdfQ==
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"converters.d.ts","sourceRoot":"","sources":["../../../src/iana/common/converters.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,SAAS,EAAc,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,gBAAgB,wDAAuC,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,2DAAyC,CAAC;AAE1E;;;GAGG;AACH,eAAO,MAAM,mBAAmB,2DAAyC,CAAC;AAE1E;;;GAGG;AACH,eAAO,MAAM,eAAe,uDAAqC,CAAC;AAElE;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAKhH"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022 Erik Fortune
4
+ *
5
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ * of this software and associated documentation files (the "Software"), to deal
7
+ * in the Software without restriction, including without limitation the rights
8
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ * copies of the Software, and to permit persons to whom the Software is
10
+ * furnished to do so, subject to the following conditions:
11
+ *
12
+ * The above copyright notice and this permission notice shall be included in all
13
+ * copies or substantial portions of the Software.
14
+ *
15
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ * SOFTWARE.
22
+ */
23
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
24
+ if (k2 === undefined) k2 = k;
25
+ var desc = Object.getOwnPropertyDescriptor(m, k);
26
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
27
+ desc = { enumerable: true, get: function() { return m[k]; } };
28
+ }
29
+ Object.defineProperty(o, k2, desc);
30
+ }) : (function(o, m, k, k2) {
31
+ if (k2 === undefined) k2 = k;
32
+ o[k2] = m[k];
33
+ }));
34
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
35
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
36
+ }) : function(o, v) {
37
+ o["default"] = v;
38
+ });
39
+ var __importStar = (this && this.__importStar) || function (mod) {
40
+ if (mod && mod.__esModule) return mod;
41
+ var result = {};
42
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
43
+ __setModuleDefault(result, mod);
44
+ return result;
45
+ };
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.datedRegistry = exports.unM49RegionCode = exports.isoAlpha3RegionCode = exports.isoAlpha2RegionCode = exports.yearMonthDaySpec = void 0;
48
+ const Validate = __importStar(require("./validate"));
49
+ const ts_utils_1 = require("@fgv/ts-utils");
50
+ /**
51
+ * Validating converter from string {@link Iana.Model.YearMonthDaySpec}.
52
+ * @public
53
+ */
54
+ exports.yearMonthDaySpec = Validate.yearMonthDateSpec.converter;
55
+ /**
56
+ * Validating converter from string {@link Iana.Model.IsoAlpha2RegionCode}.
57
+ * @public
58
+ */
59
+ exports.isoAlpha2RegionCode = Validate.isoAlpha2RegionCode.converter;
60
+ /**
61
+ * Validating converter from string {@link Iana.Model.IsoAlpha3RegionCode}.
62
+ * @public
63
+ */
64
+ exports.isoAlpha3RegionCode = Validate.isoAlpha3RegionCode.converter;
65
+ /**
66
+ * Validating converter from string {@link Iana.Model.UnM49RegionCode}.
67
+ * @public
68
+ */
69
+ exports.unM49RegionCode = Validate.unM49RegionCode.converter;
70
+ /**
71
+ * Helper function which creates a converter that returns a validated {@Link Iana.Model.DatedRegistry | DatedRegistry}
72
+ * containing entries of supplied template type `T`.
73
+ * @param entryConverter - A `Converter<T>` to validate each entry
74
+ * @returns A new validating `Converter` which yields {@Link Iana.Model.DatedRegistry | DatedRegistry<T>}
75
+ * @public
76
+ */
77
+ function datedRegistry(entryConverter) {
78
+ return ts_utils_1.Converters.strictObject({
79
+ fileDate: exports.yearMonthDaySpec,
80
+ entries: ts_utils_1.Converters.arrayOf(entryConverter),
81
+ });
82
+ }
83
+ exports.datedRegistry = datedRegistry;
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pYW5hL2NvbW1vbi9jb252ZXJ0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgscURBQXVDO0FBRXZDLDRDQUFzRDtBQUd0RDs7O0dBR0c7QUFDVSxRQUFBLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUM7QUFFckU7OztHQUdHO0FBQ1UsUUFBQSxtQkFBbUIsR0FBRyxRQUFRLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDO0FBRTFFOzs7R0FHRztBQUNVLFFBQUEsbUJBQW1CLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztBQUUxRTs7O0dBR0c7QUFDVSxRQUFBLGVBQWUsR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQztBQUVsRTs7Ozs7O0dBTUc7QUFDSCxTQUFnQixhQUFhLENBQWtCLGNBQWdDO0lBQzNFLE9BQU8scUJBQVUsQ0FBQyxZQUFZLENBQW1CO1FBQzdDLFFBQVEsRUFBRSx3QkFBZ0I7UUFDMUIsT0FBTyxFQUFFLHFCQUFVLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztLQUM5QyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBTEQsc0NBS0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0ICogYXMgVmFsaWRhdGUgZnJvbSAnLi92YWxpZGF0ZSc7XG5cbmltcG9ydCB7IENvbnZlcnRlciwgQ29udmVydGVycyB9IGZyb20gJ0BmZ3YvdHMtdXRpbHMnO1xuaW1wb3J0IHsgRGF0ZWRSZWdpc3RyeSB9IGZyb20gJy4vbW9kZWwnO1xuXG4vKipcbiAqIFZhbGlkYXRpbmcgY29udmVydGVyIGZyb20gc3RyaW5nIHtAbGluayBJYW5hLk1vZGVsLlllYXJNb250aERheVNwZWN9LlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgeWVhck1vbnRoRGF5U3BlYyA9IFZhbGlkYXRlLnllYXJNb250aERhdGVTcGVjLmNvbnZlcnRlcjtcblxuLyoqXG4gKiBWYWxpZGF0aW5nIGNvbnZlcnRlciBmcm9tIHN0cmluZyB7QGxpbmsgSWFuYS5Nb2RlbC5Jc29BbHBoYTJSZWdpb25Db2RlfS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzb0FscGhhMlJlZ2lvbkNvZGUgPSBWYWxpZGF0ZS5pc29BbHBoYTJSZWdpb25Db2RlLmNvbnZlcnRlcjtcblxuLyoqXG4gKiBWYWxpZGF0aW5nIGNvbnZlcnRlciBmcm9tIHN0cmluZyB7QGxpbmsgSWFuYS5Nb2RlbC5Jc29BbHBoYTNSZWdpb25Db2RlfS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IGlzb0FscGhhM1JlZ2lvbkNvZGUgPSBWYWxpZGF0ZS5pc29BbHBoYTNSZWdpb25Db2RlLmNvbnZlcnRlcjtcblxuLyoqXG4gKiBWYWxpZGF0aW5nIGNvbnZlcnRlciBmcm9tIHN0cmluZyB7QGxpbmsgSWFuYS5Nb2RlbC5Vbk00OVJlZ2lvbkNvZGV9LlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgdW5NNDlSZWdpb25Db2RlID0gVmFsaWRhdGUudW5NNDlSZWdpb25Db2RlLmNvbnZlcnRlcjtcblxuLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gd2hpY2ggY3JlYXRlcyBhIGNvbnZlcnRlciB0aGF0IHJldHVybnMgYSB2YWxpZGF0ZWQge0BMaW5rIElhbmEuTW9kZWwuRGF0ZWRSZWdpc3RyeSB8IERhdGVkUmVnaXN0cnl9XG4gKiBjb250YWluaW5nIGVudHJpZXMgb2Ygc3VwcGxpZWQgdGVtcGxhdGUgdHlwZSBgVGAuXG4gKiBAcGFyYW0gZW50cnlDb252ZXJ0ZXIgLSBBIGBDb252ZXJ0ZXI8VD5gIHRvIHZhbGlkYXRlIGVhY2ggZW50cnlcbiAqIEByZXR1cm5zIEEgbmV3IHZhbGlkYXRpbmcgYENvbnZlcnRlcmAgd2hpY2ggeWllbGRzIHtATGluayBJYW5hLk1vZGVsLkRhdGVkUmVnaXN0cnkgfCBEYXRlZFJlZ2lzdHJ5PFQ+fVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gZGF0ZWRSZWdpc3RyeTxULCBUQyA9IHVua25vd24+KGVudHJ5Q29udmVydGVyOiBDb252ZXJ0ZXI8VCwgVEM+KTogQ29udmVydGVyPERhdGVkUmVnaXN0cnk8VD4sIFRDPiB7XG4gICAgcmV0dXJuIENvbnZlcnRlcnMuc3RyaWN0T2JqZWN0PERhdGVkUmVnaXN0cnk8VD4+KHtcbiAgICAgICAgZmlsZURhdGU6IHllYXJNb250aERheVNwZWMsXG4gICAgICAgIGVudHJpZXM6IENvbnZlcnRlcnMuYXJyYXlPZihlbnRyeUNvbnZlcnRlciksXG4gICAgfSk7XG59XG4iXX0=
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/iana/common/model.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAE/D;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC;IAC5B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,CAAC,EAAE,CAAC;CAChB"}
@@ -21,4 +21,4 @@
21
21
  * SOFTWARE.
22
22
  */
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdW5zZC9jc3YvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgRXJpayBGb3J0dW5lXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxuICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4gKiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgeyBJc29BbHBoYTJSZWdpb25Db2RlLCBJc29BbHBoYTNSZWdpb25Db2RlLCBVbk00OVJlZ2lvbkNvZGUgfSBmcm9tICcuLi8uLi9pYW5hL21vZGVsJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNNDlDc3ZSb3cge1xuICAgIGdsb2JhbENvZGU6IFVuTTQ5UmVnaW9uQ29kZTtcbiAgICBnbG9iYWxOYW1lOiBzdHJpbmc7XG4gICAgcmVnaW9uQ29kZT86IFVuTTQ5UmVnaW9uQ29kZTtcbiAgICByZWdpb25OYW1lPzogc3RyaW5nO1xuICAgIHN1YlJlZ2lvbkNvZGU/OiBVbk00OVJlZ2lvbkNvZGU7XG4gICAgc3ViUmVnaW9uTmFtZT86IHN0cmluZztcbiAgICBpbnRlcm1lZGlhdGVSZWdpb25Db2RlPzogVW5NNDlSZWdpb25Db2RlO1xuICAgIGludGVybWVkaWF0ZVJlZ2lvbk5hbWU/OiBzdHJpbmc7XG4gICAgY291bnRyeU9yQXJlYTogc3RyaW5nO1xuICAgIG00OUNvZGU6IFVuTTQ5UmVnaW9uQ29kZTtcbiAgICBpc29BbHBoYTJSZWdpb25Db2RlPzogSXNvQWxwaGEyUmVnaW9uQ29kZTtcbiAgICBpc29BbHBoYTNSZWdpb25Db2RlPzogSXNvQWxwaGEzUmVnaW9uQ29kZTtcbiAgICBsZWFzdERldmVsb3BlZENvdW50cnk6IGJvb2xlYW47XG4gICAgbGFuZExvY2tlZERldmVsb3BpbmdDb3VudHJ5OiBib29sZWFuO1xuICAgIHNtYWxsSXNsYW5kRGV2ZWxvcGluZ1N0YXRlOiBib29sZWFuO1xufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaWFuYS9jb21tb24vbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgRXJpayBGb3J0dW5lXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxuICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4gKiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgeyBCcmFuZCB9IGZyb20gJ0BmZ3YvdHMtdXRpbHMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gSVNPIDMxNjYgQWxwaGEtMiByZWdpb24gY29kZS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgSXNvQWxwaGEyUmVnaW9uQ29kZSA9IEJyYW5kPHN0cmluZywgJ0lzb0FscGhhMlJlZ2lvbkNvZGUnPjtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIElTTyAzMTY2IEFscGhhLTMgcmVnaW9uIGNvZGUuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIElzb0FscGhhM1JlZ2lvbkNvZGUgPSBCcmFuZDxzdHJpbmcsICdJc29BbHBoYTNSZWdpb25Db2RlJz47XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIFVOIE0uNDkgbnVtZXJpYyByZWdpb24gY29kZS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgVW5NNDlSZWdpb25Db2RlID0gQnJhbmQ8c3RyaW5nLCAnVW5NNDlSZWdpb25Db2RlJz47XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRhdGUgc3RyaW5nIGluIHRoZSBmb3JtYXQgWVlZWS1NTS1ERC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgWWVhck1vbnRoRGF5U3BlYyA9IEJyYW5kPHN0cmluZywgJ1llYXJNb250aERheVNwZWMnPjtcblxuLyoqXG4gKiBBIGRhdGVkIGNvbGxlY3Rpb24gb2YgcmVnaXN0cnkgZW50cmllcyBvZiBhIHNwZWNpZmllZCB0ZW1wbGF0ZWQgdHlwZS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRlZFJlZ2lzdHJ5PFQ+IHtcbiAgICBmaWxlRGF0ZTogWWVhck1vbnRoRGF5U3BlYztcbiAgICBlbnRyaWVzOiBUW107XG59XG4iXX0=
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registeredItems.d.ts","sourceRoot":"","sources":["../../../src/iana/common/registeredItems.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,MAAM,EAAiB,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;GAEG;AACH,8BAAsB,mBAAmB,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,SAAS,MAAM,EAAE,KAAK;IACtF,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAChC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAEtD,SAAS,aAAa,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC;IAM7D,UAAU,IAAI,IAAI,EAAE;IAIpB,MAAM,IAAI,KAAK,EAAE;IAIjB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS;IAcnD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS;IAI5D,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;IAK5C,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC;IAKjE,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,IAAI;IAIvC,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,IAAI;IAItC,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAIvC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAS5C,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,IAAI;IAQlC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,IAAI;IAO3C,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAI9C,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAUzC,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;IAUpD,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;aAO/B,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;CAChE"}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022 Erik Fortune
4
+ *
5
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ * of this software and associated documentation files (the "Software"), to deal
7
+ * in the Software without restriction, including without limitation the rights
8
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ * copies of the Software, and to permit persons to whom the Software is
10
+ * furnished to do so, subject to the following conditions:
11
+ *
12
+ * The above copyright notice and this permission notice shall be included in all
13
+ * copies or substantial portions of the Software.
14
+ *
15
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ * SOFTWARE.
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.RegisteredItemScope = void 0;
25
+ const ts_utils_1 = require("@fgv/ts-utils");
26
+ /**
27
+ * @internal
28
+ */
29
+ class RegisteredItemScope {
30
+ constructor(type, validate) {
31
+ this._items = new Map();
32
+ this._type = type;
33
+ this._validate = validate;
34
+ }
35
+ getAllKeys() {
36
+ return Array.from(this._items.keys());
37
+ }
38
+ getAll() {
39
+ return Array.from(this._items.values());
40
+ }
41
+ tryGet(want) {
42
+ if (want) {
43
+ const got = this._items.get(want);
44
+ if (!got) {
45
+ const result = this.toCanonical(want);
46
+ if (result.isSuccess()) {
47
+ return this._items.get(result.value);
48
+ }
49
+ }
50
+ return got;
51
+ }
52
+ return undefined;
53
+ }
54
+ tryGetCanonical(want) {
55
+ return want ? this._items.get(want) : undefined;
56
+ }
57
+ get(want) {
58
+ const got = this.tryGet(want);
59
+ return got ? (0, ts_utils_1.succeed)(got) : (0, ts_utils_1.fail)(`invalid ${this._type}`);
60
+ }
61
+ getCanonical(want) {
62
+ const got = this.tryGetCanonical(want);
63
+ return got ? (0, ts_utils_1.succeed)(got) : (0, ts_utils_1.fail)(`invalid ${this._type}`);
64
+ }
65
+ isWellFormed(val) {
66
+ return this._validate.isWellFormed(val);
67
+ }
68
+ isCanonical(val) {
69
+ return this._validate.isCanonical(val);
70
+ }
71
+ toCanonical(val) {
72
+ return this._validate.toCanonical(val);
73
+ }
74
+ toValidCanonical(val) {
75
+ return this._validate.toCanonical(val).onSuccess((canonical) => {
76
+ if (this._items.has(canonical)) {
77
+ return (0, ts_utils_1.succeed)(canonical);
78
+ }
79
+ return (0, ts_utils_1.fail)(`${val}: invalid ${this._type}`);
80
+ });
81
+ }
82
+ isValid(val) {
83
+ const result = this.toCanonical(val);
84
+ if (result.isSuccess()) {
85
+ return this._items.has(result.value);
86
+ }
87
+ return false;
88
+ }
89
+ isValidCanonical(val) {
90
+ if (this.isCanonical(val)) {
91
+ return this._items.has(val);
92
+ }
93
+ return false;
94
+ }
95
+ verifyIsWellFormed(val) {
96
+ return this._validate.verifyIsWellFormed(val);
97
+ }
98
+ verifyIsValid(val) {
99
+ if (this.isValid(val)) {
100
+ return (0, ts_utils_1.succeed)(val);
101
+ }
102
+ if (!this.isWellFormed(val)) {
103
+ return (0, ts_utils_1.fail)(`${val}: malformed ${this._type}.`);
104
+ }
105
+ return (0, ts_utils_1.fail)(`${val}: invalid ${this._type}.`);
106
+ }
107
+ verifyIsCanonical(val) {
108
+ if (this.isCanonical(val)) {
109
+ return (0, ts_utils_1.succeed)(val);
110
+ }
111
+ if (!this.isWellFormed(val)) {
112
+ return (0, ts_utils_1.fail)(`${val}: malformed ${this._type}`);
113
+ }
114
+ return (0, ts_utils_1.fail)(`${val}: non-canonical ${this._type}`);
115
+ }
116
+ _validateKey(key) {
117
+ if (!this.isCanonical(key)) {
118
+ return (0, ts_utils_1.fail)(`${key}: ${this._type} is not in canonical form`);
119
+ }
120
+ return (0, ts_utils_1.succeed)(true);
121
+ }
122
+ }
123
+ exports.RegisteredItemScope = RegisteredItemScope;
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXJlZEl0ZW1zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2lhbmEvY29tbW9uL3JlZ2lzdGVyZWRJdGVtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHOzs7QUFFSCw0Q0FBc0Q7QUFHdEQ7O0dBRUc7QUFDSCxNQUFzQixtQkFBbUI7SUFLckMsWUFBc0IsSUFBVyxFQUFFLFFBQWlDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztJQUM5QixDQUFDO0lBRU0sVUFBVTtRQUNiLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVNLE1BQU07UUFDVCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxNQUFNLENBQUMsSUFBd0I7UUFDbEMsSUFBSSxJQUFJLEVBQUU7WUFDTixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNOLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3RDLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRSxFQUFFO29CQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFhLENBQUMsQ0FBQztpQkFDaEQ7YUFDSjtZQUNELE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0lBRU0sZUFBZSxDQUFDLElBQXdCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzVELENBQUM7SUFFTSxHQUFHLENBQUMsSUFBd0I7UUFDL0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QixPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBQSxrQkFBTyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLGVBQUksRUFBQyxXQUFXLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTSxZQUFZLENBQUMsSUFBd0I7UUFDeEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBQSxrQkFBTyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFBLGVBQUksRUFBQyxXQUFXLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFTSxZQUFZLENBQUMsR0FBWTtRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxXQUFXLENBQUMsR0FBWTtRQUMzQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSxXQUFXLENBQUMsR0FBWTtRQUMzQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxHQUFZO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDM0QsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDNUIsT0FBTyxJQUFBLGtCQUFPLEVBQUMsU0FBUyxDQUFDLENBQUM7YUFDN0I7WUFDRCxPQUFPLElBQUEsZUFBSSxFQUFDLEdBQUcsR0FBRyxhQUFhLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLE9BQU8sQ0FBQyxHQUFZO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDeEM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsR0FBWTtRQUNoQyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUMvQjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxHQUFZO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU0sYUFBYSxDQUFDLEdBQVk7UUFDN0IsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ25CLE9BQU8sSUFBQSxrQkFBTyxFQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZCO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekIsT0FBTyxJQUFBLGVBQUksRUFBQyxHQUFHLEdBQUcsZUFBZSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztTQUNuRDtRQUNELE9BQU8sSUFBQSxlQUFJLEVBQUMsR0FBRyxHQUFHLGFBQWEsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEdBQVk7UUFDakMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLE9BQU8sSUFBQSxrQkFBTyxFQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZCO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekIsT0FBTyxJQUFBLGVBQUksRUFBQyxHQUFHLEdBQUcsZUFBZSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUNsRDtRQUNELE9BQU8sSUFBQSxlQUFJLEVBQUMsR0FBRyxHQUFHLG1CQUFtQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRVMsWUFBWSxDQUFDLEdBQVM7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDeEIsT0FBTyxJQUFBLGVBQUksRUFBQyxHQUFHLEdBQUcsS0FBSyxJQUFJLENBQUMsS0FBSywyQkFBMkIsQ0FBQyxDQUFDO1NBQ2pFO1FBQ0QsT0FBTyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztDQUlKO0FBcEhELGtEQW9IQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgRXJpayBGb3J0dW5lXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxuICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4gKiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgeyBSZXN1bHQsIGZhaWwsIHN1Y2NlZWQgfSBmcm9tICdAZmd2L3RzLXV0aWxzJztcbmltcG9ydCB7IFZhbGlkYXRpb25IZWxwZXJzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmVnaXN0ZXJlZEl0ZW1TY29wZTxUVFlQRSBleHRlbmRzIHN0cmluZywgVEtFWSBleHRlbmRzIHN0cmluZywgVElURU0+IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2l0ZW1zOiBNYXA8VEtFWSwgVElURU0+O1xuICAgIHByb3RlY3RlZCByZWFkb25seSBfdHlwZTogVFRZUEU7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF92YWxpZGF0ZTogVmFsaWRhdGlvbkhlbHBlcnM8VEtFWT47XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IodHlwZTogVFRZUEUsIHZhbGlkYXRlOiBWYWxpZGF0aW9uSGVscGVyczxUS0VZPikge1xuICAgICAgICB0aGlzLl9pdGVtcyA9IG5ldyBNYXAoKTtcbiAgICAgICAgdGhpcy5fdHlwZSA9IHR5cGU7XG4gICAgICAgIHRoaXMuX3ZhbGlkYXRlID0gdmFsaWRhdGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEFsbEtleXMoKTogVEtFWVtdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5faXRlbXMua2V5cygpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QWxsKCk6IFRJVEVNW10ge1xuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLl9pdGVtcy52YWx1ZXMoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHRyeUdldCh3YW50OiBzdHJpbmcgfCB1bmRlZmluZWQpOiBUSVRFTSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh3YW50KSB7XG4gICAgICAgICAgICBjb25zdCBnb3QgPSB0aGlzLl9pdGVtcy5nZXQod2FudCBhcyBUS0VZKTtcbiAgICAgICAgICAgIGlmICghZ290KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy50b0Nhbm9uaWNhbCh3YW50KTtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0LmlzU3VjY2VzcygpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5nZXQocmVzdWx0LnZhbHVlIGFzIFRLRVkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBnb3Q7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgdHJ5R2V0Q2Fub25pY2FsKHdhbnQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IFRJVEVNIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHdhbnQgPyB0aGlzLl9pdGVtcy5nZXQod2FudCBhcyBUS0VZKSA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0KHdhbnQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IFJlc3VsdDxUSVRFTT4ge1xuICAgICAgICBjb25zdCBnb3QgPSB0aGlzLnRyeUdldCh3YW50KTtcbiAgICAgICAgcmV0dXJuIGdvdCA/IHN1Y2NlZWQoZ290KSA6IGZhaWwoYGludmFsaWQgJHt0aGlzLl90eXBlfWApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDYW5vbmljYWwod2FudDogc3RyaW5nIHwgdW5kZWZpbmVkKTogUmVzdWx0PFRJVEVNIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IGdvdCA9IHRoaXMudHJ5R2V0Q2Fub25pY2FsKHdhbnQpO1xuICAgICAgICByZXR1cm4gZ290ID8gc3VjY2VlZChnb3QpIDogZmFpbChgaW52YWxpZCAke3RoaXMuX3R5cGV9YCk7XG4gICAgfVxuXG4gICAgcHVibGljIGlzV2VsbEZvcm1lZCh2YWw6IHVua25vd24pOiB2YWwgaXMgVEtFWSB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZS5pc1dlbGxGb3JtZWQodmFsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNDYW5vbmljYWwodmFsOiB1bmtub3duKTogdmFsIGlzIFRLRVkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGUuaXNDYW5vbmljYWwodmFsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdG9DYW5vbmljYWwodmFsOiB1bmtub3duKTogUmVzdWx0PFRLRVk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlLnRvQ2Fub25pY2FsKHZhbCk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvVmFsaWRDYW5vbmljYWwodmFsOiB1bmtub3duKTogUmVzdWx0PFRLRVk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlLnRvQ2Fub25pY2FsKHZhbCkub25TdWNjZXNzKChjYW5vbmljYWwpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9pdGVtcy5oYXMoY2Fub25pY2FsKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzdWNjZWVkKGNhbm9uaWNhbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZmFpbChgJHt2YWx9OiBpbnZhbGlkICR7dGhpcy5fdHlwZX1gKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGlzVmFsaWQodmFsOiB1bmtub3duKTogdmFsIGlzIFRLRVkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLnRvQ2Fub25pY2FsKHZhbCk7XG4gICAgICAgIGlmIChyZXN1bHQuaXNTdWNjZXNzKCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9pdGVtcy5oYXMocmVzdWx0LnZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGlzVmFsaWRDYW5vbmljYWwodmFsOiB1bmtub3duKTogdmFsIGlzIFRLRVkge1xuICAgICAgICBpZiAodGhpcy5pc0Nhbm9uaWNhbCh2YWwpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5faXRlbXMuaGFzKHZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyB2ZXJpZnlJc1dlbGxGb3JtZWQodmFsOiB1bmtub3duKTogUmVzdWx0PFRLRVk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRlLnZlcmlmeUlzV2VsbEZvcm1lZCh2YWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyB2ZXJpZnlJc1ZhbGlkKHZhbDogdW5rbm93bik6IFJlc3VsdDxUS0VZPiB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQodmFsKSkge1xuICAgICAgICAgICAgcmV0dXJuIHN1Y2NlZWQodmFsKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuaXNXZWxsRm9ybWVkKHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWlsKGAke3ZhbH06IG1hbGZvcm1lZCAke3RoaXMuX3R5cGV9LmApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWlsKGAke3ZhbH06IGludmFsaWQgJHt0aGlzLl90eXBlfS5gKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmVyaWZ5SXNDYW5vbmljYWwodmFsOiB1bmtub3duKTogUmVzdWx0PFRLRVk+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNDYW5vbmljYWwodmFsKSkge1xuICAgICAgICAgICAgcmV0dXJuIHN1Y2NlZWQodmFsKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuaXNXZWxsRm9ybWVkKHZhbCkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWlsKGAke3ZhbH06IG1hbGZvcm1lZCAke3RoaXMuX3R5cGV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhaWwoYCR7dmFsfTogbm9uLWNhbm9uaWNhbCAke3RoaXMuX3R5cGV9YCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF92YWxpZGF0ZUtleShrZXk6IFRLRVkpOiBSZXN1bHQ8dHJ1ZT4ge1xuICAgICAgICBpZiAoIXRoaXMuaXNDYW5vbmljYWwoa2V5KSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhaWwoYCR7a2V5fTogJHt0aGlzLl90eXBlfSBpcyBub3QgaW4gY2Fub25pY2FsIGZvcm1gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3VjY2VlZCh0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWJzdHJhY3QgYWRkKGVudHJ5OiBUSVRFTSk6IFJlc3VsdDx0cnVlPjtcbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgX3ZhbGlkYXRlRW50cnkoZW50cnk6IFRJVEVNKTogUmVzdWx0PHRydWU+O1xufVxuIl19
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/iana/common/utils.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,gBAAgB,CAEpD"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2021 Erik Fortune
4
+ *
5
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ * of this software and associated documentation files (the "Software"), to deal
7
+ * in the Software without restriction, including without limitation the rights
8
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ * copies of the Software, and to permit persons to whom the Software is
10
+ * furnished to do so, subject to the following conditions:
11
+ *
12
+ * The above copyright notice and this permission notice shall be included in all
13
+ * copies or substantial portions of the Software.
14
+ *
15
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ * SOFTWARE.
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.nowAsYearMonthDay = void 0;
25
+ const luxon_1 = require("luxon");
26
+ /**
27
+ * Gets the current date as an {@link Iana.YearMonthDaySpec}.
28
+ * @public
29
+ */
30
+ function nowAsYearMonthDay() {
31
+ return luxon_1.DateTime.now().toFormat('yyyy-LL-dd');
32
+ }
33
+ exports.nowAsYearMonthDay = nowAsYearMonthDay;
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaWFuYS9jb21tb24vdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7O0FBRUgsaUNBQWlDO0FBR2pDOzs7R0FHRztBQUNILFNBQWdCLGlCQUFpQjtJQUM3QixPQUFPLGdCQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBcUIsQ0FBQztBQUNyRSxDQUFDO0FBRkQsOENBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIxIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0IHsgRGF0ZVRpbWUgfSBmcm9tICdsdXhvbic7XG5pbXBvcnQgeyBZZWFyTW9udGhEYXlTcGVjIH0gZnJvbSAnLi9tb2RlbCc7XG5cbi8qKlxuICogR2V0cyB0aGUgY3VycmVudCBkYXRlIGFzIGFuIHtAbGluayBJYW5hLlllYXJNb250aERheVNwZWN9LlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gbm93QXNZZWFyTW9udGhEYXkoKTogWWVhck1vbnRoRGF5U3BlYyB7XG4gICAgcmV0dXJuIERhdGVUaW1lLm5vdygpLnRvRm9ybWF0KCd5eXl5LUxMLWRkJykgYXMgWWVhck1vbnRoRGF5U3BlYztcbn1cbiJdfQ==
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/iana/common/validate.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD;;GAEG;AACH,eAAO,MAAM,iBAAiB,0DAI5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB,6DAK9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB,6DAK9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe,yDAI1B,CAAC"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2021 Erik Fortune
4
+ *
5
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ * of this software and associated documentation files (the "Software"), to deal
7
+ * in the Software without restriction, including without limitation the rights
8
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ * copies of the Software, and to permit persons to whom the Software is
10
+ * furnished to do so, subject to the following conditions:
11
+ *
12
+ * The above copyright notice and this permission notice shall be included in all
13
+ * copies or substantial portions of the Software.
14
+ *
15
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ * SOFTWARE.
22
+ */
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.unM49RegionCode = exports.isoAlpha3RegionCode = exports.isoAlpha2RegionCode = exports.yearMonthDateSpec = void 0;
25
+ const utils_1 = require("../../utils");
26
+ const ts_utils_1 = require("@fgv/ts-utils");
27
+ /**
28
+ * @public
29
+ */
30
+ exports.yearMonthDateSpec = new utils_1.RegExpValidationHelpers({
31
+ description: 'Year-Month-Date value',
32
+ wellFormed: /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/,
33
+ canonical: /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/,
34
+ });
35
+ /**
36
+ * @public
37
+ */
38
+ exports.isoAlpha2RegionCode = new utils_1.RegExpValidationHelpers({
39
+ description: 'ISO 3166-2 Alpha-2 region code',
40
+ wellFormed: /^[A-Za-z]{2}$/,
41
+ canonical: /^[A-Z]{2}$/,
42
+ toCanonical: (from) => (0, ts_utils_1.succeed)(from.toUpperCase()),
43
+ });
44
+ /**
45
+ * @public
46
+ */
47
+ exports.isoAlpha3RegionCode = new utils_1.RegExpValidationHelpers({
48
+ description: 'ISO 3166-2 Alpha-3 region code',
49
+ wellFormed: /^[A-Za-z]{3}$/,
50
+ canonical: /^[A-Z]{3}$/,
51
+ toCanonical: (from) => (0, ts_utils_1.succeed)(from.toUpperCase()),
52
+ });
53
+ /**
54
+ * @public
55
+ */
56
+ exports.unM49RegionCode = new utils_1.RegExpValidationHelpers({
57
+ description: 'UN M.49 3-digit region code',
58
+ wellFormed: /^[0-9]{3}$/,
59
+ canonical: /^[0-9]{3}$/,
60
+ });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaWFuYS9jb21tb24vdmFsaWRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7O0FBR0gsdUNBQXNEO0FBQ3RELDRDQUF3QztBQUV4Qzs7R0FFRztBQUNVLFFBQUEsaUJBQWlCLEdBQUcsSUFBSSwrQkFBdUIsQ0FBeUI7SUFDakYsV0FBVyxFQUFFLHVCQUF1QjtJQUNwQyxVQUFVLEVBQUUsOEJBQThCO0lBQzFDLFNBQVMsRUFBRSw4QkFBOEI7Q0FDNUMsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDVSxRQUFBLG1CQUFtQixHQUFHLElBQUksK0JBQXVCLENBQTRCO0lBQ3RGLFdBQVcsRUFBRSxnQ0FBZ0M7SUFDN0MsVUFBVSxFQUFFLGVBQWU7SUFDM0IsU0FBUyxFQUFFLFlBQVk7SUFDdkIsV0FBVyxFQUFFLENBQUMsSUFBK0IsRUFBRSxFQUFFLENBQUMsSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxXQUFXLEVBQStCLENBQUM7Q0FDN0csQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDVSxRQUFBLG1CQUFtQixHQUFHLElBQUksK0JBQXVCLENBQTRCO0lBQ3RGLFdBQVcsRUFBRSxnQ0FBZ0M7SUFDN0MsVUFBVSxFQUFFLGVBQWU7SUFDM0IsU0FBUyxFQUFFLFlBQVk7SUFDdkIsV0FBVyxFQUFFLENBQUMsSUFBK0IsRUFBRSxFQUFFLENBQUMsSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxXQUFXLEVBQStCLENBQUM7Q0FDN0csQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDVSxRQUFBLGVBQWUsR0FBRyxJQUFJLCtCQUF1QixDQUF3QjtJQUM5RSxXQUFXLEVBQUUsNkJBQTZCO0lBQzFDLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFNBQVMsRUFBRSxZQUFZO0NBQzFCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEgRXJpayBGb3J0dW5lXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxuICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4gKiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgKiBhcyBNb2RlbCBmcm9tICcuL21vZGVsJztcbmltcG9ydCB7IFJlZ0V4cFZhbGlkYXRpb25IZWxwZXJzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgc3VjY2VlZCB9IGZyb20gJ0BmZ3YvdHMtdXRpbHMnO1xuXG4vKipcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IHllYXJNb250aERhdGVTcGVjID0gbmV3IFJlZ0V4cFZhbGlkYXRpb25IZWxwZXJzPE1vZGVsLlllYXJNb250aERheVNwZWM+KHtcbiAgICBkZXNjcmlwdGlvbjogJ1llYXItTW9udGgtRGF0ZSB2YWx1ZScsXG4gICAgd2VsbEZvcm1lZDogL15bMC05XXs0fS1bMC05XXsyfS1bMC05XXsyfSQvLFxuICAgIGNhbm9uaWNhbDogL15bMC05XXs0fS1bMC05XXsyfS1bMC05XXsyfSQvLFxufSk7XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgaXNvQWxwaGEyUmVnaW9uQ29kZSA9IG5ldyBSZWdFeHBWYWxpZGF0aW9uSGVscGVyczxNb2RlbC5Jc29BbHBoYTJSZWdpb25Db2RlPih7XG4gICAgZGVzY3JpcHRpb246ICdJU08gMzE2Ni0yIEFscGhhLTIgcmVnaW9uIGNvZGUnLFxuICAgIHdlbGxGb3JtZWQ6IC9eW0EtWmEtel17Mn0kLyxcbiAgICBjYW5vbmljYWw6IC9eW0EtWl17Mn0kLyxcbiAgICB0b0Nhbm9uaWNhbDogKGZyb206IE1vZGVsLklzb0FscGhhMlJlZ2lvbkNvZGUpID0+IHN1Y2NlZWQoZnJvbS50b1VwcGVyQ2FzZSgpIGFzIE1vZGVsLklzb0FscGhhMlJlZ2lvbkNvZGUpLFxufSk7XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgaXNvQWxwaGEzUmVnaW9uQ29kZSA9IG5ldyBSZWdFeHBWYWxpZGF0aW9uSGVscGVyczxNb2RlbC5Jc29BbHBoYTNSZWdpb25Db2RlPih7XG4gICAgZGVzY3JpcHRpb246ICdJU08gMzE2Ni0yIEFscGhhLTMgcmVnaW9uIGNvZGUnLFxuICAgIHdlbGxGb3JtZWQ6IC9eW0EtWmEtel17M30kLyxcbiAgICBjYW5vbmljYWw6IC9eW0EtWl17M30kLyxcbiAgICB0b0Nhbm9uaWNhbDogKGZyb206IE1vZGVsLklzb0FscGhhM1JlZ2lvbkNvZGUpID0+IHN1Y2NlZWQoZnJvbS50b1VwcGVyQ2FzZSgpIGFzIE1vZGVsLklzb0FscGhhM1JlZ2lvbkNvZGUpLFxufSk7XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgdW5NNDlSZWdpb25Db2RlID0gbmV3IFJlZ0V4cFZhbGlkYXRpb25IZWxwZXJzPE1vZGVsLlVuTTQ5UmVnaW9uQ29kZT4oe1xuICAgIGRlc2NyaXB0aW9uOiAnVU4gTS40OSAzLWRpZ2l0IHJlZ2lvbiBjb2RlJyxcbiAgICB3ZWxsRm9ybWVkOiAvXlswLTldezN9JC8sXG4gICAgY2Fub25pY2FsOiAvXlswLTldezN9JC8sXG59KTtcbiJdfQ==
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"converters.d.ts","sourceRoot":"","sources":["../../src/iana/converters.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAE3C,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,CAAC"}
@@ -36,9 +36,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
36
36
  }) : function(o, v) {
37
37
  o["default"] = v;
38
38
  });
39
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
40
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
41
- };
42
39
  var __importStar = (this && this.__importStar) || function (mod) {
43
40
  if (mod && mod.__esModule) return mod;
44
41
  var result = {};
@@ -46,9 +43,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
46
43
  __setModuleDefault(result, mod);
47
44
  return result;
48
45
  };
46
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
47
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
48
+ };
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
- exports.LanguageSubtags = void 0;
51
- __exportStar(require("./jarModel"), exports);
52
- const LanguageSubtags = __importStar(require("./language-subtags/model"));
53
- exports.LanguageSubtags = LanguageSubtags;
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaWFuYS9qYXIvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCw2Q0FBMkI7QUFFM0IsMEVBQTREO0FBQ25ELDBDQUFlIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBFcmlrIEZvcnR1bmVcbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4gKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4gKiB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4gKiBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsXG4gKiBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEVcbiAqIFNPRlRXQVJFLlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vamFyTW9kZWwnO1xuXG5pbXBvcnQgKiBhcyBMYW5ndWFnZVN1YnRhZ3MgZnJvbSAnLi9sYW5ndWFnZS1zdWJ0YWdzL21vZGVsJztcbmV4cG9ydCB7IExhbmd1YWdlU3VidGFncyB9O1xuIl19
50
+ exports.Jar = void 0;
51
+ const Jar = __importStar(require("./jar/jarConverters"));
52
+ exports.Jar = Jar;
53
+ __exportStar(require("./common/converters"), exports);
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pYW5hL2NvbnZlcnRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFSCx5REFBMkM7QUFHbEMsa0JBQUc7QUFEWixzREFBb0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0ICogYXMgSmFyIGZyb20gJy4vamFyL2phckNvbnZlcnRlcnMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbi9jb252ZXJ0ZXJzJztcbmV4cG9ydCB7IEphciB9O1xuIl19
File without changes