Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohann-S <johann.servoire@gmail.com>2019-03-13 17:23:50 +0300
committerJohann-S <johann.servoire@gmail.com>2019-07-23 15:23:50 +0300
commitc8c207465043d940aa031570f0bce5e8fff9ffcf (patch)
tree482f430ee84aa4cae8f76cebdec75791a60a50d1 /js/src/alert.js
parent08d81c843706c2b952fadb703f3f9be709a8ca6a (diff)
Switch from QUnit to Jasmine.
Diffstat (limited to 'js/src/alert.js')
-rw-r--r--js/src/alert.js189
1 files changed, 0 insertions, 189 deletions
diff --git a/js/src/alert.js b/js/src/alert.js
deleted file mode 100644
index 23ac9f25d4..0000000000
--- a/js/src/alert.js
+++ /dev/null
@@ -1,189 +0,0 @@
-/**
- * --------------------------------------------------------------------------
- * Bootstrap (v4.3.1): alert.js
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- * --------------------------------------------------------------------------
- */
-
-import {
- jQuery as $,
- TRANSITION_END,
- emulateTransitionEnd,
- getSelectorFromElement,
- getTransitionDurationFromElement
-} from './util/index'
-import Data from './dom/data'
-import EventHandler from './dom/event-handler'
-import SelectorEngine from './dom/selector-engine'
-
-/**
- * ------------------------------------------------------------------------
- * Constants
- * ------------------------------------------------------------------------
- */
-
-const NAME = 'alert'
-const VERSION = '4.3.1'
-const DATA_KEY = 'bs.alert'
-const EVENT_KEY = `.${DATA_KEY}`
-const DATA_API_KEY = '.data-api'
-
-const Selector = {
- DISMISS: '[data-dismiss="alert"]'
-}
-
-const Event = {
- CLOSE: `close${EVENT_KEY}`,
- CLOSED: `closed${EVENT_KEY}`,
- CLICK_DATA_API: `click${EVENT_KEY}${DATA_API_KEY}`
-}
-
-const ClassName = {
- ALERT: 'alert',
- FADE: 'fade',
- SHOW: 'show'
-}
-
-/**
- * ------------------------------------------------------------------------
- * Class Definition
- * ------------------------------------------------------------------------
- */
-
-class Alert {
- constructor(element) {
- this._element = element
- if (this._element) {
- Data.setData(element, DATA_KEY, this)
- }
- }
-
- // Getters
-
- static get VERSION() {
- return VERSION
- }
-
- // Public
-
- close(element) {
- let rootElement = this._element
- if (element) {
- rootElement = this._getRootElement(element)
- }
-
- const customEvent = this._triggerCloseEvent(rootElement)
-
- if (customEvent === null || customEvent.defaultPrevented) {
- return
- }
-
- this._removeElement(rootElement)
- }
-
- dispose() {
- Data.removeData(this._element, DATA_KEY)
- this._element = null
- }
-
- // Private
-
- _getRootElement(element) {
- const selector = getSelectorFromElement(element)
- let parent = false
-
- if (selector) {
- parent = SelectorEngine.findOne(selector)
- }
-
- if (!parent) {
- parent = SelectorEngine.closest(element, `.${ClassName.ALERT}`)
- }
-
- return parent
- }
-
- _triggerCloseEvent(element) {
- return EventHandler.trigger(element, Event.CLOSE)
- }
-
- _removeElement(element) {
- element.classList.remove(ClassName.SHOW)
-
- if (!element.classList.contains(ClassName.FADE)) {
- this._destroyElement(element)
- return
- }
-
- const transitionDuration = getTransitionDurationFromElement(element)
-
- EventHandler
- .one(element, TRANSITION_END, event => this._destroyElement(element, event))
- emulateTransitionEnd(element, transitionDuration)
- }
-
- _destroyElement(element) {
- if (element.parentNode) {
- element.parentNode.removeChild(element)
- }
-
- EventHandler.trigger(element, Event.CLOSED)
- }
-
- // Static
-
- static _jQueryInterface(config) {
- return this.each(function () {
- let data = Data.getData(this, DATA_KEY)
-
- if (!data) {
- data = new Alert(this)
- }
-
- if (config === 'close') {
- data[config](this)
- }
- })
- }
-
- static _handleDismiss(alertInstance) {
- return function (event) {
- if (event) {
- event.preventDefault()
- }
-
- alertInstance.close(this)
- }
- }
-
- static _getInstance(element) {
- return Data.getData(element, DATA_KEY)
- }
-}
-
-/**
- * ------------------------------------------------------------------------
- * Data Api implementation
- * ------------------------------------------------------------------------
- */
-EventHandler
- .on(document, Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()))
-
-/**
- * ------------------------------------------------------------------------
- * jQuery
- * ------------------------------------------------------------------------
- * add .alert to jQuery only if jQuery is present
- */
-
-if (typeof $ !== 'undefined') {
- const JQUERY_NO_CONFLICT = $.fn[NAME]
- $.fn[NAME] = Alert._jQueryInterface
- $.fn[NAME].Constructor = Alert
- $.fn[NAME].noConflict = () => {
- $.fn[NAME] = JQUERY_NO_CONFLICT
- return Alert._jQueryInterface
- }
-}
-
-export default Alert