node_modules/es-abstract/2015/GetSubstitution.js in immosquare-cleaner-0.1.32 vs node_modules/es-abstract/2015/GetSubstitution.js in immosquare-cleaner-0.1.38

- old
+ new

@@ -1,11 +1,11 @@ 'use strict'; var GetIntrinsic = require('get-intrinsic'); -var $TypeError = GetIntrinsic('%TypeError%'); +var $TypeError = require('es-errors/type'); var $parseInt = GetIntrinsic('%parseInt%'); var inspect = require('object-inspect'); var regexTester = require('safe-regex-test'); @@ -16,38 +16,37 @@ var $charAt = callBound('String.prototype.charAt'); var $strSlice = callBound('String.prototype.slice'); var IsArray = require('./IsArray'); -var Type = require('./Type'); var isInteger = require('../helpers/isInteger'); -var isStringOrHole = require('../helpers/isStringOrHole'); +var isStringOrUndefined = require('../helpers/isStringOrUndefined'); // https://262.ecma-international.org/6.0/#sec-getsubstitution // eslint-disable-next-line max-statements, max-lines-per-function module.exports = function GetSubstitution(matched, str, position, captures, replacement) { - if (Type(matched) !== 'String') { + if (typeof matched !== 'string') { throw new $TypeError('Assertion failed: `matched` must be a String'); } var matchLength = matched.length; - if (Type(str) !== 'String') { + if (typeof str !== 'string') { throw new $TypeError('Assertion failed: `str` must be a String'); } var stringLength = str.length; if (!isInteger(position) || position < 0 || position > stringLength) { throw new $TypeError('Assertion failed: `position` must be a nonnegative integer, and less than or equal to the length of `string`, got ' + inspect(position)); } - if (!IsArray(captures) || !every(captures, isStringOrHole)) { + if (!IsArray(captures) || !every(captures, isStringOrUndefined)) { throw new $TypeError('Assertion failed: `captures` must be a List of Strings, got ' + inspect(captures)); } - if (Type(replacement) !== 'String') { + if (typeof replacement !== 'string') { throw new $TypeError('Assertion failed: `replacement` must be a String'); } var tailPos = position + matchLength; var m = captures.length; @@ -76,17 +75,17 @@ var nextNext = nextIsLast ? null : $charAt(replacement, i + 2); if (isDigit(next) && next !== '0' && (nextIsLast || !isDigit(nextNext))) { // $1 through $9, and not followed by a digit var n = $parseInt(next, 10); // if (n > m, impl-defined) - result += n <= m && Type(captures[n - 1]) === 'Undefined' ? '' : captures[n - 1]; + result += n <= m && typeof captures[n - 1] === 'undefined' ? '' : captures[n - 1]; i += 1; } else if (isDigit(next) && (nextIsLast || isDigit(nextNext))) { // $00 through $99 var nn = next + nextNext; var nnI = $parseInt(nn, 10) - 1; // if nn === '00' or nn > m, impl-defined - result += nn <= m && Type(captures[nnI]) === 'Undefined' ? '' : captures[nnI]; + result += nn <= m && typeof captures[nnI] === 'undefined' ? '' : captures[nnI]; i += 2; } else { result += '$'; } }