Back | Home
الـ Path الحالي: /home/picotech/domains/instantly.picotech.app/public_html/public/uploads/../uploads/../../../../instantly.picotech.app/homes/../../wa.picotech.app/public_html/node_modules/escape-html/../music-metadata/../express/.././on-finished/../content-disposition/../validator/es/lib
الملفات الموجودة في هذا الـ Path:
.
..
alpha.js
blacklist.js
contains.js
equals.js
escape.js
isAfter.js
isAlpha.js
isAlphanumeric.js
isAscii.js
isBIC.js
isBase32.js
isBase58.js
isBase64.js
isBefore.js
isBoolean.js
isBtcAddress.js
isByteLength.js
isCreditCard.js
isCurrency.js
isDataURI.js
isDate.js
isDecimal.js
isDivisibleBy.js
isEAN.js
isEmail.js
isEmpty.js
isEthereumAddress.js
isFQDN.js
isFloat.js
isFullWidth.js
isHSL.js
isHalfWidth.js
isHash.js
isHexColor.js
isHexadecimal.js
isIBAN.js
isIMEI.js
isIP.js
isIPRange.js
isISBN.js
isISIN.js
isISO31661Alpha2.js
isISO31661Alpha3.js
isISO4217.js
isISO6346.js
isISO6391.js
isISO8601.js
isISRC.js
isISSN.js
isIdentityCard.js
isIn.js
isInt.js
isJSON.js
isJWT.js
isLatLong.js
isLength.js
isLicensePlate.js
isLocale.js
isLowercase.js
isLuhnNumber.js
isLuhnValid.js
isMACAddress.js
isMD5.js
isMagnetURI.js
isMailtoURI.js
isMimeType.js
isMobilePhone.js
isMongoId.js
isMultibyte.js
isNumeric.js
isOctal.js
isPassportNumber.js
isPort.js
isPostalCode.js
isRFC3339.js
isRgbColor.js
isSemVer.js
isSlug.js
isStrongPassword.js
isSurrogatePair.js
isTaxID.js
isTime.js
isURL.js
isUUID.js
isUppercase.js
isVAT.js
isVariableWidth.js
isWhitelisted.js
ltrim.js
matches.js
normalizeEmail.js
rtrim.js
stripLow.js
toBoolean.js
toDate.js
toFloat.js
toInt.js
trim.js
unescape.js
util
whitelist.js

مشاهدة ملف: isISBN.js

import assertString from './util/assertString';
var possibleIsbn10 = /^(?:[0-9]{9}X|[0-9]{10})$/;
var possibleIsbn13 = /^(?:[0-9]{13})$/;
var factor = [1, 3];
export default function isISBN(isbn, options) {
  assertString(isbn); // For backwards compatibility:
  // isISBN(str [, version]), i.e. `options` could be used as argument for the legacy `version`

  var version = String((options === null || options === void 0 ? void 0 : options.version) || options);

  if (!(options !== null && options !== void 0 && options.version || options)) {
    return isISBN(isbn, {
      version: 10
    }) || isISBN(isbn, {
      version: 13
    });
  }

  var sanitizedIsbn = isbn.replace(/[\s-]+/g, '');
  var checksum = 0;

  if (version === '10') {
    if (!possibleIsbn10.test(sanitizedIsbn)) {
      return false;
    }

    for (var i = 0; i < version - 1; i++) {
      checksum += (i + 1) * sanitizedIsbn.charAt(i);
    }

    if (sanitizedIsbn.charAt(9) === 'X') {
      checksum += 10 * 10;
    } else {
      checksum += 10 * sanitizedIsbn.charAt(9);
    }

    if (checksum % 11 === 0) {
      return true;
    }
  } else if (version === '13') {
    if (!possibleIsbn13.test(sanitizedIsbn)) {
      return false;
    }

    for (var _i = 0; _i < 12; _i++) {
      checksum += factor[_i % 2] * sanitizedIsbn.charAt(_i);
    }

    if (sanitizedIsbn.charAt(12) - (10 - checksum % 10) % 10 === 0) {
      return true;
    }
  }

  return false;
}