]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Remove IE compatibility JS code
authorJohann-S <johann.servoire@gmail.com>
Mon, 9 Mar 2020 13:34:07 +0000 (14:34 +0100)
committerXhmikosR <xhmikosr@gmail.com>
Wed, 18 Mar 2020 18:59:27 +0000 (20:59 +0200)
js/src/dom/event-handler.js
js/src/dom/polyfill.js
js/src/dom/selector-engine.js
js/src/util/index.js
js/tests/browsers.js

index b1484e51717c169bb6bd716f8a9b8605d509e188..7fdeaa4f8e9010648564ead59df78c79339de6cc 100644 (file)
@@ -6,7 +6,7 @@
  */
 
 import { getjQuery } from '../util/index'
-import { createCustomEvent, defaultPreventedPreservedOnDispatch } from './polyfill'
+import { defaultPreventedPreservedOnDispatch } from './polyfill'
 
 /**
  * ------------------------------------------------------------------------
@@ -307,7 +307,7 @@ const EventHandler = {
       evt = document.createEvent('HTMLEvents')
       evt.initEvent(typeEvent, bubbles, true)
     } else {
-      evt = createCustomEvent(event, {
+      evt = new CustomEvent(event, {
         bubbles,
         cancelable: true
       })
index 9e74c7cd2d815d6de6282aad886c5a1019ae2ec3..2a1c381e6e832799a3245f6f8f4751ea89356b0a 100644 (file)
@@ -9,55 +9,12 @@
 
 import { getUID } from '../util/index'
 
-let { matches, closest } = Element.prototype
 let find = Element.prototype.querySelectorAll
 let findOne = Element.prototype.querySelector
-let createCustomEvent = (eventName, params) => {
-  const cEvent = new CustomEvent(eventName, params)
-
-  return cEvent
-}
-
-if (typeof window.CustomEvent !== 'function') {
-  createCustomEvent = (eventName, params) => {
-    params = params || { bubbles: false, cancelable: false, detail: null }
-
-    const evt = document.createEvent('CustomEvent')
-
-    evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail)
-    return evt
-  }
-}
-
-const workingDefaultPrevented = (() => {
-  const e = document.createEvent('CustomEvent')
-
-  e.initEvent('Bootstrap', true, true)
-  e.preventDefault()
-  return e.defaultPrevented
-})()
-
-if (!workingDefaultPrevented) {
-  const origPreventDefault = Event.prototype.preventDefault
-
-  Event.prototype.preventDefault = function () {
-    if (!this.cancelable) {
-      return
-    }
-
-    origPreventDefault.call(this)
-    Object.defineProperty(this, 'defaultPrevented', {
-      get() {
-        return true
-      },
-      configurable: true
-    })
-  }
-}
 
 // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
 const defaultPreventedPreservedOnDispatch = (() => {
-  const e = createCustomEvent('Bootstrap', {
+  const e = new CustomEvent('Bootstrap', {
     cancelable: true
   })
 
@@ -69,26 +26,6 @@ const defaultPreventedPreservedOnDispatch = (() => {
   return e.defaultPrevented
 })()
 
-if (!matches) {
-  matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector
-}
-
-if (!closest) {
-  closest = function (selector) {
-    let element = this
-
-    do {
-      if (matches.call(element, selector)) {
-        return element
-      }
-
-      element = element.parentElement || element.parentNode
-    } while (element !== null && element.nodeType === 1)
-
-    return null
-  }
-}
-
 const scopeSelectorRegex = /:scope\b/
 const supportScopeQuery = (() => {
   const element = document.createElement('div')
@@ -143,10 +80,7 @@ if (!supportScopeQuery) {
 }
 
 export {
-  createCustomEvent,
   find,
   findOne,
-  matches,
-  closest,
   defaultPreventedPreservedOnDispatch
 }
index c9d25f68cb5fe659758c1c599d426b9cb59d75e3..a8c14ae4c81419bb64b8028282b73d2033a90d55 100644 (file)
@@ -5,7 +5,7 @@
  * --------------------------------------------------------------------------
  */
 
-import { find as findFn, findOne, matches, closest } from './polyfill'
+import { find as findFn, findOne } from './polyfill'
 import { makeArray } from '../util/index'
 
 /**
@@ -18,7 +18,7 @@ const NODE_TEXT = 3
 
 const SelectorEngine = {
   matches(element, selector) {
-    return matches.call(element, selector)
+    return element.matches(selector)
   },
 
   find(selector, element = document.documentElement) {
@@ -52,7 +52,7 @@ const SelectorEngine = {
   },
 
   closest(element, selector) {
-    return closest.call(element, selector)
+    return element.closest(selector)
   },
 
   prev(element, selector) {
index fca2a91977fb4909a75129d9a906a63079a9a50e..001201b4bc65fc326bef77b1b7f4245df73ef4e2 100644 (file)
@@ -87,10 +87,7 @@ const getTransitionDurationFromElement = element => {
 }
 
 const triggerTransitionEnd = element => {
-  const evt = document.createEvent('HTMLEvents')
-
-  evt.initEvent(TRANSITION_END, true, true)
-  element.dispatchEvent(evt)
+  element.dispatchEvent(new Event(TRANSITION_END))
 }
 
 const isElement = obj => (obj[0] || obj).nodeType
index a0d43da864ae9f2f3f700fe52885f154af0b26fa..859f9505ccbf6ba3f185515df32f0d57e9e45edf 100644 (file)
@@ -30,13 +30,6 @@ const browsers = {
     browser: 'Edge',
     browser_version: 'latest'
   },
-  ie11Win10: {
-    base: 'BrowserStack',
-    os: 'Windows',
-    os_version: '10',
-    browser: 'IE',
-    browser_version: '11.0'
-  },
   chromeWin10: {
     base: 'BrowserStack',
     os: 'Windows',