芝麻web文件管理V1.00
编辑当前文件:/home2/sdektunc/xmintal-back/vendor/npm-asset/bootstrap/js/dist/modal.js
/*! * Bootstrap modal.js v4.6.2 (https://getbootstrap.com/) * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */ (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) : typeof define === 'function' && define.amd ? define(['jquery', './util'], factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Modal = factory(global.jQuery, global.Util)); })(this, (function ($, Util) { 'use strict'; function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var $__default = /*#__PURE__*/_interopDefaultLegacy($); var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util); 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); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /** * Constants */ var NAME = 'modal'; var VERSION = '4.6.2'; var DATA_KEY = 'bs.modal'; var EVENT_KEY = "." + DATA_KEY; var DATA_API_KEY = '.data-api'; var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME]; var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key var CLASS_NAME_SCROLLABLE = 'modal-dialog-scrollable'; var CLASS_NAME_SCROLLBAR_MEASURER = 'modal-scrollbar-measure'; var CLASS_NAME_BACKDROP = 'modal-backdrop'; var CLASS_NAME_OPEN = 'modal-open'; var CLASS_NAME_FADE = 'fade'; var CLASS_NAME_SHOW = 'show'; var CLASS_NAME_STATIC = 'modal-static'; var EVENT_HIDE = "hide" + EVENT_KEY; var EVENT_HIDE_PREVENTED = "hidePrevented" + EVENT_KEY; var EVENT_HIDDEN = "hidden" + EVENT_KEY; var EVENT_SHOW = "show" + EVENT_KEY; var EVENT_SHOWN = "shown" + EVENT_KEY; var EVENT_FOCUSIN = "focusin" + EVENT_KEY; var EVENT_RESIZE = "resize" + EVENT_KEY; var EVENT_CLICK_DISMISS = "click.dismiss" + EVENT_KEY; var EVENT_KEYDOWN_DISMISS = "keydown.dismiss" + EVENT_KEY; var EVENT_MOUSEUP_DISMISS = "mouseup.dismiss" + EVENT_KEY; var EVENT_MOUSEDOWN_DISMISS = "mousedown.dismiss" + EVENT_KEY; var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY; var SELECTOR_DIALOG = '.modal-dialog'; var SELECTOR_MODAL_BODY = '.modal-body'; var SELECTOR_DATA_TOGGLE = '[data-toggle="modal"]'; var SELECTOR_DATA_DISMISS = '[data-dismiss="modal"]'; var SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; var SELECTOR_STICKY_CONTENT = '.sticky-top'; var Default = { backdrop: true, keyboard: true, focus: true, show: true }; var DefaultType = { backdrop: '(boolean|string)', keyboard: 'boolean', focus: 'boolean', show: 'boolean' }; /** * Class definition */ var Modal = /*#__PURE__*/function () { function Modal(element, config) { this._config = this._getConfig(config); this._element = element; this._dialog = element.querySelector(SELECTOR_DIALOG); this._backdrop = null; this._isShown = false; this._isBodyOverflowing = false; this._ignoreBackdropClick = false; this._isTransitioning = false; this._scrollbarWidth = 0; } // Getters var _proto = Modal.prototype; // Public _proto.toggle = function toggle(relatedTarget) { return this._isShown ? this.hide() : this.show(relatedTarget); }; _proto.show = function show(relatedTarget) { var _this = this; if (this._isShown || this._isTransitioning) { return; } var showEvent = $__default["default"].Event(EVENT_SHOW, { relatedTarget: relatedTarget }); $__default["default"](this._element).trigger(showEvent); if (showEvent.isDefaultPrevented()) { return; } this._isShown = true; if ($__default["default"](this._element).hasClass(CLASS_NAME_FADE)) { this._isTransitioning = true; } this._checkScrollbar(); this._setScrollbar(); this._adjustDialog(); this._setEscapeEvent(); this._setResizeEvent(); $__default["default"](this._element).on(EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, function (event) { return _this.hide(event); }); $__default["default"](this._dialog).on(EVENT_MOUSEDOWN_DISMISS, function () { $__default["default"](_this._element).one(EVENT_MOUSEUP_DISMISS, function (event) { if ($__default["default"](event.target).is(_this._element)) { _this._ignoreBackdropClick = true; } }); }); this._showBackdrop(function () { return _this._showElement(relatedTarget); }); }; _proto.hide = function hide(event) { var _this2 = this; if (event) { event.preventDefault(); } if (!this._isShown || this._isTransitioning) { return; } var hideEvent = $__default["default"].Event(EVENT_HIDE); $__default["default"](this._element).trigger(hideEvent); if (!this._isShown || hideEvent.isDefaultPrevented()) { return; } this._isShown = false; var transition = $__default["default"](this._element).hasClass(CLASS_NAME_FADE); if (transition) { this._isTransitioning = true; } this._setEscapeEvent(); this._setResizeEvent(); $__default["default"](document).off(EVENT_FOCUSIN); $__default["default"](this._element).removeClass(CLASS_NAME_SHOW); $__default["default"](this._element).off(EVENT_CLICK_DISMISS); $__default["default"](this._dialog).off(EVENT_MOUSEDOWN_DISMISS); if (transition) { var transitionDuration = Util__default["default"].getTransitionDurationFromElement(this._element); $__default["default"](this._element).one(Util__default["default"].TRANSITION_END, function (event) { return _this2._hideModal(event); }).emulateTransitionEnd(transitionDuration); } else { this._hideModal(); } }; _proto.dispose = function dispose() { [window, this._element, this._dialog].forEach(function (htmlElement) { return $__default["default"](htmlElement).off(EVENT_KEY); }); /** * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` * Do not move `document` in `htmlElements` array * It will remove `EVENT_CLICK_DATA_API` event that should remain */ $__default["default"](document).off(EVENT_FOCUSIN); $__default["default"].removeData(this._element, DATA_KEY); this._config = null; this._element = null; this._dialog = null; this._backdrop = null; this._isShown = null; this._isBodyOverflowing = null; this._ignoreBackdropClick = null; this._isTransitioning = null; this._scrollbarWidth = null; }; _proto.handleUpdate = function handleUpdate() { this._adjustDialog(); } // Private ; _proto._getConfig = function _getConfig(config) { config = _extends({}, Default, config); Util__default["default"].typeCheckConfig(NAME, config, DefaultType); return config; }; _proto._triggerBackdropTransition = function _triggerBackdropTransition() { var _this3 = this; var hideEventPrevented = $__default["default"].Event(EVENT_HIDE_PREVENTED); $__default["default"](this._element).trigger(hideEventPrevented); if (hideEventPrevented.isDefaultPrevented()) { return; } var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; if (!isModalOverflowing) { this._element.style.overflowY = 'hidden'; } this._element.classList.add(CLASS_NAME_STATIC); var modalTransitionDuration = Util__default["default"].getTransitionDurationFromElement(this._dialog); $__default["default"](this._element).off(Util__default["default"].TRANSITION_END); $__default["default"](this._element).one(Util__default["default"].TRANSITION_END, function () { _this3._element.classList.remove(CLASS_NAME_STATIC); if (!isModalOverflowing) { $__default["default"](_this3._element).one(Util__default["default"].TRANSITION_END, function () { _this3._element.style.overflowY = ''; }).emulateTransitionEnd(_this3._element, modalTransitionDuration); } }).emulateTransitionEnd(modalTransitionDuration); this._element.focus(); }; _proto._showElement = function _showElement(relatedTarget) { var _this4 = this; var transition = $__default["default"](this._element).hasClass(CLASS_NAME_FADE); var modalBody = this._dialog ? this._dialog.querySelector(SELECTOR_MODAL_BODY) : null; if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { // Don't move modal's DOM position document.body.appendChild(this._element); } this._element.style.display = 'block'; this._element.removeAttribute('aria-hidden'); this._element.setAttribute('aria-modal', true); this._element.setAttribute('role', 'dialog'); if ($__default["default"](this._dialog).hasClass(CLASS_NAME_SCROLLABLE) && modalBody) { modalBody.scrollTop = 0; } else { this._element.scrollTop = 0; } if (transition) { Util__default["default"].reflow(this._element); } $__default["default"](this._element).addClass(CLASS_NAME_SHOW); if (this._config.focus) { this._enforceFocus(); } var shownEvent = $__default["default"].Event(EVENT_SHOWN, { relatedTarget: relatedTarget }); var transitionComplete = function transitionComplete() { if (_this4._config.focus) { _this4._element.focus(); } _this4._isTransitioning = false; $__default["default"](_this4._element).trigger(shownEvent); }; if (transition) { var transitionDuration = Util__default["default"].getTransitionDurationFromElement(this._dialog); $__default["default"](this._dialog).one(Util__default["default"].TRANSITION_END, transitionComplete).emulateTransitionEnd(transitionDuration); } else { transitionComplete(); } }; _proto._enforceFocus = function _enforceFocus() { var _this5 = this; $__default["default"](document).off(EVENT_FOCUSIN) // Guard against infinite focus loop .on(EVENT_FOCUSIN, function (event) { if (document !== event.target && _this5._element !== event.target && $__default["default"](_this5._element).has(event.target).length === 0) { _this5._element.focus(); } }); }; _proto._setEscapeEvent = function _setEscapeEvent() { var _this6 = this; if (this._isShown) { $__default["default"](this._element).on(EVENT_KEYDOWN_DISMISS, function (event) { if (_this6._config.keyboard && event.which === ESCAPE_KEYCODE) { event.preventDefault(); _this6.hide(); } else if (!_this6._config.keyboard && event.which === ESCAPE_KEYCODE) { _this6._triggerBackdropTransition(); } }); } else if (!this._isShown) { $__default["default"](this._element).off(EVENT_KEYDOWN_DISMISS); } }; _proto._setResizeEvent = function _setResizeEvent() { var _this7 = this; if (this._isShown) { $__default["default"](window).on(EVENT_RESIZE, function (event) { return _this7.handleUpdate(event); }); } else { $__default["default"](window).off(EVENT_RESIZE); } }; _proto._hideModal = function _hideModal() { var _this8 = this; this._element.style.display = 'none'; this._element.setAttribute('aria-hidden', true); this._element.removeAttribute('aria-modal'); this._element.removeAttribute('role'); this._isTransitioning = false; this._showBackdrop(function () { $__default["default"](document.body).removeClass(CLASS_NAME_OPEN); _this8._resetAdjustments(); _this8._resetScrollbar(); $__default["default"](_this8._element).trigger(EVENT_HIDDEN); }); }; _proto._removeBackdrop = function _removeBackdrop() { if (this._backdrop) { $__default["default"](this._backdrop).remove(); this._backdrop = null; } }; _proto._showBackdrop = function _showBackdrop(callback) { var _this9 = this; var animate = $__default["default"](this._element).hasClass(CLASS_NAME_FADE) ? CLASS_NAME_FADE : ''; if (this._isShown && this._config.backdrop) { this._backdrop = document.createElement('div'); this._backdrop.className = CLASS_NAME_BACKDROP; if (animate) { this._backdrop.classList.add(animate); } $__default["default"](this._backdrop).appendTo(document.body); $__default["default"](this._element).on(EVENT_CLICK_DISMISS, function (event) { if (_this9._ignoreBackdropClick) { _this9._ignoreBackdropClick = false; return; } if (event.target !== event.currentTarget) { return; } if (_this9._config.backdrop === 'static') { _this9._triggerBackdropTransition(); } else { _this9.hide(); } }); if (animate) { Util__default["default"].reflow(this._backdrop); } $__default["default"](this._backdrop).addClass(CLASS_NAME_SHOW); if (!callback) { return; } if (!animate) { callback(); return; } var backdropTransitionDuration = Util__default["default"].getTransitionDurationFromElement(this._backdrop); $__default["default"](this._backdrop).one(Util__default["default"].TRANSITION_END, callback).emulateTransitionEnd(backdropTransitionDuration); } else if (!this._isShown && this._backdrop) { $__default["default"](this._backdrop).removeClass(CLASS_NAME_SHOW); var callbackRemove = function callbackRemove() { _this9._removeBackdrop(); if (callback) { callback(); } }; if ($__default["default"](this._element).hasClass(CLASS_NAME_FADE)) { var _backdropTransitionDuration = Util__default["default"].getTransitionDurationFromElement(this._backdrop); $__default["default"](this._backdrop).one(Util__default["default"].TRANSITION_END, callbackRemove).emulateTransitionEnd(_backdropTransitionDuration); } else { callbackRemove(); } } else if (callback) { callback(); } } // ---------------------------------------------------------------------- // the following methods are used to handle overflowing modals // todo (fat): these should probably be refactored out of modal.js // ---------------------------------------------------------------------- ; _proto._adjustDialog = function _adjustDialog() { var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; if (!this._isBodyOverflowing && isModalOverflowing) { this._element.style.paddingLeft = this._scrollbarWidth + "px"; } if (this._isBodyOverflowing && !isModalOverflowing) { this._element.style.paddingRight = this._scrollbarWidth + "px"; } }; _proto._resetAdjustments = function _resetAdjustments() { this._element.style.paddingLeft = ''; this._element.style.paddingRight = ''; }; _proto._checkScrollbar = function _checkScrollbar() { var rect = document.body.getBoundingClientRect(); this._isBodyOverflowing = Math.round(rect.left + rect.right) < window.innerWidth; this._scrollbarWidth = this._getScrollbarWidth(); }; _proto._setScrollbar = function _setScrollbar() { var _this10 = this; if (this._isBodyOverflowing) { // Note: DOMNode.style.paddingRight returns the actual value or '' if not set // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set var fixedContent = [].slice.call(document.querySelectorAll(SELECTOR_FIXED_CONTENT)); var stickyContent = [].slice.call(document.querySelectorAll(SELECTOR_STICKY_CONTENT)); // Adjust fixed content padding $__default["default"](fixedContent).each(function (index, element) { var actualPadding = element.style.paddingRight; var calculatedPadding = $__default["default"](element).css('padding-right'); $__default["default"](element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this10._scrollbarWidth + "px"); }); // Adjust sticky content margin $__default["default"](stickyContent).each(function (index, element) { var actualMargin = element.style.marginRight; var calculatedMargin = $__default["default"](element).css('margin-right'); $__default["default"](element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this10._scrollbarWidth + "px"); }); // Adjust body padding var actualPadding = document.body.style.paddingRight; var calculatedPadding = $__default["default"](document.body).css('padding-right'); $__default["default"](document.body).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px"); } $__default["default"](document.body).addClass(CLASS_NAME_OPEN); }; _proto._resetScrollbar = function _resetScrollbar() { // Restore fixed content padding var fixedContent = [].slice.call(document.querySelectorAll(SELECTOR_FIXED_CONTENT)); $__default["default"](fixedContent).each(function (index, element) { var padding = $__default["default"](element).data('padding-right'); $__default["default"](element).removeData('padding-right'); element.style.paddingRight = padding ? padding : ''; }); // Restore sticky content var elements = [].slice.call(document.querySelectorAll("" + SELECTOR_STICKY_CONTENT)); $__default["default"](elements).each(function (index, element) { var margin = $__default["default"](element).data('margin-right'); if (typeof margin !== 'undefined') { $__default["default"](element).css('margin-right', margin).removeData('margin-right'); } }); // Restore body padding var padding = $__default["default"](document.body).data('padding-right'); $__default["default"](document.body).removeData('padding-right'); document.body.style.paddingRight = padding ? padding : ''; }; _proto._getScrollbarWidth = function _getScrollbarWidth() { // thx d.walsh var scrollDiv = document.createElement('div'); scrollDiv.className = CLASS_NAME_SCROLLBAR_MEASURER; document.body.appendChild(scrollDiv); var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth; document.body.removeChild(scrollDiv); return scrollbarWidth; } // Static ; Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) { return this.each(function () { var data = $__default["default"](this).data(DATA_KEY); var _config = _extends({}, Default, $__default["default"](this).data(), typeof config === 'object' && config ? config : {}); if (!data) { data = new Modal(this, _config); $__default["default"](this).data(DATA_KEY, data); } if (typeof config === 'string') { if (typeof data[config] === 'undefined') { throw new TypeError("No method named \"" + config + "\""); } data[config](relatedTarget); } else if (_config.show) { data.show(relatedTarget); } }); }; _createClass(Modal, null, [{ key: "VERSION", get: function get() { return VERSION; } }, { key: "Default", get: function get() { return Default; } }]); return Modal; }(); /** * Data API implementation */ $__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { var _this11 = this; var target; var selector = Util__default["default"].getSelectorFromElement(this); if (selector) { target = document.querySelector(selector); } var config = $__default["default"](target).data(DATA_KEY) ? 'toggle' : _extends({}, $__default["default"](target).data(), $__default["default"](this).data()); if (this.tagName === 'A' || this.tagName === 'AREA') { event.preventDefault(); } var $target = $__default["default"](target).one(EVENT_SHOW, function (showEvent) { if (showEvent.isDefaultPrevented()) { // Only register focus restorer if modal will actually get shown return; } $target.one(EVENT_HIDDEN, function () { if ($__default["default"](_this11).is(':visible')) { _this11.focus(); } }); }); Modal._jQueryInterface.call($__default["default"](target), config, this); }); /** * jQuery */ $__default["default"].fn[NAME] = Modal._jQueryInterface; $__default["default"].fn[NAME].Constructor = Modal; $__default["default"].fn[NAME].noConflict = function () { $__default["default"].fn[NAME] = JQUERY_NO_CONFLICT; return Modal._jQueryInterface; }; return Modal; })); //# sourceMappingURL=modal.js.map