@fgv/ts-bcp47 0.9.6 → 2.0.1-alpha.0

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 (555) hide show
  1. package/.cache/build.lint/_eslint-R7SFxnrl.json +481 -0
  2. package/dist/ts-bcp47.d.ts +2554 -0
  3. package/dist/tsdoc-metadata.json +11 -0
  4. package/lib/data/bcp/overrides.json +20 -0
  5. package/lib/data/iana/language-subtags.json +57439 -0
  6. package/{data → lib/data}/iana/language-tag-extensions.json +2 -6
  7. package/lib/data/unsd/m49.json +3723 -0
  8. package/lib/index.d.ts +6 -0
  9. package/lib/index.d.ts.map +1 -0
  10. package/lib/index.js +57 -0
  11. package/lib/index.js.map +1 -0
  12. package/lib/packlets/bcp47/bcp47Subtags/converters.d.ts.map +1 -0
  13. package/{bcp47 → lib/packlets/bcp47}/bcp47Subtags/converters.js +2 -1
  14. package/lib/packlets/bcp47/bcp47Subtags/converters.js.map +1 -0
  15. package/lib/packlets/bcp47/bcp47Subtags/index.d.ts.map +1 -0
  16. package/{bcp47 → lib/packlets/bcp47}/bcp47Subtags/index.js +1 -1
  17. package/lib/packlets/bcp47/bcp47Subtags/index.js.map +1 -0
  18. package/{bcp47 → lib/packlets/bcp47}/bcp47Subtags/model.d.ts +3 -1
  19. package/lib/packlets/bcp47/bcp47Subtags/model.d.ts.map +1 -0
  20. package/lib/packlets/bcp47/bcp47Subtags/model.js +24 -0
  21. package/lib/packlets/bcp47/bcp47Subtags/model.js.map +1 -0
  22. package/{bcp47 → lib/packlets/bcp47}/bcp47Subtags/validate.d.ts +2 -2
  23. package/lib/packlets/bcp47/bcp47Subtags/validate.d.ts.map +1 -0
  24. package/lib/packlets/bcp47/bcp47Subtags/validate.js +74 -0
  25. package/lib/packlets/bcp47/bcp47Subtags/validate.js.map +1 -0
  26. package/{bcp47 → lib/packlets/bcp47}/common.d.ts +4 -4
  27. package/lib/packlets/bcp47/common.d.ts.map +1 -0
  28. package/lib/packlets/bcp47/common.js +59 -0
  29. package/lib/packlets/bcp47/common.js.map +1 -0
  30. package/{bcp47 → lib/packlets/bcp47}/helpers.d.ts +8 -8
  31. package/lib/packlets/bcp47/helpers.d.ts.map +1 -0
  32. package/lib/packlets/bcp47/helpers.js +103 -0
  33. package/lib/packlets/bcp47/helpers.js.map +1 -0
  34. package/lib/packlets/bcp47/index.d.ts +10 -0
  35. package/lib/packlets/bcp47/index.d.ts.map +1 -0
  36. package/lib/packlets/bcp47/index.js +68 -0
  37. package/lib/packlets/bcp47/index.js.map +1 -0
  38. package/{bcp47 → lib/packlets/bcp47}/languageRegistryData.d.ts +26 -27
  39. package/lib/packlets/bcp47/languageRegistryData.d.ts.map +1 -0
  40. package/lib/packlets/bcp47/languageRegistryData.js +206 -0
  41. package/lib/packlets/bcp47/languageRegistryData.js.map +1 -0
  42. package/{bcp47 → lib/packlets/bcp47}/languageTag.d.ts +12 -13
  43. package/lib/packlets/bcp47/languageTag.d.ts.map +1 -0
  44. package/lib/packlets/bcp47/languageTag.js +390 -0
  45. package/lib/packlets/bcp47/languageTag.js.map +1 -0
  46. package/{bcp47 → lib/packlets/bcp47}/languageTagParser.d.ts +13 -14
  47. package/lib/packlets/bcp47/languageTagParser.d.ts.map +1 -0
  48. package/lib/packlets/bcp47/languageTagParser.js +303 -0
  49. package/lib/packlets/bcp47/languageTagParser.js.map +1 -0
  50. package/{bcp47 → lib/packlets/bcp47}/match/chooser.d.ts +8 -8
  51. package/lib/packlets/bcp47/match/chooser.d.ts.map +1 -0
  52. package/lib/packlets/bcp47/match/chooser.js +92 -0
  53. package/lib/packlets/bcp47/match/chooser.js.map +1 -0
  54. package/lib/packlets/bcp47/match/common.d.ts.map +1 -0
  55. package/lib/packlets/bcp47/match/common.js +52 -0
  56. package/lib/packlets/bcp47/match/common.js.map +1 -0
  57. package/lib/packlets/bcp47/match/index.d.ts +4 -0
  58. package/lib/packlets/bcp47/match/index.d.ts.map +1 -0
  59. package/lib/packlets/bcp47/match/index.js +45 -0
  60. package/lib/packlets/bcp47/match/index.js.map +1 -0
  61. package/lib/packlets/bcp47/match/similarity.d.ts.map +1 -0
  62. package/lib/packlets/bcp47/match/similarity.js +230 -0
  63. package/lib/packlets/bcp47/match/similarity.js.map +1 -0
  64. package/lib/packlets/bcp47/normalization/baseNormalizer.d.ts +35 -0
  65. package/lib/packlets/bcp47/normalization/baseNormalizer.d.ts.map +1 -0
  66. package/lib/packlets/bcp47/normalization/baseNormalizer.js +116 -0
  67. package/lib/packlets/bcp47/normalization/baseNormalizer.js.map +1 -0
  68. package/lib/packlets/bcp47/normalization/canonicalNormalizer.d.ts +22 -0
  69. package/lib/packlets/bcp47/normalization/canonicalNormalizer.d.ts.map +1 -0
  70. package/lib/packlets/bcp47/normalization/canonicalNormalizer.js +113 -0
  71. package/lib/packlets/bcp47/normalization/canonicalNormalizer.js.map +1 -0
  72. package/{bcp47 → lib/packlets/bcp47}/normalization/common.d.ts +1 -1
  73. package/lib/packlets/bcp47/normalization/common.d.ts.map +1 -0
  74. package/lib/packlets/bcp47/normalization/common.js +82 -0
  75. package/lib/packlets/bcp47/normalization/common.js.map +1 -0
  76. package/lib/packlets/bcp47/normalization/index.d.ts.map +1 -0
  77. package/{bcp47 → lib/packlets/bcp47}/normalization/index.js +1 -1
  78. package/lib/packlets/bcp47/normalization/index.js.map +1 -0
  79. package/{bcp47 → lib/packlets/bcp47}/normalization/normalizeTag.d.ts +6 -6
  80. package/lib/packlets/bcp47/normalization/normalizeTag.d.ts.map +1 -0
  81. package/lib/packlets/bcp47/normalization/normalizeTag.js +105 -0
  82. package/lib/packlets/bcp47/normalization/normalizeTag.js.map +1 -0
  83. package/lib/packlets/bcp47/normalization/preferredTagNormalizer.d.ts +27 -0
  84. package/lib/packlets/bcp47/normalization/preferredTagNormalizer.d.ts.map +1 -0
  85. package/lib/packlets/bcp47/normalization/preferredTagNormalizer.js +204 -0
  86. package/lib/packlets/bcp47/normalization/preferredTagNormalizer.js.map +1 -0
  87. package/lib/packlets/bcp47/overrides/converters.d.ts +19 -0
  88. package/lib/packlets/bcp47/overrides/converters.d.ts.map +1 -0
  89. package/lib/packlets/bcp47/overrides/converters.js +76 -0
  90. package/lib/packlets/bcp47/overrides/converters.js.map +1 -0
  91. package/lib/packlets/bcp47/overrides/defaultRegistries.d.ts.map +1 -0
  92. package/lib/packlets/bcp47/overrides/defaultRegistries.js +42 -0
  93. package/lib/packlets/bcp47/overrides/defaultRegistries.js.map +1 -0
  94. package/lib/packlets/bcp47/overrides/index.d.ts.map +1 -0
  95. package/lib/packlets/bcp47/overrides/index.js +30 -0
  96. package/lib/packlets/bcp47/overrides/index.js.map +1 -0
  97. package/lib/packlets/bcp47/overrides/model.d.ts +11 -0
  98. package/lib/packlets/bcp47/overrides/model.d.ts.map +1 -0
  99. package/lib/packlets/bcp47/overrides/model.js +24 -0
  100. package/lib/packlets/bcp47/overrides/model.js.map +1 -0
  101. package/{bcp47 → lib/packlets/bcp47}/overrides/overridesRegistry.d.ts +8 -8
  102. package/lib/packlets/bcp47/overrides/overridesRegistry.d.ts.map +1 -0
  103. package/lib/packlets/bcp47/overrides/overridesRegistry.js +113 -0
  104. package/lib/packlets/bcp47/overrides/overridesRegistry.js.map +1 -0
  105. package/lib/packlets/bcp47/validation/baseValidator.d.ts +35 -0
  106. package/lib/packlets/bcp47/validation/baseValidator.d.ts.map +1 -0
  107. package/lib/packlets/bcp47/validation/baseValidator.js +113 -0
  108. package/lib/packlets/bcp47/validation/baseValidator.js.map +1 -0
  109. package/{bcp47 → lib/packlets/bcp47}/validation/common.d.ts +1 -1
  110. package/lib/packlets/bcp47/validation/common.d.ts.map +1 -0
  111. package/lib/packlets/bcp47/validation/common.js +84 -0
  112. package/lib/packlets/bcp47/validation/common.js.map +1 -0
  113. package/lib/packlets/bcp47/validation/index.d.ts.map +1 -0
  114. package/{bcp47 → lib/packlets/bcp47}/validation/index.js +1 -1
  115. package/lib/packlets/bcp47/validation/index.js.map +1 -0
  116. package/lib/packlets/bcp47/validation/isCanonical.d.ts +22 -0
  117. package/lib/packlets/bcp47/validation/isCanonical.d.ts.map +1 -0
  118. package/lib/packlets/bcp47/validation/isCanonical.js +106 -0
  119. package/lib/packlets/bcp47/validation/isCanonical.js.map +1 -0
  120. package/{bcp47 → lib/packlets/bcp47}/validation/isInPreferredForm.d.ts +4 -4
  121. package/lib/packlets/bcp47/validation/isInPreferredForm.d.ts.map +1 -0
  122. package/lib/packlets/bcp47/validation/isInPreferredForm.js +73 -0
  123. package/lib/packlets/bcp47/validation/isInPreferredForm.js.map +1 -0
  124. package/lib/packlets/bcp47/validation/isStrictlyValid.d.ts +18 -0
  125. package/lib/packlets/bcp47/validation/isStrictlyValid.d.ts.map +1 -0
  126. package/lib/packlets/bcp47/validation/isStrictlyValid.js +98 -0
  127. package/lib/packlets/bcp47/validation/isStrictlyValid.js.map +1 -0
  128. package/lib/packlets/bcp47/validation/isValid.d.ts +24 -0
  129. package/lib/packlets/bcp47/validation/isValid.d.ts.map +1 -0
  130. package/lib/packlets/bcp47/validation/isValid.js +119 -0
  131. package/lib/packlets/bcp47/validation/isValid.js.map +1 -0
  132. package/lib/packlets/bcp47/validation/isWellFormed.d.ts +22 -0
  133. package/lib/packlets/bcp47/validation/isWellFormed.d.ts.map +1 -0
  134. package/lib/packlets/bcp47/validation/isWellFormed.js +102 -0
  135. package/lib/packlets/bcp47/validation/isWellFormed.js.map +1 -0
  136. package/{bcp47 → lib/packlets/bcp47}/validation/validateTag.d.ts +9 -9
  137. package/lib/packlets/bcp47/validation/validateTag.d.ts.map +1 -0
  138. package/lib/packlets/bcp47/validation/validateTag.js +159 -0
  139. package/lib/packlets/bcp47/validation/validateTag.js.map +1 -0
  140. package/{iana → lib/packlets/iana}/common/converters.d.ts +2 -2
  141. package/lib/packlets/iana/common/converters.d.ts.map +1 -0
  142. package/lib/packlets/iana/common/converters.js +85 -0
  143. package/lib/packlets/iana/common/converters.js.map +1 -0
  144. package/{iana → lib/packlets/iana}/common/model.d.ts +1 -1
  145. package/lib/packlets/iana/common/model.d.ts.map +1 -0
  146. package/lib/packlets/iana/common/model.js +24 -0
  147. package/lib/packlets/iana/common/model.js.map +1 -0
  148. package/lib/packlets/iana/common/registeredItems.d.ts.map +1 -0
  149. package/lib/packlets/iana/common/registeredItems.js +124 -0
  150. package/lib/packlets/iana/common/registeredItems.js.map +1 -0
  151. package/lib/packlets/iana/common/utils.d.ts.map +1 -0
  152. package/lib/packlets/iana/common/utils.js +34 -0
  153. package/lib/packlets/iana/common/utils.js.map +1 -0
  154. package/{iana → lib/packlets/iana}/common/validate.d.ts +1 -1
  155. package/lib/packlets/iana/common/validate.d.ts.map +1 -0
  156. package/lib/packlets/iana/common/validate.js +62 -0
  157. package/lib/packlets/iana/common/validate.js.map +1 -0
  158. package/lib/packlets/iana/converters.d.ts.map +1 -0
  159. package/{iana → lib/packlets/iana}/converters.js +1 -1
  160. package/lib/packlets/iana/converters.js.map +1 -0
  161. package/lib/packlets/iana/defaultRegistries.d.ts.map +1 -0
  162. package/lib/packlets/iana/defaultRegistries.js +42 -0
  163. package/lib/packlets/iana/defaultRegistries.js.map +1 -0
  164. package/{iana → lib/packlets/iana}/index.d.ts +4 -2
  165. package/lib/packlets/iana/index.d.ts.map +1 -0
  166. package/{iana/jar/language-subtags/tags → lib/packlets/iana}/index.js +18 -6
  167. package/lib/packlets/iana/index.js.map +1 -0
  168. package/lib/packlets/iana/jar/converters.d.ts.map +1 -0
  169. package/{iana → lib/packlets/iana}/jar/converters.js +1 -1
  170. package/lib/packlets/iana/jar/converters.js.map +1 -0
  171. package/lib/packlets/iana/jar/index.d.ts +5 -0
  172. package/lib/packlets/iana/jar/index.d.ts.map +1 -0
  173. package/{unsd/csv → lib/packlets/iana/jar}/index.js +4 -2
  174. package/lib/packlets/iana/jar/index.js.map +1 -0
  175. package/{iana → lib/packlets/iana}/jar/jarConverters.d.ts +5 -5
  176. package/lib/packlets/iana/jar/jarConverters.d.ts.map +1 -0
  177. package/lib/packlets/iana/jar/jarConverters.js +86 -0
  178. package/lib/packlets/iana/jar/jarConverters.js.map +1 -0
  179. package/{iana → lib/packlets/iana}/jar/jarModel.d.ts +1 -1
  180. package/lib/packlets/iana/jar/jarModel.d.ts.map +1 -0
  181. package/lib/packlets/iana/jar/jarModel.js +24 -0
  182. package/lib/packlets/iana/jar/jarModel.js.map +1 -0
  183. package/lib/packlets/iana/jar/language-subtags/converters.d.ts.map +1 -0
  184. package/{iana → lib/packlets/iana}/jar/language-subtags/converters.js +1 -1
  185. package/lib/packlets/iana/jar/language-subtags/converters.js.map +1 -0
  186. package/lib/packlets/iana/jar/language-subtags/index.d.ts +5 -0
  187. package/lib/packlets/iana/jar/language-subtags/index.d.ts.map +1 -0
  188. package/{iana/jar/language-subtags/registry → lib/packlets/iana/jar/language-subtags}/index.js +29 -28
  189. package/lib/packlets/iana/jar/language-subtags/index.js.map +1 -0
  190. package/lib/packlets/iana/jar/language-subtags/model.d.ts.map +1 -0
  191. package/{iana → lib/packlets/iana}/jar/language-subtags/model.js +1 -1
  192. package/lib/packlets/iana/jar/language-subtags/model.js.map +1 -0
  193. package/lib/packlets/iana/jar/language-subtags/registry/converters.d.ts.map +1 -0
  194. package/lib/packlets/iana/jar/language-subtags/registry/converters.js +59 -0
  195. package/lib/packlets/iana/jar/language-subtags/registry/converters.js.map +1 -0
  196. package/lib/packlets/iana/jar/language-subtags/registry/index.d.ts.map +1 -0
  197. package/{iana/jar/language-subtags → lib/packlets/iana/jar/language-subtags/registry}/index.js +23 -22
  198. package/lib/packlets/iana/jar/language-subtags/registry/index.js.map +1 -0
  199. package/{iana → lib/packlets/iana}/jar/language-subtags/registry/model.d.ts +12 -12
  200. package/lib/packlets/iana/jar/language-subtags/registry/model.d.ts.map +1 -0
  201. package/lib/packlets/iana/jar/language-subtags/registry/model.js +46 -0
  202. package/lib/packlets/iana/jar/language-subtags/registry/model.js.map +1 -0
  203. package/lib/packlets/iana/jar/language-subtags/tags/converters.d.ts +55 -0
  204. package/lib/packlets/iana/jar/language-subtags/tags/converters.d.ts.map +1 -0
  205. package/lib/packlets/iana/jar/language-subtags/tags/converters.js +129 -0
  206. package/lib/packlets/iana/jar/language-subtags/tags/converters.js.map +1 -0
  207. package/lib/packlets/iana/jar/language-subtags/tags/index.d.ts +6 -0
  208. package/lib/packlets/iana/jar/language-subtags/tags/index.d.ts.map +1 -0
  209. package/lib/packlets/iana/jar/language-subtags/tags/index.js +58 -0
  210. package/lib/packlets/iana/jar/language-subtags/tags/index.js.map +1 -0
  211. package/lib/packlets/iana/jar/language-subtags/tags/model.d.ts.map +1 -0
  212. package/lib/packlets/iana/jar/language-subtags/tags/model.js +24 -0
  213. package/lib/packlets/iana/jar/language-subtags/tags/model.js.map +1 -0
  214. package/lib/packlets/iana/jar/language-subtags/tags/tagValidation.d.ts.map +1 -0
  215. package/lib/packlets/iana/jar/language-subtags/tags/tagValidation.js +70 -0
  216. package/lib/packlets/iana/jar/language-subtags/tags/tagValidation.js.map +1 -0
  217. package/lib/packlets/iana/jar/language-subtags/tags/validate.d.ts.map +1 -0
  218. package/lib/packlets/iana/jar/language-subtags/tags/validate.js +88 -0
  219. package/lib/packlets/iana/jar/language-subtags/tags/validate.js.map +1 -0
  220. package/lib/packlets/iana/jar/model.d.ts.map +1 -0
  221. package/{iana → lib/packlets/iana}/jar/model.js +1 -1
  222. package/lib/packlets/iana/jar/model.js.map +1 -0
  223. package/lib/packlets/iana/language-subtags/common.d.ts.map +1 -0
  224. package/lib/packlets/iana/language-subtags/common.js +24 -0
  225. package/lib/packlets/iana/language-subtags/common.js.map +1 -0
  226. package/lib/packlets/iana/language-subtags/converters.d.ts +52 -0
  227. package/lib/packlets/iana/language-subtags/converters.d.ts.map +1 -0
  228. package/lib/packlets/iana/language-subtags/converters.js +209 -0
  229. package/lib/packlets/iana/language-subtags/converters.js.map +1 -0
  230. package/{iana → lib/packlets/iana}/language-subtags/index.d.ts +4 -3
  231. package/lib/packlets/iana/language-subtags/index.d.ts.map +1 -0
  232. package/{iana → lib/packlets/iana}/language-subtags/index.js +10 -8
  233. package/lib/packlets/iana/language-subtags/index.js.map +1 -0
  234. package/{iana → lib/packlets/iana}/language-subtags/jarConverters.d.ts +8 -8
  235. package/lib/packlets/iana/language-subtags/jarConverters.d.ts.map +1 -0
  236. package/lib/packlets/iana/language-subtags/jarConverters.js +237 -0
  237. package/lib/packlets/iana/language-subtags/jarConverters.js.map +1 -0
  238. package/{iana → lib/packlets/iana}/language-subtags/model.d.ts +15 -15
  239. package/lib/packlets/iana/language-subtags/model.d.ts.map +1 -0
  240. package/lib/packlets/iana/language-subtags/model.js +24 -0
  241. package/lib/packlets/iana/language-subtags/model.js.map +1 -0
  242. package/{iana → lib/packlets/iana}/language-subtags/scope.d.ts +12 -12
  243. package/lib/packlets/iana/language-subtags/scope.d.ts.map +1 -0
  244. package/lib/packlets/iana/language-subtags/scope.js +179 -0
  245. package/lib/packlets/iana/language-subtags/scope.js.map +1 -0
  246. package/{iana → lib/packlets/iana}/language-subtags/subtagRegistry.d.ts +1 -1
  247. package/lib/packlets/iana/language-subtags/subtagRegistry.d.ts.map +1 -0
  248. package/lib/packlets/iana/language-subtags/subtagRegistry.js +150 -0
  249. package/lib/packlets/iana/language-subtags/subtagRegistry.js.map +1 -0
  250. package/lib/packlets/iana/language-subtags/validate.d.ts.map +1 -0
  251. package/{iana → lib/packlets/iana}/language-subtags/validate.js +1 -1
  252. package/lib/packlets/iana/language-subtags/validate.js.map +1 -0
  253. package/lib/packlets/iana/language-tag-extensions/converters.d.ts +22 -0
  254. package/lib/packlets/iana/language-tag-extensions/converters.d.ts.map +1 -0
  255. package/lib/packlets/iana/language-tag-extensions/converters.js +86 -0
  256. package/lib/packlets/iana/language-tag-extensions/converters.js.map +1 -0
  257. package/{iana → lib/packlets/iana}/language-tag-extensions/extensionsRegistry.d.ts +2 -2
  258. package/lib/packlets/iana/language-tag-extensions/extensionsRegistry.d.ts.map +1 -0
  259. package/lib/packlets/iana/language-tag-extensions/extensionsRegistry.js +105 -0
  260. package/lib/packlets/iana/language-tag-extensions/extensionsRegistry.js.map +1 -0
  261. package/{iana → lib/packlets/iana}/language-tag-extensions/extensionsScope.d.ts +3 -3
  262. package/lib/packlets/iana/language-tag-extensions/extensionsScope.d.ts.map +1 -0
  263. package/lib/packlets/iana/language-tag-extensions/extensionsScope.js +77 -0
  264. package/lib/packlets/iana/language-tag-extensions/extensionsScope.js.map +1 -0
  265. package/{iana → lib/packlets/iana}/language-tag-extensions/index.d.ts +3 -2
  266. package/lib/packlets/iana/language-tag-extensions/index.d.ts.map +1 -0
  267. package/{iana → lib/packlets/iana}/language-tag-extensions/index.js +6 -4
  268. package/lib/packlets/iana/language-tag-extensions/index.js.map +1 -0
  269. package/{iana → lib/packlets/iana}/language-tag-extensions/jarConverters.d.ts +2 -3
  270. package/lib/packlets/iana/language-tag-extensions/jarConverters.d.ts.map +1 -0
  271. package/lib/packlets/iana/language-tag-extensions/jarConverters.js +79 -0
  272. package/lib/packlets/iana/language-tag-extensions/jarConverters.js.map +1 -0
  273. package/{iana → lib/packlets/iana}/language-tag-extensions/model.d.ts +5 -6
  274. package/lib/packlets/iana/language-tag-extensions/model.d.ts.map +1 -0
  275. package/lib/packlets/iana/language-tag-extensions/model.js +25 -0
  276. package/lib/packlets/iana/language-tag-extensions/model.js.map +1 -0
  277. package/{iana → lib/packlets/iana}/language-tag-extensions/validate.d.ts +2 -2
  278. package/lib/packlets/iana/language-tag-extensions/validate.d.ts.map +1 -0
  279. package/lib/packlets/iana/language-tag-extensions/validate.js +36 -0
  280. package/lib/packlets/iana/language-tag-extensions/validate.js.map +1 -0
  281. package/lib/packlets/iana/languageRegistries.d.ts.map +1 -0
  282. package/lib/packlets/iana/languageRegistries.js +56 -0
  283. package/lib/packlets/iana/languageRegistries.js.map +1 -0
  284. package/lib/packlets/iana/model.d.ts.map +1 -0
  285. package/{iana → lib/packlets/iana}/model.js +1 -1
  286. package/lib/packlets/iana/model.js.map +1 -0
  287. package/lib/packlets/iana/validate.d.ts.map +1 -0
  288. package/{iana → lib/packlets/iana}/validate.js +1 -1
  289. package/lib/packlets/iana/validate.js.map +1 -0
  290. package/lib/packlets/unsd/areas.d.ts +29 -0
  291. package/lib/packlets/unsd/areas.d.ts.map +1 -0
  292. package/lib/packlets/unsd/areas.js +96 -0
  293. package/lib/packlets/unsd/areas.js.map +1 -0
  294. package/lib/packlets/unsd/common.d.ts +49 -0
  295. package/lib/packlets/unsd/common.d.ts.map +1 -0
  296. package/lib/packlets/unsd/common.js +24 -0
  297. package/lib/packlets/unsd/common.js.map +1 -0
  298. package/{unsd → lib/packlets/unsd}/csv/converters.d.ts +7 -4
  299. package/lib/packlets/unsd/csv/converters.d.ts.map +1 -0
  300. package/lib/packlets/unsd/csv/converters.js +78 -0
  301. package/lib/packlets/unsd/csv/converters.js.map +1 -0
  302. package/lib/packlets/unsd/csv/index.d.ts.map +1 -0
  303. package/{iana/jar → lib/packlets/unsd/csv}/index.js +1 -1
  304. package/lib/packlets/unsd/csv/index.js.map +1 -0
  305. package/lib/packlets/unsd/csv/model.d.ts +22 -0
  306. package/lib/packlets/unsd/csv/model.d.ts.map +1 -0
  307. package/lib/packlets/unsd/csv/model.js +24 -0
  308. package/lib/packlets/unsd/csv/model.js.map +1 -0
  309. package/lib/packlets/unsd/defaultRegistries.d.ts.map +1 -0
  310. package/lib/packlets/unsd/defaultRegistries.js +42 -0
  311. package/lib/packlets/unsd/defaultRegistries.js.map +1 -0
  312. package/{unsd → lib/packlets/unsd}/index.d.ts +2 -0
  313. package/lib/packlets/unsd/index.d.ts.map +1 -0
  314. package/lib/packlets/unsd/index.js +58 -0
  315. package/lib/packlets/unsd/index.js.map +1 -0
  316. package/{unsd → lib/packlets/unsd}/regionCodes.d.ts +7 -7
  317. package/lib/packlets/unsd/regionCodes.d.ts.map +1 -0
  318. package/lib/packlets/unsd/regionCodes.js +122 -0
  319. package/lib/packlets/unsd/regionCodes.js.map +1 -0
  320. package/lib/packlets/unsd/regions.d.ts +21 -0
  321. package/lib/packlets/unsd/regions.d.ts.map +1 -0
  322. package/lib/packlets/unsd/regions.js +77 -0
  323. package/lib/packlets/unsd/regions.js.map +1 -0
  324. package/lib/packlets/utils/index.d.ts.map +1 -0
  325. package/{utils → lib/packlets/utils}/index.js +1 -1
  326. package/lib/packlets/utils/index.js.map +1 -0
  327. package/lib/packlets/utils/jsonHelpers.d.ts.map +1 -0
  328. package/lib/packlets/utils/jsonHelpers.js +29 -0
  329. package/lib/packlets/utils/jsonHelpers.js.map +1 -0
  330. package/lib/packlets/utils/public.d.ts +2 -0
  331. package/lib/packlets/utils/public.d.ts.map +1 -0
  332. package/lib/packlets/utils/public.js +28 -0
  333. package/lib/packlets/utils/public.js.map +1 -0
  334. package/{utils → lib/packlets/utils}/validationHelpers.d.ts +9 -10
  335. package/lib/packlets/utils/validationHelpers.d.ts.map +1 -0
  336. package/lib/packlets/utils/validationHelpers.js +120 -0
  337. package/lib/packlets/utils/validationHelpers.js.map +1 -0
  338. package/package.json +73 -67
  339. package/bcp47/bcp47Subtags/converters.d.ts.map +0 -1
  340. package/bcp47/bcp47Subtags/index.d.ts.map +0 -1
  341. package/bcp47/bcp47Subtags/model.d.ts.map +0 -1
  342. package/bcp47/bcp47Subtags/model.js +0 -24
  343. package/bcp47/bcp47Subtags/validate.d.ts.map +0 -1
  344. package/bcp47/bcp47Subtags/validate.js +0 -74
  345. package/bcp47/common.d.ts.map +0 -1
  346. package/bcp47/common.js +0 -59
  347. package/bcp47/helpers.d.ts.map +0 -1
  348. package/bcp47/helpers.js +0 -103
  349. package/bcp47/index.d.ts +0 -7
  350. package/bcp47/index.d.ts.map +0 -1
  351. package/bcp47/index.js +0 -27
  352. package/bcp47/languageRegistryData.d.ts.map +0 -1
  353. package/bcp47/languageRegistryData.js +0 -209
  354. package/bcp47/languageTag.d.ts.map +0 -1
  355. package/bcp47/languageTag.js +0 -390
  356. package/bcp47/languageTagParser.d.ts.map +0 -1
  357. package/bcp47/languageTagParser.js +0 -302
  358. package/bcp47/match/chooser.d.ts.map +0 -1
  359. package/bcp47/match/chooser.js +0 -92
  360. package/bcp47/match/common.d.ts.map +0 -1
  361. package/bcp47/match/common.js +0 -51
  362. package/bcp47/match/index.d.ts +0 -4
  363. package/bcp47/match/index.d.ts.map +0 -1
  364. package/bcp47/match/index.js +0 -45
  365. package/bcp47/match/similarity.d.ts.map +0 -1
  366. package/bcp47/match/similarity.js +0 -230
  367. package/bcp47/normalization/baseNormalizer.d.ts +0 -36
  368. package/bcp47/normalization/baseNormalizer.d.ts.map +0 -1
  369. package/bcp47/normalization/baseNormalizer.js +0 -114
  370. package/bcp47/normalization/canonicalNormalizer.d.ts +0 -22
  371. package/bcp47/normalization/canonicalNormalizer.d.ts.map +0 -1
  372. package/bcp47/normalization/canonicalNormalizer.js +0 -113
  373. package/bcp47/normalization/common.d.ts.map +0 -1
  374. package/bcp47/normalization/common.js +0 -82
  375. package/bcp47/normalization/index.d.ts.map +0 -1
  376. package/bcp47/normalization/normalizeTag.d.ts.map +0 -1
  377. package/bcp47/normalization/normalizeTag.js +0 -105
  378. package/bcp47/normalization/preferredTagNormalizer.d.ts +0 -27
  379. package/bcp47/normalization/preferredTagNormalizer.d.ts.map +0 -1
  380. package/bcp47/normalization/preferredTagNormalizer.js +0 -209
  381. package/bcp47/overrides/converters.d.ts +0 -19
  382. package/bcp47/overrides/converters.d.ts.map +0 -1
  383. package/bcp47/overrides/converters.js +0 -75
  384. package/bcp47/overrides/defaultRegistries.d.ts.map +0 -1
  385. package/bcp47/overrides/defaultRegistries.js +0 -42
  386. package/bcp47/overrides/index.d.ts.map +0 -1
  387. package/bcp47/overrides/index.js +0 -30
  388. package/bcp47/overrides/model.d.ts +0 -11
  389. package/bcp47/overrides/model.d.ts.map +0 -1
  390. package/bcp47/overrides/model.js +0 -24
  391. package/bcp47/overrides/overridesRegistry.d.ts.map +0 -1
  392. package/bcp47/overrides/overridesRegistry.js +0 -112
  393. package/bcp47/validation/baseValidator.d.ts +0 -35
  394. package/bcp47/validation/baseValidator.d.ts.map +0 -1
  395. package/bcp47/validation/baseValidator.js +0 -111
  396. package/bcp47/validation/common.d.ts.map +0 -1
  397. package/bcp47/validation/common.js +0 -84
  398. package/bcp47/validation/index.d.ts.map +0 -1
  399. package/bcp47/validation/isCanonical.d.ts +0 -22
  400. package/bcp47/validation/isCanonical.d.ts.map +0 -1
  401. package/bcp47/validation/isCanonical.js +0 -104
  402. package/bcp47/validation/isInPreferredForm.d.ts.map +0 -1
  403. package/bcp47/validation/isInPreferredForm.js +0 -73
  404. package/bcp47/validation/isStrictlyValid.d.ts +0 -18
  405. package/bcp47/validation/isStrictlyValid.d.ts.map +0 -1
  406. package/bcp47/validation/isStrictlyValid.js +0 -98
  407. package/bcp47/validation/isValid.d.ts +0 -24
  408. package/bcp47/validation/isValid.d.ts.map +0 -1
  409. package/bcp47/validation/isValid.js +0 -115
  410. package/bcp47/validation/isWellFormed.d.ts +0 -22
  411. package/bcp47/validation/isWellFormed.d.ts.map +0 -1
  412. package/bcp47/validation/isWellFormed.js +0 -98
  413. package/bcp47/validation/validateTag.d.ts.map +0 -1
  414. package/bcp47/validation/validateTag.js +0 -159
  415. package/data/bcp/overrides.json +0 -21
  416. package/data/iana/language-subtags.json +0 -77295
  417. package/data/unsd/m49.json +0 -251
  418. package/iana/common/converters.d.ts.map +0 -1
  419. package/iana/common/converters.js +0 -84
  420. package/iana/common/model.d.ts.map +0 -1
  421. package/iana/common/model.js +0 -24
  422. package/iana/common/registeredItems.d.ts.map +0 -1
  423. package/iana/common/registeredItems.js +0 -124
  424. package/iana/common/utils.d.ts.map +0 -1
  425. package/iana/common/utils.js +0 -34
  426. package/iana/common/validate.d.ts.map +0 -1
  427. package/iana/common/validate.js +0 -61
  428. package/iana/converters.d.ts.map +0 -1
  429. package/iana/defaultRegistries.d.ts.map +0 -1
  430. package/iana/defaultRegistries.js +0 -42
  431. package/iana/index.d.ts.map +0 -1
  432. package/iana/index.js +0 -64
  433. package/iana/jar/converters.d.ts.map +0 -1
  434. package/iana/jar/index.d.ts.map +0 -1
  435. package/iana/jar/jarConverters.d.ts.map +0 -1
  436. package/iana/jar/jarConverters.js +0 -85
  437. package/iana/jar/jarModel.d.ts.map +0 -1
  438. package/iana/jar/jarModel.js +0 -24
  439. package/iana/jar/language-subtags/converters.d.ts.map +0 -1
  440. package/iana/jar/language-subtags/index.d.ts.map +0 -1
  441. package/iana/jar/language-subtags/model.d.ts.map +0 -1
  442. package/iana/jar/language-subtags/registry/converters.d.ts.map +0 -1
  443. package/iana/jar/language-subtags/registry/converters.js +0 -58
  444. package/iana/jar/language-subtags/registry/index.d.ts +0 -4
  445. package/iana/jar/language-subtags/registry/index.d.ts.map +0 -1
  446. package/iana/jar/language-subtags/registry/model.d.ts.map +0 -1
  447. package/iana/jar/language-subtags/registry/model.js +0 -41
  448. package/iana/jar/language-subtags/tags/converters.d.ts +0 -55
  449. package/iana/jar/language-subtags/tags/converters.d.ts.map +0 -1
  450. package/iana/jar/language-subtags/tags/converters.js +0 -128
  451. package/iana/jar/language-subtags/tags/index.d.ts +0 -5
  452. package/iana/jar/language-subtags/tags/index.d.ts.map +0 -1
  453. package/iana/jar/language-subtags/tags/model.d.ts.map +0 -1
  454. package/iana/jar/language-subtags/tags/model.js +0 -24
  455. package/iana/jar/language-subtags/tags/tagValidation.d.ts.map +0 -1
  456. package/iana/jar/language-subtags/tags/tagValidation.js +0 -70
  457. package/iana/jar/language-subtags/tags/validate.d.ts.map +0 -1
  458. package/iana/jar/language-subtags/tags/validate.js +0 -87
  459. package/iana/jar/model.d.ts.map +0 -1
  460. package/iana/language-subtags/common.d.ts.map +0 -1
  461. package/iana/language-subtags/common.js +0 -24
  462. package/iana/language-subtags/converters.d.ts +0 -52
  463. package/iana/language-subtags/converters.d.ts.map +0 -1
  464. package/iana/language-subtags/converters.js +0 -200
  465. package/iana/language-subtags/index.d.ts.map +0 -1
  466. package/iana/language-subtags/jarConverters.d.ts.map +0 -1
  467. package/iana/language-subtags/jarConverters.js +0 -213
  468. package/iana/language-subtags/model.d.ts.map +0 -1
  469. package/iana/language-subtags/model.js +0 -24
  470. package/iana/language-subtags/scope.d.ts.map +0 -1
  471. package/iana/language-subtags/scope.js +0 -179
  472. package/iana/language-subtags/subtagRegistry.d.ts.map +0 -1
  473. package/iana/language-subtags/subtagRegistry.js +0 -149
  474. package/iana/language-subtags/validate.d.ts.map +0 -1
  475. package/iana/language-tag-extensions/converters.d.ts +0 -23
  476. package/iana/language-tag-extensions/converters.d.ts.map +0 -1
  477. package/iana/language-tag-extensions/converters.js +0 -87
  478. package/iana/language-tag-extensions/extensionsRegistry.d.ts.map +0 -1
  479. package/iana/language-tag-extensions/extensionsRegistry.js +0 -104
  480. package/iana/language-tag-extensions/extensionsScope.d.ts.map +0 -1
  481. package/iana/language-tag-extensions/extensionsScope.js +0 -77
  482. package/iana/language-tag-extensions/index.d.ts.map +0 -1
  483. package/iana/language-tag-extensions/jarConverters.d.ts.map +0 -1
  484. package/iana/language-tag-extensions/jarConverters.js +0 -102
  485. package/iana/language-tag-extensions/model.d.ts.map +0 -1
  486. package/iana/language-tag-extensions/model.js +0 -24
  487. package/iana/language-tag-extensions/validate.d.ts.map +0 -1
  488. package/iana/language-tag-extensions/validate.js +0 -36
  489. package/iana/languageRegistries.d.ts.map +0 -1
  490. package/iana/languageRegistries.js +0 -56
  491. package/iana/model.d.ts.map +0 -1
  492. package/iana/validate.d.ts.map +0 -1
  493. package/index.d.ts +0 -6
  494. package/index.d.ts.map +0 -1
  495. package/index.js +0 -56
  496. package/unsd/areas.d.ts +0 -29
  497. package/unsd/areas.d.ts.map +0 -1
  498. package/unsd/areas.js +0 -96
  499. package/unsd/common.d.ts +0 -49
  500. package/unsd/common.d.ts.map +0 -1
  501. package/unsd/common.js +0 -24
  502. package/unsd/csv/converters.d.ts.map +0 -1
  503. package/unsd/csv/converters.js +0 -70
  504. package/unsd/csv/index.d.ts +0 -4
  505. package/unsd/csv/index.d.ts.map +0 -1
  506. package/unsd/csv/model.d.ts +0 -22
  507. package/unsd/csv/model.d.ts.map +0 -1
  508. package/unsd/csv/model.js +0 -24
  509. package/unsd/defaultRegistries.d.ts.map +0 -1
  510. package/unsd/defaultRegistries.js +0 -42
  511. package/unsd/index.d.ts.map +0 -1
  512. package/unsd/index.js +0 -44
  513. package/unsd/regionCodes.d.ts.map +0 -1
  514. package/unsd/regionCodes.js +0 -121
  515. package/unsd/regions.d.ts +0 -21
  516. package/unsd/regions.d.ts.map +0 -1
  517. package/unsd/regions.js +0 -77
  518. package/utils/index.d.ts.map +0 -1
  519. package/utils/jsonHelpers.d.ts.map +0 -1
  520. package/utils/jsonHelpers.js +0 -29
  521. package/utils/public.d.ts +0 -2
  522. package/utils/public.d.ts.map +0 -1
  523. package/utils/public.js +0 -28
  524. package/utils/validationHelpers.d.ts.map +0 -1
  525. package/utils/validationHelpers.js +0 -120
  526. /package/{bcp47 → lib/packlets/bcp47}/bcp47Subtags/converters.d.ts +0 -0
  527. /package/{bcp47 → lib/packlets/bcp47}/bcp47Subtags/index.d.ts +0 -0
  528. /package/{bcp47 → lib/packlets/bcp47}/match/common.d.ts +0 -0
  529. /package/{bcp47 → lib/packlets/bcp47}/match/similarity.d.ts +0 -0
  530. /package/{bcp47 → lib/packlets/bcp47}/normalization/index.d.ts +0 -0
  531. /package/{bcp47 → lib/packlets/bcp47}/overrides/defaultRegistries.d.ts +0 -0
  532. /package/{bcp47 → lib/packlets/bcp47}/overrides/index.d.ts +0 -0
  533. /package/{bcp47 → lib/packlets/bcp47}/validation/index.d.ts +0 -0
  534. /package/{iana → lib/packlets/iana}/common/registeredItems.d.ts +0 -0
  535. /package/{iana → lib/packlets/iana}/common/utils.d.ts +0 -0
  536. /package/{iana → lib/packlets/iana}/converters.d.ts +0 -0
  537. /package/{iana → lib/packlets/iana}/defaultRegistries.d.ts +0 -0
  538. /package/{iana → lib/packlets/iana}/jar/converters.d.ts +0 -0
  539. /package/{iana → lib/packlets/iana}/jar/language-subtags/converters.d.ts +0 -0
  540. /package/{iana → lib/packlets/iana}/jar/language-subtags/model.d.ts +0 -0
  541. /package/{iana → lib/packlets/iana}/jar/language-subtags/registry/converters.d.ts +0 -0
  542. /package/{iana/jar/language-subtags → lib/packlets/iana/jar/language-subtags/registry}/index.d.ts +0 -0
  543. /package/{iana → lib/packlets/iana}/jar/language-subtags/tags/model.d.ts +0 -0
  544. /package/{iana → lib/packlets/iana}/jar/language-subtags/tags/tagValidation.d.ts +0 -0
  545. /package/{iana → lib/packlets/iana}/jar/language-subtags/tags/validate.d.ts +0 -0
  546. /package/{iana → lib/packlets/iana}/jar/model.d.ts +0 -0
  547. /package/{iana → lib/packlets/iana}/language-subtags/common.d.ts +0 -0
  548. /package/{iana → lib/packlets/iana}/language-subtags/validate.d.ts +0 -0
  549. /package/{iana → lib/packlets/iana}/languageRegistries.d.ts +0 -0
  550. /package/{iana → lib/packlets/iana}/model.d.ts +0 -0
  551. /package/{iana → lib/packlets/iana}/validate.d.ts +0 -0
  552. /package/{iana/jar → lib/packlets/unsd/csv}/index.d.ts +0 -0
  553. /package/{unsd → lib/packlets/unsd}/defaultRegistries.d.ts +0 -0
  554. /package/{utils → lib/packlets/utils}/index.d.ts +0 -0
  555. /package/{utils → lib/packlets/utils}/jsonHelpers.d.ts +0 -0
