@fgv/ts-bcp47 0.5.0 → 0.5.1
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.
- package/data/unsd/m49.json +251 -0
- package/package.json +1 -1
- package/{bcp47 → src/bcp47}/bcp47Subtags/converters.d.ts +0 -0
- package/src/bcp47/bcp47Subtags/converters.d.ts.map +1 -0
- package/{bcp47 → src/bcp47}/bcp47Subtags/converters.js +1 -1
- package/{bcp47 → src/bcp47}/bcp47Subtags/index.d.ts +0 -0
- package/src/bcp47/bcp47Subtags/index.d.ts.map +1 -0
- package/{iana/jar/language-subtags/registry → src/bcp47/bcp47Subtags}/index.js +27 -28
- package/{bcp47 → src/bcp47}/bcp47Subtags/model.d.ts +0 -0
- package/src/bcp47/bcp47Subtags/model.d.ts.map +1 -0
- package/{iana/defaultRegistries.js → src/bcp47/bcp47Subtags/model.js} +1 -19
- package/{bcp47 → src/bcp47}/bcp47Subtags/validate.d.ts +0 -0
- package/src/bcp47/bcp47Subtags/validate.d.ts.map +1 -0
- package/src/bcp47/bcp47Subtags/validate.js +74 -0
- package/{bcp47 → src/bcp47}/common.d.ts +0 -0
- package/src/bcp47/common.d.ts.map +1 -0
- package/src/bcp47/common.js +59 -0
- package/{bcp47 → src/bcp47}/helpers.d.ts +0 -0
- package/src/bcp47/helpers.d.ts.map +1 -0
- package/src/bcp47/helpers.js +103 -0
- package/{bcp47 → src/bcp47}/index.d.ts +0 -0
- package/src/bcp47/index.d.ts.map +1 -0
- package/src/bcp47/index.js +27 -0
- package/{bcp47 → src/bcp47}/languageTag.d.ts +0 -0
- package/src/bcp47/languageTag.d.ts.map +1 -0
- package/src/bcp47/languageTag.js +342 -0
- package/{bcp47 → src/bcp47}/languageTagParser.d.ts +0 -0
- package/src/bcp47/languageTagParser.d.ts.map +1 -0
- package/src/bcp47/languageTagParser.js +310 -0
- package/{bcp47 → src/bcp47}/match/chooser.d.ts +0 -0
- package/src/bcp47/match/chooser.d.ts.map +1 -0
- package/src/bcp47/match/chooser.js +92 -0
- package/{bcp47 → src/bcp47}/match/common.d.ts +0 -0
- package/src/bcp47/match/common.d.ts.map +1 -0
- package/src/bcp47/match/common.js +42 -0
- package/{bcp47 → src/bcp47}/match/index.d.ts +0 -0
- package/src/bcp47/match/index.d.ts.map +1 -0
- package/src/bcp47/match/index.js +45 -0
- package/{bcp47 → src/bcp47}/match/similarity.d.ts +0 -0
- package/src/bcp47/match/similarity.d.ts.map +1 -0
- package/src/bcp47/match/similarity.js +230 -0
- package/{bcp47 → src/bcp47}/normalization/baseNormalizer.d.ts +0 -0
- package/src/bcp47/normalization/baseNormalizer.d.ts.map +1 -0
- package/src/bcp47/normalization/baseNormalizer.js +114 -0
- package/{bcp47 → src/bcp47}/normalization/canonicalNormalizer.d.ts +0 -0
- package/src/bcp47/normalization/canonicalNormalizer.d.ts.map +1 -0
- package/src/bcp47/normalization/canonicalNormalizer.js +110 -0
- package/{bcp47 → src/bcp47}/normalization/common.d.ts +0 -0
- package/src/bcp47/normalization/common.d.ts.map +1 -0
- package/src/bcp47/normalization/common.js +82 -0
- package/{bcp47 → src/bcp47}/normalization/index.d.ts +0 -0
- package/src/bcp47/normalization/index.d.ts.map +1 -0
- package/{bcp47 → src/bcp47}/normalization/index.js +1 -1
- package/{bcp47 → src/bcp47}/normalization/normalizeTag.d.ts +0 -0
- package/src/bcp47/normalization/normalizeTag.d.ts.map +1 -0
- package/src/bcp47/normalization/normalizeTag.js +105 -0
- package/{bcp47 → src/bcp47}/normalization/preferredTagNormalizer.d.ts +0 -0
- package/src/bcp47/normalization/preferredTagNormalizer.d.ts.map +1 -0
- package/src/bcp47/normalization/preferredTagNormalizer.js +178 -0
- package/{bcp47 → src/bcp47}/overrides/converters.d.ts +0 -0
- package/src/bcp47/overrides/converters.d.ts.map +1 -0
- package/src/bcp47/overrides/converters.js +75 -0
- package/{bcp47 → src/bcp47}/overrides/defaultRegistries.d.ts +0 -0
- package/src/bcp47/overrides/defaultRegistries.d.ts.map +1 -0
- package/{iana/language-tag-extensions/model.js → src/bcp47/overrides/defaultRegistries.js} +19 -1
- package/{bcp47 → src/bcp47}/overrides/index.d.ts +0 -0
- package/src/bcp47/overrides/index.d.ts.map +1 -0
- package/src/bcp47/overrides/index.js +30 -0
- package/{bcp47 → src/bcp47}/overrides/model.d.ts +0 -0
- package/src/bcp47/overrides/model.d.ts.map +1 -0
- package/{bcp47/bcp47Subtags → src/bcp47/overrides}/model.js +1 -1
- package/{bcp47 → src/bcp47}/overrides/overridesRegistry.d.ts +2 -0
- package/src/bcp47/overrides/overridesRegistry.d.ts.map +1 -0
- package/src/bcp47/overrides/overridesRegistry.js +112 -0
- package/{bcp47 → src/bcp47}/validation/baseValidator.d.ts +0 -0
- package/src/bcp47/validation/baseValidator.d.ts.map +1 -0
- package/src/bcp47/validation/baseValidator.js +111 -0
- package/{bcp47 → src/bcp47}/validation/common.d.ts +0 -0
- package/src/bcp47/validation/common.d.ts.map +1 -0
- package/src/bcp47/validation/common.js +84 -0
- package/{bcp47 → src/bcp47}/validation/index.d.ts +0 -0
- package/src/bcp47/validation/index.d.ts.map +1 -0
- package/src/bcp47/validation/index.js +51 -0
- package/{bcp47 → src/bcp47}/validation/isCanonical.d.ts +0 -0
- package/src/bcp47/validation/isCanonical.d.ts.map +1 -0
- package/src/bcp47/validation/isCanonical.js +101 -0
- package/{bcp47 → src/bcp47}/validation/isInPreferredForm.d.ts +0 -0
- package/src/bcp47/validation/isInPreferredForm.d.ts.map +1 -0
- package/src/bcp47/validation/isInPreferredForm.js +73 -0
- package/{bcp47 → src/bcp47}/validation/isStrictlyValid.d.ts +0 -0
- package/src/bcp47/validation/isStrictlyValid.d.ts.map +1 -0
- package/src/bcp47/validation/isStrictlyValid.js +98 -0
- package/{bcp47 → src/bcp47}/validation/isValid.d.ts +0 -0
- package/src/bcp47/validation/isValid.d.ts.map +1 -0
- package/src/bcp47/validation/isValid.js +115 -0
- package/{bcp47 → src/bcp47}/validation/isWellFormed.d.ts +0 -0
- package/src/bcp47/validation/isWellFormed.d.ts.map +1 -0
- package/src/bcp47/validation/isWellFormed.js +98 -0
- package/{bcp47 → src/bcp47}/validation/validateTag.d.ts +0 -0
- package/src/bcp47/validation/validateTag.d.ts.map +1 -0
- package/src/bcp47/validation/validateTag.js +159 -0
- package/{iana → src/iana}/common/converters.d.ts +0 -0
- package/src/iana/common/converters.d.ts.map +1 -0
- package/src/iana/common/converters.js +84 -0
- package/{iana → src/iana}/common/model.d.ts +0 -0
- package/src/iana/common/model.d.ts.map +1 -0
- package/{iana/jar/jarModel.js → src/iana/common/model.js} +1 -1
- package/{iana → src/iana}/common/registeredItems.d.ts +0 -0
- package/src/iana/common/registeredItems.d.ts.map +1 -0
- package/src/iana/common/registeredItems.js +124 -0
- package/{iana → src/iana}/common/utils.d.ts +0 -0
- package/src/iana/common/utils.d.ts.map +1 -0
- package/src/iana/common/utils.js +34 -0
- package/{iana → src/iana}/common/validate.d.ts +0 -0
- package/src/iana/common/validate.d.ts.map +1 -0
- package/src/iana/common/validate.js +61 -0
- package/{iana → src/iana}/converters.d.ts +0 -0
- package/src/iana/converters.d.ts.map +1 -0
- package/{iana/jar/language-subtags/tags/index.js → src/iana/converters.js} +8 -10
- package/{iana → src/iana}/defaultRegistries.d.ts +0 -0
- package/src/iana/defaultRegistries.d.ts.map +1 -0
- package/src/iana/defaultRegistries.js +42 -0
- package/{iana → src/iana}/index.d.ts +0 -0
- package/src/iana/index.d.ts.map +1 -0
- package/{iana → src/iana}/index.js +1 -1
- package/{iana → src/iana}/jar/converters.d.ts +0 -0
- package/src/iana/jar/converters.d.ts.map +1 -0
- package/{iana → src/iana}/jar/converters.js +1 -1
- package/{iana → src/iana}/jar/index.d.ts +0 -0
- package/src/iana/jar/index.d.ts.map +1 -0
- package/{iana/jar/language-subtags/tags/model.js → src/iana/jar/index.js} +29 -1
- package/{iana → src/iana}/jar/jarConverters.d.ts +0 -0
- package/src/iana/jar/jarConverters.d.ts.map +1 -0
- package/src/iana/jar/jarConverters.js +85 -0
- package/{iana → src/iana}/jar/jarModel.d.ts +0 -0
- package/src/iana/jar/jarModel.d.ts.map +1 -0
- package/src/iana/jar/jarModel.js +24 -0
- package/{iana → src/iana}/jar/language-subtags/converters.d.ts +0 -0
- package/src/iana/jar/language-subtags/converters.d.ts.map +1 -0
- package/{bcp47/bcp47Subtags/index.js → src/iana/jar/language-subtags/converters.js} +6 -8
- package/{iana → src/iana}/jar/language-subtags/index.d.ts +0 -0
- package/src/iana/jar/language-subtags/index.d.ts.map +1 -0
- package/{bcp47/validation → src/iana/jar/language-subtags}/index.js +17 -14
- package/{iana → src/iana}/jar/language-subtags/model.d.ts +0 -0
- package/src/iana/jar/language-subtags/model.d.ts.map +1 -0
- package/{iana/jar/language-subtags/converters.js → src/iana/jar/language-subtags/model.js} +3 -3
- package/{iana → src/iana}/jar/language-subtags/registry/converters.d.ts +0 -0
- package/src/iana/jar/language-subtags/registry/converters.d.ts.map +1 -0
- package/{bcp47/match/index.js → src/iana/jar/language-subtags/registry/converters.js} +23 -10
- package/{iana → src/iana}/jar/language-subtags/registry/index.d.ts +0 -0
- package/src/iana/jar/language-subtags/registry/index.d.ts.map +1 -0
- package/{iana/jar/model.js → src/iana/jar/language-subtags/registry/index.js} +27 -26
- package/{iana → src/iana}/jar/language-subtags/registry/model.d.ts +0 -0
- package/src/iana/jar/language-subtags/registry/model.d.ts.map +1 -0
- package/src/iana/jar/language-subtags/registry/model.js +41 -0
- package/{iana → src/iana}/jar/language-subtags/tags/converters.d.ts +0 -0
- package/src/iana/jar/language-subtags/tags/converters.d.ts.map +1 -0
- package/src/iana/jar/language-subtags/tags/converters.js +128 -0
- package/{iana → src/iana}/jar/language-subtags/tags/index.d.ts +0 -0
- package/src/iana/jar/language-subtags/tags/index.d.ts.map +1 -0
- package/{unsd/csv → src/iana/jar/language-subtags/tags}/index.js +8 -4
- package/{iana → src/iana}/jar/language-subtags/tags/model.d.ts +0 -0
- package/src/iana/jar/language-subtags/tags/model.d.ts.map +1 -0
- package/{utils/jsonHelpers.js → src/iana/jar/language-subtags/tags/model.js} +2 -7
- package/{iana → src/iana}/jar/language-subtags/tags/tagValidation.d.ts +0 -0
- package/src/iana/jar/language-subtags/tags/tagValidation.d.ts.map +1 -0
- package/src/iana/jar/language-subtags/tags/tagValidation.js +70 -0
- package/{iana → src/iana}/jar/language-subtags/tags/validate.d.ts +0 -0
- package/src/iana/jar/language-subtags/tags/validate.d.ts.map +1 -0
- package/src/iana/jar/language-subtags/tags/validate.js +87 -0
- package/{iana → src/iana}/jar/model.d.ts +0 -0
- package/src/iana/jar/model.d.ts.map +1 -0
- package/{iana/converters.js → src/iana/jar/model.js} +8 -8
- package/{iana → src/iana}/language-subtags/common.d.ts +0 -0
- package/src/iana/language-subtags/common.d.ts.map +1 -0
- package/{iana/jar/language-subtags/registry/converters.js → src/iana/language-subtags/common.js} +1 -35
- package/{iana → src/iana}/language-subtags/converters.d.ts +0 -0
- package/src/iana/language-subtags/converters.d.ts.map +1 -0
- package/src/iana/language-subtags/converters.js +200 -0
- package/{iana → src/iana}/language-subtags/index.d.ts +0 -0
- package/src/iana/language-subtags/index.d.ts.map +1 -0
- package/{iana → src/iana}/language-subtags/index.js +1 -1
- package/{iana → src/iana}/language-subtags/jarConverters.d.ts +0 -0
- package/src/iana/language-subtags/jarConverters.d.ts.map +1 -0
- package/src/iana/language-subtags/jarConverters.js +213 -0
- package/{iana → src/iana}/language-subtags/model.d.ts +0 -0
- package/src/iana/language-subtags/model.d.ts.map +1 -0
- package/src/iana/language-subtags/model.js +24 -0
- package/{iana → src/iana}/language-subtags/scope.d.ts +0 -0
- package/src/iana/language-subtags/scope.d.ts.map +1 -0
- package/src/iana/language-subtags/scope.js +179 -0
- package/{iana → src/iana}/language-subtags/subtagRegistry.d.ts +2 -0
- package/src/iana/language-subtags/subtagRegistry.d.ts.map +1 -0
- package/src/iana/language-subtags/subtagRegistry.js +149 -0
- package/{iana → src/iana}/language-subtags/validate.d.ts +0 -0
- package/src/iana/language-subtags/validate.d.ts.map +1 -0
- package/{iana → src/iana}/language-subtags/validate.js +1 -1
- package/{iana → src/iana}/language-tag-extensions/converters.d.ts +0 -0
- package/src/iana/language-tag-extensions/converters.d.ts.map +1 -0
- package/src/iana/language-tag-extensions/converters.js +87 -0
- package/{iana → src/iana}/language-tag-extensions/extensionsRegistry.d.ts +2 -0
- package/src/iana/language-tag-extensions/extensionsRegistry.d.ts.map +1 -0
- package/src/iana/language-tag-extensions/extensionsRegistry.js +104 -0
- package/{iana → src/iana}/language-tag-extensions/extensionsScope.d.ts +0 -0
- package/src/iana/language-tag-extensions/extensionsScope.d.ts.map +1 -0
- package/src/iana/language-tag-extensions/extensionsScope.js +77 -0
- package/{iana → src/iana}/language-tag-extensions/index.d.ts +0 -0
- package/src/iana/language-tag-extensions/index.d.ts.map +1 -0
- package/{iana → src/iana}/language-tag-extensions/index.js +1 -1
- package/{iana → src/iana}/language-tag-extensions/jarConverters.d.ts +0 -0
- package/src/iana/language-tag-extensions/jarConverters.d.ts.map +1 -0
- package/src/iana/language-tag-extensions/jarConverters.js +102 -0
- package/{iana → src/iana}/language-tag-extensions/model.d.ts +0 -0
- package/src/iana/language-tag-extensions/model.d.ts.map +1 -0
- package/src/iana/language-tag-extensions/model.js +24 -0
- package/{iana → src/iana}/language-tag-extensions/validate.d.ts +0 -0
- package/src/iana/language-tag-extensions/validate.d.ts.map +1 -0
- package/src/iana/language-tag-extensions/validate.js +36 -0
- package/{iana → src/iana}/languageRegistries.d.ts +1 -0
- package/src/iana/languageRegistries.d.ts.map +1 -0
- package/src/iana/languageRegistries.js +56 -0
- package/{iana → src/iana}/model.d.ts +0 -0
- package/src/iana/model.d.ts.map +1 -0
- package/{iana → src/iana}/model.js +1 -1
- package/{iana → src/iana}/validate.d.ts +0 -0
- package/src/iana/validate.d.ts.map +1 -0
- package/{bcp47/overrides/defaultRegistries.js → src/iana/validate.js} +17 -20
- package/{index.d.ts → src/index.d.ts} +0 -0
- package/src/index.d.ts.map +1 -0
- package/{index.js → src/index.js} +1 -1
- package/{unsd → src/unsd}/areas.d.ts +0 -0
- package/src/unsd/areas.d.ts.map +1 -0
- package/src/unsd/areas.js +96 -0
- package/{unsd → src/unsd}/common.d.ts +0 -0
- package/src/unsd/common.d.ts.map +1 -0
- package/{iana/jar/language-subtags/model.js → src/unsd/common.js} +1 -29
- package/{unsd → src/unsd}/csv/converters.d.ts +0 -0
- package/src/unsd/csv/converters.d.ts.map +1 -0
- package/src/unsd/csv/converters.js +70 -0
- package/{unsd → src/unsd}/csv/index.d.ts +0 -0
- package/src/unsd/csv/index.d.ts.map +1 -0
- package/{iana/jar → src/unsd/csv}/index.js +1 -1
- package/{unsd → src/unsd}/csv/model.d.ts +0 -0
- package/src/unsd/csv/model.d.ts.map +1 -0
- package/{iana/common → src/unsd/csv}/model.js +1 -1
- package/{unsd → src/unsd}/defaultRegistries.d.ts +0 -0
- package/src/unsd/defaultRegistries.d.ts.map +1 -0
- package/src/unsd/defaultRegistries.js +42 -0
- package/{unsd → src/unsd}/index.d.ts +0 -0
- package/src/unsd/index.d.ts.map +1 -0
- package/{unsd/csv/model.js → src/unsd/index.js} +21 -1
- package/{unsd → src/unsd}/regionCodes.d.ts +4 -2
- package/src/unsd/regionCodes.d.ts.map +1 -0
- package/src/unsd/regionCodes.js +121 -0
- package/{unsd → src/unsd}/regions.d.ts +0 -0
- package/src/unsd/regions.d.ts.map +1 -0
- package/src/unsd/regions.js +77 -0
- package/{utils → src/utils}/index.d.ts +0 -0
- package/src/utils/index.d.ts.map +1 -0
- package/{iana/jar/language-subtags → src/utils}/index.js +4 -18
- package/{utils → src/utils}/jsonHelpers.d.ts +0 -0
- package/src/utils/jsonHelpers.d.ts.map +1 -0
- package/{utils/index.js → src/utils/jsonHelpers.js} +6 -17
- package/{utils → src/utils}/validationHelpers.d.ts +0 -0
- package/src/utils/validationHelpers.d.ts.map +1 -0
- package/src/utils/validationHelpers.js +88 -0
- package/bcp47/bcp47Subtags/converters.d.ts.map +0 -1
- package/bcp47/bcp47Subtags/index.d.ts.map +0 -1
- package/bcp47/bcp47Subtags/model.d.ts.map +0 -1
- package/bcp47/bcp47Subtags/validate.d.ts.map +0 -1
- package/bcp47/bcp47Subtags/validate.js +0 -74
- package/bcp47/common.d.ts.map +0 -1
- package/bcp47/common.js +0 -59
- package/bcp47/helpers.d.ts.map +0 -1
- package/bcp47/helpers.js +0 -103
- package/bcp47/index.d.ts.map +0 -1
- package/bcp47/index.js +0 -27
- package/bcp47/languageTag.d.ts.map +0 -1
- package/bcp47/languageTag.js +0 -342
- package/bcp47/languageTagParser.d.ts.map +0 -1
- package/bcp47/languageTagParser.js +0 -310
- package/bcp47/match/chooser.d.ts.map +0 -1
- package/bcp47/match/chooser.js +0 -92
- package/bcp47/match/common.d.ts.map +0 -1
- package/bcp47/match/common.js +0 -42
- package/bcp47/match/index.d.ts.map +0 -1
- package/bcp47/match/similarity.d.ts.map +0 -1
- package/bcp47/match/similarity.js +0 -230
- package/bcp47/normalization/baseNormalizer.d.ts.map +0 -1
- package/bcp47/normalization/baseNormalizer.js +0 -114
- package/bcp47/normalization/canonicalNormalizer.d.ts.map +0 -1
- package/bcp47/normalization/canonicalNormalizer.js +0 -110
- package/bcp47/normalization/common.d.ts.map +0 -1
- package/bcp47/normalization/common.js +0 -82
- package/bcp47/normalization/index.d.ts.map +0 -1
- package/bcp47/normalization/normalizeTag.d.ts.map +0 -1
- package/bcp47/normalization/normalizeTag.js +0 -105
- package/bcp47/normalization/preferredTagNormalizer.d.ts.map +0 -1
- package/bcp47/normalization/preferredTagNormalizer.js +0 -178
- package/bcp47/overrides/converters.d.ts.map +0 -1
- package/bcp47/overrides/converters.js +0 -75
- package/bcp47/overrides/defaultRegistries.d.ts.map +0 -1
- package/bcp47/overrides/index.d.ts.map +0 -1
- package/bcp47/overrides/index.js +0 -30
- package/bcp47/overrides/model.d.ts.map +0 -1
- package/bcp47/overrides/model.js +0 -24
- package/bcp47/overrides/overridesRegistry.d.ts.map +0 -1
- package/bcp47/overrides/overridesRegistry.js +0 -101
- package/bcp47/validation/baseValidator.d.ts.map +0 -1
- package/bcp47/validation/baseValidator.js +0 -111
- package/bcp47/validation/common.d.ts.map +0 -1
- package/bcp47/validation/common.js +0 -84
- package/bcp47/validation/index.d.ts.map +0 -1
- package/bcp47/validation/isCanonical.d.ts.map +0 -1
- package/bcp47/validation/isCanonical.js +0 -101
- package/bcp47/validation/isInPreferredForm.d.ts.map +0 -1
- package/bcp47/validation/isInPreferredForm.js +0 -73
- package/bcp47/validation/isStrictlyValid.d.ts.map +0 -1
- package/bcp47/validation/isStrictlyValid.js +0 -98
- package/bcp47/validation/isValid.d.ts.map +0 -1
- package/bcp47/validation/isValid.js +0 -115
- package/bcp47/validation/isWellFormed.d.ts.map +0 -1
- package/bcp47/validation/isWellFormed.js +0 -98
- package/bcp47/validation/validateTag.d.ts.map +0 -1
- package/bcp47/validation/validateTag.js +0 -159
- package/data/unsd/m49.csv +0 -250
- package/iana/common/converters.d.ts.map +0 -1
- package/iana/common/converters.js +0 -84
- package/iana/common/model.d.ts.map +0 -1
- package/iana/common/registeredItems.d.ts.map +0 -1
- package/iana/common/registeredItems.js +0 -124
- package/iana/common/utils.d.ts.map +0 -1
- package/iana/common/utils.js +0 -34
- package/iana/common/validate.d.ts.map +0 -1
- package/iana/common/validate.js +0 -61
- package/iana/converters.d.ts.map +0 -1
- package/iana/defaultRegistries.d.ts.map +0 -1
- package/iana/index.d.ts.map +0 -1
- package/iana/jar/converters.d.ts.map +0 -1
- package/iana/jar/index.d.ts.map +0 -1
- package/iana/jar/jarConverters.d.ts.map +0 -1
- package/iana/jar/jarConverters.js +0 -85
- package/iana/jar/jarModel.d.ts.map +0 -1
- package/iana/jar/language-subtags/converters.d.ts.map +0 -1
- package/iana/jar/language-subtags/index.d.ts.map +0 -1
- package/iana/jar/language-subtags/model.d.ts.map +0 -1
- package/iana/jar/language-subtags/registry/converters.d.ts.map +0 -1
- package/iana/jar/language-subtags/registry/index.d.ts.map +0 -1
- package/iana/jar/language-subtags/registry/model.d.ts.map +0 -1
- package/iana/jar/language-subtags/registry/model.js +0 -41
- package/iana/jar/language-subtags/tags/converters.d.ts.map +0 -1
- package/iana/jar/language-subtags/tags/converters.js +0 -128
- package/iana/jar/language-subtags/tags/index.d.ts.map +0 -1
- package/iana/jar/language-subtags/tags/model.d.ts.map +0 -1
- package/iana/jar/language-subtags/tags/tagValidation.d.ts.map +0 -1
- package/iana/jar/language-subtags/tags/tagValidation.js +0 -70
- package/iana/jar/language-subtags/tags/validate.d.ts.map +0 -1
- package/iana/jar/language-subtags/tags/validate.js +0 -87
- package/iana/jar/model.d.ts.map +0 -1
- package/iana/language-subtags/common.d.ts.map +0 -1
- package/iana/language-subtags/common.js +0 -24
- package/iana/language-subtags/converters.d.ts.map +0 -1
- package/iana/language-subtags/converters.js +0 -200
- package/iana/language-subtags/index.d.ts.map +0 -1
- package/iana/language-subtags/jarConverters.d.ts.map +0 -1
- package/iana/language-subtags/jarConverters.js +0 -213
- package/iana/language-subtags/model.d.ts.map +0 -1
- package/iana/language-subtags/model.js +0 -24
- package/iana/language-subtags/scope.d.ts.map +0 -1
- package/iana/language-subtags/scope.js +0 -179
- package/iana/language-subtags/subtagRegistry.d.ts.map +0 -1
- package/iana/language-subtags/subtagRegistry.js +0 -139
- package/iana/language-subtags/validate.d.ts.map +0 -1
- package/iana/language-tag-extensions/converters.d.ts.map +0 -1
- package/iana/language-tag-extensions/converters.js +0 -87
- package/iana/language-tag-extensions/extensionsRegistry.d.ts.map +0 -1
- package/iana/language-tag-extensions/extensionsRegistry.js +0 -94
- package/iana/language-tag-extensions/extensionsScope.d.ts.map +0 -1
- package/iana/language-tag-extensions/extensionsScope.js +0 -77
- package/iana/language-tag-extensions/index.d.ts.map +0 -1
- package/iana/language-tag-extensions/jarConverters.d.ts.map +0 -1
- package/iana/language-tag-extensions/jarConverters.js +0 -102
- package/iana/language-tag-extensions/model.d.ts.map +0 -1
- package/iana/language-tag-extensions/validate.d.ts.map +0 -1
- package/iana/language-tag-extensions/validate.js +0 -36
- package/iana/languageRegistries.d.ts.map +0 -1
- package/iana/languageRegistries.js +0 -49
- package/iana/model.d.ts.map +0 -1
- package/iana/validate.d.ts.map +0 -1
- package/iana/validate.js +0 -39
- package/index.d.ts.map +0 -1
- package/unsd/areas.d.ts.map +0 -1
- package/unsd/areas.js +0 -96
- package/unsd/common.d.ts.map +0 -1
- package/unsd/common.js +0 -24
- package/unsd/csv/converters.d.ts.map +0 -1
- package/unsd/csv/converters.js +0 -70
- package/unsd/csv/index.d.ts.map +0 -1
- package/unsd/csv/model.d.ts.map +0 -1
- package/unsd/defaultRegistries.d.ts.map +0 -1
- package/unsd/defaultRegistries.js +0 -42
- package/unsd/index.d.ts.map +0 -1
- package/unsd/index.js +0 -44
- package/unsd/regionCodes.d.ts.map +0 -1
- package/unsd/regionCodes.js +0 -111
- package/unsd/regions.d.ts.map +0 -1
- package/unsd/regions.js +0 -77
- package/utils/index.d.ts.map +0 -1
- package/utils/jsonHelpers.d.ts.map +0 -1
- package/utils/validationHelpers.d.ts.map +0 -1
- package/utils/validationHelpers.js +0 -88
|
@@ -0,0 +1,77 @@
|
|
|
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.Regions = exports.GlobalRegionCode = exports.GlobalRegionName = void 0;
|
|
25
|
+
const ts_utils_1 = require("@fgv/ts-utils");
|
|
26
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
27
|
+
exports.GlobalRegionName = 'World';
|
|
28
|
+
exports.GlobalRegionCode = '001';
|
|
29
|
+
/* eslint-enable @typescript-eslint/naming-convention */
|
|
30
|
+
/**
|
|
31
|
+
* @public
|
|
32
|
+
*/
|
|
33
|
+
class Regions {
|
|
34
|
+
constructor() {
|
|
35
|
+
this.global = { name: exports.GlobalRegionName, code: exports.GlobalRegionCode, tier: 'global', regions: [], areas: [] };
|
|
36
|
+
this._regions = new Map();
|
|
37
|
+
}
|
|
38
|
+
tryGetRegion(from) {
|
|
39
|
+
return this._regions.get(from);
|
|
40
|
+
}
|
|
41
|
+
getRegion(from) {
|
|
42
|
+
const got = this._regions.get(from);
|
|
43
|
+
return got ? (0, ts_utils_1.succeed)(got) : (0, ts_utils_1.fail)(`${from}: region not found`);
|
|
44
|
+
}
|
|
45
|
+
getOrAddRegionChildRegion(tier, parent, code, name) {
|
|
46
|
+
if (!code && !name) {
|
|
47
|
+
return (0, ts_utils_1.succeed)(parent);
|
|
48
|
+
}
|
|
49
|
+
else if (!code || !name) {
|
|
50
|
+
return (0, ts_utils_1.fail)(`${code}(${name}): code and name must both be present`);
|
|
51
|
+
}
|
|
52
|
+
const existing = this._regions.get(code);
|
|
53
|
+
if (existing) {
|
|
54
|
+
if (existing.name !== name) {
|
|
55
|
+
return (0, ts_utils_1.fail)(`${code}: cannot add ${name} - already exists as ${existing.name}`);
|
|
56
|
+
}
|
|
57
|
+
if (existing.tier !== tier) {
|
|
58
|
+
return (0, ts_utils_1.fail)(`${code}: cannot add ${name} as tier ${tier} - already exists as tier ${existing.tier}`);
|
|
59
|
+
}
|
|
60
|
+
if (existing.parent !== parent) {
|
|
61
|
+
const haveParent = `${existing.parent.code}/${existing.parent.name}`;
|
|
62
|
+
const wantParent = `${parent.code}/${parent.name}`;
|
|
63
|
+
return (0, ts_utils_1.fail)(`${code}: cannot add ${name} with parent ${wantParent} - already exists with parent ${haveParent}`);
|
|
64
|
+
}
|
|
65
|
+
return (0, ts_utils_1.succeed)(existing);
|
|
66
|
+
}
|
|
67
|
+
const added = { name, code, tier, parent, regions: [], areas: [] };
|
|
68
|
+
this._regions.set(code, added);
|
|
69
|
+
parent.regions.push(added);
|
|
70
|
+
return (0, ts_utils_1.succeed)(added);
|
|
71
|
+
}
|
|
72
|
+
getAll() {
|
|
73
|
+
return Array.from(this._regions.values());
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.Regions = Regions;
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91bnNkL3JlZ2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7O0FBR0gsNENBQXNEO0FBR3RELHlEQUF5RDtBQUM1QyxRQUFBLGdCQUFnQixHQUFHLE9BQU8sQ0FBQztBQUMzQixRQUFBLGdCQUFnQixHQUFHLEtBQXdCLENBQUM7QUFDekQsd0RBQXdEO0FBRXhEOztHQUVHO0FBQ0gsTUFBYSxPQUFPO0lBT2hCO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLElBQUksRUFBRSx3QkFBZ0IsRUFBRSxJQUFJLEVBQUUsd0JBQWdCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUN6RyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVNLFlBQVksQ0FBQyxJQUFxQjtRQUNyQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTSxTQUFTLENBQUMsSUFBcUI7UUFDbEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUEsa0JBQU8sRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBQSxlQUFJLEVBQUMsR0FBRyxJQUFJLG9CQUFvQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLHlCQUF5QixDQUM1QixJQUE0QixFQUM1QixNQUFjLEVBQ2QsSUFBaUMsRUFDakMsSUFBd0I7UUFFeEIsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNoQixPQUFPLElBQUEsa0JBQU8sRUFBQyxNQUFNLENBQUMsQ0FBQztTQUMxQjthQUFNLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDdkIsT0FBTyxJQUFBLGVBQUksRUFBQyxHQUFHLElBQUksSUFBSSxJQUFJLHVDQUF1QyxDQUFDLENBQUM7U0FDdkU7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QyxJQUFJLFFBQVEsRUFBRTtZQUNWLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7Z0JBQ3hCLE9BQU8sSUFBQSxlQUFJLEVBQUMsR0FBRyxJQUFJLGdCQUFnQixJQUFJLHdCQUF3QixRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUNuRjtZQUNELElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7Z0JBQ3hCLE9BQU8sSUFBQSxlQUFJLEVBQUMsR0FBRyxJQUFJLGdCQUFnQixJQUFJLFlBQVksSUFBSSw2QkFBNkIsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7YUFDeEc7WUFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssTUFBTSxFQUFFO2dCQUM1QixNQUFNLFVBQVUsR0FBRyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3JFLE1BQU0sVUFBVSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ25ELE9BQU8sSUFBQSxlQUFJLEVBQUMsR0FBRyxJQUFJLGdCQUFnQixJQUFJLGdCQUFnQixVQUFVLGlDQUFpQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO2FBQ25IO1lBQ0QsT0FBTyxJQUFBLGtCQUFPLEVBQUMsUUFBUSxDQUFDLENBQUM7U0FDNUI7UUFFRCxNQUFNLEtBQUssR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNuRSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDL0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsT0FBTyxJQUFBLGtCQUFPLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVNLE1BQU07UUFDVCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FDSjtBQTFERCwwQkEwREMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0IHsgR2xvYmFsUmVnaW9uLCBJbnRlcm1lZGlhdGVSZWdpb25UaWVyLCBSZWdpb24gfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBSZXN1bHQsIGZhaWwsIHN1Y2NlZWQgfSBmcm9tICdAZmd2L3RzLXV0aWxzJztcbmltcG9ydCB7IFVuTTQ5UmVnaW9uQ29kZSB9IGZyb20gJy4uL2lhbmEvbW9kZWwnO1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cbmV4cG9ydCBjb25zdCBHbG9iYWxSZWdpb25OYW1lID0gJ1dvcmxkJztcbmV4cG9ydCBjb25zdCBHbG9iYWxSZWdpb25Db2RlID0gJzAwMScgYXMgVW5NNDlSZWdpb25Db2RlO1xuLyogZXNsaW50LWVuYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cblxuLyoqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWdpb25zIHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZ2xvYmFsOiBHbG9iYWxSZWdpb247XG4gICAgLyoqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9yZWdpb25zOiBNYXA8VW5NNDlSZWdpb25Db2RlLCBSZWdpb24+O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmdsb2JhbCA9IHsgbmFtZTogR2xvYmFsUmVnaW9uTmFtZSwgY29kZTogR2xvYmFsUmVnaW9uQ29kZSwgdGllcjogJ2dsb2JhbCcsIHJlZ2lvbnM6IFtdLCBhcmVhczogW10gfTtcbiAgICAgICAgdGhpcy5fcmVnaW9ucyA9IG5ldyBNYXAoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdHJ5R2V0UmVnaW9uKGZyb206IFVuTTQ5UmVnaW9uQ29kZSk6IFJlZ2lvbiB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZWdpb25zLmdldChmcm9tKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UmVnaW9uKGZyb206IFVuTTQ5UmVnaW9uQ29kZSk6IFJlc3VsdDxSZWdpb24+IHtcbiAgICAgICAgY29uc3QgZ290ID0gdGhpcy5fcmVnaW9ucy5nZXQoZnJvbSk7XG4gICAgICAgIHJldHVybiBnb3QgPyBzdWNjZWVkKGdvdCkgOiBmYWlsKGAke2Zyb219OiByZWdpb24gbm90IGZvdW5kYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldE9yQWRkUmVnaW9uQ2hpbGRSZWdpb24oXG4gICAgICAgIHRpZXI6IEludGVybWVkaWF0ZVJlZ2lvblRpZXIsXG4gICAgICAgIHBhcmVudDogUmVnaW9uLFxuICAgICAgICBjb2RlOiBVbk00OVJlZ2lvbkNvZGUgfCB1bmRlZmluZWQsXG4gICAgICAgIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgICk6IFJlc3VsdDxSZWdpb24+IHtcbiAgICAgICAgaWYgKCFjb2RlICYmICFuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gc3VjY2VlZChwYXJlbnQpO1xuICAgICAgICB9IGVsc2UgaWYgKCFjb2RlIHx8ICFuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFpbChgJHtjb2RlfSgke25hbWV9KTogY29kZSBhbmQgbmFtZSBtdXN0IGJvdGggYmUgcHJlc2VudGApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXhpc3RpbmcgPSB0aGlzLl9yZWdpb25zLmdldChjb2RlKTtcbiAgICAgICAgaWYgKGV4aXN0aW5nKSB7XG4gICAgICAgICAgICBpZiAoZXhpc3RpbmcubmFtZSAhPT0gbmFtZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWlsKGAke2NvZGV9OiBjYW5ub3QgYWRkICR7bmFtZX0gLSBhbHJlYWR5IGV4aXN0cyBhcyAke2V4aXN0aW5nLm5hbWV9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZXhpc3RpbmcudGllciAhPT0gdGllcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWlsKGAke2NvZGV9OiBjYW5ub3QgYWRkICR7bmFtZX0gYXMgdGllciAke3RpZXJ9IC0gYWxyZWFkeSBleGlzdHMgYXMgdGllciAke2V4aXN0aW5nLnRpZXJ9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZXhpc3RpbmcucGFyZW50ICE9PSBwYXJlbnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBoYXZlUGFyZW50ID0gYCR7ZXhpc3RpbmcucGFyZW50LmNvZGV9LyR7ZXhpc3RpbmcucGFyZW50Lm5hbWV9YDtcbiAgICAgICAgICAgICAgICBjb25zdCB3YW50UGFyZW50ID0gYCR7cGFyZW50LmNvZGV9LyR7cGFyZW50Lm5hbWV9YDtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFpbChgJHtjb2RlfTogY2Fubm90IGFkZCAke25hbWV9IHdpdGggcGFyZW50ICR7d2FudFBhcmVudH0gLSBhbHJlYWR5IGV4aXN0cyB3aXRoIHBhcmVudCAke2hhdmVQYXJlbnR9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc3VjY2VlZChleGlzdGluZyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhZGRlZCA9IHsgbmFtZSwgY29kZSwgdGllciwgcGFyZW50LCByZWdpb25zOiBbXSwgYXJlYXM6IFtdIH07XG4gICAgICAgIHRoaXMuX3JlZ2lvbnMuc2V0KGNvZGUsIGFkZGVkKTtcbiAgICAgICAgcGFyZW50LnJlZ2lvbnMucHVzaChhZGRlZCk7XG4gICAgICAgIHJldHVybiBzdWNjZWVkKGFkZGVkKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QWxsKCk6IFJlZ2lvbltdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5fcmVnaW9ucy52YWx1ZXMoKSk7XG4gICAgfVxufVxuIl19
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAsBA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
|
-
* Copyright (c)
|
|
3
|
+
* Copyright (c) 2021 Erik Fortune
|
|
4
4
|
*
|
|
5
5
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
* of this software and associated documentation files (the "Software"), to deal
|
|
@@ -31,24 +31,10 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
31
31
|
if (k2 === undefined) k2 = k;
|
|
32
32
|
o[k2] = m[k];
|
|
33
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
34
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
40
35
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
41
36
|
};
|
|
42
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
43
|
-
if (mod && mod.__esModule) return mod;
|
|
44
|
-
var result = {};
|
|
45
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
46
|
-
__setModuleDefault(result, mod);
|
|
47
|
-
return result;
|
|
48
|
-
};
|
|
49
37
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
-
exports
|
|
51
|
-
__exportStar(require("./
|
|
52
|
-
|
|
53
|
-
exports.Converters = Converters;
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaWFuYS9qYXIvbGFuZ3VhZ2Utc3VidGFncy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILDBDQUF3QjtBQUN4Qix5REFBMkM7QUFFbEMsZ0NBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbCc7XG5pbXBvcnQgKiBhcyBDb252ZXJ0ZXJzIGZyb20gJy4vY29udmVydGVycyc7XG5cbmV4cG9ydCB7IENvbnZlcnRlcnMgfTtcbiJdfQ==
|
|
38
|
+
__exportStar(require("./jsonHelpers"), exports);
|
|
39
|
+
__exportStar(require("./validationHelpers"), exports);
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7Ozs7Ozs7Ozs7Ozs7OztBQUVILGdEQUE4QjtBQUM5QixzREFBb0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIxIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9qc29uSGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL3ZhbGlkYXRpb25IZWxwZXJzJztcbiJdfQ==
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonHelpers.d.ts","sourceRoot":"","sources":["../../../src/utils/jsonHelpers.ts"],"names":[],"mappings":"AAsBA,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAE1C"}
|
|
@@ -20,21 +20,10 @@
|
|
|
20
20
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
21
|
* SOFTWARE.
|
|
22
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
35
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
36
|
-
};
|
|
37
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
24
|
+
exports.sanitizeJson = void 0;
|
|
25
|
+
function sanitizeJson(from) {
|
|
26
|
+
return JSON.parse(JSON.stringify(from));
|
|
27
|
+
}
|
|
28
|
+
exports.sanitizeJson = sanitizeJson;
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbkhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvanNvbkhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7O0FBRUgsU0FBZ0IsWUFBWSxDQUFJLElBQU87SUFDbkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQU0sQ0FBQztBQUNqRCxDQUFDO0FBRkQsb0NBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIxIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplSnNvbjxUPihmcm9tOiBUKTogVCB7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZnJvbSkpIGFzIFQ7XG59XG4iXX0=
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validationHelpers.d.ts","sourceRoot":"","sources":["../../../src/utils/validationHelpers.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,SAAS,EAAc,MAAM,EAAE,UAAU,EAAiB,MAAM,eAAe,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;AAE7F;;GAEG;AACH,MAAM,WAAW,kCAAkC,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,GAAG,OAAO;IAC9E,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,WAAW,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,GAAG,OAAO;IACzD,SAAgB,WAAW,EAAE,MAAM,CAAC;IACpC,SAAgB,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5C,SAAgB,YAAY,EAAE,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1D,SAAgB,WAAW,EAAE,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzD,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAEjC,IAAI,EAAE,kCAAkC,CAAC,CAAC,EAAE,EAAE,CAAC;IAQ3D,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;IAcnD,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;IAO1D,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;CAUnE;AAED;;GAEG;AACH,MAAM,WAAW,uCAAuC,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,GAAG,OAAO;IACnF,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,GAAG,OAAO,CAAE,SAAQ,iBAAiB,CAAC,CAAC,EAAE,EAAE,CAAC;IACjG,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,SAAS,EAAE,MAAM,CAAC;gBAEf,MAAM,EAAE,uCAAuC,CAAC,CAAC,EAAE,EAAE,CAAC;CAc5E"}
|
|
@@ -0,0 +1,88 @@
|
|
|
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.RegExpValidationHelpers = exports.ValidationHelpers = void 0;
|
|
25
|
+
const ts_utils_1 = require("@fgv/ts-utils");
|
|
26
|
+
/**
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
class ValidationHelpers {
|
|
30
|
+
constructor(init) {
|
|
31
|
+
this.description = init.description;
|
|
32
|
+
this.isWellFormed = init.isWellFormed;
|
|
33
|
+
this.isCanonical = init.isCanonical;
|
|
34
|
+
this._toCanonical = init.toCanonical;
|
|
35
|
+
this.converter = ts_utils_1.Converters.isA(this.description, this.isWellFormed);
|
|
36
|
+
}
|
|
37
|
+
toCanonical(from, context) {
|
|
38
|
+
if (this.isWellFormed(from, context)) {
|
|
39
|
+
if (this._toCanonical) {
|
|
40
|
+
return this._toCanonical(from, context);
|
|
41
|
+
}
|
|
42
|
+
if (this.isCanonical(from, context)) {
|
|
43
|
+
return (0, ts_utils_1.succeed)(from);
|
|
44
|
+
}
|
|
45
|
+
// istanbul ignore next
|
|
46
|
+
return (0, ts_utils_1.fail)(`cannot convert "${from}" to canonical ${this.description}`);
|
|
47
|
+
}
|
|
48
|
+
return (0, ts_utils_1.fail)(`invalid ${this.description} ("${JSON.stringify(from)}")`);
|
|
49
|
+
}
|
|
50
|
+
verifyIsWellFormed(from, context) {
|
|
51
|
+
if (this.isWellFormed(from, context)) {
|
|
52
|
+
return (0, ts_utils_1.succeed)(from);
|
|
53
|
+
}
|
|
54
|
+
return (0, ts_utils_1.fail)(`malformed ${this.description}`);
|
|
55
|
+
}
|
|
56
|
+
verifyIsCanonical(from, context) {
|
|
57
|
+
if (this.isCanonical(from, context)) {
|
|
58
|
+
return (0, ts_utils_1.succeed)(from);
|
|
59
|
+
}
|
|
60
|
+
// istanbul ignore next - should never occur and very hard to test
|
|
61
|
+
if (!this.isWellFormed(from, context)) {
|
|
62
|
+
return (0, ts_utils_1.fail)(`malformed ${this.description}`);
|
|
63
|
+
}
|
|
64
|
+
return (0, ts_utils_1.fail)(`non-canonical ${this.description}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.ValidationHelpers = ValidationHelpers;
|
|
68
|
+
/**
|
|
69
|
+
* @internal
|
|
70
|
+
*/
|
|
71
|
+
class RegExpValidationHelpers extends ValidationHelpers {
|
|
72
|
+
constructor(params) {
|
|
73
|
+
super({
|
|
74
|
+
description: params.description,
|
|
75
|
+
toCanonical: params.toCanonical,
|
|
76
|
+
isWellFormed: (from) => {
|
|
77
|
+
return typeof from === 'string' && this.wellFormed.test(from);
|
|
78
|
+
},
|
|
79
|
+
isCanonical: (from) => {
|
|
80
|
+
return typeof from === 'string' && this.canonical.test(from);
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
this.wellFormed = params.wellFormed;
|
|
84
|
+
this.canonical = params.canonical;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.RegExpValidationHelpers = RegExpValidationHelpers;
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbkhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvdmFsaWRhdGlvbkhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRzs7O0FBRUgsNENBQXlGO0FBa0J6Rjs7R0FFRztBQUNILE1BQWEsaUJBQWlCO0lBUTFCLFlBQW1CLElBQStDO1FBQzlELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNyQyxJQUFJLENBQUMsU0FBUyxHQUFHLHFCQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTSxXQUFXLENBQUMsSUFBYSxFQUFFLE9BQVk7UUFDMUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBRTtZQUNsQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ25CLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7YUFDM0M7WUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFO2dCQUNqQyxPQUFPLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsQ0FBQzthQUN4QjtZQUNELHVCQUF1QjtZQUN2QixPQUFPLElBQUEsZUFBSSxFQUFDLG1CQUFtQixJQUFJLGtCQUFrQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUM1RTtRQUNELE9BQU8sSUFBQSxlQUFJLEVBQUMsV0FBVyxJQUFJLENBQUMsV0FBVyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxJQUFhLEVBQUUsT0FBWTtRQUNqRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2xDLE9BQU8sSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hCO1FBQ0QsT0FBTyxJQUFBLGVBQUksRUFBQyxhQUFhLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxJQUFhLEVBQUUsT0FBWTtRQUNoRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2pDLE9BQU8sSUFBQSxrQkFBTyxFQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hCO1FBQ0Qsa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBRTtZQUNuQyxPQUFPLElBQUEsZUFBSSxFQUFDLGFBQWEsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDaEQ7UUFDRCxPQUFPLElBQUEsZUFBSSxFQUFDLGlCQUFpQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0NBQ0o7QUEvQ0QsOENBK0NDO0FBWUQ7O0dBRUc7QUFDSCxNQUFhLHVCQUF3RCxTQUFRLGlCQUF3QjtJQUlqRyxZQUFtQixNQUFzRDtRQUNyRSxLQUFLLENBQUM7WUFDRixXQUFXLEVBQUUsTUFBTSxDQUFDLFdBQVc7WUFDL0IsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLFlBQVksRUFBRSxDQUFDLElBQWEsRUFBYSxFQUFFO2dCQUN2QyxPQUFPLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRSxDQUFDO1lBQ0QsV0FBVyxFQUFFLENBQUMsSUFBYSxFQUFhLEVBQUU7Z0JBQ3RDLE9BQU8sT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pFLENBQUM7U0FDSixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDcEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQ3RDLENBQUM7Q0FDSjtBQWxCRCwwREFrQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIxIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0IHsgQ29udmVydGVyLCBDb252ZXJ0ZXJzLCBSZXN1bHQsIFZhbGlkYXRpb24sIGZhaWwsIHN1Y2NlZWQgfSBmcm9tICdAZmd2L3RzLXV0aWxzJztcbmltcG9ydCB7IFR5cGVHdWFyZFdpdGhDb250ZXh0IH0gZnJvbSAnQGZndi90cy11dGlscy92YWxpZGF0aW9uJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IHR5cGUgTm9ybWFsaXplcjxUIGV4dGVuZHMgc3RyaW5nLCBUQyA9IHVua25vd24+ID0gKHZhbDogVCwgY29udGV4dD86IFRDKSA9PiBSZXN1bHQ8VD47XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGlvbkhlbHBlcnNDb25zdHJ1Y3RvclBhcmFtczxUIGV4dGVuZHMgc3RyaW5nLCBUQyA9IHVua25vd24+IHtcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIGlzV2VsbEZvcm1lZDogVmFsaWRhdGlvbi5UeXBlR3VhcmRXaXRoQ29udGV4dDxULCBUQz47XG4gICAgaXNDYW5vbmljYWw6IFZhbGlkYXRpb24uVHlwZUd1YXJkV2l0aENvbnRleHQ8VCwgVEM+O1xuICAgIHRvQ2Fub25pY2FsPzogTm9ybWFsaXplcjxULCBUQz47XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBWYWxpZGF0aW9uSGVscGVyczxUIGV4dGVuZHMgc3RyaW5nLCBUQyA9IHVua25vd24+IHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29udmVydGVyOiBDb252ZXJ0ZXI8VCwgVEM+O1xuICAgIHB1YmxpYyByZWFkb25seSBpc1dlbGxGb3JtZWQ6IFR5cGVHdWFyZFdpdGhDb250ZXh0PFQsIFRDPjtcbiAgICBwdWJsaWMgcmVhZG9ubHkgaXNDYW5vbmljYWw6IFR5cGVHdWFyZFdpdGhDb250ZXh0PFQsIFRDPjtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBfdG9DYW5vbmljYWw/OiBOb3JtYWxpemVyPFQsIFRDPjtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihpbml0OiBWYWxpZGF0aW9uSGVscGVyc0NvbnN0cnVjdG9yUGFyYW1zPFQsIFRDPikge1xuICAgICAgICB0aGlzLmRlc2NyaXB0aW9uID0gaW5pdC5kZXNjcmlwdGlvbjtcbiAgICAgICAgdGhpcy5pc1dlbGxGb3JtZWQgPSBpbml0LmlzV2VsbEZvcm1lZDtcbiAgICAgICAgdGhpcy5pc0Nhbm9uaWNhbCA9IGluaXQuaXNDYW5vbmljYWw7XG4gICAgICAgIHRoaXMuX3RvQ2Fub25pY2FsID0gaW5pdC50b0Nhbm9uaWNhbDtcbiAgICAgICAgdGhpcy5jb252ZXJ0ZXIgPSBDb252ZXJ0ZXJzLmlzQSh0aGlzLmRlc2NyaXB0aW9uLCB0aGlzLmlzV2VsbEZvcm1lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIHRvQ2Fub25pY2FsKGZyb206IHVua25vd24sIGNvbnRleHQ/OiBUQyk6IFJlc3VsdDxUPiB7XG4gICAgICAgIGlmICh0aGlzLmlzV2VsbEZvcm1lZChmcm9tLCBjb250ZXh0KSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3RvQ2Fub25pY2FsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3RvQ2Fub25pY2FsKGZyb20sIGNvbnRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuaXNDYW5vbmljYWwoZnJvbSwgY29udGV4dCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3VjY2VlZChmcm9tKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gICAgICAgICAgICByZXR1cm4gZmFpbChgY2Fubm90IGNvbnZlcnQgXCIke2Zyb219XCIgdG8gY2Fub25pY2FsICR7dGhpcy5kZXNjcmlwdGlvbn1gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFpbChgaW52YWxpZCAke3RoaXMuZGVzY3JpcHRpb259IChcIiR7SlNPTi5zdHJpbmdpZnkoZnJvbSl9XCIpYCk7XG4gICAgfVxuXG4gICAgcHVibGljIHZlcmlmeUlzV2VsbEZvcm1lZChmcm9tOiB1bmtub3duLCBjb250ZXh0PzogVEMpOiBSZXN1bHQ8VD4ge1xuICAgICAgICBpZiAodGhpcy5pc1dlbGxGb3JtZWQoZnJvbSwgY29udGV4dCkpIHtcbiAgICAgICAgICAgIHJldHVybiBzdWNjZWVkKGZyb20pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWlsKGBtYWxmb3JtZWQgJHt0aGlzLmRlc2NyaXB0aW9ufWApO1xuICAgIH1cblxuICAgIHB1YmxpYyB2ZXJpZnlJc0Nhbm9uaWNhbChmcm9tOiB1bmtub3duLCBjb250ZXh0PzogVEMpOiBSZXN1bHQ8VD4ge1xuICAgICAgICBpZiAodGhpcy5pc0Nhbm9uaWNhbChmcm9tLCBjb250ZXh0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHN1Y2NlZWQoZnJvbSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gaXN0YW5idWwgaWdub3JlIG5leHQgLSBzaG91bGQgbmV2ZXIgb2NjdXIgYW5kIHZlcnkgaGFyZCB0byB0ZXN0XG4gICAgICAgIGlmICghdGhpcy5pc1dlbGxGb3JtZWQoZnJvbSwgY29udGV4dCkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWlsKGBtYWxmb3JtZWQgJHt0aGlzLmRlc2NyaXB0aW9ufWApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWlsKGBub24tY2Fub25pY2FsICR7dGhpcy5kZXNjcmlwdGlvbn1gKTtcbiAgICB9XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVnRXhwVmFsaWRhdGlvbkhlbHBlckNvbnN0cnVjdG9yUGFyYW1zPFQgZXh0ZW5kcyBzdHJpbmcsIFRDID0gdW5rbm93bj4ge1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgd2VsbEZvcm1lZDogUmVnRXhwO1xuICAgIGNhbm9uaWNhbDogUmVnRXhwO1xuICAgIHRvQ2Fub25pY2FsPzogTm9ybWFsaXplcjxULCBUQz47XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWdFeHBWYWxpZGF0aW9uSGVscGVyczxUIGV4dGVuZHMgc3RyaW5nLCBUQyA9IHVua25vd24+IGV4dGVuZHMgVmFsaWRhdGlvbkhlbHBlcnM8VCwgVEM+IHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgd2VsbEZvcm1lZDogUmVnRXhwO1xuICAgIHB1YmxpYyByZWFkb25seSBjYW5vbmljYWw6IFJlZ0V4cDtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IFJlZ0V4cFZhbGlkYXRpb25IZWxwZXJDb25zdHJ1Y3RvclBhcmFtczxULCBUQz4pIHtcbiAgICAgICAgc3VwZXIoe1xuICAgICAgICAgICAgZGVzY3JpcHRpb246IHBhcmFtcy5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIHRvQ2Fub25pY2FsOiBwYXJhbXMudG9DYW5vbmljYWwsXG4gICAgICAgICAgICBpc1dlbGxGb3JtZWQ6IChmcm9tOiB1bmtub3duKTogZnJvbSBpcyBUID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHlwZW9mIGZyb20gPT09ICdzdHJpbmcnICYmIHRoaXMud2VsbEZvcm1lZC50ZXN0KGZyb20pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGlzQ2Fub25pY2FsOiAoZnJvbTogdW5rbm93bik6IGZyb20gaXMgVCA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBmcm9tID09PSAnc3RyaW5nJyAmJiB0aGlzLmNhbm9uaWNhbC50ZXN0KGZyb20pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMud2VsbEZvcm1lZCA9IHBhcmFtcy53ZWxsRm9ybWVkO1xuICAgICAgICB0aGlzLmNhbm9uaWNhbCA9IHBhcmFtcy5jYW5vbmljYWw7XG4gICAgfVxufVxuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"converters.d.ts","sourceRoot":"","sources":["../../../src/bcp47/bcp47Subtags/converters.ts"],"names":[],"mappings":"AAwBA;;GAEG;AACH,eAAO,MAAM,eAAe,+EAAqC,CAAC;AAClE;;GAEG;AACH,eAAO,MAAM,gBAAgB,gFAAsC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bcp47/bcp47Subtags/index.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/bcp47/bcp47Subtags/model.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;AAEjE;;GAEG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/bcp47/bcp47Subtags/validate.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,iBAAiB,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAKtD;;GAEG;AACH,eAAO,MAAM,kBAAkB,8EAAgD,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,eAAe,2DAK1B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,gBAAgB,4DAK3B,CAAC"}
|
|
@@ -1,74 +0,0 @@
|
|
|
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
|
-
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.privateUsePrefix = exports.extensionSubtag = exports.extensionSingleton = void 0;
|
|
48
|
-
const ExtensionRegistry = __importStar(require("../../iana/language-tag-extensions"));
|
|
49
|
-
const utils_1 = require("../../utils");
|
|
50
|
-
const tagValidation_1 = require("../../iana/jar/language-subtags/tags/tagValidation");
|
|
51
|
-
const ts_utils_1 = require("@fgv/ts-utils");
|
|
52
|
-
/**
|
|
53
|
-
* @public
|
|
54
|
-
*/
|
|
55
|
-
exports.extensionSingleton = ExtensionRegistry.Validate.extensionSingleton;
|
|
56
|
-
/**
|
|
57
|
-
* @public
|
|
58
|
-
*/
|
|
59
|
-
exports.extensionSubtag = new utils_1.RegExpValidationHelpers({
|
|
60
|
-
description: 'language tag extension subtag',
|
|
61
|
-
wellFormed: /^([a-zA-Z0-9]{2,8})(-[a-zA-Z0-9]{2,8})*$/,
|
|
62
|
-
canonical: /^([a-z0-9]{2,8})(-[a-z0-9]{2,8})*$/,
|
|
63
|
-
toCanonical: (from) => tagValidation_1.TagValidationHelpers.toCanonicalTag(from),
|
|
64
|
-
});
|
|
65
|
-
/**
|
|
66
|
-
* @public
|
|
67
|
-
*/
|
|
68
|
-
exports.privateUsePrefix = new utils_1.RegExpValidationHelpers({
|
|
69
|
-
description: 'language tag private-use prefix',
|
|
70
|
-
wellFormed: /^[xX]$/,
|
|
71
|
-
canonical: /^x$/,
|
|
72
|
-
toCanonical: (from) => (0, ts_utils_1.succeed)(from.toLowerCase()),
|
|
73
|
-
});
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmNwNDcvYmNwNDdTdWJ0YWdzL3ZhbGlkYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsc0ZBQXdFO0FBR3hFLHVDQUFzRDtBQUN0RCxzRkFBMEY7QUFFMUYsNENBQXdDO0FBRXhDOztHQUVHO0FBQ1UsUUFBQSxrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUM7QUFFaEY7O0dBRUc7QUFDVSxRQUFBLGVBQWUsR0FBRyxJQUFJLCtCQUF1QixDQUEwQjtJQUNoRixXQUFXLEVBQUUsK0JBQStCO0lBQzVDLFVBQVUsRUFBRSwwQ0FBMEM7SUFDdEQsU0FBUyxFQUFFLG9DQUFvQztJQUMvQyxXQUFXLEVBQUUsQ0FBQyxJQUE2QixFQUFFLEVBQUUsQ0FBQyxvQ0FBb0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO0NBQzVGLENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ1UsUUFBQSxnQkFBZ0IsR0FBRyxJQUFJLCtCQUF1QixDQUEyQjtJQUNsRixXQUFXLEVBQUUsaUNBQWlDO0lBQzlDLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLFNBQVMsRUFBRSxLQUFLO0lBQ2hCLFdBQVcsRUFBRSxDQUFDLElBQThCLEVBQUUsRUFBRSxDQUFDLElBQUEsa0JBQU8sRUFBQyxJQUFJLENBQUMsV0FBVyxFQUE4QixDQUFDO0NBQzNHLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEgRXJpayBGb3J0dW5lXG4gKlxuICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuICogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuICogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuICogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuICogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4gKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuICpcbiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxuICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiAqXG4gKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4gKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbiAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuICogTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbiAqIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4gKiBTT0ZUV0FSRS5cbiAqL1xuXG5pbXBvcnQgKiBhcyBFeHRlbnNpb25SZWdpc3RyeSBmcm9tICcuLi8uLi9pYW5hL2xhbmd1YWdlLXRhZy1leHRlbnNpb25zJztcbmltcG9ydCAqIGFzIFN1YnRhZ3MgZnJvbSAnLi9tb2RlbCc7XG5cbmltcG9ydCB7IFJlZ0V4cFZhbGlkYXRpb25IZWxwZXJzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgVGFnVmFsaWRhdGlvbkhlbHBlcnMgfSBmcm9tICcuLi8uLi9pYW5hL2phci9sYW5ndWFnZS1zdWJ0YWdzL3RhZ3MvdGFnVmFsaWRhdGlvbic7XG5cbmltcG9ydCB7IHN1Y2NlZWQgfSBmcm9tICdAZmd2L3RzLXV0aWxzJztcblxuLyoqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBjb25zdCBleHRlbnNpb25TaW5nbGV0b24gPSBFeHRlbnNpb25SZWdpc3RyeS5WYWxpZGF0ZS5leHRlbnNpb25TaW5nbGV0b247XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZXh0ZW5zaW9uU3VidGFnID0gbmV3IFJlZ0V4cFZhbGlkYXRpb25IZWxwZXJzPFN1YnRhZ3MuRXh0ZW5zaW9uU3VidGFnPih7XG4gICAgZGVzY3JpcHRpb246ICdsYW5ndWFnZSB0YWcgZXh0ZW5zaW9uIHN1YnRhZycsXG4gICAgd2VsbEZvcm1lZDogL14oW2EtekEtWjAtOV17Miw4fSkoLVthLXpBLVowLTldezIsOH0pKiQvLFxuICAgIGNhbm9uaWNhbDogL14oW2EtejAtOV17Miw4fSkoLVthLXowLTldezIsOH0pKiQvLFxuICAgIHRvQ2Fub25pY2FsOiAoZnJvbTogU3VidGFncy5FeHRlbnNpb25TdWJ0YWcpID0+IFRhZ1ZhbGlkYXRpb25IZWxwZXJzLnRvQ2Fub25pY2FsVGFnKGZyb20pLFxufSk7XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgcHJpdmF0ZVVzZVByZWZpeCA9IG5ldyBSZWdFeHBWYWxpZGF0aW9uSGVscGVyczxTdWJ0YWdzLlByaXZhdGVVc2VQcmVmaXg+KHtcbiAgICBkZXNjcmlwdGlvbjogJ2xhbmd1YWdlIHRhZyBwcml2YXRlLXVzZSBwcmVmaXgnLFxuICAgIHdlbGxGb3JtZWQ6IC9eW3hYXSQvLFxuICAgIGNhbm9uaWNhbDogL154JC8sXG4gICAgdG9DYW5vbmljYWw6IChmcm9tOiBTdWJ0YWdzLlByaXZhdGVVc2VQcmVmaXgpID0+IHN1Y2NlZWQoZnJvbS50b0xvd2VyQ2FzZSgpIGFzIFN1YnRhZ3MuUHJpdmF0ZVVzZVByZWZpeCksXG59KTtcbiJdfQ==
|
package/bcp47/common.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/bcp47/common.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,kBAAkB,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC;IACtD,QAAQ,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;IAChD,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;IAC3C,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;IAC3C,QAAQ,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;IAChD,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACpC,UAAU,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC;IAE1D,aAAa,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;CACzD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAexD;AAED;;GAEG;AAEH,eAAO,MAAM,oBAAoB,qCAA+C,CAAC;AAEjF;;GAEG;AAEH,eAAO,MAAM,YAAY,mCAA6C,CAAC"}
|
package/bcp47/common.js
DELETED
|
@@ -1,59 +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.GlobalRegion = exports.UndeterminedLanguage = exports.subtagsToString = void 0;
|
|
25
|
-
/**
|
|
26
|
-
* Converts {@link Bcp47.Subtags | subtags} to a string.
|
|
27
|
-
* @param subtags - The {@link Bcp47.Subtags | subtags} to be converted.
|
|
28
|
-
* @returns A string representing the supplied {@link Bcp47.Subtags | subtags}.
|
|
29
|
-
* @public
|
|
30
|
-
*/
|
|
31
|
-
function subtagsToString(subtags) {
|
|
32
|
-
var _a, _b, _c, _d;
|
|
33
|
-
if (subtags.grandfathered) {
|
|
34
|
-
return subtags.grandfathered;
|
|
35
|
-
}
|
|
36
|
-
return [
|
|
37
|
-
subtags.primaryLanguage,
|
|
38
|
-
...((_a = subtags.extlangs) !== null && _a !== void 0 ? _a : []),
|
|
39
|
-
subtags.script,
|
|
40
|
-
subtags.region,
|
|
41
|
-
...((_b = subtags.variants) !== null && _b !== void 0 ? _b : []),
|
|
42
|
-
...((_c = subtags.extensions) !== null && _c !== void 0 ? _c : []).map((e) => `${e.singleton}-${e.value}`),
|
|
43
|
-
...((_d = subtags.privateUse) !== null && _d !== void 0 ? _d : []).map((p) => `x-${p}`),
|
|
44
|
-
]
|
|
45
|
-
.filter((s) => s !== undefined)
|
|
46
|
-
.join('-');
|
|
47
|
-
}
|
|
48
|
-
exports.subtagsToString = subtagsToString;
|
|
49
|
-
/**
|
|
50
|
-
* @public
|
|
51
|
-
*/
|
|
52
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
53
|
-
exports.UndeterminedLanguage = 'und';
|
|
54
|
-
/**
|
|
55
|
-
* @public
|
|
56
|
-
*/
|
|
57
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
58
|
-
exports.GlobalRegion = '001';
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2JjcDQ3L2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHOzs7QUE2Qkg7Ozs7O0dBS0c7QUFDSCxTQUFnQixlQUFlLENBQUMsT0FBZ0I7O0lBQzVDLElBQUksT0FBTyxDQUFDLGFBQWEsRUFBRTtRQUN2QixPQUFPLE9BQU8sQ0FBQyxhQUFhLENBQUM7S0FDaEM7SUFDRCxPQUFPO1FBQ0gsT0FBTyxDQUFDLGVBQWU7UUFDdkIsR0FBRyxDQUFDLE1BQUEsT0FBTyxDQUFDLFFBQVEsbUNBQUksRUFBRSxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxNQUFNO1FBQ2QsT0FBTyxDQUFDLE1BQU07UUFDZCxHQUFHLENBQUMsTUFBQSxPQUFPLENBQUMsUUFBUSxtQ0FBSSxFQUFFLENBQUM7UUFDM0IsR0FBRyxDQUFDLE1BQUEsT0FBTyxDQUFDLFVBQVUsbUNBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JFLEdBQUcsQ0FBQyxNQUFBLE9BQU8sQ0FBQyxVQUFVLG1DQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztLQUNyRDtTQUNJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBZSxFQUFFLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQztTQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDbkIsQ0FBQztBQWZELDBDQWVDO0FBRUQ7O0dBRUc7QUFDSCxnRUFBZ0U7QUFDbkQsUUFBQSxvQkFBb0IsR0FBRyxLQUE0QyxDQUFDO0FBRWpGOztHQUVHO0FBQ0gsZ0VBQWdFO0FBQ25ELFFBQUEsWUFBWSxHQUFHLEtBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIEVyaWsgRm9ydHVuZVxuICpcbiAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbiAqIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbiAqIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiAqIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbiAqXG4gKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiAqIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4gKlxuICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4gKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbiAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbiAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4gKiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxuICogU09GVFdBUkUuXG4gKi9cblxuaW1wb3J0ICogYXMgSWFuYSBmcm9tICcuLi9pYW5hJztcblxuaW1wb3J0IHsgTW9kZWwgfSBmcm9tICcuL2JjcDQ3U3VidGFncyc7XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4dGVuc2lvblN1YnRhZ1ZhbHVlIHtcbiAgICByZWFkb25seSBzaW5nbGV0b246IE1vZGVsLkV4dGVuc2lvblNpbmdsZXRvbjtcbiAgICByZWFkb25seSB2YWx1ZTogTW9kZWwuRXh0ZW5zaW9uU3VidGFnO1xufVxuXG4vKipcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdWJ0YWdzIHtcbiAgICBwcmltYXJ5TGFuZ3VhZ2U/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5MYW5ndWFnZVN1YnRhZztcbiAgICBleHRsYW5ncz86IElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLkV4dExhbmdTdWJ0YWdbXTtcbiAgICBzY3JpcHQ/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5TY3JpcHRTdWJ0YWc7XG4gICAgcmVnaW9uPzogSWFuYS5MYW5ndWFnZVN1YnRhZ3MuUmVnaW9uU3VidGFnO1xuICAgIHZhcmlhbnRzPzogSWFuYS5MYW5ndWFnZVN1YnRhZ3MuVmFyaWFudFN1YnRhZ1tdO1xuICAgIGV4dGVuc2lvbnM/OiBFeHRlbnNpb25TdWJ0YWdWYWx1ZVtdO1xuICAgIHByaXZhdGVVc2U/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5FeHRlbmRlZExhbmd1YWdlUmFuZ2VbXTtcblxuICAgIGdyYW5kZmF0aGVyZWQ/OiBJYW5hLkxhbmd1YWdlU3VidGFncy5HcmFuZGZhdGhlcmVkVGFnO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIHtAbGluayBCY3A0Ny5TdWJ0YWdzIHwgc3VidGFnc30gdG8gYSBzdHJpbmcuXG4gKiBAcGFyYW0gc3VidGFncyAtIFRoZSB7QGxpbmsgQmNwNDcuU3VidGFncyB8IHN1YnRhZ3N9IHRvIGJlIGNvbnZlcnRlZC5cbiAqIEByZXR1cm5zIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgc3VwcGxpZWQge0BsaW5rIEJjcDQ3LlN1YnRhZ3MgfCBzdWJ0YWdzfS5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN1YnRhZ3NUb1N0cmluZyhzdWJ0YWdzOiBTdWJ0YWdzKTogc3RyaW5nIHtcbiAgICBpZiAoc3VidGFncy5ncmFuZGZhdGhlcmVkKSB7XG4gICAgICAgIHJldHVybiBzdWJ0YWdzLmdyYW5kZmF0aGVyZWQ7XG4gICAgfVxuICAgIHJldHVybiBbXG4gICAgICAgIHN1YnRhZ3MucHJpbWFyeUxhbmd1YWdlLFxuICAgICAgICAuLi4oc3VidGFncy5leHRsYW5ncyA/PyBbXSksXG4gICAgICAgIHN1YnRhZ3Muc2NyaXB0LFxuICAgICAgICBzdWJ0YWdzLnJlZ2lvbixcbiAgICAgICAgLi4uKHN1YnRhZ3MudmFyaWFudHMgPz8gW10pLFxuICAgICAgICAuLi4oc3VidGFncy5leHRlbnNpb25zID8/IFtdKS5tYXAoKGUpID0+IGAke2Uuc2luZ2xldG9ufS0ke2UudmFsdWV9YCksXG4gICAgICAgIC4uLihzdWJ0YWdzLnByaXZhdGVVc2UgPz8gW10pLm1hcCgocCkgPT4gYHgtJHtwfWApLFxuICAgIF1cbiAgICAgICAgLmZpbHRlcigocyk6IHMgaXMgc3RyaW5nID0+IHMgIT09IHVuZGVmaW5lZClcbiAgICAgICAgLmpvaW4oJy0nKTtcbn1cblxuLyoqXG4gKiBAcHVibGljXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBVbmRldGVybWluZWRMYW5ndWFnZSA9ICd1bmQnIGFzIElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLkxhbmd1YWdlU3VidGFnO1xuXG4vKipcbiAqIEBwdWJsaWNcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IEdsb2JhbFJlZ2lvbiA9ICcwMDEnIGFzIElhbmEuTGFuZ3VhZ2VTdWJ0YWdzLlJlZ2lvblN1YnRhZztcbiJdfQ==
|
package/bcp47/helpers.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/bcp47/helpers.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAmB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,MAAM,EAAuB,MAAM,eAAe,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1D;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,CAE7F;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,CAElG;AAED;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,CAI/G;AAED;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAClB,OAAO,EAAE,YAAY,EAAE,EACvB,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,GAC1D,MAAM,CAAC,WAAW,EAAE,CAAC,CAMvB"}
|
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.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bcp47/index.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEzD,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"}
|