mirror of
https://github.com/twbs/bootstrap.git
synced 2025-02-26 23:54:23 +01:00
Add v5.3.0-alpha3 docs (#38359)
This commit is contained in:
parent
d0ea9cc7e4
commit
5c8a44c142
6
404.html
6
404.html
@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<link href="/docs/5.3/assets/css/docs.css" rel="stylesheet">
|
<link href="/docs/5.3/assets/css/docs.css" rel="stylesheet">
|
||||||
|
|
||||||
@ -320,7 +320,7 @@
|
|||||||
<ul class="list-unstyled small">
|
<ul class="list-unstyled small">
|
||||||
<li class="mb-2">Designed and built with all the love in the world by the <a href="/docs/5.3/about/team/">Bootstrap team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</li>
|
<li class="mb-2">Designed and built with all the love in the world by the <a href="/docs/5.3/about/team/">Bootstrap team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</li>
|
||||||
<li class="mb-2">Code licensed <a href="https://github.com/twbs/bootstrap/blob/main/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</li>
|
<li class="mb-2">Code licensed <a href="https://github.com/twbs/bootstrap/blob/main/LICENSE" target="_blank" rel="license noopener">MIT</a>, docs <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank" rel="license noopener">CC BY 3.0</a>.</li>
|
||||||
<li class="mb-2">Currently v5.3.0-alpha2.</li>
|
<li class="mb-2">Currently v5.3.0-alpha3.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-6 col-lg-2 offset-lg-1 mb-3">
|
<div class="col-6 col-lg-2 offset-lg-1 mb-3">
|
||||||
@ -369,7 +369,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
docs/5.3/assets/js/docs.min.js
vendored
2
docs/5.3/assets/js/docs.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
24
docs/5.3/dist/css/bootstrap-grid.css
vendored
24
docs/5.3/dist/css/bootstrap-grid.css
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Grid v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap Grid v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -1141,6 +1141,10 @@
|
|||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
|
|
||||||
.d-table {
|
.d-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -1740,6 +1744,9 @@
|
|||||||
.d-sm-grid {
|
.d-sm-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-sm-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-sm-table {
|
.d-sm-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -2200,6 +2207,9 @@
|
|||||||
.d-md-grid {
|
.d-md-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-md-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-md-table {
|
.d-md-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -2660,6 +2670,9 @@
|
|||||||
.d-lg-grid {
|
.d-lg-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-lg-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-lg-table {
|
.d-lg-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3120,6 +3133,9 @@
|
|||||||
.d-xl-grid {
|
.d-xl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xl-table {
|
.d-xl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3580,6 +3596,9 @@
|
|||||||
.d-xxl-grid {
|
.d-xxl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xxl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xxl-table {
|
.d-xxl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -4040,6 +4059,9 @@
|
|||||||
.d-print-grid {
|
.d-print-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-print-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-print-table {
|
.d-print-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
|
2
docs/5.3/dist/css/bootstrap-grid.css.map
vendored
2
docs/5.3/dist/css/bootstrap-grid.css.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/css/bootstrap-grid.min.css
vendored
4
docs/5.3/dist/css/bootstrap-grid.min.css
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/css/bootstrap-grid.min.css.map
vendored
2
docs/5.3/dist/css/bootstrap-grid.min.css.map
vendored
File diff suppressed because one or more lines are too long
24
docs/5.3/dist/css/bootstrap-grid.rtl.css
vendored
24
docs/5.3/dist/css/bootstrap-grid.rtl.css
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Grid v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap Grid v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -1141,6 +1141,10 @@
|
|||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
|
|
||||||
.d-table {
|
.d-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -1740,6 +1744,9 @@
|
|||||||
.d-sm-grid {
|
.d-sm-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-sm-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-sm-table {
|
.d-sm-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -2200,6 +2207,9 @@
|
|||||||
.d-md-grid {
|
.d-md-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-md-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-md-table {
|
.d-md-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -2660,6 +2670,9 @@
|
|||||||
.d-lg-grid {
|
.d-lg-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-lg-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-lg-table {
|
.d-lg-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3120,6 +3133,9 @@
|
|||||||
.d-xl-grid {
|
.d-xl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xl-table {
|
.d-xl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3580,6 +3596,9 @@
|
|||||||
.d-xxl-grid {
|
.d-xxl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xxl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xxl-table {
|
.d-xxl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -4040,6 +4059,9 @@
|
|||||||
.d-print-grid {
|
.d-print-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-print-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-print-table {
|
.d-print-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
|
2
docs/5.3/dist/css/bootstrap-grid.rtl.css.map
vendored
2
docs/5.3/dist/css/bootstrap-grid.rtl.css.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/css/bootstrap-grid.rtl.min.css
vendored
4
docs/5.3/dist/css/bootstrap-grid.rtl.min.css
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/css/bootstrap-reboot.css
vendored
2
docs/5.3/dist/css/bootstrap-reboot.css
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Reboot v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap Reboot v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
2
docs/5.3/dist/css/bootstrap-reboot.css.map
vendored
2
docs/5.3/dist/css/bootstrap-reboot.css.map
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/css/bootstrap-reboot.min.css
vendored
2
docs/5.3/dist/css/bootstrap-reboot.min.css
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/css/bootstrap-reboot.rtl.css
vendored
2
docs/5.3/dist/css/bootstrap-reboot.rtl.css
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Reboot v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap Reboot v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
24
docs/5.3/dist/css/bootstrap-utilities.css
vendored
24
docs/5.3/dist/css/bootstrap-utilities.css
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Utilities v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap Utilities v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -685,6 +685,10 @@
|
|||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
|
|
||||||
.d-table {
|
.d-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -2577,6 +2581,9 @@
|
|||||||
.d-sm-grid {
|
.d-sm-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-sm-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-sm-table {
|
.d-sm-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3135,6 +3142,9 @@
|
|||||||
.d-md-grid {
|
.d-md-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-md-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-md-table {
|
.d-md-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3693,6 +3703,9 @@
|
|||||||
.d-lg-grid {
|
.d-lg-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-lg-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-lg-table {
|
.d-lg-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -4251,6 +4264,9 @@
|
|||||||
.d-xl-grid {
|
.d-xl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xl-table {
|
.d-xl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -4809,6 +4825,9 @@
|
|||||||
.d-xxl-grid {
|
.d-xxl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xxl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xxl-table {
|
.d-xxl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -5352,6 +5371,9 @@
|
|||||||
.d-print-grid {
|
.d-print-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-print-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-print-table {
|
.d-print-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
24
docs/5.3/dist/css/bootstrap-utilities.rtl.css
vendored
24
docs/5.3/dist/css/bootstrap-utilities.rtl.css
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap Utilities v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap Utilities v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -685,6 +685,10 @@
|
|||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
|
|
||||||
.d-table {
|
.d-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -2569,6 +2573,9 @@
|
|||||||
.d-sm-grid {
|
.d-sm-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-sm-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-sm-table {
|
.d-sm-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3127,6 +3134,9 @@
|
|||||||
.d-md-grid {
|
.d-md-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-md-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-md-table {
|
.d-md-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -3685,6 +3695,9 @@
|
|||||||
.d-lg-grid {
|
.d-lg-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-lg-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-lg-table {
|
.d-lg-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -4243,6 +4256,9 @@
|
|||||||
.d-xl-grid {
|
.d-xl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xl-table {
|
.d-xl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -4801,6 +4817,9 @@
|
|||||||
.d-xxl-grid {
|
.d-xxl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xxl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xxl-table {
|
.d-xxl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -5344,6 +5363,9 @@
|
|||||||
.d-print-grid {
|
.d-print-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-print-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-print-table {
|
.d-print-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
123
docs/5.3/dist/css/bootstrap.css
vendored
123
docs/5.3/dist/css/bootstrap.css
vendored
@ -1,6 +1,6 @@
|
|||||||
@charset "UTF-8";
|
@charset "UTF-8";
|
||||||
/*!
|
/*!
|
||||||
* Bootstrap v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -2116,7 +2116,7 @@ progress {
|
|||||||
-webkit-appearance: none;
|
-webkit-appearance: none;
|
||||||
-moz-appearance: none;
|
-moz-appearance: none;
|
||||||
appearance: none;
|
appearance: none;
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
||||||
}
|
}
|
||||||
@media (prefers-reduced-motion: reduce) {
|
@media (prefers-reduced-motion: reduce) {
|
||||||
@ -2228,7 +2228,7 @@ progress {
|
|||||||
min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
border-radius: 0.25rem;
|
border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
.form-control-sm::-webkit-file-upload-button {
|
.form-control-sm::-webkit-file-upload-button {
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
@ -2247,7 +2247,7 @@ progress {
|
|||||||
min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
|
min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
|
||||||
padding: 0.5rem 1rem;
|
padding: 0.5rem 1rem;
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
.form-control-lg::-webkit-file-upload-button {
|
.form-control-lg::-webkit-file-upload-button {
|
||||||
padding: 0.5rem 1rem;
|
padding: 0.5rem 1rem;
|
||||||
@ -2282,11 +2282,11 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
.form-control-color::-moz-color-swatch {
|
.form-control-color::-moz-color-swatch {
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
.form-control-color::-webkit-color-swatch {
|
.form-control-color::-webkit-color-swatch {
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
.form-control-color.form-control-sm {
|
.form-control-color.form-control-sm {
|
||||||
height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
||||||
@ -2310,7 +2310,7 @@ textarea.form-control-lg {
|
|||||||
background-position: right 0.75rem center;
|
background-position: right 0.75rem center;
|
||||||
background-size: 16px 12px;
|
background-size: 16px 12px;
|
||||||
border: var(--bs-border-width) solid var(--bs-border-color);
|
border: var(--bs-border-width) solid var(--bs-border-color);
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
||||||
-webkit-appearance: none;
|
-webkit-appearance: none;
|
||||||
-moz-appearance: none;
|
-moz-appearance: none;
|
||||||
@ -2343,7 +2343,7 @@ textarea.form-control-lg {
|
|||||||
padding-bottom: 0.25rem;
|
padding-bottom: 0.25rem;
|
||||||
padding-left: 0.5rem;
|
padding-left: 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
border-radius: 0.25rem;
|
border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.form-select-lg {
|
.form-select-lg {
|
||||||
@ -2351,7 +2351,7 @@ textarea.form-control-lg {
|
|||||||
padding-bottom: 0.5rem;
|
padding-bottom: 0.5rem;
|
||||||
padding-left: 1rem;
|
padding-left: 1rem;
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-bs-theme=dark] .form-select {
|
[data-bs-theme=dark] .form-select {
|
||||||
@ -2584,16 +2584,6 @@ textarea.form-control-lg {
|
|||||||
.form-floating {
|
.form-floating {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
.form-floating:not(.form-control:disabled)::before {
|
|
||||||
position: absolute;
|
|
||||||
top: var(--bs-border-width);
|
|
||||||
left: var(--bs-border-width);
|
|
||||||
width: calc(100% - (calc(calc(0.375em + 0.1875rem) + calc(0.75em + 0.375rem))));
|
|
||||||
height: 1.875em;
|
|
||||||
content: "";
|
|
||||||
background-color: var(--bs-body-bg);
|
|
||||||
border-radius: 0.375rem;
|
|
||||||
}
|
|
||||||
.form-floating > .form-control,
|
.form-floating > .form-control,
|
||||||
.form-floating > .form-control-plaintext,
|
.form-floating > .form-control-plaintext,
|
||||||
.form-floating > .form-select {
|
.form-floating > .form-select {
|
||||||
@ -2604,7 +2594,7 @@ textarea.form-control-lg {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
z-index: 2;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding: 1rem 0.75rem;
|
padding: 1rem 0.75rem;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
@ -2652,26 +2642,50 @@ textarea.form-control-lg {
|
|||||||
padding-bottom: 0.625rem;
|
padding-bottom: 0.625rem;
|
||||||
}
|
}
|
||||||
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
|
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
|
||||||
opacity: 0.65;
|
color: rgba(var(--bs-body-color-rgb), 0.65);
|
||||||
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
|
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
|
||||||
}
|
}
|
||||||
.form-floating > .form-control:focus ~ label,
|
.form-floating > .form-control:focus ~ label,
|
||||||
.form-floating > .form-control:not(:placeholder-shown) ~ label,
|
.form-floating > .form-control:not(:placeholder-shown) ~ label,
|
||||||
.form-floating > .form-control-plaintext ~ label,
|
.form-floating > .form-control-plaintext ~ label,
|
||||||
.form-floating > .form-select ~ label {
|
.form-floating > .form-select ~ label {
|
||||||
opacity: 0.65;
|
color: rgba(var(--bs-body-color-rgb), 0.65);
|
||||||
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
|
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
|
||||||
}
|
}
|
||||||
|
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {
|
||||||
|
position: absolute;
|
||||||
|
inset: 1rem 0.375rem;
|
||||||
|
z-index: -1;
|
||||||
|
height: 1.5em;
|
||||||
|
content: "";
|
||||||
|
background-color: var(--bs-body-bg);
|
||||||
|
border-radius: var(--bs-border-radius);
|
||||||
|
}
|
||||||
|
.form-floating > .form-control:focus ~ label::after,
|
||||||
|
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
|
||||||
|
.form-floating > .form-control-plaintext ~ label::after,
|
||||||
|
.form-floating > .form-select ~ label::after {
|
||||||
|
position: absolute;
|
||||||
|
inset: 1rem 0.375rem;
|
||||||
|
z-index: -1;
|
||||||
|
height: 1.5em;
|
||||||
|
content: "";
|
||||||
|
background-color: var(--bs-body-bg);
|
||||||
|
border-radius: var(--bs-border-radius);
|
||||||
|
}
|
||||||
.form-floating > .form-control:-webkit-autofill ~ label {
|
.form-floating > .form-control:-webkit-autofill ~ label {
|
||||||
opacity: 0.65;
|
color: rgba(var(--bs-body-color-rgb), 0.65);
|
||||||
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
|
transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
|
||||||
}
|
}
|
||||||
.form-floating > .form-control-plaintext ~ label {
|
.form-floating > .form-control-plaintext ~ label {
|
||||||
border-width: var(--bs-border-width) 0;
|
border-width: var(--bs-border-width) 0;
|
||||||
}
|
}
|
||||||
.form-floating > .form-control:disabled ~ label {
|
.form-floating > :disabled ~ label {
|
||||||
color: #6c757d;
|
color: #6c757d;
|
||||||
}
|
}
|
||||||
|
.form-floating > :disabled ~ label::after {
|
||||||
|
background-color: var(--bs-secondary-bg);
|
||||||
|
}
|
||||||
|
|
||||||
.input-group {
|
.input-group {
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -2713,7 +2727,7 @@ textarea.form-control-lg {
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
background-color: var(--bs-tertiary-bg);
|
background-color: var(--bs-tertiary-bg);
|
||||||
border: var(--bs-border-width) solid var(--bs-border-color);
|
border: var(--bs-border-width) solid var(--bs-border-color);
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-group-lg > .form-control,
|
.input-group-lg > .form-control,
|
||||||
@ -2722,7 +2736,7 @@ textarea.form-control-lg {
|
|||||||
.input-group-lg > .btn {
|
.input-group-lg > .btn {
|
||||||
padding: 0.5rem 1rem;
|
padding: 0.5rem 1rem;
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-group-sm > .form-control,
|
.input-group-sm > .form-control,
|
||||||
@ -2731,7 +2745,7 @@ textarea.form-control-lg {
|
|||||||
.input-group-sm > .btn {
|
.input-group-sm > .btn {
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
border-radius: 0.25rem;
|
border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-group-lg > .form-select,
|
.input-group-lg > .form-select,
|
||||||
@ -2955,7 +2969,7 @@ textarea.form-control-lg {
|
|||||||
--bs-btn-bg: transparent;
|
--bs-btn-bg: transparent;
|
||||||
--bs-btn-border-width: var(--bs-border-width);
|
--bs-btn-border-width: var(--bs-border-width);
|
||||||
--bs-btn-border-color: transparent;
|
--bs-btn-border-color: transparent;
|
||||||
--bs-btn-border-radius: 0.375rem;
|
--bs-btn-border-radius: var(--bs-border-radius);
|
||||||
--bs-btn-hover-border-color: transparent;
|
--bs-btn-hover-border-color: transparent;
|
||||||
--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
|
--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||||
--bs-btn-disabled-opacity: 0.65;
|
--bs-btn-disabled-opacity: 0.65;
|
||||||
@ -3320,14 +3334,14 @@ textarea.form-control-lg {
|
|||||||
--bs-btn-padding-y: 0.5rem;
|
--bs-btn-padding-y: 0.5rem;
|
||||||
--bs-btn-padding-x: 1rem;
|
--bs-btn-padding-x: 1rem;
|
||||||
--bs-btn-font-size: 1.25rem;
|
--bs-btn-font-size: 1.25rem;
|
||||||
--bs-btn-border-radius: 0.5rem;
|
--bs-btn-border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-sm, .btn-group-sm > .btn {
|
.btn-sm, .btn-group-sm > .btn {
|
||||||
--bs-btn-padding-y: 0.25rem;
|
--bs-btn-padding-y: 0.25rem;
|
||||||
--bs-btn-padding-x: 0.5rem;
|
--bs-btn-padding-x: 0.5rem;
|
||||||
--bs-btn-font-size: 0.875rem;
|
--bs-btn-font-size: 0.875rem;
|
||||||
--bs-btn-border-radius: 0.25rem;
|
--bs-btn-border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.fade {
|
.fade {
|
||||||
@ -3403,9 +3417,9 @@ textarea.form-control-lg {
|
|||||||
--bs-dropdown-color: var(--bs-body-color);
|
--bs-dropdown-color: var(--bs-body-color);
|
||||||
--bs-dropdown-bg: var(--bs-body-bg);
|
--bs-dropdown-bg: var(--bs-body-bg);
|
||||||
--bs-dropdown-border-color: var(--bs-border-color-translucent);
|
--bs-dropdown-border-color: var(--bs-border-color-translucent);
|
||||||
--bs-dropdown-border-radius: 0.375rem;
|
--bs-dropdown-border-radius: var(--bs-border-radius);
|
||||||
--bs-dropdown-border-width: var(--bs-border-width);
|
--bs-dropdown-border-width: var(--bs-border-width);
|
||||||
--bs-dropdown-inner-border-radius: calc(0.375rem - var(--bs-border-width));
|
--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
|
||||||
--bs-dropdown-divider-bg: var(--bs-border-color-translucent);
|
--bs-dropdown-divider-bg: var(--bs-border-color-translucent);
|
||||||
--bs-dropdown-divider-margin-y: 0.5rem;
|
--bs-dropdown-divider-margin-y: 0.5rem;
|
||||||
--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
|
--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
|
||||||
@ -3720,7 +3734,7 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.btn-group {
|
.btn-group {
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
.btn-group > :not(.btn-check:first-child) + .btn,
|
.btn-group > :not(.btn-check:first-child) + .btn,
|
||||||
.btn-group > .btn-group:not(:first-child) {
|
.btn-group > .btn-group:not(:first-child) {
|
||||||
@ -3865,7 +3879,7 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.nav-pills {
|
.nav-pills {
|
||||||
--bs-nav-pills-border-radius: 0.375rem;
|
--bs-nav-pills-border-radius: var(--bs-border-radius);
|
||||||
--bs-nav-pills-link-active-color: #fff;
|
--bs-nav-pills-link-active-color: #fff;
|
||||||
--bs-nav-pills-link-active-bg: #0d6efd;
|
--bs-nav-pills-link-active-bg: #0d6efd;
|
||||||
}
|
}
|
||||||
@ -3947,7 +3961,7 @@ textarea.form-control-lg {
|
|||||||
--bs-navbar-toggler-font-size: 1.25rem;
|
--bs-navbar-toggler-font-size: 1.25rem;
|
||||||
--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
|
--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
|
||||||
--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
|
--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
|
||||||
--bs-navbar-toggler-border-radius: 0.375rem;
|
--bs-navbar-toggler-border-radius: var(--bs-border-radius);
|
||||||
--bs-navbar-toggler-focus-width: 0.25rem;
|
--bs-navbar-toggler-focus-width: 0.25rem;
|
||||||
--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
|
--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -4798,14 +4812,14 @@ textarea.form-control-lg {
|
|||||||
--bs-pagination-padding-x: 1.5rem;
|
--bs-pagination-padding-x: 1.5rem;
|
||||||
--bs-pagination-padding-y: 0.75rem;
|
--bs-pagination-padding-y: 0.75rem;
|
||||||
--bs-pagination-font-size: 1.25rem;
|
--bs-pagination-font-size: 1.25rem;
|
||||||
--bs-pagination-border-radius: 0.5rem;
|
--bs-pagination-border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.pagination-sm {
|
.pagination-sm {
|
||||||
--bs-pagination-padding-x: 0.5rem;
|
--bs-pagination-padding-x: 0.5rem;
|
||||||
--bs-pagination-padding-y: 0.25rem;
|
--bs-pagination-padding-y: 0.25rem;
|
||||||
--bs-pagination-font-size: 0.875rem;
|
--bs-pagination-font-size: 0.875rem;
|
||||||
--bs-pagination-border-radius: 0.25rem;
|
--bs-pagination-border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.badge {
|
.badge {
|
||||||
@ -4814,7 +4828,7 @@ textarea.form-control-lg {
|
|||||||
--bs-badge-font-size: 0.75em;
|
--bs-badge-font-size: 0.75em;
|
||||||
--bs-badge-font-weight: 700;
|
--bs-badge-font-weight: 700;
|
||||||
--bs-badge-color: #fff;
|
--bs-badge-color: #fff;
|
||||||
--bs-badge-border-radius: 0.375rem;
|
--bs-badge-border-radius: var(--bs-border-radius);
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
|
padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
|
||||||
font-size: var(--bs-badge-font-size);
|
font-size: var(--bs-badge-font-size);
|
||||||
@ -4843,7 +4857,7 @@ textarea.form-control-lg {
|
|||||||
--bs-alert-color: inherit;
|
--bs-alert-color: inherit;
|
||||||
--bs-alert-border-color: transparent;
|
--bs-alert-border-color: transparent;
|
||||||
--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
|
--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
|
||||||
--bs-alert-border-radius: 0.375rem;
|
--bs-alert-border-radius: var(--bs-border-radius);
|
||||||
--bs-alert-link-color: inherit;
|
--bs-alert-link-color: inherit;
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
|
padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
|
||||||
@ -5756,7 +5770,6 @@ textarea.form-control-lg {
|
|||||||
--bs-tooltip-arrow-height: 0.4rem;
|
--bs-tooltip-arrow-height: 0.4rem;
|
||||||
z-index: var(--bs-tooltip-zindex);
|
z-index: var(--bs-tooltip-zindex);
|
||||||
display: block;
|
display: block;
|
||||||
padding: var(--bs-tooltip-arrow-height);
|
|
||||||
margin: var(--bs-tooltip-margin);
|
margin: var(--bs-tooltip-margin);
|
||||||
font-family: var(--bs-font-sans-serif);
|
font-family: var(--bs-font-sans-serif);
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
@ -5792,7 +5805,7 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
|
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
|
||||||
bottom: 0;
|
bottom: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
}
|
}
|
||||||
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
|
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
|
||||||
top: -1px;
|
top: -1px;
|
||||||
@ -5802,7 +5815,7 @@ textarea.form-control-lg {
|
|||||||
|
|
||||||
/* rtl:begin:ignore */
|
/* rtl:begin:ignore */
|
||||||
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
|
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
|
||||||
left: 0;
|
left: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
width: var(--bs-tooltip-arrow-height);
|
width: var(--bs-tooltip-arrow-height);
|
||||||
height: var(--bs-tooltip-arrow-width);
|
height: var(--bs-tooltip-arrow-width);
|
||||||
}
|
}
|
||||||
@ -5814,7 +5827,7 @@ textarea.form-control-lg {
|
|||||||
|
|
||||||
/* rtl:end:ignore */
|
/* rtl:end:ignore */
|
||||||
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
|
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
|
||||||
top: 0;
|
top: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
}
|
}
|
||||||
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
|
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
|
||||||
bottom: -1px;
|
bottom: -1px;
|
||||||
@ -5824,7 +5837,7 @@ textarea.form-control-lg {
|
|||||||
|
|
||||||
/* rtl:begin:ignore */
|
/* rtl:begin:ignore */
|
||||||
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
|
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
|
||||||
right: 0;
|
right: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
width: var(--bs-tooltip-arrow-height);
|
width: var(--bs-tooltip-arrow-height);
|
||||||
height: var(--bs-tooltip-arrow-width);
|
height: var(--bs-tooltip-arrow-width);
|
||||||
}
|
}
|
||||||
@ -7388,6 +7401,10 @@ textarea.form-control-lg {
|
|||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
|
|
||||||
.d-table {
|
.d-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -9280,6 +9297,9 @@ textarea.form-control-lg {
|
|||||||
.d-sm-grid {
|
.d-sm-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-sm-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-sm-table {
|
.d-sm-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -9838,6 +9858,9 @@ textarea.form-control-lg {
|
|||||||
.d-md-grid {
|
.d-md-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-md-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-md-table {
|
.d-md-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -10396,6 +10419,9 @@ textarea.form-control-lg {
|
|||||||
.d-lg-grid {
|
.d-lg-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-lg-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-lg-table {
|
.d-lg-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -10954,6 +10980,9 @@ textarea.form-control-lg {
|
|||||||
.d-xl-grid {
|
.d-xl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xl-table {
|
.d-xl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -11512,6 +11541,9 @@ textarea.form-control-lg {
|
|||||||
.d-xxl-grid {
|
.d-xxl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xxl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xxl-table {
|
.d-xxl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -12055,6 +12087,9 @@ textarea.form-control-lg {
|
|||||||
.d-print-grid {
|
.d-print-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-print-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-print-table {
|
.d-print-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
|
2
docs/5.3/dist/css/bootstrap.css.map
vendored
2
docs/5.3/dist/css/bootstrap.css.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/css/bootstrap.min.css
vendored
4
docs/5.3/dist/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/css/bootstrap.min.css.map
vendored
2
docs/5.3/dist/css/bootstrap.min.css.map
vendored
File diff suppressed because one or more lines are too long
123
docs/5.3/dist/css/bootstrap.rtl.css
vendored
123
docs/5.3/dist/css/bootstrap.rtl.css
vendored
@ -1,6 +1,6 @@
|
|||||||
@charset "UTF-8";
|
@charset "UTF-8";
|
||||||
/*!
|
/*!
|
||||||
* Bootstrap v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors
|
* Copyright 2011-2023 The Bootstrap Authors
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -2114,7 +2114,7 @@ progress {
|
|||||||
-webkit-appearance: none;
|
-webkit-appearance: none;
|
||||||
-moz-appearance: none;
|
-moz-appearance: none;
|
||||||
appearance: none;
|
appearance: none;
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
||||||
}
|
}
|
||||||
@media (prefers-reduced-motion: reduce) {
|
@media (prefers-reduced-motion: reduce) {
|
||||||
@ -2226,7 +2226,7 @@ progress {
|
|||||||
min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
border-radius: 0.25rem;
|
border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
.form-control-sm::-webkit-file-upload-button {
|
.form-control-sm::-webkit-file-upload-button {
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
@ -2245,7 +2245,7 @@ progress {
|
|||||||
min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
|
min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
|
||||||
padding: 0.5rem 1rem;
|
padding: 0.5rem 1rem;
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
.form-control-lg::-webkit-file-upload-button {
|
.form-control-lg::-webkit-file-upload-button {
|
||||||
padding: 0.5rem 1rem;
|
padding: 0.5rem 1rem;
|
||||||
@ -2280,11 +2280,11 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
.form-control-color::-moz-color-swatch {
|
.form-control-color::-moz-color-swatch {
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
.form-control-color::-webkit-color-swatch {
|
.form-control-color::-webkit-color-swatch {
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
.form-control-color.form-control-sm {
|
.form-control-color.form-control-sm {
|
||||||
height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
|
||||||
@ -2308,7 +2308,7 @@ textarea.form-control-lg {
|
|||||||
background-position: left 0.75rem center;
|
background-position: left 0.75rem center;
|
||||||
background-size: 16px 12px;
|
background-size: 16px 12px;
|
||||||
border: var(--bs-border-width) solid var(--bs-border-color);
|
border: var(--bs-border-width) solid var(--bs-border-color);
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
||||||
-webkit-appearance: none;
|
-webkit-appearance: none;
|
||||||
-moz-appearance: none;
|
-moz-appearance: none;
|
||||||
@ -2341,7 +2341,7 @@ textarea.form-control-lg {
|
|||||||
padding-bottom: 0.25rem;
|
padding-bottom: 0.25rem;
|
||||||
padding-right: 0.5rem;
|
padding-right: 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
border-radius: 0.25rem;
|
border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.form-select-lg {
|
.form-select-lg {
|
||||||
@ -2349,7 +2349,7 @@ textarea.form-control-lg {
|
|||||||
padding-bottom: 0.5rem;
|
padding-bottom: 0.5rem;
|
||||||
padding-right: 1rem;
|
padding-right: 1rem;
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-bs-theme=dark] .form-select {
|
[data-bs-theme=dark] .form-select {
|
||||||
@ -2582,16 +2582,6 @@ textarea.form-control-lg {
|
|||||||
.form-floating {
|
.form-floating {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
.form-floating:not(.form-control:disabled)::before {
|
|
||||||
position: absolute;
|
|
||||||
top: var(--bs-border-width);
|
|
||||||
right: var(--bs-border-width);
|
|
||||||
width: calc(100% - (calc(calc(0.375em + 0.1875rem) + calc(0.75em + 0.375rem))));
|
|
||||||
height: 1.875em;
|
|
||||||
content: "";
|
|
||||||
background-color: var(--bs-body-bg);
|
|
||||||
border-radius: 0.375rem;
|
|
||||||
}
|
|
||||||
.form-floating > .form-control,
|
.form-floating > .form-control,
|
||||||
.form-floating > .form-control-plaintext,
|
.form-floating > .form-control-plaintext,
|
||||||
.form-floating > .form-select {
|
.form-floating > .form-select {
|
||||||
@ -2602,7 +2592,7 @@ textarea.form-control-lg {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
width: 100%;
|
z-index: 2;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding: 1rem 0.75rem;
|
padding: 1rem 0.75rem;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
@ -2650,26 +2640,50 @@ textarea.form-control-lg {
|
|||||||
padding-bottom: 0.625rem;
|
padding-bottom: 0.625rem;
|
||||||
}
|
}
|
||||||
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
|
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
|
||||||
opacity: 0.65;
|
color: rgba(var(--bs-body-color-rgb), 0.65);
|
||||||
transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
|
transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
|
||||||
}
|
}
|
||||||
.form-floating > .form-control:focus ~ label,
|
.form-floating > .form-control:focus ~ label,
|
||||||
.form-floating > .form-control:not(:placeholder-shown) ~ label,
|
.form-floating > .form-control:not(:placeholder-shown) ~ label,
|
||||||
.form-floating > .form-control-plaintext ~ label,
|
.form-floating > .form-control-plaintext ~ label,
|
||||||
.form-floating > .form-select ~ label {
|
.form-floating > .form-select ~ label {
|
||||||
opacity: 0.65;
|
color: rgba(var(--bs-body-color-rgb), 0.65);
|
||||||
transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
|
transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
|
||||||
}
|
}
|
||||||
|
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {
|
||||||
|
position: absolute;
|
||||||
|
inset: 1rem 0.375rem;
|
||||||
|
z-index: -1;
|
||||||
|
height: 1.5em;
|
||||||
|
content: "";
|
||||||
|
background-color: var(--bs-body-bg);
|
||||||
|
border-radius: var(--bs-border-radius);
|
||||||
|
}
|
||||||
|
.form-floating > .form-control:focus ~ label::after,
|
||||||
|
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
|
||||||
|
.form-floating > .form-control-plaintext ~ label::after,
|
||||||
|
.form-floating > .form-select ~ label::after {
|
||||||
|
position: absolute;
|
||||||
|
inset: 1rem 0.375rem;
|
||||||
|
z-index: -1;
|
||||||
|
height: 1.5em;
|
||||||
|
content: "";
|
||||||
|
background-color: var(--bs-body-bg);
|
||||||
|
border-radius: var(--bs-border-radius);
|
||||||
|
}
|
||||||
.form-floating > .form-control:-webkit-autofill ~ label {
|
.form-floating > .form-control:-webkit-autofill ~ label {
|
||||||
opacity: 0.65;
|
color: rgba(var(--bs-body-color-rgb), 0.65);
|
||||||
transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
|
transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);
|
||||||
}
|
}
|
||||||
.form-floating > .form-control-plaintext ~ label {
|
.form-floating > .form-control-plaintext ~ label {
|
||||||
border-width: var(--bs-border-width) 0;
|
border-width: var(--bs-border-width) 0;
|
||||||
}
|
}
|
||||||
.form-floating > .form-control:disabled ~ label {
|
.form-floating > :disabled ~ label {
|
||||||
color: #6c757d;
|
color: #6c757d;
|
||||||
}
|
}
|
||||||
|
.form-floating > :disabled ~ label::after {
|
||||||
|
background-color: var(--bs-secondary-bg);
|
||||||
|
}
|
||||||
|
|
||||||
.input-group {
|
.input-group {
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -2711,7 +2725,7 @@ textarea.form-control-lg {
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
background-color: var(--bs-tertiary-bg);
|
background-color: var(--bs-tertiary-bg);
|
||||||
border: var(--bs-border-width) solid var(--bs-border-color);
|
border: var(--bs-border-width) solid var(--bs-border-color);
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-group-lg > .form-control,
|
.input-group-lg > .form-control,
|
||||||
@ -2720,7 +2734,7 @@ textarea.form-control-lg {
|
|||||||
.input-group-lg > .btn {
|
.input-group-lg > .btn {
|
||||||
padding: 0.5rem 1rem;
|
padding: 0.5rem 1rem;
|
||||||
font-size: 1.25rem;
|
font-size: 1.25rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-group-sm > .form-control,
|
.input-group-sm > .form-control,
|
||||||
@ -2729,7 +2743,7 @@ textarea.form-control-lg {
|
|||||||
.input-group-sm > .btn {
|
.input-group-sm > .btn {
|
||||||
padding: 0.25rem 0.5rem;
|
padding: 0.25rem 0.5rem;
|
||||||
font-size: 0.875rem;
|
font-size: 0.875rem;
|
||||||
border-radius: 0.25rem;
|
border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-group-lg > .form-select,
|
.input-group-lg > .form-select,
|
||||||
@ -2953,7 +2967,7 @@ textarea.form-control-lg {
|
|||||||
--bs-btn-bg: transparent;
|
--bs-btn-bg: transparent;
|
||||||
--bs-btn-border-width: var(--bs-border-width);
|
--bs-btn-border-width: var(--bs-border-width);
|
||||||
--bs-btn-border-color: transparent;
|
--bs-btn-border-color: transparent;
|
||||||
--bs-btn-border-radius: 0.375rem;
|
--bs-btn-border-radius: var(--bs-border-radius);
|
||||||
--bs-btn-hover-border-color: transparent;
|
--bs-btn-hover-border-color: transparent;
|
||||||
--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
|
--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||||
--bs-btn-disabled-opacity: 0.65;
|
--bs-btn-disabled-opacity: 0.65;
|
||||||
@ -3318,14 +3332,14 @@ textarea.form-control-lg {
|
|||||||
--bs-btn-padding-y: 0.5rem;
|
--bs-btn-padding-y: 0.5rem;
|
||||||
--bs-btn-padding-x: 1rem;
|
--bs-btn-padding-x: 1rem;
|
||||||
--bs-btn-font-size: 1.25rem;
|
--bs-btn-font-size: 1.25rem;
|
||||||
--bs-btn-border-radius: 0.5rem;
|
--bs-btn-border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-sm, .btn-group-sm > .btn {
|
.btn-sm, .btn-group-sm > .btn {
|
||||||
--bs-btn-padding-y: 0.25rem;
|
--bs-btn-padding-y: 0.25rem;
|
||||||
--bs-btn-padding-x: 0.5rem;
|
--bs-btn-padding-x: 0.5rem;
|
||||||
--bs-btn-font-size: 0.875rem;
|
--bs-btn-font-size: 0.875rem;
|
||||||
--bs-btn-border-radius: 0.25rem;
|
--bs-btn-border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.fade {
|
.fade {
|
||||||
@ -3401,9 +3415,9 @@ textarea.form-control-lg {
|
|||||||
--bs-dropdown-color: var(--bs-body-color);
|
--bs-dropdown-color: var(--bs-body-color);
|
||||||
--bs-dropdown-bg: var(--bs-body-bg);
|
--bs-dropdown-bg: var(--bs-body-bg);
|
||||||
--bs-dropdown-border-color: var(--bs-border-color-translucent);
|
--bs-dropdown-border-color: var(--bs-border-color-translucent);
|
||||||
--bs-dropdown-border-radius: 0.375rem;
|
--bs-dropdown-border-radius: var(--bs-border-radius);
|
||||||
--bs-dropdown-border-width: var(--bs-border-width);
|
--bs-dropdown-border-width: var(--bs-border-width);
|
||||||
--bs-dropdown-inner-border-radius: calc(0.375rem - var(--bs-border-width));
|
--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
|
||||||
--bs-dropdown-divider-bg: var(--bs-border-color-translucent);
|
--bs-dropdown-divider-bg: var(--bs-border-color-translucent);
|
||||||
--bs-dropdown-divider-margin-y: 0.5rem;
|
--bs-dropdown-divider-margin-y: 0.5rem;
|
||||||
--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
|
--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
|
||||||
@ -3718,7 +3732,7 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.btn-group {
|
.btn-group {
|
||||||
border-radius: 0.375rem;
|
border-radius: var(--bs-border-radius);
|
||||||
}
|
}
|
||||||
.btn-group > :not(.btn-check:first-child) + .btn,
|
.btn-group > :not(.btn-check:first-child) + .btn,
|
||||||
.btn-group > .btn-group:not(:first-child) {
|
.btn-group > .btn-group:not(:first-child) {
|
||||||
@ -3863,7 +3877,7 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.nav-pills {
|
.nav-pills {
|
||||||
--bs-nav-pills-border-radius: 0.375rem;
|
--bs-nav-pills-border-radius: var(--bs-border-radius);
|
||||||
--bs-nav-pills-link-active-color: #fff;
|
--bs-nav-pills-link-active-color: #fff;
|
||||||
--bs-nav-pills-link-active-bg: #0d6efd;
|
--bs-nav-pills-link-active-bg: #0d6efd;
|
||||||
}
|
}
|
||||||
@ -3945,7 +3959,7 @@ textarea.form-control-lg {
|
|||||||
--bs-navbar-toggler-font-size: 1.25rem;
|
--bs-navbar-toggler-font-size: 1.25rem;
|
||||||
--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
|
--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
|
||||||
--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
|
--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
|
||||||
--bs-navbar-toggler-border-radius: 0.375rem;
|
--bs-navbar-toggler-border-radius: var(--bs-border-radius);
|
||||||
--bs-navbar-toggler-focus-width: 0.25rem;
|
--bs-navbar-toggler-focus-width: 0.25rem;
|
||||||
--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
|
--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -4796,14 +4810,14 @@ textarea.form-control-lg {
|
|||||||
--bs-pagination-padding-x: 1.5rem;
|
--bs-pagination-padding-x: 1.5rem;
|
||||||
--bs-pagination-padding-y: 0.75rem;
|
--bs-pagination-padding-y: 0.75rem;
|
||||||
--bs-pagination-font-size: 1.25rem;
|
--bs-pagination-font-size: 1.25rem;
|
||||||
--bs-pagination-border-radius: 0.5rem;
|
--bs-pagination-border-radius: var(--bs-border-radius-lg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.pagination-sm {
|
.pagination-sm {
|
||||||
--bs-pagination-padding-x: 0.5rem;
|
--bs-pagination-padding-x: 0.5rem;
|
||||||
--bs-pagination-padding-y: 0.25rem;
|
--bs-pagination-padding-y: 0.25rem;
|
||||||
--bs-pagination-font-size: 0.875rem;
|
--bs-pagination-font-size: 0.875rem;
|
||||||
--bs-pagination-border-radius: 0.25rem;
|
--bs-pagination-border-radius: var(--bs-border-radius-sm);
|
||||||
}
|
}
|
||||||
|
|
||||||
.badge {
|
.badge {
|
||||||
@ -4812,7 +4826,7 @@ textarea.form-control-lg {
|
|||||||
--bs-badge-font-size: 0.75em;
|
--bs-badge-font-size: 0.75em;
|
||||||
--bs-badge-font-weight: 700;
|
--bs-badge-font-weight: 700;
|
||||||
--bs-badge-color: #fff;
|
--bs-badge-color: #fff;
|
||||||
--bs-badge-border-radius: 0.375rem;
|
--bs-badge-border-radius: var(--bs-border-radius);
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
|
padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
|
||||||
font-size: var(--bs-badge-font-size);
|
font-size: var(--bs-badge-font-size);
|
||||||
@ -4841,7 +4855,7 @@ textarea.form-control-lg {
|
|||||||
--bs-alert-color: inherit;
|
--bs-alert-color: inherit;
|
||||||
--bs-alert-border-color: transparent;
|
--bs-alert-border-color: transparent;
|
||||||
--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
|
--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
|
||||||
--bs-alert-border-radius: 0.375rem;
|
--bs-alert-border-radius: var(--bs-border-radius);
|
||||||
--bs-alert-link-color: inherit;
|
--bs-alert-link-color: inherit;
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
|
padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
|
||||||
@ -5754,7 +5768,6 @@ textarea.form-control-lg {
|
|||||||
--bs-tooltip-arrow-height: 0.4rem;
|
--bs-tooltip-arrow-height: 0.4rem;
|
||||||
z-index: var(--bs-tooltip-zindex);
|
z-index: var(--bs-tooltip-zindex);
|
||||||
display: block;
|
display: block;
|
||||||
padding: var(--bs-tooltip-arrow-height);
|
|
||||||
margin: var(--bs-tooltip-margin);
|
margin: var(--bs-tooltip-margin);
|
||||||
font-family: var(--bs-font-sans-serif);
|
font-family: var(--bs-font-sans-serif);
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
@ -5790,7 +5803,7 @@ textarea.form-control-lg {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
|
.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
|
||||||
bottom: 0;
|
bottom: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
}
|
}
|
||||||
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
|
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
|
||||||
top: -1px;
|
top: -1px;
|
||||||
@ -5798,7 +5811,7 @@ textarea.form-control-lg {
|
|||||||
border-top-color: var(--bs-tooltip-bg);
|
border-top-color: var(--bs-tooltip-bg);
|
||||||
}
|
}
|
||||||
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
|
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
|
||||||
left: 0;
|
left: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
width: var(--bs-tooltip-arrow-height);
|
width: var(--bs-tooltip-arrow-height);
|
||||||
height: var(--bs-tooltip-arrow-width);
|
height: var(--bs-tooltip-arrow-width);
|
||||||
}
|
}
|
||||||
@ -5808,7 +5821,7 @@ textarea.form-control-lg {
|
|||||||
border-right-color: var(--bs-tooltip-bg);
|
border-right-color: var(--bs-tooltip-bg);
|
||||||
}
|
}
|
||||||
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
|
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
|
||||||
top: 0;
|
top: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
}
|
}
|
||||||
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
|
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
|
||||||
bottom: -1px;
|
bottom: -1px;
|
||||||
@ -5816,7 +5829,7 @@ textarea.form-control-lg {
|
|||||||
border-bottom-color: var(--bs-tooltip-bg);
|
border-bottom-color: var(--bs-tooltip-bg);
|
||||||
}
|
}
|
||||||
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
|
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
|
||||||
right: 0;
|
right: calc(-1 * var(--bs-tooltip-arrow-height));
|
||||||
width: var(--bs-tooltip-arrow-height);
|
width: var(--bs-tooltip-arrow-height);
|
||||||
height: var(--bs-tooltip-arrow-width);
|
height: var(--bs-tooltip-arrow-width);
|
||||||
}
|
}
|
||||||
@ -7361,6 +7374,10 @@ textarea.form-control-lg {
|
|||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
|
|
||||||
.d-table {
|
.d-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -9245,6 +9262,9 @@ textarea.form-control-lg {
|
|||||||
.d-sm-grid {
|
.d-sm-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-sm-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-sm-table {
|
.d-sm-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -9803,6 +9823,9 @@ textarea.form-control-lg {
|
|||||||
.d-md-grid {
|
.d-md-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-md-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-md-table {
|
.d-md-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -10361,6 +10384,9 @@ textarea.form-control-lg {
|
|||||||
.d-lg-grid {
|
.d-lg-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-lg-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-lg-table {
|
.d-lg-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -10919,6 +10945,9 @@ textarea.form-control-lg {
|
|||||||
.d-xl-grid {
|
.d-xl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xl-table {
|
.d-xl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -11477,6 +11506,9 @@ textarea.form-control-lg {
|
|||||||
.d-xxl-grid {
|
.d-xxl-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-xxl-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-xxl-table {
|
.d-xxl-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
@ -12020,6 +12052,9 @@ textarea.form-control-lg {
|
|||||||
.d-print-grid {
|
.d-print-grid {
|
||||||
display: grid !important;
|
display: grid !important;
|
||||||
}
|
}
|
||||||
|
.d-print-inline-grid {
|
||||||
|
display: inline-grid !important;
|
||||||
|
}
|
||||||
.d-print-table {
|
.d-print-table {
|
||||||
display: table !important;
|
display: table !important;
|
||||||
}
|
}
|
||||||
|
2
docs/5.3/dist/css/bootstrap.rtl.css.map
vendored
2
docs/5.3/dist/css/bootstrap.rtl.css.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/css/bootstrap.rtl.min.css
vendored
4
docs/5.3/dist/css/bootstrap.rtl.min.css
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/css/bootstrap.rtl.min.css.map
vendored
2
docs/5.3/dist/css/bootstrap.rtl.min.css.map
vendored
File diff suppressed because one or more lines are too long
337
docs/5.3/dist/js/bootstrap.bundle.js
vendored
337
docs/5.3/dist/js/bootstrap.bundle.js
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -9,6 +9,54 @@
|
|||||||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory());
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory());
|
||||||
})(this, (function () { 'use strict';
|
})(this, (function () { 'use strict';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap dom/data.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constants
|
||||||
|
*/
|
||||||
|
|
||||||
|
const elementMap = new Map();
|
||||||
|
const Data = {
|
||||||
|
set(element, key, instance) {
|
||||||
|
if (!elementMap.has(element)) {
|
||||||
|
elementMap.set(element, new Map());
|
||||||
|
}
|
||||||
|
const instanceMap = elementMap.get(element);
|
||||||
|
|
||||||
|
// make it clear we only want one instance per element
|
||||||
|
// can be removed later when multiple key/instances are fine to be used
|
||||||
|
if (!instanceMap.has(key) && instanceMap.size !== 0) {
|
||||||
|
// eslint-disable-next-line no-console
|
||||||
|
console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
instanceMap.set(key, instance);
|
||||||
|
},
|
||||||
|
get(element, key) {
|
||||||
|
if (elementMap.has(element)) {
|
||||||
|
return elementMap.get(element).get(key) || null;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
remove(element, key) {
|
||||||
|
if (!elementMap.has(element)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const instanceMap = elementMap.get(element);
|
||||||
|
instanceMap.delete(key);
|
||||||
|
|
||||||
|
// free up element references if there are no instances left for an element
|
||||||
|
if (instanceMap.size === 0) {
|
||||||
|
elementMap.delete(element);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap util/index.js
|
* Bootstrap util/index.js
|
||||||
@ -328,7 +376,7 @@
|
|||||||
}
|
}
|
||||||
function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
|
function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
|
||||||
const isDelegated = typeof handler === 'string';
|
const isDelegated = typeof handler === 'string';
|
||||||
// todo: tooltip passes `false` instead of selector, so we need to check
|
// TODO: tooltip passes `false` instead of selector, so we need to check
|
||||||
const callable = isDelegated ? delegationFunction : handler || delegationFunction;
|
const callable = isDelegated ? delegationFunction : handler || delegationFunction;
|
||||||
let typeEvent = getTypeEvent(originalTypeEvent);
|
let typeEvent = getTypeEvent(originalTypeEvent);
|
||||||
if (!nativeEvents.has(typeEvent)) {
|
if (!nativeEvents.has(typeEvent)) {
|
||||||
@ -445,11 +493,10 @@
|
|||||||
nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
|
nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
|
||||||
defaultPrevented = jQueryEvent.isDefaultPrevented();
|
defaultPrevented = jQueryEvent.isDefaultPrevented();
|
||||||
}
|
}
|
||||||
let evt = new Event(event, {
|
const evt = hydrateObj(new Event(event, {
|
||||||
bubbles,
|
bubbles,
|
||||||
cancelable: true
|
cancelable: true
|
||||||
});
|
}), args);
|
||||||
evt = hydrateObj(evt, args);
|
|
||||||
if (defaultPrevented) {
|
if (defaultPrevented) {
|
||||||
evt.preventDefault();
|
evt.preventDefault();
|
||||||
}
|
}
|
||||||
@ -478,54 +525,6 @@
|
|||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
* Bootstrap dom/data.js
|
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constants
|
|
||||||
*/
|
|
||||||
|
|
||||||
const elementMap = new Map();
|
|
||||||
const Data = {
|
|
||||||
set(element, key, instance) {
|
|
||||||
if (!elementMap.has(element)) {
|
|
||||||
elementMap.set(element, new Map());
|
|
||||||
}
|
|
||||||
const instanceMap = elementMap.get(element);
|
|
||||||
|
|
||||||
// make it clear we only want one instance per element
|
|
||||||
// can be removed later when multiple key/instances are fine to be used
|
|
||||||
if (!instanceMap.has(key) && instanceMap.size !== 0) {
|
|
||||||
// eslint-disable-next-line no-console
|
|
||||||
console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
instanceMap.set(key, instance);
|
|
||||||
},
|
|
||||||
get(element, key) {
|
|
||||||
if (elementMap.has(element)) {
|
|
||||||
return elementMap.get(element).get(key) || null;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
},
|
|
||||||
remove(element, key) {
|
|
||||||
if (!elementMap.has(element)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
const instanceMap = elementMap.get(element);
|
|
||||||
instanceMap.delete(key);
|
|
||||||
|
|
||||||
// free up element references if there are no instances left for an element
|
|
||||||
if (instanceMap.size === 0) {
|
|
||||||
elementMap.delete(element);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap dom/manipulator.js
|
* Bootstrap dom/manipulator.js
|
||||||
@ -1333,7 +1332,7 @@
|
|||||||
}
|
}
|
||||||
if (!activeElement || !nextElement) {
|
if (!activeElement || !nextElement) {
|
||||||
// Some weirdness is happening, so we bail
|
// Some weirdness is happening, so we bail
|
||||||
// todo: change tests that use empty divs to avoid this check
|
// TODO: change tests that use empty divs to avoid this check
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const isCycling = Boolean(this._interval);
|
const isCycling = Boolean(this._interval);
|
||||||
@ -1839,7 +1838,7 @@
|
|||||||
function getUAString() {
|
function getUAString() {
|
||||||
var uaData = navigator.userAgentData;
|
var uaData = navigator.userAgentData;
|
||||||
|
|
||||||
if (uaData != null && uaData.brands) {
|
if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {
|
||||||
return uaData.brands.map(function (item) {
|
return uaData.brands.map(function (item) {
|
||||||
return item.brand + "/" + item.version;
|
return item.brand + "/" + item.version;
|
||||||
}).join(' ');
|
}).join(' ');
|
||||||
@ -2158,10 +2157,9 @@
|
|||||||
// Zooming can change the DPR, but it seems to report a value that will
|
// Zooming can change the DPR, but it seems to report a value that will
|
||||||
// cleanly divide the values into the appropriate subpixels.
|
// cleanly divide the values into the appropriate subpixels.
|
||||||
|
|
||||||
function roundOffsetsByDPR(_ref) {
|
function roundOffsetsByDPR(_ref, win) {
|
||||||
var x = _ref.x,
|
var x = _ref.x,
|
||||||
y = _ref.y;
|
y = _ref.y;
|
||||||
var win = window;
|
|
||||||
var dpr = win.devicePixelRatio || 1;
|
var dpr = win.devicePixelRatio || 1;
|
||||||
return {
|
return {
|
||||||
x: round(x * dpr) / dpr || 0,
|
x: round(x * dpr) / dpr || 0,
|
||||||
@ -2244,7 +2242,7 @@
|
|||||||
var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
|
var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
|
||||||
x: x,
|
x: x,
|
||||||
y: y
|
y: y
|
||||||
}) : {
|
}, getWindow(popper)) : {
|
||||||
x: x,
|
x: x,
|
||||||
y: y
|
y: y
|
||||||
};
|
};
|
||||||
@ -3596,7 +3594,7 @@
|
|||||||
super(element, config);
|
super(element, config);
|
||||||
this._popper = null;
|
this._popper = null;
|
||||||
this._parent = this._element.parentNode; // dropdown wrapper
|
this._parent = this._element.parentNode; // dropdown wrapper
|
||||||
// todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
// TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
||||||
this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
|
this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
|
||||||
this._inNavbar = this._detectNavbar();
|
this._inNavbar = this._detectNavbar();
|
||||||
}
|
}
|
||||||
@ -3770,7 +3768,7 @@
|
|||||||
|
|
||||||
// Disable Popper if we have a static display or Dropdown is in Navbar
|
// Disable Popper if we have a static display or Dropdown is in Navbar
|
||||||
if (this._inNavbar || this._config.display === 'static') {
|
if (this._inNavbar || this._config.display === 'static') {
|
||||||
Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // todo:v6 remove
|
Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove
|
||||||
defaultBsPopperConfig.modifiers = [{
|
defaultBsPopperConfig.modifiers = [{
|
||||||
name: 'applyStyles',
|
name: 'applyStyles',
|
||||||
enabled: false
|
enabled: false
|
||||||
@ -3852,7 +3850,7 @@
|
|||||||
}
|
}
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
|
|
||||||
// todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
// TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
||||||
const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
|
const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
|
||||||
const instance = Dropdown.getOrCreateInstance(getToggleButton);
|
const instance = Dropdown.getOrCreateInstance(getToggleButton);
|
||||||
if (isUpOrDownEvent) {
|
if (isUpOrDownEvent) {
|
||||||
@ -3889,103 +3887,6 @@
|
|||||||
|
|
||||||
defineJQueryPlugin(Dropdown);
|
defineJQueryPlugin(Dropdown);
|
||||||
|
|
||||||
/**
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
* Bootstrap util/scrollBar.js
|
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constants
|
|
||||||
*/
|
|
||||||
|
|
||||||
const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
|
|
||||||
const SELECTOR_STICKY_CONTENT = '.sticky-top';
|
|
||||||
const PROPERTY_PADDING = 'padding-right';
|
|
||||||
const PROPERTY_MARGIN = 'margin-right';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class definition
|
|
||||||
*/
|
|
||||||
|
|
||||||
class ScrollBarHelper {
|
|
||||||
constructor() {
|
|
||||||
this._element = document.body;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Public
|
|
||||||
getWidth() {
|
|
||||||
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
|
||||||
const documentWidth = document.documentElement.clientWidth;
|
|
||||||
return Math.abs(window.innerWidth - documentWidth);
|
|
||||||
}
|
|
||||||
hide() {
|
|
||||||
const width = this.getWidth();
|
|
||||||
this._disableOverFlow();
|
|
||||||
// give padding to element to balance the hidden scrollbar width
|
|
||||||
this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
|
||||||
// trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
|
|
||||||
this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
|
||||||
this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
|
|
||||||
}
|
|
||||||
reset() {
|
|
||||||
this._resetElementAttributes(this._element, 'overflow');
|
|
||||||
this._resetElementAttributes(this._element, PROPERTY_PADDING);
|
|
||||||
this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
|
|
||||||
this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
|
|
||||||
}
|
|
||||||
isOverflowing() {
|
|
||||||
return this.getWidth() > 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Private
|
|
||||||
_disableOverFlow() {
|
|
||||||
this._saveInitialAttribute(this._element, 'overflow');
|
|
||||||
this._element.style.overflow = 'hidden';
|
|
||||||
}
|
|
||||||
_setElementAttributes(selector, styleProperty, callback) {
|
|
||||||
const scrollbarWidth = this.getWidth();
|
|
||||||
const manipulationCallBack = element => {
|
|
||||||
if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this._saveInitialAttribute(element, styleProperty);
|
|
||||||
const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
|
|
||||||
element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
|
|
||||||
};
|
|
||||||
this._applyManipulationCallback(selector, manipulationCallBack);
|
|
||||||
}
|
|
||||||
_saveInitialAttribute(element, styleProperty) {
|
|
||||||
const actualValue = element.style.getPropertyValue(styleProperty);
|
|
||||||
if (actualValue) {
|
|
||||||
Manipulator.setDataAttribute(element, styleProperty, actualValue);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
_resetElementAttributes(selector, styleProperty) {
|
|
||||||
const manipulationCallBack = element => {
|
|
||||||
const value = Manipulator.getDataAttribute(element, styleProperty);
|
|
||||||
// We only want to remove the property if the value is `null`; the value can also be zero
|
|
||||||
if (value === null) {
|
|
||||||
element.style.removeProperty(styleProperty);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
Manipulator.removeDataAttribute(element, styleProperty);
|
|
||||||
element.style.setProperty(styleProperty, value);
|
|
||||||
};
|
|
||||||
this._applyManipulationCallback(selector, manipulationCallBack);
|
|
||||||
}
|
|
||||||
_applyManipulationCallback(selector, callBack) {
|
|
||||||
if (isElement$1(selector)) {
|
|
||||||
callBack(selector);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (const sel of SelectorEngine.find(selector, this._element)) {
|
|
||||||
callBack(sel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap util/backdrop.js
|
* Bootstrap util/backdrop.js
|
||||||
@ -4208,6 +4109,103 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap util/scrollBar.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constants
|
||||||
|
*/
|
||||||
|
|
||||||
|
const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
|
||||||
|
const SELECTOR_STICKY_CONTENT = '.sticky-top';
|
||||||
|
const PROPERTY_PADDING = 'padding-right';
|
||||||
|
const PROPERTY_MARGIN = 'margin-right';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class definition
|
||||||
|
*/
|
||||||
|
|
||||||
|
class ScrollBarHelper {
|
||||||
|
constructor() {
|
||||||
|
this._element = document.body;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Public
|
||||||
|
getWidth() {
|
||||||
|
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
||||||
|
const documentWidth = document.documentElement.clientWidth;
|
||||||
|
return Math.abs(window.innerWidth - documentWidth);
|
||||||
|
}
|
||||||
|
hide() {
|
||||||
|
const width = this.getWidth();
|
||||||
|
this._disableOverFlow();
|
||||||
|
// give padding to element to balance the hidden scrollbar width
|
||||||
|
this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
||||||
|
// trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
|
||||||
|
this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
||||||
|
this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
|
||||||
|
}
|
||||||
|
reset() {
|
||||||
|
this._resetElementAttributes(this._element, 'overflow');
|
||||||
|
this._resetElementAttributes(this._element, PROPERTY_PADDING);
|
||||||
|
this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
|
||||||
|
this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
|
||||||
|
}
|
||||||
|
isOverflowing() {
|
||||||
|
return this.getWidth() > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Private
|
||||||
|
_disableOverFlow() {
|
||||||
|
this._saveInitialAttribute(this._element, 'overflow');
|
||||||
|
this._element.style.overflow = 'hidden';
|
||||||
|
}
|
||||||
|
_setElementAttributes(selector, styleProperty, callback) {
|
||||||
|
const scrollbarWidth = this.getWidth();
|
||||||
|
const manipulationCallBack = element => {
|
||||||
|
if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this._saveInitialAttribute(element, styleProperty);
|
||||||
|
const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
|
||||||
|
element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
|
||||||
|
};
|
||||||
|
this._applyManipulationCallback(selector, manipulationCallBack);
|
||||||
|
}
|
||||||
|
_saveInitialAttribute(element, styleProperty) {
|
||||||
|
const actualValue = element.style.getPropertyValue(styleProperty);
|
||||||
|
if (actualValue) {
|
||||||
|
Manipulator.setDataAttribute(element, styleProperty, actualValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_resetElementAttributes(selector, styleProperty) {
|
||||||
|
const manipulationCallBack = element => {
|
||||||
|
const value = Manipulator.getDataAttribute(element, styleProperty);
|
||||||
|
// We only want to remove the property if the value is `null`; the value can also be zero
|
||||||
|
if (value === null) {
|
||||||
|
element.style.removeProperty(styleProperty);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Manipulator.removeDataAttribute(element, styleProperty);
|
||||||
|
element.style.setProperty(styleProperty, value);
|
||||||
|
};
|
||||||
|
this._applyManipulationCallback(selector, manipulationCallBack);
|
||||||
|
}
|
||||||
|
_applyManipulationCallback(selector, callBack) {
|
||||||
|
if (isElement$1(selector)) {
|
||||||
|
callBack(selector);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (const sel of SelectorEngine.find(selector, this._element)) {
|
||||||
|
callBack(sel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap modal.js
|
* Bootstrap modal.js
|
||||||
@ -4316,9 +4314,8 @@
|
|||||||
this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
|
this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
|
||||||
}
|
}
|
||||||
dispose() {
|
dispose() {
|
||||||
for (const htmlElement of [window, this._dialog]) {
|
EventHandler.off(window, EVENT_KEY$4);
|
||||||
EventHandler.off(htmlElement, EVENT_KEY$4);
|
EventHandler.off(this._dialog, EVENT_KEY$4);
|
||||||
}
|
|
||||||
this._backdrop.dispose();
|
this._backdrop.dispose();
|
||||||
this._focustrap.deactivate();
|
this._focustrap.deactivate();
|
||||||
super.dispose();
|
super.dispose();
|
||||||
@ -4751,7 +4748,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
||||||
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
||||||
@ -4778,6 +4774,9 @@
|
|||||||
// Check if a regular expression validates the attribute.
|
// Check if a regular expression validates the attribute.
|
||||||
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// js-docs-start allow-list
|
||||||
|
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
||||||
const DefaultAllowlist = {
|
const DefaultAllowlist = {
|
||||||
// Global attributes allowed on any supplied element below.
|
// Global attributes allowed on any supplied element below.
|
||||||
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
@ -4811,6 +4810,8 @@
|
|||||||
u: [],
|
u: [],
|
||||||
ul: []
|
ul: []
|
||||||
};
|
};
|
||||||
|
// js-docs-end allow-list
|
||||||
|
|
||||||
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
||||||
if (!unsafeHtml.length) {
|
if (!unsafeHtml.length) {
|
||||||
return unsafeHtml;
|
return unsafeHtml;
|
||||||
@ -5022,7 +5023,7 @@
|
|||||||
delay: 0,
|
delay: 0,
|
||||||
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
||||||
html: false,
|
html: false,
|
||||||
offset: [0, 0],
|
offset: [0, 6],
|
||||||
placement: 'top',
|
placement: 'top',
|
||||||
popperConfig: null,
|
popperConfig: null,
|
||||||
sanitize: true,
|
sanitize: true,
|
||||||
@ -5135,7 +5136,7 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// todo v6 remove this OR make it optional
|
// TODO: v6 remove this or make it optional
|
||||||
this._disposePopper();
|
this._disposePopper();
|
||||||
const tip = this._getTipElement();
|
const tip = this._getTipElement();
|
||||||
this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
|
this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
|
||||||
@ -5221,12 +5222,12 @@
|
|||||||
_createTipElement(content) {
|
_createTipElement(content) {
|
||||||
const tip = this._getTemplateFactory(content).toHtml();
|
const tip = this._getTemplateFactory(content).toHtml();
|
||||||
|
|
||||||
// todo: remove this check on v6
|
// TODO: remove this check in v6
|
||||||
if (!tip) {
|
if (!tip) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);
|
tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);
|
||||||
// todo: on v6 the following can be achieved with CSS only
|
// TODO: v6 the following can be achieved with CSS only
|
||||||
tip.classList.add(`bs-${this.constructor.NAME}-auto`);
|
tip.classList.add(`bs-${this.constructor.NAME}-auto`);
|
||||||
const tipId = getUID(this.constructor.NAME).toString();
|
const tipId = getUID(this.constructor.NAME).toString();
|
||||||
tip.setAttribute('id', tipId);
|
tip.setAttribute('id', tipId);
|
||||||
@ -5858,7 +5859,7 @@
|
|||||||
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
||||||
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
||||||
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
||||||
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // todo:v6: could be only `tab`
|
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // TODO: could only be `tab` in v6
|
||||||
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
||||||
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
||||||
|
|
||||||
@ -5872,7 +5873,7 @@
|
|||||||
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
||||||
if (!this._parent) {
|
if (!this._parent) {
|
||||||
return;
|
return;
|
||||||
// todo: should Throw exception on v6
|
// TODO: should throw exception in v6
|
||||||
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
docs/5.3/dist/js/bootstrap.bundle.js.map
vendored
2
docs/5.3/dist/js/bootstrap.bundle.js.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/js/bootstrap.bundle.min.js
vendored
4
docs/5.3/dist/js/bootstrap.bundle.min.js
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/js/bootstrap.bundle.min.js.map
vendored
2
docs/5.3/dist/js/bootstrap.bundle.min.js.map
vendored
File diff suppressed because one or more lines are too long
330
docs/5.3/dist/js/bootstrap.esm.js
vendored
330
docs/5.3/dist/js/bootstrap.esm.js
vendored
@ -1,10 +1,58 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
import * as Popper from '@popperjs/core';
|
import * as Popper from '@popperjs/core';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap dom/data.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constants
|
||||||
|
*/
|
||||||
|
|
||||||
|
const elementMap = new Map();
|
||||||
|
const Data = {
|
||||||
|
set(element, key, instance) {
|
||||||
|
if (!elementMap.has(element)) {
|
||||||
|
elementMap.set(element, new Map());
|
||||||
|
}
|
||||||
|
const instanceMap = elementMap.get(element);
|
||||||
|
|
||||||
|
// make it clear we only want one instance per element
|
||||||
|
// can be removed later when multiple key/instances are fine to be used
|
||||||
|
if (!instanceMap.has(key) && instanceMap.size !== 0) {
|
||||||
|
// eslint-disable-next-line no-console
|
||||||
|
console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
instanceMap.set(key, instance);
|
||||||
|
},
|
||||||
|
get(element, key) {
|
||||||
|
if (elementMap.has(element)) {
|
||||||
|
return elementMap.get(element).get(key) || null;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
remove(element, key) {
|
||||||
|
if (!elementMap.has(element)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const instanceMap = elementMap.get(element);
|
||||||
|
instanceMap.delete(key);
|
||||||
|
|
||||||
|
// free up element references if there are no instances left for an element
|
||||||
|
if (instanceMap.size === 0) {
|
||||||
|
elementMap.delete(element);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap util/index.js
|
* Bootstrap util/index.js
|
||||||
@ -324,7 +372,7 @@ function findHandler(events, callable, delegationSelector = null) {
|
|||||||
}
|
}
|
||||||
function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
|
function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
|
||||||
const isDelegated = typeof handler === 'string';
|
const isDelegated = typeof handler === 'string';
|
||||||
// todo: tooltip passes `false` instead of selector, so we need to check
|
// TODO: tooltip passes `false` instead of selector, so we need to check
|
||||||
const callable = isDelegated ? delegationFunction : handler || delegationFunction;
|
const callable = isDelegated ? delegationFunction : handler || delegationFunction;
|
||||||
let typeEvent = getTypeEvent(originalTypeEvent);
|
let typeEvent = getTypeEvent(originalTypeEvent);
|
||||||
if (!nativeEvents.has(typeEvent)) {
|
if (!nativeEvents.has(typeEvent)) {
|
||||||
@ -441,11 +489,10 @@ const EventHandler = {
|
|||||||
nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
|
nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
|
||||||
defaultPrevented = jQueryEvent.isDefaultPrevented();
|
defaultPrevented = jQueryEvent.isDefaultPrevented();
|
||||||
}
|
}
|
||||||
let evt = new Event(event, {
|
const evt = hydrateObj(new Event(event, {
|
||||||
bubbles,
|
bubbles,
|
||||||
cancelable: true
|
cancelable: true
|
||||||
});
|
}), args);
|
||||||
evt = hydrateObj(evt, args);
|
|
||||||
if (defaultPrevented) {
|
if (defaultPrevented) {
|
||||||
evt.preventDefault();
|
evt.preventDefault();
|
||||||
}
|
}
|
||||||
@ -474,54 +521,6 @@ function hydrateObj(obj, meta = {}) {
|
|||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
* Bootstrap dom/data.js
|
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constants
|
|
||||||
*/
|
|
||||||
|
|
||||||
const elementMap = new Map();
|
|
||||||
const Data = {
|
|
||||||
set(element, key, instance) {
|
|
||||||
if (!elementMap.has(element)) {
|
|
||||||
elementMap.set(element, new Map());
|
|
||||||
}
|
|
||||||
const instanceMap = elementMap.get(element);
|
|
||||||
|
|
||||||
// make it clear we only want one instance per element
|
|
||||||
// can be removed later when multiple key/instances are fine to be used
|
|
||||||
if (!instanceMap.has(key) && instanceMap.size !== 0) {
|
|
||||||
// eslint-disable-next-line no-console
|
|
||||||
console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
instanceMap.set(key, instance);
|
|
||||||
},
|
|
||||||
get(element, key) {
|
|
||||||
if (elementMap.has(element)) {
|
|
||||||
return elementMap.get(element).get(key) || null;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
},
|
|
||||||
remove(element, key) {
|
|
||||||
if (!elementMap.has(element)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
const instanceMap = elementMap.get(element);
|
|
||||||
instanceMap.delete(key);
|
|
||||||
|
|
||||||
// free up element references if there are no instances left for an element
|
|
||||||
if (instanceMap.size === 0) {
|
|
||||||
elementMap.delete(element);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap dom/manipulator.js
|
* Bootstrap dom/manipulator.js
|
||||||
@ -1329,7 +1328,7 @@ class Carousel extends BaseComponent {
|
|||||||
}
|
}
|
||||||
if (!activeElement || !nextElement) {
|
if (!activeElement || !nextElement) {
|
||||||
// Some weirdness is happening, so we bail
|
// Some weirdness is happening, so we bail
|
||||||
// todo: change tests that use empty divs to avoid this check
|
// TODO: change tests that use empty divs to avoid this check
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const isCycling = Boolean(this._interval);
|
const isCycling = Boolean(this._interval);
|
||||||
@ -1746,7 +1745,7 @@ class Dropdown extends BaseComponent {
|
|||||||
super(element, config);
|
super(element, config);
|
||||||
this._popper = null;
|
this._popper = null;
|
||||||
this._parent = this._element.parentNode; // dropdown wrapper
|
this._parent = this._element.parentNode; // dropdown wrapper
|
||||||
// todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
// TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
||||||
this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
|
this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
|
||||||
this._inNavbar = this._detectNavbar();
|
this._inNavbar = this._detectNavbar();
|
||||||
}
|
}
|
||||||
@ -1920,7 +1919,7 @@ class Dropdown extends BaseComponent {
|
|||||||
|
|
||||||
// Disable Popper if we have a static display or Dropdown is in Navbar
|
// Disable Popper if we have a static display or Dropdown is in Navbar
|
||||||
if (this._inNavbar || this._config.display === 'static') {
|
if (this._inNavbar || this._config.display === 'static') {
|
||||||
Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // todo:v6 remove
|
Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove
|
||||||
defaultBsPopperConfig.modifiers = [{
|
defaultBsPopperConfig.modifiers = [{
|
||||||
name: 'applyStyles',
|
name: 'applyStyles',
|
||||||
enabled: false
|
enabled: false
|
||||||
@ -2002,7 +2001,7 @@ class Dropdown extends BaseComponent {
|
|||||||
}
|
}
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
|
|
||||||
// todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
// TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
||||||
const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
|
const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
|
||||||
const instance = Dropdown.getOrCreateInstance(getToggleButton);
|
const instance = Dropdown.getOrCreateInstance(getToggleButton);
|
||||||
if (isUpOrDownEvent) {
|
if (isUpOrDownEvent) {
|
||||||
@ -2039,103 +2038,6 @@ EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, functi
|
|||||||
|
|
||||||
defineJQueryPlugin(Dropdown);
|
defineJQueryPlugin(Dropdown);
|
||||||
|
|
||||||
/**
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
* Bootstrap util/scrollBar.js
|
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constants
|
|
||||||
*/
|
|
||||||
|
|
||||||
const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
|
|
||||||
const SELECTOR_STICKY_CONTENT = '.sticky-top';
|
|
||||||
const PROPERTY_PADDING = 'padding-right';
|
|
||||||
const PROPERTY_MARGIN = 'margin-right';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class definition
|
|
||||||
*/
|
|
||||||
|
|
||||||
class ScrollBarHelper {
|
|
||||||
constructor() {
|
|
||||||
this._element = document.body;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Public
|
|
||||||
getWidth() {
|
|
||||||
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
|
||||||
const documentWidth = document.documentElement.clientWidth;
|
|
||||||
return Math.abs(window.innerWidth - documentWidth);
|
|
||||||
}
|
|
||||||
hide() {
|
|
||||||
const width = this.getWidth();
|
|
||||||
this._disableOverFlow();
|
|
||||||
// give padding to element to balance the hidden scrollbar width
|
|
||||||
this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
|
||||||
// trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
|
|
||||||
this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
|
||||||
this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
|
|
||||||
}
|
|
||||||
reset() {
|
|
||||||
this._resetElementAttributes(this._element, 'overflow');
|
|
||||||
this._resetElementAttributes(this._element, PROPERTY_PADDING);
|
|
||||||
this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
|
|
||||||
this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
|
|
||||||
}
|
|
||||||
isOverflowing() {
|
|
||||||
return this.getWidth() > 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Private
|
|
||||||
_disableOverFlow() {
|
|
||||||
this._saveInitialAttribute(this._element, 'overflow');
|
|
||||||
this._element.style.overflow = 'hidden';
|
|
||||||
}
|
|
||||||
_setElementAttributes(selector, styleProperty, callback) {
|
|
||||||
const scrollbarWidth = this.getWidth();
|
|
||||||
const manipulationCallBack = element => {
|
|
||||||
if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this._saveInitialAttribute(element, styleProperty);
|
|
||||||
const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
|
|
||||||
element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
|
|
||||||
};
|
|
||||||
this._applyManipulationCallback(selector, manipulationCallBack);
|
|
||||||
}
|
|
||||||
_saveInitialAttribute(element, styleProperty) {
|
|
||||||
const actualValue = element.style.getPropertyValue(styleProperty);
|
|
||||||
if (actualValue) {
|
|
||||||
Manipulator.setDataAttribute(element, styleProperty, actualValue);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
_resetElementAttributes(selector, styleProperty) {
|
|
||||||
const manipulationCallBack = element => {
|
|
||||||
const value = Manipulator.getDataAttribute(element, styleProperty);
|
|
||||||
// We only want to remove the property if the value is `null`; the value can also be zero
|
|
||||||
if (value === null) {
|
|
||||||
element.style.removeProperty(styleProperty);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
Manipulator.removeDataAttribute(element, styleProperty);
|
|
||||||
element.style.setProperty(styleProperty, value);
|
|
||||||
};
|
|
||||||
this._applyManipulationCallback(selector, manipulationCallBack);
|
|
||||||
}
|
|
||||||
_applyManipulationCallback(selector, callBack) {
|
|
||||||
if (isElement(selector)) {
|
|
||||||
callBack(selector);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (const sel of SelectorEngine.find(selector, this._element)) {
|
|
||||||
callBack(sel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap util/backdrop.js
|
* Bootstrap util/backdrop.js
|
||||||
@ -2358,6 +2260,103 @@ class FocusTrap extends Config {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap util/scrollBar.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constants
|
||||||
|
*/
|
||||||
|
|
||||||
|
const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
|
||||||
|
const SELECTOR_STICKY_CONTENT = '.sticky-top';
|
||||||
|
const PROPERTY_PADDING = 'padding-right';
|
||||||
|
const PROPERTY_MARGIN = 'margin-right';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class definition
|
||||||
|
*/
|
||||||
|
|
||||||
|
class ScrollBarHelper {
|
||||||
|
constructor() {
|
||||||
|
this._element = document.body;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Public
|
||||||
|
getWidth() {
|
||||||
|
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
||||||
|
const documentWidth = document.documentElement.clientWidth;
|
||||||
|
return Math.abs(window.innerWidth - documentWidth);
|
||||||
|
}
|
||||||
|
hide() {
|
||||||
|
const width = this.getWidth();
|
||||||
|
this._disableOverFlow();
|
||||||
|
// give padding to element to balance the hidden scrollbar width
|
||||||
|
this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
||||||
|
// trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
|
||||||
|
this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
||||||
|
this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
|
||||||
|
}
|
||||||
|
reset() {
|
||||||
|
this._resetElementAttributes(this._element, 'overflow');
|
||||||
|
this._resetElementAttributes(this._element, PROPERTY_PADDING);
|
||||||
|
this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
|
||||||
|
this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
|
||||||
|
}
|
||||||
|
isOverflowing() {
|
||||||
|
return this.getWidth() > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Private
|
||||||
|
_disableOverFlow() {
|
||||||
|
this._saveInitialAttribute(this._element, 'overflow');
|
||||||
|
this._element.style.overflow = 'hidden';
|
||||||
|
}
|
||||||
|
_setElementAttributes(selector, styleProperty, callback) {
|
||||||
|
const scrollbarWidth = this.getWidth();
|
||||||
|
const manipulationCallBack = element => {
|
||||||
|
if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this._saveInitialAttribute(element, styleProperty);
|
||||||
|
const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
|
||||||
|
element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
|
||||||
|
};
|
||||||
|
this._applyManipulationCallback(selector, manipulationCallBack);
|
||||||
|
}
|
||||||
|
_saveInitialAttribute(element, styleProperty) {
|
||||||
|
const actualValue = element.style.getPropertyValue(styleProperty);
|
||||||
|
if (actualValue) {
|
||||||
|
Manipulator.setDataAttribute(element, styleProperty, actualValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_resetElementAttributes(selector, styleProperty) {
|
||||||
|
const manipulationCallBack = element => {
|
||||||
|
const value = Manipulator.getDataAttribute(element, styleProperty);
|
||||||
|
// We only want to remove the property if the value is `null`; the value can also be zero
|
||||||
|
if (value === null) {
|
||||||
|
element.style.removeProperty(styleProperty);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Manipulator.removeDataAttribute(element, styleProperty);
|
||||||
|
element.style.setProperty(styleProperty, value);
|
||||||
|
};
|
||||||
|
this._applyManipulationCallback(selector, manipulationCallBack);
|
||||||
|
}
|
||||||
|
_applyManipulationCallback(selector, callBack) {
|
||||||
|
if (isElement(selector)) {
|
||||||
|
callBack(selector);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (const sel of SelectorEngine.find(selector, this._element)) {
|
||||||
|
callBack(sel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap modal.js
|
* Bootstrap modal.js
|
||||||
@ -2466,9 +2465,8 @@ class Modal extends BaseComponent {
|
|||||||
this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
|
this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
|
||||||
}
|
}
|
||||||
dispose() {
|
dispose() {
|
||||||
for (const htmlElement of [window, this._dialog]) {
|
EventHandler.off(window, EVENT_KEY$4);
|
||||||
EventHandler.off(htmlElement, EVENT_KEY$4);
|
EventHandler.off(this._dialog, EVENT_KEY$4);
|
||||||
}
|
|
||||||
this._backdrop.dispose();
|
this._backdrop.dispose();
|
||||||
this._focustrap.deactivate();
|
this._focustrap.deactivate();
|
||||||
super.dispose();
|
super.dispose();
|
||||||
@ -2901,7 +2899,6 @@ defineJQueryPlugin(Offcanvas);
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
||||||
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
||||||
@ -2928,6 +2925,9 @@ const allowedAttribute = (attribute, allowedAttributeList) => {
|
|||||||
// Check if a regular expression validates the attribute.
|
// Check if a regular expression validates the attribute.
|
||||||
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// js-docs-start allow-list
|
||||||
|
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
||||||
const DefaultAllowlist = {
|
const DefaultAllowlist = {
|
||||||
// Global attributes allowed on any supplied element below.
|
// Global attributes allowed on any supplied element below.
|
||||||
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
@ -2961,6 +2961,8 @@ const DefaultAllowlist = {
|
|||||||
u: [],
|
u: [],
|
||||||
ul: []
|
ul: []
|
||||||
};
|
};
|
||||||
|
// js-docs-end allow-list
|
||||||
|
|
||||||
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
||||||
if (!unsafeHtml.length) {
|
if (!unsafeHtml.length) {
|
||||||
return unsafeHtml;
|
return unsafeHtml;
|
||||||
@ -3172,7 +3174,7 @@ const Default$3 = {
|
|||||||
delay: 0,
|
delay: 0,
|
||||||
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
||||||
html: false,
|
html: false,
|
||||||
offset: [0, 0],
|
offset: [0, 6],
|
||||||
placement: 'top',
|
placement: 'top',
|
||||||
popperConfig: null,
|
popperConfig: null,
|
||||||
sanitize: true,
|
sanitize: true,
|
||||||
@ -3285,7 +3287,7 @@ class Tooltip extends BaseComponent {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// todo v6 remove this OR make it optional
|
// TODO: v6 remove this or make it optional
|
||||||
this._disposePopper();
|
this._disposePopper();
|
||||||
const tip = this._getTipElement();
|
const tip = this._getTipElement();
|
||||||
this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
|
this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
|
||||||
@ -3371,12 +3373,12 @@ class Tooltip extends BaseComponent {
|
|||||||
_createTipElement(content) {
|
_createTipElement(content) {
|
||||||
const tip = this._getTemplateFactory(content).toHtml();
|
const tip = this._getTemplateFactory(content).toHtml();
|
||||||
|
|
||||||
// todo: remove this check on v6
|
// TODO: remove this check in v6
|
||||||
if (!tip) {
|
if (!tip) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);
|
tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);
|
||||||
// todo: on v6 the following can be achieved with CSS only
|
// TODO: v6 the following can be achieved with CSS only
|
||||||
tip.classList.add(`bs-${this.constructor.NAME}-auto`);
|
tip.classList.add(`bs-${this.constructor.NAME}-auto`);
|
||||||
const tipId = getUID(this.constructor.NAME).toString();
|
const tipId = getUID(this.constructor.NAME).toString();
|
||||||
tip.setAttribute('id', tipId);
|
tip.setAttribute('id', tipId);
|
||||||
@ -4008,7 +4010,7 @@ const NOT_SELECTOR_DROPDOWN_TOGGLE = ':not(.dropdown-toggle)';
|
|||||||
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
||||||
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
||||||
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
||||||
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // todo:v6: could be only `tab`
|
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // TODO: could only be `tab` in v6
|
||||||
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
||||||
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
||||||
|
|
||||||
@ -4022,7 +4024,7 @@ class Tab extends BaseComponent {
|
|||||||
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
||||||
if (!this._parent) {
|
if (!this._parent) {
|
||||||
return;
|
return;
|
||||||
// todo: should Throw exception on v6
|
// TODO: should throw exception in v6
|
||||||
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
docs/5.3/dist/js/bootstrap.esm.js.map
vendored
2
docs/5.3/dist/js/bootstrap.esm.js.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/js/bootstrap.esm.min.js
vendored
4
docs/5.3/dist/js/bootstrap.esm.min.js
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/js/bootstrap.esm.min.js.map
vendored
2
docs/5.3/dist/js/bootstrap.esm.min.js.map
vendored
File diff suppressed because one or more lines are too long
330
docs/5.3/dist/js/bootstrap.js
vendored
330
docs/5.3/dist/js/bootstrap.js
vendored
@ -1,5 +1,5 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v5.3.0-alpha2 (https://getbootstrap.com/)
|
* Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
@ -28,6 +28,54 @@
|
|||||||
|
|
||||||
const Popper__namespace = /*#__PURE__*/_interopNamespaceDefault(Popper);
|
const Popper__namespace = /*#__PURE__*/_interopNamespaceDefault(Popper);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap dom/data.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constants
|
||||||
|
*/
|
||||||
|
|
||||||
|
const elementMap = new Map();
|
||||||
|
const Data = {
|
||||||
|
set(element, key, instance) {
|
||||||
|
if (!elementMap.has(element)) {
|
||||||
|
elementMap.set(element, new Map());
|
||||||
|
}
|
||||||
|
const instanceMap = elementMap.get(element);
|
||||||
|
|
||||||
|
// make it clear we only want one instance per element
|
||||||
|
// can be removed later when multiple key/instances are fine to be used
|
||||||
|
if (!instanceMap.has(key) && instanceMap.size !== 0) {
|
||||||
|
// eslint-disable-next-line no-console
|
||||||
|
console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
instanceMap.set(key, instance);
|
||||||
|
},
|
||||||
|
get(element, key) {
|
||||||
|
if (elementMap.has(element)) {
|
||||||
|
return elementMap.get(element).get(key) || null;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
|
remove(element, key) {
|
||||||
|
if (!elementMap.has(element)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const instanceMap = elementMap.get(element);
|
||||||
|
instanceMap.delete(key);
|
||||||
|
|
||||||
|
// free up element references if there are no instances left for an element
|
||||||
|
if (instanceMap.size === 0) {
|
||||||
|
elementMap.delete(element);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap util/index.js
|
* Bootstrap util/index.js
|
||||||
@ -347,7 +395,7 @@
|
|||||||
}
|
}
|
||||||
function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
|
function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
|
||||||
const isDelegated = typeof handler === 'string';
|
const isDelegated = typeof handler === 'string';
|
||||||
// todo: tooltip passes `false` instead of selector, so we need to check
|
// TODO: tooltip passes `false` instead of selector, so we need to check
|
||||||
const callable = isDelegated ? delegationFunction : handler || delegationFunction;
|
const callable = isDelegated ? delegationFunction : handler || delegationFunction;
|
||||||
let typeEvent = getTypeEvent(originalTypeEvent);
|
let typeEvent = getTypeEvent(originalTypeEvent);
|
||||||
if (!nativeEvents.has(typeEvent)) {
|
if (!nativeEvents.has(typeEvent)) {
|
||||||
@ -464,11 +512,10 @@
|
|||||||
nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
|
nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
|
||||||
defaultPrevented = jQueryEvent.isDefaultPrevented();
|
defaultPrevented = jQueryEvent.isDefaultPrevented();
|
||||||
}
|
}
|
||||||
let evt = new Event(event, {
|
const evt = hydrateObj(new Event(event, {
|
||||||
bubbles,
|
bubbles,
|
||||||
cancelable: true
|
cancelable: true
|
||||||
});
|
}), args);
|
||||||
evt = hydrateObj(evt, args);
|
|
||||||
if (defaultPrevented) {
|
if (defaultPrevented) {
|
||||||
evt.preventDefault();
|
evt.preventDefault();
|
||||||
}
|
}
|
||||||
@ -497,54 +544,6 @@
|
|||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
* Bootstrap dom/data.js
|
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constants
|
|
||||||
*/
|
|
||||||
|
|
||||||
const elementMap = new Map();
|
|
||||||
const Data = {
|
|
||||||
set(element, key, instance) {
|
|
||||||
if (!elementMap.has(element)) {
|
|
||||||
elementMap.set(element, new Map());
|
|
||||||
}
|
|
||||||
const instanceMap = elementMap.get(element);
|
|
||||||
|
|
||||||
// make it clear we only want one instance per element
|
|
||||||
// can be removed later when multiple key/instances are fine to be used
|
|
||||||
if (!instanceMap.has(key) && instanceMap.size !== 0) {
|
|
||||||
// eslint-disable-next-line no-console
|
|
||||||
console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
instanceMap.set(key, instance);
|
|
||||||
},
|
|
||||||
get(element, key) {
|
|
||||||
if (elementMap.has(element)) {
|
|
||||||
return elementMap.get(element).get(key) || null;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
},
|
|
||||||
remove(element, key) {
|
|
||||||
if (!elementMap.has(element)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
const instanceMap = elementMap.get(element);
|
|
||||||
instanceMap.delete(key);
|
|
||||||
|
|
||||||
// free up element references if there are no instances left for an element
|
|
||||||
if (instanceMap.size === 0) {
|
|
||||||
elementMap.delete(element);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap dom/manipulator.js
|
* Bootstrap dom/manipulator.js
|
||||||
@ -1352,7 +1351,7 @@
|
|||||||
}
|
}
|
||||||
if (!activeElement || !nextElement) {
|
if (!activeElement || !nextElement) {
|
||||||
// Some weirdness is happening, so we bail
|
// Some weirdness is happening, so we bail
|
||||||
// todo: change tests that use empty divs to avoid this check
|
// TODO: change tests that use empty divs to avoid this check
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const isCycling = Boolean(this._interval);
|
const isCycling = Boolean(this._interval);
|
||||||
@ -1769,7 +1768,7 @@
|
|||||||
super(element, config);
|
super(element, config);
|
||||||
this._popper = null;
|
this._popper = null;
|
||||||
this._parent = this._element.parentNode; // dropdown wrapper
|
this._parent = this._element.parentNode; // dropdown wrapper
|
||||||
// todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
// TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
||||||
this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
|
this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
|
||||||
this._inNavbar = this._detectNavbar();
|
this._inNavbar = this._detectNavbar();
|
||||||
}
|
}
|
||||||
@ -1943,7 +1942,7 @@
|
|||||||
|
|
||||||
// Disable Popper if we have a static display or Dropdown is in Navbar
|
// Disable Popper if we have a static display or Dropdown is in Navbar
|
||||||
if (this._inNavbar || this._config.display === 'static') {
|
if (this._inNavbar || this._config.display === 'static') {
|
||||||
Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // todo:v6 remove
|
Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove
|
||||||
defaultBsPopperConfig.modifiers = [{
|
defaultBsPopperConfig.modifiers = [{
|
||||||
name: 'applyStyles',
|
name: 'applyStyles',
|
||||||
enabled: false
|
enabled: false
|
||||||
@ -2025,7 +2024,7 @@
|
|||||||
}
|
}
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
|
|
||||||
// todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
// TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/
|
||||||
const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
|
const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
|
||||||
const instance = Dropdown.getOrCreateInstance(getToggleButton);
|
const instance = Dropdown.getOrCreateInstance(getToggleButton);
|
||||||
if (isUpOrDownEvent) {
|
if (isUpOrDownEvent) {
|
||||||
@ -2062,103 +2061,6 @@
|
|||||||
|
|
||||||
defineJQueryPlugin(Dropdown);
|
defineJQueryPlugin(Dropdown);
|
||||||
|
|
||||||
/**
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
* Bootstrap util/scrollBar.js
|
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
||||||
* --------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constants
|
|
||||||
*/
|
|
||||||
|
|
||||||
const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
|
|
||||||
const SELECTOR_STICKY_CONTENT = '.sticky-top';
|
|
||||||
const PROPERTY_PADDING = 'padding-right';
|
|
||||||
const PROPERTY_MARGIN = 'margin-right';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class definition
|
|
||||||
*/
|
|
||||||
|
|
||||||
class ScrollBarHelper {
|
|
||||||
constructor() {
|
|
||||||
this._element = document.body;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Public
|
|
||||||
getWidth() {
|
|
||||||
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
|
||||||
const documentWidth = document.documentElement.clientWidth;
|
|
||||||
return Math.abs(window.innerWidth - documentWidth);
|
|
||||||
}
|
|
||||||
hide() {
|
|
||||||
const width = this.getWidth();
|
|
||||||
this._disableOverFlow();
|
|
||||||
// give padding to element to balance the hidden scrollbar width
|
|
||||||
this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
|
||||||
// trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
|
|
||||||
this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
|
||||||
this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
|
|
||||||
}
|
|
||||||
reset() {
|
|
||||||
this._resetElementAttributes(this._element, 'overflow');
|
|
||||||
this._resetElementAttributes(this._element, PROPERTY_PADDING);
|
|
||||||
this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
|
|
||||||
this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
|
|
||||||
}
|
|
||||||
isOverflowing() {
|
|
||||||
return this.getWidth() > 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Private
|
|
||||||
_disableOverFlow() {
|
|
||||||
this._saveInitialAttribute(this._element, 'overflow');
|
|
||||||
this._element.style.overflow = 'hidden';
|
|
||||||
}
|
|
||||||
_setElementAttributes(selector, styleProperty, callback) {
|
|
||||||
const scrollbarWidth = this.getWidth();
|
|
||||||
const manipulationCallBack = element => {
|
|
||||||
if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this._saveInitialAttribute(element, styleProperty);
|
|
||||||
const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
|
|
||||||
element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
|
|
||||||
};
|
|
||||||
this._applyManipulationCallback(selector, manipulationCallBack);
|
|
||||||
}
|
|
||||||
_saveInitialAttribute(element, styleProperty) {
|
|
||||||
const actualValue = element.style.getPropertyValue(styleProperty);
|
|
||||||
if (actualValue) {
|
|
||||||
Manipulator.setDataAttribute(element, styleProperty, actualValue);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
_resetElementAttributes(selector, styleProperty) {
|
|
||||||
const manipulationCallBack = element => {
|
|
||||||
const value = Manipulator.getDataAttribute(element, styleProperty);
|
|
||||||
// We only want to remove the property if the value is `null`; the value can also be zero
|
|
||||||
if (value === null) {
|
|
||||||
element.style.removeProperty(styleProperty);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
Manipulator.removeDataAttribute(element, styleProperty);
|
|
||||||
element.style.setProperty(styleProperty, value);
|
|
||||||
};
|
|
||||||
this._applyManipulationCallback(selector, manipulationCallBack);
|
|
||||||
}
|
|
||||||
_applyManipulationCallback(selector, callBack) {
|
|
||||||
if (isElement(selector)) {
|
|
||||||
callBack(selector);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (const sel of SelectorEngine.find(selector, this._element)) {
|
|
||||||
callBack(sel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap util/backdrop.js
|
* Bootstrap util/backdrop.js
|
||||||
@ -2381,6 +2283,103 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
* Bootstrap util/scrollBar.js
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
|
* --------------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constants
|
||||||
|
*/
|
||||||
|
|
||||||
|
const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
|
||||||
|
const SELECTOR_STICKY_CONTENT = '.sticky-top';
|
||||||
|
const PROPERTY_PADDING = 'padding-right';
|
||||||
|
const PROPERTY_MARGIN = 'margin-right';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class definition
|
||||||
|
*/
|
||||||
|
|
||||||
|
class ScrollBarHelper {
|
||||||
|
constructor() {
|
||||||
|
this._element = document.body;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Public
|
||||||
|
getWidth() {
|
||||||
|
// https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
|
||||||
|
const documentWidth = document.documentElement.clientWidth;
|
||||||
|
return Math.abs(window.innerWidth - documentWidth);
|
||||||
|
}
|
||||||
|
hide() {
|
||||||
|
const width = this.getWidth();
|
||||||
|
this._disableOverFlow();
|
||||||
|
// give padding to element to balance the hidden scrollbar width
|
||||||
|
this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
||||||
|
// trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
|
||||||
|
this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
|
||||||
|
this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
|
||||||
|
}
|
||||||
|
reset() {
|
||||||
|
this._resetElementAttributes(this._element, 'overflow');
|
||||||
|
this._resetElementAttributes(this._element, PROPERTY_PADDING);
|
||||||
|
this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
|
||||||
|
this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
|
||||||
|
}
|
||||||
|
isOverflowing() {
|
||||||
|
return this.getWidth() > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Private
|
||||||
|
_disableOverFlow() {
|
||||||
|
this._saveInitialAttribute(this._element, 'overflow');
|
||||||
|
this._element.style.overflow = 'hidden';
|
||||||
|
}
|
||||||
|
_setElementAttributes(selector, styleProperty, callback) {
|
||||||
|
const scrollbarWidth = this.getWidth();
|
||||||
|
const manipulationCallBack = element => {
|
||||||
|
if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this._saveInitialAttribute(element, styleProperty);
|
||||||
|
const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
|
||||||
|
element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
|
||||||
|
};
|
||||||
|
this._applyManipulationCallback(selector, manipulationCallBack);
|
||||||
|
}
|
||||||
|
_saveInitialAttribute(element, styleProperty) {
|
||||||
|
const actualValue = element.style.getPropertyValue(styleProperty);
|
||||||
|
if (actualValue) {
|
||||||
|
Manipulator.setDataAttribute(element, styleProperty, actualValue);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_resetElementAttributes(selector, styleProperty) {
|
||||||
|
const manipulationCallBack = element => {
|
||||||
|
const value = Manipulator.getDataAttribute(element, styleProperty);
|
||||||
|
// We only want to remove the property if the value is `null`; the value can also be zero
|
||||||
|
if (value === null) {
|
||||||
|
element.style.removeProperty(styleProperty);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Manipulator.removeDataAttribute(element, styleProperty);
|
||||||
|
element.style.setProperty(styleProperty, value);
|
||||||
|
};
|
||||||
|
this._applyManipulationCallback(selector, manipulationCallBack);
|
||||||
|
}
|
||||||
|
_applyManipulationCallback(selector, callBack) {
|
||||||
|
if (isElement(selector)) {
|
||||||
|
callBack(selector);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (const sel of SelectorEngine.find(selector, this._element)) {
|
||||||
|
callBack(sel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap modal.js
|
* Bootstrap modal.js
|
||||||
@ -2489,9 +2488,8 @@
|
|||||||
this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
|
this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
|
||||||
}
|
}
|
||||||
dispose() {
|
dispose() {
|
||||||
for (const htmlElement of [window, this._dialog]) {
|
EventHandler.off(window, EVENT_KEY$4);
|
||||||
EventHandler.off(htmlElement, EVENT_KEY$4);
|
EventHandler.off(this._dialog, EVENT_KEY$4);
|
||||||
}
|
|
||||||
this._backdrop.dispose();
|
this._backdrop.dispose();
|
||||||
this._focustrap.deactivate();
|
this._focustrap.deactivate();
|
||||||
super.dispose();
|
super.dispose();
|
||||||
@ -2924,7 +2922,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
||||||
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
||||||
@ -2951,6 +2948,9 @@
|
|||||||
// Check if a regular expression validates the attribute.
|
// Check if a regular expression validates the attribute.
|
||||||
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// js-docs-start allow-list
|
||||||
|
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
||||||
const DefaultAllowlist = {
|
const DefaultAllowlist = {
|
||||||
// Global attributes allowed on any supplied element below.
|
// Global attributes allowed on any supplied element below.
|
||||||
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
|
||||||
@ -2984,6 +2984,8 @@
|
|||||||
u: [],
|
u: [],
|
||||||
ul: []
|
ul: []
|
||||||
};
|
};
|
||||||
|
// js-docs-end allow-list
|
||||||
|
|
||||||
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
||||||
if (!unsafeHtml.length) {
|
if (!unsafeHtml.length) {
|
||||||
return unsafeHtml;
|
return unsafeHtml;
|
||||||
@ -3195,7 +3197,7 @@
|
|||||||
delay: 0,
|
delay: 0,
|
||||||
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
fallbackPlacements: ['top', 'right', 'bottom', 'left'],
|
||||||
html: false,
|
html: false,
|
||||||
offset: [0, 0],
|
offset: [0, 6],
|
||||||
placement: 'top',
|
placement: 'top',
|
||||||
popperConfig: null,
|
popperConfig: null,
|
||||||
sanitize: true,
|
sanitize: true,
|
||||||
@ -3308,7 +3310,7 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// todo v6 remove this OR make it optional
|
// TODO: v6 remove this or make it optional
|
||||||
this._disposePopper();
|
this._disposePopper();
|
||||||
const tip = this._getTipElement();
|
const tip = this._getTipElement();
|
||||||
this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
|
this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
|
||||||
@ -3394,12 +3396,12 @@
|
|||||||
_createTipElement(content) {
|
_createTipElement(content) {
|
||||||
const tip = this._getTemplateFactory(content).toHtml();
|
const tip = this._getTemplateFactory(content).toHtml();
|
||||||
|
|
||||||
// todo: remove this check on v6
|
// TODO: remove this check in v6
|
||||||
if (!tip) {
|
if (!tip) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);
|
tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);
|
||||||
// todo: on v6 the following can be achieved with CSS only
|
// TODO: v6 the following can be achieved with CSS only
|
||||||
tip.classList.add(`bs-${this.constructor.NAME}-auto`);
|
tip.classList.add(`bs-${this.constructor.NAME}-auto`);
|
||||||
const tipId = getUID(this.constructor.NAME).toString();
|
const tipId = getUID(this.constructor.NAME).toString();
|
||||||
tip.setAttribute('id', tipId);
|
tip.setAttribute('id', tipId);
|
||||||
@ -4031,7 +4033,7 @@
|
|||||||
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
||||||
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
||||||
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
||||||
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // todo:v6: could be only `tab`
|
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // TODO: could only be `tab` in v6
|
||||||
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
||||||
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
||||||
|
|
||||||
@ -4045,7 +4047,7 @@
|
|||||||
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
||||||
if (!this._parent) {
|
if (!this._parent) {
|
||||||
return;
|
return;
|
||||||
// todo: should Throw exception on v6
|
// TODO: should throw exception in v6
|
||||||
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
docs/5.3/dist/js/bootstrap.js.map
vendored
2
docs/5.3/dist/js/bootstrap.js.map
vendored
File diff suppressed because one or more lines are too long
4
docs/5.3/dist/js/bootstrap.min.js
vendored
4
docs/5.3/dist/js/bootstrap.min.js
vendored
File diff suppressed because one or more lines are too long
2
docs/5.3/dist/js/bootstrap.min.js.map
vendored
2
docs/5.3/dist/js/bootstrap.min.js.map
vendored
File diff suppressed because one or more lines are too long
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-5/ZcxA7Dub2FNG09dHw8CHmPN7Fz6ASlweagj0nuXjmMyupgH9n9F5Hd926zsu3/" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-T5m5WERuXcjgzF8DAb7tRkByEZQGcpraRTinjpywg37AO96WoYN9+hrhDVoM6CaT" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -361,7 +361,7 @@
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -361,7 +361,7 @@
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -301,7 +301,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-5/ZcxA7Dub2FNG09dHw8CHmPN7Fz6ASlweagj0nuXjmMyupgH9n9F5Hd926zsu3/" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-T5m5WERuXcjgzF8DAb7tRkByEZQGcpraRTinjpywg37AO96WoYN9+hrhDVoM6CaT" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -240,7 +240,7 @@
|
|||||||
<div class="b-example-divider"></div>
|
<div class="b-example-divider"></div>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -240,7 +240,7 @@
|
|||||||
<div class="b-example-divider"></div>
|
<div class="b-example-divider"></div>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-5/ZcxA7Dub2FNG09dHw8CHmPN7Fz6ASlweagj0nuXjmMyupgH9n9F5Hd926zsu3/" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-T5m5WERuXcjgzF8DAb7tRkByEZQGcpraRTinjpywg37AO96WoYN9+hrhDVoM6CaT" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -319,7 +319,7 @@
|
|||||||
</main>
|
</main>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -319,7 +319,7 @@
|
|||||||
</main>
|
</main>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-5/ZcxA7Dub2FNG09dHw8CHmPN7Fz6ASlweagj0nuXjmMyupgH9n9F5Hd926zsu3/" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-T5m5WERuXcjgzF8DAb7tRkByEZQGcpraRTinjpywg37AO96WoYN9+hrhDVoM6CaT" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -1939,7 +1939,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
<script src="../cheatsheet/cheatsheet.js"></script>
|
<script src="../cheatsheet/cheatsheet.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-aFq/bzH65dt+w6FI2ooMVUpc+21e0SRygnTpmBvdBgSdnuTN7QbdgL+OapgHtvPp" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -1924,7 +1924,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
<script src="cheatsheet.js"></script>
|
<script src="cheatsheet.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-5/ZcxA7Dub2FNG09dHw8CHmPN7Fz6ASlweagj0nuXjmMyupgH9n9F5Hd926zsu3/" crossorigin="anonymous">
|
<link href="/docs/5.3/dist/css/bootstrap.rtl.min.css" rel="stylesheet" integrity="sha384-T5m5WERuXcjgzF8DAb7tRkByEZQGcpraRTinjpywg37AO96WoYN9+hrhDVoM6CaT" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
<link rel="apple-touch-icon" href="/docs/5.3/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
||||||
@ -381,7 +381,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-qKXV1j0HvMUeCBQ+QVp7JcfGl760yU08IQ+GpUo5hlbpg51QRiuqHAJz8+BrxE/N" crossorigin="anonymous"></script>
|
<script src="/docs/5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script>
|
||||||
|
|
||||||
<script src="../checkout/checkout.js"></script>
|
<script src="../checkout/checkout.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user