]>
git.ipfire.org Git - ipfire.org.git/blob - static/scss/bootstrap-4.0.0-alpha.6/js/dist/alert.js
2fa6018f20b2e7fa46b72af3725799a370f25559
1 var _createClass = function () { function defineProperties(target
, props
) { for (var i
= 0; i
< props
.length
; i
++) { var descriptor
= props
[i
]; descriptor
.enumerable
= descriptor
.enumerable
|| false; descriptor
.configurable
= true; if ("value" in descriptor
) descriptor
.writable
= true; Object
.defineProperty(target
, descriptor
.key
, descriptor
); } } return function (Constructor
, protoProps
, staticProps
) { if (protoProps
) defineProperties(Constructor
.prototype, protoProps
); if (staticProps
) defineProperties(Constructor
, staticProps
); return Constructor
; }; }();
3 function _classCallCheck(instance
, Constructor
) { if (!(instance
instanceof Constructor
)) { throw new TypeError("Cannot call a class as a function"); } }
6 * --------------------------------------------------------------------------
7 * Bootstrap (v4.0.0-alpha.6): alert.js
8 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
9 * --------------------------------------------------------------------------
12 var Alert = function ($) {
15 * ------------------------------------------------------------------------
17 * ------------------------------------------------------------------------
21 var VERSION
= '4.0.0-alpha.6';
22 var DATA_KEY
= 'bs.alert';
23 var EVENT_KEY
= '.' + DATA_KEY
;
24 var DATA_API_KEY
= '.data-api';
25 var JQUERY_NO_CONFLICT
= $.fn
[NAME
];
26 var TRANSITION_DURATION
= 150;
29 DISMISS
: '[data-dismiss="alert"]'
33 CLOSE
: 'close' + EVENT_KEY
,
34 CLOSED
: 'closed' + EVENT_KEY
,
35 CLICK_DATA_API
: 'click' + EVENT_KEY
+ DATA_API_KEY
45 * ------------------------------------------------------------------------
47 * ------------------------------------------------------------------------
50 var Alert = function () {
51 function Alert(element
) {
52 _classCallCheck(this, Alert
);
54 this._element
= element
;
61 Alert
.prototype.close
= function close(element
) {
62 element
= element
|| this._element
;
64 var rootElement
= this._getRootElement(element
);
65 var customEvent
= this._triggerCloseEvent(rootElement
);
67 if (customEvent
.isDefaultPrevented()) {
71 this._removeElement(rootElement
);
74 Alert
.prototype.dispose
= function dispose() {
75 $.removeData(this._element
, DATA_KEY
);
81 Alert
.prototype._getRootElement
= function _getRootElement(element
) {
82 var selector
= Util
.getSelectorFromElement(element
);
86 parent
= $(selector
)[0];
90 parent
= $(element
).closest('.' + ClassName
.ALERT
)[0];
96 Alert
.prototype._triggerCloseEvent
= function _triggerCloseEvent(element
) {
97 var closeEvent
= $.Event(Event
.CLOSE
);
99 $(element
).trigger(closeEvent
);
103 Alert
.prototype._removeElement
= function _removeElement(element
) {
106 $(element
).removeClass(ClassName
.SHOW
);
108 if (!Util
.supportsTransitionEnd() || !$(element
).hasClass(ClassName
.FADE
)) {
109 this._destroyElement(element
);
113 $(element
).one(Util
.TRANSITION_END
, function (event
) {
114 return _this
._destroyElement(element
, event
);
115 }).emulateTransitionEnd(TRANSITION_DURATION
);
118 Alert
.prototype._destroyElement
= function _destroyElement(element
) {
119 $(element
).detach().trigger(Event
.CLOSED
).remove();
124 Alert
._jQueryInterface
= function _jQueryInterface(config
) {
125 return this.each(function () {
126 var $element
= $(this);
127 var data
= $element
.data(DATA_KEY
);
130 data
= new Alert(this);
131 $element
.data(DATA_KEY
, data
);
134 if (config
=== 'close') {
140 Alert
._handleDismiss
= function _handleDismiss(alertInstance
) {
141 return function (event
) {
143 event
.preventDefault();
146 alertInstance
.close(this);
150 _createClass(Alert
, null, [{
152 get: function get() {
161 * ------------------------------------------------------------------------
162 * Data Api implementation
163 * ------------------------------------------------------------------------
166 $(document
).on(Event
.CLICK_DATA_API
, Selector
.DISMISS
, Alert
._handleDismiss(new Alert()));
169 * ------------------------------------------------------------------------
171 * ------------------------------------------------------------------------
174 $.fn
[NAME
] = Alert
._jQueryInterface
;
175 $.fn
[NAME
].Constructor
= Alert
;
176 $.fn
[NAME
].noConflict = function () {
177 $.fn
[NAME
] = JQUERY_NO_CONFLICT
;
178 return Alert
._jQueryInterface
;
183 //# sourceMappingURL=alert.js.map