0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-12-04 16:24:22 +01:00

Backport search from v4 and adapt it for v3.4.0.

This commit is contained in:
XhmikosR 2018-09-20 12:07:38 +03:00
parent ebe7459665
commit d24d47c27a
4 changed files with 58 additions and 20 deletions

View File

@ -29,6 +29,10 @@
<script src="{{ site.baseurl }}/dist/js/bootstrap.js"></script>
{% endif %}
{% if page.layout == "default" %}
<script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
{% endif %}
{% if site.github %}
<script src="{{ site.baseurl }}/assets/js/docs.min.js"></script>
{% else %}
@ -37,24 +41,6 @@
{% endfor %}
{% endif %}
{% if page.slug == "getting-started" or page.slug == "css" or page.slug == "components" or page.slug == "js" %}
<script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
<script>
var docsearch = docsearch({
apiKey: 'c6aa63796ef2f94c7e7e7f0b93b4a223',
indexName: 'bootstrap-v3',
inputSelector: '#search-input',
transformData: function (hits) {
return hits.map(function (hit) {
hit.url = hit.url.replace('https://getbootstrap.com/', '');
return hit;
});
},
debug: false // Set debug to true if you want to inspect the dropdown
});
</script>
{% endif %}
{% if page.slug == "customize" %}
<script>var __configBridge = {{ site.data.configBridge.config | jsonify }}</script>
{% if site.github %}

View File

@ -28,7 +28,7 @@
{% endif %}
{% endif %}
{% if page.slug == "getting-started" or page.slug == "css" or page.slug == "components" or page.slug == "js" %}
{% if page.layout == "default" %}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css">
{% endif %}

View File

@ -0,0 +1,51 @@
// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT
// IT'S ALL JUST JUNK FOR OUR DOCS!
// ++++++++++++++++++++++++++++++++++++++++++
(function () {
'use strict'
var inputElement = document.getElementById('search-input')
if (!window.docsearch || !inputElement) {
return
}
function getOrigin() {
var location = window.location
var origin = location.origin
if (!origin) {
var port = location.port ? ':' + location.port : ''
origin = location.protocol + '//' + location.hostname + port
}
return origin
}
window.docsearch({
apiKey: 'c8948afa20e6437a6e829f7e87b9ac11',
indexName: 'bootstrap-v3',
inputSelector: '#search-input',
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) {
var siteurl = getOrigin()
var urlRE = /^https?:\/\/getbootstrap\.com/
// When in production, return the result as is,
// otherwise remove our url from it.
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
})
}())

View File

@ -14,7 +14,8 @@
"/docs/3.4/assets/js/vendor/holder.min.js",
"/docs/3.4/assets/js/vendor/clipboard.min.js",
"/docs/3.4/assets/js/vendor/anchor.min.js",
"/docs/3.4/assets/js/src/application.js"
"/docs/3.4/assets/js/src/application.js",
"/docs/3.4/assets/js/src/search.js"
]
},
"config": {