vertx-howtos-jekyll-theme 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +52 -0
- data/_layouts/page.html +61 -0
- data/_sass/bootstrap/js/dist/alert.js +199 -0
- data/_sass/bootstrap/js/dist/alert.js.map +1 -0
- data/_sass/bootstrap/js/dist/button.js +187 -0
- data/_sass/bootstrap/js/dist/button.js.map +1 -0
- data/_sass/bootstrap/js/dist/carousel.js +666 -0
- data/_sass/bootstrap/js/dist/carousel.js.map +1 -0
- data/_sass/bootstrap/js/dist/collapse.js +428 -0
- data/_sass/bootstrap/js/dist/collapse.js.map +1 -0
- data/_sass/bootstrap/js/dist/dropdown.js +591 -0
- data/_sass/bootstrap/js/dist/dropdown.js.map +1 -0
- data/_sass/bootstrap/js/dist/index.js +23 -0
- data/_sass/bootstrap/js/dist/index.js.map +1 -0
- data/_sass/bootstrap/js/dist/modal.js +644 -0
- data/_sass/bootstrap/js/dist/modal.js.map +1 -0
- data/_sass/bootstrap/js/dist/popover.js +261 -0
- data/_sass/bootstrap/js/dist/popover.js.map +1 -0
- data/_sass/bootstrap/js/dist/scrollspy.js +375 -0
- data/_sass/bootstrap/js/dist/scrollspy.js.map +1 -0
- data/_sass/bootstrap/js/dist/tab.js +266 -0
- data/_sass/bootstrap/js/dist/tab.js.map +1 -0
- data/_sass/bootstrap/js/dist/toast.js +278 -0
- data/_sass/bootstrap/js/dist/toast.js.map +1 -0
- data/_sass/bootstrap/js/dist/tooltip.js +745 -0
- data/_sass/bootstrap/js/dist/tooltip.js.map +1 -0
- data/_sass/bootstrap/js/dist/util.js +168 -0
- data/_sass/bootstrap/js/dist/util.js.map +1 -0
- data/_sass/bootstrap/js/src/alert.js +179 -0
- data/_sass/bootstrap/js/src/button.js +171 -0
- data/_sass/bootstrap/js/src/carousel.js +604 -0
- data/_sass/bootstrap/js/src/collapse.js +402 -0
- data/_sass/bootstrap/js/src/dropdown.js +538 -0
- data/_sass/bootstrap/js/src/index.js +52 -0
- data/_sass/bootstrap/js/src/modal.js +587 -0
- data/_sass/bootstrap/js/src/popover.js +184 -0
- data/_sass/bootstrap/js/src/scrollspy.js +326 -0
- data/_sass/bootstrap/js/src/tab.js +257 -0
- data/_sass/bootstrap/js/src/toast.js +223 -0
- data/_sass/bootstrap/js/src/tooltip.js +735 -0
- data/_sass/bootstrap/js/src/util.js +173 -0
- data/_sass/bootstrap/js/tests/README.md +69 -0
- data/_sass/bootstrap/js/tests/browsers.js +82 -0
- data/_sass/bootstrap/js/tests/index.html +145 -0
- data/_sass/bootstrap/js/tests/integration/bundle.js +8 -0
- data/_sass/bootstrap/js/tests/integration/index.html +66 -0
- data/_sass/bootstrap/js/tests/integration/rollup.bundle.js +20 -0
- data/_sass/bootstrap/js/tests/karma.conf.js +145 -0
- data/_sass/bootstrap/js/tests/unit/.eslintrc.json +40 -0
- data/_sass/bootstrap/js/tests/unit/alert.js +123 -0
- data/_sass/bootstrap/js/tests/unit/button.js +222 -0
- data/_sass/bootstrap/js/tests/unit/carousel.js +1273 -0
- data/_sass/bootstrap/js/tests/unit/collapse.js +892 -0
- data/_sass/bootstrap/js/tests/unit/dropdown.js +1364 -0
- data/_sass/bootstrap/js/tests/unit/modal.js +796 -0
- data/_sass/bootstrap/js/tests/unit/popover.js +471 -0
- data/_sass/bootstrap/js/tests/unit/scrollspy.js +728 -0
- data/_sass/bootstrap/js/tests/unit/tab.js +462 -0
- data/_sass/bootstrap/js/tests/unit/toast.js +239 -0
- data/_sass/bootstrap/js/tests/unit/tooltip.js +1072 -0
- data/_sass/bootstrap/js/tests/unit/util.js +164 -0
- data/_sass/bootstrap/js/tests/visual/alert.html +58 -0
- data/_sass/bootstrap/js/tests/visual/button.html +51 -0
- data/_sass/bootstrap/js/tests/visual/carousel.html +66 -0
- data/_sass/bootstrap/js/tests/visual/collapse.html +78 -0
- data/_sass/bootstrap/js/tests/visual/dropdown.html +212 -0
- data/_sass/bootstrap/js/tests/visual/modal.html +268 -0
- data/_sass/bootstrap/js/tests/visual/popover.html +46 -0
- data/_sass/bootstrap/js/tests/visual/scrollspy.html +95 -0
- data/_sass/bootstrap/js/tests/visual/tab.html +234 -0
- data/_sass/bootstrap/js/tests/visual/toast.html +72 -0
- data/_sass/bootstrap/js/tests/visual/tooltip.html +106 -0
- data/_sass/bootstrap/scss/_alert.scss +51 -0
- data/_sass/bootstrap/scss/_badge.scss +53 -0
- data/_sass/bootstrap/scss/_breadcrumb.scss +41 -0
- data/_sass/bootstrap/scss/_button-group.scss +163 -0
- data/_sass/bootstrap/scss/_buttons.scss +140 -0
- data/_sass/bootstrap/scss/_card.scss +310 -0
- data/_sass/bootstrap/scss/_carousel.scss +198 -0
- data/_sass/bootstrap/scss/_close.scss +44 -0
- data/_sass/bootstrap/scss/_code.scss +48 -0
- data/_sass/bootstrap/scss/_custom-forms.scss +507 -0
- data/_sass/bootstrap/scss/_dropdown.scss +191 -0
- data/_sass/bootstrap/scss/_forms.scss +334 -0
- data/_sass/bootstrap/scss/_functions.scss +86 -0
- data/_sass/bootstrap/scss/_grid.scss +52 -0
- data/_sass/bootstrap/scss/_images.scss +42 -0
- data/_sass/bootstrap/scss/_input-group.scss +193 -0
- data/_sass/bootstrap/scss/_jumbotron.scss +16 -0
- data/_sass/bootstrap/scss/_list-group.scss +121 -0
- data/_sass/bootstrap/scss/_media.scss +8 -0
- data/_sass/bootstrap/scss/_mixins.scss +41 -0
- data/_sass/bootstrap/scss/_modal.scss +186 -0
- data/_sass/bootstrap/scss/_nav.scss +120 -0
- data/_sass/bootstrap/scss/_navbar.scss +299 -0
- data/_sass/bootstrap/scss/_pagination.scss +78 -0
- data/_sass/bootstrap/scss/_popover.scss +183 -0
- data/_sass/bootstrap/scss/_print.scss +141 -0
- data/_sass/bootstrap/scss/_progress.scss +34 -0
- data/_sass/bootstrap/scss/_reboot.scss +462 -0
- data/_sass/bootstrap/scss/_root.scss +19 -0
- data/_sass/bootstrap/scss/_spinners.scss +53 -0
- data/_sass/bootstrap/scss/_tables.scss +187 -0
- data/_sass/bootstrap/scss/_toasts.scss +43 -0
- data/_sass/bootstrap/scss/_tooltip.scss +115 -0
- data/_sass/bootstrap/scss/_transitions.scss +22 -0
- data/_sass/bootstrap/scss/_type.scss +125 -0
- data/_sass/bootstrap/scss/_utilities.scss +16 -0
- data/_sass/bootstrap/scss/_variables.scss +1091 -0
- data/_sass/bootstrap/scss/bootstrap-grid.scss +29 -0
- data/_sass/bootstrap/scss/bootstrap-reboot.scss +12 -0
- data/_sass/bootstrap/scss/bootstrap.scss +44 -0
- data/_sass/bootstrap/scss/mixins/_alert.scss +13 -0
- data/_sass/bootstrap/scss/mixins/_background-variant.scss +21 -0
- data/_sass/bootstrap/scss/mixins/_badge.scss +11 -0
- data/_sass/bootstrap/scss/mixins/_border-radius.scss +35 -0
- data/_sass/bootstrap/scss/mixins/_box-shadow.scss +5 -0
- data/_sass/bootstrap/scss/mixins/_breakpoints.scss +123 -0
- data/_sass/bootstrap/scss/mixins/_buttons.scss +111 -0
- data/_sass/bootstrap/scss/mixins/_caret.scss +62 -0
- data/_sass/bootstrap/scss/mixins/_clearfix.scss +7 -0
- data/_sass/bootstrap/scss/mixins/_float.scss +11 -0
- data/_sass/bootstrap/scss/mixins/_forms.scss +198 -0
- data/_sass/bootstrap/scss/mixins/_gradients.scss +45 -0
- data/_sass/bootstrap/scss/mixins/_grid-framework.scss +66 -0
- data/_sass/bootstrap/scss/mixins/_grid.scss +51 -0
- data/_sass/bootstrap/scss/mixins/_hover.scss +37 -0
- data/_sass/bootstrap/scss/mixins/_image.scss +36 -0
- data/_sass/bootstrap/scss/mixins/_list-group.scss +21 -0
- data/_sass/bootstrap/scss/mixins/_lists.scss +7 -0
- data/_sass/bootstrap/scss/mixins/_nav-divider.scss +10 -0
- data/_sass/bootstrap/scss/mixins/_pagination.scss +22 -0
- data/_sass/bootstrap/scss/mixins/_reset-text.scss +17 -0
- data/_sass/bootstrap/scss/mixins/_resize.scss +6 -0
- data/_sass/bootstrap/scss/mixins/_screen-reader.scss +33 -0
- data/_sass/bootstrap/scss/mixins/_size.scss +6 -0
- data/_sass/bootstrap/scss/mixins/_table-row.scss +39 -0
- data/_sass/bootstrap/scss/mixins/_text-emphasis.scss +14 -0
- data/_sass/bootstrap/scss/mixins/_text-hide.scss +13 -0
- data/_sass/bootstrap/scss/mixins/_text-truncate.scss +8 -0
- data/_sass/bootstrap/scss/mixins/_transition.scss +16 -0
- data/_sass/bootstrap/scss/mixins/_visibility.scss +7 -0
- data/_sass/bootstrap/scss/utilities/_align.scss +8 -0
- data/_sass/bootstrap/scss/utilities/_background.scss +19 -0
- data/_sass/bootstrap/scss/utilities/_borders.scss +63 -0
- data/_sass/bootstrap/scss/utilities/_clearfix.scss +3 -0
- data/_sass/bootstrap/scss/utilities/_display.scss +38 -0
- data/_sass/bootstrap/scss/utilities/_embed.scss +39 -0
- data/_sass/bootstrap/scss/utilities/_flex.scss +51 -0
- data/_sass/bootstrap/scss/utilities/_float.scss +9 -0
- data/_sass/bootstrap/scss/utilities/_overflow.scss +5 -0
- data/_sass/bootstrap/scss/utilities/_position.scss +32 -0
- data/_sass/bootstrap/scss/utilities/_screenreaders.scss +11 -0
- data/_sass/bootstrap/scss/utilities/_shadows.scss +6 -0
- data/_sass/bootstrap/scss/utilities/_sizing.scss +20 -0
- data/_sass/bootstrap/scss/utilities/_spacing.scss +73 -0
- data/_sass/bootstrap/scss/utilities/_text.scss +67 -0
- data/_sass/bootstrap/scss/utilities/_visibility.scss +11 -0
- data/_sass/custom.scss +1 -0
- data/assets/css/style.scss +65 -0
- data/assets/images/vertx-square.svg +1 -0
- metadata +248 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"modal.js","sources":["../src/modal.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.2.1): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst VERSION = '4.2.1'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\nconst Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n}\n\nconst DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n DIALOG : '.modal-dialog',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',\n STICKY_CONTENT : '.sticky-top'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal {\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = element.querySelector(Selector.DIALOG)\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollbarWidth = 0\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n this._isTransitioning = true\n }\n\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (transition) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.SHOW)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(transitionDuration)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n [window, this._element, this._dialog]\n .forEach((htmlElement) => $(htmlElement).off(EVENT_KEY))\n\n /**\n * `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `Event.CLICK_DATA_API` event that should remain\n */\n $(document).off(Event.FOCUSIN)\n\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._isTransitioning = null\n this._scrollbarWidth = null\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.scrollTop = 0\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n this._isTransitioning = false\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._dialog)\n\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // Guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n $(this._element).has(event.target).length === 0) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n event.preventDefault()\n this.hide()\n }\n })\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this.handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._isTransitioning = false\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE)\n ? ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n this._backdrop.classList.add(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (animate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.SHOW)\n\n if (!callback) {\n return\n }\n\n if (!animate) {\n callback()\n return\n }\n\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.SHOW)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else {\n callbackRemove()\n }\n } else if (callback) {\n callback()\n }\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n const rect = document.body.getBoundingClientRect()\n this._isBodyOverflowing = rect.left + rect.right < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n if (this._isBodyOverflowing) {\n // Note: DOMNode.style.paddingRight returns the actual value or '' if not set\n // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n const stickyContent = [].slice.call(document.querySelectorAll(Selector.STICKY_CONTENT))\n\n // Adjust fixed content padding\n $(fixedContent).each((index, element) => {\n const actualPadding = element.style.paddingRight\n const calculatedPadding = $(element).css('padding-right')\n $(element)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n })\n\n // Adjust sticky content margin\n $(stickyContent).each((index, element) => {\n const actualMargin = element.style.marginRight\n const calculatedMargin = $(element).css('margin-right')\n $(element)\n .data('margin-right', actualMargin)\n .css('margin-right', `${parseFloat(calculatedMargin) - this._scrollbarWidth}px`)\n })\n\n // Adjust body padding\n const actualPadding = document.body.style.paddingRight\n const calculatedPadding = $(document.body).css('padding-right')\n $(document.body)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n }\n\n $(document.body).addClass(ClassName.OPEN)\n }\n\n _resetScrollbar() {\n // Restore fixed content padding\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n $(fixedContent).each((index, element) => {\n const padding = $(element).data('padding-right')\n $(element).removeData('padding-right')\n element.style.paddingRight = padding ? padding : ''\n })\n\n // Restore sticky content\n const elements = [].slice.call(document.querySelectorAll(`${Selector.STICKY_CONTENT}`))\n $(elements).each((index, element) => {\n const margin = $(element).data('margin-right')\n if (typeof margin !== 'undefined') {\n $(element).css('margin-right', margin).removeData('margin-right')\n }\n })\n\n // Restore body padding\n const padding = $(document.body).data('padding-right')\n $(document.body).removeData('padding-right')\n document.body.style.paddingRight = padding ? padding : ''\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n // Static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = {\n ...Default,\n ...$(this).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = document.querySelector(selector)\n }\n\n const config = $(target).data(DATA_KEY)\n ? 'toggle' : {\n ...$(target).data(),\n ...$(this).data()\n }\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // Only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Modal._jQueryInterface\n$.fn[NAME].Constructor = Modal\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n}\n\nexport default Modal\n"],"names":["NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","$","fn","ESCAPE_KEYCODE","Default","backdrop","keyboard","focus","show","DefaultType","Event","HIDE","HIDDEN","SHOW","SHOWN","FOCUSIN","RESIZE","CLICK_DISMISS","KEYDOWN_DISMISS","MOUSEUP_DISMISS","MOUSEDOWN_DISMISS","CLICK_DATA_API","ClassName","SCROLLBAR_MEASURER","BACKDROP","OPEN","FADE","Selector","DIALOG","DATA_TOGGLE","DATA_DISMISS","FIXED_CONTENT","STICKY_CONTENT","Modal","element","config","_config","_getConfig","_element","_dialog","querySelector","_backdrop","_isShown","_isBodyOverflowing","_ignoreBackdropClick","_isTransitioning","_scrollbarWidth","toggle","relatedTarget","hide","hasClass","showEvent","trigger","isDefaultPrevented","_checkScrollbar","_setScrollbar","_adjustDialog","_setEscapeEvent","_setResizeEvent","on","event","one","target","is","_showBackdrop","_showElement","preventDefault","hideEvent","transition","document","off","removeClass","transitionDuration","Util","getTransitionDurationFromElement","TRANSITION_END","_hideModal","emulateTransitionEnd","dispose","window","forEach","htmlElement","removeData","handleUpdate","typeCheckConfig","parentNode","nodeType","Node","ELEMENT_NODE","body","appendChild","style","display","removeAttribute","setAttribute","scrollTop","reflow","addClass","_enforceFocus","shownEvent","transitionComplete","has","length","which","_resetAdjustments","_resetScrollbar","_removeBackdrop","remove","callback","animate","createElement","className","classList","add","appendTo","currentTarget","backdropTransitionDuration","callbackRemove","isModalOverflowing","scrollHeight","documentElement","clientHeight","paddingLeft","paddingRight","rect","getBoundingClientRect","left","right","innerWidth","_getScrollbarWidth","fixedContent","slice","call","querySelectorAll","stickyContent","each","index","actualPadding","calculatedPadding","css","data","parseFloat","actualMargin","marginRight","calculatedMargin","padding","elements","margin","scrollDiv","scrollbarWidth","width","clientWidth","removeChild","_jQueryInterface","TypeError","selector","getSelectorFromElement","tagName","$target","Constructor","noConflict"],"mappings":"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"}
|
@@ -0,0 +1,261 @@
|
|
1
|
+
/*!
|
2
|
+
* Bootstrap popover.js v4.2.1 (https://getbootstrap.com/)
|
3
|
+
* Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
5
|
+
*/
|
6
|
+
(function (global, factory) {
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./tooltip.js')) :
|
8
|
+
typeof define === 'function' && define.amd ? define(['jquery', './tooltip.js'], factory) :
|
9
|
+
(global.Popover = factory(global.jQuery,global.Tooltip));
|
10
|
+
}(this, (function ($,Tooltip) { 'use strict';
|
11
|
+
|
12
|
+
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
13
|
+
Tooltip = Tooltip && Tooltip.hasOwnProperty('default') ? Tooltip['default'] : Tooltip;
|
14
|
+
|
15
|
+
function _defineProperties(target, props) {
|
16
|
+
for (var i = 0; i < props.length; i++) {
|
17
|
+
var descriptor = props[i];
|
18
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
19
|
+
descriptor.configurable = true;
|
20
|
+
if ("value" in descriptor) descriptor.writable = true;
|
21
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
|
25
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
26
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
27
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
28
|
+
return Constructor;
|
29
|
+
}
|
30
|
+
|
31
|
+
function _defineProperty(obj, key, value) {
|
32
|
+
if (key in obj) {
|
33
|
+
Object.defineProperty(obj, key, {
|
34
|
+
value: value,
|
35
|
+
enumerable: true,
|
36
|
+
configurable: true,
|
37
|
+
writable: true
|
38
|
+
});
|
39
|
+
} else {
|
40
|
+
obj[key] = value;
|
41
|
+
}
|
42
|
+
|
43
|
+
return obj;
|
44
|
+
}
|
45
|
+
|
46
|
+
function _objectSpread(target) {
|
47
|
+
for (var i = 1; i < arguments.length; i++) {
|
48
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
49
|
+
var ownKeys = Object.keys(source);
|
50
|
+
|
51
|
+
if (typeof Object.getOwnPropertySymbols === 'function') {
|
52
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
53
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
54
|
+
}));
|
55
|
+
}
|
56
|
+
|
57
|
+
ownKeys.forEach(function (key) {
|
58
|
+
_defineProperty(target, key, source[key]);
|
59
|
+
});
|
60
|
+
}
|
61
|
+
|
62
|
+
return target;
|
63
|
+
}
|
64
|
+
|
65
|
+
function _inheritsLoose(subClass, superClass) {
|
66
|
+
subClass.prototype = Object.create(superClass.prototype);
|
67
|
+
subClass.prototype.constructor = subClass;
|
68
|
+
subClass.__proto__ = superClass;
|
69
|
+
}
|
70
|
+
|
71
|
+
/**
|
72
|
+
* ------------------------------------------------------------------------
|
73
|
+
* Constants
|
74
|
+
* ------------------------------------------------------------------------
|
75
|
+
*/
|
76
|
+
|
77
|
+
var NAME = 'popover';
|
78
|
+
var VERSION = '4.2.1';
|
79
|
+
var DATA_KEY = 'bs.popover';
|
80
|
+
var EVENT_KEY = "." + DATA_KEY;
|
81
|
+
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
82
|
+
var CLASS_PREFIX = 'bs-popover';
|
83
|
+
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
|
84
|
+
|
85
|
+
var Default = _objectSpread({}, Tooltip.Default, {
|
86
|
+
placement: 'right',
|
87
|
+
trigger: 'click',
|
88
|
+
content: '',
|
89
|
+
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
|
90
|
+
});
|
91
|
+
|
92
|
+
var DefaultType = _objectSpread({}, Tooltip.DefaultType, {
|
93
|
+
content: '(string|element|function)'
|
94
|
+
});
|
95
|
+
|
96
|
+
var ClassName = {
|
97
|
+
FADE: 'fade',
|
98
|
+
SHOW: 'show'
|
99
|
+
};
|
100
|
+
var Selector = {
|
101
|
+
TITLE: '.popover-header',
|
102
|
+
CONTENT: '.popover-body'
|
103
|
+
};
|
104
|
+
var Event = {
|
105
|
+
HIDE: "hide" + EVENT_KEY,
|
106
|
+
HIDDEN: "hidden" + EVENT_KEY,
|
107
|
+
SHOW: "show" + EVENT_KEY,
|
108
|
+
SHOWN: "shown" + EVENT_KEY,
|
109
|
+
INSERTED: "inserted" + EVENT_KEY,
|
110
|
+
CLICK: "click" + EVENT_KEY,
|
111
|
+
FOCUSIN: "focusin" + EVENT_KEY,
|
112
|
+
FOCUSOUT: "focusout" + EVENT_KEY,
|
113
|
+
MOUSEENTER: "mouseenter" + EVENT_KEY,
|
114
|
+
MOUSELEAVE: "mouseleave" + EVENT_KEY
|
115
|
+
/**
|
116
|
+
* ------------------------------------------------------------------------
|
117
|
+
* Class Definition
|
118
|
+
* ------------------------------------------------------------------------
|
119
|
+
*/
|
120
|
+
|
121
|
+
};
|
122
|
+
|
123
|
+
var Popover =
|
124
|
+
/*#__PURE__*/
|
125
|
+
function (_Tooltip) {
|
126
|
+
_inheritsLoose(Popover, _Tooltip);
|
127
|
+
|
128
|
+
function Popover() {
|
129
|
+
return _Tooltip.apply(this, arguments) || this;
|
130
|
+
}
|
131
|
+
|
132
|
+
var _proto = Popover.prototype;
|
133
|
+
|
134
|
+
// Overrides
|
135
|
+
_proto.isWithContent = function isWithContent() {
|
136
|
+
return this.getTitle() || this._getContent();
|
137
|
+
};
|
138
|
+
|
139
|
+
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
|
140
|
+
$(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
|
141
|
+
};
|
142
|
+
|
143
|
+
_proto.getTipElement = function getTipElement() {
|
144
|
+
this.tip = this.tip || $(this.config.template)[0];
|
145
|
+
return this.tip;
|
146
|
+
};
|
147
|
+
|
148
|
+
_proto.setContent = function setContent() {
|
149
|
+
var $tip = $(this.getTipElement()); // We use append for html objects to maintain js events
|
150
|
+
|
151
|
+
this.setElementContent($tip.find(Selector.TITLE), this.getTitle());
|
152
|
+
|
153
|
+
var content = this._getContent();
|
154
|
+
|
155
|
+
if (typeof content === 'function') {
|
156
|
+
content = content.call(this.element);
|
157
|
+
}
|
158
|
+
|
159
|
+
this.setElementContent($tip.find(Selector.CONTENT), content);
|
160
|
+
$tip.removeClass(ClassName.FADE + " " + ClassName.SHOW);
|
161
|
+
}; // Private
|
162
|
+
|
163
|
+
|
164
|
+
_proto._getContent = function _getContent() {
|
165
|
+
return this.element.getAttribute('data-content') || this.config.content;
|
166
|
+
};
|
167
|
+
|
168
|
+
_proto._cleanTipClass = function _cleanTipClass() {
|
169
|
+
var $tip = $(this.getTipElement());
|
170
|
+
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
171
|
+
|
172
|
+
if (tabClass !== null && tabClass.length > 0) {
|
173
|
+
$tip.removeClass(tabClass.join(''));
|
174
|
+
}
|
175
|
+
}; // Static
|
176
|
+
|
177
|
+
|
178
|
+
Popover._jQueryInterface = function _jQueryInterface(config) {
|
179
|
+
return this.each(function () {
|
180
|
+
var data = $(this).data(DATA_KEY);
|
181
|
+
|
182
|
+
var _config = typeof config === 'object' ? config : null;
|
183
|
+
|
184
|
+
if (!data && /dispose|hide/.test(config)) {
|
185
|
+
return;
|
186
|
+
}
|
187
|
+
|
188
|
+
if (!data) {
|
189
|
+
data = new Popover(this, _config);
|
190
|
+
$(this).data(DATA_KEY, data);
|
191
|
+
}
|
192
|
+
|
193
|
+
if (typeof config === 'string') {
|
194
|
+
if (typeof data[config] === 'undefined') {
|
195
|
+
throw new TypeError("No method named \"" + config + "\"");
|
196
|
+
}
|
197
|
+
|
198
|
+
data[config]();
|
199
|
+
}
|
200
|
+
});
|
201
|
+
};
|
202
|
+
|
203
|
+
_createClass(Popover, null, [{
|
204
|
+
key: "VERSION",
|
205
|
+
// Getters
|
206
|
+
get: function get() {
|
207
|
+
return VERSION;
|
208
|
+
}
|
209
|
+
}, {
|
210
|
+
key: "Default",
|
211
|
+
get: function get() {
|
212
|
+
return Default;
|
213
|
+
}
|
214
|
+
}, {
|
215
|
+
key: "NAME",
|
216
|
+
get: function get() {
|
217
|
+
return NAME;
|
218
|
+
}
|
219
|
+
}, {
|
220
|
+
key: "DATA_KEY",
|
221
|
+
get: function get() {
|
222
|
+
return DATA_KEY;
|
223
|
+
}
|
224
|
+
}, {
|
225
|
+
key: "Event",
|
226
|
+
get: function get() {
|
227
|
+
return Event;
|
228
|
+
}
|
229
|
+
}, {
|
230
|
+
key: "EVENT_KEY",
|
231
|
+
get: function get() {
|
232
|
+
return EVENT_KEY;
|
233
|
+
}
|
234
|
+
}, {
|
235
|
+
key: "DefaultType",
|
236
|
+
get: function get() {
|
237
|
+
return DefaultType;
|
238
|
+
}
|
239
|
+
}]);
|
240
|
+
|
241
|
+
return Popover;
|
242
|
+
}(Tooltip);
|
243
|
+
/**
|
244
|
+
* ------------------------------------------------------------------------
|
245
|
+
* jQuery
|
246
|
+
* ------------------------------------------------------------------------
|
247
|
+
*/
|
248
|
+
|
249
|
+
|
250
|
+
$.fn[NAME] = Popover._jQueryInterface;
|
251
|
+
$.fn[NAME].Constructor = Popover;
|
252
|
+
|
253
|
+
$.fn[NAME].noConflict = function () {
|
254
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
255
|
+
return Popover._jQueryInterface;
|
256
|
+
};
|
257
|
+
|
258
|
+
return Popover;
|
259
|
+
|
260
|
+
})));
|
261
|
+
//# sourceMappingURL=popover.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"popover.js","sources":["../src/popover.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.2.1): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst VERSION = '4.2.1'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement : 'right',\n trigger : 'click',\n content : '',\n template : '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div></div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content : '(string|element|function)'\n}\n\nconst ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n TITLE : '.popover-header',\n CONTENT : '.popover-body'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const $tip = $(this.getTipElement())\n\n // We use append for html objects to maintain js events\n this.setElementContent($tip.find(Selector.TITLE), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this.element)\n }\n this.setElementContent($tip.find(Selector.CONTENT), content)\n\n $tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n // Private\n\n _getContent() {\n return this.element.getAttribute('data-content') ||\n this.config.content\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Popover._jQueryInterface\n$.fn[NAME].Constructor = Popover\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Popover._jQueryInterface\n}\n\nexport default Popover\n"],"names":["NAME","VERSION","DATA_KEY","EVENT_KEY","JQUERY_NO_CONFLICT","$","fn","CLASS_PREFIX","BSCLS_PREFIX_REGEX","RegExp","Default","Tooltip","placement","trigger","content","template","DefaultType","ClassName","FADE","SHOW","Selector","TITLE","CONTENT","Event","HIDE","HIDDEN","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","Popover","isWithContent","getTitle","_getContent","addAttachmentClass","attachment","getTipElement","addClass","tip","config","setContent","$tip","setElementContent","find","call","element","removeClass","getAttribute","_cleanTipClass","tabClass","attr","match","length","join","_jQueryInterface","each","data","_config","test","TypeError","Constructor","noConflict"],"mappings":"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"}
|
@@ -0,0 +1,375 @@
|
|
1
|
+
/*!
|
2
|
+
* Bootstrap scrollspy.js v4.2.1 (https://getbootstrap.com/)
|
3
|
+
* Copyright 2011-2018 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
5
|
+
*/
|
6
|
+
(function (global, factory) {
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) :
|
8
|
+
typeof define === 'function' && define.amd ? define(['jquery', './util.js'], factory) :
|
9
|
+
(global.ScrollSpy = factory(global.jQuery,global.Util));
|
10
|
+
}(this, (function ($,Util) { 'use strict';
|
11
|
+
|
12
|
+
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
|
13
|
+
Util = Util && Util.hasOwnProperty('default') ? Util['default'] : Util;
|
14
|
+
|
15
|
+
function _defineProperties(target, props) {
|
16
|
+
for (var i = 0; i < props.length; i++) {
|
17
|
+
var descriptor = props[i];
|
18
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
19
|
+
descriptor.configurable = true;
|
20
|
+
if ("value" in descriptor) descriptor.writable = true;
|
21
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
|
25
|
+
function _createClass(Constructor, protoProps, staticProps) {
|
26
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
27
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
28
|
+
return Constructor;
|
29
|
+
}
|
30
|
+
|
31
|
+
function _defineProperty(obj, key, value) {
|
32
|
+
if (key in obj) {
|
33
|
+
Object.defineProperty(obj, key, {
|
34
|
+
value: value,
|
35
|
+
enumerable: true,
|
36
|
+
configurable: true,
|
37
|
+
writable: true
|
38
|
+
});
|
39
|
+
} else {
|
40
|
+
obj[key] = value;
|
41
|
+
}
|
42
|
+
|
43
|
+
return obj;
|
44
|
+
}
|
45
|
+
|
46
|
+
function _objectSpread(target) {
|
47
|
+
for (var i = 1; i < arguments.length; i++) {
|
48
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
49
|
+
var ownKeys = Object.keys(source);
|
50
|
+
|
51
|
+
if (typeof Object.getOwnPropertySymbols === 'function') {
|
52
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
|
53
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
54
|
+
}));
|
55
|
+
}
|
56
|
+
|
57
|
+
ownKeys.forEach(function (key) {
|
58
|
+
_defineProperty(target, key, source[key]);
|
59
|
+
});
|
60
|
+
}
|
61
|
+
|
62
|
+
return target;
|
63
|
+
}
|
64
|
+
|
65
|
+
/**
|
66
|
+
* ------------------------------------------------------------------------
|
67
|
+
* Constants
|
68
|
+
* ------------------------------------------------------------------------
|
69
|
+
*/
|
70
|
+
|
71
|
+
var NAME = 'scrollspy';
|
72
|
+
var VERSION = '4.2.1';
|
73
|
+
var DATA_KEY = 'bs.scrollspy';
|
74
|
+
var EVENT_KEY = "." + DATA_KEY;
|
75
|
+
var DATA_API_KEY = '.data-api';
|
76
|
+
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
77
|
+
var Default = {
|
78
|
+
offset: 10,
|
79
|
+
method: 'auto',
|
80
|
+
target: ''
|
81
|
+
};
|
82
|
+
var DefaultType = {
|
83
|
+
offset: 'number',
|
84
|
+
method: 'string',
|
85
|
+
target: '(string|element)'
|
86
|
+
};
|
87
|
+
var Event = {
|
88
|
+
ACTIVATE: "activate" + EVENT_KEY,
|
89
|
+
SCROLL: "scroll" + EVENT_KEY,
|
90
|
+
LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY
|
91
|
+
};
|
92
|
+
var ClassName = {
|
93
|
+
DROPDOWN_ITEM: 'dropdown-item',
|
94
|
+
DROPDOWN_MENU: 'dropdown-menu',
|
95
|
+
ACTIVE: 'active'
|
96
|
+
};
|
97
|
+
var Selector = {
|
98
|
+
DATA_SPY: '[data-spy="scroll"]',
|
99
|
+
ACTIVE: '.active',
|
100
|
+
NAV_LIST_GROUP: '.nav, .list-group',
|
101
|
+
NAV_LINKS: '.nav-link',
|
102
|
+
NAV_ITEMS: '.nav-item',
|
103
|
+
LIST_ITEMS: '.list-group-item',
|
104
|
+
DROPDOWN: '.dropdown',
|
105
|
+
DROPDOWN_ITEMS: '.dropdown-item',
|
106
|
+
DROPDOWN_TOGGLE: '.dropdown-toggle'
|
107
|
+
};
|
108
|
+
var OffsetMethod = {
|
109
|
+
OFFSET: 'offset',
|
110
|
+
POSITION: 'position'
|
111
|
+
/**
|
112
|
+
* ------------------------------------------------------------------------
|
113
|
+
* Class Definition
|
114
|
+
* ------------------------------------------------------------------------
|
115
|
+
*/
|
116
|
+
|
117
|
+
};
|
118
|
+
|
119
|
+
var ScrollSpy =
|
120
|
+
/*#__PURE__*/
|
121
|
+
function () {
|
122
|
+
function ScrollSpy(element, config) {
|
123
|
+
var _this = this;
|
124
|
+
|
125
|
+
this._element = element;
|
126
|
+
this._scrollElement = element.tagName === 'BODY' ? window : element;
|
127
|
+
this._config = this._getConfig(config);
|
128
|
+
this._selector = this._config.target + " " + Selector.NAV_LINKS + "," + (this._config.target + " " + Selector.LIST_ITEMS + ",") + (this._config.target + " " + Selector.DROPDOWN_ITEMS);
|
129
|
+
this._offsets = [];
|
130
|
+
this._targets = [];
|
131
|
+
this._activeTarget = null;
|
132
|
+
this._scrollHeight = 0;
|
133
|
+
$(this._scrollElement).on(Event.SCROLL, function (event) {
|
134
|
+
return _this._process(event);
|
135
|
+
});
|
136
|
+
this.refresh();
|
137
|
+
|
138
|
+
this._process();
|
139
|
+
} // Getters
|
140
|
+
|
141
|
+
|
142
|
+
var _proto = ScrollSpy.prototype;
|
143
|
+
|
144
|
+
// Public
|
145
|
+
_proto.refresh = function refresh() {
|
146
|
+
var _this2 = this;
|
147
|
+
|
148
|
+
var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION;
|
149
|
+
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
|
150
|
+
var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
|
151
|
+
this._offsets = [];
|
152
|
+
this._targets = [];
|
153
|
+
this._scrollHeight = this._getScrollHeight();
|
154
|
+
var targets = [].slice.call(document.querySelectorAll(this._selector));
|
155
|
+
targets.map(function (element) {
|
156
|
+
var target;
|
157
|
+
var targetSelector = Util.getSelectorFromElement(element);
|
158
|
+
|
159
|
+
if (targetSelector) {
|
160
|
+
target = document.querySelector(targetSelector);
|
161
|
+
}
|
162
|
+
|
163
|
+
if (target) {
|
164
|
+
var targetBCR = target.getBoundingClientRect();
|
165
|
+
|
166
|
+
if (targetBCR.width || targetBCR.height) {
|
167
|
+
// TODO (fat): remove sketch reliance on jQuery position/offset
|
168
|
+
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
|
169
|
+
}
|
170
|
+
}
|
171
|
+
|
172
|
+
return null;
|
173
|
+
}).filter(function (item) {
|
174
|
+
return item;
|
175
|
+
}).sort(function (a, b) {
|
176
|
+
return a[0] - b[0];
|
177
|
+
}).forEach(function (item) {
|
178
|
+
_this2._offsets.push(item[0]);
|
179
|
+
|
180
|
+
_this2._targets.push(item[1]);
|
181
|
+
});
|
182
|
+
};
|
183
|
+
|
184
|
+
_proto.dispose = function dispose() {
|
185
|
+
$.removeData(this._element, DATA_KEY);
|
186
|
+
$(this._scrollElement).off(EVENT_KEY);
|
187
|
+
this._element = null;
|
188
|
+
this._scrollElement = null;
|
189
|
+
this._config = null;
|
190
|
+
this._selector = null;
|
191
|
+
this._offsets = null;
|
192
|
+
this._targets = null;
|
193
|
+
this._activeTarget = null;
|
194
|
+
this._scrollHeight = null;
|
195
|
+
}; // Private
|
196
|
+
|
197
|
+
|
198
|
+
_proto._getConfig = function _getConfig(config) {
|
199
|
+
config = _objectSpread({}, Default, typeof config === 'object' && config ? config : {});
|
200
|
+
|
201
|
+
if (typeof config.target !== 'string') {
|
202
|
+
var id = $(config.target).attr('id');
|
203
|
+
|
204
|
+
if (!id) {
|
205
|
+
id = Util.getUID(NAME);
|
206
|
+
$(config.target).attr('id', id);
|
207
|
+
}
|
208
|
+
|
209
|
+
config.target = "#" + id;
|
210
|
+
}
|
211
|
+
|
212
|
+
Util.typeCheckConfig(NAME, config, DefaultType);
|
213
|
+
return config;
|
214
|
+
};
|
215
|
+
|
216
|
+
_proto._getScrollTop = function _getScrollTop() {
|
217
|
+
return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
|
218
|
+
};
|
219
|
+
|
220
|
+
_proto._getScrollHeight = function _getScrollHeight() {
|
221
|
+
return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
|
222
|
+
};
|
223
|
+
|
224
|
+
_proto._getOffsetHeight = function _getOffsetHeight() {
|
225
|
+
return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height;
|
226
|
+
};
|
227
|
+
|
228
|
+
_proto._process = function _process() {
|
229
|
+
var scrollTop = this._getScrollTop() + this._config.offset;
|
230
|
+
|
231
|
+
var scrollHeight = this._getScrollHeight();
|
232
|
+
|
233
|
+
var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight();
|
234
|
+
|
235
|
+
if (this._scrollHeight !== scrollHeight) {
|
236
|
+
this.refresh();
|
237
|
+
}
|
238
|
+
|
239
|
+
if (scrollTop >= maxScroll) {
|
240
|
+
var target = this._targets[this._targets.length - 1];
|
241
|
+
|
242
|
+
if (this._activeTarget !== target) {
|
243
|
+
this._activate(target);
|
244
|
+
}
|
245
|
+
|
246
|
+
return;
|
247
|
+
}
|
248
|
+
|
249
|
+
if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {
|
250
|
+
this._activeTarget = null;
|
251
|
+
|
252
|
+
this._clear();
|
253
|
+
|
254
|
+
return;
|
255
|
+
}
|
256
|
+
|
257
|
+
var offsetLength = this._offsets.length;
|
258
|
+
|
259
|
+
for (var i = offsetLength; i--;) {
|
260
|
+
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
|
261
|
+
|
262
|
+
if (isActiveTarget) {
|
263
|
+
this._activate(this._targets[i]);
|
264
|
+
}
|
265
|
+
}
|
266
|
+
};
|
267
|
+
|
268
|
+
_proto._activate = function _activate(target) {
|
269
|
+
this._activeTarget = target;
|
270
|
+
|
271
|
+
this._clear();
|
272
|
+
|
273
|
+
var queries = this._selector.split(',').map(function (selector) {
|
274
|
+
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
|
275
|
+
});
|
276
|
+
|
277
|
+
var $link = $([].slice.call(document.querySelectorAll(queries.join(','))));
|
278
|
+
|
279
|
+
if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {
|
280
|
+
$link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
|
281
|
+
$link.addClass(ClassName.ACTIVE);
|
282
|
+
} else {
|
283
|
+
// Set triggered link as active
|
284
|
+
$link.addClass(ClassName.ACTIVE); // Set triggered links parents as active
|
285
|
+
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
286
|
+
|
287
|
+
$link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_LINKS + ", " + Selector.LIST_ITEMS).addClass(ClassName.ACTIVE); // Handle special case when .nav-link is inside .nav-item
|
288
|
+
|
289
|
+
$link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_ITEMS).children(Selector.NAV_LINKS).addClass(ClassName.ACTIVE);
|
290
|
+
}
|
291
|
+
|
292
|
+
$(this._scrollElement).trigger(Event.ACTIVATE, {
|
293
|
+
relatedTarget: target
|
294
|
+
});
|
295
|
+
};
|
296
|
+
|
297
|
+
_proto._clear = function _clear() {
|
298
|
+
[].slice.call(document.querySelectorAll(this._selector)).filter(function (node) {
|
299
|
+
return node.classList.contains(ClassName.ACTIVE);
|
300
|
+
}).forEach(function (node) {
|
301
|
+
return node.classList.remove(ClassName.ACTIVE);
|
302
|
+
});
|
303
|
+
}; // Static
|
304
|
+
|
305
|
+
|
306
|
+
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
|
307
|
+
return this.each(function () {
|
308
|
+
var data = $(this).data(DATA_KEY);
|
309
|
+
|
310
|
+
var _config = typeof config === 'object' && config;
|
311
|
+
|
312
|
+
if (!data) {
|
313
|
+
data = new ScrollSpy(this, _config);
|
314
|
+
$(this).data(DATA_KEY, data);
|
315
|
+
}
|
316
|
+
|
317
|
+
if (typeof config === 'string') {
|
318
|
+
if (typeof data[config] === 'undefined') {
|
319
|
+
throw new TypeError("No method named \"" + config + "\"");
|
320
|
+
}
|
321
|
+
|
322
|
+
data[config]();
|
323
|
+
}
|
324
|
+
});
|
325
|
+
};
|
326
|
+
|
327
|
+
_createClass(ScrollSpy, null, [{
|
328
|
+
key: "VERSION",
|
329
|
+
get: function get() {
|
330
|
+
return VERSION;
|
331
|
+
}
|
332
|
+
}, {
|
333
|
+
key: "Default",
|
334
|
+
get: function get() {
|
335
|
+
return Default;
|
336
|
+
}
|
337
|
+
}]);
|
338
|
+
|
339
|
+
return ScrollSpy;
|
340
|
+
}();
|
341
|
+
/**
|
342
|
+
* ------------------------------------------------------------------------
|
343
|
+
* Data Api implementation
|
344
|
+
* ------------------------------------------------------------------------
|
345
|
+
*/
|
346
|
+
|
347
|
+
|
348
|
+
$(window).on(Event.LOAD_DATA_API, function () {
|
349
|
+
var scrollSpys = [].slice.call(document.querySelectorAll(Selector.DATA_SPY));
|
350
|
+
var scrollSpysLength = scrollSpys.length;
|
351
|
+
|
352
|
+
for (var i = scrollSpysLength; i--;) {
|
353
|
+
var $spy = $(scrollSpys[i]);
|
354
|
+
|
355
|
+
ScrollSpy._jQueryInterface.call($spy, $spy.data());
|
356
|
+
}
|
357
|
+
});
|
358
|
+
/**
|
359
|
+
* ------------------------------------------------------------------------
|
360
|
+
* jQuery
|
361
|
+
* ------------------------------------------------------------------------
|
362
|
+
*/
|
363
|
+
|
364
|
+
$.fn[NAME] = ScrollSpy._jQueryInterface;
|
365
|
+
$.fn[NAME].Constructor = ScrollSpy;
|
366
|
+
|
367
|
+
$.fn[NAME].noConflict = function () {
|
368
|
+
$.fn[NAME] = JQUERY_NO_CONFLICT;
|
369
|
+
return ScrollSpy._jQueryInterface;
|
370
|
+
};
|
371
|
+
|
372
|
+
return ScrollSpy;
|
373
|
+
|
374
|
+
})));
|
375
|
+
//# sourceMappingURL=scrollspy.js.map
|