package/bcp47/helpers.js DELETED
@@ -1,103 +0,0 @@
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.choose = exports.similarity = exports.tags = exports.tag = void 0;
25
- const chooser_1 = require("./match/chooser");
26
- const languageTag_1 = require("./languageTag");
27
- const ts_utils_1 = require("@fgv/ts-utils");
28
- const match_1 = require("./match");
29
- /**
30
- * Creates a new {@link Bcp47.LanguageTag | language tag} from a {@link Bcp47.LanguageSpec | language specifier}
31
- *
32
- * The supplied initializer must be at least
33
- * {@link https://www.rfc-editor.org/rfc/rfc5646.html#section-2.2.9 | well-formed according to RFC 5646}.
34
- * Higher degrees of validation along with any normalizations may be optionally specified.
35
- *
36
- * @param from - The {@link Bcp47.LanguageSpec | language specifier} from which the tag is to
37
- * be created.
38
- * @param options - (optional) The {@link Bcp47.LanguageTagInitOptions | options} used to construct
39
- * and validate the tag.
40
- * @returns `Success` with a valid {@link Bcp47.LanguageTag | language tag} or `Failure` with details
41
- * if an error occurs.
42
- * @public
43
- */
44
- // istanbul ignore next - tests applied for wrapped function
45
- function tag(from, options) {
46
- return from instanceof languageTag_1.LanguageTag ? (0, ts_utils_1.succeed)(from) : languageTag_1.LanguageTag.create(from, options);
47
- }
48
- exports.tag = tag;
49
- /**
50
- * Creates an array of {@link Bcp47.LanguageTag | language tags} from an incoming array of
51
- * {@link Bcp47.LanguageSpec | language specifiers}.
52
- * @param from - The array of {@link Bcp47.LanguageSpec} to be converted.
53
- * @param options - (optional) The {@link Bcp47.LanguageTagInitOptions | options} used to construct
54
- * and validate any created tags.
55
- * @returns `Success` with an array of {@link Bcp47.LanguageTag | language tags}, or `Failure`
56
- * with details if an error occurs.
57
- * @public
58
- */
59
- function tags(from, options) {
60
- return (0, ts_utils_1.mapResults)(from.map((f) => tag(f, options)));
61
- }
62
- exports.tags = tags;
63
- /**
64
- * Determine how similar two language tags are to each other.
65
- *
66
- * @param t1 - First tag to match, supplied as one of `string`, individual
67
- * {@link Bcp47.Subtags | subtags}, or constructed
68
- * {@link Bcp47.LanguageTag | language tag}.
69
- * @param t2 - Second tag to match, supplied as one of `string`, individual
70
- * {@link Bcp47.Subtags | subtags}, or constructed
71
- * {@link Bcp47.LanguageTag | language tag}.
72
- * @param options - (optional) A set of {@link Bcp47.LanguageTagInitOptions | language tag options}
73
- * which control any necessary conversion or parsing.
74
- * @returns A numeric value in the range 1.0 (exact match) to 0.0 (no match).
75
- * @see For a set of common levels of similarity, see {@link Bcp47.tagSimilarity | similarity}.
76
- * @public
77
- */
78
- // istanbul ignore next - tests applied for wrapped function
79
- function similarity(t1, t2, options) {
80
- return tags([t1, t2], options).onSuccess((tags) => {
81
- return (0, ts_utils_1.succeed)(new match_1.LanguageSimilarityMatcher().matchLanguageTags(tags[0], tags[1]));
82
- });
83
- }
84
- exports.similarity = similarity;
85
- /**
86
- * Matches a list of desired {@link Bcp47.LanguageSpec | languages} to a list of available {@link Bcp47.LanguageSpec | languages},
87
- * return a list of matching languages ordered from best to worst.
88
- * @param desired - An array of {@link Bcp47.LanguageSpec | language specifications} containing an ordered list of preferred languages.
89
- * @param available - An array of {@link Bcp47.LanguageSpec | language specifications} containing an unordered list of available languages.
90
- * @param options - (optional) Parameters to control language tag conversion or comparison
91
- * @returns `Success` with an ordered list of matching {@link Bcp47.LanguageTag | languages}, or `Failure` with details if
92
- * an error occurs.
93
- * @public
94
- */
95
- function choose(desired, available, options) {
96
- return tags(desired, options).onSuccess((w) => {
97
- return tags(available, options).onSuccess((h) => {
98
- return (0, ts_utils_1.succeed)(new chooser_1.LanguageChooser().filterLanguageTags(w, h, options));
99
- });
100
- });
101
- }
102
- exports.choose = choose;
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iY3A0Ny9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7OztBQUVILDZDQUEwRTtBQUMxRSwrQ0FBb0U7QUFDcEUsNENBQTREO0FBQzVELG1DQUFvRDtBQVdwRDs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILDREQUE0RDtBQUM1RCxTQUFnQixHQUFHLENBQUMsSUFBa0IsRUFBRSxPQUFnQztJQUNwRSxPQUFPLElBQUksWUFBWSx5QkFBVyxDQUFDLENBQUMsQ0FBQyxJQUFBLGtCQUFPLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLHlCQUFXLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztBQUMzRixDQUFDO0FBRkQsa0JBRUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixJQUFJLENBQUMsSUFBb0IsRUFBRSxPQUFnQztJQUN2RSxPQUFPLElBQUEscUJBQVUsRUFBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN4RCxDQUFDO0FBRkQsb0JBRUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILDREQUE0RDtBQUM1RCxTQUFnQixVQUFVLENBQUMsRUFBZ0IsRUFBRSxFQUFnQixFQUFFLE9BQWdDO0lBQzNGLE9BQU8sSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQzlDLE9BQU8sSUFBQSxrQkFBTyxFQUFDLElBQUksaUNBQXlCLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFKRCxnQ0FJQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILFNBQWdCLE1BQU0sQ0FDbEIsT0FBdUIsRUFDdkIsU0FBeUIsRUFDekIsT0FBeUQ7SUFFekQsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQzFDLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUM1QyxPQUFPLElBQUEsa0JBQU8sRUFBQyxJQUFJLHlCQUFlLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFWRCx3QkFVQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgRXJpayBGb3J0dW5lXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxuICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4gKiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgeyBMYW5ndWFnZUNob29zZXIsIExhbmd1YWdlQ2hvb3Nlck9wdGlvbnMgfSBmcm9tICcuL21hdGNoL2Nob29zZXInO1xuaW1wb3J0IHsgTGFuZ3VhZ2VUYWcsIExhbmd1YWdlVGFnSW5pdE9wdGlvbnMgfSBmcm9tICcuL2xhbmd1YWdlVGFnJztcbmltcG9ydCB7IFJlc3VsdCwgbWFwUmVzdWx0cywgc3VjY2VlZCB9IGZyb20gJ0BmZ3YvdHMtdXRpbHMnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTaW1pbGFyaXR5TWF0Y2hlciB9IGZyb20gJy4vbWF0Y2gnO1xuaW1wb3J0IHsgU3VidGFncyB9IGZyb20gJy4vY29tbW9uJztcblxuLyoqXG4gKiBBbnkgb2YgdGhlIHBvc3NpYmxlIHdheXMgdG8gcmVwcmVzZW50IGEgbGFuZ3VhZ2UgLSBhcyBhIGBzdHJpbmdgLFxuICogcGFyc2VkIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFnc30gb3IgYW4gaW5zdGFudGlhdGVkXG4gKiB7QGxpbmsgQmNwNDcuTGFuZ3VhZ2VUYWcgfCBsYW5ndWFnZSB0YWd9LlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBMYW5ndWFnZVNwZWMgPSBzdHJpbmcgfCBTdWJ0YWdzIHwgTGFuZ3VhZ2VUYWc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIG5ldyB7QGxpbmsgQmNwNDcuTGFuZ3VhZ2VUYWcgfCBsYW5ndWFnZSB0YWd9IGZyb20gYSB7QGxpbmsgQmNwNDcuTGFuZ3VhZ2VTcGVjIHwgbGFuZ3VhZ2Ugc3BlY2lmaWVyfVxuICpcbiAqIFRoZSBzdXBwbGllZCBpbml0aWFsaXplciBtdXN0IGJlIGF0IGxlYXN0XG4gKiB7QGxpbmsgaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzU2NDYuaHRtbCNzZWN0aW9uLTIuMi45IHwgd2VsbC1mb3JtZWQgYWNjb3JkaW5nIHRvIFJGQyA1NjQ2fS5cbiAqIEhpZ2hlciBkZWdyZWVzIG9mIHZhbGlkYXRpb24gYWxvbmcgd2l0aCBhbnkgbm9ybWFsaXphdGlvbnMgbWF5IGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkLlxuICpcbiAqIEBwYXJhbSBmcm9tIC0gVGhlIHtAbGluayBCY3A0Ny5MYW5ndWFnZVNwZWMgfCBsYW5ndWFnZSBzcGVjaWZpZXJ9IGZyb20gd2hpY2ggdGhlIHRhZyBpcyB0b1xuICogYmUgY3JlYXRlZC5cbiAqIEBwYXJhbSBvcHRpb25zIC0gKG9wdGlvbmFsKSBUaGUge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnSW5pdE9wdGlvbnMgfCBvcHRpb25zfSB1c2VkIHRvIGNvbnN0cnVjdFxuICogYW5kIHZhbGlkYXRlIHRoZSB0YWcuXG4gKiBAcmV0dXJucyBgU3VjY2Vzc2Agd2l0aCBhIHZhbGlkIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZyB8IGxhbmd1YWdlIHRhZ30gb3IgYEZhaWx1cmVgIHdpdGggZGV0YWlsc1xuICogaWYgYW4gZXJyb3Igb2NjdXJzLlxuICogQHB1YmxpY1xuICovXG4vLyBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAtIHRlc3RzIGFwcGxpZWQgZm9yIHdyYXBwZWQgZnVuY3Rpb25cbmV4cG9ydCBmdW5jdGlvbiB0YWcoZnJvbTogTGFuZ3VhZ2VTcGVjLCBvcHRpb25zPzogTGFuZ3VhZ2VUYWdJbml0T3B0aW9ucyk6IFJlc3VsdDxMYW5ndWFnZVRhZz4ge1xuICAgIHJldHVybiBmcm9tIGluc3RhbmNlb2YgTGFuZ3VhZ2VUYWcgPyBzdWNjZWVkKGZyb20pIDogTGFuZ3VhZ2VUYWcuY3JlYXRlKGZyb20sIG9wdGlvbnMpO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYW4gYXJyYXkgb2Yge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnIHwgbGFuZ3VhZ2UgdGFnc30gZnJvbSBhbiBpbmNvbWluZyBhcnJheSBvZlxuICoge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlU3BlYyB8IGxhbmd1YWdlIHNwZWNpZmllcnN9LlxuICogQHBhcmFtIGZyb20gLSBUaGUgYXJyYXkgb2Yge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlU3BlY30gdG8gYmUgY29udmVydGVkLlxuICogQHBhcmFtIG9wdGlvbnMgLSAob3B0aW9uYWwpIFRoZSB7QGxpbmsgQmNwNDcuTGFuZ3VhZ2VUYWdJbml0T3B0aW9ucyB8IG9wdGlvbnN9IHVzZWQgdG8gY29uc3RydWN0XG4gKiBhbmQgdmFsaWRhdGUgYW55IGNyZWF0ZWQgdGFncy5cbiAqIEByZXR1cm5zIGBTdWNjZXNzYCB3aXRoIGFuIGFycmF5IG9mIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZyB8IGxhbmd1YWdlIHRhZ3N9LCBvciBgRmFpbHVyZWBcbiAqIHdpdGggZGV0YWlscyBpZiBhbiBlcnJvciBvY2N1cnMuXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0YWdzKGZyb206IExhbmd1YWdlU3BlY1tdLCBvcHRpb25zPzogTGFuZ3VhZ2VUYWdJbml0T3B0aW9ucyk6IFJlc3VsdDxMYW5ndWFnZVRhZ1tdPiB7XG4gICAgcmV0dXJuIG1hcFJlc3VsdHMoZnJvbS5tYXAoKGYpID0+IHRhZyhmLCBvcHRpb25zKSkpO1xufVxuXG4vKipcbiAqIERldGVybWluZSBob3cgc2ltaWxhciB0d28gbGFuZ3VhZ2UgdGFncyBhcmUgdG8gZWFjaCBvdGhlci5cbiAqXG4gKiBAcGFyYW0gdDEgLSBGaXJzdCB0YWcgdG8gbWF0Y2gsIHN1cHBsaWVkIGFzIG9uZSBvZiBgc3RyaW5nYCwgaW5kaXZpZHVhbFxuICoge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzfSwgb3IgY29uc3RydWN0ZWRcbiAqIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZyB8IGxhbmd1YWdlIHRhZ30uXG4gKiBAcGFyYW0gdDIgLSBTZWNvbmQgdGFnIHRvIG1hdGNoLCBzdXBwbGllZCBhcyBvbmUgb2YgYHN0cmluZ2AsIGluZGl2aWR1YWxcbiAqIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFnc30sIG9yIGNvbnN0cnVjdGVkXG4gKiB7QGxpbmsgQmNwNDcuTGFuZ3VhZ2VUYWcgfCBsYW5ndWFnZSB0YWd9LlxuICogQHBhcmFtIG9wdGlvbnMgLSAob3B0aW9uYWwpIEEgc2V0IG9mIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZ0luaXRPcHRpb25zIHwgbGFuZ3VhZ2UgdGFnIG9wdGlvbnN9XG4gKiB3aGljaCBjb250cm9sIGFueSBuZWNlc3NhcnkgY29udmVyc2lvbiBvciBwYXJzaW5nLlxuICogQHJldHVybnMgQSBudW1lcmljIHZhbHVlIGluIHRoZSByYW5nZSAxLjAgKGV4YWN0IG1hdGNoKSB0byAwLjAgKG5vIG1hdGNoKS5cbiAqIEBzZWUgRm9yIGEgc2V0IG9mIGNvbW1vbiBsZXZlbHMgb2Ygc2ltaWxhcml0eSwgc2VlIHtAbGluayBCY3A0Ny50YWdTaW1pbGFyaXR5IHwgc2ltaWxhcml0eX0uXG4gKiBAcHVibGljXG4gKi9cbi8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0IC0gdGVzdHMgYXBwbGllZCBmb3Igd3JhcHBlZCBmdW5jdGlvblxuZXhwb3J0IGZ1bmN0aW9uIHNpbWlsYXJpdHkodDE6IExhbmd1YWdlU3BlYywgdDI6IExhbmd1YWdlU3BlYywgb3B0aW9ucz86IExhbmd1YWdlVGFnSW5pdE9wdGlvbnMpOiBSZXN1bHQ8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRhZ3MoW3QxLCB0Ml0sIG9wdGlvbnMpLm9uU3VjY2VzcygodGFncykgPT4ge1xuICAgICAgICByZXR1cm4gc3VjY2VlZChuZXcgTGFuZ3VhZ2VTaW1pbGFyaXR5TWF0Y2hlcigpLm1hdGNoTGFuZ3VhZ2VUYWdzKHRhZ3NbMF0sIHRhZ3NbMV0pKTtcbiAgICB9KTtcbn1cblxuLyoqXG4gKiBNYXRjaGVzIGEgbGlzdCBvZiBkZXNpcmVkIHtAbGluayBCY3A0Ny5MYW5ndWFnZVNwZWMgfCBsYW5ndWFnZXN9IHRvIGEgbGlzdCBvZiBhdmFpbGFibGUge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlU3BlYyB8IGxhbmd1YWdlc30sXG4gKiByZXR1cm4gYSBsaXN0IG9mIG1hdGNoaW5nIGxhbmd1YWdlcyBvcmRlcmVkIGZyb20gYmVzdCB0byB3b3JzdC5cbiAqIEBwYXJhbSBkZXNpcmVkIC0gQW4gYXJyYXkgb2Yge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlU3BlYyB8IGxhbmd1YWdlIHNwZWNpZmljYXRpb25zfSBjb250YWluaW5nIGFuIG9yZGVyZWQgbGlzdCBvZiBwcmVmZXJyZWQgbGFuZ3VhZ2VzLlxuICogQHBhcmFtIGF2YWlsYWJsZSAtIEFuIGFycmF5IG9mIHtAbGluayBCY3A0Ny5MYW5ndWFnZVNwZWMgfCBsYW5ndWFnZSBzcGVjaWZpY2F0aW9uc30gY29udGFpbmluZyBhbiB1bm9yZGVyZWQgbGlzdCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzLlxuICogQHBhcmFtIG9wdGlvbnMgLSAob3B0aW9uYWwpIFBhcmFtZXRlcnMgdG8gY29udHJvbCBsYW5ndWFnZSB0YWcgY29udmVyc2lvbiBvciBjb21wYXJpc29uXG4gKiBAcmV0dXJucyBgU3VjY2Vzc2Agd2l0aCBhbiBvcmRlcmVkIGxpc3Qgb2YgbWF0Y2hpbmcge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnIHwgbGFuZ3VhZ2VzfSwgb3IgYEZhaWx1cmVgIHdpdGggZGV0YWlscyBpZlxuICogYW4gZXJyb3Igb2NjdXJzLlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgZnVuY3Rpb24gY2hvb3NlKFxuICAgIGRlc2lyZWQ6IExhbmd1YWdlU3BlY1tdLFxuICAgIGF2YWlsYWJsZTogTGFuZ3VhZ2VTcGVjW10sXG4gICAgb3B0aW9ucz86IExhbmd1YWdlVGFnSW5pdE9wdGlvbnMgJiBMYW5ndWFnZUNob29zZXJPcHRpb25zXG4pOiBSZXN1bHQ8TGFuZ3VhZ2VUYWdbXT4ge1xuICAgIHJldHVybiB0YWdzKGRlc2lyZWQsIG9wdGlvbnMpLm9uU3VjY2VzcygodykgPT4ge1xuICAgICAgICByZXR1cm4gdGFncyhhdmFpbGFibGUsIG9wdGlvbnMpLm9uU3VjY2VzcygoaCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHN1Y2NlZWQobmV3IExhbmd1YWdlQ2hvb3NlcigpLmZpbHRlckxhbmd1YWdlVGFncyh3LCBoLCBvcHRpb25zKSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuIl19
package/bcp47/index.d.ts DELETED
@@ -1,7 +0,0 @@
1
- export { ExtensionSingleton, ExtensionSubtag, ExtensionSubtagValue, Subtags } from './common';
2
- export { LanguageTag, LanguageTagInitOptions } from './languageTag';
3
- export { NormalizeTag, TagNormalization } from './normalization';
4
- export { TagValidity, ValidateTag } from './validation';
5
- export { LanguageFilterOptions, TagSimilarity, tagSimilarity } from './match';
6
- export * from './helpers';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bcp47/index.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAE9F,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE9E,cAAc,WAAW,CAAC"}
package/bcp47/index.js DELETED
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.tagSimilarity = exports.ValidateTag = exports.NormalizeTag = exports.LanguageTag = void 0;
18
- var languageTag_1 = require("./languageTag");
19
- Object.defineProperty(exports, "LanguageTag", { enumerable: true, get: function () { return languageTag_1.LanguageTag; } });
20
- var normalization_1 = require("./normalization");
21
- Object.defineProperty(exports, "NormalizeTag", { enumerable: true, get: function () { return normalization_1.NormalizeTag; } });
22
- var validation_1 = require("./validation");
23
- Object.defineProperty(exports, "ValidateTag", { enumerable: true, get: function () { return validation_1.ValidateTag; } });
24
- var match_1 = require("./match");
25
- Object.defineProperty(exports, "tagSimilarity", { enumerable: true, get: function () { return match_1.tagSimilarity; } });
26
- __exportStar(require("./helpers"), exports);
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmNwNDcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF3QkEsNkNBQW9FO0FBQTNELDBHQUFBLFdBQVcsT0FBQTtBQUNwQixpREFBaUU7QUFBeEQsNkdBQUEsWUFBWSxPQUFBO0FBQ3JCLDJDQUF3RDtBQUFsQyx5R0FBQSxXQUFXLE9BQUE7QUFFakMsaUNBQThFO0FBQS9CLHNHQUFBLGFBQWEsT0FBQTtBQUU1RCw0Q0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cbi8vIGlzdGFuYnVsIGlnbm9yZSBmaWxlXG5leHBvcnQgeyBFeHRlbnNpb25TaW5nbGV0b24sIEV4dGVuc2lvblN1YnRhZywgRXh0ZW5zaW9uU3VidGFnVmFsdWUsIFN1YnRhZ3MgfSBmcm9tICcuL2NvbW1vbic7XG5cbmV4cG9ydCB7IExhbmd1YWdlVGFnLCBMYW5ndWFnZVRhZ0luaXRPcHRpb25zIH0gZnJvbSAnLi9sYW5ndWFnZVRhZyc7XG5leHBvcnQgeyBOb3JtYWxpemVUYWcsIFRhZ05vcm1hbGl6YXRpb24gfSBmcm9tICcuL25vcm1hbGl6YXRpb24nO1xuZXhwb3J0IHsgVGFnVmFsaWRpdHksIFZhbGlkYXRlVGFnIH0gZnJvbSAnLi92YWxpZGF0aW9uJztcblxuZXhwb3J0IHsgTGFuZ3VhZ2VGaWx0ZXJPcHRpb25zLCBUYWdTaW1pbGFyaXR5LCB0YWdTaW1pbGFyaXR5IH0gZnJvbSAnLi9tYXRjaCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycyc7XG4iXX0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"languageRegistryData.d.ts","sourceRoot":"","sources":["../../src/bcp47/languageRegistryData.ts"],"names":[],"mappings":"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"}
@@ -1,209 +0,0 @@
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.LanguageRegistryData = void 0;
25
- const common_1 = require("./common");
26
- /**
27
- * Returns all of the data in the IANA language subtags registry for
28
- * a set of supplied {@link Bcp47.Subtags | subtags}.
29
- * @public
30
- */
31
- class LanguageRegistryData {
32
- /**
33
- * Constructs a new {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
34
- * from a supplied {@link Bcp47.Subtags | subtags} and {@link Iana.LanguageRegistries | language registries}.
35
- * @public
36
- */
37
- constructor(subtags, iana) {
38
- this._iana = iana;
39
- this._subtags = subtags;
40
- }
41
- /**
42
- * Registry data associated with the primary language subtag of the language tag from
43
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
44
- * was constructed, or `undefined` if the primary language is missing or invalid.
45
- * @public
46
- */
47
- get primaryLanguage() {
48
- var _a;
49
- if (this._primaryLanguage === undefined) {
50
- this._primaryLanguage = (_a = this._iana.subtags.languages.tryGet(this._subtags.primaryLanguage)) !== null && _a !== void 0 ? _a : false;
51
- }
52
- return this._primaryLanguage ? this._primaryLanguage : undefined;
53
- }
54
- /**
55
- * Registry data associated with the extlang subtag of the language tag from
56
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
57
- * was constructed, or `undefined` if extlang is missing or invalid.
58
- * @public
59
- */
60
- get extlangs() {
61
- if (this._extlangs === undefined) {
62
- if (this._subtags.extlangs !== undefined) {
63
- this._extlangs = this._subtags.extlangs.map((e) => {
64
- return {
65
- subtag: e,
66
- registry: this._iana.subtags.extlangs.tryGet(e),
67
- };
68
- });
69
- }
70
- if (!this._subtags.extlangs || this._subtags.extlangs.length === 0) {
71
- this._extlangs = false;
72
- }
73
- }
74
- return this._extlangs ? this._extlangs : undefined;
75
- }
76
- /**
77
- * Registry data associated with the script of the language tag from
78
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
79
- * was constructed, or `undefined` if the script cannot be determined.
80
- *
81
- * @public
82
- */
83
- get script() {
84
- if (this._script === undefined) {
85
- if (this._subtags.script) {
86
- this._script = this._iana.subtags.scripts.tryGet(this._subtags.script);
87
- }
88
- if (!this._script) {
89
- this._script = false;
90
- }
91
- }
92
- return this._script ? this._script : undefined;
93
- }
94
- /**
95
- * Registry data associated with the script of the language tag from
96
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
97
- * was constructed, or `undefined` if the script cannot be determined.
98
- *
99
- * Note that effectiveScript will default to the registry `Suppress-Script` value of the
100
- * primary language if no script subtag is present.
101
- * @public
102
- */
103
- get effectiveScript() {
104
- var _a;
105
- if (this._effectiveScript === undefined) {
106
- if (this._subtags.script) {
107
- this._effectiveScript = this._iana.subtags.scripts.tryGet(this._subtags.script);
108
- }
109
- else if (!this._effectiveScript) {
110
- const suppressed = (_a = this.primaryLanguage) === null || _a === void 0 ? void 0 : _a.suppressScript;
111
- if (suppressed) {
112
- this._effectiveScript = this._iana.subtags.scripts.tryGet(suppressed);
113
- }
114
- }
115
- if (!this._effectiveScript) {
116
- this._effectiveScript = false;
117
- }
118
- }
119
- return this._effectiveScript ? this._effectiveScript : undefined;
120
- }
121
- /**
122
- * Registry data associated with the region subtag of the language tag from
123
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
124
- * was constructed, or `undefined` if the region is missing or invalid.
125
- * @public
126
- */
127
- get region() {
128
- if (this._region === undefined) {
129
- if (this._subtags.region) {
130
- this._region = this._iana.subtags.regions.tryGet(this._subtags.region);
131
- }
132
- if (!this._region) {
133
- this._region = false;
134
- }
135
- }
136
- return this._region ? this._region : undefined;
137
- }
138
- /**
139
- * Registry data associated with the variant subtags of the language tag from
140
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
141
- * was constructed, or `undefined` if variant subtags are missing or invalid.
142
- * @public
143
- */
144
- get variants() {
145
- if (this._variants === undefined) {
146
- if (this._subtags.variants !== undefined) {
147
- this._variants = this._subtags.variants.map((v) => {
148
- return {
149
- subtag: v,
150
- registry: this._iana.subtags.variants.tryGet(v),
151
- };
152
- });
153
- }
154
- if (!this._subtags.variants || this._subtags.variants.length === 0) {
155
- this._variants = false;
156
- }
157
- }
158
- return this._variants ? this._variants : undefined;
159
- }
160
- /**
161
- * Registry data associated with the extension subtags of the language tag from
162
- * which this {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
163
- * was constructed, or `undefined` if extension subtags are missing or invalid.
164
- * @public
165
- */
166
- get extensions() {
167
- if (this._extensions === undefined) {
168
- if (this._subtags.extensions !== undefined) {
169
- this._extensions = this._subtags.extensions.map((e) => {
170
- return {
171
- ...e,
172
- registry: this._iana.extensions.extensions.tryGet(e.singleton),
173
- };
174
- });
175
- }
176
- if (!this._subtags.variants || this._subtags.variants.length === 0) {
177
- this._variants = false;
178
- }
179
- }
180
- return this._extensions ? this._extensions : undefined;
181
- }
182
- /**
183
- * Registry data for grandfathered tags, or `undefined` if the tag is not recognized
184
- * as a grandfathered tag.
185
- * @public
186
- */
187
- get grandfathered() {
188
- if (this._grandfathered === undefined) {
189
- if (this._subtags.grandfathered) {
190
- this._grandfathered = this._iana.subtags.grandfathered.tryGet(this._subtags.grandfathered);
191
- }
192
- if (!this._grandfathered) {
193
- this._grandfathered = false;
194
- }
195
- }
196
- return this._grandfathered ? this._grandfathered : undefined;
197
- }
198
- /**
199
- * @returns A string representation of the subtags from which this
200
- * {@link Bcp47.LanguageTagRegistryData | Bcp47.LanguageTagRegistryData}
201
- * was created.
202
- * @public
203
- */
204
- toString() {
205
- return (0, common_1.subtagsToString)(this._subtags);
206
- }
207
- }
208
- exports.LanguageRegistryData = LanguageRegistryData;
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2VSZWdpc3RyeURhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmNwNDcvbGFuZ3VhZ2VSZWdpc3RyeURhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7O0FBS0gscUNBQW9EO0FBbURwRDs7OztHQUlHO0FBQ0gsTUFBYSxvQkFBb0I7SUEwQzdCOzs7O09BSUc7SUFDSCxZQUFtQixPQUFnQixFQUFFLElBQTZCO1FBQzlELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQVcsZUFBZTs7UUFDdEIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsbUNBQUksS0FBSyxDQUFDO1NBQ3ZHO1FBQ0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILElBQVcsUUFBUTtRQUNmLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDOUIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsS0FBSyxTQUFTLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQzlDLE9BQU87d0JBQ0gsTUFBTSxFQUFFLENBQUM7d0JBQ1QsUUFBUSxFQUFF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Z0JBQ04sQ0FBQyxDQUFDLENBQUM7YUFDTjtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUNoRSxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQzthQUMxQjtTQUNKO1FBQ0QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDM0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUFXLGFBQWE7UUFDcEIsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLFNBQVMsRUFBRTtZQUNuQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFO2dCQUM3QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUM5RjtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUN0QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQzthQUMvQjtTQUNKO1FBQ0QsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDakUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksUUFBUTtRQUNYLE9BQU8sSUFBQSx3QkFBZSxFQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0NBQ0o7QUEvTkQsb0RBK05DIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBFcmlrIEZvcnR1bmVcbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4gKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4gKiB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4gKiBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsXG4gKiBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEVcbiAqIFNPRlRXQVJFLlxuICovXG5cbmltcG9ydCAqIGFzIEJjcDQ3IGZyb20gJy4uL2JjcDQ3JztcbmltcG9ydCAqIGFzIElhbmEgZnJvbSAnLi4vaWFuYSc7XG5cbmltcG9ydCB7IFN1YnRhZ3MsIHN1YnRhZ3NUb1N0cmluZyB9IGZyb20gJy4vY29tbW9uJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIGV4dGxhbmcgc3VidGFnIHdpdGggY29ycmVzcG9uZGluZyByZWdpc3RyeSBkYXRhLFxuICogaWYgcHJlc2VudC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlcmVkRXh0TGFuZ1ZhbHVlIHtcbiAgICAvKipcbiAgICAgKiBBIHtAbGluayBJYW5hLkxhbmd1YWdlU3VidGFncy5FeHRMYW5nU3VidGFnIHwgZXh0bGFuZyBzdWJ0YWd9IGZyb21cbiAgICAgKiB0aGUgb3JpZ2luYWwgbGFuZ3VhZ2UgdGFnLlxuICAgICAqL1xuICAgIHN1YnRhZzogSWFuYS5MYW5ndWFnZVN1YnRhZ3MuRXh0TGFuZ1N1YnRhZztcbiAgICAvKipcbiAgICAgKiBUaGUge0BsaW5rIElhbmEuTGFuZ3VhZ2VTdWJ0YWcuTW9kZWwuUmVnaXN0ZXJlZEV4dExhbmcgfCBJQU5BIHN1YnRhZyByZWdpc3RyeSBlbnRyeX1cbiAgICAgKiBmb3IgdGhpcyBzdWJ0YWcsIG9yIGB1bmRlZmluZWRgIGlmIHRoZSBzdWJ0YWcgaXMgbm90IHJlZ2lzdGVyZWQuXG4gICAgICovXG4gICAgcmVnaXN0cnk/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5Nb2RlbC5SZWdpc3RlcmVkRXh0TGFuZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIHZhcmlhbnQgc3VidGFnIHdpdGggY29ycmVzcG9uZGluZyByZWdpc3RyeSBkYXRhLFxuICogaWYgcHJlc2VudC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlcmVkVmFyaWFudFZhbHVlIHtcbiAgICAvKipcbiAgICAgKiBBIHtAbGluayBJYW5hLkxhbmd1YWdlU3VidGFncy5WYXJpYW50U3VidGFnIHwgdmFyaWFudCBzdWJ0YWd9IGZyb21cbiAgICAgKiB0aGUgb3JpZ2luYWwgbGFuZ3VhZ2UgdGFnLlxuICAgICAqL1xuICAgIHN1YnRhZzogSWFuYS5MYW5ndWFnZVN1YnRhZ3MuVmFyaWFudFN1YnRhZztcbiAgICAvKipcbiAgICAgKiBUaGUge0BsaW5rIElhbmEuTGFuZ3VhZ2VTdWJ0YWcuTW9kZWwuUmVnaXN0ZXJlZFZhcmlhbnQgfCBJQU5BIHN1YnRhZyByZWdpc3RyeSBlbnRyeX1cbiAgICAgKiBmb3IgdGhpcyBzdWJ0YWcsIG9yIGB1bmRlZmluZWRgIGlmIHRoZSBzdWJ0YWcgaXMgbm90IHJlZ2lzdGVyZWQuXG4gICAgICovXG4gICAgcmVnaXN0cnk/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5Nb2RlbC5SZWdpc3RlcmVkVmFyaWFudDtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIGV4dGVuc2lvbiBzdWJ0YWcgd2l0aCBjb3JyZXNwb25kaW5nIHJlZ2lzdHJ5IGRhdGEsXG4gKiBpZiBwcmVzZW50LlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2lzdGVyZWRFeHRlbnNpb25WYWx1ZSBleHRlbmRzIEJjcDQ3LkV4dGVuc2lvblN1YnRhZ1ZhbHVlIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbGFudWdhZ2UgZXh0ZW5zaW9ucyByZWdpc3RyeSBlbnRyeSBmb3IgdGhlIGFzc29jaWF0ZWQgc3VidGFnLFxuICAgICAqIG9yIGB1bmRlZmluZWRgIGlmIHRoZSBleHRlbnNpb24gaXMgbm90IHJlZ2lzdGVyZWQuXG4gICAgICovXG4gICAgcmVnaXN0cnk/OiBJYW5hLkxhbmd1YWdlVGFnRXh0ZW5zaW9ucy5Nb2RlbC5MYW5ndWFnZVRhZ0V4dGVuc2lvbjtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFsbCBvZiB0aGUgZGF0YSBpbiB0aGUgSUFOQSBsYW5ndWFnZSBzdWJ0YWdzIHJlZ2lzdHJ5IGZvclxuICogYSBzZXQgb2Ygc3VwcGxpZWQge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzfS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNsYXNzIExhbmd1YWdlUmVnaXN0cnlEYXRhIHtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2lhbmE6IElhbmEuTGFuZ3VhZ2VSZWdpc3RyaWVzO1xuICAgIC8qKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfc3VidGFnczogU3VidGFncztcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3ByaW1hcnlMYW5ndWFnZT86IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRMYW5ndWFnZSB8IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfZXh0bGFuZ3M/OiBSZWdpc3RlcmVkRXh0TGFuZ1ZhbHVlW10gfCBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3NjcmlwdD86IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRTY3JpcHQgfCBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2VmZmVjdGl2ZVNjcmlwdD86IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRTY3JpcHQgfCBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3JlZ2lvbj86IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRSZWdpb24gfCBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3ZhcmlhbnRzPzogUmVnaXN0ZXJlZFZhcmlhbnRWYWx1ZVtdIHwgZmFsc2U7XG4gICAgLyoqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9leHRlbnNpb25zPzogUmVnaXN0ZXJlZEV4dGVuc2lvblZhbHVlW10gfCBmYWxzZTtcbiAgICAvKipcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2dyYW5kZmF0aGVyZWQ/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5Nb2RlbC5SZWdpc3RlcmVkR3JhbmRmYXRoZXJlZFRhZyB8IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQ29uc3RydWN0cyBhIG5ldyB7QGxpbmsgQmNwNDcuTGFuZ3VhZ2VUYWdSZWdpc3RyeURhdGEgfCBCY3A0Ny5MYW5ndWFnZVRhZ1JlZ2lzdHJ5RGF0YX1cbiAgICAgKiBmcm9tIGEgc3VwcGxpZWQge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzfSBhbmQge0BsaW5rIElhbmEuTGFuZ3VhZ2VSZWdpc3RyaWVzIHwgbGFuZ3VhZ2UgcmVnaXN0cmllc30uXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihzdWJ0YWdzOiBTdWJ0YWdzLCBpYW5hOiBJYW5hLkxhbmd1YWdlUmVnaXN0cmllcykge1xuICAgICAgICB0aGlzLl9pYW5hID0gaWFuYTtcbiAgICAgICAgdGhpcy5fc3VidGFncyA9IHN1YnRhZ3M7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0cnkgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIHByaW1hcnkgbGFuZ3VhZ2Ugc3VidGFnIG9mIHRoZSBsYW5ndWFnZSB0YWcgZnJvbVxuICAgICAqIHdoaWNoIHRoaXMge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhIHwgQmNwNDcuTGFuZ3VhZ2VUYWdSZWdpc3RyeURhdGF9XG4gICAgICogd2FzIGNvbnN0cnVjdGVkLCBvciBgdW5kZWZpbmVkYCBpZiB0aGUgcHJpbWFyeSBsYW5ndWFnZSBpcyBtaXNzaW5nIG9yIGludmFsaWQuXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgcHJpbWFyeUxhbmd1YWdlKCk6IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRMYW5ndWFnZSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0aGlzLl9wcmltYXJ5TGFuZ3VhZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5fcHJpbWFyeUxhbmd1YWdlID0gdGhpcy5faWFuYS5zdWJ0YWdzLmxhbmd1YWdlcy50cnlHZXQodGhpcy5fc3VidGFncy5wcmltYXJ5TGFuZ3VhZ2UpID8/IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9wcmltYXJ5TGFuZ3VhZ2UgPyB0aGlzLl9wcmltYXJ5TGFuZ3VhZ2UgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0cnkgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGV4dGxhbmcgc3VidGFnIG9mIHRoZSBsYW5ndWFnZSB0YWcgZnJvbVxuICAgICAqIHdoaWNoIHRoaXMge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhIHwgQmNwNDcuTGFuZ3VhZ2VUYWdSZWdpc3RyeURhdGF9XG4gICAgICogd2FzIGNvbnN0cnVjdGVkLCBvciBgdW5kZWZpbmVkYCBpZiBleHRsYW5nIGlzIG1pc3Npbmcgb3IgaW52YWxpZC5cbiAgICAgKiBAcHVibGljXG4gICAgICovXG4gICAgcHVibGljIGdldCBleHRsYW5ncygpOiBSZWdpc3RlcmVkRXh0TGFuZ1ZhbHVlW10gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodGhpcy5fZXh0bGFuZ3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3N1YnRhZ3MuZXh0bGFuZ3MgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2V4dGxhbmdzID0gdGhpcy5fc3VidGFncy5leHRsYW5ncy5tYXAoKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN1YnRhZzogZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdHJ5OiB0aGlzLl9pYW5hLnN1YnRhZ3MuZXh0bGFuZ3MudHJ5R2V0KGUpLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLl9zdWJ0YWdzLmV4dGxhbmdzIHx8IHRoaXMuX3N1YnRhZ3MuZXh0bGFuZ3MubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZXh0bGFuZ3MgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fZXh0bGFuZ3MgPyB0aGlzLl9leHRsYW5ncyA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RyeSBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2NyaXB0IG9mIHRoZSBsYW5ndWFnZSB0YWcgZnJvbVxuICAgICAqIHdoaWNoIHRoaXMge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhIHwgQmNwNDcuTGFuZ3VhZ2VUYWdSZWdpc3RyeURhdGF9XG4gICAgICogd2FzIGNvbnN0cnVjdGVkLCBvciBgdW5kZWZpbmVkYCBpZiB0aGUgc2NyaXB0IGNhbm5vdCBiZSBkZXRlcm1pbmVkLlxuICAgICAqXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgc2NyaXB0KCk6IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRTY3JpcHQgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodGhpcy5fc2NyaXB0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9zdWJ0YWdzLnNjcmlwdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NjcmlwdCA9IHRoaXMuX2lhbmEuc3VidGFncy5zY3JpcHRzLnRyeUdldCh0aGlzLl9zdWJ0YWdzLnNjcmlwdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3NjcmlwdCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NjcmlwdCA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JpcHQgPyB0aGlzLl9zY3JpcHQgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0cnkgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIHNjcmlwdCBvZiB0aGUgbGFuZ3VhZ2UgdGFnIGZyb21cbiAgICAgKiB3aGljaCB0aGlzIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZ1JlZ2lzdHJ5RGF0YSB8IEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhfVxuICAgICAqIHdhcyBjb25zdHJ1Y3RlZCwgb3IgYHVuZGVmaW5lZGAgaWYgdGhlIHNjcmlwdCBjYW5ub3QgYmUgZGV0ZXJtaW5lZC5cbiAgICAgKlxuICAgICAqIE5vdGUgdGhhdCBlZmZlY3RpdmVTY3JpcHQgd2lsbCBkZWZhdWx0IHRvIHRoZSByZWdpc3RyeSBgU3VwcHJlc3MtU2NyaXB0YCB2YWx1ZSBvZiB0aGVcbiAgICAgKiBwcmltYXJ5IGxhbmd1YWdlIGlmIG5vIHNjcmlwdCBzdWJ0YWcgaXMgcHJlc2VudC5cbiAgICAgKiBAcHVibGljXG4gICAgICovXG4gICAgcHVibGljIGdldCBlZmZlY3RpdmVTY3JpcHQoKTogSWFuYS5MYW5ndWFnZVN1YnRhZ3MuTW9kZWwuUmVnaXN0ZXJlZFNjcmlwdCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0aGlzLl9lZmZlY3RpdmVTY3JpcHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3N1YnRhZ3Muc2NyaXB0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZWZmZWN0aXZlU2NyaXB0ID0gdGhpcy5faWFuYS5zdWJ0YWdzLnNjcmlwdHMudHJ5R2V0KHRoaXMuX3N1YnRhZ3Muc2NyaXB0KTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuX2VmZmVjdGl2ZVNjcmlwdCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN1cHByZXNzZWQgPSB0aGlzLnByaW1hcnlMYW5ndWFnZT8uc3VwcHJlc3NTY3JpcHQ7XG4gICAgICAgICAgICAgICAgaWYgKHN1cHByZXNzZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZWZmZWN0aXZlU2NyaXB0ID0gdGhpcy5faWFuYS5zdWJ0YWdzLnNjcmlwdHMudHJ5R2V0KHN1cHByZXNzZWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5fZWZmZWN0aXZlU2NyaXB0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZWZmZWN0aXZlU2NyaXB0ID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX2VmZmVjdGl2ZVNjcmlwdCA/IHRoaXMuX2VmZmVjdGl2ZVNjcmlwdCA6IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RyeSBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgcmVnaW9uIHN1YnRhZyBvZiB0aGUgbGFuZ3VhZ2UgdGFnIGZyb21cbiAgICAgKiB3aGljaCB0aGlzIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZ1JlZ2lzdHJ5RGF0YSB8IEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhfVxuICAgICAqIHdhcyBjb25zdHJ1Y3RlZCwgb3IgYHVuZGVmaW5lZGAgaWYgdGhlIHJlZ2lvbiBpcyBtaXNzaW5nIG9yIGludmFsaWQuXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgcmVnaW9uKCk6IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRSZWdpb24gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodGhpcy5fcmVnaW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9zdWJ0YWdzLnJlZ2lvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlZ2lvbiA9IHRoaXMuX2lhbmEuc3VidGFncy5yZWdpb25zLnRyeUdldCh0aGlzLl9zdWJ0YWdzLnJlZ2lvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRoaXMuX3JlZ2lvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlZ2lvbiA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9yZWdpb24gPyB0aGlzLl9yZWdpb24gOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0cnkgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIHZhcmlhbnQgc3VidGFncyBvZiB0aGUgbGFuZ3VhZ2UgdGFnIGZyb21cbiAgICAgKiB3aGljaCB0aGlzIHtAbGluayBCY3A0Ny5MYW5ndWFnZVRhZ1JlZ2lzdHJ5RGF0YSB8IEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhfVxuICAgICAqIHdhcyBjb25zdHJ1Y3RlZCwgb3IgYHVuZGVmaW5lZGAgaWYgdmFyaWFudCBzdWJ0YWdzIGFyZSBtaXNzaW5nIG9yIGludmFsaWQuXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgdmFyaWFudHMoKTogUmVnaXN0ZXJlZFZhcmlhbnRWYWx1ZVtdIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHRoaXMuX3ZhcmlhbnRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9zdWJ0YWdzLnZhcmlhbnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92YXJpYW50cyA9IHRoaXMuX3N1YnRhZ3MudmFyaWFudHMubWFwKCh2KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJ0YWc6IHYsXG4gICAgICAgICAgICAgICAgICAgICAgICByZWdpc3RyeTogdGhpcy5faWFuYS5zdWJ0YWdzLnZhcmlhbnRzLnRyeUdldCh2KSxcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5fc3VidGFncy52YXJpYW50cyB8fCB0aGlzLl9zdWJ0YWdzLnZhcmlhbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZhcmlhbnRzID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhcmlhbnRzID8gdGhpcy5fdmFyaWFudHMgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0cnkgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGV4dGVuc2lvbiBzdWJ0YWdzIG9mIHRoZSBsYW5ndWFnZSB0YWcgZnJvbVxuICAgICAqIHdoaWNoIHRoaXMge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhIHwgQmNwNDcuTGFuZ3VhZ2VUYWdSZWdpc3RyeURhdGF9XG4gICAgICogd2FzIGNvbnN0cnVjdGVkLCBvciBgdW5kZWZpbmVkYCBpZiBleHRlbnNpb24gc3VidGFncyBhcmUgbWlzc2luZyBvciBpbnZhbGlkLlxuICAgICAqIEBwdWJsaWNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGV4dGVuc2lvbnMoKTogUmVnaXN0ZXJlZEV4dGVuc2lvblZhbHVlW10gfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodGhpcy5fZXh0ZW5zaW9ucyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fc3VidGFncy5leHRlbnNpb25zICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9leHRlbnNpb25zID0gdGhpcy5fc3VidGFncy5leHRlbnNpb25zLm1hcCgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdHJ5OiB0aGlzLl9pYW5hLmV4dGVuc2lvbnMuZXh0ZW5zaW9ucy50cnlHZXQoZS5zaW5nbGV0b24pLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLl9zdWJ0YWdzLnZhcmlhbnRzIHx8IHRoaXMuX3N1YnRhZ3MudmFyaWFudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmFyaWFudHMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fZXh0ZW5zaW9ucyA/IHRoaXMuX2V4dGVuc2lvbnMgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0cnkgZGF0YSBmb3IgZ3JhbmRmYXRoZXJlZCB0YWdzLCBvciBgdW5kZWZpbmVkYCBpZiB0aGUgdGFnIGlzIG5vdCByZWNvZ25pemVkXG4gICAgICogYXMgYSBncmFuZGZhdGhlcmVkIHRhZy5cbiAgICAgKiBAcHVibGljXG4gICAgICovXG4gICAgcHVibGljIGdldCBncmFuZGZhdGhlcmVkKCk6IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLk1vZGVsLlJlZ2lzdGVyZWRHcmFuZGZhdGhlcmVkVGFnIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHRoaXMuX2dyYW5kZmF0aGVyZWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3N1YnRhZ3MuZ3JhbmRmYXRoZXJlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2dyYW5kZmF0aGVyZWQgPSB0aGlzLl9pYW5hLnN1YnRhZ3MuZ3JhbmRmYXRoZXJlZC50cnlHZXQodGhpcy5fc3VidGFncy5ncmFuZGZhdGhlcmVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5fZ3JhbmRmYXRoZXJlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2dyYW5kZmF0aGVyZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fZ3JhbmRmYXRoZXJlZCA/IHRoaXMuX2dyYW5kZmF0aGVyZWQgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgQSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHN1YnRhZ3MgZnJvbSB3aGljaCB0aGlzXG4gICAgICoge0BsaW5rIEJjcDQ3Lkxhbmd1YWdlVGFnUmVnaXN0cnlEYXRhIHwgQmNwNDcuTGFuZ3VhZ2VUYWdSZWdpc3RyeURhdGF9XG4gICAgICogd2FzIGNyZWF0ZWQuXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHB1YmxpYyB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gc3VidGFnc1RvU3RyaW5nKHRoaXMuX3N1YnRhZ3MpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"languageTag.d.ts","sourceRoot":"","sources":["../../src/bcp47/languageTag.ts"],"names":[],"mappings":"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"}