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

alert.js.map « dist « js - github.com/twbs/bootstrap.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 107e588bd4f425e7658f5d614e3742168004f967 (plain)
1
{"version":3,"sources":["../src/alert.js"],"names":["Alert","NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","$","fn","TRANSITION_DURATION","Selector","DISMISS","Event","CLOSE","CLOSED","CLICK_DATA_API","ClassName","ALERT","FADE","SHOW","element","_element","rootElement","_getRootElement","customEvent","_triggerCloseEvent","isDefaultPrevented","_removeElement","removeData","selector","Util","getSelectorFromElement","parent","closest","closeEvent","trigger","removeClass","supportsTransitionEnd","hasClass","_destroyElement","one","TRANSITION_END","event","emulateTransitionEnd","detach","remove","config","each","$element","data","alertInstance","preventDefault","close","document","on","_handleDismiss","_jQueryInterface","Constructor","noConflict","jQuery"],"mappings":"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","file":"alert.js","sourcesContent":["import $ from 'jquery'\nimport Util from './util'\n\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.0.0-beta): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Alert = (() => {\n\n\n  /**\n   * ------------------------------------------------------------------------\n   * Constants\n   * ------------------------------------------------------------------------\n   */\n\n  const NAME                = 'alert'\n  const VERSION             = '4.0.0-beta'\n  const DATA_KEY            = 'bs.alert'\n  const EVENT_KEY           = `.${DATA_KEY}`\n  const DATA_API_KEY        = '.data-api'\n  const JQUERY_NO_CONFLICT  = $.fn[NAME]\n  const TRANSITION_DURATION = 150\n\n  const Selector = {\n    DISMISS : '[data-dismiss=\"alert\"]'\n  }\n\n  const Event = {\n    CLOSE          : `close${EVENT_KEY}`,\n    CLOSED         : `closed${EVENT_KEY}`,\n    CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n  }\n\n  const ClassName = {\n    ALERT : 'alert',\n    FADE  : 'fade',\n    SHOW  : 'show'\n  }\n\n\n  /**\n   * ------------------------------------------------------------------------\n   * Class Definition\n   * ------------------------------------------------------------------------\n   */\n\n  class Alert {\n\n    constructor(element) {\n      this._element = element\n    }\n\n\n    // getters\n\n    static get VERSION() {\n      return VERSION\n    }\n\n\n    // public\n\n    close(element) {\n      element = element || this._element\n\n      const rootElement = this._getRootElement(element)\n      const customEvent = this._triggerCloseEvent(rootElement)\n\n      if (customEvent.isDefaultPrevented()) {\n        return\n      }\n\n      this._removeElement(rootElement)\n    }\n\n    dispose() {\n      $.removeData(this._element, DATA_KEY)\n      this._element = null\n    }\n\n\n    // private\n\n    _getRootElement(element) {\n      const selector = Util.getSelectorFromElement(element)\n      let parent     = false\n\n      if (selector) {\n        parent = $(selector)[0]\n      }\n\n      if (!parent) {\n        parent = $(element).closest(`.${ClassName.ALERT}`)[0]\n      }\n\n      return parent\n    }\n\n    _triggerCloseEvent(element) {\n      const closeEvent = $.Event(Event.CLOSE)\n\n      $(element).trigger(closeEvent)\n      return closeEvent\n    }\n\n    _removeElement(element) {\n      $(element).removeClass(ClassName.SHOW)\n\n      if (!Util.supportsTransitionEnd() ||\n          !$(element).hasClass(ClassName.FADE)) {\n        this._destroyElement(element)\n        return\n      }\n\n      $(element)\n        .one(Util.TRANSITION_END, (event) => this._destroyElement(element, event))\n        .emulateTransitionEnd(TRANSITION_DURATION)\n    }\n\n    _destroyElement(element) {\n      $(element)\n        .detach()\n        .trigger(Event.CLOSED)\n        .remove()\n    }\n\n\n    // static\n\n    static _jQueryInterface(config) {\n      return this.each(function () {\n        const $element = $(this)\n        let data       = $element.data(DATA_KEY)\n\n        if (!data) {\n          data = new Alert(this)\n          $element.data(DATA_KEY, data)\n        }\n\n        if (config === 'close') {\n          data[config](this)\n        }\n      })\n    }\n\n    static _handleDismiss(alertInstance) {\n      return function (event) {\n        if (event) {\n          event.preventDefault()\n        }\n\n        alertInstance.close(this)\n      }\n    }\n\n  }\n\n\n  /**\n   * ------------------------------------------------------------------------\n   * Data Api implementation\n   * ------------------------------------------------------------------------\n   */\n\n  $(document).on(\n    Event.CLICK_DATA_API,\n    Selector.DISMISS,\n    Alert._handleDismiss(new Alert())\n  )\n\n\n  /**\n   * ------------------------------------------------------------------------\n   * jQuery\n   * ------------------------------------------------------------------------\n   */\n\n  $.fn[NAME]             = Alert._jQueryInterface\n  $.fn[NAME].Constructor = Alert\n  $.fn[NAME].noConflict  = function () {\n    $.fn[NAME] = JQUERY_NO_CONFLICT\n    return Alert._jQueryInterface\n  }\n\n  return Alert\n\n})(jQuery)\n\nexport default Alert\n"]}