From 990ae2feda576cf6bbea7d0440c68f562413485f Mon Sep 17 00:00:00 2001 From: Denis Pushkarev Date: Fri, 15 Feb 2019 16:57:23 +0700 Subject: [PATCH] fix buggy String#padStart and String#padEnd mobile Safari implementations, backport of https://github.com/zloirock/core-js/commit/16dbccf66f0400e16d6bcb3943dddfdedd98fe66 --- modules/es7.string.pad-end.js | 4 +++- modules/es7.string.pad-start.js | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/es7.string.pad-end.js b/modules/es7.string.pad-end.js index df55ce70bad4..5a531a1c8c71 100644 --- a/modules/es7.string.pad-end.js +++ b/modules/es7.string.pad-end.js @@ -5,7 +5,9 @@ var $pad = require('./_string-pad'); var userAgent = require('./_user-agent'); // https://github.com/zloirock/core-js/issues/280 -$export($export.P + $export.F * /Version\/10\.\d+(\.\d+)? Safari\//.test(userAgent), 'String', { +var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); + +$export($export.P + $export.F * WEBKIT_BUG, 'String', { padEnd: function padEnd(maxLength /* , fillString = ' ' */) { return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false); } diff --git a/modules/es7.string.pad-start.js b/modules/es7.string.pad-start.js index 61549121d0a3..729ed933ef8d 100644 --- a/modules/es7.string.pad-start.js +++ b/modules/es7.string.pad-start.js @@ -5,7 +5,9 @@ var $pad = require('./_string-pad'); var userAgent = require('./_user-agent'); // https://github.com/zloirock/core-js/issues/280 -$export($export.P + $export.F * /Version\/10\.\d+(\.\d+)? Safari\//.test(userAgent), 'String', { +var WEBKIT_BUG = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(userAgent); + +$export($export.P + $export.F * WEBKIT_BUG, 'String', { padStart: function padStart(maxLength /* , fillString = ' ' */) { return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true); }