.
This commit is contained in:
		
							
								
								
									
										106
									
								
								qwen/nodejs/node_modules/validator/lib/isPostalCode.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								qwen/nodejs/node_modules/validator/lib/isPostalCode.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,106 @@
 | 
			
		||||
"use strict";
 | 
			
		||||
 | 
			
		||||
Object.defineProperty(exports, "__esModule", {
 | 
			
		||||
  value: true
 | 
			
		||||
});
 | 
			
		||||
exports.default = isPostalCode;
 | 
			
		||||
exports.locales = void 0;
 | 
			
		||||
var _assertString = _interopRequireDefault(require("./util/assertString"));
 | 
			
		||||
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
 | 
			
		||||
// common patterns
 | 
			
		||||
var threeDigit = /^\d{3}$/;
 | 
			
		||||
var fourDigit = /^\d{4}$/;
 | 
			
		||||
var fiveDigit = /^\d{5}$/;
 | 
			
		||||
var sixDigit = /^\d{6}$/;
 | 
			
		||||
var patterns = {
 | 
			
		||||
  AD: /^AD\d{3}$/,
 | 
			
		||||
  AT: fourDigit,
 | 
			
		||||
  AU: fourDigit,
 | 
			
		||||
  AZ: /^AZ\d{4}$/,
 | 
			
		||||
  BA: /^([7-8]\d{4}$)/,
 | 
			
		||||
  BD: /^([1-8][0-9]{3}|9[0-4][0-9]{2})$/,
 | 
			
		||||
  BE: fourDigit,
 | 
			
		||||
  BG: fourDigit,
 | 
			
		||||
  BR: /^\d{5}-?\d{3}$/,
 | 
			
		||||
  BY: /^2[1-4]\d{4}$/,
 | 
			
		||||
  CA: /^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][\s\-]?\d[ABCEGHJ-NPRSTV-Z]\d$/i,
 | 
			
		||||
  CH: fourDigit,
 | 
			
		||||
  CN: /^(0[1-7]|1[012356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[1-5]|8[1345]|9[09])\d{4}$/,
 | 
			
		||||
  CO: /^(05|08|11|13|15|17|18|19|20|23|25|27|41|44|47|50|52|54|63|66|68|70|73|76|81|85|86|88|91|94|95|97|99)(\d{4})$/,
 | 
			
		||||
  CZ: /^\d{3}\s?\d{2}$/,
 | 
			
		||||
  DE: fiveDigit,
 | 
			
		||||
  DK: fourDigit,
 | 
			
		||||
  DO: fiveDigit,
 | 
			
		||||
  DZ: fiveDigit,
 | 
			
		||||
  EE: fiveDigit,
 | 
			
		||||
  ES: /^(5[0-2]{1}|[0-4]{1}\d{1})\d{3}$/,
 | 
			
		||||
  FI: fiveDigit,
 | 
			
		||||
  FR: /^(?:(?:0[1-9]|[1-8]\d|9[0-5])\d{3}|97[1-46]\d{2})$/,
 | 
			
		||||
  GB: /^(gir\s?0aa|[a-z]{1,2}\d[\da-z]?\s?(\d[a-z]{2})?)$/i,
 | 
			
		||||
  GR: /^\d{3}\s?\d{2}$/,
 | 
			
		||||
  HR: /^([1-5]\d{4}$)/,
 | 
			
		||||
  HT: /^HT\d{4}$/,
 | 
			
		||||
  HU: fourDigit,
 | 
			
		||||
  ID: fiveDigit,
 | 
			
		||||
  IE: /^(?!.*(?:o))[A-Za-z]\d[\dw]\s\w{4}$/i,
 | 
			
		||||
  IL: /^(\d{5}|\d{7})$/,
 | 
			
		||||
  IN: /^((?!10|29|35|54|55|65|66|86|87|88|89)[1-9][0-9]{5})$/,
 | 
			
		||||
  IR: /^(?!(\d)\1{3})[13-9]{4}[1346-9][013-9]{5}$/,
 | 
			
		||||
  IS: threeDigit,
 | 
			
		||||
  IT: fiveDigit,
 | 
			
		||||
  JP: /^\d{3}\-\d{4}$/,
 | 
			
		||||
  KE: fiveDigit,
 | 
			
		||||
  KR: /^(\d{5}|\d{6})$/,
 | 
			
		||||
  LI: /^(948[5-9]|949[0-7])$/,
 | 
			
		||||
  LT: /^LT\-\d{5}$/,
 | 
			
		||||
  LU: fourDigit,
 | 
			
		||||
  LV: /^LV\-\d{4}$/,
 | 
			
		||||
  LK: fiveDigit,
 | 
			
		||||
  MG: threeDigit,
 | 
			
		||||
  MX: fiveDigit,
 | 
			
		||||
  MT: /^[A-Za-z]{3}\s{0,1}\d{4}$/,
 | 
			
		||||
  MY: fiveDigit,
 | 
			
		||||
  NL: /^[1-9]\d{3}\s?(?!sa|sd|ss)[a-z]{2}$/i,
 | 
			
		||||
  NO: fourDigit,
 | 
			
		||||
  NP: /^(10|21|22|32|33|34|44|45|56|57)\d{3}$|^(977)$/i,
 | 
			
		||||
  NZ: fourDigit,
 | 
			
		||||
  // https://www.pakpost.gov.pk/postcodes.php
 | 
			
		||||
  PK: fiveDigit,
 | 
			
		||||
  PL: /^\d{2}\-\d{3}$/,
 | 
			
		||||
  PR: /^00[679]\d{2}([ -]\d{4})?$/,
 | 
			
		||||
  PT: /^\d{4}\-\d{3}?$/,
 | 
			
		||||
  RO: sixDigit,
 | 
			
		||||
  RU: sixDigit,
 | 
			
		||||
  SA: fiveDigit,
 | 
			
		||||
  SE: /^[1-9]\d{2}\s?\d{2}$/,
 | 
			
		||||
  SG: sixDigit,
 | 
			
		||||
  SI: fourDigit,
 | 
			
		||||
  SK: /^\d{3}\s?\d{2}$/,
 | 
			
		||||
  TH: fiveDigit,
 | 
			
		||||
  TN: fourDigit,
 | 
			
		||||
  TW: /^\d{3}(\d{2,3})?$/,
 | 
			
		||||
  UA: fiveDigit,
 | 
			
		||||
  US: /^\d{5}(-\d{4})?$/,
 | 
			
		||||
  ZA: fourDigit,
 | 
			
		||||
  ZM: fiveDigit
 | 
			
		||||
};
 | 
			
		||||
var locales = exports.locales = Object.keys(patterns);
 | 
			
		||||
function isPostalCode(str, locale) {
 | 
			
		||||
  (0, _assertString.default)(str);
 | 
			
		||||
  if (locale in patterns) {
 | 
			
		||||
    return patterns[locale].test(str);
 | 
			
		||||
  } else if (locale === 'any') {
 | 
			
		||||
    for (var key in patterns) {
 | 
			
		||||
      // https://github.com/gotwarlost/istanbul/blob/master/ignoring-code-for-coverage.md#ignoring-code-for-coverage-purposes
 | 
			
		||||
      // istanbul ignore else
 | 
			
		||||
      if (patterns.hasOwnProperty(key)) {
 | 
			
		||||
        var pattern = patterns[key];
 | 
			
		||||
        if (pattern.test(str)) {
 | 
			
		||||
          return true;
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    return false;
 | 
			
		||||
  }
 | 
			
		||||
  throw new Error("Invalid locale '".concat(locale, "'"));
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user