From 2e758f64cf7da4a8612992a027704d9f10686b20 Mon Sep 17 00:00:00 2001 From: XhmikosR Date: Sat, 2 May 2020 16:49:33 +0300 Subject: [PATCH] Switch to Number properties --- .eslintrc.json | 1 - js/src/carousel.js | 2 +- js/src/modal.js | 6 +++--- js/src/util/index.js | 6 +++--- js/tests/unit/modal.spec.js | 12 ++++++------ 5 files changed, 13 insertions(+), 14 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 98e24c656a..a4a22e5cd2 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -53,7 +53,6 @@ "unicorn/prefer-dataset": "off", "unicorn/prefer-node-append": "off", "unicorn/prefer-node-remove": "off", - "unicorn/prefer-number-properties": "off", "unicorn/prefer-optional-catch-binding": "off", "unicorn/prefer-query-selector": "off", "unicorn/prefer-set-has": "off", diff --git a/js/src/carousel.js b/js/src/carousel.js index 58844a3873..c663efbeac 100644 --- a/js/src/carousel.js +++ b/js/src/carousel.js @@ -419,7 +419,7 @@ class Carousel { return } - const elementInterval = parseInt(element.getAttribute('data-bs-interval'), 10) + const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10) if (elementInterval) { this._config.defaultInterval = this._config.defaultInterval || this._config.interval diff --git a/js/src/modal.js b/js/src/modal.js index c42dc154c2..548b1d801f 100644 --- a/js/src/modal.js +++ b/js/src/modal.js @@ -474,7 +474,7 @@ class Modal { const actualPadding = element.style.paddingRight const calculatedPadding = window.getComputedStyle(element)['padding-right'] Manipulator.setDataAttribute(element, 'bs-padding-right', actualPadding) - element.style.paddingRight = `${parseFloat(calculatedPadding) + this._scrollbarWidth}px` + element.style.paddingRight = `${Number.parseFloat(calculatedPadding) + this._scrollbarWidth}px` }) // Adjust sticky content margin @@ -483,7 +483,7 @@ class Modal { const actualMargin = element.style.marginRight const calculatedMargin = window.getComputedStyle(element)['margin-right'] Manipulator.setDataAttribute(element, 'bs-margin-right', actualMargin) - element.style.marginRight = `${parseFloat(calculatedMargin) - this._scrollbarWidth}px` + element.style.marginRight = `${Number.parseFloat(calculatedMargin) - this._scrollbarWidth}px` }) // Adjust body padding @@ -491,7 +491,7 @@ class Modal { const calculatedPadding = window.getComputedStyle(document.body)['padding-right'] Manipulator.setDataAttribute(document.body, 'bs-padding-right', actualPadding) - document.body.style.paddingRight = `${parseFloat(calculatedPadding) + this._scrollbarWidth}px` + document.body.style.paddingRight = `${Number.parseFloat(calculatedPadding) + this._scrollbarWidth}px` } document.body.classList.add(CLASS_NAME_OPEN) diff --git a/js/src/util/index.js b/js/src/util/index.js index b8a53af969..c7cb3176a4 100644 --- a/js/src/util/index.js +++ b/js/src/util/index.js @@ -71,8 +71,8 @@ const getTransitionDurationFromElement = element => { transitionDelay } = window.getComputedStyle(element) - const floatTransitionDuration = parseFloat(transitionDuration) - const floatTransitionDelay = parseFloat(transitionDelay) + const floatTransitionDuration = Number.parseFloat(transitionDuration) + const floatTransitionDelay = Number.parseFloat(transitionDelay) // Return 0 if element or transition duration is not found if (!floatTransitionDuration && !floatTransitionDelay) { @@ -83,7 +83,7 @@ const getTransitionDurationFromElement = element => { transitionDuration = transitionDuration.split(',')[0] transitionDelay = transitionDelay.split(',')[0] - return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER + return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER } const triggerTransitionEnd = element => { diff --git a/js/tests/unit/modal.spec.js b/js/tests/unit/modal.spec.js index c90e260b6c..b9640097a9 100644 --- a/js/tests/unit/modal.spec.js +++ b/js/tests/unit/modal.spec.js @@ -87,13 +87,13 @@ describe('Modal', () => { ].join('') const fixedEl = fixtureEl.querySelector('.fixed-top') - const originalPadding = parseInt(window.getComputedStyle(fixedEl).paddingRight, 10) + const originalPadding = Number.parseInt(window.getComputedStyle(fixedEl).paddingRight, 10) const modalEl = fixtureEl.querySelector('.modal') const modal = new Modal(modalEl) modalEl.addEventListener('shown.bs.modal', () => { const expectedPadding = originalPadding + modal._getScrollbarWidth() - const currentPadding = parseInt(window.getComputedStyle(modalEl).paddingRight, 10) + const currentPadding = Number.parseInt(window.getComputedStyle(modalEl).paddingRight, 10) expect(fixedEl.getAttribute('data-bs-padding-right')).toEqual('0px', 'original fixed element padding should be stored in data-bs-padding-right') expect(currentPadding).toEqual(expectedPadding, 'fixed element padding should be adjusted while opening') @@ -101,7 +101,7 @@ describe('Modal', () => { }) modalEl.addEventListener('hidden.bs.modal', () => { - const currentPadding = parseInt(window.getComputedStyle(modalEl).paddingRight, 10) + const currentPadding = Number.parseInt(window.getComputedStyle(modalEl).paddingRight, 10) expect(fixedEl.getAttribute('data-bs-padding-right')).toEqual(null, 'data-bs-padding-right should be cleared after closing') expect(currentPadding).toEqual(originalPadding, 'fixed element padding should be reset after closing') @@ -118,13 +118,13 @@ describe('Modal', () => { ].join('') const stickyTopEl = fixtureEl.querySelector('.sticky-top') - const originalMargin = parseInt(window.getComputedStyle(stickyTopEl).marginRight, 10) + const originalMargin = Number.parseInt(window.getComputedStyle(stickyTopEl).marginRight, 10) const modalEl = fixtureEl.querySelector('.modal') const modal = new Modal(modalEl) modalEl.addEventListener('shown.bs.modal', () => { const expectedMargin = originalMargin - modal._getScrollbarWidth() - const currentMargin = parseInt(window.getComputedStyle(stickyTopEl).marginRight, 10) + const currentMargin = Number.parseInt(window.getComputedStyle(stickyTopEl).marginRight, 10) expect(stickyTopEl.getAttribute('data-bs-margin-right')).toEqual('0px', 'original sticky element margin should be stored in data-bs-margin-right') expect(currentMargin).toEqual(expectedMargin, 'sticky element margin should be adjusted while opening') @@ -132,7 +132,7 @@ describe('Modal', () => { }) modalEl.addEventListener('hidden.bs.modal', () => { - const currentMargin = parseInt(window.getComputedStyle(stickyTopEl).marginRight, 10) + const currentMargin = Number.parseInt(window.getComputedStyle(stickyTopEl).marginRight, 10) expect(stickyTopEl.getAttribute('data-bs-margin-right')).toEqual(null, 'data-bs-margin-right should be cleared after closing') expect(currentMargin).toEqual(originalMargin, 'sticky element margin should be reset after closing')