diff options
Diffstat (limited to 'vendor/twbs/bootstrap/site/docs/4.1/assets/js/src')
4 files changed, 222 insertions, 0 deletions
diff --git a/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/application.js b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/application.js new file mode 100644 index 000000000..7666da065 --- /dev/null +++ b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/application.js @@ -0,0 +1,112 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +/*! + * JavaScript for Bootstrap's docs (https://getbootstrap.com/) + * Copyright 2011-2018 The Bootstrap Authors + * Copyright 2011-2018 Twitter, Inc. + * Licensed under the Creative Commons Attribution 3.0 Unported License. For + * details, see https://creativecommons.org/licenses/by/3.0/. + */ + +/* global ClipboardJS: false, anchors: false, Holder: false */ + +(function ($) { + 'use strict' + + $(function () { + // Tooltip and popover demos + $('.tooltip-demo').tooltip({ + selector: '[data-toggle="tooltip"]', + container: 'body' + }) + + $('[data-toggle="popover"]').popover() + + // Demos within modals + $('.tooltip-test').tooltip() + $('.popover-test').popover() + + // Indeterminate checkbox example + $('.bd-example-indeterminate [type="checkbox"]').prop('indeterminate', true) + + // Disable empty links in docs examples + $('.bd-content [href="#"]').click(function (e) { + e.preventDefault() + }) + + // Modal relatedTarget demo + $('#exampleModal').on('show.bs.modal', function (event) { + var $button = $(event.relatedTarget) // Button that triggered the modal + var recipient = $button.data('whatever') // Extract info from data-* attributes + // If necessary, you could initiate an AJAX request here (and then do the updating in a callback). + // Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead. + var $modal = $(this) + $modal.find('.modal-title').text('New message to ' + recipient) + $modal.find('.modal-body input').val(recipient) + }) + + // Activate animated progress bar + $('.bd-toggle-animated-progress').on('click', function () { + $(this).siblings('.progress').find('.progress-bar-striped').toggleClass('progress-bar-animated') + }) + + // Insert copy to clipboard button before .highlight + $('figure.highlight, div.highlight').each(function () { + var btnHtml = '<div class="bd-clipboard"><button class="btn-clipboard" title="Copy to clipboard">Copy</button></div>' + $(this).before(btnHtml) + $('.btn-clipboard') + .tooltip() + .on('mouseleave', function () { + // Explicitly hide tooltip, since after clicking it remains + // focused (as it's a button), so tooltip would otherwise + // remain visible until focus is moved away + $(this).tooltip('hide') + }) + }) + + var clipboard = new ClipboardJS('.btn-clipboard', { + target: function (trigger) { + return trigger.parentNode.nextElementSibling + } + }) + + clipboard.on('success', function (e) { + $(e.trigger) + .attr('title', 'Copied!') + .tooltip('_fixTitle') + .tooltip('show') + .attr('title', 'Copy to clipboard') + .tooltip('_fixTitle') + + e.clearSelection() + }) + + clipboard.on('error', function (e) { + var modifierKey = /Mac/i.test(navigator.userAgent) ? '\u2318' : 'Ctrl-' + var fallbackMsg = 'Press ' + modifierKey + 'C to copy' + + $(e.trigger) + .attr('title', fallbackMsg) + .tooltip('_fixTitle') + .tooltip('show') + .attr('title', 'Copy to clipboard') + .tooltip('_fixTitle') + }) + + anchors.options = { + icon: '#' + } + anchors.add('.bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5') + $('.bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5').wrapInner('<div></div>') + + // Holder + Holder.addTheme('gray', { + bg: '#777', + fg: 'rgba(255,255,255,.75)', + font: 'Helvetica', + fontweight: 'normal' + }) + }) +}(jQuery)) diff --git a/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/ie-emulation-modes-warning.js b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/ie-emulation-modes-warning.js new file mode 100644 index 000000000..610128e27 --- /dev/null +++ b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/ie-emulation-modes-warning.js @@ -0,0 +1,47 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +// Intended to prevent false-positive bug reports about Bootstrap not working properly in old versions of IE due to folks testing using IE's unreliable emulation modes. +(function () { + 'use strict' + + function emulatedIEMajorVersion() { + var groups = /MSIE ([0-9.]+)/.exec(window.navigator.userAgent) + if (groups === null) { + return null + } + var ieVersionNum = parseInt(groups[1], 10) + var ieMajorVersion = Math.floor(ieVersionNum) + return ieMajorVersion + } + + function actualNonEmulatedIEMajorVersion() { + // Detects the actual version of IE in use, even if it's in an older-IE emulation mode. + // IE JavaScript conditional compilation docs: https://msdn.microsoft.com/library/121hztk3%28v=vs.94%29.aspx + // @cc_on docs: https://msdn.microsoft.com/library/8ka90k2e%28v=vs.94%29.aspx + var jscriptVersion = new Function('/*@cc_on return @_jscript_version; @*/')() // eslint-disable-line no-new-func + if (typeof jscriptVersion === 'undefined') { + return 11 // IE11+ not in emulation mode + } + if (jscriptVersion < 9) { + return 8 // IE8 (or lower; haven't tested on IE<8) + } + return jscriptVersion // IE9 or IE10 in any mode, or IE11 in non-IE11 mode + } + + var ua = window.navigator.userAgent + if (ua.indexOf('Opera') > -1 || ua.indexOf('Presto') > -1) { + return // Opera, which might pretend to be IE + } + var emulated = emulatedIEMajorVersion() + if (emulated === null) { + return // Not IE + } + var nonEmulated = actualNonEmulatedIEMajorVersion() + + if (emulated !== nonEmulated) { + // eslint-disable-next-line no-alert + window.alert('WARNING: You appear to be using IE' + nonEmulated + ' in IE' + emulated + ' emulation mode.\nIE emulation modes can behave significantly differently from ACTUAL older versions of IE.\nPLEASE DON\'T FILE BOOTSTRAP BUGS based on testing in IE emulation modes!') + } +}()) diff --git a/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/pwa.js b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/pwa.js new file mode 100644 index 000000000..142f89915 --- /dev/null +++ b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/pwa.js @@ -0,0 +1,21 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +/* eslint no-console:off */ + +(function () { + 'use strict' + + if ('serviceWorker' in navigator) { + window.addEventListener('load', function () { + navigator.serviceWorker.register('/sw.js').then(function (registration) { // eslint-disable-line compat/compat + console.log('ServiceWorker registration successful with scope: ', registration.scope) + }).catch(function (err) { + console.log('ServiceWorker registration failed: ', err) + }) + }) + } else { + console.log('Service workers are not supported.') + } +}()) diff --git a/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/search.js b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/search.js new file mode 100644 index 000000000..2e91fcf21 --- /dev/null +++ b/vendor/twbs/bootstrap/site/docs/4.1/assets/js/src/search.js @@ -0,0 +1,42 @@ +// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT +// IT'S ALL JUST JUNK FOR OUR DOCS! +// ++++++++++++++++++++++++++++++++++++++++++ + +(function () { + 'use strict' + + if (!window.docsearch) { + return + } + + var inputElement = document.getElementById('search-input') + var siteDocsVersion = inputElement.getAttribute('data-docs-version') + + window.docsearch({ + apiKey: '5990ad008512000bba2cf951ccf0332f', + indexName: 'bootstrap', + inputSelector: '#search-input', + algoliaOptions: { + facetFilters: ['version:' + siteDocsVersion] + }, + handleSelected: function (input, event, suggestion) { + var url = suggestion.url + url = suggestion.isLvl1 ? url.split('#')[0] : url + // If it's a title we remove the anchor so it does not jump. + window.location.href = url + }, + transformData: function (hits) { + return hits.map(function (hit) { + // When in production, return the result as is, + // otherwise remove our url from it. + var siteurl = inputElement.getAttribute('data-siteurl') + var urlRE = /^https?:\/\/getbootstrap\.com/ + + hit.url = siteurl.match(urlRE) ? hit.url : hit.url.replace(urlRE, '') + + return hit + }) + }, + debug: false // Set debug to true if you want to inspect the dropdown + }) +}()) |