Compare commits

...

1511 Commits

Author SHA1 Message Date
Jesse Mandel fa4fbc8798 Backport: NuGet Changes
Update authors and copyright to match npm, add repository reference. Also incorporates licensing expression change by @vanillajonathan (#37378)

Co-authored-by: Jesse Mandel <jesse.mandel@jdpa.com>
2022-11-09 09:17:19 +02:00
Louis-Maxime Piton 5aa7f72689 Change view in GitHub links (#37223) 2022-09-28 13:12:21 +02:00
XhmikosR e5643aaa89 Release v4.6.2 (#36725)
* Bump version to 4.6.2.

* Dist
2022-07-19 18:13:44 +03:00
Julien Déramond 82a1f334cf Docs: Capitalize Unicode (#36735) 2022-07-13 18:53:40 +03:00
Mark Otto 4954ea15fa Add Fathom to v4 (#36727) 2022-07-12 18:41:19 +03:00
XhmikosR fdf1c372d4 Update devDependencies (#36724)
* @babel/cli               ^7.17.10  →  ^7.18.6
* @babel/core               ^7.18.2  →  ^7.18.6
* @babel/preset-env         ^7.18.2  →  ^7.18.6
* @rollup/plugin-commonjs   ^22.0.0  →  ^22.0.1
* eslint                    ^8.17.0  →  ^8.19.0
* eslint-plugin-qunit        ^7.2.0  →   ^7.3.1
* hugo-bin                  ^0.88.2  →  ^0.89.0
* karma                     ^6.3.20  →   ^6.4.0
* lockfile-lint              ^4.7.4  →   ^4.7.6
* nodemon                   ^2.0.16  →  ^2.0.19
* postcss-cli                ^9.1.0  →  ^10.0.0
* rollup                    ^2.75.6  →  ^2.76.0
* stylelint                 ^14.9.0  →  ^14.9.1
* terser                    ^5.14.0  →  ^5.14.1
2022-07-12 15:36:38 +03:00
Julien Déramond 35be9e74af Docs: update clipboard.js to v2.0.11 2022-06-28 20:31:51 -07:00
XhmikosR def158dc10 Update devDependencies (#36522)
* eslint                           ^8.16.0  →  ^8.17.0
* hugo-bin                         ^0.87.1  →  ^0.88.2
* rollup                           ^2.74.1  →  ^2.75.6
* stylelint-config-twbs-bootstrap   ^3.1.0  →   ^4.0.0
* stylelint                        ^14.8.5  →  ^14.9.0
* terser                           ^5.13.1  →  ^5.14.0
2022-06-28 07:52:23 +02:00
Patrick H. Lauke 6fd203060b v4: Improve accessible name of version dropdown in docs navbar (#36504)
- add `sr-only` "Bootstrap", which will be part of the accessible name
- extra `sr-only` text to give some context - that the dropdown is about switching versions
- remove the redundant id/aria-labelledby for the dropdown
- change the control from `<a>` to `<button>`
2022-06-05 10:33:18 +01:00
Patrick H. Lauke d136302a57 v4 Docs: Update outdated ARIA/PF link, expand color contrast explanation in accessibility.md (#36492)
PF link is backport of https://github.com/twbs/bootstrap/pull/36489
change in `accessibility.md` is to bring this in line with existing v5 prose
2022-06-03 17:43:01 +01:00
Patrick H. Lauke b4c994d296 Remove confusing unnecessary id/aria-labelledby for dropdown menus (#36491)
v4 port of https://github.com/twbs/bootstrap/pull/36487
2022-06-03 17:28:18 +01:00
Julien Déramond 4e951f8bc9 Docs: fix some ARIA Authoring Practices Guides broken links (#36490) 2022-06-03 10:41:59 +01:00
Louis-Maxime Piton 8274bf25d0 Fixing tabs' tests (#36485) 2022-06-02 12:58:43 +03:00
Mark Otto 4444f090b6 Add horizontal collapse support 2022-06-01 20:14:35 -07:00
Julien Déramond 5968ef23ca Fix closing HTML tag in navs docs (#36466) 2022-05-31 17:40:36 +03:00
XhmikosR 261b418798 Update devDependencies 2022-05-26 08:00:04 +03:00
XhmikosR c043a75d53 Update GitHub actions 2022-05-26 08:00:04 +03:00
XhmikosR c1b42e3538 build/change-version.js: remove the executable flag 2022-05-26 08:00:04 +03:00
Patrick H. Lauke 7d57d9a68b Dynamic tabs: use buttons rather than links (backport to v4) (#33163)
* Manually backport 32630

Dynamic tabs: use buttons rather than links

* Tweak unit test

* Tweak unit tests

* More tweakage

* show() should also bail if `disabled` attribute is set

* Tweak tests

* Simplify test for relatedTarget

* Temporarily remove problematic test

(as i can't get local tests to run just noww)

* Revert previous

* test: fix broken test cases for tab.js

* test: fix role=tablist invalid on nav element

* test: prefer <div/> over <div></div>

* Manually backport 32630

Dynamic tabs: use buttons rather than links

* test: fix broken test cases for tab.js

* Fixes

* Remove and ignore lock file

Co-authored-by: alpadev <alpa.muc@gmail.com>
Co-authored-by: Mark Otto <markd.otto@gmail.com>
Co-authored-by: Mark Otto <markdotto@gmail.com>
2022-05-24 11:16:58 -07:00
Julien Déramond e4dc2e91a5 Doc: remove role="group" from some split drop* buttons (#36254) 2022-05-24 11:04:59 +03:00
Adrian Curtin 6a500849de Replace the deprecated color-adjust with print-color-adjust (#36283) 2022-05-24 10:36:27 +03:00
Wladyslaw Dudko d9481ee054 _custom-forms.scss: fix order of attributes (#36231) 2022-05-14 21:37:08 +03:00
XhmikosR d36b1a46cf Fix lint issues 2022-04-19 09:07:15 +03:00
XhmikosR 7613953998 Update devDependencies 2022-04-19 09:07:15 +03:00
XhmikosR 0090af6a9c package.json: add GitHub Sponsors and reorder properties (#35451) 2022-04-19 09:07:15 +03:00
XhmikosR bae047fcee Move linkinator to GitHub Actions. (#35573)
* Move linkinator to GitHub Actions.

* Remove `docs-linkinator` npm script since it's no longer used
2022-04-19 09:07:15 +03:00
pricop 3b63d509de Updated the small-font-size to use a round value
This is a backport from BS5 to BS4.

As per https://github.com/twbs/bootstrap/issues/35553

The ```small-font -size``` will actually increase from ```13px``` to ```14px``` with this proposed change. Personally I'd prefer keeping it the BS5 way (```14px```), as the text is more readable now.

If it's needed, I can do another PR with the ```$small-font-size:             .8125rem !default;``` to resemble BS4 more closely but I feel like this would be a move forward even for BS4.
2022-04-14 09:25:38 -07:00
Julien Déramond 5299abeeab Doc: Reorder alphabetically lists of components (#36128) 2022-04-08 16:30:58 +03:00
XhmikosR 349a373ff6 Update devDependencies
* @babel/cli                       ^7.16.0  →  ^7.16.7
* @babel/core                      ^7.16.5  →  ^7.16.7
* @babel/preset-env                ^7.16.5  →  ^7.16.7
* @rollup/plugin-node-resolve      ^13.1.1  →  ^13.1.2
* autoprefixer                     ^10.4.0  →  ^10.4.1
* eslint                            ^8.4.1  →   ^8.6.0
* eslint-plugin-import             ^2.25.3  →  ^2.25.4
* eslint-plugin-qunit               ^7.1.0  →   ^7.2.0
* eslint-plugin-unicorn            ^39.0.0  →  ^40.0.0
* hugo-bin                         ^0.78.1  →  ^0.79.2
* linkinator                       ^2.16.2  →   ^3.0.3
* node-sass                         ^7.0.0  →   ^7.0.1
* rollup                           ^2.61.1  →  ^2.63.0
* stylelint                        ^14.1.0  →  ^14.2.0
* stylelint-config-twbs-bootstrap   ^3.0.0  →   ^3.0.1

Also, remove the unused glob package.
2022-01-04 09:50:53 +02:00
XhmikosR 69c5dc8934 Bump copyright year to 2022 2022-01-04 09:50:53 +02:00
Patrick H. Lauke 8469f695f9 Strengthen and expand note about dynamic tabs with dropdown menus (#35588)
following on from https://github.com/twbs/bootstrap/pull/35213 this

- expands the note, making it clear it's not supported
- makes it a callout
2022-01-04 09:50:53 +02:00
XhmikosR bee3847e6d Add note to carousel crossfade docs about bg color (#35587) 2022-01-04 09:50:53 +02:00
Patrick H. Lauke a3d14bb7b7 Tweak toast docs (#35633)
- a few rewordings/tweaks
- add info about toasts with focusable/actionable controls (shouldn't autohide them)

manual backport of https://github.com/twbs/bootstrap/pull/33810
2022-01-03 10:15:29 +02:00
Julien Déramond 9c60983949 Backport #35556 (#35558)
* Use param to set Bootstrap version in Contents doc

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-12-16 11:22:03 +02:00
XhmikosR f7cb3639a7 Update devDependencies 2021-12-16 09:23:08 +02:00
XhmikosR c488b8fcc3 Update Stylelint and our config too 2021-12-16 09:23:08 +02:00
Ty Mick 0b3796e33d docs: Add responsive variations for align-content-between (#35532)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-12-16 09:23:08 +02:00
XhmikosR c24f751c63 JS tests: only test one Node.js version (#35481) 2021-12-16 09:23:08 +02:00
XhmikosR 33f37880df CI: add workflow_dispatch (#35454) 2021-12-16 09:23:08 +02:00
XhmikosR 9a5a5c57aa Remove the now outdated build/svgo.yml (#35447) 2021-12-16 09:23:08 +02:00
XhmikosR 7245437856 build/change-version.js: fix wrong map usage (#35395) 2021-12-16 09:23:08 +02:00
XhmikosR d99c820f9c README.md: wrap file contents in a details element (#35452)
Co-authored-by: Mark Otto <markd.otto@gmail.com>
2021-12-16 09:23:08 +02:00
Christian Oliff b81ce1f9e2 README.md remove broken "David DM" dependency badges (#35313) 2021-12-16 09:23:08 +02:00
Patrick H. Lauke 4097441977 Update links to CCA, MQ5 prefers-reduced-motion, evergreen WCAG urls, more resources (#35427)
Manual backport of https://github.com/twbs/bootstrap/pull/33797
2021-11-30 08:38:07 +02:00
pricop e87eeb4ad6 Fixed docs for Toasts referencing blur transparency (#35190) 2021-11-15 12:49:55 +02:00
XhmikosR 043a03c95a Release v4.6.1 (#35272)
* Bump version to v4.6.1

* Dist
2021-10-28 17:45:21 +03:00
Barabas ef6a418535 images.md: remove zero-width space (#35234)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-10-28 14:22:59 +03:00
XhmikosR 3f88326815 Update devDependencies (#35271)
* autoprefixer  ^10.3.7  →  ^10.4.0
* eslint         ^8.0.1  →   ^8.1.0
* karma          ^6.3.5  →   ^6.3.6
* rollup        ^2.58.0  →  ^2.58.3
2021-10-28 13:53:14 +03:00
XhmikosR 41330696b9 Update devDependencies and switch to Node.js 16/npm 8
* @babel/core                      ^7.15.5  →   ^7.15.8
* @babel/preset-env                ^7.15.6  →   ^7.15.8
* @rollup/plugin-commonjs          ^20.0.0  →   ^21.0.1
* @rollup/plugin-node-resolve      ^13.0.5  →   ^13.0.6
* autoprefixer                     ^10.3.6  →   ^10.3.7
* babel-plugin-istanbul             ^6.0.0  →    ^6.1.1
* clean-css-cli                     ^5.3.3  →    ^5.4.2
* eslint                           ^7.32.0  →    ^8.0.0
* eslint-config-xo                 ^0.38.0  →   ^0.39.0
* eslint-plugin-import             ^2.24.2  →   ^2.25.1
* eslint-plugin-qunit               ^6.2.0  →    ^7.0.0
* eslint-plugin-unicorn            ^36.0.0  →   ^37.0.1
* karma                             ^6.3.4  →    ^6.3.5
* linkinator                       ^2.14.0  →   ^2.14.4
* nodemon                          ^2.0.13  →   ^2.0.14
* postcss                           ^8.3.8  →   ^8.3.11
* postcss-cli                       ^9.0.0  →    ^9.0.1
* rollup                           ^2.57.0  →   ^2.58.0
* stylelint-config-twbs-bootstrap   ^2.2.3  →    ^2.2.4
* vnu-jar                           21.9.2  →  21.10.12
2021-10-22 17:07:51 +03:00
XhmikosR fc492edfa3 terser: specify 2 passes as it offers slightly better compression 2021-10-22 17:07:51 +03:00
XhmikosR fe73da982f JS: minor refactoring
* shorten block comments
* reorder constants
2021-10-22 17:07:51 +03:00
XhmikosR 4f0187c891 Revert "Bundlewatch: stop ignoring dependabot branches (#33192)" (#35069)
This reverts commit 5560c86070.
2021-10-22 17:07:51 +03:00
XhmikosR 6d0fd8c3a5 Backport #35074
sanitizer: add `sms` in the `SAFE_URL_PATTERN`
2021-10-22 17:07:51 +03:00
XhmikosR 7b3a47ee3d Update terser to v5.9.0. 2021-10-22 17:07:51 +03:00
Gaël Poupard e482fbb159 fix(input-group): custom-file with validation (#33239) 2021-10-21 09:00:22 +03:00
Julien Déramond 8133c3e5b2 Fix capitalization after period in Markdown files (#35112) 2021-10-05 17:51:44 +03:00
XhmikosR 44a01ec5b7 Update devDependencies (#35068)
* @babel/cli                   ^7.15.4  →  ^7.15.7
* @rollup/plugin-node-resolve  ^13.0.4  →  ^13.0.5
* autoprefixer                 ^10.3.4  →  ^10.3.6
* glob                          ^7.1.7  →   ^7.2.0
* nodemon                      ^2.0.12  →  ^2.0.13
* postcss                       ^8.3.6  →   ^8.3.8
* postcss-cli                   ^8.3.1  →   ^9.0.0
* qunit                        ^2.17.1  →  ^2.17.2
* rollup                       ^2.56.3  →  ^2.57.0
2021-09-28 18:32:57 +03:00
Julien Déramond 8ebd6d95d6 Remove extra spaces in Markdown files (#35047) 2021-09-28 12:22:52 +03:00
XhmikosR bdab948670 Remove unneeded conditional 2021-09-15 15:44:20 +03:00
XhmikosR af52795501 Remove duplicate test. 2021-09-15 15:44:20 +03:00
XhmikosR f6ff736a59 Change test description so that it's unique 2021-09-15 15:44:20 +03:00
XhmikosR 77e0855e5e Merge duplicate test. 2021-09-15 15:44:20 +03:00
XhmikosR ed62ab6e41 Remove commented out test 2021-09-15 15:44:20 +03:00
XhmikosR d4e162f4ac Skip tests if attachShadow is not present 2021-09-15 15:44:20 +03:00
XhmikosR 551f37aff6 tests: comply to the new rules
Use `assert.strictEqual`/`assert.true`/`assert.false`
2021-09-15 15:44:20 +03:00
XhmikosR 5391ecdfde Add eslint-plugin-qunit 2021-09-15 15:44:20 +03:00
XhmikosR e202996a2b Update devDependencies
* @babel/cli                   ^7.14.8  →  ^7.15.5
* @babel/core                  ^7.14.8  →  ^7.15.4
* @babel/preset-env            ^7.14.8  →  ^7.15.6
* @rollup/plugin-commonjs      ^19.0.1  →  ^20.0.0
* @rollup/plugin-node-resolve  ^13.0.2  →  ^13.0.4
* autoprefixer                 ^10.3.1  →  ^10.3.4
* clean-css-cli                 ^5.3.0  →   ^5.3.3
* eslint                       ^7.31.0  →  ^7.32.0
* eslint-config-xo             ^0.37.0  →  ^0.38.0
* eslint-plugin-import         ^2.23.4  →  ^2.24.2
* eslint-plugin-unicorn        ^34.0.1  →  ^36.0.0
* hugo-bin                     ^0.74.0  →  ^0.76.1
* qunit                        ^2.16.0  →  ^2.17.1
* postcss                       ^8.3.5  →   ^8.3.6
* rollup                       ^2.53.3  →  ^2.56.3
* vnu-jar                      21.6.11  →   21.9.2
2021-09-15 15:31:00 +03:00
XhmikosR cb55e389b8 Update CodeQL workflow (#34961) 2021-09-15 15:31:00 +03:00
XhmikosR 08a550a044 Backport #34937
Update a URL mentioning dead name
2021-09-15 15:31:00 +03:00
XhmikosR b0cd2078f7 docs: backport layouts updates from the main branch 2021-09-15 15:31:00 +03:00
XhmikosR 9cdfbc06ce docs-navbar: use the config variable and update to 5.1 2021-09-15 15:31:00 +03:00
XhmikosR f9a79141be npm scripts: add aggregate-output (#32907) 2021-09-15 15:31:00 +03:00
Gaël Poupard 1db75d111b More concise improvements for add() and subtract() (#34432) 2021-09-15 15:31:00 +03:00
Mark Otto 01036ff2ef Update description of active buttons (#34966) 2021-09-14 15:05:07 +03:00
Patrick H. Lauke f4a1a35cf2 v4: Disabled link cleanup (#34924)
manual backport of #34886

per https://www.w3.org/TR/html-aria/#docconformance

> It is NOT RECOMMENDED to use `aria-disabled="true"` on an `a` element with an `href` attribute.
>
>NOTE
>If a link needs to be "disabled", remove the `href` attribute.

This PR removes the unnecessary `href="#"`, `tabindex="-1"`, and `aria-disabled="true"` from disabled links in both docs pages and examples. `aria-disabled="true"` *is* kept for disabled link-based buttons (that have `role="button"`) as there it's appropriate to use (you *want* to convey to assistive technologies that this thing you're claiming is a button is also disabled at the moment)

Further, the PR extends the "Link functionality caveat" to show the "proper" way (removing `href` and adding `.disabled` class only) to disable a link, but then explains what to do if that's not possible (and then keeps an example with all the traditional `href="#" tabindex="-1" aria-disabled="true"`, but explains clearly that it's not ideal). Same sort of explanation is also added to the pointer event utilities page
2021-09-09 14:49:06 +03:00
XhmikosR 408252eff1 Move RFS version in config.yml and update it. 2021-09-08 09:06:42 +03:00
XhmikosR 94b310dc6f Update RFS to v8.1.0 2021-09-08 09:06:42 +03:00
Mark Otto 8dec3d0a34 Replace Sass division with multiplication and custom divide() function
Fixes #34353.

Co-Authored-By: Slaven Tomac <slaventomac@gmail.com>
2021-09-08 09:06:42 +03:00
alpadev b010a6f9f4 fix(modal): change the order we return from show() method (#34087)
In case of a modal with fading enabled, a prevented show event can cause show to not showing the modal anymore.

See #34055

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-07-25 20:36:11 +03:00
XhmikosR 5d24fef741 Update devDependencies
* @babel/cli                       ^7.14.3  →  ^7.14.8
* @babel/core                      ^7.14.3  →  ^7.14.8
* @babel/preset-env                ^7.14.2  →  ^7.14.8
* @rollup/plugin-commonjs          ^19.0.0  →  ^19.0.1
* @rollup/plugin-node-resolve      ^13.0.0  →  ^13.0.2
* autoprefixer                     ^10.2.5  →  ^10.3.1
* eslint                           ^7.26.0  →  ^7.31.0
* eslint-config-xo                 ^0.36.0  →  ^0.37.0
* eslint-plugin-import             ^2.23.2  →  ^2.23.4
* eslint-plugin-unicorn            ^31.0.0  →  ^34.0.1
* globby                           ^11.0.3  →  ^11.0.4
* hugo-bin                         ^0.71.1  →  ^0.73.0
* karma                             ^6.3.2  →   ^6.3.4
* karma-firefox-launcher            ^2.1.0  →   ^2.1.1
* linkinator                       ^2.13.6  →  ^2.14.0
* nodemon                           ^2.0.7  →   ^2.0.12
* node-sass                         ^6.0.0  →   ^6.0.1
* postcss                           ^8.3.0  →   ^8.3.5
* qunit                            ^2.15.0  →  ^2.16.0
* rollup                           ^2.48.0  →  ^2.53.3
* stylelint-config-twbs-bootstrap   ^2.2.0  →   ^2.2.3
* vnu-jar                           21.4.9  →  21.6.11
2021-07-21 16:20:01 +03:00
XhmikosR 70267da28e CI: make use of the actions/setup-node's cache option (#34453) 2021-07-21 16:20:01 +03:00
dependabot[bot] 9cf31d9f8e Bump coverallsapp/github-action from 1.1.2 to 1.1.3 (#34491)
Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/coverallsapp/github-action/releases)
- [Commits](https://github.com/coverallsapp/github-action/compare/v1.1.2...1.1.3)

---
updated-dependencies:
- dependency-name: coverallsapp/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-07-21 16:20:01 +03:00
Kijima Daigo a6618c437b CONTRIBUTING.md: fix broken link to README.md (#34389) 2021-07-21 16:20:01 +03:00
XhmikosR 6c9951203c Backport #34336
Remove unneeded `.text-white-50` CSS rule

This is already part of Bootstrap 4.6 and 5.0.
2021-07-21 16:20:01 +03:00
XhmikosR ec986fcb57 Manually backport #34075 and #34279
Improve and clean up vnu-jar.js
2021-07-21 16:20:01 +03:00
XhmikosR c272eb80bf Update Hugo config and sitemap.xml (#34074) 2021-07-21 16:20:01 +03:00
Gaël Poupard ca3ff6dc29 Handle complex expressions in add() & subtract() (#34047) 2021-07-21 16:20:01 +03:00
XhmikosR 0ef990f18e Replace Freenode with Libera.Chat in the remaining files (#34250) 2021-07-21 16:20:01 +03:00
Christian Oliff 6c2c14d887 Remove print thead rule (#34426)
The `thead` rule is safe to remove -- it was a workaround for browsers that didn't conform to this part of the CSS 2.1 spec. (https://www.w3.org/TR/CSS21/tables.html#table-display)
In practice, this meant IE 6 & IE 7.

(thanks to @mattbrundage for this PR upstream for the main.css project (https://github.com/h5bp/main.css/pull/101)
2021-07-08 08:28:53 +03:00
k-utsumi 086c0bfc25 🐛 Enable 0.x with negative margins @ v4 (#33593)
* 🐛 Enable `0.x` with negative margins @ v4

I set it as below, but no negative margin was added.
`$spacers: (0\.5: ($spacer * .125));`

After investigating, it seems that `0 \ .5` is also evaluated as 0.
So I changed it to string comparison.

HTML example: `<img class="mt-n0.5">`

* 💚 Clear CI errors
2021-06-24 10:57:47 +03:00
Christian Oliff 538ea32cb7 Fix repetition in the description. 2021-06-09 14:08:50 -07:00
Gaël Poupard e376773ccc docs(color): wrong secondary hex code (#34159)
Closes #34146 

---

Not sure what happened but indeed, [our current `$secondary` is not what's shown in docs](https://github.com/twbs/bootstrap/blob/c2f949c1fdad09e30793b533e5502808c5e2d423/scss/_variables.scss#L68).
2021-06-02 04:59:48 +02:00
XhmikosR c2f949c1fd Update devDependencies
* @babel/cli                       ^7.13.14  →   ^7.14.3
* @babel/core                       ^7.14.0  →   ^7.14.3
* @babel/preset-env                 ^7.14.1  →   ^7.14.2
* @rollup/plugin-commonjs           ^18.0.0  →   ^19.0.0
* @rollup/plugin-node-resolve       ^11.2.1  →   ^13.0.0
* clean-css-cli                      ^5.2.2  →    ^5.3.0
* eslint                            ^7.23.0  →   ^7.26.0
* eslint-config-xo                  ^0.35.0  →   ^0.36.0
* eslint-plugin-import              ^2.22.1  →   ^2.23.2
* eslint-plugin-unicorn             ^29.0.0  →   ^31.0.0
* glob                               ^7.1.6  →    ^7.1.7
* hugo-bin                          ^0.70.0  →   ^0.71.1
* node-sass                          ^5.0.0  →    ^6.0.0
* postcss                            ^8.2.9  →    ^8.3.0
* qunit                             ^2.14.1  →   ^2.15.0
* rollup                            ^2.44.0  →   ^2.48.0
* stylelint                        ^13.12.0  →  ^13.13.1
* stylelint-config-twbs-bootstrap    ^2.1.0  →    ^2.2.0
* vnu-jar                            21.2.5  →    21.4.9
2021-05-21 08:19:22 +03:00
midzer fb604bc03f Replace freenode with libera IRC server (#34050) 2021-05-21 08:19:22 +03:00
XhmikosR 68f6aa6780 CI: remove Node.js 10 (#33923)
Node.js 10 is EOL since 30/04/2021
2021-05-21 08:19:22 +03:00
Mark Otto f61c2ed8f1 Spinner alignment changes 2021-05-21 08:19:22 +03:00
XhmikosR 6ed3845f31 JS tests: add Node.js 16 (#33720) 2021-05-21 08:19:22 +03:00
XhmikosR 5e69eab37a Update anchor.js to v4.3.1. (#33668) 2021-05-21 08:19:22 +03:00
XhmikosR 072a0402d8 docs: update clipboard.js to v2.0.8 (#33583) 2021-05-21 08:19:22 +03:00
Mark Otto 767856c7b8 Backport #33782 to v4 2021-04-30 14:40:27 -07:00
Carson Sievert 4b5eb3ca51 Backport #33634 (#33649)
Dropdown: support `.dropdown-item` wrapped in `<li>` tags
2021-04-28 07:02:22 +03:00
Patrick H. Lauke d967553913 Remove aria-haspopup from dropdowns (#33624)
`aria-haspopup="true"` is really intended to signal that an ARIA `menu` will be opened on activation. as a result, some assistive technologies will announce controls with `aria-haspopup="true"` as a menu or menu item (e.g. JAWS and NVDA).
In addition, `aria-haspopup` seems to trigger a bug in Edge/Narrator where the `aria-expanded` state is not correctly announced at the moment when `aria-haspopup` is present.
This now makes the dropdown button more like a generic disclosure widget control - see also https://www.w3.org/TR/wai-aria-practices-1.2/examples/disclosure/disclosure-navigation.html01
2021-04-15 06:35:54 +03:00
Stefano Bartoletti 016f8fff11 fix typo in docs (#33562) 2021-04-06 17:55:29 +03:00
XhmikosR 67f873f41a Update devDependencies
* @babel/cli                    ^7.13.0  →  ^7.13.14
* @babel/core                   ^7.13.8  →  ^7.13.14
* @babel/preset-env             ^7.13.9  →  ^7.13.12
* @rollup/plugin-commonjs       ^17.1.0  →   ^18.0.0
* @rollup/plugin-node-resolve   ^11.2.0  →   ^11.2.1
* autoprefixer                  ^10.2.4  →   ^10.2.5
* clean-css-cli                 ^5.2.0  →    ^5.2.2
* eslint                        ^7.21.0  →   ^7.23.0
* eslint-plugin-unicorn         ^28.0.2  →   ^29.0.0
* globby                        ^11.0.2  →   ^11.0.3
* hugo-bin                      ^0.69.0  →   ^0.70.0
* karma                         ^6.1.1  →    ^6.3.2
* postcss                       ^8.2.6  →    ^8.2.9
* qunit                         ^2.14.0  →   ^2.14.1
* rollup                        ^2.40.0  →   ^2.44.0
* stylelint                     ^13.11.0  →  ^13.12.0

Also lock jQuery to v3.5.1 since 3.6.0 has a bug that affects at least our tests
2021-04-05 07:44:39 +03:00
XhmikosR a06c2b6706 BrowserStack: test on iPhone 12 (#33398) 2021-04-05 07:44:39 +03:00
XhmikosR b58ea4a42e README.md: use shields.io for the tests badge too (#33401) 2021-04-05 07:44:39 +03:00
XhmikosR 459cc246b9 Improve change-version.js (#33148)
* switch to async/await
* remove shelljs
* switch to globby; supports .gitignore out of the box
* don't write any files to the disk if they are indentical
* add two more cmd switches: --dry and --verbose
* strip leading "v" from version arguments so that we don't end up with duplicate `v`s
2021-04-05 07:44:39 +03:00
XhmikosR 90228a4743 Delete the unused build/ship.sh (#33326) 2021-04-05 07:44:39 +03:00
Mark Otto 51c8b91d91 Manually backport #33386 to v4 to properly document Sass default variables 2021-03-18 18:57:12 -07:00
Patrick H. Lauke e16b06929a Manual backport of #32627 (#33165)
Carousel: use buttons, not links, for prev/next controls
2021-03-11 09:23:46 +02:00
XhmikosR 7365592fbe Update .bundlewatch.config.json 2021-03-10 22:38:38 -08:00
Mark Otto 40da702f80 Adjust feedback icon position and padding for select.form-control 2021-03-10 22:38:38 -08:00
XhmikosR a59d436518 Update devDependencies
* @babel/cli             ^7.12.16  →   ^7.13.0
* @babel/core            ^7.12.16  →   ^7.13.8
* @babel/preset-env      ^7.12.16  →   ^7.13.9
* eslint                  ^7.20.0  →   ^7.21.0
* eslint-config-xo        ^0.34.0  →   ^0.35.0
* eslint-plugin-unicorn   ^28.0.1  →   ^28.0.2
* hugo-bin                ^0.68.0  →   ^0.69.0
* linkinator              ^2.13.4  →   ^2.13.6
* lockfile-lint            ^4.3.7  →    ^4.6.2
* rollup                  ^2.39.0  →   ^2.40.0
* stylelint              ^13.10.0  →  ^13.11.0
2021-03-02 17:53:37 +02:00
XhmikosR cce467616f CodeQL: skip dependabot PRs too (#33130) 2021-03-02 17:53:37 +02:00
XhmikosR 58192b3cac Bundlewatch: stop ignoring dependabot branches (#33192) 2021-03-02 17:53:37 +02:00
XhmikosR cf70a58149 Rename _gh_pages to _site. (#33129) 2021-03-02 17:53:37 +02:00
XhmikosR 6692d1ed47 linkinator: replace --silent with --verbosity (#33100) 2021-03-02 17:53:37 +02:00
Nikon the Third 7ad0625b8d Adjust SAFE_URL_PATTERN regex for use with test method. (#33153)
The `test` method on regexes does not behave like `match` on strings
for checks if the regex matches when the global modifier (g) is present.

Also adds a unit test on tooltips for sanitizing the same template twice.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-03-02 17:16:09 +02:00
XhmikosR 8ec32eec44 Update clean-css-cli to v5.2.0 (#33144)
* Update clean-css-cli to v5.2.0

* Enable clean-css's batch flag
2021-02-18 20:59:05 +02:00
XhmikosR c341721439 Partially backport #33045
Simplify karma.conf.js

`customLaunchers` does not seem to be needed.
2021-02-17 06:54:38 +02:00
XhmikosR 23a26e12ff Update devDependencies
* @babel/cli                   ^7.12.13  →  ^7.12.16
* @babel/core                  ^7.12.13  →  ^7.12.16
* @babel/preset-env            ^7.12.13  →  ^7.12.16
* @rollup/plugin-babel           ^5.2.3  →    ^5.3.0
* @rollup/plugin-node-resolve   ^11.1.1  →   ^11.2.0
* eslint                        ^7.19.0  →   ^7.20.0
* eslint-plugin-unicorn         ^27.0.0  →   ^28.0.1
* karma                          ^6.0.4  →    ^6.1.1
* postcss                        ^8.2.5  →    ^8.2.6
* rollup                        ^2.38.5  →   ^2.39.0
* stylelint                     ^13.9.0  →  ^13.10.0

Kept clean-css-cli to 4.x for the time being.
2021-02-17 06:54:38 +02:00
XhmikosR bb5b5891da Backport #32940
* Update the default value for $enable-deprecation-messages

As seen in the https://github.com/twbs/bootstrap/blob/v4-dev/scss/_variables.scss,
the `$enable-deprecation-messages` variable is set to `true` by default.
2021-02-17 06:54:38 +02:00
Patrick H. Lauke 210cb72872 Add a callout for the sanitizer in popovers and tooltips (#32272)
* Add a callout for the sanitizer in popovers and tooltips

* Add second reference to sanitizer in the options

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-02-17 06:54:38 +02:00
XhmikosR 6487ba72f5 vnu-jar.js: quote vnu path (#33016)
Should work now with folders with spaces
2021-02-17 06:54:38 +02:00
XhmikosR 9c264dbea5 CI: remove the cache fallback and shorten cache key (#33012) 2021-02-17 06:54:38 +02:00
XhmikosR 254de4cb42 CI: switch to the coverallsapp/github-action tag (#32919)
Unfortunately, they don't offer a `v1` tag
2021-02-17 06:54:38 +02:00
XhmikosR a824d09ecd change-version: remove vendor, add resources (#32917) 2021-02-17 06:54:38 +02:00
Wesley Haines 9722106781 Fix minor visual bug in FF caused by moz-focusring (v4) (#32821)
Avoid bug in Firefox where text appears "noisy" due to text-shadow applying to focused form fields.
2021-02-17 06:00:37 +02:00
Gaël Poupard 030af97fad fix(forms): input-group and validation icons (#32968)
Fixes #30131

Issue mentions `form-control` but it impacts `.custom-select` — but not `textarea` since it has a qualifying type selector that increases its specificty.

So another way could be to set `select.custom-select` and `input.form-control`. Would there be any other tag concerned by those classes?

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-02-15 21:13:43 +02:00
XhmikosR 29674b8426 Simplify bugify.html (#33063)
* use `in` instead of `strings.Contains` since the latter is not documented
* use `cond`
2021-02-15 21:08:44 +02:00
XhmikosR ce8af15ad1 Update devDependencies (#32967)
* @babel/cli                  ^7.12.10  →  ^7.12.13
* @babel/core                 ^7.12.10  →  ^7.12.13
* @babel/preset-env           ^7.12.11  →  ^7.12.13
* @rollup/plugin-babel          ^5.2.2  →    ^5.2.3
* @rollup/plugin-commonjs      ^17.0.0  →   ^17.1.0
* @rollup/plugin-node-resolve  ^11.1.0  →   ^11.1.1
* autoprefixer                 ^10.2.3  →   ^10.2.4
* eslint                       ^7.18.0  →   ^7.19.0
* karma                         ^5.2.3  →    ^6.0.4
* karma-qunit                   ^4.1.1  →    ^4.1.2
* linkinator                    2.11.2  →   ^2.13.4
* postcss                       ^8.2.4  →    ^8.2.5
* rollup                       ^2.38.0  →   ^2.38.5
* vnu-jar                      20.6.30  →    21.2.5
2021-02-09 07:50:00 +02:00
pricop 72a9fb4624 _variables.scss: add missing newline before new section (#32868) 2021-02-08 17:19:46 +02:00
XhmikosR 2267193d8f Switch to jsDelivr for jQuery too. (#32918) 2021-01-28 23:26:39 +02:00
XhmikosR 17d8fba548 Update devDependencies (#32852)
Pin karma and linkinator due to failures
2021-01-27 18:37:18 +02:00
XhmikosR 6ffb0b48e4 Release v4.6.0. (#32726)
* Bump version to v4.6.0.

* Dist
2021-01-19 18:16:38 +02:00
XhmikosR 9d87bd7a30 Backport #32037 (#32833)
* Backport #32037

Add `.navbar-nav-scroll` for vertical scrolling of navbar content

* drop the css var for a Sass css

Co-authored-by: Mark Otto <markdotto@gmail.com>
2021-01-19 08:18:19 +02:00
Mark Otto 9c4abcc6a1 Backport #32759 (#32832)
Mention CSP and embedded SVGs in v4 docs
2021-01-19 07:22:27 +02:00
XhmikosR d2477abecd Backport #32760 (#32827)
Add a live toast example to the docs
2021-01-18 20:59:59 +02:00
voltaek ee282aff27 Docs: Sass implementation and rounding precision (#32791)
* Backport of changes to v5 docs that updated and clarified information about the Sass compiler used and the minimum rounding precision we recommend with it.

Co-authored-by: Mark Otto <otto@github.com>
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-01-17 20:59:11 +02:00
Mark Otto 87e42ce7c5 Lighten disabled dropdown text to $gray-500
Fixes #32474
2021-01-15 09:22:27 +02:00
XhmikosR 5a17956e5e Backport #32469 and #32799
Improve zip-examples.js by only including the assets we need
2021-01-15 09:22:27 +02:00
Mark Otto 05a108b3d5 Document some basic code conventions for us (#32778)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-01-15 09:22:27 +02:00
XhmikosR ec1d745c10 CI: change Node.js to 14 (#32796)
This is so that it's consistent with the JS workflow thus the cache should match.
2021-01-15 09:22:27 +02:00
Mark Otto d674c33a04 Backport #32795 (#32809)
* Clarify Sass import and customize docs for how to modify variable defaults

* Add an npm starter project callout to a few pages
2021-01-15 09:16:32 +02:00
Patrick H. Lauke 80aefd862c Remove role="button" from CTA links in carousel example (#32789)
They're links, acting as links. Just because they're styled as buttons visually (as is often the case for "Call to action" (CTA) links) doesn't mean they need/get `role="button"`
2021-01-14 12:19:19 +02:00
XhmikosR 2ed7504783 Update devDependencies 2021-01-13 11:03:32 +02:00
XhmikosR aeccf0e270 Stylelint: disallow some property values (#32756)
* `border: none`
* `outline: none`
2021-01-13 11:03:32 +02:00
Mark Otto 17521ed43a Mention stretched-link constraints with table elements (#32761)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-01-13 11:03:32 +02:00
XhmikosR da458176f3 GitHub Actions cleanup (#32755)
* lowercase `runner.os`
* remove `CI` environment variable since it's already set by the runner
2021-01-13 11:03:32 +02:00
Patrick H. Lauke 67c2f2c965 Darken dropdown item hover style
Backport of https://github.com/twbs/bootstrap/pull/32754
2021-01-13 11:03:32 +02:00
Patrick H. Lauke e7cbb59d53 Consistently use outline:0 rather than outline:none
Manual backport of https://github.com/twbs/bootstrap/pull/32751 (which has not been merged yet, but assume it will shortly)
2021-01-13 11:03:32 +02:00
Patrick H. Lauke dfe4810199 Suppress focus outline for buttons when it shouldn't be visible in Chromium
Manual backport of https://github.com/twbs/bootstrap/pull/32689
2021-01-13 11:03:32 +02:00
Patrick H. Lauke 4e6c981f4e Remove old/unnecessary reboot bug fix
Manual backport of https://github.com/twbs/bootstrap/pull/32631
2021-01-13 11:03:32 +02:00
XhmikosR 2e8f70f5a1 Backport #32737
package.json: move `version_short` variable under the `config` object

This is so that it works on npm 7.x too.
2021-01-13 11:03:32 +02:00
XhmikosR 0f1069a32e Update karma config
* rename constants
* enforce the constants to be Boolean
* use the coverage plugin only one time, on the latest jQuery run
* fix karma `logLevel`
2021-01-13 10:49:09 +02:00
XhmikosR f8da510367 karma: run tests in parallel 2021-01-13 10:49:09 +02:00
XhmikosR 37186db5fc docs: add v5.0 in versions (#32728) 2021-01-08 21:03:22 +02:00
XhmikosR 6b788acf63 Update devDependencies
* @babel/cli                   ^7.12.8  →  ^7.12.10
* @babel/core                  ^7.12.8  →  ^7.12.10
* @babel/preset-env            ^7.12.7  →  ^7.12.11
* @rollup/plugin-babel          ^5.2.1  →    ^5.2.2
* @rollup/plugin-commonjs      ^16.0.0  →   ^17.0.0
* @rollup/plugin-node-resolve  ^10.0.0  →   ^11.0.1
* autoprefixer                 ^10.0.2  →   ^10.2.1
* cross-env                     ^7.0.2  →    ^7.0.3
* eslint                       ^7.14.0  →   ^7.17.0
* eslint-config-xo             ^0.33.1  →   ^0.34.0
* eslint-plugin-unicorn        ^23.0.0  →   ^25.0.1
* find-unused-sass-variables    ^3.0.0  →    ^3.1.0
* hugo-bin                     ^0.66.2  →   ^0.68.0
* linkinator                    ^2.2.2  →   ^2.11.2
* nodemon                       ^2.0.6  →    ^2.0.7
* postcss                      ^8.1.10  →    ^8.2.3
* postcss-cli                   ^8.3.0  →    ^8.3.1
* qunit                        ^2.12.0  →   ^2.13.0
* rollup                       ^2.33.3  →   ^2.36.1
2021-01-08 12:04:37 +02:00
XhmikosR cafcca31ac Backport #32423
Add two new variables for pagination border-radius values
2021-01-08 12:04:37 +02:00
XhmikosR b633c2befe Backport #32632
Docs: Tweak the wording for collapse to indicate button is preferred/more semantic
2021-01-08 12:04:37 +02:00
XhmikosR 4540436f3d Backport #32685
Clarify the `$enable-shadows` option in our docs
2021-01-08 12:04:37 +02:00
XhmikosR 3768b6e5b6 Backport #32713
Bump copyright year to 2021
2021-01-08 12:04:37 +02:00
Patrick H. Lauke 264a412589 Remove incorrect mention of dropdowns for dynamic tab behavior (#32634)
While technically it still works, we're already saying authors shouldn't do it later on, and we removed any examples of this. This was a straggler.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-01-08 12:04:37 +02:00
XhmikosR 1141a51789 CI: update to actions/setup-node@v2 (#32635) 2021-01-08 12:04:37 +02:00
XhmikosR ccee913e59 Tooltips: add missing space (#32529) 2021-01-08 12:04:37 +02:00
XhmikosR 378f3939c8 Backport #32489
Fix popover docs example
2021-01-08 12:04:37 +02:00
XhmikosR bb99676a8a BrowserStack: test on macOS Catalina instead of High Sierra (#32486) 2021-01-08 12:04:37 +02:00
Patrick H. Lauke 9fbf50c3ce Docs: style clipboard button on :focus, not just :hover (#32461)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-01-08 12:04:37 +02:00
XhmikosR 984aacc32f Update CodeQL Action (#32452) 2021-01-08 12:04:37 +02:00
XhmikosR b0e7e02ab6 CI: add a 30-min timeout for BrowserStack (#32238) 2021-01-08 12:04:37 +02:00
XhmikosR fcfd2ce4b2 CONTRIBUTING: mention dist files (#32314)
* CONTRIBUTING: mention dist files

* Update CONTRIBUTING.md

Co-authored-by: Mark Otto <markd.otto@gmail.com>
2021-01-08 12:04:37 +02:00
Christian Oliff fca04236ad Remove duplicated 'follow Bootstrap on Twitter' link in Community section (#32399)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2021-01-08 12:04:37 +02:00
XhmikosR 810de41bc3 build-plugins: switch to "bundled" for babel helpers (#32312) 2021-01-08 12:04:37 +02:00
XhmikosR 307c08af42 README: fix path to search.js (#32257) 2021-01-08 12:04:37 +02:00
XhmikosR 4620b9838b karma: add v4 in Browserstack build ID (#32502) 2021-01-08 10:05:56 +02:00
Aleksandr Gorbatov d1e0610a45 docs: Add Russian translation (#32253) 2021-01-08 09:53:22 +02:00
Patrick H. Lauke f1b2ed93df v4: Add an actual data-touch="false" example in the carousel docs (#32639)
* v4: Add an actual `data-touch="false"` example in the carousel docs

Backport of https://github.com/twbs/bootstrap/pull/32638

* Remove data-ride from example carousel

* Correct attribute table explanation and remove slide class from example

i believe the correct option is `slide` here, not `ride`.
the `if "carousel"` bit was rather unclear/confusing

* Edits...

sorry, trying to make sense of our quirky carousel stuff, it seems some illogical things have been there ever since

* Add data-interval to suppress autoplay

* Tweak carousel options formatting

* Update site/content/docs/4.5/components/carousel.md

Co-authored-by: Mark Otto <markd.otto@gmail.com>

* Tweak language

mostly based on @mdo's suggestion, but also adds the word "attribute" after `data-ride` for better flow/legibility

Co-authored-by: Mark Otto <markd.otto@gmail.com>
2021-01-05 23:42:55 +00:00
Patrick H. Lauke 4fc35bdc3c v4 backport: Replace Lorem Ipsum placeholder text with more representative (or at least english language) text (#32462)
Backport and expansion (for v4) of #32246 and #32479
2020-12-15 11:06:00 +02:00
Patrick H. Lauke 5db105e587 Add mention of the bs-custom-file-input plugin needed for the custom file input (#32457) 2020-12-15 09:22:34 +02:00
Kyle Tsang 1897b4cd89 v4: Move negative margin-bottom from .nav-item to .nav-link (#32211)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-12-10 11:02:28 +02:00
Mark Otto 17bb67dd5b Add hex values to colors (#32411) 2020-12-10 11:01:13 +02:00
XhmikosR fbfaba5bb8 Revert colors.yml accidental changes (#32206)
* Revert colors.yml accidental changes

* Bring colors data files up to par with the vars
2020-12-10 00:42:38 +02:00
Gaël Poupard 53542dc027 Remove useless .text-left in Layout / Overview (#32363) 2020-12-08 08:59:13 +02:00
Rohit Sharma 8e59752ee1 Partially backport #32217 (#32225)
Remove unnecessary `_getCustomClass` method.

`customClass` will be in the configuration already, even if it is provided in the data attributes, and jQuery's [`addClass()`](https://api.jquery.com/addclass/) method will handle it, either `this.config.customClass` is a function or a class name (even if it is a blank string).

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-25 09:35:36 +02:00
Rohit Sharma 22168e9b15 Fix typos (#32247) 2020-11-24 15:58:47 +02:00
XhmikosR 6f58383f5a Update codeql.yml (#32125)
Specify the branches and clean up the comments
2020-11-24 08:40:11 +02:00
XhmikosR 90ad4ffc82 introduction: split comments (#32223) 2020-11-24 08:40:11 +02:00
XhmikosR b45b5e9e65 Update _syntax.scss (#32117)
* Update _syntax.scss with the latest chroma selectors

* Sort selectors

* Remove no longer needed chroma workaround

* remove comments
2020-11-24 08:40:11 +02:00
XhmikosR c9876ed15b CI: specify FORCE_COLOR:2 (#32222)
This should show any colors in the output
2020-11-24 08:40:11 +02:00
XhmikosR b26768ee42 postcss.config.js: remove arrow return (#32235) 2020-11-24 08:40:11 +02:00
XhmikosR 9260427a34 Update devDependencies 2020-11-24 08:40:11 +02:00
XhmikosR 398ddedac7 Manually backport #32226
docs: use `event` instead of `e`
2020-11-24 08:40:11 +02:00
XhmikosR 57e045f0ab Backport #32224
Be consistent with Popper's name.
2020-11-24 08:40:11 +02:00
Noah Rosenzweig 631b5d4df1 Improve build/generate-sri.js regex (#29753)
When using single-quotes in config.yml, the previous
regular expression in build/generate-cli.js wasn't working correctly,
it was replacing ALL string values with hashes.
Now both double- and single-quotes can be used in config.yml,
and the RegExp will work as expected.

Also, allow trailing whitespaces and empty ("") values to be matched.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-24 08:40:11 +02:00
XhmikosR 13486b8e27 examples: add the version number in title (#32198) 2020-11-24 08:40:11 +02:00
XhmikosR aed84c9430 Backport #32189
docs(dropdowns): clarify where is `.show` applied
2020-11-24 08:40:11 +02:00
XhmikosR 7eee78c517 Backport #32178 and #32182
Handle Chromium to run Karma
2020-11-24 08:40:11 +02:00
Rohit Sharma bfb773d64b Backport #32179 (#32220)
Don't hide modal when `config.keyboard` is false
2020-11-21 22:14:28 +02:00
James Remeika 2d8c02eb10 tooltip/popover: add a customClass option (#31834)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-20 11:56:16 +02:00
XhmikosR ffa88deb85 docs: update selector CodePen example (#32202)
Moving it to the CodePen org so that we can all edit it.
2020-11-20 11:36:35 +02:00
XhmikosR 6bc18dc113 scss: remove needless Stylelint disables (#32212) 2020-11-20 09:54:33 +02:00
XhmikosR e567b9a7ab Backport #32158 (#32203)
Switch to jsDelivr for the remaining docs assets

Also, update feather icons and chart.js
2020-11-19 20:35:28 +02:00
Patrick H. Lauke e5b5881f8c Add overflow suppression to custom file label (#32160)
Avoids unsightly spilling out of long filename text, particularly for multi file inputs

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-19 16:29:57 +02:00
XhmikosR 052f72d360 Use the example shortcode in more places
Now, it's safe to do use it since it covers more cases
2020-11-19 11:22:22 +02:00
XhmikosR 764184fc43 Fix syntax highlighting language 2020-11-19 11:22:22 +02:00
XhmikosR b46f05a948 Switch to Hugo
This commit includes all the needed workarounds and most changes from the main branch for everything to work, like:

* removing empty lines in raw HTML that break output
* read .browserslistrc, CSS variables from disk instead of duplicating it
* using Hugo mounts
* using Hugo for the docs CSS/JS
* move ToC Sass code to a separate file while adapting it for Hugo

Thus, this patch makes our npm scripts faster since lint runs on one step and there's no separate docs assets processing.
2020-11-19 11:22:22 +02:00
XhmikosR ae87f8f7ce homepage: split snippets and show copy buttons (#32196) 2020-11-19 11:13:08 +02:00
XhmikosR 5fd0c239bc alerts.md: use Markdown (#32193) 2020-11-18 21:29:41 +02:00
Mark Otto 4bdaa2604f Mention user-select-all support in docs (#32151) 2020-11-13 20:49:32 +02:00
XhmikosR 5795e421ac Manually backport #32121 (#32141)
Use correct value order

Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-11-13 18:58:51 +02:00
Patrick H. Lauke d3cb97ad71 Avoid invisible real file input "spilling" out of container (#32145)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-13 18:52:42 +02:00
XhmikosR c41897ca98 Fix caniuse.com redirects (#32147) 2020-11-13 17:45:11 +02:00
XhmikosR 6ddedbff77 Update devDependencies and gems 2020-11-13 12:50:13 +02:00
XhmikosR 4bbc32dda7 download.md: link to JS files comparison too (#32087) 2020-11-13 12:50:13 +02:00
XhmikosR fb12b0bd6a search.js: check for search-input element early (#32100) 2020-11-13 12:50:13 +02:00
XhmikosR 45bf55e4ba package.json: fix clean-css level switch (#32097) 2020-11-13 12:50:13 +02:00
XhmikosR e2e6e867f8 browsers-devices.md: make heading an h3 (#32136) 2020-11-13 12:44:27 +02:00
XhmikosR 49d5756f01 navbar.md: remove loading=lazy from snippets (#32138) 2020-11-12 20:40:15 +02:00
XhmikosR 03ec5342e0 input-group.md: fix wrong class .visually-hidden (#32137) 2020-11-12 20:39:19 +02:00
Mitchell Bryson 896e444895 Check for data-interval on the first slide of carousel - v4 (#31820)
When starting a cycle for a carousel, it only checks for a default interval, and not an interval defined on the slide element via data props. This adds a check in before creating the interval to move to the next slide.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-12 09:34:17 +02:00
Mark Otto 9e9e1e61d5 Clarify JS bundle docs once more for v4 (#32106)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-11-10 09:36:04 +02:00
Patrick H. Lauke dec3d86514 Changes to navbar documentation/explanation (#32094) 2020-11-09 18:10:04 +00:00
XhmikosR 43f7befe36 docs: mention "Liberation Sans" (#32083) 2020-11-08 20:30:07 +02:00
Patrick H. Lauke 44d54eb578 Make docs anchorjs links darker on keyboard focus (#32050)
* Make docs anchorjs links darker on keyboard focus

Not just on mouse hover

* Update site/assets/scss/_anchor.scss

Co-authored-by: Mark Otto <markd.otto@gmail.com>

Co-authored-by: Mark Otto <markd.otto@gmail.com>
2020-11-05 11:22:05 +02:00
XhmikosR f1acc7f1d8 Update devDependencies 2020-11-05 11:22:05 +02:00
XhmikosR b3aa3958da Backport #32045
tests: fix sanitizer test.

The test template does not include a `script` tag so the test always returned true.
2020-11-05 11:22:05 +02:00
XhmikosR 3063d74b86 ESLint: enable new-cap rule but ignore properties (#32036) 2020-11-05 11:22:05 +02:00
XhmikosR ecf7db731f CODE_OF_CONDUCT.md: fix redirect (#32033) 2020-11-05 11:22:05 +02:00
XhmikosR 39e9cced88 Clarify PRs section (#32027) 2020-11-05 11:22:05 +02:00
XhmikosR 30641eb346 Lint: stop ignoring package.js (#32021) 2020-11-05 11:22:05 +02:00
Patrick H. Lauke bbfd22f924 Backport #32040 (#32054)
Add callouts about using light colors ideally on a dark background
2020-11-03 09:44:42 +02:00
XhmikosR 5664e728b4 Move js/src/index.js one folder up (#32001) 2020-11-01 07:31:17 +02:00
XhmikosR 465135a0f8 Backport #32015
Fix redirects
2020-10-30 16:34:06 +02:00
XhmikosR f808026e5b Backport #31861
* Split up dropdown sizing docs to improve rendering

- Drop the included .btn-toolbar, no need
- Split large and small button examples
2020-10-30 16:34:06 +02:00
XhmikosR 76d4f728a0 Update devDependencies
* autoprefixer                ^9.8.6  →  ^10.0.1
* find-unused-sass-variables  ^2.0.0  →   ^3.0.0
* linkinator                  ^2.2.0  →   ^2.2.2
* postcss-cli                 ^7.1.2  →   ^8.2.0
2020-10-30 16:34:06 +02:00
Christian Oliff 1266103171 Update Edge's Rendering Engine on CONTRIBUTING.md (#32008)
* Update Edge's Rendering Engine on CONTRIBUTING.md

Also updated the URL to prevent a HTTP redirect.

* Add 'Go to "Help > Send Feedback" from the browser' note

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-10-30 16:34:06 +02:00
XhmikosR 3f0b15cca6 CI: switch to Node.js 14. (#32003) 2020-10-30 16:34:06 +02:00
XhmikosR 76958761f2 CI: Skip dependabot PR branches. (#32006)
Also, reword Node.js setup step
2020-10-30 16:34:06 +02:00
Martijn Cuppens 9a094d44ef Remove bugreport.apple.com since it doesn't work (#32005) 2020-10-30 16:34:06 +02:00
Adam Jones 71e5b7ca2b Fix form validation tooltip alignment (#31557)
* Fix form validation tooltip alignment

* Remove CSS hacks

* Update _forms.scss

Co-authored-by: Gaël Poupard <ffoodd@users.noreply.github.com>
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-10-30 16:15:31 +02:00
XhmikosR 23cf931c7f list-group.md: fix snippet (#31981) 2020-10-27 12:11:01 +02:00
XhmikosR 09df15cc3c CI: allow skipping BrowserStack (#31878)
This basically brings back the previous behavior we had on Travis CI, where if the commit message included `[ci skip]`, BrowserStack tests didn't run.

Additionally, this allows skipping BrowserStack if the commit message contains `[skip ci]` too.
2020-10-27 12:11:01 +02:00
XhmikosR 1a90b8a418 Update devDependencies and gems 2020-10-27 12:11:01 +02:00
XhmikosR 35de511cb3 Update CodeQL action (#31930)
Should run on PRs too.
2020-10-27 12:11:01 +02:00
Patrick H. Lauke d8c189df59 Explicitly mention emoji fonts, tweak sentence in typography (#31960) 2020-10-27 12:11:01 +02:00
Patrick H. Lauke 5f1bc4a756 Remove redundant visually hidden "(current)" from pagination controls (#31892)
* Replace visually hidden span with aria-current in tests

* Remove redundant visually hidden "(current)" when `aria-current` already used

Closes #31891
2020-10-27 12:11:01 +02:00
Martijn Cuppens a7d5923470 Suppress flexbox side effects in breadcrumb (#31700)
* Suppress flexbox side effects

* Trailing whitesapce

Co-authored-by: Mark Otto <markd.otto@gmail.com>
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-10-27 12:11:01 +02:00
XhmikosR 084795db82 Update anchor-js to v4.3.0. (#31951) 2020-10-27 12:11:01 +02:00
XhmikosR c0401ebfa0 Jekyll: switch to Liquid's strict mode.
This should make the build error out if there are any issues instead of emitting a warning, which we won't notice.
2020-10-27 12:11:01 +02:00
Gaël Poupard d29b05c775 Handle the Ubuntu sans-serif case (#31657)
On Ubuntu, our native font-stack doesn't output the same font on Firefox and Chrome. This is [a known aliasing issue](http://fontfamily.io/sans-serif) — check at the bottom, Ubuntu 14.04. Ubuntu 18.04 (my current) doesn't use the same (Firefox uses Liberation Sans, Chrome uses the default system font Ubuntu).

I'm inclined to prefer Liberation Sans since it's closer to Arial / Helvetica. This patch already exists in Boosted, didn't notice it was missing in bootstrap until today…

BTW, our linked Smashing Magazine's system fonts post mentions this and is even more accurate since it targets the three major Linux distributions. AFAIK this is not needed since [Liberation Sans is available everywhere](http://fontfamily.io/Liberation_Sans) — but we might go back to `Oxygen, Ubuntu, Cantarell`if we want to stick to system fonts.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-10-27 12:11:01 +02:00
Gaël Poupard 4b30fe622c Backport #31882
* feature(spinners): slow down spinners when prefers-reduced-motion

* docs(spinners): add reduced motion callout and mention slowing down in accessibility page

* Update spinners.md

* docs(accessibility): rewording

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
Co-authored-by: Patrick H. Lauke <redux@splintered.co.uk>
2020-10-27 12:11:01 +02:00
XhmikosR efabff3a74 browserconfig.xml: switch to relative image path 2020-10-27 12:11:01 +02:00
XhmikosR 59b65a2cb8 Backport #31893
Update manifest.json

Switch to relative URLs so that we don't need to change the path with every major/minor release
2020-10-27 12:11:01 +02:00
Gaël Poupard 5f3fa833c9 docs(forms): backport #31904
* docs(forms): use a legend for fieldset instead of aria-label

* docs(forms): fix incorrect legend nesting in fieldset
2020-10-27 12:11:01 +02:00
XhmikosR cec8e5ddc3 Remove double spaces from homepage SVGs 2020-10-27 12:11:01 +02:00
Martijn Cuppens 5d310db486 Fix mobile menu jump & double border 2020-10-26 21:47:03 -07:00
Itamar Eduardo Gonçalves de Oliveira 61b5efbaf7 v4 Examples/Floating-labels: fix bad behavior with autofill 2020-10-26 21:19:56 -07:00
Martijn Cuppens a1b2071fe0 Require .has-validation for input groups with validation 2020-10-26 13:43:52 -07:00
Julien Déramond 171da55628 docs(forms): change inline custom radio name (#31936) 2020-10-19 22:13:30 +01:00
Alexandre Rosario b1ae785f40 Fixed: Undefined mixin 'deprecate' when importing 'bootstrap-grid-scss' (#31886)
* Fixed: Undefined mixin 'deprecate' when importing 'bootstrap-grid-scss'

* Updated: Mixin import moved down to feature together with others

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-10-15 16:32:08 +03:00
XhmikosR f86149807d docs: switch to suggesting jsDelivr as a CDN (#31898) 2020-10-14 20:41:37 +03:00
XhmikosR a716fb03f9 Prepare v4.5.3. (#31880) 2020-10-13 18:38:30 +03:00
XhmikosR d9f4bcf6ff Update devDependencies 2020-10-13 15:24:40 +03:00
XhmikosR c049713382 Remove the unused js/dist/index.js.map 2020-10-13 15:24:40 +03:00
XhmikosR 1b48122641 Update .eslintrc.json
Enforce ES5 for tests
2020-10-13 15:24:40 +03:00
Ankit Mishra 5d066caace Backport #31809 (#31851)
carousel: add missing `to` and `nextwhenvisible` description
2020-10-09 07:51:12 +03:00
Martijn Cuppens 429a84ff33 Backport #31826 (#31846)
Fix for alert-dismissible close button not clickable with stretched-link
2020-10-09 07:44:20 +03:00
Mark Otto 91d0a65243 Update .text-break for wider browser support 2020-10-05 16:12:47 +03:00
Mark Otto c437735b6c Backport versions update from #31754 and reverse order of versions to match v5 2020-10-05 16:12:47 +03:00
Mark Otto ca68277976 Backport color-adjust for v4
Keeps checkboxes, radios, and switches with their intended design when printing.

Backports #29714
2020-10-05 16:12:47 +03:00
Mark Otto a03b2feff2 Backport Reboot's th updates
Manually backports #30781 to v4.
2020-10-05 16:12:47 +03:00
Laussel Loïc 24572b1577 buttons plugin : avoid multiple change event trigger (#31000)
- add unit test to count how many events are thrown when widget contains multiple tags inside label
- add a parameter to toggle, if click event is provided onto an input then don't trigger another change event already thrown by the browser
- simplify the case where toggle interface is called click provide from input itself OR it's a button without label. If label is present, then browser propagate click event from childrens through label and then cause multiple calls to toggle
- the test assumes that `.btn` class is always set onto the label if there's one, otherwise need to update this plugin and look for label around the input

Test with keyboard, mouse and js click call

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-10-02 17:40:20 +03:00
XhmikosR d9b4426b07 Update .gitignore (#31783)
Add vscode and netlify folders
2020-09-30 08:44:42 +03:00
XhmikosR d9cccf476b Compress the new images 2020-09-30 08:44:42 +03:00
Mark Otto b25e6d5fa9 Add new Bootstrap Icons homepage images 2020-09-30 08:44:42 +03:00
XhmikosR 80fc8d9f76 Stylelint: enable --rd option 2020-09-30 08:44:42 +03:00
XhmikosR e0cd05019e Stylelint: replace deprecated options 2020-09-30 08:44:42 +03:00
XhmikosR 3cd2cd25b7 Update devDependencies and gems 2020-09-30 08:44:42 +03:00
XhmikosR 6c051294aa typography.md: update wording about RFS and Bootstrap version. 2020-09-30 08:44:42 +03:00
XhmikosR ff1d751e36 docs: link to the Asynchronous functions section 2020-09-30 08:44:42 +03:00
Mark Otto d106b01dec Add new variable for -padding-x
(cherry picked from commit fe77208a01)
2020-09-30 08:44:42 +03:00
Mark Otto f927a95b6c Backport #31300 (#31769)
* Manually backport JS bundle guidance

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-09-28 10:57:42 +03:00
Johann-S e45fbe7f72 add suggested fix for gpu acceleration 2020-09-24 15:06:30 +03:00
XhmikosR 16aa05752b Update popovers.md 2020-09-24 15:06:30 +03:00
Mark Otto 34208778ba v4: Mention GPU acceleration fix in docs callout
Closes #22610
2020-09-24 15:06:30 +03:00
XhmikosR 400364c7fd Update devDependencies 2020-09-21 14:58:34 +03:00
XhmikosR 30c3cd45a2 icons.md: add icofont like in v5 2020-09-21 14:58:34 +03:00
XhmikosR 6994dacee4 Backport #31689
docs: fix a few redirects

* Fix GitHub's permanent redirects

* Fix a11yproject redirects
2020-09-21 14:58:34 +03:00
XhmikosR dfefd48c34 Backport #31516
Add new icons set - CoreUI Icons
2020-09-21 14:58:34 +03:00
XhmikosR 31eb108811 Add parentheses around multiple spread conditions 2020-09-21 14:58:34 +03:00
XhmikosR b31046aab3 Cache a few variables. 2020-09-21 14:58:34 +03:00
XhmikosR c86b74fe88 Unbreak lines and remove a TODO comment 2020-09-21 14:58:34 +03:00
XhmikosR be18957933 Backport 65d130fbd8
Mention the quotes requirement in the docs too
2020-09-21 14:58:34 +03:00
Mark Otto 8acd7c9fbe Add a comment for escape-svg function
Closes #30835 by leaving a comment in the source that the escape-svg() function must have quotes around data URIs.

(cherry picked from commit 849fea5a1e)
2020-09-21 14:58:34 +03:00
Joakim Riedel b0a0c56788 ensure hidePrevented.bs.modal can be prevented (#31696) 2020-09-21 14:41:40 +03:00
Mr. Will ab0aec397e Add new Chinese Simplified translation (#31540) 2020-09-20 14:24:13 +03:00
Patrick H. Lauke 63b8a6ffdd Docs: Add top/bottom margin to highlighted code samples (#31706)
Backport of #31036 to v4
2020-09-19 18:59:56 +03:00
Mark Otto 7539cfb29c Update _custom-forms.scss (#31693)
Typo in box-shadow attribute, global variable used instead of local.

Co-authored-by: Arthur Shlain <artur.slain@gmail.com>
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-09-18 11:21:30 +03:00
XhmikosR dc2f1e68cd Dropdown: fix variable always evaluating to true (#31673) 2020-09-18 10:22:24 +03:00
XhmikosR 1bd1d78a78 Update devDependencies and gems (#31624)
* Update devDependencies and gems

* Bump bundlewatch limits
2020-09-15 08:31:57 +03:00
XhmikosR 3be585990c Comply to the new rules 2020-09-10 12:06:30 +03:00
XhmikosR 1c37a2ba77 Switch to xo and remove babel-eslint 2020-09-10 12:06:30 +03:00
Gaël Poupard 39282bcc9d docs(build tools): mention how to get the sources (#31589) 2020-09-04 20:17:37 +03:00
XhmikosR 5f2480a90a Prepare v4.5.2. (#31444) 2020-08-06 19:22:43 +03:00
Martijn Cuppens c0aa405632 Remove undefined $ignore-warning 2020-08-06 19:08:24 +03:00
XhmikosR e6ab4ad86a Deprecate the make-container-max-widths mixin 2020-08-06 19:08:24 +03:00
Mark Otto af4419b723 Restore make-container-max-widths mixin 2020-08-06 19:08:24 +03:00
XhmikosR f083759d03 Remove flex: 1 0 100% from rows (#31439) (#31445)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>

Co-authored-by: Mark Otto <markd.otto@gmail.com>
2020-08-06 18:59:17 +03:00
XhmikosR 89dc9750ec Prepare v4.5.1. (#31408) 2020-08-04 19:24:33 +03:00
XhmikosR e0f89dc90b Backport #31339 (#31414)
* Backport #31339

Add view on GitHub links for easier content editing from the docs
2020-08-04 18:54:01 +03:00
XhmikosR 30d375b33f Remove overflow: hidden from toasts (#31381) (#31407)
Co-authored-by: Mark Otto <markd.otto@gmail.com>
2020-08-03 19:13:32 +03:00
XhmikosR 6879a3c51d Update devDependencies and gems
* @babel/cli                   ^7.10.4  →  ^7.11.0
* @babel/core                  ^7.10.4  →  ^7.11.0
* @rollup/plugin-babel          ^5.0.4  →   ^5.1.0
* @rollup/plugin-commonjs      ^13.0.0  →  ^14.0.0
* @rollup/plugin-node-resolve   ^8.1.0  →   ^8.4.0
* autoprefixer                  ^9.8.4  →   ^9.8.6
* eslint                        ^7.4.0  →   ^7.6.0
* karma                         ^5.1.0  →   ^5.1.1
* rollup                       ^2.21.0  →  ^2.23.0
2020-08-03 19:06:36 +03:00
XhmikosR d44a1e105e Backport #31344
Add toasts to the components requiring JavaScript
2020-08-03 19:06:36 +03:00
Gaël Poupard 81d3e2b917 docs(skippy): prevent skip links from overlapping header 2020-08-03 19:06:36 +03:00
Rohit Sharma 1abe9264aa Add unit test for toast to check clearTimeout to have been called (#31298) 2020-08-03 19:06:36 +03:00
Rohit Sharma f530ab7549 Clear timeout before showing the toast (#31155)
* clear timeout before showing the toast

* Add unit test

* Remove the check for timeout

* Check for clearTimeout to have been called

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
# Conflicts:
#	js/tests/unit/toast.spec.js
2020-08-03 19:06:36 +03:00
XhmikosR 0ec2ce44b4 Update to Ruby 2.7/Bundler 2.x. (#31296) 2020-08-02 16:26:19 +03:00
Patrick H. Lauke cc49a5b506 Turn off scroll anchoring for accordions (#31347)
New default behavior for scroll anchoring (rolled out in Chrome 84?) leads to unsightly/odd accordion interactions - see #31341
This rule suppresses this new behavior and reverts back to the old way.

See https://drafts.csswg.org/css-scroll-anchoring/
2020-07-21 21:44:41 +01:00
Patrick H. Lauke 99013a5c54 Docs: forms accessibility cleanup (backport from v5) (#31234)
* Expand advice for anchor-based controls

* Expand accessibility note in input group

* Correct statement about validation, fix server example

* Tweak label > accessible name

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
Co-authored-by: Mark Otto <markd.otto@gmail.com>
2020-07-12 07:57:48 +03:00
XhmikosR 38bcf108c9 Update dependencies, gems and regenerate package-lock.json (#31261)
* @rollup/plugin-node-resolve 8.1.0
* popper.js 1.16.1
* qunit 2.10.1
* rollup 2.21.0
2020-07-09 15:21:41 +03:00
XhmikosR f40e1b651b Update devDependencies and gems 2020-07-06 16:40:27 +03:00
XhmikosR ad8d3a6c54 Update Babel config (#31011)
* remove plugin-proposal-object-rest-spread
* add bugfixes
* `exclude: ['transform-typeof-symbol']` did nothing with our config
2020-07-06 16:40:27 +03:00
ysds 9a6cfeb36e Backport #30326 (Unit test) 2020-07-06 16:40:27 +03:00
XhmikosR ea01c29294 Backport #30326
Prevent overflowing static backdrop modal animation

TODO: backport the test too
2020-07-06 16:40:27 +03:00
XhmikosR 234dd96abf Backport #31135
* Move color utility callouts to start of page

Hierarchically/structurally, in the position they are currently at, the two callouts seem like they "belong" just to the "background color" section. Moving them to the start makes it clearer that those two callouts relate to everything in the page (both "Color" and "Background color" classes.

* Change heading level

otherwise the assistive technology callout looks like it's hierarchically under the "Dealing with specificity" heading
2020-07-06 16:40:27 +03:00
XhmikosR c49b084158 BrowserStack: test on Edge 15 2020-07-06 16:40:27 +03:00
Mark Otto b2ef98f154 Remove backdrop-filter from toasts 2020-07-06 16:40:27 +03:00
Gaël Poupard 04dbb6c24c Floating labels improvements (#30966)
* docs(example): floating-labels' better Edge fallback

* docs(example): refactor floating-labels' CSS
2020-06-24 15:16:58 +03:00
XhmikosR 5a9fc2938c Update devDependencies and gems 2020-06-24 15:16:58 +03:00
Patrick H. Lauke c995886c0f Docs: add Gaël Poupard to the core team page (#31081)
Docs: add Gaël Poupard to the core team page
2020-06-24 15:16:58 +03:00
XhmikosR 9b241e630c Backport #31070
* Make example less broken-looking

don't want to give impression that now it's ok to just sprinkle `role="button"` around. this at least makes the `span` keyboard-focusable, similar to at least the start of a custom control
2020-06-24 15:16:58 +03:00
XhmikosR 920dc619a4 README.md: update badges
* remove .svg from shields.io badges since it's the default
* switch to shields.io for the OC badges too
* fix badgesize badges' labels
2020-06-24 15:16:58 +03:00
XhmikosR f6b74b8b41 Fix typo 2020-06-24 15:16:58 +03:00
XhmikosR 2e991732de Update issue templates from main. 2020-06-24 15:16:58 +03:00
XhmikosR 2314247825 Remove unused issue templates 2020-06-24 15:16:58 +03:00
XhmikosR 3349eb6a41 Update links to point to v4-dev or main branches 2020-06-24 15:16:58 +03:00
XhmikosR 6c04d186e2 Split GitHub Actions. 2020-06-24 15:16:58 +03:00
XhmikosR 7de8582657 Stylelint: remove redundant inline suppressions 2020-06-24 15:16:58 +03:00
XhmikosR 242f75cd1f Update .gitattributes (#30934)
This requires git >= 2.10 but it was released almost 4 years ago.
2020-06-24 15:16:58 +03:00
XhmikosR 78a51cb12f Backport #30973
Remove the class `.nav-item` from `.nav-link` inside the non `ul` or `ol` based navs.
This makes the consistency for `.nav-item` (This class will not be required on the `.nav-link`).
`.nav-item` was only required when you use `.nav-fill` or `.nav-justified` on the `.nav`. In other cases, it was redundant. And the purpose of `.nav-item` on `.nav-link`s can be achieved via flexbox utilities as well (Mentioned in the docs also).
2020-06-24 15:16:58 +03:00
Gaël Poupard 89be07b51f Prevent .row from shrinking in flex container (#30940) 2020-06-24 15:16:58 +03:00
Martijn Cuppens 4f44a2afd0 Remove duplicate properties after #30922 (#31148) 2020-06-23 09:28:13 +03:00
Gaël Poupard 7b5e48d307 fix(custom forms): disabled checked states weren't overriding background-image (#30922) 2020-06-15 08:41:12 +03:00
k-utsumi c3572ceca9 Avoid duplication of container breakpoints (#30969) 2020-06-14 00:25:39 +03:00
Gaël Poupard 7c6a0db820 Floating labels examples in IE (#30965)
* docs(example): drop IE workaround since it works fine in IE

* Serial comma

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
Co-authored-by: Mark Otto <markd.otto@gmail.com>
2020-06-13 09:38:13 +03:00
Gaël Poupard 5b8163301c Backport #30979 (#30999)
fix(grid)[manual backport]: zero min-width on .col has too much side-effects
2020-06-10 16:12:12 +03:00
Laussel Loïc e9f039d1fe avoid preventing input event onclick (#30992)
* instead of stopping event if onclick is triggered on input, call toggle method only if its not on checkbox inside a label

* add unit test

* add a dedicated test to ensure click event is forward to label

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-06-10 15:45:31 +03:00
Gaël Poupard ba6d5e802b docs(toasts): centered examples flexbugs #3 in IE11 2020-06-10 08:14:30 +03:00
Gaël Poupard 8429acf460 fix(toasts): IE11 shrinks toasts when in flex container, unless we specify flex-basis 2020-06-10 08:14:30 +03:00
XhmikosR 3caea1ca02 visual/modal.html: fix close buttons placement 2020-06-04 17:53:16 +03:00
XhmikosR 7ac763bcdc Bump bundlewatch limits 2020-06-04 17:53:16 +03:00
XhmikosR 8bc6dcd280 Backport #30936
Add role="dialog" in modals via JavaScript
2020-06-04 17:53:16 +03:00
XhmikosR 288b9b82b5 Backport #30932
Restore word-break: break-word on .text-break to fix text breaking on flex containers
2020-06-04 17:53:16 +03:00
XhmikosR ac3c2e2356 Update devDependencies and gems 2020-06-04 17:53:16 +03:00
XhmikosR 24d5a1e996 CI: update to actions/cache@2 2020-06-04 17:53:16 +03:00
XhmikosR 35310454b1 Remove ESLint object-curly-newline rule. 2020-06-04 17:53:16 +03:00
XhmikosR 7a9bbd4489 Backport #30742
Update to `@rollup/plugin-babel`
2020-06-04 17:53:16 +03:00
Martijn Cuppens fdb596b2c3 Prevent conflicts with components with classes (#30830) 2020-06-04 17:53:16 +03:00
Mark Otto ce23903a76 v5: Add border-radius to .card-img-overlay (#30817)
Allows use of background-color and more. Fixes #29033 for v5.
2020-06-04 17:53:16 +03:00
Mark Otto ac48bbe081 Simplify list-group borders in cards (#30808) 2020-06-04 17:53:16 +03:00
Mark Otto f4a7888af5 v4: Add z-index to .custom-check to fix custom checks in CSS columns (#30810)
For some reason, custom checks in CSS columns need a new stacking order to maintain visibility. This PR adds `z-index: 1` to trigger that new stacking order. Since v5's forms are being redone entirely, and we're dropping IE10/11 there, I think this is totally fine to ship with v4 only. Will need to check v5's forms it in Edge though.

Fixes #29607.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-06-04 16:11:33 +03:00
Gaël Poupard 4e685e70b7 fix(custom forms): nullify box-shadow for custom forms' states (#30957)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-06-04 09:34:30 +03:00
Gaël Poupard b287736327 fix(forms): IE11 misalign validation tooltips in input-groups (#30960) 2020-06-04 09:27:08 +03:00
Gaël Poupard 6f4d9fff02 docs(cards): fix card-img-bottom example (#30925) 2020-05-29 18:01:40 +03:00
Gaël Poupard daa01aacb5 docs(CDN): improve wording to match master and fix #30873 (#30896) 2020-05-26 18:48:53 +03:00
Mark Otto 58dd4cc66c v4: Update docs callout for responsive SVG images (#30809)
Turns out this applies to IE11 as well as IE10, so this clarifies the docs callout.

Closes #25242.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-05-14 09:18:01 +03:00
Mark Otto a8eb919f44 v4: Mention Bootstrap Icons in extend/icons.md (#30813)
- Closes #30796
2020-05-14 09:06:08 +03:00
XhmikosR 700c6036aa Fix release script docs (#30797) 2020-05-13 09:13:27 +03:00
XhmikosR 7a6da5e3e7 Dist 2020-05-12 20:44:42 +03:00
XhmikosR 109ad5db90 Bump version to 4.5.0. 2020-05-12 20:44:42 +03:00
Mark Otto 4a0ddb02db Wording fixes 2020-05-12 19:21:36 +03:00
XhmikosR 0f26be5ff3 Move the input groups validation workaround in docs. 2020-05-12 19:21:36 +03:00
XhmikosR 842b0d2ae4 Remove mention of build tools
They are not included in npm.
2020-05-12 19:21:36 +03:00
XhmikosR 32932d27d5 Grammar fixes 2020-05-12 19:21:36 +03:00
XhmikosR 4a26e51540 Include the newly added utilities/interactions.scss file
We missed it in #30562
2020-05-12 19:21:36 +03:00
XhmikosR 0f3eda8254 Update devDependencies and gems. 2020-05-12 19:21:36 +03:00
XhmikosR 30e7df6cca Backport d59de33 from #30772
Add a test about the scrollbar issue on non-integer width
2020-05-12 19:21:36 +03:00
Giovanni Mendoza f1827ce9cd Avoid bad scrollbar replacement into width values
Refs #30772
2020-05-12 19:21:36 +03:00
XhmikosR eb1df3e079 Update codeql.yml (#30777)
Remove moot fail-fast option
2020-05-12 19:21:36 +03:00
XhmikosR df91d2cab0 Improve build/zip-examples.js (#30759)
* remove favicons meta tags
* copy the two brand images we use in the examples
* copy dist and brand images into an assets folder
2020-05-12 19:21:36 +03:00
Rohit Sharma d2f9fbd055 Removed role="document" from the modal dialog (#30755) 2020-05-12 19:21:36 +03:00
XhmikosR bad48dc3b9 CI: simplify cache
While it might not be possible to invalidate the cache by changing test.yml, this should speed things up a lot due to `bundle i` taking most of the time.
2020-05-12 19:21:36 +03:00
XhmikosR 86f2c01459 Partially revert "Use regex.test() when we want to check for a Boolean. (#29969)"
This partially reverts commit 6c46493803.
2020-05-12 19:21:36 +03:00
XhmikosR 955c437f32 collapse.js: combine classes 2020-05-12 19:21:36 +03:00
XhmikosR eb720f20ff Minor lint tweaks and rules cleanup 2020-05-12 19:21:36 +03:00
XhmikosR 53eace04df build-plugins.js: add missing shebang (#30743) 2020-05-12 19:21:36 +03:00
XhmikosR 1c9e203c52 dropdown.js: switch to a ternary 2020-05-12 19:21:36 +03:00
XhmikosR 5f79b75ea8 tests: switch to strictEqual/notStrictEqual 2020-05-12 19:21:36 +03:00
XhmikosR 195585f5a6 scrollspy.js add more tests 2020-05-12 19:21:36 +03:00
XhmikosR fa8a7eca06 Remove variables used once. 2020-05-12 19:21:36 +03:00
XhmikosR 52fdab8d70 Join/break a few lines, no functional changes 2020-05-12 19:21:36 +03:00
XhmikosR b3601aae5b README.md: change Tests badge to point to v4-dev 2020-05-12 19:21:36 +03:00
XhmikosR 456194da11 package.json: add a docs-build script
Make the `docs-compile` one an alias of `docs-build`.
2020-05-12 19:21:36 +03:00
XhmikosR fb4c8eacb0 CI: stop updating RubyGems since it's not needed 2020-05-12 19:21:36 +03:00
Mark Otto 5d10e4a58e Add new interaction utilities and role attr to Reboot (#30562)
- Adds .user-select-* utils from v5
- Adds button role attribute util, one of the top requested features in our issues for adding pointer cursors
- Adds new docs page to demonstrate both
- Includes Sass list for customizing user select
2020-05-11 20:57:29 +03:00
XhmikosR fce3370843 Backport #29272 and adapt if for v4-dev
docs: fix tap targets
2020-05-10 12:19:58 -07:00
XhmikosR 345d68cdbb Add loading="lazy" in images
Backport of #30199 after adapting it for v4-dev.
2020-05-10 12:19:58 -07:00
Mark Otto a1d8ed4413 v4: Update homepage, examples, and general docs styles
- Refreshes the look and feel of the homepage with fresh colors, new content, and simplified styles.
- Updates docs button styles
- Replaces bytesize icons with Bootstrap icons
- Adds themes callout to examples page
2020-05-10 12:19:58 -07:00
XhmikosR 4111242cbb Update devDependencies and gems 2020-05-07 09:31:49 +03:00
XhmikosR e82888daf4 Revert "Avoid bad scrollbar replacement into width values (#30690)"
This reverts commit 5f00bba652.
2020-05-07 09:31:49 +03:00
Johann-S 015aaf3c3d ensure build plugins can exit in error (#30744)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-05-07 09:31:49 +03:00
Johann-S 22f75ca2e3 enforce element check on scrollspy target 2020-05-07 09:31:49 +03:00
XhmikosR 5f267b1854 Update jQuery to v3.5.1. 2020-05-07 09:31:49 +03:00
XhmikosR 0f6cb9139f scrollspy.js: remove temporary variable (#30724) 2020-05-07 09:31:49 +03:00
XhmikosR f3aed77dc7 Backport #30723
Move babel whitelist helpers to a common file
2020-05-07 09:31:49 +03:00
XhmikosR d8691fcd5a Update codeql.yml (#30719)
Remove `pull_request` event since it's not supported.
2020-05-07 09:31:49 +03:00
XhmikosR 566c829a1c package.json: fix release script for v4. 2020-05-07 09:31:49 +03:00
Mark Otto e51a09a2b8 Wording fixes 2020-05-06 20:56:04 +03:00
XhmikosR 8876866399 Update browser-bugs.md
Add a danger callout that the page is outdated
2020-05-06 20:56:04 +03:00
Quy d63b651f37 Fix typo (#30745)
Use possessive form of it
2020-05-06 06:54:42 +03:00
XhmikosR 1fef25b777 Revert "v4: Add Release Drafter (#30701)" (#30711)
This reverts commit f93e58eddb.
2020-05-04 20:00:19 +03:00
XhmikosR 63dbe4705d search.js: make the check for URL stricter (#30695) 2020-05-02 15:39:19 +03:00
Johann-S 5f00bba652 Avoid bad scrollbar replacement into width values (#30690) 2020-05-02 15:39:19 +03:00
XhmikosR c06a1f305d Backport #30130
Add a script to zip the built examples
2020-05-02 15:39:19 +03:00
Johann-S 1b16736a72 fix package.json add extension in main field 2020-05-02 15:39:19 +03:00
Martijn Cuppens ec637483f2 Backport #30685
`<pre>`: Disable auto-hiding scrollbar in IE & legacy Edge
2020-05-02 15:39:19 +03:00
XhmikosR 971738b4b5 Backport the CodeQL Action addition 2020-05-02 15:39:19 +03:00
XhmikosR 33f47771ca Fix redirect 2020-05-02 15:39:19 +03:00
XhmikosR 6d9256d2b1 Backport #30362
Remove unneeded og:image:secure_url from social.html

The image is always available over HTTPS anyway
2020-05-02 15:39:19 +03:00
Mark Otto f93e58eddb v4: Add Release Drafter (#30701)
* Create release-drafter.yml
* Create release-notes.yml
2020-05-01 11:22:10 +03:00
Shohei Yoshida e344ed4446 v4: Change input group validation examples (#30180)
* Change input group examples

* Update forms.md

* Update site/docs/4.4/components/forms.md

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
Co-authored-by: Mark Otto <markd.otto@gmail.com>
Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-04-30 09:29:03 +03:00
Mark Otto f79d14f7c8 Fixes #30503 to replace renamed position utility (#30505) 2020-04-30 08:11:51 +02:00
XhmikosR 748b1b9a5a CI: remove no longer needed steps (#30674)
The latest `actions/setup-node` prints this info by default
2020-04-28 20:59:30 +03:00
XhmikosR 5ecccd1171 Update devDependencies and gems. 2020-04-28 20:59:30 +03:00
Martijn Cuppens 92fe8445b1 Prevent list group style leaks (#30660) 2020-04-28 20:59:30 +03:00
XhmikosR 9c7ee5e554 CI: set CI_BRANCH_BASE to v4-dev
This is so that bundlewatch compares against v4-dev and not master.
2020-04-28 20:59:30 +03:00
XhmikosR f5c7da4c78 Backport 9b97dc6
Tweak syntax highlighting colors to be WCAG2AA valid.

Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-04-28 20:59:30 +03:00
Martijn Cuppens 7a678fc64f Backport #30633
Remove caret element
2020-04-28 20:59:30 +03:00
Martijn Cuppens a66d9a3d50 Backport #30605
grid: checks for `$grid-columns > 0`
2020-04-28 20:59:30 +03:00
Catalin Zalog 9d0097013a Backport #30606 (#30612)
checks for `$grid-row-columns`
2020-04-28 20:59:30 +03:00
Catalin Zalog 4853c5b527 feat: checks for $grid-breakpoints map list (#30609)
Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-04-28 20:59:30 +03:00
Mark Otto c4355e4a6b v5: Improve the responsiveness of our Dashboard example (#30573)
Cleans up some column classes to ensure things line up across all viewports. Also fixes some broken padding on the .navbar-brand.

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-04-28 20:59:30 +03:00
k-utsumi 0321c632ed Delete appearance from button.close (#30582) 2020-04-28 20:59:30 +03:00
XhmikosR e33e344410 Revert "Add dependabot config for v4 (#30008)"
This reverts commit 04b8219c18.
2020-04-28 20:59:30 +03:00
Martijn Cuppens 9f7fc4ac2b Deprecate bg-gradient-variant mixin (#30594)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-04-18 09:12:51 +03:00
XhmikosR f5ec0dbf74 collapse: fix error with jQuery v3.5.0. 2020-04-17 11:41:32 +03:00
XhmikosR d848c32297 Fix tests for jQuery v3.5.0. 2020-04-17 11:41:32 +03:00
XhmikosR 05cfefd32b Update jQuery to v3.5.0. 2020-04-17 11:41:32 +03:00
XhmikosR 04b8219c18 Add dependabot config for v4 (#30008) 2020-04-13 21:51:22 +03:00
XhmikosR 341ad62517 Update clipboard.js to v2.0.6 2020-04-13 21:12:29 +03:00
XhmikosR 5053725870 Update bs-custom-file-input.js to v1.3.4 2020-04-13 21:12:29 +03:00
XhmikosR 04c1ecd79d Update devDependencies and gems 2020-04-13 21:12:29 +03:00
Martijn Cuppens abc17a4858 Backport #30555
Use `box-shadow` mixin for `.form-select`
2020-04-13 21:12:29 +03:00
Martijn Cuppens 4d863effdb Backport #30512
Use `box-shadow` mixin for `.btn`
2020-04-13 21:12:29 +03:00
XhmikosR 5455e30048 Backport #30542
Remove redundant class and line height
2020-04-13 21:12:29 +03:00
XhmikosR c1a75a7d8f Add v4-dev in bundlewatch config. (#30541) 2020-04-13 21:12:29 +03:00
XhmikosR adb08ca33a Replace bundlesize with bundlewatch. (#30538) 2020-04-13 21:12:29 +03:00
Mark Otto 5f15f8cdbd Fix spinner-grow animation (#30504)
* Fix spinner-grow animation

Safari seems to be interpreting the old keyframes animation as incomplete. Adding `transform` to the second frame seems to resolve the issue.

Co-Authored-By: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-04-13 21:12:29 +03:00
Catalin Zalog 6edeaa4291 Add .card-footer color (#30515) 2020-04-13 21:12:29 +03:00
Martijn Cuppens fe9384c216 Backport #30497
Fix card list group borders & radii
2020-04-13 21:12:29 +03:00
Martijn Cuppens ddc58343d3 Backport #30480
Use `box-shadow` mixin for form controls
2020-04-13 21:12:29 +03:00
Martijn Cuppens 706bd3602d Backport #30391
transition() mixin prevent redundant 'transition: none' and pass `null`
2020-04-13 21:12:29 +03:00
Laussel Loïc 0cf29baf63 v4 tabs - accessibility issue when using ul/li semantic (#30381)
Add aria-role presentation on li element when ul element has role tablist and remove dropdown from visual tests as they've been removed from doc
2020-04-10 08:35:09 +03:00
luktom 8cc9defbc0 Fix event propagation from inactive and disabled dropdowns (#30510) (#30511) 2020-04-07 21:16:17 +03:00
Martijn Cuppens 1b575c27cd Backport #30353 (#30361)
Remove appearance from date inputs

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-04-01 08:53:07 +03:00
XhmikosR f7ed579d91 Switch to string constants. (#30490)
This allows the minifier to mangle the constants. It also allows the linter to find unused strings properly.

While at it, remove a few unused properties.

File                        Before      After       Diff
--------------------------------------------------------
bootstrap.bundle.min.js     22.09 kB    21.13 kB    -0.96 kB (-4.35 %)
bootstrap.min.js            15.4 kB     14.46 kB    -0.94 kB (-3.86 %)
2020-03-31 21:27:35 +03:00
XhmikosR 0225c1173b Bump devDependencies and gems. 2020-03-31 21:11:29 +03:00
XhmikosR 467c961976 Remove holder.js leftovers (#30469) 2020-03-31 21:11:29 +03:00
Tim Dujardin b30c68f8a1 Added focus state to .btn-link (#30036) 2020-03-31 21:11:29 +03:00
XhmikosR 573c10f099 Backport #30041 and #30448
Switch links to the GitHub organization and fix redirected links
2020-03-31 21:11:29 +03:00
Shohei Yoshida effe4e9588 Update modal docs (#30325) 2020-03-31 21:11:29 +03:00
Johann-S dabd458b4b Backport (#30383)
fix: ensure totype always return stringified null when null passed
2020-03-31 21:11:29 +03:00
XhmikosR 0c8d8a48e1 Backport (#30418)
Open icons in a new tab like the rest of the external links
2020-03-31 21:11:29 +03:00
XhmikosR 03fec36b44 Clarify card group behavior (#30416)
Co-authored-by: Mark Otto <markd.otto@gmail.com>
2020-03-31 21:11:29 +03:00
XhmikosR 138e8da421 CI: switch to Ruby 2.6. 2020-03-31 21:11:29 +03:00
Frank Liepert 45c99f7130 Prevent vertical offset in IE 11 (#29413)
Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-03-31 14:09:09 +02:00
Laussel Loïc 8b6dd449d7 fix $().button('toggle') not working for checkbox inside label (#30388) 2020-03-16 14:28:33 +02:00
XhmikosR ac5685d368 Update .github/workflows/test.yml 2020-03-09 16:26:10 +02:00
XhmikosR 81e8f52fcb Revert "CI: switch to Ruby 2.6" 2020-03-09 16:26:10 +02:00
XhmikosR d65977a991 Backport #29920
Add lockfile-lint
2020-03-09 16:26:10 +02:00
XhmikosR 90fef3086d CI: switch to Ruby 2.6 2020-03-09 16:26:10 +02:00
XhmikosR 9b71d9817d Update CI caching 2020-03-09 16:26:10 +02:00
XhmikosR 3b5283602c Replace uglify-js with terser. 2020-03-09 16:26:10 +02:00
XhmikosR cc3ca2586f Update Jekyll to v4.0.0. 2020-03-09 16:26:10 +02:00
XhmikosR 906a5de548 Replace broken-link-checker with linkinator 2020-03-09 16:26:10 +02:00
XhmikosR 61276d0881 Drop Node.js < 10 support and update all devDependencies.
* sinon 8.x doesn't work with IE, so leave it at 7.x.
2020-03-09 16:26:10 +02:00
XhmikosR 0ca1ec6fc3 Update devDependencies and gems 2020-03-09 16:08:41 +02:00
XhmikosR f852dff122 build/ship.sh: shellcheck fixes. (#30197)
Also add `set -e` so that if a command fails the whole script fails too.
2020-03-09 16:08:41 +02:00
Martijn Cuppens efb3fc402e $link-decoration: underline affects some components (#30262)
Co-authored-by: Shohei Yoshida <fellows3@gmail.com>
Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-03-09 16:08:41 +02:00
Martijn Cuppens 81ba76bb3c CSS & alignment tweaks 2020-03-09 16:08:41 +02:00
Minobi 39ac525f6e Example dashboard: fix menu disappearing on small viewport 2020-03-09 16:08:41 +02:00
Shohei Yoshida fa7510c6af Fix centered modal scrolling issue (#30244)
Use the `min-content` property.
2020-03-09 16:08:41 +02:00
XhmikosR 69f36286f9 Update jekyll-toc to v0.13.1. 2020-02-17 21:33:54 +02:00
XhmikosR 52c13233a3 Update devDependencies and gems. 2020-02-17 21:33:54 +02:00
XhmikosR 642d1001e3 .gitattributes: add .sh and remove .rb files. (#30196) 2020-02-17 21:33:54 +02:00
Gaël Poupard 473d36ff38 docs(theming): improve headings hierarchy under Sass → Functions (#30207) 2020-02-17 21:33:54 +02:00
XhmikosR 4a7cbd5b9f Backport #29971
Remove old versions from docs-navbar.html
2020-02-17 21:33:54 +02:00
Shohei Yoshida c40b71318c Remove unnecessary reduce motion when $enable-transition: false (#30183) 2020-02-17 21:33:54 +02:00
Christian Oliff 037bad148c Add Microsoft Edge for MacOS to supported browsers (#29956)
The new Chromium-based Edge has been available as a beta for sometime and general availability of the final version is expected to ship from Jan 15. I think it makes sense to add it as a supported browser once it's out of beta.
REF: https://blogs.windows.com/windowsexperience/2019/11/04/introducing-the-new-microsoft-edge-and-bing/
2020-02-17 21:33:54 +02:00
Giovanni Mendoza 0bd57ce212 Added new variable for padding on dropdown header (#29946)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-02-17 21:33:54 +02:00
XhmikosR 8c4b61e30c change-version.js: Remove nuspec files (#30161)
The version in the nuspec files is updated automatically from package.json through MyGet.ps1
2020-02-17 21:33:54 +02:00
Shohei Yoshida c77ec4fb06 Avoid border-radius functions return negative values (#30166)
* Avoid border-radius functions return negative values

* Update _border-radius.scss

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-02-17 21:33:54 +02:00
XhmikosR 4ea685a001 Bump bootstrap.min.js bundle size limit. 2020-02-17 21:33:54 +02:00
Martijn Cuppens 0d35f10842 Add ysds to the team page (#30145) 2020-02-17 21:33:54 +02:00
Giovanni Mendoza 6daae47cc0 Backport #29886
Close modal with keyboard=true & backdrop=static
2020-02-17 21:33:54 +02:00
Jesse Mandel 0f0a8c364d Updated nuspec content files and icon (#30148)
* #30045 - Update nuspec for updated content type

* Update iconUrl (deprecated) to icon

Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-02-17 21:33:54 +02:00
Jens Luyten 7ca811315f Prevent grid with default cols from breaking when large pre was present (#30049) 2020-02-17 21:33:54 +02:00
Martijn Cuppens 1884b8a421 Backport #29325. (#30074)
`.text-break` fix
2020-02-17 21:33:54 +02:00
jorimvanhove 92525e9ec4 IE auto-size input-group to column (#30043) 2020-02-17 21:33:54 +02:00
XhmikosR 6c46493803 Use regex.test() when we want to check for a Boolean. (#29969) 2020-02-17 21:33:54 +02:00
XhmikosR f737c73a27 javascript.md: Add srcset in sanitizer docs (#30007) 2020-02-17 21:33:54 +02:00
XhmikosR 411922b14d sanitizer.js: Add srcset in the allowed attributes (#29968) 2020-02-17 21:33:54 +02:00
Martijn Cuppens 21041eecb7 Backport #30090 (#30175)
Add version number to documentation `<title>`
2020-02-14 22:15:04 +02:00
Martijn Cuppens fbf294a605 Fix disabled .btn cursor (#30004) 2020-02-03 19:54:29 +01:00
XhmikosR 0d1aee6a2f reboot.md: Add missing Noto Sans font (#29937)
* reboot.md: Add missing Noto Sans font

* Sans serif order fix

Co-authored-by: Martijn Cuppens <martijn.cuppens@gmail.com>
2020-01-02 12:11:56 +02:00
XhmikosR 3c0cf9365b Bump copyright year to 2020. (#29944) 2020-01-02 12:11:56 +02:00
XhmikosR 0e09c6b831 package.json: move funding property higher. (#29936) 2020-01-02 12:11:56 +02:00
XhmikosR 80d842b501 Update devDependencies and gems 2020-01-02 12:11:56 +02:00
Martijn Cuppens 55945dcc36 README.md: show sponsors first (#29931) 2020-01-02 12:11:56 +02:00
XhmikosR 42714733b6 CI: fix Ruby caching 2020-01-02 12:11:56 +02:00
Martijn Cuppens 35d5cbf4fd Escape brackets (#29857)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-01-02 12:11:56 +02:00
Martijn Cuppens 0d08c74d2f Allow percentages in container widths (#29819) 2020-01-02 12:11:56 +02:00
Martijn Cuppens 00b0e0a9b7 Documentation fix: move width after make-container() mixin (#29820)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
2020-01-02 12:11:56 +02:00
XhmikosR 16a82e7e99 Update test.yml (#29863)
Fix cache name
2020-01-02 12:11:56 +02:00
XhmikosR e2530bf312 Update devDependencies and gems 2019-12-14 17:09:46 +02:00
XhmikosR 2d54fa9c3f Actions: add gems caching 2019-12-14 17:09:46 +02:00
XhmikosR 97e2e0da7c CI: update to actions/checkout@v2 (#29847) 2019-12-14 17:09:46 +02:00
XhmikosR b77af55325 Actions: add npm cache (#29765) 2019-12-14 17:09:46 +02:00
AlexKoala 52aceee0ab docs: Add Korean translation link 2019-12-14 17:09:46 +02:00
719media 70de5e8398 Fix breadcrumb spacing with whitespace (#29745) 2019-12-14 17:09:46 +02:00
Shohei Yoshida 52762f83d8 Improve wrapping and hit area of accordion example titles (#29782) 2019-12-14 17:09:46 +02:00
XhmikosR dca1ab7d87 Release v4.4.1. 2019-11-28 14:59:49 +02:00
Shohei Yoshida b07b6f743c Fix dart Sass compatibility for subtract (#29763) 2019-11-28 14:59:49 +02:00
Shohei Yoshida 0d148d8854 V4: Add :disabled for disabled fieldset (#29762) 2019-11-28 14:59:49 +02:00
Martijn Cuppens c24aaa6cbf Fix dart Sass compatibility (#29755) 2019-11-28 14:59:49 +02:00
XhmikosR 301ee1972d Update Gemfile.lock 2019-11-28 14:59:49 +02:00
XhmikosR 593574d510 Release v4.4.0 (#29735) 2019-11-26 19:12:00 +02:00
XhmikosR d61bba584f Backport #29734
justify-content:between ⇒ justify-content:space-between
2019-11-26 09:51:27 +02:00
XhmikosR 7aa1722a97 Update change-version.js (#29736)
Add `.nuspec` to the extensions list
2019-11-26 09:51:27 +02:00
XhmikosR 340009e6de Update devDependencies and gems. 2019-11-25 13:12:53 +02:00
XhmikosR bdd8752994 Switch to the Coveralls Action (#29478)
This is the official way of using Coveralls with Actions. Also this brings back Coveralls for PRs.
2019-11-25 13:12:53 +02:00
XhmikosR e0a2d5890d Backport #29624
config.yml: update popper.js to v1.16.0
2019-11-25 13:12:53 +02:00
XhmikosR 136afcf59b Update anchor.js to v4.2.1 (#29662) 2019-11-25 13:12:53 +02:00
Sam Duvall eb1e1cfb49 Fixed input-height-sm and input-height-lg calculations (#29653) 2019-11-25 13:12:53 +02:00
Martijn Cuppens 5be0fe8820 package.json: Add funding property (#29646) 2019-11-25 13:12:53 +02:00
XhmikosR a0bb417691 Fix icons link. 2019-11-25 13:12:53 +02:00
Martijn Cuppens 590c1baeeb progress: Fix IE overflow (#29629) 2019-11-25 13:12:53 +02:00
XhmikosR f12ae8cea2 Sass: fix version in deprecation messages.
The final version will be bumped when the next version is released.
2019-11-25 13:12:53 +02:00
Gary PEGEOT 6b7ca1234b Make check label cursor customizable (#29633) 2019-11-07 21:02:10 +02:00
XhmikosR 0aa6a81c11 Update devDependencies and gems. 2019-11-02 10:02:07 +02:00
XhmikosR 7629daedc1 Update modal.md (#29621)
Fix typo
2019-11-02 10:02:07 +02:00
Johann-S dd96b832f7 backport #29516: added animation when modal backdrop is static 2019-11-02 10:02:07 +02:00
Johann-S 29f585365f backport #29523: skip hidden dropdowns while focusing 2019-11-02 10:02:07 +02:00
Martijn Cuppens f55566e36b Add configurable button text wrapping (#29554) 2019-11-02 10:02:07 +02:00
XhmikosR 7ecfa6a343 Backport #29585
Enable eslint no-console rule except for build directory
2019-11-02 10:02:07 +02:00
XhmikosR 7453733ff6 Backport #29544
Add link to Icons site in our docs
2019-11-02 10:02:07 +02:00
XhmikosR dd6b8682a6 CI: disable gem docs globally 2019-11-02 10:02:07 +02:00
XhmikosR 8e935b60c8 CI: install bundler 1.17 and without docs 2019-11-02 10:02:07 +02:00
Mark Otto 9be7aac831 Add make-col-auto mixin (#29367) 2019-11-02 10:02:07 +02:00
XhmikosR f830450ca8 Fix highlighting.
v4-dev is using Jekyll, not Hugo.
2019-11-01 20:22:37 +02:00
Martijn Cuppens b0b8d3c982 Convert v4-dev calc() left overs to add/subtract functions 2019-11-01 20:22:37 +02:00
Martijn Cuppens 90d4b72e06 Add calc() to function blacklist 2019-11-01 20:22:37 +02:00
Mark Otto ea1d09c444 Doc tweaks. 2019-11-01 20:22:37 +02:00
ysds 7bd70e54f2 Add add and subtract function 2019-11-01 20:22:37 +02:00
Martijn Cuppens ed4a4e6081 Link to versioned RFS repo (#29598) 2019-10-28 08:41:08 +02:00
Christian Oliff 087d0ea1e1 The HTML5 Boilerplate Print CSS moved to a separate repo (#29522)
The HTML5 Boilerplate CSS has moved to a separate GitHub repo (h5bp/main.css) so the source link referenced here no longer works. This PR updates the link to the new correct location.
2019-10-15 09:40:01 +03:00
XhmikosR 8cf6c209d8 Update devDependencies and gems.
Locked qunit to v2.9.2 to prevent test failures. We should revisit qunit later.
2019-10-14 12:12:05 +03:00
ysds db19e8c706 Fix incorrect aspect ratio on IE11 2019-10-14 12:12:05 +03:00
Martijn Cuppens 510a446be6 Remove redundant properties 2019-10-14 12:12:05 +03:00
Martijn Cuppens 327bfca418 Fix top level ampersand (#29518)
Fixes dart sass compatibility.
2019-10-14 12:12:05 +03:00
XhmikosR be452a0ed3 CI: move CI env variable to the root of the workflow. (#29499)
This way we match the Travis CI behavior, and it's inherited by all steps.
2019-10-14 12:12:05 +03:00
XhmikosR 23a78f0ab1 Update .gitignore.
Remove the old Hugo static dist folder.
2019-10-14 12:12:05 +03:00
Martijn Cuppens 6c9640c245 Backport #29445
Remove outline from select box in Firefox
2019-10-14 12:12:05 +03:00
astrahov 1260b4fb3f Add variable for $breadcrumb-font-size (#29467) 2019-10-14 12:12:05 +03:00
Martijn Cuppens d521e147f9 Fix border for single card in accordion (#29453) 2019-10-14 12:12:05 +03:00
Martijn Cuppens f47243460e Variable card height (#29462) 2019-10-14 12:12:05 +03:00
XhmikosR 91a9fd96b9 coveralls: Add COVERALLS_GIT_BRANCH (#29458)
Without this, coveralls didn't receive the branch info thus leading to failures when we switched branches.
2019-10-14 12:12:05 +03:00
XhmikosR 5e304b60a1 workflows/test.yml: specify CI=true (#29440) 2019-10-14 12:12:05 +03:00
XhmikosR 4c74d58f26 README.md: link to the Actions page for Tests (#29480) 2019-10-14 12:12:05 +03:00
Martijn Cuppens cd64a164f1 IE image fix (#29483) 2019-10-08 08:49:29 +03:00
XhmikosR 1f2b048312 Use 180 for the grid-cards placeholder images' height. 2019-09-26 18:37:07 +03:00
XhmikosR caf889e49e Update devDependencies and gems. 2019-09-26 18:37:07 +03:00
Shohei Yoshida b5ba078b12 Grid card example tweaks (#29409)
Stack in cards in one column when < md
2019-09-26 18:37:07 +03:00
XhmikosR cdfba0be4a GH Actions updates. (#29429) 2019-09-26 18:37:07 +03:00
XhmikosR 61cc86d68d workflows/test.yml: use ruby-version.
`version` is deprecated.
2019-09-26 18:37:07 +03:00
XhmikosR 846b603413 workflows/test.yml: switch to setup-node@v1. (#29410) 2019-09-26 18:37:07 +03:00
XhmikosR 791b1943f2 Bump bundlesize limits. 2019-09-26 18:37:07 +03:00
ysds 8741eed7a5 Add responsive example 2019-09-26 18:37:07 +03:00
ysds afc9cae32c Allow override default col width 2019-09-26 18:37:07 +03:00
Mark Otto d08567797f Cleanup
- Rename and move the variable to variables file
- Move code to the grid file
- Use the mixin to generate our own classes
- Wrap in a grid classes enabled conditional
- Document the mixin
2019-09-26 18:37:07 +03:00
Mark Otto acb2b7061c Move margins, and equal height via utility example 2019-09-26 18:37:07 +03:00
Mark Otto 9ed860ef24 First pass at .row-cols classes
Trying to find a new way to do responsive card decks while not locking ourselves into the cards themselves. My thinking here is we can easily control the column (.col) width by the parent, but I don't know how many we need (have 0-5 now) across each breakpoint. This works for cards so far, and I think could get us equal height, too.
2019-09-26 18:37:07 +03:00
XhmikosR 28758a03f0 carousel.md: Remove duplicate bd-example div. (#29341)
The example shortcode already adds this.
2019-09-26 18:37:07 +03:00
XhmikosR f732bf025a docs: remove swatches for theme colors. (#29327)
Use the built-in utilities instead.
2019-09-26 18:37:07 +03:00
XhmikosR 68ddcec057 theming.md: bring :root up to par with Scss. (#29323)
Also, add a warning in _root.scss so that we don't miss it again.
2019-09-26 18:37:07 +03:00
XhmikosR 6d5739320e blog example: remove unused CSS. (#29316) 2019-09-26 18:37:07 +03:00
Martijn Cuppens 5d39e36083 Don't bind validation to form controls 2019-09-26 18:37:07 +03:00
XhmikosR 269e5351aa Update devDependencies and gems. 2019-08-27 16:32:25 +03:00
Johann-S ef1c7aadbc Backport #29298
dropdown show method should do the same as toggle
2019-08-27 16:32:25 +03:00
XhmikosR dd181e91bd Actions CI tweaks (#29276)
* Allow bundlesize to run for forks too.
* Add name for clone step.
* Add` fail-fast: false`
2019-08-27 16:32:25 +03:00
Johann-S bab999701c Backport #29277
dropdown - destroy old popper.js references
2019-08-27 16:32:25 +03:00
tracyjordan 41b8ce278b fixed minor typo (#29291) 2019-08-27 16:32:25 +03:00
XhmikosR de94f6003f test.yml: reindent. 2019-08-27 16:32:25 +03:00
XhmikosR 3a3b0a4eae change-version.js: Add _gh_pages folder in ignores. (#29270) 2019-08-27 16:32:25 +03:00
Martijn Cuppens c4e5aa0d32 docs: fix tap targets (#29272) 2019-08-27 16:32:25 +03:00
Johann-S 7652d326e4 Backport #29251
allow to pass popper.js configuration for tooltip/popover and dropdown
2019-08-27 16:32:25 +03:00
Martijn Cuppens 6381c63fb1 Add deprecation warning 2019-08-26 09:29:50 +02:00
Martijn Cuppens 9e1ef5623f Deprecate nav-divider() mixin 2019-08-22 08:10:03 +02:00
Martijn Cuppens 9519b9e055 Enable wrapping for elements in .modal-footer (#25103) 2019-08-17 17:03:00 +03:00
Martijn Cuppens 94395af932 Restore cursor: pointer for checkbox/radio buttons (#29239) 2019-08-17 17:03:00 +03:00
Martijn Cuppens 81d5e6eb1b Clarify order documentation (#29252) 2019-08-17 17:03:00 +03:00
XhmikosR 38d055e7fb Fix redirects. (#29254) 2019-08-17 17:03:00 +03:00
XhmikosR 727c1684bb Update devDependencies and gems. 2019-08-17 17:03:00 +03:00
Martijn Cuppens e538b9f23e Fix Firefox rendering issue (#29234) 2019-08-17 17:03:00 +03:00
XhmikosR 116da0b746 Bump bootstrap.min.css bundlesize limit. 2019-08-17 17:03:00 +03:00
Shohei Yoshida c387223720 Fix min-width of input-group flex items (#29209) 2019-08-17 17:03:00 +03:00
Mark Otto 81fa902454 Responsive containers (follow-up to #29095) (#29118)
* Follow-up to #29095

This PR fixes the responsive containers that were added in #29095, originally stubbed out in #25631. Apologies to @browner12 for getting that wrong.

Fixes #25631.

* update navbar as well because we cannot reset all containers uniformly

* Update navbars example to include container-xl example to ensure containers match

* rewrite responsive containers docs, add table of max-widths

* Update container docs
- Move table up to the intro
- Remove the container example because it's actually hella confusing
- Update and link to grid example as a demo instead
2019-08-17 17:03:00 +03:00
XhmikosR d55f6c3073 Simplify css-prefix scripts. (#29205) 2019-08-17 17:03:00 +03:00
Martijn Cuppens e5a3ee5e9c Extend .container-fluid (#29106) 2019-08-17 17:03:00 +03:00
Mark Otto 3695c3a1fb fix broken classes 2019-08-17 17:03:00 +03:00
Mark Otto 2892675f65 v4/v5: Add responsive containers (#29095)
* create responsive containers

provide more flexibility and allow the user to determine when containers switch from fluid to fixed width.

* fix the base container code

this commit fixes the non-media portion of the generated CSS. I learned about the `@extends` directive and was able to put it to good use.

I create a new temporary map that contains all the main `$container-max-widths` and join it to our 2 special cases of 'xs' and 'fluid'.  Then we loop through that and, with the appropriate infixes, extend our placeholder

* formatting for style

forgot to run my tests before the last push, i think these are better.

* finish incomplete comment

* fix the responsive containers

using the `@extend` directive I was able to clean up this code

* fix responsive containers in the navbar

mostly we just look through all of our breakpoints so we can include all of the responsive container classes in the tweaks we have to do for the navbar (redeclaring flex properties, don't double up on padding, etc)

* Simplify container extends

* Simplify navbar containers

* Rearrange, add comments, ensure everything is nested in $enable-grid-classes

* Reduce new CSS by using attribute selector

We avoid using `@extend` whenever possible, and this is more readable

* Update _grid.scss

* Update _navbar.scss

* Add docs for responsive containers, redesign the container layout page

* Add to the Grid example
2019-08-17 17:03:00 +03:00
XhmikosR 9abaafa546 Add workflows/test.yml for v4-dev. (#29230) 2019-08-09 10:38:33 +03:00
XhmikosR c93fdec2f0 Disallow crawling on Netlify. (#29194) 2019-08-03 17:09:25 +03:00
Herst 8c3a1298f7 Add missing role="document" (#29172) 2019-07-31 11:37:39 +03:00
XhmikosR fb6266a8df carousel: fix transition properties order. (#29173) 2019-07-31 11:37:39 +03:00
XhmikosR 96d4a64944 Update devDependencies and gems. 2019-07-31 11:37:39 +03:00
Patrick H. Lauke cf07b5a7ab Fix minor typo (#29168) 2019-07-31 11:37:39 +03:00
Shohei Yoshida f6b00cda24 Fix reboot for placeholder links (#29164) 2019-07-31 11:37:39 +03:00
Patrick H. Lauke af0786b10f Minor: fix sentence (#29160)
"Popovers whose both title..."
2019-07-31 11:37:39 +03:00
Patrick H. Lauke d5266dc995 Fix reboot for placeholder links (#29162)
Backport of #29140
2019-07-31 11:37:39 +03:00
Chandan Deep 397359154c Change property from background to background-image (#29149)
For Gradient, We have to use the background-image instead of only background.
2019-07-31 11:37:39 +03:00
Brian Juul Andersen cd58245f10 Update scrollspy.md (#29156)
Fixed minor grammatical error:

"... the best method get scroll ..."

=>

"... the best method to get scroll ..."
2019-07-31 11:37:39 +03:00
Johann-S e4d4c5d0bc Backport #29155
allow dynamic modal body for scrollable modals
2019-07-31 11:37:39 +03:00
Martijn Cuppens 8f95b26d65 Haha, floats. It's 2019 (#29147) 2019-07-31 11:37:39 +03:00
XhmikosR e1cd51e4fb Update docs vendor libs (#29134)
* Update bs-custom-file-input.min.js to v1.3.2.
* Update anchor.min.js to v4.2.0.
2019-07-31 11:37:39 +03:00
XhmikosR dcdd9be0b3 Backport #29121.
Remove https://glyph.smarticons.co/ from list of suggestions.
The domain is now for sale and is triggers warnings in Firefox and Chrome
2019-07-31 11:37:39 +03:00
Martijn Cuppens 48e86c5796 Apply at-mixin-argumentless-call-parentheses: always stylelint rule for v4 mixins 2019-07-31 11:37:39 +03:00
Martijn Cuppens d59aa2c702 Apply at-mixin-argumentless-call-parentheses: always stylelint rule 2019-07-31 11:37:39 +03:00
XhmikosR 22f6a4beea Add --continue-on-error in the css-lint script. (#29119) 2019-07-31 11:37:39 +03:00
Shohei Yoshida 470adc3f16 Force reflow for fade-in animation (#29113) 2019-07-31 11:37:39 +03:00
XhmikosR e01103e3f9 Downgrade karma-browserstack-launcher to v1.4.0. (#29109)
This might fix the build failures we are getting.
2019-07-31 11:37:39 +03:00
Martijn Cuppens 9322cc83bc Simplify css-compile-main script (#29102) 2019-07-31 11:37:39 +03:00
XhmikosR 0f376c1107 Update svgo.yml. (#29089) 2019-07-31 11:37:39 +03:00
Kitten King b66abdf3b1 Fix Typos across Bootstrap repository (#29082) 2019-07-31 11:37:39 +03:00
XhmikosR 1bee3c03cf Remove iconic and add feather icons. (#29079) 2019-07-31 11:37:39 +03:00
Martijn Cuppens a2a38058af .custom-select: combine properties. 2019-07-30 15:43:38 +03:00
XhmikosR 41fd25abe1 Optimize the inline SVGs. 2019-07-30 15:43:38 +03:00
XhmikosR f233e05acc Disable the !default rule for our docs variables. 2019-07-30 15:43:38 +03:00
XhmikosR eeea633150 Use the background shorthand. 2019-07-30 15:43:38 +03:00
XhmikosR a5d280365b docs: use the escape_svg function. 2019-07-30 15:43:38 +03:00
Martijn Cuppens c26e68427c Backport "Use escape-svg() function (#29077)"
Adapted for v4-dev.
2019-07-30 15:43:38 +03:00
XhmikosR 68ab243ffa SVGs: lowercase hex values. 2019-07-30 15:43:38 +03:00
XhmikosR cac30c0722 Update devDependencies. 2019-07-17 14:48:26 +03:00
XhmikosR def8173e7b Fix bootstrap-themes.png. (#29061)
For some reason the old image was bad quality.
2019-07-17 14:48:26 +03:00
M. Wacker 921f17a650 Fix breaking layout breaking error in code (#28328)
Change `word-break: break-word;` to `word-wrap: break-word;`
2019-07-17 14:48:26 +03:00
Brian Juul Andersen 636204974b Updated sentence (#29051)
Checkboxes and radios use are built to support HTML-based form

=>

Checkboxes and radio buttons support ...
2019-07-17 14:48:26 +03:00
Manuel Alcaraz c6cbae6b2a #29034 Fix broken links (#29035) 2019-07-17 14:48:26 +03:00
Sunny Dhoke 4e4a1febb0 Added link to creative commons license (#29032)
The previous link is dead one.
2019-07-17 14:48:26 +03:00
Brian Juul Andersen f2185b9b5f Update collapse.md (#29025)
Corrected minor spelling error.
2019-07-17 14:48:26 +03:00
Johann-S a894ea3a51 updated babel 2019-07-17 14:48:26 +03:00
XhmikosR 0ad0985ac0 Update devDependencies and gems.
Also lock babel versions, since we get failures with newer ones.
2019-07-10 11:03:54 +03:00
XhmikosR d361194a99 Move bundlesize config to a separate file. (#29002) 2019-07-10 11:03:54 +03:00
Patrick H. Lauke 3d72b94ee9 Add prefers-reduced-motion callout to toast documentation (#28993)
x-ref #28987
2019-07-10 11:03:54 +03:00
Bardi Harborow d395dfaafc Add ARIA search landmark to documentation. (#28983) 2019-07-10 11:03:54 +03:00
Martijn Cuppens e61d609bc0 Ignore the bg-variant deprecation warning in our files. 2019-07-10 11:03:54 +03:00
Martijn Cuppens 23d7dd6dbd Remove redundant radius properties (#28956) 2019-07-10 11:03:54 +03:00
Patrick H. Lauke be80d26cdb Ensure button plugin sets/removes active class correctly on page load (#28952)
* Ensure correct active class is set on button toggles/checkboxes/radios on page load

Sanity check, ensures that the UI visually matches the actual values/states of controls. Also ensures that if any autocomplete/autofill happened, this is visually accounted for
by having the correct class set.

Includes unit tests (and `autocomplete` has been removed from these as it's no longer necessary)

* Remove now unnecessary autocomplete attribute

As the attribute was there to force/ensure that the visual presentation matched the state, and this is now taken care of programmatically, there's no need to unnecessarily suppress autocomplete...let them autocomplete if they want to...
2019-07-10 11:03:54 +03:00
Sergey Kovalenko 22f6b373f9 Remove negative margins for group list items (#28940)
To fix RGBA borders overlapping issue.
2019-07-10 11:03:54 +03:00
XhmikosR a92f838c8d Minor wording changes. 2019-07-10 11:03:54 +03:00
Jonathan Hawkins e76fce5852 Combine duplicate documentation examples into one to fix the confusing text. 2019-07-10 11:03:54 +03:00
Martijn Cuppens c121778b49 Change invalid icon from cross to exclamation mark (#28944)
The cross icon was confusing since some browsers use it as a reset button.
2019-07-10 11:03:54 +03:00
Robin D'Arcy 4376d92ea7 Docs – update extend/approach.md (#28941) 2019-07-10 11:03:54 +03:00
Martijn Cuppens de163b337c Deprecate bg-variant() mixin (#28938) 2019-06-20 21:30:09 +02:00
Patrick H. Lauke 5f44e01dab Add missing dropdown unit test for closing with ESC (#28929)
Backport of the unit test from https://github.com/twbs/bootstrap/pull/28928
2019-06-19 13:43:48 +03:00
Martijn Cuppens 1c5e1cb3c9 Typo fix (#28920) 2019-06-18 15:02:58 +03:00
Shohei Yoshida b165aff2f7 Fix position of browser default validation message (#28852) 2019-06-18 15:02:58 +03:00
Morteza Ziyae 1bdeab8159 Fix width and height of data svg images in IE10 (#28883) 2019-06-18 15:02:58 +03:00
Patrick H. Lauke 1da3aa3103 Don't open dropdown on ESC on trigger element (#28912)
* Don't open dropdown on ESC on trigger element

Closes #28751
2019-06-18 15:02:58 +03:00
XhmikosR 6587e5cf80 Update devDependencies and gems. 2019-06-18 15:02:58 +03:00
Johann-S 6c9f833a90 tooltip dispose:removing only own event handler (#28896) 2019-06-18 15:02:58 +03:00
Patrick H. Lauke 24abed1336 Fix keyboard handling of button-style checkbox/radio button groups (#28834)
- adds more defensive checks to make sure no unnecessary toggling happens on disabled buttons; this also fixes an up-to-now undiscovered bug where a toggle button with `.disabled` class would still have its `aria-pressed` toggled
- adds a set of explicit tests for the above case of disabled buttons and `aria-pressed`
- remove a now irrelevant (or at least very nonsensical) test for `<label>` containing both an actionable and a `hidden` `<input>`
- expand the test for disabled checkbox to also explicitly test starting conditions (used mainly in my debugging)
- ensure that `$btn[0].click()` is used to click checkboxes in tests, rather than the `click()` on the jquery object which is simply a shorthand for `trigger('click')` and does not actually trigger the browser default behavior
- remove the `preventDefault()` from the button handling, which was preventing correct keyboard functionality for checkboxes/radio buttons
- add extra logic to the button.js code to handle checkboxes correctly and avoid double-triggering as a result of mouse interactions (which saw the checkboxes being toggled twice, thus returning them to their original state)
- add logic that prevents the `checked` property from being added incorrectly for any inputs other than radio buttons and checkboxes
- added more tests (including the most basic test for a properly triggered fake checkbox button)
- work around Firefox bug #1540995 (which this code was hitting after removing the `preventDefault()`, due to Firefox's incorrect toggling of disabled checkboxes when programmatically (but not manually) activated with a `click()` event
2019-06-18 15:02:58 +03:00
Patrick H. Lauke 5bf876cb0f Docs: add accessibility/keyboard callout to popovers, tweak tooltips callout (#28851)
- Add same advice about keyboard/AT handling to popovers as a callout; also add information about not adding excessive content or interactive controls (and the suggestion to opt for a modal)
- Tweak the tooltips callout for consistency
2019-06-18 15:02:58 +03:00
Shohei Yoshida 911b72cf78 Workaround for the image size bug in IE (#28855) 2019-06-18 15:02:58 +03:00
Christian Oliff e0d0f5a1c6 HTTPS link to codeguide.co (#28860) 2019-06-18 15:02:58 +03:00
XhmikosR 5baad13902 Use npm-run-all in the netlify script. (#28846) 2019-05-30 11:58:34 +03:00
XhmikosR d9a8b8ea80 Update devDependencies and gems. 2019-05-30 11:58:34 +03:00
Jay Pinho 1161bff6eb Make example description more accurate (#28842) 2019-05-30 11:58:34 +03:00
Shohei Yoshida a84a05a56a Clean input group flex basis (#28785) 2019-05-30 11:58:34 +03:00
Shohei Yoshida 9d075734cb Calc modal header/footer border radius according to the border width (#28775) 2019-05-30 11:58:34 +03:00
Aditya Shankar 9508c4c11b Correct grammar in modal.scss (#28829) 2019-05-30 11:58:34 +03:00
Sezer Esen 01a71532d9 Fix background position (#28814) 2019-05-30 11:58:34 +03:00
XhmikosR 621391255b vnu.jar: Update ignores. (#28817)
Pass the `--no-langdetect` flag instead of ignoring the warning manually.
2019-05-30 11:58:34 +03:00
Johann-S c6dd1a7d93 Backport #28777.
Toast should allow prevent default for hide and show events
2019-05-30 11:58:34 +03:00
Shohei Yoshida fe777292b5 Fix z-index according to our z-index rule (#28784)
https://getbootstrap.com/docs/4.3/extend/approach/#z-index-scales
2019-05-30 11:58:34 +03:00
Christian Oliff 67be130c7b Update Yarn package link to link to the Bootstrap package (#28781)
I think it makes more sense to link to the Bootstrap package on Yarn here (like the package link for NPM above)
2019-05-30 11:58:34 +03:00
XhmikosR be7198a05b Travis CI: Add Node.js 12. 2019-05-30 11:58:34 +03:00
XhmikosR f72d2511ba Update devDependencies. 2019-05-09 21:30:32 +03:00
Shohei Yoshida 4251c23f71 Reset input padding for cross browser consistency (#28208) 2019-05-09 21:30:32 +03:00
zhangbao fc745a3ec8 Consistency modification (#28750) 2019-05-09 21:30:32 +03:00
Martijn Cuppens e9d8c1a9dd Backport #28679.
* Documentation tweaks
* Remove redundant `col-12` classes
2019-05-09 21:30:32 +03:00
Patrick H. Lauke 36ea7e7421 Album example: remove misleading jumbotron-heading classname (#28741) 2019-05-09 21:30:32 +03:00
Shohei Yoshida aa7b055064 Fix incorrect variable for popover border radius (#28733)
* Use $popover-border-radius

* Move and rename the local $offset-border-width to the global variable
2019-05-09 21:30:32 +03:00
Christian Oliff add38103ad Fix broken link to css-discuss.incutio.com/wiki/Printing_Tables (#28637)
Instead now pointing to the most recent Wayback Machine archive copy.
2019-05-09 21:30:32 +03:00
Martijn Cuppens 5c65ea6a38 Scrollbar fix (#28417) 2019-05-09 21:30:32 +03:00
XhmikosR 27287a6884 Update devDependencies including jQuery to v3.4.1. 2019-05-02 16:59:49 +03:00
XhmikosR cc5292f510 Backport #28551.
Show the other navbar items on small screens too.
2019-05-02 16:59:49 +03:00
XhmikosR 7da9729a62 Update (dev)Dependencies and gems.
Also, fix the `update-deps` excludes and add karma since 4.x requires Node.js >= 8.
2019-04-29 17:41:28 +03:00
Mark Otto 605704d7f5 Prevent form validation mixin from generating invalid CSS (#28447)
Extrapolates the previously used selector into a new mixin that only generates valid CSS by creating psuedo-classes for `valid` and `invalid`, and nothing else.

Fixes #28380.
2019-04-29 17:41:28 +03:00
Shohei Yoshida 68932330f0 Sync plain text font-size with $input-font-size (#28464) 2019-04-29 17:41:28 +03:00
Martijn Cuppens 78f47133e9 Remove redundant slashes (#28677) 2019-04-29 17:41:28 +03:00
Johann-S c50c1e9d23 fix unit tests for chrome mobile 2019-04-29 17:41:28 +03:00
Shohei Yoshida 10f91729aa Add $custom-control-label-color variable (#28633) 2019-04-29 17:41:28 +03:00
ysds 57ff6ee9ef Call hide() after delay time 2019-04-29 17:41:28 +03:00
XhmikosR 77973cd7fb Fix clean-css breakWith option. 2019-04-29 17:41:28 +03:00
Matěj Kříž 41eea9edc4 Fix buttons :focus state styles (#27890)
* Fix buttons :focus state styles

Buttons :hover and :focus state shares styles.
Buttons :focus text color on 'a.btn' is now consistent with others '.btn'.

* `:focus` styles should be in sync with `.focus`.

So shared styles with hover were copy to focus definition. Rather then using
`hover-focus` mixin which do not contain `.focus`.
2019-04-29 17:41:28 +03:00
XhmikosR 060880296a karma.conf.js: switch to CI === true. (#28588) 2019-04-29 17:41:28 +03:00
Loïc Goyet 1c7cb61072 Remove scss variable defined twice (#28567) 2019-04-29 17:41:28 +03:00
XhmikosR 3bf08d87c9 Update devDependencies and gems. 2019-03-27 20:57:28 +02:00
Johann-S 8fda884ad3 Reset carousel touch delta x to prevent click transformation in swipe (#28558) 2019-03-27 20:57:28 +02:00
XhmikosR c0b2f72a06 Add a netlify npm script. (#28552) 2019-03-27 20:57:28 +02:00
XhmikosR 12532dc913 Remove http from docs search. (#28557)
We use only `https` for a few months now.
2019-03-27 20:57:28 +02:00
Patrick H. Lauke 3ab0441667 Check prefers-reduced-motion variable before adding reduced motion media query for animated progress bars (#28530) 2019-03-27 20:57:28 +02:00
Shohei Yoshida 60f31b32f8 Workaround for MS edge bug (#28275) 2019-03-27 20:57:28 +02:00
XhmikosR 77212386c0 Revert back to the old snippet and just add anonymize IP.
We don't need the extra bloat of gtag.
2019-03-27 20:57:28 +02:00
Mark Otto e34ba3532f Update GA to latest script & anonymize IPs 2019-03-27 20:57:28 +02:00
XhmikosR 72a1437dae .gitignore: add the Hugo folders. 2019-03-27 20:57:28 +02:00
XhmikosR 413c313644 Use local doc versions favicon.ico. 2019-03-27 20:57:28 +02:00
XhmikosR c9159ccf05 Include favicons for examples. 2019-03-27 20:57:28 +02:00
Jim Jiang 9ba80d31d4 Remove redundant placeholders in forms docs (#28406)
* Change state field to select
* Include "Choose..." placeholder for select
* Change validated select to .custom-select
2019-03-12 15:23:12 +02:00
Patrick H. Lauke 86a97d197e Remove indiscriminate outline suppression for tabindex="-1" elements (#28437)
instead, only apply outline suppression if the browser wouldn't normally apply the focus outline, using the (currently experimental) `:focus-visible` pseudo-class
2019-03-12 15:16:49 +02:00
Shohei Yoshida 87527d8149 Add <ol> to nav's comment (#28426) 2019-03-08 00:30:25 +02:00
mspae be8ef5f655 disable assert assending check if the previous unit was a percentual value (#28400) 2019-03-08 00:30:25 +02:00
Johann-S 86de1d3875 fix jquery detection 2019-03-08 00:30:24 +02:00
XhmikosR dad0765ed3 Update devDependencies and gems. (#28347) 2019-03-08 00:30:24 +02:00
Chris Barr f2b9055c2b Fix issue template links to the contributing guidelines (#28378) 2019-03-08 00:29:21 +02:00
Laussel Loïc a5179125b0 put secondary navigation in an explicit landmark nav and add a label on each nav (#28361) 2019-03-08 00:29:21 +02:00
Laussel Loïc 1a8886b7f7 add an explicit aria-label on link with svg on sample pages (#28360) 2019-03-08 00:29:21 +02:00
Martijn Cuppens ba641ae507 Fix border if only one card (#28365) 2019-03-08 00:29:21 +02:00
XhmikosR 11c40217cf Add --continue-on-error in npm run lint. (#28338)
So if one of the two sub-tasks fails, it still completes linting the other one.
2019-03-08 00:29:21 +02:00
Pierre GIRAUD 3b6c5ee620 Fix indentation (#28321) 2019-03-08 00:29:21 +02:00
XhmikosR d30039c1a9 Update CONTRIBUTING.md for the current state of things. (#28283) 2019-03-08 00:29:20 +02:00
Laussel Loïc a46866c950 add tabindex="-1" and aria-disabled="true" on disabled links (#28305) 2019-03-08 00:29:20 +02:00
Bardi Harborow 146cfa21a3 Create SECURITY.md (#28288) 2019-03-08 00:29:20 +02:00
XhmikosR 5e9fd345da Use npm-run-all for the release script. (#28307)
It's shorter.
2019-03-08 00:29:20 +02:00
XhmikosR b2e9341b8c Update devDependencies. (#28292) 2019-03-01 17:26:36 +02:00
XhmikosR 58a1c6ef92 Update devDependencies. (#28271) 2019-03-01 17:26:35 +02:00
Martijn Cuppens fad6dda456 Deprecate form-control-focus mixin (#28262) 2019-03-01 17:25:58 +02:00
XhmikosR 60ba89b9a7 Replace 4.3.0 with 4.3.1 in nuget files. (#28273) 2019-03-01 17:25:58 +02:00
XhmikosR 8d109b62ba Update docs and meta for 3.4.1. (#28255) 2019-03-01 17:25:58 +02:00
XhmikosR 8fa0d30101 Release v4.3.1. (#28252) 2019-02-13 18:01:40 +02:00
XhmikosR dae20da750 Remove unneeded glob. (#28249)
Typo from 10b97f6.
2019-02-13 15:21:04 +02:00
XhmikosR 10b97f6ed9 Fix npm package contents 2019-02-13 08:32:15 +02:00
Johann-S 7bc4d2e0bc Add sanitize template option for tooltip/popover plugins. 2019-02-13 08:32:15 +02:00
Martijn Cuppens bf2515ae68 Update RFS to v8.0.1 (#28245)
Remove warning if RFS is included more than once.
2019-02-12 22:49:12 +01:00
Martijn Cuppens 45ced606f4 Update font size (#28232) 2019-02-12 09:38:42 +02:00
Mark Otto 1ded0d6a4e Release v4.3.0 (#28228)
* Prep for v4.3.0

* More updates for v4.3.0.

* rerun to build docs source map
2019-02-11 11:15:34 -08:00
XhmikosR 3aa0770b71 docs snippets: a few more minor tweaks (#28225)
* Remove extra comma.

* Use curly braces in snippet.
2019-02-11 11:34:02 +02:00
XhmikosR adf16da25e toasts.md: Remove useless divs.
Instead pass the class to the example include.
2019-02-11 08:54:17 +02:00
XhmikosR 2bfe581eeb Remove stray parameter from capture. 2019-02-11 08:54:17 +02:00
XhmikosR bbf8b768ef Cosmetic changes in snippets. 2019-02-11 08:54:17 +02:00
XhmikosR 7a9a8db7b1 docs: remove -ms-overflow-style: -ms-autohiding-scrollbar (#28220)
Similar to #28153
2019-02-10 22:13:13 +02:00
XhmikosR 24253b18e1 migration.md: use https. (#28221) 2019-02-10 22:05:16 +02:00
Martijn Cuppens 545f3fa921 Prevent text selection in placeholder images (#28218) 2019-02-09 14:21:41 +02:00
XhmikosR 94acdee691 Revert "Silence mkdir. (#28184)" (#28209)
This reverts commit 6ea000d2bc.

Unfortunately, it doesn't seem to work.
2019-02-09 13:20:02 +02:00
XhmikosR 6c7dcc6882 placeholder.svg: Partially revert the changes from c0e42cb. (#28216)
It broke the example include.
2019-02-09 13:10:29 +02:00
XhmikosR 1145365f6d Reword footer text. 2019-02-08 22:51:45 +02:00
XhmikosR bd328bf217 Use the site.repo variable. 2019-02-08 22:51:45 +02:00
XhmikosR a920429089 Change footer link to point to the docs team page 2019-02-08 22:51:45 +02:00
XhmikosR c56b10c147 Offcanvas example: transition the transform (#28203)
This is more efficient than transitioning the `left` property.
2019-02-08 18:08:40 +02:00
XhmikosR 52e6ce4512 Update devDependencies. (#28175) 2019-02-08 09:39:03 +02:00
Shohei Yoshida 93dec4c67c Fix scrollable modal snippet 2019-02-07 21:33:25 -08:00
Martijn Cuppens 51375abca5 Responsive font size implementation (#23816) 2019-02-07 23:32:05 +01:00
Shohei Yoshida d250567ce0 Remove -ms-autohiding-scrollbar to prevent overlapping the table content (#28153) 2019-02-07 19:52:23 +02:00
Martijn Cuppens 8b41cb1368 Optional btn & input font sizes (#28068) 2019-02-07 19:47:24 +02:00
Martijn Cuppens 2ee8ecedf4 Deprecate img-retina() mixin (#28072) 2019-02-07 19:33:57 +02:00
Martijn Cuppens bcfb7ed159 Deprecate invisible() mixin (#28066) 2019-02-07 19:19:00 +02:00
XhmikosR c0e42cb89e Optimize and normalize SVGs. (#28200)
Mostly be consistent with the attributes' order and improve compression when possible.
2019-02-07 15:01:25 +02:00
XhmikosR 00df9177fc Make ToC's entries' color darker.
The previous was too light.
2019-02-07 11:53:47 +02:00
XhmikosR 3473b77527 Remove unused selector. 2019-02-07 11:53:47 +02:00
XhmikosR f663a86810 approach.md: Remove stray comma. 2019-02-07 11:53:47 +02:00
XhmikosR 30ddcafb2d Rename Screenreaders to "Screen readers".
No redirect is added because the next version will be a minor version bump.
2019-02-07 11:53:47 +02:00
XhmikosR f0eb29cd5e Remove ToC from pages when we don't have (m)any headers. 2019-02-07 11:53:47 +02:00
Zachary Welch b647dd0565 Add map-name param to _assert-starts-at-zero (#24986)
* Add map-name param to _assert-starts-at-zero

* Set default value for backwards compatibility
2019-02-07 10:19:38 +01:00
João Lucas eb1313d213 Create border-top-left-radius and border-bottom-right-radius mixins (#28100)
* Create border-top-left-radius mixin
* Create border-bottom-right-radius mixin
2019-02-07 09:02:05 +01:00
Martijn Cuppens 311d6dab68 Deprecate size mixin (#28067) 2019-02-07 08:21:47 +01:00
Martijn Cuppens 8f4f201424 Fix .nav-justified example (#28193) 2019-02-06 23:44:44 +02:00
Bardi Harborow b5fb4f7d6b Add text-decoration to .btn-link. (#28169) 2019-02-06 22:33:03 +01:00
Patrick H. Lauke b4cb48d9f3 Remove outdated reference to not-allowed cursor (#28188)
as this styling was removed back in https://github.com/twbs/bootstrap/commit/7056f702408a97f01cb32bc6075d88ec27cdcf52
2019-02-06 17:12:11 +02:00
Johann-S b54ddfda83 fix modal test to be sure we call getTransitionDurationFromElement 2019-02-06 15:01:13 +01:00
Johann-S 3c49467224 allow to override default toast options (#28186) 2019-02-06 15:19:04 +02:00
Martijn Cuppens 58470c0ac5 Fix text break in Firefox (#28063) 2019-02-06 12:38:13 +02:00
XhmikosR 6ea000d2bc Silence mkdir. (#28184)
This can fail if run in parallel.
2019-02-06 12:22:49 +02:00
Johann-S 11880109fc fix tabs, apply show class only when fade class is present (#28183) 2019-02-06 11:12:02 +01:00
XhmikosR 8217499640 carousel.md: Highlight the whole example for consistency. 2019-02-06 11:47:31 +02:00
XhmikosR c1ea5ac49a docs license header: split sentence in period. 2019-02-06 11:47:31 +02:00
XhmikosR 1131705f14 Add missing trailing slash. 2019-02-06 11:47:31 +02:00
Jason Golieb e44d0475e0 Move dropdown offset function logic into private function. (#28138) 2019-02-05 10:31:18 +02:00
XhmikosR 1139f62ca2 Adjust bundlesize limits. 2019-02-05 10:24:49 +02:00
Jason Golieb 8f6cffde97 Move offset function logic to a private function. 2019-02-05 10:24:49 +02:00
Jason Golieb 88a34aacbe Add support for tooltip offset option to be a function. 2019-02-05 10:24:49 +02:00
XhmikosR 1accd37aa0 examples: remove JS from blog and sticky footer. (#28173)
They don't use it.
2019-02-04 23:42:23 +02:00
Martijn Cuppens d4e782efab Fix dropdown radius if $dropdown-padding-y is not 0 (#28127) 2019-02-03 23:07:16 +02:00
Ryan Worth 1275e35336 Fix negative margin example (#28140)
Negative margin example wasn't displaying correctly due to border and background styling being applied directly to the `.col` element. Made a child element and applied the styling to it
2019-02-03 22:58:54 +02:00
Martijn Cuppens cbaf0c3f7c Change logo size (#28163) 2019-02-03 17:52:36 +02:00
XhmikosR f134d4ba01 components: redirect to the alerts page (#28147) 2019-01-30 21:52:42 +02:00
XhmikosR a60c595dc1 image-replacement.md: use three dots. 2019-01-29 17:21:11 +02:00
XhmikosR be5d3de1d6 Add missing trailing slash. 2019-01-29 17:21:11 +02:00
XhmikosR a93c71832b generate-sri.js: move object. 2019-01-29 17:21:11 +02:00
XhmikosR ffe05d3a9c analytics.html: use double quotes in src attribute. 2019-01-29 17:21:11 +02:00
XhmikosR 2adefeb055 build-tools.md: npm is written lowercase. 2019-01-29 17:21:11 +02:00
XhmikosR 4bec752345 migration.md: remove stray /. 2019-01-29 17:21:11 +02:00
Shohei Yoshida e65dccfc95 Fix custom select caret issue on IE (#28112) 2019-01-25 21:09:21 +01:00
Shohei Yoshida 0f8f84329b Fix validated custom select bg color (#28119) 2019-01-25 20:44:52 +01:00
Martijn Cuppens 6466a0461a Deprecate float mixins (#28104) 2019-01-24 22:51:36 +02:00
Martijn Cuppens 2749bf34de Add !important to .text-monospace utility class (#28064) 2019-01-24 22:42:42 +02:00
XhmikosR 3723613875 Update devDependencies and gems. (#28094) 2019-01-24 21:25:49 +02:00
Martijn Cuppens dfba588d0d Add default value for $ignore-warning (#28103) 2019-01-23 05:59:15 +02:00
Martijn Cuppens 5c56e9adff Add deprecate() mixin (#28092) 2019-01-22 20:55:23 +01:00
XhmikosR f7e8445f72 Add canonical URL. (#28093) 2019-01-21 14:59:51 +02:00
XhmikosR cf25028640 Fix approach redirect. (#28095) 2019-01-21 14:49:55 +02:00
Martijn Cuppens 59d040fcbb Make component colors configurable (#28035) 2019-01-20 23:38:29 +02:00
Shohei Yoshida de0bb1e052 Scrollable modal (#27769) 2019-01-20 23:28:16 +02:00
Martijn Cuppens 41f85b64bf Add ref to reason why min-width: 0; is added (#28061) 2019-01-20 23:23:05 +02:00
Johann-S 842da1ddc3 use absolute path to output lcov file for coveralls (#28075) 2019-01-17 11:06:43 +01:00
XhmikosR 3aeda9942d tests: use jQuery from node_modules. (#28059) 2019-01-15 18:01:40 +02:00
XhmikosR 0828b88563 Fix js-main script. (#28057) 2019-01-15 17:30:21 +02:00
Martijn Cuppens f1f740be09 Make progress animation respect $enable-transitions and prefers-reduced-motion media query
Make progress animation respect `$enable-transitions` and `prefers-reduced-motion` media query
2019-01-15 00:51:11 +00:00
Laussel Loïc 8eb8b8d3da Examples: add tabindex="-1" and aria-disabled="true" on disabled links 2019-01-14 23:29:51 +00:00
XhmikosR e2a6f297c0 Clean up .gitignore. (#28050) 2019-01-14 21:08:24 +02:00
Johann-S d51ee0dcf1 Fix Carousel's touch option to not add touch listeners when set to false (#28046) 2019-01-14 18:53:54 +02:00
Martijn Cuppens 3d350c3b34 Remove map-merge (#28033) 2019-01-13 16:35:00 -08:00
Martijn Cuppens d546cb8374 Cleanup popover arrows (#28008) 2019-01-13 16:29:37 -08:00
Martijn Cuppens 70f50f3079 Sync dropdown font size to base font size 2019-01-13 16:27:40 -08:00
Martijn Cuppens e57cdee6bc Sync dropdown font size with btn font size 2019-01-13 16:27:40 -08:00
Martijn Cuppens fd98e77cac Remove background from nested tables 2019-01-13 16:26:56 -08:00
Martijn Cuppens 93272f45f3 Add some margin below the buttons 2019-01-13 16:24:36 -08:00
Martijn Cuppens d09bd2e629 Fix background size y 2019-01-13 16:24:01 -08:00
Martijn Cuppens e2ac792bc7 Minify background property 2019-01-13 16:24:01 -08:00
Martijn Cuppens 50492b8840 Combine background properties into one 2019-01-13 16:23:32 -08:00
Martijn Cuppens 8db577bd51 Prevent useless property rendering 2019-01-13 16:22:25 -08:00
Martijn Cuppens 4b839b1c87 Don't render a background by default 2019-01-13 16:21:57 -08:00
Martijn Cuppens 5adcfe97f0 Prevent rendering of color property by default 2019-01-13 16:21:16 -08:00
Martijn Cuppens cd4964f345 Change comment heading title to Typography (#28032) 2019-01-14 01:59:51 +02:00
Martijn Cuppens b3226c1ccc Align toast variables (#28041) 2019-01-14 01:51:53 +02:00
Justin 8f5abf0ab0 Add new rounded sizes classes (#28011)
* update border-radius mixins

Add $enable-rounded as a keyword argument to border-raidus mixins

* Update rounded classes

- use border-radius mixins to repleace !important
- use true for $enable-rounded for rounded classes
- Add `.rounded-sm` and `.rounded-sm`  #27934

* update borders docs

* Revert touch of dist files

* Revert change of border-radius mixins

* use !important in border-radius utilies classes

* update border radius classes keep only rounded-lg and rounded-sm
2019-01-13 11:49:25 -08:00
Martijn Cuppens fd4d426e51 Change default custom select styles (#28027) 2019-01-13 09:52:46 +02:00
Martijn Cuppens e077ddbc6c Prevent wrapping if caret is included (#28029) 2019-01-13 09:43:52 +02:00
Mark Otto deea117293 Add form-validation-states Sass map (#27999) 2019-01-11 21:16:50 +02:00
Miha Eržen fd9dc1a0ca Fix input-height-inner wrongly calculated (#28018)
In a scenario where `$input-line-height` or `$input-font-size` are different than `$input-btn-line-height` and `$input-btn-font-size` the final `$input-height-inner` was wrongly calculated.
2019-01-11 14:22:14 +02:00
XhmikosR 746a057f0c Update devDependencies. (#28016) 2019-01-10 15:56:54 +02:00
XhmikosR ff4c35f566 Tighten bundlesize limits. (#28012) 2019-01-10 09:03:16 +02:00
Mark Otto 39b76861a7 npm run test to build dist files 2019-01-08 21:23:50 +02:00
XhmikosR 0e5d387f04 Examples: use {{ site.time | date: "%Y" }}.
Since they are being build, no point in hardcoding the year.
2019-01-08 21:23:50 +02:00
XhmikosR f11f56558b Bump copyright year to 2019. 2019-01-08 21:23:50 +02:00
wojtask9 46f34fd131 remove redundant loop from list-group-horizontal (#28005) 2019-01-08 20:18:36 +02:00
wojtask9 5dcf7cd3b7 box-shadow mixin fix (#28004) 2019-01-08 19:42:28 +02:00
Shohei Yoshida dc436427e9 Move z-index to .list-group-item-action and remove redundant text-decoration: none (#27996) 2019-01-08 06:59:49 +02:00
Martijn Cuppens 48fe2c23d3 Space fixes (#27997) 2019-01-08 06:46:29 +02:00
XhmikosR b23241480a Enable cache for stylelint. 2019-01-07 19:15:06 +02:00
XhmikosR 1213d06b2f Enable cache for ESLint. 2019-01-07 19:15:06 +02:00
XhmikosR cdece35bde Update devDependencies and gems. (#27981) 2019-01-07 18:57:52 +02:00
Martijn Cuppens 68062cfe60 Allow configuration of caret spacing and vertical alignment (#27994) 2019-01-07 18:28:21 +02:00
Martijn Cuppens 2b96e9adf1 remove screen from media query (#27985) 2019-01-07 18:18:43 +02:00
文翼 87cd64e3bf docs: use the twitter Jekyll variable everywhere (#27990) 2019-01-07 18:09:34 +02:00
Martijn Cuppens 8305114ab3 Blog example IE fix & minor tweaks (#27933) 2019-01-07 03:21:53 +02:00
Shohei Yoshida 92cc5a70d3 Fix incorrect responsive alignment of dropdown menu (#27873) 2019-01-07 03:12:51 +02:00
Vishnuprasad Venugopal ea9129c8ae fix border issue for nested card inside accordions (#27881) 2019-01-07 03:06:37 +02:00
Mark Otto e6b1eefc73 Add horizontal list group modifier (#27970)
Alternate take to #27683 that builds the modifier class based on min-width, such that list groups are stacked until the class's breakpoint is reached. This is less verbose, matches our primary responsive approach, and prevents an extra class. Unfortunately, I believe supporting flush list groups is too much code here, so I've skipped that and made a note in the docs.

Also added examples generate from our breakpoints data file with a protip for how to do equal width items.
2019-01-07 03:01:36 +02:00
wojtask9 42bed436e8 take account 'none' for box-shadow (#27972) 2019-01-07 02:52:39 +02:00
Martijn Cuppens cbc8a7273a Sync custom select focus state with custom control focus state 2019-01-07 02:48:04 +02:00
XhmikosR 849067d763 README.md: fix redirect. 2019-01-06 17:22:51 +02:00
XhmikosR d1067d7c35 Switch to our Stylelint config. (#27974) 2019-01-05 20:59:44 +02:00
XhmikosR f21b5f9e98 Remove unneeded stylelint disables. 2019-01-05 20:50:07 +02:00
XhmikosR fcb034828f stylelint: no need to specify syntax.
This speeds things up a bit because we don't spawn a new instance.
2019-01-05 20:02:00 +02:00
Martijn Cuppens 75ec03c2ab Run linters in parallel
This should speed up things a bit
2019-01-05 20:02:00 +02:00
XhmikosR 47610b0f8b Update postcss-cli to v6.1.1. 2019-01-05 00:36:31 +02:00
Mark Otto 1488a83b13 latest changes 2019-01-04 08:29:45 -08:00
Johann-S 89a73f100e carousel should not cycle when there is no data-ride on init (#27968) 2019-01-04 18:15:01 +02:00
XhmikosR d4b5b4b78c Update devDependencies and gems. 2019-01-04 14:22:23 +02:00
Mark Otto b478234cba Add note to the summary of important changes 2019-01-04 11:53:32 +02:00
Martijn Cuppens e1b990fb90 Move hand cursor for buttons to reboot 2019-01-04 11:53:32 +02:00
Martijn Cuppens 83dc45b31b Prevent select word wrap in Safari (#27932) 2019-01-04 11:40:10 +02:00
Florian Lacreuse c71b291cd9 Remove unnecessary brackets for consistency (#27966) 2019-01-03 20:59:18 +02:00
sabruss 6813653bb1 Fix Typo on docs (#27962) 2019-01-02 18:33:52 +02:00
XhmikosR bec34acbbe Add a few more redirects. 2018-12-31 02:20:08 +02:00
Martijn Cuppens e7336e7d7f Remove wrapping paragraph in readme (#27948) 2018-12-29 18:40:56 +02:00
Martijn Cuppens c0dfda964f Configurable display utility classes (#27917) 2018-12-29 04:54:58 +02:00
Martijn Cuppens 952374654c Fix custom select font sizes (#27929) 2018-12-29 04:44:35 +02:00
Martijn Cuppens 8eef162c44 Match input font size for .input-group-text (#27941) 2018-12-28 23:18:10 +02:00
XhmikosR ee09d96628 reboot: Fix comment (#27937) 2018-12-28 00:48:51 +02:00
Martijn Cuppens 8bf823e22d Fix form-feedback-icon-invalid color (#27935) 2018-12-27 23:05:29 +02:00
XhmikosR 501e8c0837 toasts: mention that positioning is manual. (#27931) 2018-12-27 21:41:14 +02:00
XhmikosR dc17c924e8 stretched-link.md: fix typo (#27918) 2018-12-24 16:34:30 +02:00
Martijn Cuppens 4a5217c4c7 Add Open Collective to header (#27916) 2018-12-23 22:24:25 +02:00
Mark Otto e4fe18e426 Add horizontal card example (#27906) 2018-12-23 15:00:51 +02:00
Johann-S 3bd9fb3649 getSelectorFromElement return null on bad selectors (#27912) 2018-12-23 14:30:35 +02:00
XhmikosR 7d5cb2df3a versions: sort from newer to older. (#27898) 2018-12-23 14:12:13 +02:00
XhmikosR 3c88ed7069 Fix 4:3 embed (#27910) 2018-12-23 13:58:58 +02:00
Martijn Cuppens 81e35985b8 Simplify card group css (#27901) 2018-12-23 09:19:07 +02:00
Martijn Cuppens 39b14c9806 Blacklist border-radius property (use mixin instead) (#27900) 2018-12-23 09:11:11 +02:00
Mark Otto 6a5a1b073d move to 4.2 2018-12-22 22:20:26 -08:00
XhmikosR de7a38250b Merge branch 'v4-dev' into stretched-link 2018-12-23 00:30:55 +02:00
XhmikosR 46f86df0bb bootstrap-stack.svg: remove unneeded space. 2018-12-22 23:54:21 +02:00
XhmikosR 3bdb363495 Remove obsolete redirects in examples. (#27897) 2018-12-22 22:07:37 +02:00
XhmikosR 74987d9591 Add two new meta tags for Algolia (#27902) 2018-12-22 21:58:06 +02:00
XhmikosR 74a2d93517 Merge branch 'v4-dev' into stretched-link 2018-12-22 18:32:28 +02:00
Jesse Mandel dee3ab427c Update nuspec and build script (#27894)
Update nuspec and build script to support `<license />` instead of the deprecated `<licenseUrl />`
2018-12-22 17:09:51 +02:00
Mark Otto f0e5cc3f41 Add a notes about multiple links/targets, remove multiple link example 2018-12-21 21:10:40 -08:00
XhmikosR 2dda0a22e4 Update devDependencies and gems. 2018-12-21 21:07:48 -08:00
Mark Otto 15be9d3277 Add variable for dropdown-divider-margin-y (#27857)
* Add variable for dropdown-divider-margin-y

For us to reassign the nav-divider-margin-y variable here, we have to rearrange some of the variables.

Fixes #26660.

* bump bundlesize
2018-12-21 20:59:40 -08:00
Mark Otto a8b0fabf0a Merge branch 'table-dark-colors' into v4-dev 2018-12-21 15:36:09 -08:00
Mark Otto d51b408d0f Merge branch 'text-break-util' into v4-dev 2018-12-21 15:35:55 -08:00
Mark Otto 2162cb1806 dist 2018-12-21 15:35:15 -08:00
Mark Otto fca7531897 Merge branch 'table-dark-colors' into v4-dev 2018-12-21 14:49:11 -08:00
Mark Otto cdcfd3b1e8 Merge branch 'text-break-util' into v4-dev 2018-12-21 14:47:52 -08:00
ysds 27d691c64c Prevent unnecessary css when $emphasized-link-hover-darken-percentage is 0 or 0% 2018-12-21 14:46:20 -08:00
Martijn Cuppens 20f49143fc Sync modal header & footer border colors with $border-color 2018-12-21 13:56:44 -08:00
Martijn Cuppens 8bc118acce Sync $table-border-color with $border-color 2018-12-21 13:56:11 -08:00
Shohei Yoshida cda3301d08 Use border-radius() mixin for toast 2018-12-21 13:55:44 -08:00
Martijn Cuppens fc841b0ceb #27135: themed link focus state & selector improvement (#27136) 2018-12-21 13:55:05 -08:00
Sam Tape 9d3930b6dd Apply arrow styles to direct descendants of bootstrap popover classes
With the current styles, it is not possible to nest a popover inside of
another popover if they have different placements because the arrow
styles of the parent popover will conflict with the arrow styles of the
child popover.
2018-12-21 13:54:29 -08:00
Mark Otto f6abb4976f Prevent checks from shrinking in inline forms (#27870)
Fixes #25336
2018-12-21 13:52:02 -08:00
Mark Otto 2e1d0fed00 Add table-hover-color variables (#27850)
* Add table-hover-color variables
Fixes #26465

* Put $table-color to use outside _variables.scss
2018-12-21 13:51:38 -08:00
Mark Otto 1449d041c8 Merge branch 'validation-support-list' into v4-dev 2018-12-21 13:48:53 -08:00
Mark Otto d9712b7bcd Merge branch 'table-hover-colors' into v4-dev 2018-12-21 13:48:44 -08:00
Mark Otto 3b843c37c1 Merge branch 'grid-vertical-alignment-ie-warning' into v4-dev 2018-12-21 13:48:19 -08:00
Mark Otto 9e4e94747b Bump to v4.2.1 (#27892) 2018-12-21 10:55:28 -08:00
XhmikosR d50ed9a2bd Update README.md 2018-12-21 09:03:29 -08:00
Martijn Cuppens 680f40c7cb Add 4.1 to previous releases 2018-12-21 09:03:29 -08:00
XhmikosR c5bd6a11f6 Update webpack.md 2018-12-21 09:03:29 -08:00
XhmikosR 140abf4c3d Remove unneeded redirects. 2018-12-21 09:03:29 -08:00
XhmikosR 1bded2ffcd Update docs-navbar.html 2018-12-21 09:03:29 -08:00
Mark Otto eda851ee76 Prep for v4.2.0 release
- Move 4.1 docs to 4.2
- Update versions everywhere to 4.1.3 with release script
- Manually bump the shorthand version in package.json
- Add 4.2 to the versions docs page
- Update some redirects
- Fix tests asset URLs
- Bump Nuget and more
2018-12-21 09:03:29 -08:00
Florian Lacreuse 2c0cd7d2ed Remove dead link entry for translations. (#27891) 2018-12-21 17:54:40 +02:00
jess 12c4d3c248 README.md: Add Open Collective (#27864) 2018-12-18 01:23:48 +02:00
Mark Otto f7bf353cdc Add docs for .text-break 2018-12-17 09:58:18 -08:00
Martijn Cuppens 353c8b4376 Update scss/utilities/_text.scss
Co-Authored-By: mdo <otto@github.com>
2018-12-17 09:48:06 -08:00
XhmikosR 901761a34b Merge branch 'v4-dev' into table-dark-colors 2018-12-17 00:20:56 +02:00
Mark Otto 540537c481 Add new .text-break utility for applying word-break: break-word 2018-12-16 13:23:33 -08:00
XhmikosR 1960a52889 List v3.4.0 in versions page. (#27860) 2018-12-16 20:05:29 +02:00
XhmikosR 07b4b5907b Revert "Remove now unnecessary shrink-to-fit viewport directive (#27818)" (#27855)
This reverts commit af484dc12c.
2018-12-16 16:39:48 +02:00
Florian Lacreuse 8ee2065d16 Update grid doc for consistent use of container. (#27776) 2018-12-16 14:55:46 +02:00
Martijn Cuppens dac464a5b8 Use theme-color function for colors (#27848) 2018-12-16 01:59:16 +02:00
Mark Otto ee72e7838d dist 2018-12-16 01:33:05 +02:00
Mark Otto 4ad7ba7b23 List out what's supported in validation styles
Fixes #27169
2018-12-15 14:25:40 -08:00
Mark Otto 3b42a9ec5b Add table-hover-color variables
Fixes #26465
2018-12-15 14:01:09 -08:00
Mark Otto 9d05cc25cb Fixes #26468: Mention min-height issue in IE10/11 for flexbox vertical alignment 2018-12-15 13:51:20 -08:00
Mark Otto 236c7803cb Update site/docs/4.1/utilities/stretched-link.md
Co-Authored-By: MartijnCuppens <martijn.cuppens@gmail.com>
2018-12-15 20:18:55 +01:00
Mark Otto 470145bdca Update site/docs/4.1/utilities/stretched-link.md
Co-Authored-By: MartijnCuppens <martijn.cuppens@gmail.com>
2018-12-15 20:17:45 +01:00
Mark Otto 210d49ec05 Update site/docs/4.1/utilities/stretched-link.md
Co-Authored-By: MartijnCuppens <martijn.cuppens@gmail.com>
2018-12-15 20:15:03 +01:00
Mark Otto abd5a5e4bd Copy change
Co-Authored-By: MartijnCuppens <martijn.cuppens@gmail.com>
2018-12-15 20:14:42 +01:00
Mark Otto 35caac013c Copy change
Co-Authored-By: MartijnCuppens <martijn.cuppens@gmail.com>
2018-12-15 20:14:05 +01:00
Mark Otto f50f6e0355 Match .table-dark background-color to the -dark variable 2018-12-15 10:15:52 -08:00
XhmikosR ffd3402a92 Link to v3.4 docs (#27842) 2018-12-15 08:49:00 +02:00
Patrick H. Lauke af484dc12c Remove now unnecessary shrink-to-fit viewport directive (#27818)
`shrink-to-fit=no` is not needed anymore - Apple removed the need for it from iOS9.3 onwards

See https://www.scottohara.me/blog/2018/12/11/shrink-to-fit.html and https://github.com/h5bp/html5-boilerplate/issues/2102
2018-12-15 01:05:49 +00:00
ChrissBott b5b4f83cdb Fix typo in "Hiding elements" section (#27843) 2018-12-14 17:07:44 +00:00
Martijn Cuppens 502b6c8ed6 Remove redundant brackets (#27768) 2018-12-14 17:54:44 +01:00
Florian Lacreuse 1dc42a3373 Add missing parameter to grid mixins. (#27841) 2018-12-14 18:30:12 +02:00
Gijs Boddeus 26c5595164 Custom switch form control gutter fix (#27837) 2018-12-14 16:22:19 +02:00
Gijs Boddeus c618f67187 Actual gutter definition (#27797) 2018-12-14 03:04:10 +02:00
Johann-S af60644d2f integration test to be sure bootstrap can be bundled 2018-12-14 02:08:18 +02:00
XhmikosR db31ee1ea2 Remove the unused gcp-key.json.enc file. 2018-12-14 00:54:20 +02:00
XhmikosR a074cb66d7 Make use of the package.json version_short property more. 2018-12-14 00:34:38 +02:00
Patrick H. Lauke c031584bcd SVG accessibility fixes (#27826)
* SVG accessibility fixes

- add `focusable="false"` to all SVGs, to stop IE from including the `<svg>` in its default focus cycle
- completely hide decorative SVGs using `aria-hidden="true"`
- add `role="img"` to meaningful/"content" SVGs, ensure they have an appropriate `<title>` and/or `aria-label`
- simplify placeholder default title

* Simplify usage of placeholder.svg in the docs

- in most cases, no need for separate/redundant text and title (now that we make text itself part of the alternative text explicitly)
- no need (expect in rare cirumstances) to describe the placeholder image (unless the look of the image is important/the actual content, as is the case with the image thumbnail class)

* Simplify example.html rewriting of <svg> to <img> code sample

- as the `alt` for the placeholder isn't really important, just add an ellipsis instead (otherwise, to be correct, we'd have to construct the whole "title+text" construct like we do now in the
placeholder.svg itself

* Change svgo configuration to retain role attribute and add/force focusable=false

- regarding `focusable=false`, see https://github.com/svg/svgo/issues/1011 (which would be the "proper" SVGO fix) and the (hacky) solution https://github.com/svg/svgo/pull/817
2018-12-13 13:09:47 +00:00
Patrick H. Lauke 375d137561 Docs: add note about the grays being "cool" (#27824) 2018-12-12 21:55:20 +02:00
Patrick H. Lauke f3fc973dd9 Remove now unnecessary -ms-viewport and -ms-overflow-style directives (#27789)
Edge/Mobile appears to have moved support for `-ms-viewport` behind a flag at some point, instead supporting meta viewport directives.
Removing this altogether also fixes issues in IE11 on high-dpi displays - see https://github.com/twbs/bootstrap/issues/21780
2018-12-12 21:24:47 +02:00
Gijs Boddeus 180a06eeb7 Add switch custom form control (#23004) 2018-12-12 15:28:25 +02:00
Martijn Cuppens dbadf24bb3 Fix margin above toast when previous toast is hidden (#27820) 2018-12-12 14:23:10 +01:00
unaccomplished 0a55c7a8f6 Update Scrollspy doc to include missing method options (#27754) 2018-12-11 10:27:04 +02:00
XhmikosR 3100a3a95e Update bs-custom-file-input to v1.3.1. 2018-12-10 17:19:30 +02:00
XhmikosR 60eeef5ddc Update clipboard.js to v2.0.4. 2018-12-10 17:19:30 +02:00
XhmikosR 10d4e7f43d Update glyphicons URL. 2018-12-10 12:27:27 +02:00
Johann-S 1f4d7903db fix fade animation for toast 2018-12-10 10:38:11 +01:00
Mike Vastola fc15c4c4ce Change button checkbox/radios to ignore hidden input fields (#27802) 2018-12-10 10:40:08 +02:00
XhmikosR 385ce1c961 Update devDependencies. (#27806) 2018-12-10 10:34:30 +02:00
Patrick H. Lauke c70b043a76 Remove nonsensical boolean check (#27787)
...as it always evaluates to true
2018-12-06 13:30:12 +02:00
Johann-S fa03289d13 avoid console call in our unit tests (#27790) 2018-12-06 10:51:35 +02:00
XhmikosR 947f749e23 Update devDependencies. (#27764) 2018-12-06 08:34:35 +02:00
Gijs Rogé 3fbbe1bd35 Replaced fixed 'bolder' font weight value in reboot with variable. (#27782)
The default font weight value for <strong> <br> in reboot was
set by a fixed value we now use the variable $font-weight-bolder
to let users override this value.
2018-12-06 08:21:18 +02:00
Patrick H. Lauke 903e242650 Make disabled link in card examples non-focusable and add aria-disabled (#27788) 2018-12-06 08:16:22 +02:00
Patrick H. Lauke 6c00dd08bc Add aria-modal to modals (#27780)
Dynamically set/remove `aria-modal="true"` when a modal is shown/hidden
2018-12-05 20:58:09 +02:00
Jacob Müller 8fb6e84fa0 Make form grid gutter width configurable (#27766) 2018-12-05 17:15:24 +02:00
Johann-S b16127fc10 Allow Tooltips/Popovers to work in shadow DOM 2018-12-05 16:02:59 +01:00
Shohei Yoshida 850d99bb13 Add quotes according to the stylelint rule (#27771) 2018-12-05 12:40:59 +01:00
Johann-S 37f74c7070 fix regression about using element for tooltip container option 2018-12-05 10:57:02 +01:00
XhmikosR e184c11618 Merge branch 'v4-dev' into stretched-link 2018-12-05 11:38:55 +02:00
Martijn Cuppens 3007d4b435 Stretched link 2018-12-04 21:22:12 +01:00
acidrums4 1a171b80ab Remove double 'the' in comment (#27767) 2018-12-04 20:14:23 +01:00
Shohei Yoshida e9ec5e7392 spinners: use .sr-only instead of text-hide technique (#27736) 2018-12-04 08:02:49 +02:00
XhmikosR a2d0e78b44 Update contents.md 2018-11-29 10:59:06 +02:00
XhmikosR 8d81226a8e Remove no_toc_section. 2018-11-28 21:09:50 +02:00
XhmikosR 24eb9a75e9 Revert "Use h5 for callouts so that they are not included in ToC."
This reverts commit 11da160114.

This is no longer needed with jekyll-toc 0.9.1.
2018-11-28 21:09:50 +02:00
toshimaru 0b96d62fb3 Configure multiple no_toc_section classes 2018-11-28 21:09:50 +02:00
XhmikosR 698ccb4923 Update jekyll-toc to v0.9.1. 2018-11-28 21:09:50 +02:00
XhmikosR 8bfabdd1dc .eslintignore: Remove unneeded entry. 2018-11-28 14:33:29 +02:00
XhmikosR 7492c12089 Remove unneeded ESLint config file.
We have /site/.eslintrc.json that covers this.
2018-11-28 14:33:29 +02:00
XhmikosR 05dfae3146 Revert "build/*.js: set sourceType to module."
This reverts commit b442ce3130.
2018-11-28 14:33:29 +02:00
XhmikosR 11da160114 Use h5 for callouts so that they are not included in ToC.
Callouts are already excluded from ToC, but due to a limitation in jekyll-toc they are still being included.

We should revisit this if the bug is fixed later.
2018-11-27 16:01:07 +02:00
XhmikosR cb2b21bb88 Inline bootstrap-stack.svg.
It's pretty small compressed; a little less than 1 KB with gzip.
2018-11-27 15:37:24 +02:00
XhmikosR 89876a5559 Use an SVG for the stack image.
Image by @mdo.
2018-11-27 15:37:24 +02:00
XhmikosR b4f7b34b1e Move examples images in assets/img/examples/ folder. 2018-11-27 15:37:24 +02:00
XhmikosR 4ad19f6f52 Use srcset for examples too. 2018-11-27 15:37:24 +02:00
XhmikosR d5279bf18c homepage: use srcset.
This should reduce the amount of bytes for non-2x displays.
2018-11-27 15:37:24 +02:00
Christian Oliff fcfa436a31 Update migration page to indicate the info can be used for 4.1.x as well as 4.0.x 2018-11-26 22:46:09 +02:00
XhmikosR 7b274d358b Update package-lock.json. 2018-11-26 22:22:05 +02:00
Christian Oliff 7a907ae09e Change OS X to macOS in Sass comments (#27729)
It's been macOS for 3 years now and we use just 'macOS' elsewhere in the Bootstrap documentation.
https://en.wikipedia.org/wiki/MacOS
2018-11-26 14:57:33 +00:00
Johann-S 32ab52ba2e Add test to make sure we enforce focus on modal (#27723) 2018-11-25 18:20:55 +02:00
XhmikosR 72bd3f5930 ship.sh: add missing period. 2018-11-25 14:50:32 +02:00
ysds 9f08f7dea6 Grow button width to the parent button group (#27717) 2018-11-25 12:05:31 +01:00
XhmikosR 5c336d0247 Dist 2018-11-25 11:46:37 +02:00
XhmikosR fdc5c1f49a Update devDependencies. 2018-11-25 11:46:37 +02:00
m5o c9157be574 prevent text selection for floating labels example (#27719)
* prevent text selection for floating labels
  * expand the click target by no selecting the label text
* use `pointer-events: none;` instead of `user-select`
  * thx @MartijnCuppens
2018-11-24 13:25:18 +01:00
Martijn Cuppens 28a972ac9f Add opacity transition 2018-11-23 15:28:39 +02:00
XhmikosR 0c60257114 Revert "Replace anchor.js with jekyll-anchor-headings."
This reverts commit b04f97f60b.
2018-11-23 15:28:39 +02:00
ysds 0140552322 Fix body scrolling issue when modal open (#27698) 2018-11-23 13:41:42 +01:00
Pixelastic 3e25bf403a Update DocSearch.js to latest version
The latest (2.6.2) docsearch.js version now displays results as standard `<a href>` links, allowing users to `ctrl`-click on them to trigger default browser behavior of opening in a new tab.

To maintain backward compatibility, this behavior has only been enabled to users that didn't define their own `handleSelected` method.

This PR updates your `docsearch()` code to take advantage of the new `<a href>` template, by removing your custom `handleSelected` and moving its behavior to the `transformData` call. Namely, what you wanted to avoid was jumping to the first `<h1>` of the pages, which would prevent users from seeing the header. This PR checks if the suggestion targets the `#content` anchor (meaning it goes to this first `<h1>`) and remove it.

Behavior should be the same, but at least now you can enjoy the `ctrl`-click :)
2018-11-22 17:38:27 +02:00
XhmikosR 8a7ed6047b Update devDependencies. 2018-11-22 11:15:21 +02:00
ysds b6e616a70f Fixed a fixed height issue of input-group size option (#27687) 2018-11-22 10:29:33 +02:00
Roy Klutman e7e43edf65 Add border-radius to dropdown items (#27703) 2018-11-22 00:24:13 +02:00
m5o 31d6d03c47 Placeholders: use our gray colors (#27701)
Previously we were using the old holder.js colors.
2018-11-21 20:59:21 +02:00
Martijn Cuppens 58943c0257 Sass precision documentation (#27705) 2018-11-21 20:51:47 +02:00
XhmikosR 73a98d9738 reboot: Fix mailto address (#27700) 2018-11-21 15:24:38 +02:00
XhmikosR 487bd521e3 docs: fix path to assets. (#27696) 2018-11-21 15:11:31 +02:00
Martijn Cuppens c628921465 Use wrapping span instead of div (#27695) 2018-11-20 21:53:10 +02:00
XhmikosR 749c8230c7 docs-sidebar.html: remove commented out code.
Leftover from old times.
2018-11-20 21:31:28 +02:00
XhmikosR d9717d1945 Reindent. 2018-11-20 21:31:28 +02:00
XhmikosR 2b9af5e38c Remove holder.js. 2018-11-20 21:31:28 +02:00
XhmikosR 369f03fbc5 Use the new include in examples too. 2018-11-20 21:31:28 +02:00
m5o 6163533d84 Fix placeholder image replacement. 2018-11-20 21:31:28 +02:00
XhmikosR 2ac3db8384 Tweak placeholder.svg.
* always include the title
* make it possible to skip adding the title by passing `title=' '`
* remove viewBox since we don't need it
2018-11-20 21:31:28 +02:00
Martijn Cuppens 072b5ab7fd Replace holder.js with SVGs. 2018-11-20 21:31:28 +02:00
XhmikosR b04f97f60b Replace anchor.js with jekyll-anchor-headings.
This allows us to generate the anchor links on build time.

https://github.com/allejo/jekyll-anchor-headings
2018-11-20 11:47:10 +02:00
XhmikosR 8470c5f78c Remove sudo from Travis config. (#27693)
https://blog.travis-ci.com/2018-11-19-required-linux-infrastructure-migration
2018-11-20 11:36:37 +02:00
Tieson Trowbridge ab183384ee Allows both OL and UL lists for tab buttons 2018-11-20 09:58:04 +01:00
ysds 7c8cd0f272 Add documentation about .text-decoration-none (#27686) 2018-11-20 09:08:34 +02:00
ysds 1fe56358e7 Add documentation about viewport sizing utilities (#27688) 2018-11-19 18:44:08 +01:00
ysds 38ca58bf3c Add documentation about .font-weight-bolder/lighter (#27678) 2018-11-18 10:15:49 +02:00
Martijn Cuppens 3f422bfc88 Prevent text decoration skip inc and reorder comments (#27673) 2018-11-18 10:09:41 +02:00
Martijn Cuppens 12ae122eda Spinners cleanup 2018-11-17 20:34:58 -08:00
ysds 5042b3c93d Support custom-select sizing in input-group (#27677) 2018-11-17 14:10:38 +02:00
Christian Oliff 4734a926e9 Enforce lowercase class name in .stylelintrc (#27668) 2018-11-17 14:01:16 +02:00
Martijn Cuppens 75526bf2d0 Inherit card header color (#27681) 2018-11-17 10:16:16 +01:00
XhmikosR 53d279b934 Update devDependencies and gems. 2018-11-16 08:59:37 +02:00
Iurii Kucherov f83f4ae124 Update autoprefixer link to .browserslistrc file (#27675) 2018-11-16 08:44:52 +02:00
XhmikosR ea4db3f89d Use fancy apostrophe in HTML files.
For Markdown files, this isn't needed because the Markdown converter takes care of this.
2018-11-15 15:55:21 +02:00
Johann-S 9201a80510 some cleaning and changes for readability 2018-11-14 10:54:50 +01:00
Martijn Cuppens fab1dea927 Keep input group & form label font size in sync with form control font size (#27663) 2018-11-13 21:11:59 +01:00
XhmikosR fceee8d093 Dist 2018-11-13 08:47:32 +02:00
Mark Otto 220baef0d9 Clean up some docs for toasts
- Add headings to examples section
- Clarify styles and customization options in examples
- Add dismiss buttons to all toasts
- Missing period added for consistency
- Update roles, tweak text
2018-11-13 08:47:32 +02:00
Mark Otto ab40a2b919 Nest the .toast.show and use display: block; as inherit causes broken styles 2018-11-13 08:47:32 +02:00
Laussel LOïc dc07e8dca8 Update toast documentation following pull #27155
Also remove close button everywhere just let it when autohide is set to false
2018-11-13 08:47:32 +02:00
Johann-S 557d5ac74d Remove the show delay for our toast plugin 2018-11-13 08:47:32 +02:00
Laussel Loïc 4cac833447 Implement data-dismiss="toast" to allow user to interact itself with the component (#27155) 2018-11-13 08:47:32 +02:00
Johann-S 2f81ab007c Fix toast documentation page. 2018-11-13 08:47:32 +02:00
Johann-S 16cf76ff1a Create toast JS plugin, add unit tests. 2018-11-13 08:47:32 +02:00
Mark Otto d0652a1be9 Add new toasts component 2018-11-13 08:47:32 +02:00
Martijn Cuppens 696c4078d1 Customize browse text of the custom file input with HTML (#27651) 2018-11-13 08:30:17 +02:00
XhmikosR dafb498f75 Spinners: show all color variants. 2018-11-13 08:21:57 +02:00
XhmikosR 5afc708961 Bump bootstrap.min.css bundle size. 2018-11-13 08:21:57 +02:00
XhmikosR e9d67982ae spinners: use the animation shorthand property. 2018-11-13 08:21:57 +02:00
Mark Otto 52a86cc671 Add Bootstrap's very first spinners omfg it's actually happening 2018-11-13 08:21:57 +02:00
XhmikosR f3bd8602df Jekyll: Add wdm gem for Windows. (#27658) 2018-11-12 21:23:53 +02:00
Christian Oliff 75e6253b0a Update clipboard.js to v2.0.3 (#27657) 2018-11-12 18:46:21 +02:00
XhmikosR 110c7f4cc0 Replace data-src with src="..." in docs. (#27649) 2018-11-11 14:45:48 +02:00
Patrick H. Lauke e6a356a3ae Minor/Docs: tweak accordion example heading level (#27620) 2018-11-11 09:12:29 +00:00
Martijn Cuppens 976efcd5ee Allow to add more embed responsive ratios (#25894) 2018-11-11 11:04:04 +02:00
XhmikosR 9836a411e8 Redirect /extend/ to /extend/approach/. 2018-11-11 10:59:43 +02:00
Martijn Cuppens 6cb6e6510c Remove custom properties from examples so that they work in IE (#27634) 2018-11-11 10:52:06 +02:00
jvitela 731f95bded Fix modal positioning on Android.
When the address bar is hidden, sometimes the visual position of the controls is out of sync with its logical position.
2018-11-11 10:44:26 +02:00
XhmikosR bbe2b2349d Dashboard example: update 3rd-party libs and use the same CDN. 2018-11-09 15:02:42 +02:00
XhmikosR 807c1b6d06 Add an examples layout.
Reduces duplication and makes maintenance easier.
2018-11-09 15:02:42 +02:00
XhmikosR e1b5b4f989 Move analytics to an include file. 2018-11-09 15:02:42 +02:00
XhmikosR a933f076f4 Move stylesheets to an include. 2018-11-09 15:02:42 +02:00
Johann-S 1fdc7819cd use bsCustomFileInput in our docs (#27631) 2018-11-08 17:22:45 +02:00
sts-ryan-holton 2df2cdd33d Wrap checkboxes in .form-group (#27624) 2018-11-07 21:54:40 +01:00
ysds 8de915eded Docs: Improve accessibility of disabled link example (#27614)
Add `tabindex="-1"` and `aria-disabled="true"` to disabled link
2018-11-06 10:47:59 +02:00
Johann-S e5d9e0a06c display chrome version on travis 2018-11-05 22:29:25 +02:00
XhmikosR 195404b106 Travis: Add back chrome addon (#27610) 2018-11-05 22:29:25 +02:00
XhmikosR ea697555d5 Travis: exit pipeline if test fails. 2018-11-05 21:35:59 +02:00
Martijn Cuppens 6e10ac276e Increase readability card columns docs (#27609) 2018-11-05 21:08:13 +02:00
sts-ryan-holton 89eef046ef Add new .rounded-pill utility (#27339) 2018-11-05 19:19:00 +02:00
XhmikosR 5c03f23f85 Reorganize npm scripts. 2018-11-05 19:06:39 +02:00
Martijn Cuppens b33d0d3790 Prevent white line in Firefox (regression) (#27594) 2018-11-05 18:56:41 +02:00
XhmikosR e3abb8e4dd Remove htmllint. (#27603)
We use the official HTML validator for HTML validation, and we don't really use any of the htmllint features.
2018-11-05 18:42:05 +02:00
LittleHuba aa098991bf Add Noto Sans to the font stack (#27596)
Fixes #27595
2018-11-05 08:22:40 +02:00
okazou cb5c80124a Add japanese to translations (#27599) 2018-11-05 08:15:04 +02:00
Arvind S 042042a48a Made the disabled state for nav more obvious. (#27382) 2018-11-04 22:17:14 +02:00
ysds 4a1090ac48 Ligthen/Darken Button focus shadow color 2018-11-04 20:58:00 +02:00
XhmikosR e0eb39f519 Update README.md (#27588)
* remove jobs link
* specify a link in the BrowserStack image
2018-11-04 20:49:31 +02:00
XhmikosR 15fa1566cd Update devDependencies and gems. 2018-11-04 16:02:35 +02:00
Martijn Cuppens b67c6fb435 Use a badge for .text-wrap example 2018-11-04 15:55:17 +02:00
XhmikosR 366bc88523 Add text-wrap example. 2018-11-04 15:55:17 +02:00
Andrew cbc859ad8d Add .text-wrap class.
this is the opposite of `.text-nowrap`, and a forces elements to wrap onto new lines.

One use case for this is extra long button text. Bootstrap buttons by default do no wrap, so this class could be used to override that behavior.
2018-11-04 15:55:17 +02:00
XhmikosR 497766a3a6 Travis: stop using a separate stage for Browser tests.
This should be faster.
2018-11-04 15:40:09 +02:00
XhmikosR ca47a21b70 broken-link-checker: force follow links.
After 3256a2c, blc honored robots.txt thus it didn't crawl anything.
Ignore robots.txt to work around the issue.
2018-11-04 15:32:59 +02:00
patrickhlauke c46a0c7e88 Replace touch-action: none with pan-y, remove preventDefault from touch event handling 2018-11-04 14:40:19 +02:00
XhmikosR 9cc237d0ba scss/_custom-forms.scss: fix typo in comment. 2018-11-04 12:17:56 +02:00
ysds ea8f6c6ff3 Button group refactoring and fixes (#25395) 2018-11-04 08:50:21 +02:00
XhmikosR d27509688d Jekyll: switch to localhost
`0.0.0.0` has issues on Windows.
2018-11-04 08:33:30 +02:00
Vincent Langlet 793b83fda8 Avoid null value (#27570) 2018-11-04 08:18:56 +02:00
Martijn Cuppens 38e9e2b82c Add TODO 2018-11-04 08:13:31 +02:00
Varunram a31468cf84 Resolve #26226: Sync with normalize 8.0.0
diff credits: @client9
2018-11-04 08:13:31 +02:00
XhmikosR eeea8b5ed3 docs: remove false info from v3 suggestion. 2018-11-03 21:59:11 +02:00
Patrick H. Lauke 8b20bce873 Add Sass variable for prefers-reduced-motion, add callout to affected components (#27581)
* Tweak the accessibility/reduced motion text

include mention of carousel slides, remove the (now inaccurate, as Firefox 63 includes it too) mention that support is limited to Safari/macOS

xref https://github.com/twbs/bootstrap/issues/27525

* Add new callout for reduced motion

* Add variable to control prefers-reduced-motion media query support

* Add callout about prefers-reduced-motion to all components currently using animation which are affected
2018-11-03 19:23:26 +01:00
Johann-S f7a4b39767 handle detached tooltip when we try to hide a modal 2018-11-02 13:39:58 +01:00
XhmikosR e0d1f3f18b Remove the obsolete tooltip-viewport example and redirect it. 2018-11-02 12:55:28 +02:00
XhmikosR 3256a2c231 robots.txt: disallow crawling when not in production. (#27559) 2018-11-02 12:41:57 +02:00
Sebastian Hädrich 4b15ec9cad Make meaning of tooltip's selector option clearer (#27573) 2018-11-01 15:05:02 +02:00
ysds 2ffa1bff6e Fix empty custom-control-label alignment issue (#27566) 2018-10-31 09:49:52 +02:00
Martijn Cuppens 96b49d7833 Fix Edge bounce and restore original transition easing (#27279) 2018-10-31 09:45:39 +02:00
Johann-S f20e46e2da Add @MartijnCuppens to our core team ! 🎉 (#27562) 2018-10-30 19:47:25 +02:00
ysds eb5d0b49dc Prevent hover/click on disabled .close links. 2018-10-30 18:25:14 +01:00
Martijn Cuppens 273861f145 IE10 homepage fix 2018-10-30 18:16:19 +02:00
Johann-S cebdfb9090 fix dispose modal unit test 2018-10-30 16:59:24 +01:00
Andrew Luca bd2851938a test(Modal): check if modal is disposed 2018-10-30 16:28:32 +01:00
Andrew Luca 65dc8c9070 refactor(Modal): add _isTransitioning default value
Having variables initialised from start `_isTransitioning` is better.
Would be better to add an eslint rule to check for undeclared variables use.
Reordered enter checks for `show` and `hide` by priority.
2018-10-30 16:28:32 +01:00
XhmikosR 2b21657cd4 Remove trailing space. 2018-10-30 15:44:41 +02:00
XhmikosR 40e560aa12 docs: remove Webpack version reference. 2018-10-30 15:44:41 +02:00
XhmikosR 02df7cd0d2 Fix util tests on IE 10 (#27556) 2018-10-30 15:29:04 +02:00
Matheus Rocha Vieira 77ff5e8e42 download page: add Yarn (#27544) 2018-10-30 11:27:13 +02:00
Martijn Cuppens e0fa9a812c #27502: Prevent active state border change 2018-10-30 09:06:25 +02:00
Martijn Cuppens 5aed968750 Prevent the background to be shown when transitioning 2018-10-30 08:57:02 +02:00
XhmikosR 5e6b53a7c0 Update Travis CI config.
Only run `coveralls` and `check-broken-links` tasks when we run the Test phase.
2018-10-29 16:04:22 +02:00
Johann-S 2868f07240 update our coverage required for branches and functions 2018-10-29 14:49:29 +01:00
Johann-S 91f8077ed5 add unit tests for our carousel 2018-10-29 14:49:29 +01:00
XhmikosR bb0d6bf178 Update devDependencies and gems. 2018-10-29 15:40:20 +02:00
Johann-S 2c2d04aba5 add unit test to test tabs can be removed without throwing error 2018-10-29 14:01:03 +01:00
dercodercom a282c22fc7 Update tab.js
I'm using Tab.js with remove function and get an error "TypeError: container is undefined [more info]", with this check the error is fixed.
2018-10-29 14:01:03 +01:00
Martijn Cuppens fff9e17d7e Delete sache.json (#27530) 2018-10-29 13:35:26 +02:00
Martijn Cuppens 45610a0f39 fix tab fade out (#27533) 2018-10-29 09:54:45 +01:00
Johann-S ffc8d507c7 calculate modal transition duration based on modal-dialog element 2018-10-28 23:59:17 +02:00
Ng Yik Phang 47ef0a877e Improve pagination's documentation accessibility.
- Remove `.sr-only` span for previous/next page, there is already`aria-label`
- Add `aria-disabled="true"` and `aria-current="page"`
2018-10-23 06:21:57 +03:00
ItaloBC 557f3fe100 Added Viewport Height & Width helpers
This allows the user to make a container (ideally) to use viewport height and width and allow better vertical/horizontal alignments of elements.
2018-10-23 06:04:08 +03:00
Martijn Cuppens 1c91f48251 Variable darken percentage for emphasized links 2018-10-23 05:58:19 +03:00
Caíque de Castro Soares da Silva ff40e00323 Fix readonly-plain-text with button addon (#25871)
Fixes #25870
2018-10-23 05:53:38 +03:00
Mitko Georgiev ee1daf090a Easy merging of new grid breakpoints and containers (#26714)
This change follows exactly what was done for the `$grays`, `$colors`, and `$theme-colors` lists in #23260. This allows for easy addition of new breakpoints or grid containers also.
2018-10-23 05:48:44 +03:00
Martijn Cuppens dd539094ea Custom select validation padding fix and additional custom select feedback icon variables 2018-10-23 05:43:59 +03:00
Martijn Cuppens d0b7eb1111 Cleanup stylelint comments 2018-10-23 00:21:33 +03:00
XhmikosR 807e8fe4a2 Further ToC fixes. 2018-10-22 21:57:25 +03:00
XhmikosR 0c56f054a5 Remove unneeded check.
Leftover from after 43c20b9.
2018-10-22 09:24:36 +03:00
XhmikosR d48f03b050 Use the example shortcode in more places.
Now that we don't have the ToC issue with the examples' headers in ToC, we can safely do this.no_toc_section_class
2018-10-22 09:24:36 +03:00
Martijn Cuppens 00860f02d4 Disallow transition property (use mixin instead) 2018-10-21 22:46:20 +03:00
Johan Beckers 09aca3fb9a Unitless breakpoints
If I want to customise the breakpoints using `em`, I get compatibility errors.

It is good practice to set breakpoints in `em` instead of `px` when users use browser scaling.
See https://zellwk.com/blog/media-query-units/#concluding-the-experiments for more information why someone would like to do this. Only Safari users can get annoyed: https://adamwathan.me/dont-use-em-for-media-queries/

In any case, using a unitless number at line 42 would be very convenient.
2018-10-21 21:31:28 +03:00
XhmikosR 9ed0b318b9 Update devDependencies and gems. 2018-10-21 19:11:20 +03:00
Nicolay Hvidsten 345f26a667 Change erroneous documentation for .flex-fill (#27265)
The current documentation for .flex-fill indicated that the flex
items would have equal widths, regardless of content. This update
ensures that the documentation reflects the fact that the width
of the flex items depends on their actual content.
2018-10-21 18:54:09 +03:00
Andrew Luca 1f1308ba22 test(Modal): reuse _getScrollbarWidth in tests 2018-10-21 17:45:02 +02:00
XhmikosR ff9b195da7 Revert "Simplify .gitattributes."
This reverts commit 1c78f703e0.

Unfortunately some Linux distros use an ancient git version and this change requires git >= 2.10.
2018-10-21 18:33:28 +03:00
Martijn Cuppens 44ddabad4b Simplify theme color usage (#27378) 2018-10-21 17:39:23 +03:00
XhmikosR 0a3755b30a Fix typo in the Popper.js checks. (#27488) 2018-10-21 11:51:20 +03:00
Andrew Pucci d13ae1fc1a Card header color theming (#26573)
Define new variable for card header color
2018-10-21 11:05:54 +03:00
ysds becb6ce346 Add dropdown responsive alignment (#26255) 2018-10-21 11:01:22 +03:00
ysds 6bae9ef786 Example dashboard: Responsive padding-top of the main content (#26332) 2018-10-21 10:56:53 +03:00
Martijn Cuppens 49ca910667 Improve Grid examples. (#26808)
Removes the grid.css file of the grid example and makes use of utility classes
2018-10-21 10:52:13 +03:00
Andrey 3075432584 feature/yiq function, add parameters, with default values. (#26917) 2018-10-21 10:33:53 +03:00
Martijn Cuppens e2014e8ed7 Custom checkboxes and radios retheming (#27064) 2018-10-21 10:25:07 +03:00
Martijn Cuppens c9a43b027a Re-add carousel control transition (#27277) 2018-10-21 10:13:35 +03:00
Doug Puchalski 59f1802e98 Outline button variant hover mixin (#27289)
The outline button variant mixin should use the hover mixin, as does the non-outline version.
2018-10-21 10:09:08 +03:00
midzer 50d866da24 optimize data URIs (#27284) 2018-10-21 10:03:17 +03:00
Martijn Cuppens 2a28c7d9fd Carousel fade cleanup (#27278) 2018-10-21 09:55:43 +03:00
Roy Klutman fccdda5448 Fix for double border on cards in an accordion (#27133) 2018-10-21 09:49:05 +03:00
XhmikosR bc2a98522d webpack page: Remove precss reference 2018-10-20 23:07:48 +03:00
719media 2c1a743cc9 Update _custom-forms.scss (#27276)
user-select has no effect on before/after pseudo elements
2018-10-20 22:35:56 +03:00
andresgalante 86822d93d6 changes the variables for input font size 2018-10-20 22:29:24 +03:00
Ian Walter 871a51a548 Fix #26372: disabled btn hover issue (#27407)
When gradients are enabled there is still a hover state on disabled
buttons since the hover rules apply to background-image and disabled
rules apply to background-color. This applies the logic already present
in dropdowns to buttons. This fix was originally proposed by @ysds.
2018-10-20 22:12:33 +03:00
semenyakNik c5eb6043d8 Custom select inconsistent padding (#27415) 2018-10-20 22:00:48 +03:00
Martijn Cuppens 7190c38e4c Remove redundant width and height properties 2018-10-20 21:46:53 +03:00
XhmikosR 700f74cebd Make use of jekyll-toc's no_toc_section class.
Requires jekyll-toc v0.8.0.
2018-10-20 21:39:53 +03:00
XhmikosR 79db264910 package.json: add version_short and use it in the npm scripts. 2018-10-20 21:17:50 +03:00
XhmikosR 242f19897d Clean up docs Sass code.
* remove unused rules
* use Sass nesting in more places
* use the core mixins in more places
* use the color variables more
2018-10-20 21:08:37 +03:00
XhmikosR d08607c080 Unregister Service Worker. 2018-10-20 16:00:28 +03:00
Mark Otto 5bf37eba53 Remove service worker 2018-10-20 16:00:28 +03:00
Johann-S b1dc6b324c avoid drag img 2018-10-20 15:32:09 +03:00
patrickhlauke 8883ccb205 Set touch-action to "none"
Firefox currently seems extremely fickle - with `pan-y` if fires pointercancel as soon as a touch strays even a pixel or so vertically.
While `touch-action: pan-y` would be ideal (allowing users to scroll the page even when their finger started the scroll on the carousel), this prevents a swipe that isn't perfectly/only horizontal to be recognised by Firefox.
2018-10-20 15:32:09 +03:00
patrickhlauke 9164f77269 Refactor (and correct) start/move/end functions
in particular, no need to use originEvent, and preventDefault() only needed for touch events
2018-10-20 15:32:09 +03:00
patrickhlauke 39ae077837 Remove unnecessary pointer event listeners
these may also be the cause of weird behavior in Chrome/Surface, where scrolling vertically triggers slide advance
2018-10-20 15:32:09 +03:00
patrickhlauke 6be7293a85 Abandon swipe altogether if more than one touch detected 2018-10-20 15:32:09 +03:00
patrickhlauke 7b8f01d839 Use correct touch-action values
- my fault, my original advice of using `touch-action: pan-x` is exactly the value we *don't* want to have the browser handle...
2018-10-20 15:32:09 +03:00
Johann-S 735c374e9c use pointer events if available 2018-10-20 15:32:09 +03:00
Johann-S c08652cfe8 swipe left/right without hammerjs 2018-10-20 15:32:09 +03:00
Johann-S caefd70463 Add touch support in our carousel with HammerJS. 2018-10-20 15:32:09 +03:00
Christian Oliff bf57389647 Add query string to the start_url to track how often app is launched
Useful suggestion from Google in the Web App Manifest documentation.
https://developers.google.com/web/fundamentals/web-app-manifest/#start-url
2018-10-20 14:58:37 +03:00
galczo5 6cbcd03efb Add show and hide methods to dropdown (#27370) 2018-10-20 14:27:51 +03:00
Andres Galante 5088f02730 Add font weight options for form controls and custom select (#27343) 2018-10-20 11:50:20 +03:00
Bastien a86aef0ae0 table: Add border color relative to theme for accessibility (#25755) 2018-10-20 11:21:31 +03:00
XhmikosR 282b77ee9c docs search: take into account the current URL. 2018-10-19 22:09:50 +03:00
Catalin Zalog a16ffc7ba1 feat: keep contrast on .table-dark
In case we set `$body-bg` to a dark color, we have to keep table contrast relevant.
2018-10-19 13:01:38 +03:00
namiltd 1231e1d6bc Fix size of modal dialogs at different widths (#27094) 2018-10-19 12:56:46 +03:00
Roy Klutman 5a1588ed33 Fix double border on list-group (#27126) 2018-10-19 12:01:36 +03:00
chocolateboy ef32979222 Fix doc typo 2018-10-19 11:36:18 +03:00
XhmikosR 5d834e0510 Travis: stop installing chrome (#27468)
It seems it works without it.
2018-10-18 11:56:55 +03:00
XhmikosR 43bf268248 Rename docs production script to production and use JEKYLL_ENV. (#27410) 2018-10-18 10:45:49 +03:00
XhmikosR 99e0e30402 Move lint scripts outside of the main scripts.
This allows us to run `npm run dist` without tests.
2018-10-18 10:05:19 +03:00
XhmikosR f6a39e39c8 npm release-zip: remove the folder before zipping. 2018-10-18 10:05:19 +03:00
Martijn Cuppens a6669b478b Fix btn focus color (#27178) 2018-10-17 23:21:33 +03:00
Helmut Granda ef27179c18 Delete callout-info-content-iamge-overlay-overflow.md
Deleting external file since it is not needed, the copy of this file will be added directly to card.md.
2018-10-17 23:15:01 +03:00
Helmut Granda 34c7b07f7f Adding call out note directly to the page.
Instead of using an external source since this is only a one time note it is safe to be placed within the document itself.
2018-10-17 23:15:01 +03:00
Helmut Granda 42006e7b17 Adds a note about the limitations on content being larger than the image.
In the event that the content is larger than the image, the content will continue to be displayed outside the image itself. There are some workarounds but they apply only to browsers that support this option and IE11 is not one of them.
2018-10-17 23:15:01 +03:00
Martijn Cuppens 832a90d9d3 Move media from layout to components 2018-10-17 22:45:54 +03:00
XhmikosR 1c78f703e0 Simplify .gitattributes. 2018-10-17 12:23:01 +03:00
Mark Otto 8cf0fe2ee0 Add a CODEOWNERS file (#27271) 2018-10-15 16:17:42 +03:00
XhmikosR 29f849879b Move docs .eslintrc in site/. 2018-10-15 16:03:16 +03:00
XhmikosR 18ff70c248 Update devDependencies and gems. 2018-10-15 14:52:22 +03:00
XhmikosR 3574af5231 Include css-copy in the css script. 2018-10-15 14:31:42 +03:00
Martijn Cuppens ad60a58043 Rename everything to skippy and center skippy (#27420) 2018-10-15 14:19:41 +03:00
XhmikosR 43c20b912e Combine examples and simple layouts. 2018-10-15 12:54:51 +03:00
XhmikosR 7d6a0aa24d Tighten stylelint config. (#27336)
Also improve its formatting.
2018-10-15 12:24:53 +03:00
Martijn Cuppens fc77c5540e Change h1 to h2 2018-10-15 09:53:11 +03:00
XhmikosR 6c7ec73b16 Reduce indentation. 2018-10-14 22:00:58 +03:00
XhmikosR 70aec100e4 Travis: add --clean in bundle install command. 2018-10-14 17:05:04 +03:00
XhmikosR bcbf3f2ec6 build/generate-sri.js: add popperjs. 2018-10-14 08:17:40 +03:00
XhmikosR f9dea7624b Move periods outside of links. 2018-10-14 08:17:40 +03:00
XhmikosR ea575bc1a7 js/tests/visual: fix popper script.
Broken after 787441d.
2018-10-14 08:17:40 +03:00
XhmikosR 7749b91130 Fix a few links.
* fix `/versions/` link
* add missing trailing slashes
* fix a couple of redirects
2018-10-14 08:17:40 +03:00
XhmikosR d2c6e237e4 Remove the unused jobs Jekyll variable. 2018-10-14 08:17:40 +03:00
XhmikosR 7d8b26980f Update popper.js in docs. 2018-10-14 08:17:40 +03:00
XhmikosR 449979decf docs: fix bundle SRI hash.
Also, remove popper.js from this script since it's not present in the repo.
2018-10-14 08:17:40 +03:00
XhmikosR 339311ddb5 Fix invalid selectors in tests and examples. 2018-10-14 08:17:40 +03:00
XhmikosR 4ce091b87f Add a release npm script. 2018-10-14 07:51:40 +03:00
XhmikosR 3fcddfa42e Remove sri-toolbox dependency.
We can achieve the same very easily.
2018-10-14 07:41:45 +03:00
XhmikosR b2b933c181 Update Travis config.
* remove `dist: trusty` since it's the default
* disable email notifications
2018-10-13 13:55:49 +03:00
m5o 0e5813bfd4 update holder.js image dimensions for sizing example
* update holder.js image dimensions for sizing example
  * use `100%` instead of `100%`
  * 📝 https://github.com/imsky/holder#fluid-placeholders
2018-10-13 00:10:05 +03:00
m5o 74393bffc9 refine deprecated holder.js color syntax
* refine deprecated holder.js color syntax
  * remove `#55595c:#373a3c`
* harmonize with all other holder.js examples
2018-10-11 23:49:08 +03:00
XhmikosR f59c2d946c Update devDependencies and gems. 2018-10-07 08:20:24 +03:00
XhmikosR 9d63deb954 Rename script. 2018-10-07 08:20:24 +03:00
Mark Otto 29bd5e3218 Add overflow-auto and overflow-hidden utilities 2018-10-06 17:55:55 -07:00
Spencer Davies 23015571b9 fix - small grammar error
"given move to" -> "given the move to"
2018-10-06 11:39:09 +03:00
Tanmay Gupta cd880619d4 updated README (#27349) 2018-10-02 23:38:46 +03:00
XhmikosR 19f70f9d4c Tweak build/build-plugins.js. 2018-09-26 17:04:33 +03:00
Johann-S 7c7a1706c3 remove useless iife 2018-09-26 15:03:38 +02:00
XhmikosR 02c4444f6c Remove unneeded path.resolve. 2018-09-26 15:53:44 +03:00
XhmikosR 59197765f4 Include the plugin's filename in the license header. 2018-09-26 15:53:44 +03:00
Helmut Granda ebc220754b Add license headers in js/dist files
By implementing the same approach of rollup.config.js
and replicate it in build-plugins.js, individual plugins
will display license headers.
2018-09-26 15:53:44 +03:00
Howard Cox d7f79b06dc Prevent pointer events on disabled list-group-item 2018-09-26 07:20:46 +03:00
Howard Cox 44b3f77852 Prevent pointer-events on disabled anchor dropdown-item
Fixes #26695
2018-09-26 07:20:46 +03:00
XhmikosR 0350858edf Fix examples after the recent JS changes.
`https://example.com` isn't a valid selector.
2018-09-25 17:45:06 +03:00
Florian Lacreuse 46893e23a3 Add explanation about accordion wrapper. 2018-09-25 11:41:35 +03:00
XhmikosR 252e538985 Make release-zip include the root folder.
Also, now it should work cross-platform assuming `zip` is present.
2018-09-20 12:54:34 +03:00
719media e1b7404bb8 Update forms.md
fix duplicate id attribute
2018-09-20 09:31:02 +03:00
Mark Otto 4dc5671d1b Remove flex utilities from .list-group-item's as they're display: block; meaning the utilities have no affect. Closes #27162. 2018-09-18 22:14:45 -07:00
Mark Otto 55655b2781 dist 2018-09-18 21:42:38 -07:00
Mark Otto 2f611c657b Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev 2018-09-18 21:35:56 -07:00
Mark Otto f6244654a6 dist 2018-09-18 21:35:40 -07:00
Martijn Cuppens 7bd1bc2431 Allow multiple ways of padding declaration for modal header (#26976)
* #26967: Allow multiple ways of padding declaration for modal header
* #26976: split vertical and horizontal modal padding
2018-09-18 21:33:31 -07:00
Mark Otto 0bec1c8897 Add new variables for form feedback tooltips (#26959)
Fixes #26886
2018-09-18 21:27:02 -07:00
XhmikosR f9142bdd62 docs: switch to font-weight 600. (#27226)
Segoe UI doesn't have font-weight: 500 making things not looking as expected.
2018-09-18 18:31:51 -07:00
Johann-S 75f83da539 use bsCustomFileInput in our documentation (#27264) 2018-09-18 16:52:10 +03:00
Mark Otto c8fd9ddd97 Consistently re-use input variables 2018-09-18 16:29:46 +03:00
Christopher Morrissey ea0faadde5 feature(carousel): carousel-item interval (#26667)
adds the ability to assign data-interval to an individual carousel-item
2018-09-18 15:55:48 +03:00
Martijn Cuppens e604958641 Variable .btn and .form-control font sizes (#26908) 2018-09-18 15:35:25 +03:00
ysds 18ae915f54 Bring the focused button in input group to the front (#26910) 2018-09-18 15:29:02 +03:00
Mark Otto 029f92c5e5 Document input group wrapping behavior and override via utility class
Fixes #25409
2018-09-18 14:51:34 +03:00
Nabil Kadimi 876e320364 Switch to .btn-secondary for the search button so that it's accessible (#27255) 2018-09-18 13:10:02 +03:00
Mark Otto 7c88c46517 Clarify docs for custom form structure
Fixes #25440
2018-09-18 13:03:44 +03:00
XhmikosR 787441d4bf docs: use the bundle dist file. 2018-09-18 12:50:18 +03:00
Mark Otto 5543229950 dist 2018-09-17 12:36:49 -07:00
Mark Otto 9e24d68112 Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev 2018-09-17 12:34:41 -07:00
Mark Otto b68ea572da dist 2018-09-17 12:34:34 -07:00
XhmikosR 47107d4647 Switch to find-unused-sass-variables for finding unused Sass variables. 2018-09-17 19:34:15 +03:00
Martijn Cuppens bf4dab72df #27220: cleanup .btn-link hover/focus properties (#27250) 2018-09-17 09:34:34 -03:00
Mark Otto 301a22b164 Update copy 2018-09-17 09:06:12 +03:00
XhmikosR 0d869a1063 Remove background-colors example and show only the code.
This is to avoid confusion.
2018-09-17 09:06:12 +03:00
Catalin Zalog 928ebd8925 _variables.scss comments/spacing consistency (#27247)
* style: `_variables.scss` comments consistency

* style: `_variables.scss` spacing consistency
2018-09-16 14:32:11 -07:00
Nabil Kadimi ed48d9a440 Typo (#27248) 2018-09-16 19:02:30 +01:00
XhmikosR 8bfecc7dc6 Update svgo.yml. 2018-09-16 18:06:24 +03:00
Mark Otto c3d93b34ba Simplify HTML and CSS
- Remove iframes
- Turn into larger click areas
- Drop entire team.scss file for components and utilities
2018-09-16 02:04:32 +03:00
XhmikosR 4e8c9ba1da browsers-devices.md: Use Jekyll variable. 2018-09-16 02:04:32 +03:00
XhmikosR 685db4d64f Restore team page. 2018-09-16 02:04:32 +03:00
XhmikosR fe873a3310 Travis CI: Actually don't install npm@5 at all. 2018-09-16 01:52:14 +03:00
XhmikosR 3d17e3a93a Travis: Don't install npm@5 when the current npm is newer. 2018-09-16 01:52:14 +03:00
Johann-S 8cd485fcc8 speed up browser tests 2018-09-15 08:50:13 +03:00
XhmikosR 0b97d1b0c4 Use https in more places and fix a few redirects. 2018-09-14 18:27:55 +03:00
XhmikosR c6f7276729 Update popper.min.js to v1.14.4. 2018-09-14 18:07:50 +03:00
XhmikosR bcb4e7be98 Update anchor.min.js to v4.1.1. 2018-09-14 18:07:50 +03:00
Martijn Cuppens 7a01f3c41b Selector improvement (#27219) 2018-09-14 09:31:48 -03:00
Johann-S a689120fd2 throw error when folks try to use a bad selector 2018-09-13 22:13:36 +02:00
Johann-S 9efed82522 refactor karma config in one file 2018-09-13 21:59:37 +02:00
Johann-S c543f360c9 do not use coverage files on browserstack 2018-09-13 21:59:37 +02:00
Andres Galante ed3c611949 creates variables for navbar brand colors #27187 2018-09-13 17:51:14 +03:00
Johann-S 6e2a823a44 collapse children with no data-parent 2018-09-10 21:10:00 +02:00
Herst de75bd0a4f Remove certain Chromium entries from Wall of Bugs 2018-09-10 09:52:13 +03:00
XhmikosR 83006463c9 Update devDependencies. 2018-09-09 19:05:03 +03:00
Herst 7b9c8e8eb3 Added type="button" to <button>s without any type (#27174)
(again)

https://github.com/twbs/bootlint/wiki/W007
2018-09-03 16:55:04 +01:00
Roman O fad49e710e Ignore percentage values for compare in maps 2018-09-02 16:43:54 -07:00
Martijn Cuppens 97eea3b2bf Set .btn base color 2018-09-02 16:28:42 -07:00
Martijn Cuppens 3ef2db1e85 Move transparent background to .btn and remove background-image 2018-09-02 16:28:42 -07:00
Martijn Cuppens 19afb12b65 Set max-width to 100%
Fixes #27114
2018-09-02 16:26:53 -07:00
Martijn Cuppens 9f53e06e46 Remove -webkit-text-decoration-skip 2018-09-02 16:26:18 -07:00
Martijn Cuppens e3c0b3d3af #27112: fix border focus border color 2018-09-02 16:25:55 -07:00
ysds d1de8737aa Move CSS of hover underline to base from color variants 2018-09-02 16:25:21 -07:00
Mark Otto 97801a7a2d Add new docs Versions page. 2018-09-02 13:57:25 -07:00
Johann-S a3e45d8ced add information about valid selectors (#27137) 2018-08-31 21:00:29 +02:00
Johann-S 54d86e6249 move away from sauce labs to browserstack 2018-08-30 22:17:15 +02:00
XhmikosR 2f5f8ef755 build-plugins.js: Remove redundant space 2018-08-29 15:51:21 +03:00
XhmikosR b5ad6129a2 Update devDependencies. 2018-08-28 21:48:38 +03:00
ysds 5266669d34 Remove extra line break 2018-08-28 02:22:46 +03:00
Martijn Cuppens 0e8831505a Simpler carousel indicators css (#26996) 2018-08-26 14:53:36 +03:00
acj b652932f0c Remove redundant space from blockquote footer prefix 2018-08-26 14:48:51 +03:00
acj cd28869a2f Move blockquote footer font size to variables
Blockquote footer font size is currently hardcoded to 80%, implying (in a comment) that this would result in the default font size. However, since the blockquote font size itself is variable, this is not necessarily true, and 80% of anything actually results in an arbitrary font size.

80% as a default is still fine.
2018-08-26 14:48:51 +03:00
XhmikosR 00398e31c7 Remove _layouts/redirect.html.
This isn't needed, because it's not supposed to be seen normally, with JavaScript enabled.
2018-08-25 23:41:17 +03:00
m5o 7f9e70202e add text-reset to text utilities (#26866) 2018-08-25 19:31:52 +03:00
Mark Otto 3a02f21b33 Specify new height for inputs in floating label example after v4.1.3's addition of a fixed height property on .form-control 2018-08-25 19:02:15 +03:00
Mark Otto df3993a600 Round corners on modal footer
Matches the method used for the modal header. Fixes #26955.
2018-08-25 18:49:09 +03:00
Martijn Cuppens 8073e10fb3 #23389: Add breadbrumb in docs search results 2018-08-25 15:04:53 +03:00
XhmikosR da717b03e6 Update devDependencies and gems. 2018-08-20 10:49:49 +03:00
Patrick H. Lauke 061a696855 Minor: missing dot before classname in explanatory text 2018-08-19 22:21:20 -07:00
Yannick Warnier 17008fb8f8 Fix section numbering in scrollspy doc example 2018-08-19 11:21:38 -07:00
Greg Tyler 5fb7c903b3 Use mr utility class throughout media object docs 2018-08-19 11:18:59 -07:00
Rowan-James Tran 24bdadf9d3 Remove nowrap from .btn 2018-08-19 11:17:10 -07:00
Martijn Cuppens 4def76c34e #26975: remove grid columns min height 2018-08-19 11:13:18 -07:00
Mark Otto c0fd91788e dist 2018-08-18 20:22:08 -07:00
Johann-S ab7ce480f2 Recommend a plugin to animate custom file input (#27088) 2018-08-18 16:57:07 +03:00
XhmikosR 5fed73d409 Update deps. 2018-08-13 19:20:17 +03:00
XhmikosR 107a8da550 Update bundlesize limits. 2018-08-13 10:10:52 +03:00
Martijn Cuppens bf7d4aef81 Change if statement 2018-08-13 10:10:52 +03:00
Martijn Cuppens 57661dff6d Tweak modal transform (#27005) 2018-08-13 10:00:53 +03:00
Johann-S c0b40745e0 add babel plugin proposal object rest spread to our dev deps 2018-08-12 23:34:25 +02:00
XhmikosR c81bae06f5 Add missing trailing slash in Edge tracker links. 2018-08-12 23:42:01 +03:00
XhmikosR e8e8df9cba Revert "Remove Chinese translation since it 404s."
This reverts commit 8bb35313b1.

This is no longer needed.
2018-08-12 23:42:01 +03:00
XhmikosR 34199be5ec Revert "broken link checker: check external links too."
This reverts commit 9e5ec00d50.

Unfortunately, we are getting too many timeouts.
2018-08-12 23:42:01 +03:00
XhmikosR b442ce3130 build/*.js: set sourceType to module. 2018-08-12 22:22:12 +03:00
XhmikosR acd19de6a9 Use ES6 arrow function. 2018-08-12 22:22:12 +03:00
XhmikosR 8bb35313b1 Remove Chinese translation since it 404s. 2018-08-12 21:15:55 +03:00
XhmikosR 63909069c4 docs/4.1/components/forms.md: fix useiconic link. 2018-08-12 21:15:55 +03:00
XhmikosR 9e5ec00d50 broken link checker: check external links too.
It's slower, but since it runs only on Travis, we better be safe.
2018-08-12 21:15:55 +03:00
XhmikosR 208f22c8d7 Run all css tasks in dist script. 2018-08-12 21:15:55 +03:00
XhmikosR b5af1c6eaf Fix paths. 2018-08-12 21:15:55 +03:00
XhmikosR 4317d4fb2d Update devDependencies and gems.
Also, enforce LF in clean-css.
2018-08-12 20:52:35 +03:00
Johann-S eab9da5beb fix(util): use querySelector for ids 2018-08-12 17:01:01 +02:00
Johann-S 6b92321f6a fix(util): use getElementById when it's possible 2018-08-07 18:49:02 +02:00
XhmikosR ae53690ab4 Commit our svgo config. 2018-08-02 19:17:18 +03:00
jarstelfox 198091d635 Fix dispose causing popover title to change
see: https://github.com/twbs/bootstrap/issues/26847
in v4, destroy was replaced by dispose
2018-08-02 13:51:08 +02:00
Jonathan 854da5a7c1 Hyphenate client-side/server-side (#27016) 2018-08-02 11:13:19 +01:00
Mitchell Grice c5bb4dc5d1 Fix #26990 broken external example 2018-08-02 11:38:21 +02:00
Martijn Cuppens b8cd49015a Use Iconic github page instead of site
The SSL certificate of the useiconic.com is expired
2018-08-02 12:28:45 +03:00
XhmikosR 81f1249e9c Update package.json
Fix paths to docs.
2018-08-02 09:25:06 +02:00
XhmikosR 5570f1c161 package.json: be more explicit with the files we include. 2018-08-02 09:40:02 +03:00
Mark Otto 0b5a8d9c98 Merge branch 'form-validation-icons' into v4-dev 2018-07-29 14:18:09 -07:00
Martijn Cuppens 774724a7b6 #26972: fix responsive highlight width 2018-07-29 14:13:28 -07:00
XhmikosR c73b4a705e Update devDependencies and gems. 2018-07-29 14:07:38 -07:00
Robert 70ad98d34d Fix custom-select font size/padding (#26585)
fixes #26476
2018-07-29 14:04:35 -07:00
Mark Otto 6233ea378d dist 2018-07-29 13:02:42 -07:00
Mark Otto f803fb9903 Add margin utils to the grid for fully functional grid control (#26957)
* Add margin utils to the grid for fully functional grid control

* bump the max filesize
2018-07-28 21:34:27 -07:00
lgdean e53ab71d4b fix typo: seperator -> separator (#26982) 2018-07-27 19:34:30 -07:00
XhmikosR a194abbb5a Update browsers-devices.md 2018-07-26 06:41:29 +03:00
Martijn Cuppens 4f926671e9 Carousel indicators transition (#26902) 2018-07-24 21:15:05 -07:00
ysds bbee41431d Fix custom range height (#26898)
Fixes #26897
2018-07-24 17:56:03 -07:00
ysds ab53ccc2cc Flexbox based sticky footer example (#26674)
* Flexbox based sticky footer

* Update guide message

* Use utility classes instead of custom CSS
2018-07-24 17:40:55 -07:00
Martijn Cuppens d80635c1cd Custom input range disabled styling (#26540) 2018-07-24 17:39:15 -07:00
Mark Otto ba25e38b4a Merge branch 'garhbod-patch-1' into v4-dev 2018-07-24 17:26:29 -07:00
Mark Otto fb2de04374 Merge branch 'v4-dev' into malkomich-v4-dev 2018-07-24 17:25:12 -07:00
Stefan Wrobel e3b98c51da Add .text-decoration-none utility class (#25933)
ref: https://github.com/twbs/bootstrap/pull/23881#issuecomment-337789596
2018-07-24 17:24:20 -07:00
Andrew c8a4d9dd74 add 'lighter' and 'bolder' font weight classes (#26580)
* add 'lighter' and 'bolder' font weight classes

these are 2 special values for font weight, that will give their content a font-weight value of 100 more or less than their inherited font-weight.

probably doesn't fully fulfill this issue, https://github.com/twbs/bootstrap/issues/23969, but it's a start

* Update .stylelintrc

* add 'lighter' and 'bolder' variables per @mdo 's request.
2018-07-24 17:23:17 -07:00
Mark Otto 3b55873438 Ship v4.1.3 2018-07-24 08:54:34 -07:00
Mark Otto 72447ad497 dist 2018-07-23 17:51:14 -07:00
Johann-S d18045210c fix(tests): visual plugins tests 2018-07-23 17:29:53 -07:00
Martijn Cuppens c74a32703a Allow background images for active buttons 2018-07-20 19:25:01 -05:00
Mark Otto f87d5eab69 Clarify to close #26329 2018-07-20 19:11:23 -05:00
Mohammad Younes 6cca02f163 fix .modal-dialog-centered on IE10/11 2018-07-20 19:04:23 -05:00
Joshua David c04d60b88f Fix modal overflow style nesting (#26742)
Nest `.modal` styling directly under `.modal-open`
to avoid issues when bootstrap is nested.
2018-07-20 18:55:16 -05:00
Mark Otto 23e4d48e65 Merge branch 'document-tooltip-flickering' of https://github.com/simPod/bootstrap into simPod-document-tooltip-flickering 2018-07-20 18:34:57 -05:00
Martijn Cuppens 6f52b2eafa #26912: fix custom file input z-index 2018-07-20 18:31:47 -05:00
ysds c45e5594b7 Fix property order 2018-07-20 18:28:09 -05:00
ysds 900775483f Remove :not(:root) from the workaround for SVG overflow bug
* `svg:not(:root)` specificity is very high (https://github.com/necolas/normalize.css/issues/718)
* Bootstrap do not support SVG documents (See #26878)
2018-07-20 18:28:09 -05:00
ysds d7acc977ef Lower the specificity of vertical-align of SVG 2018-07-20 18:28:09 -05:00
Mark Otto 3cfa06004e Add Noto Color Emoji to font stack
Fixes #26227
2018-07-20 18:24:14 -05:00
Mark Otto bdb6723a45 Clarify custom select styles
Fixes #26281
2018-07-20 18:23:42 -05:00
Mark Otto 4693672cff Update validation tooltips to use tooltip vars (#26887)
Updates the properties and values for which we have existing variables to match our tooltips. Come 4.2, we'll create new tooltips for these.
2018-07-20 18:21:40 -05:00
Mark Otto 28b9bc068f Improve responsive table docs
- Splits the examples with code snippets
- Adds note about possible broken visuals

Closes #25813
2018-07-20 18:18:48 -05:00
Johann-S eb81c39f2c feat(plugins): allow to import separate plugins 2018-07-19 19:59:45 +02:00
XhmikosR 6cf8700fd9 Move the browserslist config to a separate file. 2018-07-16 21:34:53 +03:00
Mark Otto 6d84d491d1 Merge branch 'v4-dev' of https://github.com/Varunram/bootstrap into Varunram-v4-dev 2018-07-15 22:46:37 -07:00
Mark Otto a4b2e39178 More wordsmithing 2018-07-15 22:27:36 -07:00
Mark Otto 233378ade9 dist 2018-07-15 14:16:35 -07:00
Lefteris Psitopoulos 9bfd400527 #25842 Remove max-width from table class 2018-07-15 14:06:33 -07:00
Mark Otto f426a67394 Form control heights (#26820)
* Redo input height on .form-control

- Use the already present -height variables on .form-control
- Consolidate the select size and multiple overrides into the .form-control base class instead of sm/lg modifiers
- Remove the Sass extends from input groups since it picks up too many selectors

* Prevent height on textareas
2018-07-15 14:00:23 -07:00
ysds 48c723b60f Fix custom range thumb style (#26385)
* Fix focus box shadow of custom ranges

* Put `:focus` selector right after `.custom-range`
* Remove unnecessary `outline: none`

* Fix box-shadow issues in IE/Edge

* Better align

* Fix thumb vertical positions in IE/Edge

* Fix incorrect formula of thumb vertical positions in Webkit

* Fix an incorrect comment

* Fix incorrect box-shadow-width
2018-07-14 21:31:20 -07:00
Andrew Luca 0fd40837e8 Fix custom-forms heights and position (#25602)
Now `.custom-control` will have height equal to `$font-size-base`
Fix custom checkbox and radio top position (we can't subtract rem from unit)
`$line-height-base - $custom-control-indicator-size` is not valid
Because `$line-height-base` is a unitless variable and `$custom-control-indicator-size`
is a unit (rem) variable
2018-07-14 21:29:19 -07:00
Mark Otto 2d8422f5f5 fixes #26579 2018-07-14 21:10:45 -07:00
Mark Otto 52813f4bc8 Update cursor on floating labels example (#26826) 2018-07-14 15:14:29 -07:00
Mark Otto 2eb456b5d8 Merge branch 'examples-cleanup' of https://github.com/MartijnCuppens/bootstrap into MartijnCuppens-examples-cleanup 2018-07-14 14:07:14 -07:00
Mark Otto 9928311bd9 Merge branch 'box-shadow_issue_26377' of https://github.com/parammittal16/bootstrap into parammittal16-box-shadow_issue_26377 2018-07-14 14:04:39 -07:00
Mark Otto a5d48323a2 Update issue templates 2018-07-13 09:31:55 -07:00
Mark Otto b2c4ce5273 Update issue template 2018-07-13 09:30:58 -07:00
Mark Otto 1f46337a89 Update README.md 2018-07-12 09:27:14 -07:00
Mark Otto c4ccfbe04e Ship v4.1.2 2018-07-12 09:27:14 -07:00
Simon Podlipsky da56d918ac Reword 2018-07-12 17:31:20 +03:00
XhmikosR a49f5cab6f Clean up npm scripts a bit more.
`docs-serve` was duplicated. Also, extend the existent `docs-serve` script for `docs-github-serve`.
2018-07-12 00:06:12 -07:00
XhmikosR 6589408a4b Update scripts. 2018-07-11 23:30:46 -07:00
Mark Otto de7bef881e update card columns docs to make copy more accurate
closes #26586, closes #26587
2018-07-11 23:30:46 -07:00
Mark Otto 5a11ba5d6b clarify docs dev and add 4.0 link 2018-07-11 23:30:46 -07:00
Mark Otto aedd700768 change dist to only affect main since docs css isn't distributed 2018-07-11 23:30:46 -07:00
Mark Otto 4518288c7c Move copy tasks back to css-main and js-compile so docs-github task runs properly 2018-07-11 23:30:46 -07:00
Mark Otto 159aebc274 Update watch scripts to properly copy JS files
- Updates nodemon scripts to watch specific directories instead of ignoring several
- Split watch tasks for CSS and JS into main and docs
- Add docs-watch script to serve the docs instead of just build
- Add new start script so that instead of two tabs, one for docs-watch and one for watch, we just run npm start
2018-07-11 23:30:46 -07:00
Mark Otto 01f568d9a5 fixes #26637 2018-07-11 23:30:46 -07:00
Christian Oliff 50ff31bf51 Optimised Google Analytics Loading 2018-07-11 23:30:46 -07:00
Mark Otto 01c70b11ab new url 2018-07-11 23:30:46 -07:00
Josh Wand a0551c72f3 remove reference to breakpoint-specific gutter widths which are not implemented
see #22944 and #24620
2018-07-11 23:30:46 -07:00
Theodore Dubois df24f880f4 Make navbar download the same as homepage download 2018-07-11 23:30:46 -07:00
Mark Otto 1c92bac655 remove jobs link 2018-07-11 23:30:46 -07:00
Mark Otto 0e920ce3f4 Reorganize docs for easier deploys
With the current docs directory setup, I'm making too many mistakes and have to manually address path changes and directory moves on deploy. This makes for a frustrating experience developing locally and shipping releases. With this PR, we're basically back to the same setup from v3—duplicating the dist directory into our docs directory. Not the most ideal, but very straightforward for me as the release manager.
2018-07-11 23:30:46 -07:00
Mark Otto 9e126b26a8 dist 2018-07-11 21:42:55 -07:00
Johann-S 283ab30164 fix(modal): fix unit test and resetting style 2018-07-11 11:05:38 +02:00
Catalin Zalog cb82394fc8 fix(modal): removes .navbar-toggler margin 2018-07-11 11:05:38 +02:00
XhmikosR e9ec13e974 Update tooltips.md 2018-07-10 23:26:30 +03:00
Simon Podlipsky 591725e838 Document tooltip flickering in combination with some overflow settings 2018-07-10 14:54:45 +03:00
Andrew abb4868626 correct spelling errors (#26837) 2018-07-09 17:59:22 -07:00
XhmikosR 8b50a72f3c Add missing role="button" in .navbar's .dropdown-toggle
Fixes #26830
2018-07-09 14:41:47 +01:00
Mark Otto 5495a19b5a disable to fix ci 2018-07-08 18:43:40 -07:00
Mark Otto b0b28c81e5 add grid docs mention 2018-07-08 18:18:13 -07:00
Mark Otto 7e96979cea fix comment placement, remove unecessary prop wrapper 2018-07-08 17:29:01 -07:00
Mark Otto 0153f7d8cd add docs 2018-07-08 17:28:37 -07:00
Mark Otto f6b4945f1e Merge branch 'patch-1' of https://github.com/garhbod/bootstrap into garhbod-patch-1 2018-07-08 16:46:44 -07:00
Mark Otto 8d8d3ef82a Restore feedback icons on validated form fields
- Only applies to textual inputs and textareas with `.form-control` and selects with `.custom-select`
- Wrap the feedback icons in a Sass variable option, $enable-validation-icons, so folks who theme can disable
- Update docs to summarize styles, mention the icons, include a textarea demo, and add mention of the Sass variable option to the Theming section
2018-07-08 15:31:18 -07:00
Mark Otto c6abb8ca84 class 2018-07-07 20:21:01 -07:00
Mark Otto 17a25b72c8 add table of classes 2018-07-07 20:15:48 -07:00
Mark Otto cc41a5e64f fix docs heading 2018-07-07 19:47:21 -07:00
parammittal16 e77d64b372 Replace shadow with shadow-sm 2018-07-08 06:08:14 +05:30
Mark Otto 5ad1049622 Merge branch 'v4-dev' of https://github.com/malkomich/bootstrap into malkomich-v4-dev 2018-07-07 16:16:43 -07:00
XhmikosR cfc9c85b32 Update devDependencies.
Only bundlesize is kept back for Node.js 10.x compatibility.
2018-07-06 12:39:13 +03:00
XhmikosR 907f9a7ae4 Update gems. 2018-07-06 12:19:17 +03:00
Martijn Cuppens 6f8d322f74 Remove .border-bottom & .border-top classes from examples 2018-07-05 22:42:01 +02:00
Johann-S 09d0c5de0c Merge pull request #26799 from Kirlovon/v4-dev
Fixed logo in README
2018-07-04 09:26:13 +02:00
Kirill Reunov 15a2eeb80f Fixed logo in README 2018-07-03 23:34:49 +03:00
Christian Oliff 35a75eb0d4 OS X is now macOS (#26796)
* OS X is now macOS

* Update browser-bugs.yml
2018-07-03 07:55:07 +01:00
Patrick H. Lauke 7b746028c2 Fix incorrect visibility utility description regarding screen readers (#26786) 2018-07-02 19:52:28 +01:00
Martijn Cuppens edc5597705 Add js maps & tweak docs 2018-07-02 09:49:45 +03:00
Supergibbs ddd33cd957 Support nuget contentFiles, used for some project types 2018-07-01 10:02:09 +03:00
XhmikosR 13b8b9f03a .browserslistrc: add not dead. 2018-07-01 09:56:22 +03:00
Johann-S e57a2f244b fix(tooltip): get tip on placement change 2018-06-25 16:54:14 +02:00
XhmikosR 4112df4125 Add broken-link-checker. 2018-06-25 16:54:06 +03:00
jakubhonisek 49e094619b feat(dropdown): add original click event 2018-06-25 15:29:34 +02:00
Mark Otto bca4ceacc7 dist 2018-06-24 13:13:42 -07:00
Christian Oliff 41ab1c6c9d Fixes Edge and IE label overlapping issue (#25919)
The 'Floating labels' example is only supported on Chrome, Safari and Firefox. On Edge and IE the label is displayed always and any text input overlaps the label which makes it unreadable.

The fix here targets Edge and IE and makes the form behave normally, the labels are hidden and the placeholder color is standard.
2018-06-24 13:11:39 -07:00
Mark Otto d78aac01d6 Update box-shadows on .custom-select (#26754)
- Fixes #25656 where custom selects had the wrong focus shadow
- Fixes #26668 where custom selects had no inset shadow (also closes #26572 which had the wrong form classes on the first example anyway)
2018-06-24 13:07:49 -07:00
Martijn Cuppens d61e3badfd Render inline svg like img (#25874) 2018-06-24 12:01:11 -07:00
XhmikosR a31b23b5ce Move eslint-plugin-compat to the extends array. 2018-06-24 01:45:29 +03:00
Mark Otto eadeab9d1c dist 2018-06-21 22:55:23 -07:00
Martijn Cuppens e59265c42d Remove disabled class from wrapper
`disabled` class is not needed for wrapper.
2018-06-21 18:38:22 +03:00
Martijn Cuppens 1719a2ca42 Update folder structure (#26729) 2018-06-21 18:20:03 +03:00
XhmikosR 29bff9fdd0 Change karma tests to run sequential.
I was getting port in use errors.
2018-06-21 18:02:20 +03:00
XhmikosR 71a37425c9 Update all devDependencies apart from bundlesize and babel.
Newer bundlesize versions still don't work with node.js 10.x.

babel has some bugs that we need to be fixed.
2018-06-21 18:02:20 +03:00
XhmikosR 0db176e44d Update gems. 2018-06-21 18:02:20 +03:00
XhmikosR 84ff56c36d Update package-lock.json with npm 6.3.1. 2018-06-21 18:02:20 +03:00
Martijn Cuppens 919d58e389 Remove inkscape data from brand svgs (#26708) 2018-06-21 16:51:16 +03:00
Martijn Cuppens 7b2372f353 Fix node_modules path (#26653) 2018-06-11 17:03:00 +03:00
sts-ryan-holton 1af5a30d02 Add additional wording to the Introduction section of Bootstrap docs about the bootstrap bundle js (#26688) 2018-06-11 16:14:02 +03:00
Ryan Worth a2920149f4 Negative Margins classes for custom col gutters
Feature request #26681
2018-06-07 16:39:58 +10:00
Christian Oliff 9c3146d0dd HTTPS link (#26663)
saves a redirect
2018-06-05 18:11:08 +01:00
XhmikosR abf5ab7546 Fix markdown code inside HTML code. (#26662) 2018-06-05 15:21:40 +03:00
Patrick H. Lauke 4f1bb98587 Limit .close hover/focus to non-disabled controls (#26654) 2018-06-03 18:25:17 +01:00
Johann-S a79b8aa16a refactor(plugins): query elements without jquery 2018-06-03 11:40:08 +02:00
Martijn Cuppens ffd31f9b8c Stricter stylelint rules 2018-06-02 13:29:44 +03:00
XhmikosR f20d0f43fd sw.js: change to a relative link for the workbox files.
This was broken after the docs refactoring.
2018-06-01 16:03:23 +03:00
Johann-S 96cbb58cb3 chore(bundlesize): increase bootstrap.js max size 2018-06-01 10:30:11 +02:00
Johann-S b1eb3fccfa refactor(plugins): improve how we query elements 2018-06-01 10:30:11 +02:00
XhmikosR 62cc0fda50 Generate safari-pinned-tab.svg again. 2018-06-01 10:42:21 +03:00
Johann-S cc61edfa8a fix(scrollspy): xss in target option 2018-06-01 09:10:25 +02:00
Johann-S 149096016f fix(collapse): xss in parent option 2018-06-01 09:10:25 +02:00
Johann-S 2d90d369bb fix(tooltip): xss in container option 2018-06-01 09:10:25 +02:00
marcosfreitas e3084c3842 Changed Node.js download page (#26638)
Link to the more user-friendly Node download page (rather than just the raw directory view)
2018-05-31 17:36:50 +01:00
Andres Galante e163d18b12 Fix inline labels with a custom select (#26615)
Add an sr-only class to the label on inline labels with a custom select
2018-05-31 10:02:14 +03:00
Christian Oliff 89a47c98b9 https link to editorconfig.org 2018-05-31 09:43:12 +03:00
XhmikosR 976aad0059 Remove the unused docs upload preview stuff. (#26599) 2018-05-27 11:44:29 +03:00
XhmikosR c2b13b9c78 Run coveralls only on Travis and only once. 2018-05-23 13:54:51 +03:00
XhmikosR d557215b5d Update package-lock.json. 2018-05-23 13:54:51 +03:00
Johann-S 9e5be2ed7d fix branch for coveralls badge 2018-05-23 13:54:51 +03:00
Johann-S 31cf1fdd8d Add coverall to follow our coverage 2018-05-23 10:03:09 +02:00
ysds 2ea0a9bba9 Add disabled bg color to disabled custom file 2018-05-23 01:43:53 +03:00
Martijn Cuppens 4dd65f0b38 Custom forms transition 2018-05-23 01:38:12 +03:00
XhmikosR c3da2c8f31 Update again. 2018-05-22 17:26:21 +03:00
Johann-S f2aab5ea99 fix(tooltip): remove useless unit test 2018-05-22 17:26:21 +03:00
Johann-S 0338b61eb6 chore(deps): update qunit and karma-qunit 2018-05-22 17:26:21 +03:00
XhmikosR 0873ab71c7 Update devDependencies and gems.
Downgrade bundlesize until they make brotli optional since it doesn't work with node.js 10.x yet.

So, babel, qunit/karma-qunit and bundle-size aren't the latest versions.
2018-05-22 17:26:21 +03:00
Patrick H. Lauke bea6154108 Fix/add more correct labels/descriptions for input group examples (#26551)
Among other things, closes https://github.com/twbs/bootstrap/issues/26548
2018-05-22 10:52:22 +01:00
Mark Otto b36599cba7 closes #26543, fixes #26542 2018-05-20 15:10:31 -07:00
domq 616ce9b75a Fix double-transition bug (#26452)
By applying the transition: CSS property only to classes that are
active during sliding, we avoid an unnecessary, non-zero-time
animation that although mostly invisible, does interfere with e.g.
z-index based parallax
2018-05-18 18:59:52 +03:00
Varunram Ganesh d6ee126713 [trivial] Rewording in tooltips. Closes #26467 (#26521) 2018-05-15 20:59:51 +01:00
ysds f42ef5fa69 fix(doc): typo in dropdowns.md 2018-05-15 11:33:29 +02:00
parammittal16 8cc6220161 Fix unused box-shadow class 2018-05-12 00:18:37 +05:30
parammittal16 afcbd65afb Fix box-shadow class with built in utility 2018-05-12 00:16:28 +05:30
ysds 788f3e6802 Fix z-index target (#26361) 2018-05-07 11:30:43 +03:00
Brandon e5e6d0c86d Fix heading levels (#26433)
H3 was used without preceding H2, breaking document flow.
2018-05-01 15:34:47 +01:00
Mark Otto 779ad9f174 Bump version to v4.1.1 2018-04-30 09:04:33 -07:00
Mark Otto 496311bf97 dist 2018-04-29 22:22:04 -07:00
Mark Otto 139e89235f Simplify custom file inner height for generated browse button 2018-04-29 17:02:38 -07:00
Constantin Ross 7c53a8a195 Update README.md 2018-04-29 16:34:48 -07:00
David De Sloovere 447f9f6968 Doc update - remove media-breakpoint-up(xs) (#26316)
* Doc update - remove media-breakpoint-up(xs)

If media-breakpoint-down(xl) is not listed, then media-breakpoint-up(xs) does not need to be listed either.
The above 4 media queries are now aligned with the 4 media-breakpoint-up mixins (just like their media-breakpoint-down counterparts).

* Improve media-breakpoint-up/down docs
2018-04-29 16:02:21 -07:00
XhmikosR c11132351e Add comment in docs JS files. 2018-04-27 10:22:58 +03:00
XhmikosR 30cb1a2715 Pass docs version to search form and switch to the new index.
Also, move the search code to a separate file.
2018-04-27 10:22:58 +03:00
Patrick H. Lauke b5988a4430 Change accordion example id (#26391)
for clarity/consistency with other similar examples
2018-04-26 15:51:54 +01:00
Varunram 4bc5cc149a Closes #26300: Add cursor pointer to carousel indicators 2018-04-23 21:55:45 -07:00
ysds 74057dcc8e Remove unnecessary resetting of left round (#26238) 2018-04-23 21:55:10 -07:00
Mark Otto 793698a6a9 add validation styles for .form-control-file (#26181) 2018-04-23 21:54:40 -07:00
nickg 755fdacd40 Replace reboot monospace hack with system font stack 2018-04-23 21:53:37 -07:00
ysds 3d0d5f1247 workaround for IE that check indicator does not appear (#25944) 2018-04-23 21:52:59 -07:00
Martijn Cuppens 0ee779b6fc Print color fix dark tables and dark theads (#26193) 2018-04-23 21:51:48 -07:00
XhmikosR 9faf8e8545 Update Jekyll to 3.8.0. (#26352) 2018-04-22 10:16:44 +03:00
Johann-S ee382915be detect test exceeded maximum duration on Sauce Labs 2018-04-19 15:19:34 +02:00
Mark Otto 1470e11ade typo 2018-04-17 10:30:16 -07:00
Mark Otto 7d8dc4f5b2 Be explicit in the docs for deprecating text-hide 2018-04-17 08:33:44 -07:00
XhmikosR 6199871d15 Update devDependencies. (#26322) 2018-04-17 15:32:08 +03:00
XhmikosR b88f073806 Update devDependencies. (#26309) 2018-04-16 13:15:56 +03:00
Alexander Rechsteiner 056e28d9e0 Suppress text-hide deprecation warning (#26242) 2018-04-16 09:45:07 +03:00
XhmikosR 555333a20e breadcrumb.md: Remove trailing space. 2018-04-16 09:37:58 +03:00
XhmikosR 5fd67a6f86 Bump version to 4.1.0 for remaining files. 2018-04-16 09:37:58 +03:00
Varunram Ganesh 31004582bf Resolve #26262: Add deprecated warning (#26292) 2018-04-16 09:27:06 +03:00
Patrick H. Lauke e000933c17 Remove dialog from the HTML5 shim style (#26269)
`<dialog>`, in browsers that support it, has user agent styles of `dialog { display:block; ...} dialog:not([open]) { display:none; }`
by forcing it to `display:block` in the shim, the dialog is shown even when closed. There's no clean way to shim this for non-supporting browsers,
but arguably these browsers would have further problems with pure `<dialog>` usage anyway, and it's up to authors to then use different elements/shims.
2018-04-16 00:25:39 +01:00
Varunram Ganesh 871e0838a4 [trivial] Correct typos (#26297) 2018-04-14 08:41:18 +01:00
Johann-S ba10b63c9d fix issue related to Object.keys and Dropdown issue 2018-04-13 18:59:30 +02:00
Swardu c3caf7ee4e Docs/examples: change links to Sass documentation and example.com to https 2018-04-12 11:56:33 +01:00
MietekN 418fd76ba9 modal use global scope for default 2018-04-12 11:21:10 +02:00
denisname 5be2cd3d6c Dropdowns display default value (#26272) 2018-04-12 09:42:36 +02:00
Laussel Loïc 5f546f5708 update README.md - debug search option is now in application.js (#26263) 2018-04-11 17:08:34 +03:00
ruedap ee1a22812b Fix incorrect value of Stylelint option (#26192) 2018-04-10 15:40:01 +03:00
XhmikosR ee91fdbf14 Update dependencies and gems (#26234) 2018-04-10 15:35:18 +03:00
Jonathan 24ba91b129 Fix incorrect class name (#26239)
Fixes #26235
2018-04-10 15:05:42 +03:00
Johann-S 0871d69ec9 v4 improve coverage (#25945)
* Improve code coverage for our Button plugin

* improve coverage for our Alert plugin

* test tooltip update method

* test update and dispose for dropdown

* increase code coverage requirements
2018-04-10 09:28:29 +02:00
XhmikosR 875ed0b975 Clean up globals.
Also, add a missing license header in build/workbox.js.
2018-04-09 22:44:22 +03:00
Varunram 87065772b1 Fix #25813 by adding extra columns to table 2018-03-12 13:38:09 +05:30
Juan Carlos González Cabrero a8b00ddc12 Reduce the width to prevent the modal fills the screen width 2017-01-28 18:26:55 +01:00
Juan Carlos González Cabrero 95dffb3279 Add new extra large size for modal containers 2017-01-28 18:26:55 +01:00
601 changed files with 54914 additions and 37466 deletions
+3 -7
View File
@@ -1,18 +1,14 @@
module.exports = {
presets: [
[
'@babel/env',
'@babel/preset-env',
{
loose: true,
modules: false,
exclude: ['transform-typeof-symbol']
bugfixes: true,
modules: false
}
]
],
plugins: [
process.env.PLUGINS && 'transform-es2015-modules-strip',
'@babel/proposal-object-rest-spread'
].filter(Boolean),
env: {
test: {
plugins: [ 'istanbul' ]
+13
View File
@@ -0,0 +1,13 @@
# https://github.com/browserslist/browserslist#readme
>= 1%
last 1 major version
not dead
Chrome >= 45
Firefox >= 38
Edge >= 12
Explorer >= 10
iOS >= 9
Safari >= 9
Android >= 4.4
Opera >= 30
+50
View File
@@ -0,0 +1,50 @@
{
"files": [
{
"path": "./dist/css/bootstrap-grid.css",
"maxSize": "7 kB"
},
{
"path": "./dist/css/bootstrap-grid.min.css",
"maxSize": "6.25 kB"
},
{
"path": "./dist/css/bootstrap-reboot.css",
"maxSize": "2 kB"
},
{
"path": "./dist/css/bootstrap-reboot.min.css",
"maxSize": "2 kB"
},
{
"path": "./dist/css/bootstrap.css",
"maxSize": "26 kB"
},
{
"path": "./dist/css/bootstrap.min.css",
"maxSize": "23.75 kB"
},
{
"path": "./dist/js/bootstrap.bundle.js",
"maxSize": "48 kB"
},
{
"path": "./dist/js/bootstrap.bundle.min.js",
"maxSize": "21.75 kB"
},
{
"path": "./dist/js/bootstrap.js",
"maxSize": "25.5 kB"
},
{
"path": "./dist/js/bootstrap.min.js",
"maxSize": "15 kB"
}
],
"ci": {
"trackBranches": [
"main",
"v4-dev"
]
}
}
+3 -2
View File
@@ -1,5 +1,6 @@
**/*.min.js
**/dist/
**/vendor/
/_gh_pages/
/package.js
/_site/
/js/coverage/
/site/static/sw.js
+68 -227
View File
@@ -1,235 +1,76 @@
{
"root": true,
"parser": "babel-eslint",
"env": {
"browser": true,
"es6": true
},
"extends": "eslint:recommended",
"plugins": ["compat"],
"extends": [
"plugin:import/errors",
"plugin:import/warnings",
"plugin:unicorn/recommended",
"xo",
"xo/browser"
],
"rules": {
// Possible Errors
"no-await-in-loop": "error",
"no-extra-parens": "error",
"no-prototype-builtins": "error",
"no-template-curly-in-string": "error",
"compat/compat": "error",
"valid-jsdoc": "error",
// Best Practices
"accessor-pairs": "error",
"array-callback-return": "error",
"block-scoped-var": "error",
"class-methods-use-this": "off",
"complexity": "error",
"consistent-return": "error",
"curly": "error",
"default-case": "error",
"dot-location": ["error", "property"],
"dot-notation": "error",
"eqeqeq": "error",
"guard-for-in": "error",
"no-alert": "error",
"no-caller": "error",
"no-div-regex": "error",
"no-else-return": "error",
"no-empty-function": "error",
"no-eq-null": "error",
"no-eval": "error",
"no-extend-native": "error",
"no-extra-bind": "error",
"no-extra-label": "error",
"no-floating-decimal": "error",
"no-implicit-coercion": "error",
"no-implicit-globals": "error",
"no-implied-eval": "error",
"no-invalid-this": "off",
"no-iterator": "error",
"no-labels": "error",
"no-lone-blocks": "error",
"no-loop-func": "error",
"no-magic-numbers": ["error", {
"ignore": [-1, 0, 1],
"ignoreArrayIndexes": true
}
],
"no-multi-spaces": ["error", {
"ignoreEOLComments": true,
"exceptions": {
"AssignmentExpression": true,
"ArrowFunctionExpression": true,
"CallExpression": true,
"VariableDeclarator": true
}
}
],
"no-multi-str": "error",
"no-new": "error",
"no-new-func": "error",
"no-new-wrappers": "error",
"no-octal-escape": "error",
"no-param-reassign": "off",
"no-proto": "error",
"no-restricted-properties": "error",
"no-return-assign": "error",
"no-return-await": "error",
"no-script-url": "error",
"no-self-compare": "error",
"no-sequences": "error",
"no-throw-literal": "error",
"no-unmodified-loop-condition": "error",
"no-unused-expressions": "error",
"no-useless-call": "error",
"no-useless-concat": "error",
"no-useless-return": "error",
"no-void": "error",
"no-warning-comments": "off",
"no-with": "error",
"prefer-promise-reject-errors": "error",
"radix": "error",
"require-await": "error",
"vars-on-top": "error",
"wrap-iife": "error",
"yoda": "error",
// Strict Mode
"strict": "error",
// Variables
"init-declarations": "off",
"no-catch-shadow": "error",
"no-label-var": "error",
"no-restricted-globals": "error",
"no-shadow": "off",
"no-shadow-restricted-names": "error",
"no-undef-init": "error",
"no-undefined": "error",
"no-use-before-define": "off",
// Node.js and CommonJS
"callback-return": "off",
"global-require": "error",
"handle-callback-err": "error",
"no-mixed-requires": "error",
"no-new-require": "error",
"no-path-concat": "error",
"no-process-env": "error",
"no-process-exit": "error",
"no-restricted-modules": "error",
"no-sync": "error",
// Stylistic Issues
"array-bracket-spacing": "error",
"block-spacing": "error",
"brace-style": "error",
"camelcase": "error",
"arrow-body-style": "off",
"capitalized-comments": "off",
"comma-dangle": "error",
"comma-spacing": "error",
"comma-style": "error",
"computed-property-spacing": "error",
"consistent-this": "error",
"eol-last": "error",
"func-call-spacing": "error",
"func-name-matching": "error",
"func-names": "off",
"func-style": ["error", "declaration"],
"id-blacklist": "error",
"id-length": "off",
"id-match": "error",
"indent": ["error", 2, { "SwitchCase": 1 }],
"jsx-quotes": "error",
"key-spacing": "off",
"keyword-spacing": "error",
"linebreak-style": ["error", "unix"],
"line-comment-position": "off",
"lines-around-comment": "off",
"lines-around-directive": "error",
"max-depth": ["error", 10],
"max-len": "off",
"max-lines": "off",
"max-nested-callbacks": "error",
"max-params": "off",
"max-statements": "off",
"max-statements-per-line": "error",
"multiline-ternary": "off",
"new-cap": ["error", { "capIsNewExceptionPattern": "$.*" }],
"newline-after-var": "off",
"newline-per-chained-call": ["error", { "ignoreChainWithDepth": 5 }],
"new-parens": "error",
"no-array-constructor": "error",
"no-bitwise": "error",
"no-continue": "off",
"no-inline-comments": "off",
"no-lonely-if": "error",
"comma-dangle": [
"error",
"never"
],
"indent": [
"error",
2,
{
"MemberExpression": "off",
"SwitchCase": 1
}
],
"max-params": [
"warn",
5
],
"new-cap": [
"error",
{
"properties": false
}
],
"no-console": "error",
"no-mixed-operators": "off",
"no-multi-assign": "error",
"no-multiple-empty-lines": "error",
"nonblock-statement-body-position": "error",
"no-negated-condition": "off",
"no-nested-ternary": "error",
"no-new-object": "error",
"no-plusplus": "off",
"no-restricted-syntax": "error",
"no-tabs": "error",
"no-ternary": "off",
"no-trailing-spaces": "error",
"no-underscore-dangle": "off",
"no-unneeded-ternary": "error",
"no-whitespace-before-property": "error",
"object-curly-newline": ["error", { "minProperties": 1 }],
"object-curly-spacing": ["error", "always"],
"object-property-newline": "error",
"one-var": ["error", "never"],
"one-var-declaration-per-line": "error",
"operator-assignment": "error",
"operator-linebreak": "error",
"padded-blocks": ["error", "never"],
"padding-line-between-statements": "off",
"quote-props": ["error", "as-needed"],
"quotes": ["error", "single"],
"require-jsdoc": "off",
"semi": ["error", "never"],
"semi-spacing": "error",
"sort-keys": "off",
"sort-vars": "error",
"space-before-blocks": "error",
"space-before-function-paren": ["error", {
"anonymous": "always",
"named": "never"
}],
"space-in-parens": "error",
"space-infix-ops": "error",
"space-unary-ops": "error",
"spaced-comment": "error",
"template-tag-spacing": "error",
"unicode-bom": "error",
"wrap-regex": "off",
// ECMAScript 6
"arrow-body-style": ["error", "as-needed"],
"arrow-parens": "error",
"arrow-spacing": "error",
"generator-star-spacing": "error",
"no-confusing-arrow": "error",
"no-duplicate-imports": "error",
"no-restricted-imports": "error",
"no-useless-computed-key": "error",
"no-useless-constructor": "error",
"no-useless-rename": "error",
"no-var": "error",
"object-shorthand": "error",
"prefer-arrow-callback": "error",
"prefer-const": "error",
"prefer-destructuring": "off",
"prefer-numeric-literals": "error",
"prefer-rest-params": "error",
"prefer-spread": "error",
"prefer-template": "error",
"rest-spread-spacing": "error",
"sort-imports": "error",
"symbol-description": "error",
"template-curly-spacing": "error",
"yield-star-spacing": "error"
"object-curly-spacing": [
"error",
"always"
],
"operator-linebreak": [
"error",
"after"
],
"semi": [
"error",
"never"
],
"unicorn/consistent-function-scoping": "off",
"unicorn/explicit-length-check": "off",
"unicorn/no-array-callback-reference": "off",
"unicorn/no-array-for-each": "off",
"unicorn/no-array-method-this-argument": "off",
"unicorn/no-for-loop": "off",
"unicorn/no-null": "off",
"unicorn/no-unused-properties": "error",
"unicorn/no-useless-undefined": "off",
"unicorn/numeric-separators-style": "off",
"unicorn/prefer-array-find": "off",
"unicorn/prefer-array-flat": "off",
"unicorn/prefer-dom-node-append": "off",
"unicorn/prefer-dom-node-dataset": "off",
"unicorn/prefer-dom-node-remove": "off",
"unicorn/prefer-includes": "off",
"unicorn/prefer-math-trunc": "off",
"unicorn/prefer-module": "off",
"unicorn/prefer-number-properties": "off",
"unicorn/prefer-optional-catch-binding": "off",
"unicorn/prefer-prototype-methods": "off",
"unicorn/prefer-query-selector": "off",
"unicorn/prefer-reflect-apply": "off",
"unicorn/prefer-set-has": "off",
"unicorn/prevent-abbreviations": "off"
}
}
+3 -11
View File
@@ -1,16 +1,8 @@
# Enforce Unix newlines
*.css text eol=lf
*.html text eol=lf
*.js text eol=lf
*.json text eol=lf
*.md text eol=lf
*.rb text eol=lf
*.scss text eol=lf
*.svg text eol=lf
*.txt text eol=lf
*.yml text eol=lf
* text=auto eol=lf
# Don't diff or textually merge source maps
*.map binary
*.map binary
bootstrap.css linguist-vendored=false
bootstrap.js linguist-vendored=false
+3
View File
@@ -0,0 +1,3 @@
*.js @twbs/js-review
*.css @twbs/css-review
*.scss @twbs/css-review
+31 -42
View File
@@ -18,8 +18,9 @@ the preferred channel for [bug reports](#bug-reports), [features requests](#feat
and [submitting pull requests](#pull-requests), but please respect the following
restrictions:
* Please **do not** use the issue tracker for personal support requests. Stack
Overflow ([`bootstrap-4`](https://stackoverflow.com/questions/tagged/bootstrap-4) tag), [Slack](https://bootstrap-slack.herokuapp.com/) or [IRC](README.md#community) are better places to get help.
* Please **do not** use the issue tracker for personal support requests. Stack
Overflow ([`bootstrap-4`](https://stackoverflow.com/questions/tagged/bootstrap-4) tag),
[Slack](https://bootstrap-slack.herokuapp.com/) or [IRC](/README.md#community) are better places to get help.
* Please **do not** derail or troll issues. Keep the discussion on topic and
respect the opinions of others.
@@ -57,15 +58,14 @@ Good bug reports are extremely helpful, so thanks!
Guidelines for bug reports:
0. **Validate and lint your code** &mdash; [validate your HTML](https://html5.validator.nu/)
and [lint your HTML](https://github.com/twbs/bootlint) to ensure your
0. **[validate your HTML](https://html5.validator.nu/)** to ensure your
problem isn't caused by a simple error in your own code.
1. **Use the GitHub issue search** &mdash; check if the issue has already been
reported.
2. **Check if the issue has been fixed** &mdash; try to reproduce it using the
latest `master` or development branch in the repository.
latest `master` or `v4-dev` branch in the repository.
3. **Isolate the problem** &mdash; ideally create a [reduced test
case](https://css-tricks.com/reduced-test-cases/) and a live example.
@@ -102,16 +102,12 @@ Example:
Sometimes bugs reported to us are actually caused by bugs in the browser(s) themselves, not bugs in Bootstrap per se.
When feasible, we aim to report such upstream bugs to the relevant browser vendor(s), and then list them on our [Wall of Browser Bugs](https://getbootstrap.com/browser-bugs/) and [document them in MDN](https://developer.mozilla.org/en-US/docs/Web).
| Vendor(s) | Browser(s) | Rendering engine | Bug reporting website(s) | Notes |
| ------------- | ---------------------------- | ---------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| Mozilla | Firefox | Gecko | https://bugzilla.mozilla.org/enter_bug.cgi | "Core" is normally the right product option to choose. |
| Apple | Safari | WebKit | https://bugs.webkit.org/enter_bug.cgi?product=WebKit <br> https://bugreport.apple.com/ | In Apple's bug reporter, choose "Safari" as the product. |
| Google, Opera | Chrome, Chromium, Opera v15+ | Blink | https://bugs.chromium.org/p/chromium/issues/list | Click the "New issue" button. |
| Microsoft | Edge | EdgeHTML | https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/ | |
### Issues bots
[@twbs-lmvtfy](https://github.com/twbs-lmvtfy) is a Bootstrap bot that hangs out in our GitHub issue tracker and automatically checks for HTML validation errors in live examples (e.g. jsFiddles, JS Bins, Bootplys, Plunks, CodePens, etc.) posted in issue comments. If it finds any errors, it will post a follow-up comment on the issue and point out the errors. If this happens with an example you've posted, please fix the errors and post an updated live example. If you opened a bug report, please check whether the bug still occurs with your revised, valid live example. If the bug no longer occurs, it was probably due to your invalid HTML rather than something in Bootstrap and we'd appreciate it if you could close out the GitHub issue.
| Vendor(s) | Browser(s) | Rendering engine | Bug reporting website(s) | Notes |
| ------------- | ---------------------------- | ---------------- | ------------------------------------------------------ | -------------------------------------------------------- |
| Mozilla | Firefox | Gecko | https://bugzilla.mozilla.org/enter_bug.cgi | "Core" is normally the right product option to choose. |
| Apple | Safari | WebKit | https://bugs.webkit.org/enter_bug.cgi?product=WebKit | In Apple's bug reporter, choose "Safari" as the product. |
| Google, Opera | Chrome, Chromium, Opera v15+ | Blink | https://bugs.chromium.org/p/chromium/issues/list | Click the "New issue" button. |
| Microsoft | Edge | Blink | https://developer.microsoft.com/en-us/microsoft-edge/ | Go to "Help > Send Feedback" from the browser |
## Feature requests
@@ -128,23 +124,25 @@ Good pull requests—patches, improvements, new features—are a fantastic
help. They should remain focused in scope and avoid containing unrelated
commits.
**Please ask first** before embarking on any significant pull request (e.g.
**Please ask first** before embarking on any **significant** pull request (e.g.
implementing features, refactoring code, porting to a different language),
otherwise you risk spending a lot of time working on something that the
project's developers might not want to merge into the project.
project's developers might not want to merge into the project. For trivial
things, or things that don't require a lot of your time, you can go ahead and
make a PR.
Please adhere to the [coding guidelines](#code-guidelines) used throughout the
project (indentation, accurate comments, etc.) and any other requirements
(such as test coverage).
**Do not edit `bootstrap.css`, or `bootstrap.js`
directly!** Those files are automatically generated. You should edit the
source files in [`/bootstrap/scss/`](https://github.com/twbs/bootstrap/tree/master/scss)
and/or [`/bootstrap/js/`](https://github.com/twbs/bootstrap/tree/master/js) instead.
**Do not edit `bootstrap.css` or `bootstrap.js`, and do not commit
any dist files (`dist/` or `js/dist`).** Those files are automatically generated by our build tools. You should
edit the source files in [`/bootstrap/scss/`](https://github.com/twbs/bootstrap/tree/v4-dev/scss)
and/or [`/bootstrap/js/src/`](https://github.com/twbs/bootstrap/tree/v4-dev/js/src) instead.
Similarly, when contributing to Bootstrap's documentation, you should edit the
documentation source files in
[the `/bootstrap/docs/` directory of the `master` branch](https://github.com/twbs/bootstrap/tree/master/docs).
[the `/bootstrap/site/content/docs/` directory of the `v4-dev` branch](https://github.com/twbs/bootstrap/tree/v4-dev/site/content/docs).
**Do not edit the `gh-pages` branch.** That branch is generated from the
documentation source files and is managed separately by the Bootstrap Core Team.
@@ -166,8 +164,8 @@ included in the project:
2. If you cloned a while ago, get the latest changes from upstream:
```bash
git checkout master
git pull upstream master
git checkout v4-dev
git pull upstream v4-dev
```
3. Create a new topic branch (off the main project development branch) to
@@ -186,7 +184,7 @@ included in the project:
5. Locally merge (or rebase) the upstream development branch into your topic branch:
```bash
git pull [--rebase] upstream master
git pull [--rebase] upstream v4-dev
```
6. Push your topic branch up to your fork:
@@ -196,29 +194,20 @@ included in the project:
```
7. [Open a Pull Request](https://help.github.com/articles/about-pull-requests/)
with a clear title and description against the `master` branch.
with a clear title and description against the `v4-dev` branch.
**IMPORTANT**: By submitting a patch, you agree to allow the project owners to
license your work under the terms of the [MIT License](LICENSE) (if it
license your work under the terms of the [MIT License](../LICENSE) (if it
includes code changes) and under the terms of the
[Creative Commons Attribution 3.0 Unported License](docs/LICENSE)
[Creative Commons Attribution 3.0 Unported License](https://creativecommons.org/licenses/by/3.0/)
(if it includes documentation changes).
### Pull request bots
[@twbs-rorschach](https://github.com/twbs-rorschach) is a Bootstrap bot that hangs out in our GitHub issue tracker and automatically checks all pull requests for a few simple common mistakes. It's possible that Rorschach might leave a comment on your pull request and then close it. If that happens, simply fix the problem(s) mentioned in the comment (there should be link(s) in the comment explaining the problem(s) in detail) and then either:
* Push the revised version to your pull request's branch and post a comment on the pull request saying that you've fixed the problem(s). One of the Bootstrap Core Team members will then come along and reopen your pull request.
* Or you can just open a new pull request for your revised version.
[@twbs-savage](https://github.com/twbs-savage) is a Bootstrap bot that automatically runs cross-browser tests (via [Sauce](https://saucelabs.com/) and Travis CI) on JavaScript pull requests. Savage will leave a comment on pull requests stating whether cross-browser JS tests passed or failed, with a link to the full Travis build details. If your pull request fails, check the Travis log to see which browser + OS combinations failed. Each browser test in the Travis log includes a link to a Sauce page with details about the test. On those details pages, you can watch a screencast of the test run to see exactly which unit tests failed.
## Code guidelines
### HTML
[Adhere to the Code Guide.](http://codeguide.co/#html)
[Adhere to the Code Guide.](https://codeguide.co/#html)
- Use tags and elements appropriate for an HTML5 doctype (e.g., self-closing tags).
- Use CDNs and HTTPS for third-party JS when possible. We don't use protocol-relative URLs in this case because they break when viewing the page locally via `file://`.
@@ -226,10 +215,10 @@ includes code changes) and under the terms of the
### CSS
[Adhere to the Code Guide.](http://codeguide.co/#css)
[Adhere to the Code Guide.](https://codeguide.co/#css)
- When feasible, default color palettes should comply with [WCAG color contrast guidelines](https://www.w3.org/TR/WCAG20/#visual-audio-contrast).
- Except in rare cases, don't remove default `:focus` styles (via e.g. `outline: none;`) without providing alternative styles. See [this A11Y Project post](https://a11yproject.com/posts/never-remove-css-outlines/) for more details.
- Except in rare cases, don't remove default `:focus` styles (via e.g. `outline: none;`) without providing alternative styles. See [this A11Y Project post](https://www.a11yproject.com/posts/2013-01-25-never-remove-css-outlines/) for more details.
### JS
@@ -246,7 +235,7 @@ Run `npm run test` before committing to ensure your changes follow our coding st
## License
By contributing your code, you agree to license your contribution under the [MIT License](LICENSE).
By contributing to the documentation, you agree to license your contribution under the [Creative Commons Attribution 3.0 Unported License](docs/LICENSE).
By contributing your code, you agree to license your contribution under the [MIT License](../LICENSE).
By contributing to the documentation, you agree to license your contribution under the [Creative Commons Attribution 3.0 Unported License](https://creativecommons.org/licenses/by/3.0/).
Prior to v3.1.0, Bootstrap's code was released under the Apache License v2.0.
-11
View File
@@ -1,11 +0,0 @@
Before opening:
- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
- [Validate](https://html5.validator.nu/) and [lint](https://github.com/twbs/bootlint#in-the-browser) any HTML to avoid common problems
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md)
Bug reports must include:
- Operating system and version (Windows, Mac OS X, Android, iOS, Win10 Mobile)
- Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
- [Reduced test case](https://css-tricks.com/reduced-test-cases/) and suggested fix using [CodePen](https://codepen.io/) or [JS Bin](https://jsbin.com/)
+20
View File
@@ -0,0 +1,20 @@
---
name: Bug report
about: Tell us about a bug you may have identified in Bootstrap.
title: ''
labels: ''
assignees: ''
---
Before opening:
- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
- [Validate](https://html5.validator.nu/) any HTML to avoid common problems
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/v4-dev/.github/CONTRIBUTING.md)
Bug reports must include:
- Operating system and version (Windows, macOS, Android, iOS)
- Browser and version (Chrome, Firefox, Safari, Internet Explorer, Microsoft Edge, Opera, Android Browser)
- A [reduced test case](https://css-tricks.com/reduced-test-cases/) or suggested fix using [CodePen](https://codepen.io/) or [JS Bin](https://jsbin.com/)
@@ -1,7 +1,16 @@
---
name: Feature request
about: Suggest an idea for a new feature in Bootstrap.
title: ''
labels: feature
assignees: ''
---
Before opening:
- [Search for duplicate or closed issues](https://github.com/twbs/bootstrap/issues?utf8=%E2%9C%93&q=is%3Aissue)
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md)
- Read the [contributing guidelines](https://github.com/twbs/bootstrap/blob/v4-dev/.github/CONTRIBUTING.md)
Feature requests must include:
+1 -1
View File
@@ -7,5 +7,5 @@ See the [contributing guidelines](CONTRIBUTING.md) for sharing bug reports.
For general troubleshooting or help getting started:
- Join [the official Slack room](https://bootstrap-slack.herokuapp.com/).
- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
- Chat with fellow Bootstrappers in IRC. On the `irc.libera.chat` server, in the `#bootstrap` channel.
- Ask and explore Stack Overflow with the [`bootstrap-4`](https://stackoverflow.com/questions/tagged/bootstrap-4) tag.
+37
View File
@@ -0,0 +1,37 @@
name: BrowserStack
on:
push:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
browserstack:
runs-on: ubuntu-latest
if: github.repository == 'twbs/bootstrap' && (!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]'))
timeout-minutes: 30
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ env.NODE }}"
cache: npm
- name: Install npm dependencies
run: npm ci
- name: Run dist
run: npm run dist
- name: Run BrowserStack tests
run: npm run js-test-cloud
env:
BROWSER_STACK_ACCESS_KEY: "${{ secrets.BROWSER_STACK_ACCESS_KEY }}"
BROWSER_STACK_USERNAME: "${{ secrets.BROWSER_STACK_USERNAME }}"
+38
View File
@@ -0,0 +1,38 @@
name: Bundlewatch
on:
push:
branches-ignore:
- "dependabot/**"
pull_request:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
bundlewatch:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ env.NODE }}"
cache: npm
- name: Install npm dependencies
run: npm ci
- name: Run dist
run: npm run dist
- name: Run bundlewatch
run: npm run bundlewatch
env:
BUNDLEWATCH_GITHUB_TOKEN: "${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }}"
CI_BRANCH_BASE: v4-dev
+38
View File
@@ -0,0 +1,38 @@
name: "CodeQL"
on:
push:
branches:
- main
- v4-dev
- "!dependabot/**"
pull_request:
# The branches below must be a subset of the branches above
branches:
- main
- v4-dev
- "!dependabot/**"
schedule:
- cron: "0 2 * * 5"
workflow_dispatch:
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: "javascript"
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
+32
View File
@@ -0,0 +1,32 @@
name: CSS
on:
push:
branches-ignore:
- "dependabot/**"
pull_request:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
css:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ env.NODE }}"
cache: npm
- name: Install npm dependencies
run: npm ci
- name: Build CSS
run: npm run css
+31
View File
@@ -0,0 +1,31 @@
name: CSS (Dart Sass)
on:
push:
branches-ignore:
- "dependabot/**"
pull_request:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
css:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ env.NODE }}"
- name: Build CSS with Dart Sass
run: |
npx --package sass@latest sass --version
npx --package sass@latest sass --style expanded --source-map --embed-sources --no-error-css scss/:dist-sass/css/
ls -Al dist-sass/css
+45
View File
@@ -0,0 +1,45 @@
name: Docs
on:
push:
branches-ignore:
- "dependabot/**"
pull_request:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
docs:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ env.NODE }}"
cache: npm
- run: java -version
- name: Install npm dependencies
run: npm ci
- name: Build docs
run: npm run docs-build
- name: Validate HTML
run: npm run docs-vnu
- name: Run linkinator
uses: JustinBeckwith/linkinator-action@v1
with:
paths: _site
recurse: true
verbosity: error
skip: "^(?!http://localhost)"
+42
View File
@@ -0,0 +1,42 @@
name: JS Tests
on:
push:
branches-ignore:
- "dependabot/**"
pull_request:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
run:
name: JS Tests
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE }}
cache: npm
- name: Install npm dependencies
run: npm ci
- name: Run dist
run: npm run js
- name: Run JS tests
run: npm run js-test
- name: Run Coveralls
uses: coverallsapp/github-action@1.1.3
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
path-to-lcov: "./js/coverage/lcov.info"
+32
View File
@@ -0,0 +1,32 @@
name: Lint
on:
push:
branches-ignore:
- "dependabot/**"
pull_request:
workflow_dispatch:
env:
FORCE_COLOR: 2
NODE: 16
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ env.NODE }}"
cache: npm
- name: Install npm dependencies
run: npm ci
- name: Lint
run: npm run lint
+9 -14
View File
@@ -1,12 +1,8 @@
# Ignore docs files
_gh_pages
_site
# Ignore ruby files
.ruby-version
.bundle
vendor/cache
vendor/bundle
/_site/
# Hugo files
/resources/
/.hugo_build.lock
# Numerous always-ignore extensions
*.diff
@@ -33,15 +29,14 @@ vendor/bundle
*.sublime-workspace
nbproject
Thumbs.db
/.vscode/
# Local Netlify folder
.netlify
# Komodo
.komodotools
*.komodoproject
# Jekyll metadata and extra config file for `github` script
docs/.jekyll-metadata
twbsconfig.yml
# Folders to ignore
node_modules
js/coverage
/js/coverage/
/node_modules/
+2 -1
View File
@@ -1,4 +1,5 @@
**/*.min.css
**/dist/
**/vendor/
/_gh_pages/
/_site/
/js/coverage/
+12 -266
View File
@@ -1,276 +1,22 @@
{
"extends": ["stylelint-config-standard", "stylelint-config-recommended-scss"],
"plugins": [
"stylelint-order"
"extends": [
"stylelint-config-twbs-bootstrap"
],
"rules": {
"at-rule-empty-line-before": [null, {
"except": ["first-nested"]
}],
"at-rule-name-space-after": "always",
"at-rule-no-vendor-prefix": true,
"at-rule-semicolon-space-before": "never",
"block-closing-brace-empty-line-before": null,
"block-closing-brace-newline-after": null,
"block-opening-brace-space-before": null,
"color-named": "never",
"declaration-block-semicolon-newline-after": "always-multi-line",
"declaration-block-semicolon-newline-before": "never-multi-line",
"declaration-block-semicolon-space-after": "always-single-line",
"declaration-empty-line-before": null,
"declaration-no-important": true,
"font-family-name-quotes": "always-where-recommended",
"font-weight-notation": "numeric",
"function-url-no-scheme-relative": true,
"function-url-quotes": "always",
"length-zero-no-unit": true,
"max-empty-lines": 2,
"max-line-length": null,
"media-feature-name-no-vendor-prefix": true,
"media-feature-parentheses-space-inside": "never",
"media-feature-range-operator-space-after": "always",
"media-feature-range-operator-space-before": "never",
"no-descending-specificity": null,
"no-duplicate-selectors": true,
"number-leading-zero": "never",
"media-feature-name-no-unknown": [true, {
"ignoreMediaFeatureNames": ["prefers-reduced-motion"]
}],
"order/properties-order": [
"position",
"top",
"right",
"bottom",
"left",
"z-index",
"box-sizing",
"display",
"flex",
"flex-align",
"flex-basis",
"flex-direction",
"flex-wrap",
"flex-flow",
"flex-shrink",
"flex-grow",
"flex-order",
"flex-pack",
"align-content",
"align-items",
"align-self",
"justify-content",
"order",
"float",
"width",
"min-width",
"max-width",
"height",
"min-height",
"max-height",
"padding",
"padding-top",
"padding-right",
"padding-bottom",
"padding-left",
"margin",
"margin-top",
"margin-right",
"margin-bottom",
"margin-left",
"overflow",
"overflow-x",
"overflow-y",
"-webkit-overflow-scrolling",
"-ms-overflow-x",
"-ms-overflow-y",
"-ms-overflow-style",
"columns",
"column-count",
"column-fill",
"column-gap",
"column-rule",
"column-rule-width",
"column-rule-style",
"column-rule-color",
"column-span",
"column-width",
"orphans",
"widows",
"clip",
"clear",
"font",
"font-family",
"font-size",
"font-style",
"font-weight",
"font-variant",
"font-size-adjust",
"font-stretch",
"font-effect",
"font-emphasize",
"font-emphasize-position",
"font-emphasize-style",
"font-smooth",
"src",
"hyphens",
"line-height",
"color",
"text-align",
"text-align-last",
"text-emphasis",
"text-emphasis-color",
"text-emphasis-style",
"text-emphasis-position",
"text-decoration",
"text-indent",
"text-justify",
"text-outline",
"-ms-text-overflow",
"text-overflow",
"text-overflow-ellipsis",
"text-overflow-mode",
"text-shadow",
"text-transform",
"text-wrap",
"-webkit-text-size-adjust",
"-ms-text-size-adjust",
"letter-spacing",
"-ms-word-break",
"word-break",
"word-spacing",
"-ms-word-wrap",
"word-wrap",
"overflow-wrap",
"tab-size",
"white-space",
"vertical-align",
"direction",
"unicode-bidi",
"list-style",
"list-style-position",
"list-style-type",
"list-style-image",
"pointer-events",
"-ms-touch-action",
"touch-action",
"cursor",
"visibility",
"zoom",
"table-layout",
"empty-cells",
"caption-side",
"border-spacing",
"border-collapse",
"content",
"quotes",
"counter-reset",
"counter-increment",
"resize",
"user-select",
"nav-index",
"nav-up",
"nav-right",
"nav-down",
"nav-left",
"background",
"background-color",
"background-image",
"filter",
"background-repeat",
"background-attachment",
"background-position",
"background-position-x",
"background-position-y",
"background-clip",
"background-origin",
"background-size",
"border",
"border-color",
"border-style",
"border-width",
"border-top",
"border-top-color",
"border-top-style",
"border-top-width",
"border-right",
"border-right-color",
"border-right-style",
"border-right-width",
"border-bottom",
"border-bottom-color",
"border-bottom-style",
"border-bottom-width",
"border-left",
"border-left-color",
"border-left-style",
"border-left-width",
"declaration-property-value-disallowed-list": {
"border": "none",
"outline": "none"
},
"function-disallowed-list": [
"calc"
],
"property-disallowed-list": [
"border-radius",
"border-top-left-radius",
"border-top-right-radius",
"border-bottom-right-radius",
"border-bottom-left-radius",
"border-image",
"border-image-source",
"border-image-slice",
"border-image-width",
"border-image-outset",
"border-image-repeat",
"outline",
"outline-width",
"outline-style",
"outline-color",
"outline-offset",
"box-shadow",
"opacity",
"-ms-interpolation-mode",
"page-break-after",
"page-break-before",
"page-break-inside",
"transition",
"transition-delay",
"transition-timing-function",
"transition-duration",
"transition-property",
"transform",
"transform-origin",
"perspective",
"appearance",
"animation",
"animation-name",
"animation-duration",
"animation-play-state",
"animation-timing-function",
"animation-delay",
"animation-iteration-count",
"animation-direction",
"animation-fill-mode",
"fill",
"stroke"
],
"property-no-vendor-prefix": true,
"rule-empty-line-before": null,
"scss/dollar-variable-default": [true, { "ignore": "local" }],
"selector-attribute-quotes": "always",
"selector-list-comma-newline-after": "always",
"selector-list-comma-newline-before": "never-multi-line",
"selector-list-comma-space-after": "always-single-line",
"selector-list-comma-space-before": "never-single-line",
"selector-max-attribute": 2,
"selector-max-class": 4,
"selector-max-combinators": 4,
"selector-max-compound-selectors": 4,
"selector-max-empty-lines": 1,
"selector-max-id": 0,
"selector-max-specificity": null,
"selector-max-type": 2,
"selector-max-universal": 1,
"selector-no-qualifying-type": true,
"selector-no-vendor-prefix": true,
"string-quotes": "double",
"value-keyword-case": "lower",
"value-list-comma-newline-after": "never-multi-line",
"value-list-comma-newline-before": "never-multi-line",
"value-list-comma-space-after": "always",
"value-no-vendor-prefix": true
"transition"
]
}
}
-34
View File
@@ -1,34 +0,0 @@
sudo: required
dist: trusty
addons:
chrome: stable
language: node_js
git:
depth: 3
node_js:
- "6"
- "8"
before_install:
- if [[ `npm -v` != 5* ]]; then npm install -g npm@5; fi
install:
- bundle install --deployment --jobs=3 --retry=3
- npm install
after_success:
- if [ "$TRAVIS_REPO_SLUG" = twbs-savage/bootstrap ]; then npm run docs-upload-preview; fi
stages:
- test
- name: browser
if: type = push
jobs:
include:
- stage: browser
node_js: 8
script: if ! git log --format=%B --no-merges -n 1 | grep '\[skip browser\]'; then npm test && npm run js-test-cloud; fi
cache:
directories:
- node_modules
- vendor/bundle
notifications:
slack: heybb:iz4wwosL0N0EdaX1gvgkU0NH
webhooks:
- http://savage.twbsapps.com/savage/travis
+1 -4
View File
@@ -40,7 +40,4 @@ Project maintainers who do not follow or enforce the Code of Conduct in good fai
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [https://www.contributor-covenant.org/version/1/4/code-of-conduct.html][version]
[homepage]: https://www.contributor-covenant.org/
[version]: https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org/), version 1.4, available at <https://www.contributor-covenant.org/version/1/4/code-of-conduct/>
-8
View File
@@ -1,8 +0,0 @@
source 'https://rubygems.org'
group :development, :test do
gem 'jekyll', '~> 3.7.0'
gem 'jekyll-redirect-from', '~> 0.13.0'
gem 'jekyll-sitemap', '~> 1.2.0'
gem 'jekyll-toc', '~> 0.5.1'
end
-80
View File
@@ -1,80 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
colorator (1.1.0)
concurrent-ruby (1.0.5)
em-websocket (0.5.1)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.5)
eventmachine (1.2.5-x64-mingw32)
ffi (1.9.23)
ffi (1.9.23-x64-mingw32)
forwardable-extended (2.6.0)
http_parser.rb (0.6.0)
i18n (0.9.5)
concurrent-ruby (~> 1.0)
jekyll (3.7.3)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 0.7)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 2.0)
kramdown (~> 1.14)
liquid (~> 4.0)
mercenary (~> 0.3.3)
pathutil (~> 0.9)
rouge (>= 1.7, < 4)
safe_yaml (~> 1.0)
jekyll-redirect-from (0.13.0)
jekyll (~> 3.3)
jekyll-sass-converter (1.5.2)
sass (~> 3.4)
jekyll-sitemap (1.2.0)
jekyll (~> 3.3)
jekyll-toc (0.5.2)
nokogiri (~> 1.6)
jekyll-watch (2.0.0)
listen (~> 3.0)
kramdown (1.16.2)
liquid (4.0.0)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
mercenary (0.3.6)
mini_portile2 (2.3.0)
nokogiri (1.8.2)
mini_portile2 (~> 2.3.0)
nokogiri (1.8.2-x64-mingw32)
mini_portile2 (~> 2.3.0)
pathutil (0.16.1)
forwardable-extended (~> 2.6)
public_suffix (3.0.2)
rb-fsevent (0.10.3)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
rouge (3.1.1)
ruby_dep (1.5.0)
safe_yaml (1.0.4)
sass (3.5.5)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
PLATFORMS
ruby
x64-mingw32
DEPENDENCIES
jekyll (~> 3.7.0)
jekyll-redirect-from (~> 0.13.0)
jekyll-sitemap (~> 1.2.0)
jekyll-toc (~> 0.5.1)
BUNDLED WITH
1.16.1
+2 -2
View File
@@ -1,7 +1,7 @@
The MIT License (MIT)
Copyright (c) 2011-2018 Twitter, Inc.
Copyright (c) 2011-2018 The Bootstrap Authors
Copyright (c) 2011-2022 Twitter, Inc.
Copyright (c) 2011-2022 The Bootstrap Authors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
+113 -74
View File
@@ -1,29 +1,26 @@
<p align="center">
<a href="https://getbootstrap.com/">
<img src="https://getbootstrap.com/assets/brand/bootstrap-solid.svg" alt="" width=72 height=72>
<img src="https://getbootstrap.com/docs/4.6/assets/brand/bootstrap-solid.svg" alt="Bootstrap logo" width="72" height="72">
</a>
<h3 align="center">Bootstrap</h3>
<p align="center">
Sleek, intuitive, and powerful front-end framework for faster and easier web development.
<br>
<a href="https://getbootstrap.com/docs/4.0/"><strong>Explore Bootstrap docs »</strong></a>
<br>
<br>
<a href="https://github.com/twbs/bootstrap/issues/new?template=bug.md">Report bug</a>
·
<a href="https://github.com/twbs/bootstrap/issues/new?template=feature.md&labels=feature">Request feature</a>
·
<a href="https://themes.getbootstrap.com/">Themes</a>
·
<a href="https://jobs.getbootstrap.com/">Jobs</a>
·
<a href="https://blog.getbootstrap.com/">Blog</a>
</p>
</p>
<br>
<h3 align="center">Bootstrap</h3>
<p align="center">
Sleek, intuitive, and powerful front-end framework for faster and easier web development.
<br>
<a href="https://getbootstrap.com/docs/4.6/"><strong>Explore Bootstrap docs »</strong></a>
<br>
<br>
<a href="https://github.com/twbs/bootstrap/issues/new?template=bug_report.md">Report bug</a>
·
<a href="https://github.com/twbs/bootstrap/issues/new?template=feature_request.md">Request feature</a>
·
<a href="https://themes.getbootstrap.com/">Themes</a>
·
<a href="https://blog.getbootstrap.com/">Blog</a>
</p>
## Table of contents
@@ -36,102 +33,112 @@
- [Community](#community)
- [Versioning](#versioning)
- [Creators](#creators)
- [Thanks](#thanks)
- [Copyright and license](#copyright-and-license)
## Quick start
Several quick start options are available:
- [Download the latest release.](https://github.com/twbs/bootstrap/archive/v4.1.0.zip)
- [Download the latest release.](https://github.com/twbs/bootstrap/archive/v4.6.2.zip)
- Clone the repo: `git clone https://github.com/twbs/bootstrap.git`
- Install with [npm](https://www.npmjs.com/): `npm install bootstrap`
- Install with [yarn](https://yarnpkg.com/): `yarn add bootstrap@4.1.0`
- Install with [Composer](https://getcomposer.org/): `composer require twbs/bootstrap:4.1.0`
- Install with [yarn](https://yarnpkg.com/): `yarn add bootstrap@4.6.2`
- Install with [Composer](https://getcomposer.org/): `composer require twbs/bootstrap:4.6.2`
- Install with [NuGet](https://www.nuget.org/): CSS: `Install-Package bootstrap` Sass: `Install-Package bootstrap.sass`
Read the [Getting started page](https://getbootstrap.com/docs/4.0/getting-started/introduction/) for information on the framework contents, templates and examples, and more.
Read the [Getting started page](https://getbootstrap.com/docs/4.6/getting-started/introduction/) for information on the framework contents, templates and examples, and more.
## Status
[![Slack](https://bootstrap-slack.herokuapp.com/badge.svg)](https://bootstrap-slack.herokuapp.com/)
[![Build Status](https://img.shields.io/travis/twbs/bootstrap/v4-dev.svg)](https://travis-ci.org/twbs/bootstrap)
[![npm version](https://img.shields.io/npm/v/bootstrap.svg)](https://www.npmjs.com/package/bootstrap)
[![Gem version](https://img.shields.io/gem/v/bootstrap.svg)](https://rubygems.org/gems/bootstrap)
[![Meteor Atmosphere](https://img.shields.io/badge/meteor-twbs%3Abootstrap-blue.svg)](https://atmospherejs.com/twbs/bootstrap)
[![Packagist Prerelease](https://img.shields.io/packagist/vpre/twbs/bootstrap.svg)](https://packagist.org/packages/twbs/bootstrap)
[![NuGet](https://img.shields.io/nuget/vpre/bootstrap.svg)](https://www.nuget.org/packages/bootstrap/absoluteLatest)
[![peerDependencies Status](https://img.shields.io/david/peer/twbs/bootstrap.svg)](https://david-dm.org/twbs/bootstrap?type=peer)
[![devDependency Status](https://img.shields.io/david/dev/twbs/bootstrap.svg)](https://david-dm.org/twbs/bootstrap?type=dev)
[![CSS gzip size](http://img.badgesize.io/twbs/bootstrap/v4-dev/dist/css/bootstrap.min.css?compression=gzip&label=CSS+gzip+size)](https://github.com/twbs/bootstrap/tree/v4-dev/dist/css/bootstrap.min.css)
[![JS gzip size](http://img.badgesize.io/twbs/bootstrap/v4-dev/dist/js/bootstrap.min.js?compression=gzip&label=JS+gzip+size)](https://github.com/twbs/bootstrap/tree/v4-dev/dist/js/bootstrap.min.js)
[![Build Status](https://img.shields.io/github/workflow/status/twbs/bootstrap/JS%20Tests/v4-dev?label=JS%20Tests&logo=github)](https://github.com/twbs/bootstrap/actions?query=workflow%3AJS+Tests+branch%3Av4-dev)
[![npm version](https://img.shields.io/npm/v/bootstrap)](https://www.npmjs.com/package/bootstrap)
[![Gem version](https://img.shields.io/gem/v/bootstrap)](https://rubygems.org/gems/bootstrap)
[![Meteor Atmosphere](https://img.shields.io/badge/meteor-twbs%3Abootstrap-blue)](https://atmospherejs.com/twbs/bootstrap)
[![Packagist Prerelease](https://img.shields.io/packagist/vpre/twbs/bootstrap)](https://packagist.org/packages/twbs/bootstrap)
[![NuGet](https://img.shields.io/nuget/vpre/bootstrap)](https://www.nuget.org/packages/bootstrap/absoluteLatest)
[![Coverage Status](https://img.shields.io/coveralls/github/twbs/bootstrap/v4-dev)](https://coveralls.io/github/twbs/bootstrap?branch=v4-dev)
[![CSS gzip size](https://img.badgesize.io/twbs/bootstrap/v4-dev/dist/css/bootstrap.min.css?compression=gzip&label=CSS%20gzip%20size)](https://github.com/twbs/bootstrap/blob/v4-dev/dist/css/bootstrap.min.css)
[![JS gzip size](https://img.badgesize.io/twbs/bootstrap/v4-dev/dist/js/bootstrap.min.js?compression=gzip&label=JS%20gzip%20size)](https://github.com/twbs/bootstrap/blob/v4-dev/dist/js/bootstrap.min.js)
[![BrowserStack Status](https://www.browserstack.com/automate/badge.svg?badge_key=SkxZcStBeExEdVJqQ2hWYnlWckpkNmNEY213SFp6WHFETWk2bGFuY3pCbz0tLXhqbHJsVlZhQnRBdEpod3NLSDMzaHc9PQ==--3d0b75245708616eb93113221beece33e680b229)](https://www.browserstack.com/automate/public-build/SkxZcStBeExEdVJqQ2hWYnlWckpkNmNEY213SFp6WHFETWk2bGFuY3pCbz0tLXhqbHJsVlZhQnRBdEpod3NLSDMzaHc9PQ==--3d0b75245708616eb93113221beece33e680b229)
[![Backers on Open Collective](https://img.shields.io/opencollective/backers/bootstrap)](#backers)
[![Sponsors on Open Collective](https://img.shields.io/opencollective/sponsors/bootstrap)](#sponsors)
[![Sauce Labs Test Status](https://saucelabs.com/browser-matrix/bootstrap.svg)](https://saucelabs.com/u/bootstrap)
## What's included
Within the download you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations. You'll see something like this:
Within the download you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations.
```
<details><summary>Download contents</summary>
```text
bootstrap/
── css/
├── bootstrap.css
│ ├── bootstrap.css.map
│ ├── bootstrap.min.css
│ ├── bootstrap.min.css.map
│ ├── bootstrap-grid.css
│ ├── bootstrap-grid.css.map
│ ├── bootstrap-grid.min.css
│ ├── bootstrap-grid.min.css.map
│ ├── bootstrap-reboot.css
│ ├── bootstrap-reboot.css.map
│ ├── bootstrap-reboot.min.css
── bootstrap-reboot.min.css.map
└── js/
── bootstrap.bundle.js
├── bootstrap.bundle.min.js
├── bootstrap.js
── bootstrap.min.js
── dist/
├── css/
│ ├── bootstrap-grid.css
│ ├── bootstrap-grid.css.map
│ ├── bootstrap-grid.min.css
│ ├── bootstrap-grid.min.css.map
│ ├── bootstrap-reboot.css
│ ├── bootstrap-reboot.css.map
│ ├── bootstrap-reboot.min.css
│ ├── bootstrap-reboot.min.css.map
│ ├── bootstrap.css
│ ├── bootstrap.css.map
── bootstrap.min.css
│ └── bootstrap.min.css.map
── js/
├── bootstrap.bundle.js
├── bootstrap.bundle.js.map
── bootstrap.bundle.min.js
├── bootstrap.bundle.min.js.map
├── bootstrap.js
├── bootstrap.js.map
├── bootstrap.min.js
└── bootstrap.min.js.map
```
</details>
We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). CSS [source maps](https://developers.google.com/web/tools/chrome-devtools/debug/readability/source-maps) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Bundled JS files (`bootstrap.bundle.js` and minified `bootstrap.bundle.min.js`) include [Popper](https://popper.js.org/), but not [jQuery](https://jquery.com/).
We provide compiled CSS and JS (`bootstrap.*`), as well as compiled and minified CSS and JS (`bootstrap.min.*`). [Source maps](https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps) (`bootstrap.*.map`) are available for use with certain browsers' developer tools. Bundled JS files (`bootstrap.bundle.js` and minified `bootstrap.bundle.min.js`) include [Popper](https://popper.js.org/), but not [jQuery](https://jquery.com/).
## Bugs and feature requests
Have a bug or a feature request? Please first read the [issue guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md#using-the-issue-tracker) and search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/twbs/bootstrap/issues/new).
Have a bug or a feature request? Please first read the [issue guidelines](https://github.com/twbs/bootstrap/blob/v4-dev/.github/CONTRIBUTING.md#using-the-issue-tracker) and search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/twbs/bootstrap/issues/new).
## Documentation
Bootstrap's documentation, included in this repo in the root directory, is built with [Jekyll](https://jekyllrb.com/) and publicly hosted on GitHub Pages at <https://getbootstrap.com/>. The docs may also be run locally.
Bootstrap's documentation, included in this repo in the root directory, is built with [Hugo](https://gohugo.io/) and publicly hosted on GitHub Pages at <https://getbootstrap.com/>. The docs may also be run locally.
Documentation search is powered by [Algolia's DocSearch](https://community.algolia.com/docsearch/). Working on our search? Be sure to set `debug: true` in the `_scripts.html` include.
Documentation search is powered by [Algolia's DocSearch](https://community.algolia.com/docsearch/). Working on our search? Be sure to set `debug: true` in `site/assets/js/search.js`.
### Running documentation locally
1. Run through the [tooling setup](https://getbootstrap.com/docs/4.0/getting-started/build-tools/#tooling-setup) to install Jekyll (the site builder) and other Ruby dependencies with `bundle install`.
2. Run `npm install` to install Node.js dependencies.
3. Run `npm run test` (or a specific NPM script) to rebuild distributed CSS and JavaScript files, as well as our docs assets.
4. From the root `/bootstrap` directory, run `npm run docs-serve` in the command line.
5. Open `http://localhost:9001` in your browser, and voilà.
1. Run `npm install` to install the Node.js dependencies, including Hugo (the site builder).
2. Run `npm run test` (or a specific npm script) to rebuild distributed CSS and JavaScript files, as well as our docs assets.
3. Run `npm start` to compile CSS and JavaScript files, generate our docs, and watch for changes.
4. Open `http://localhost:9001/` in your browser, and voilà.
Learn more about using Jekyll by reading its [documentation](https://jekyllrb.com/docs/home/).
Learn more about using Hugo by reading its [documentation](https://gohugo.io/documentation/).
### Documentation for previous releases
- For v2.3.2: <https://getbootstrap.com/2.3.2/>
- For v3.3.x: <https://getbootstrap.com/docs/3.3/>
You can find all our previous releases docs on <https://getbootstrap.com/docs/versions/>.
[Previous releases](https://github.com/twbs/bootstrap/releases) and their documentation are also available for download.
## Contributing
Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/v4-dev/.github/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
Moreover, if your pull request contains JavaScript patches or features, you must include [relevant unit tests](https://github.com/twbs/bootstrap/tree/master/js/tests). All HTML and CSS should conform to the [Code Guide](https://github.com/mdo/code-guide), maintained by [Mark Otto](https://github.com/mdo).
Moreover, if your pull request contains JavaScript patches or features, you must include [relevant unit tests](https://github.com/twbs/bootstrap/tree/v4-dev/js/tests). All HTML and CSS should conform to the [Code Guide](https://github.com/mdo/code-guide), maintained by [Mark Otto](https://github.com/mdo).
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <http://editorconfig.org/>.
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/v4-dev/.editorconfig) for easy use in common text editors. Read more and download plugins at <https://editorconfig.org/>.
## Community
@@ -141,14 +148,14 @@ Get updates on Bootstrap's development and chat with the project maintainers and
- Follow [@getbootstrap on Twitter](https://twitter.com/getbootstrap).
- Read and subscribe to [The Official Bootstrap Blog](https://blog.getbootstrap.com/).
- Join [the official Slack room](https://bootstrap-slack.herokuapp.com/).
- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
- Chat with fellow Bootstrappers in IRC. On the `irc.libera.chat` server, in the `#bootstrap` channel.
- Implementation help may be found at Stack Overflow (tagged [`bootstrap-4`](https://stackoverflow.com/questions/tagged/bootstrap-4)).
- Developers should use the keyword `bootstrap` on packages which modify or add to the functionality of Bootstrap when distributing through [npm](https://www.npmjs.com/browse/keyword/bootstrap) or similar delivery mechanisms for maximum discoverability.
## Versioning
For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](https://semver.org/). Sometimes we screw up, but we'll adhere to those rules whenever possible.
For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under [the Semantic Versioning guidelines](https://semver.org/). Sometimes we screw up, but we adhere to those rules whenever possible.
See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap. Release announcement posts on [the official Bootstrap blog](https://blog.getbootstrap.com/) contain summaries of the most noteworthy changes made in each release.
@@ -166,6 +173,38 @@ See [the Releases section of our GitHub project](https://github.com/twbs/bootstr
- <https://github.com/fat>
## Thanks
<a href="https://www.browserstack.com/">
<img src="https://live.browserstack.com/images/opensource/browserstack-logo.svg" alt="BrowserStack Logo" width="192" height="42">
</a>
Thanks to [BrowserStack](https://www.browserstack.com/) for providing the infrastructure that allows us to test in real browsers!
## Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/bootstrap#sponsor)]
[![](https://opencollective.com/bootstrap/sponsor/0/avatar.svg)](https://opencollective.com/bootstrap/sponsor/0/website)
[![](https://opencollective.com/bootstrap/sponsor/1/avatar.svg)](https://opencollective.com/bootstrap/sponsor/1/website)
[![](https://opencollective.com/bootstrap/sponsor/2/avatar.svg)](https://opencollective.com/bootstrap/sponsor/2/website)
[![](https://opencollective.com/bootstrap/sponsor/3/avatar.svg)](https://opencollective.com/bootstrap/sponsor/3/website)
[![](https://opencollective.com/bootstrap/sponsor/4/avatar.svg)](https://opencollective.com/bootstrap/sponsor/4/website)
[![](https://opencollective.com/bootstrap/sponsor/5/avatar.svg)](https://opencollective.com/bootstrap/sponsor/5/website)
[![](https://opencollective.com/bootstrap/sponsor/6/avatar.svg)](https://opencollective.com/bootstrap/sponsor/6/website)
[![](https://opencollective.com/bootstrap/sponsor/7/avatar.svg)](https://opencollective.com/bootstrap/sponsor/7/website)
[![](https://opencollective.com/bootstrap/sponsor/8/avatar.svg)](https://opencollective.com/bootstrap/sponsor/8/website)
[![](https://opencollective.com/bootstrap/sponsor/9/avatar.svg)](https://opencollective.com/bootstrap/sponsor/9/website)
## Backers
Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/bootstrap#backer)]
[![Backers](https://opencollective.com/bootstrap/backers.svg?width=890)](https://opencollective.com/bootstrap#backers)
## Copyright and license
Code and documentation copyright 2011-2018 the [Bootstrap Authors](https://github.com/twbs/bootstrap/graphs/contributors) and [Twitter, Inc.](https://twitter.com) Code released under the [MIT License](https://github.com/twbs/bootstrap/blob/master/LICENSE). Docs released under [Creative Commons](https://github.com/twbs/bootstrap/blob/master/docs/LICENSE).
Code and documentation copyright 2011-2022 the [Bootstrap Authors](https://github.com/twbs/bootstrap/graphs/contributors) and [Twitter, Inc.](https://twitter.com) Code released under the [MIT License](https://github.com/twbs/bootstrap/blob/main/LICENSE). Docs released under [Creative Commons](https://creativecommons.org/licenses/by/3.0/).
+7
View File
@@ -0,0 +1,7 @@
# Reporting Security Issues
The Bootstrap team and community take security issues in Bootstrap seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions.
To report a security issue, email [security@getbootstrap.com](mailto:security@getbootstrap.com) and include the word "SECURITY" in the subject line.
We'll endeavor to respond quickly, and will keep you updated throughout the process.
-81
View File
@@ -1,81 +0,0 @@
# Dependencies
markdown: kramdown
highlighter: rouge
kramdown:
auto_ids: true
# Permalinks
permalink: pretty
# Server
source: "."
destination: ./_gh_pages
host: 0.0.0.0
port: 9001
baseurl: ""
url: "https://getbootstrap.com"
encoding: UTF-8
exclude:
- .git/
- .github/
- assets/scss/
- build/
- js/
- node_modules/
- nuget/
- scss/
- vendor/
- CODE_OF_CONDUCT.md
- composer.json
- Gemfile
- Gemfile.lock
- package.js
- package.json
- package-lock.json
- README.md
- sache.json
- twbsconfig.yml
plugins:
- jekyll-redirect-from
- jekyll-sitemap
- jekyll-toc
# Social
title: Bootstrap
description: "The most popular HTML, CSS, and JS library in the world."
twitter: getbootstrap
authors: "Mark Otto, Jacob Thornton, and Bootstrap contributors"
social_image_path: /assets/brand/bootstrap-social.png
social_logo_path: /assets/brand/bootstrap-social-logo.png
# Custom variables
current_version: 4.1.0
current_ruby_version: 4.1.0
docs_version: 4.1
repo: "https://github.com/twbs/bootstrap"
slack: "https://bootstrap-slack.herokuapp.com"
blog: "https://blog.getbootstrap.com"
expo: "https://expo.getbootstrap.com"
jobs: "https://jobs.getbootstrap.com"
themes: "https://themes.getbootstrap.com"
download:
source: "https://github.com/twbs/bootstrap/archive/v4.1.0.zip"
dist: "https://github.com/twbs/bootstrap/releases/download/v4.1.0/bootstrap-4.1.0-dist.zip"
cdn:
# See https://www.srihash.org for info on how to generate the hashes
css: "https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css"
css_hash: "sha384-9gVQ4dYFwwWSjIDZnLEWnxCjeSWFphJiwGPXr1jddIhOegiu1FwO5qRGvFXOdJZ4"
js: "https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"
js_hash: "sha384-uefMccjFJAIv6A+rW+L4AHf99KvxDjWSu1z9VI8SKNVmz4sk7buKt/6v9KI65qnm"
jquery: "https://code.jquery.com/jquery-3.3.1.slim.min.js"
jquery_hash: "sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
popper: "https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"
popper_hash: "sha384-cs/chFZiN24E4KMATLdqdvsezGxaGsi4hLGOzlXwp5UZB1LY//20VyM2taTB4QvJ"
toc:
min_level: 2
max_level: 4
-19
View File
@@ -1,19 +0,0 @@
- name: 中文(繁體)
code: zh-tw
description: Bootstrap 4 繁體中文手冊
url: http://bootstrap.hexschool.com/
- name: Chinese
code: zh
description: Bootstrap 4 · 全球最流行的 HTML、CSS 和 JS 工具库。
url: https://code.z01.com/v4
- name: Chinese
code: zh
description: Bootstrap 4 中文文档教程
url: https://wiki.jikexueyuan.com/project/bootstrap4/
- name: Brazilian Portuguese
code: pt-BR
description: Bootstrap 4 Português do Brasil
url: http://getbootstrap.com.br/v4/
-1
View File
@@ -1 +0,0 @@
<script async src="https://cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=getbootstrapcom" id="_carbonads_js"></script>
-42
View File
@@ -1,42 +0,0 @@
{%- comment -%}
Usage: {% include bugify.html content=text %},
where content is a string that contains a bug reference name and id.
e.g. Bootstrap#19984
{%- endcomment -%}
{%- assign words = include.content | split: " " -%}
{%- for word in words -%}
{% if word contains "#" %}
{% if word contains "," %}{% assign separator = true %}{% else %}{% assign separator = false %}{% endif %}
{%- assign data = word | split: "#" -%}
{%- assign bug_cat = data[0] | strip_newlines -%}
{%- assign bug_id = data[1] | strip_newlines | remove: "," -%}
{%- case bug_cat -%}
{%- when "Bootstrap" -%}
<a href="https://github.com/twbs/bootstrap/issues/{{ bug_id }}">#{{ bug_id }}</a>
{%- when "Edge" -%}
<a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/{{ bug_id }}">Edge issue #{{ bug_id }}</a>
{%- when "A11yUserVoice" -%}
<a href="https://microsoftaccessibility.uservoice.com/forums/307429-microsoft-accessibility-feedback/suggestions/{{ bug_id }}">Microsoft A11y UserVoice idea #{{ bug_id }}</a>
{%- when "UserVoice" -%}
<a href="https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/{{ bug_id }}">Edge UserVoice idea #{{ bug_id }}</a>
{%- when "Mozilla" -%}
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id={{ bug_id }}">Mozilla bug #{{ bug_id }}</a>
{%- when "Chromium" -%}
<a href="https://bugs.chromium.org/p/chromium/issues/detail?id={{ bug_id }}">Chromium issue #{{ bug_id }}</a>
{%- when "WebKit" -%}
<a href="https://bugs.webkit.org/show_bug.cgi?id={{ bug_id }}">WebKit bug #{{ bug_id }}</a>
{%- when "Safari" -%}
<a href="https://openradar.appspot.com/{{ bug_id }}">Apple Safari Radar #{{ bug_id }}</a>
{%- when "Normalize" -%}
<a href="https://github.com/necolas/normalize.css/issues/{{ bug_id }}">Normalize #{{ bug_id }}</a>
{%- else -%}
<strong>parse error</strong>
{%- endcase -%}{% if separator %}, {% endif %}
{% else %}
{{ word }}
{%- endif -%}
{%- endfor -%}
-9
View File
@@ -1,9 +0,0 @@
{%- comment -%}
Usage: {% include callout.html content=callout type="type" %},
where content is a capture with the content
and type is one of: info (default), danger, warning
{%- endcomment -%}
{%- assign css_class = include.type | default: "info" -%}
<div class="bd-callout bd-callout-{{ css_class }}">
{{- include.content | markdownify -}}
</div>
-65
View File
@@ -1,65 +0,0 @@
<header class="navbar navbar-expand navbar-dark flex-column flex-md-row bd-navbar">
<a class="navbar-brand mr-0 mr-md-2" href="{{ site.baseurl }}/" aria-label="Bootstrap">
{%- include icons/bootstrap.svg width="36" height="36" class="d-block" -%}
</a>
<div class="navbar-nav-scroll">
<ul class="navbar-nav bd-navbar-nav flex-row">
<li class="nav-item">
<a class="nav-link {% if page.layout == "home" %}active{% endif %}" href="{{ site.baseurl }}/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Bootstrap');">Home</a>
</li>
<li class="nav-item">
<a class="nav-link {% if page.layout == "docs" %}active{% endif %}" href="{{ site.baseurl }}/docs/{{ site.docs_version }}/getting-started/introduction/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Docs');">Documentation</a>
</li>
<li class="nav-item">
<a class="nav-link {% if page.title == "Examples" %}active{% endif %}" href="{{ site.baseurl }}/docs/{{ site.docs_version }}/examples/" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Examples');">Examples</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ site.themes }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Themes');" target="_blank" rel="noopener">Themes</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ site.jobs }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Jobs');" target="_blank" rel="noopener">Jobs</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ site.expo }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Expo');" target="_blank" rel="noopener">Expo</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ site.blog }}" onclick="ga('send', 'event', 'Navbar', 'Community links', 'Blog');" target="_blank" rel="noopener">Blog</a>
</li>
</ul>
</div>
<ul class="navbar-nav flex-row ml-md-auto d-none d-md-flex">
<li class="nav-item dropdown">
<a class="nav-item nav-link dropdown-toggle mr-md-2" href="#" id="bd-versions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
v{{ site.docs_version }}
</a>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="bd-versions">
<a class="dropdown-item active" href="{{ site.baseurl }}/docs/{{ site.docs_version }}/">Latest (4.1.x)</a>
<a class="dropdown-item" href="https://getbootstrap.com/docs/4.0/">v4.0.0</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="https://v4-alpha.getbootstrap.com/">v4 Alpha 6</a>
<a class="dropdown-item" href="https://getbootstrap.com/docs/3.3/">v3.3.7</a>
<a class="dropdown-item" href="https://getbootstrap.com/2.3.2/">v2.3.2</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link p-2" href="{{ site.repo }}" target="_blank" rel="noopener" aria-label="GitHub">
{%- include icons/github.svg class="navbar-nav-svg" -%}
</a>
</li>
<li class="nav-item">
<a class="nav-link p-2" href="https://twitter.com/{{ site.twitter }}" target="_blank" rel="noopener" aria-label="Twitter">
{%- include icons/twitter.svg class="navbar-nav-svg" -%}
</a>
</li>
<li class="nav-item">
<a class="nav-link p-2" href="{{ site.slack }}" target="_blank" rel="noopener" aria-label="Slack">
{%- include icons/slack.svg class="navbar-nav-svg" -%}
</a>
</li>
</ul>
<a class="btn btn-bd-download d-none d-lg-inline-block mb-3 mb-md-0 ml-md-3" href="{{ site.download.source }}">Download</a>
</header>
-57
View File
@@ -1,57 +0,0 @@
<form class="bd-search d-flex align-items-center">
<input type="search" class="form-control" id="search-input" placeholder="Search..." aria-label="Search for..." autocomplete="off" data-siteurl="{{ site.url }}">
<button class="btn btn-link bd-search-docs-toggle d-md-none p-0 ml-3" type="button" data-toggle="collapse" data-target="#bd-docs-nav" aria-controls="bd-docs-nav" aria-expanded="false" aria-label="Toggle docs navigation">
{%- include icons/menu.svg width="30" height="30" -%}
</button>
</form>
<nav class="collapse bd-links" id="bd-docs-nav">
{%- assign page_slug = page.url | split: '/' | last -%}
{%- for group in site.data.nav -%}
{%- assign link = group.pages | first -%}
{%- assign link_slug = link.title | slugify -%}
{%- assign group_slug = group.title | slugify -%}
{%- assign active = nil -%}
{%- if page.group == group_slug -%}
{%- assign active = 'active' -%}
{%- endif -%}
<div class="bd-toc-item{% unless active == nil %} {{ active }}{% endunless %}">
<a class="bd-toc-link" href="{{ site.baseurl }}/docs/{{ site.docs_version }}/{{ group_slug }}/{{ link_slug }}{% if link_slug %}/{% endif %}">
{{ group.title }}
</a>
<ul class="nav bd-sidenav">
{%- for doc in group.pages -%}
{%- assign doc_slug = doc.title | slugify -%}
{%- assign active = nil -%}
{%- if page.group == group_slug and page_slug == doc_slug -%}
{%- assign active = 'active bd-sidenav-active' -%}
{%- endif -%}
<li{% unless active == nil %} class="{{ active }}"{% endunless %}>
<a href="{{ site.baseurl }}/docs/{{ site.docs_version }}/{{ group_slug }}/{{ doc_slug }}/">
{{ doc.title }}
</a>
{%- comment -%}
{% unless doc.sections == nil %}
<ul class="nav">
{% for section in doc.sections %}
<li>
<a href="#{{ section.title | downcase | replace: ' ', '-' }}">
{{ section.title }}
</a>
</li>
{% endfor %}
</ul>
{% endunless %}
{%- endcomment -%}
</li>
{%- endfor -%}
</ul>
</div>
{%- endfor -%}
</nav>
-23
View File
@@ -1,23 +0,0 @@
{%- comment -%}
Usage: {% include example.html content=markup %},
where content is a capture with the HTML content
id - null (default)
class - "bd-example" (default)
optional: hide_preview - disabled (default)
optional: hide_markup - disabled (default)
{%- endcomment -%}
{%- assign preview_id = include.id -%}
{%- assign preview_class = include.class -%}
{%- if include.hide_preview == null -%}
<div{% if preview_id %} id="{{ preview_id }}"{% endif %} class="bd-example{% if preview_class %} {{ preview_class }}{% endif %}">
{{- include.content -}}
</div>
{%- endif -%}
{%- if include.hide_markup == null -%}
{%- highlight html -%}
{{- include.content | replace: 'data-src="holder.js', 'src="...' -}}
{%- endhighlight -%}
{%- endif -%}
-9
View File
@@ -1,9 +0,0 @@
<!-- Favicons -->
<link rel="apple-touch-icon" href="{{ site.baseurl }}/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
<link rel="icon" href="{{ site.baseurl }}/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png">
<link rel="icon" href="{{ site.baseurl }}/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png">
<link rel="manifest" href="{{ site.baseurl }}/assets/img/favicons/manifest.json">
<link rel="mask-icon" href="{{ site.baseurl }}/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c">
<link rel="icon" href="{{ site.baseurl }}/favicon.ico">
<meta name="msapplication-config" content="{{ site.baseurl }}/assets/img/favicons/browserconfig.xml">
<meta name="theme-color" content="#563d7c">
-12
View File
@@ -1,12 +0,0 @@
<footer class="bd-footer text-muted">
<div class="container-fluid p-3 p-md-5">
<ul class="bd-footer-links">
<li><a href="{{ site.repo }}">GitHub</a></li>
<li><a href="https://twitter.com/getbootstrap">Twitter</a></li>
<li><a href="{{ site.baseurl }}/docs/{{ site.docs_version }}/examples/">Examples</a></li>
<li><a href="{{ site.baseurl }}/docs/{{ site.docs_version }}/about/overview/">About</a></li>
</ul>
<p>Designed and built with all the love in the world by <a href="https://twitter.com/mdo" target="_blank" rel="noopener">@mdo</a> and <a href="https://twitter.com/fat" target="_blank" rel="noopener">@fat</a>. Maintained by the <a href="https://github.com/orgs/twbs/people">core team</a> with the help of <a href="https://github.com/twbs/bootstrap/graphs/contributors">our contributors</a>.</p>
<p>Currently v{{ site.current_version }}. Code licensed <a href="https://github.com/twbs/bootstrap/blob/master/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>.</p>
</div>
</footer>
-39
View File
@@ -1,39 +0,0 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="{{ page.description | default: site.description | smartify }}">
<meta name="author" content="{{ site.authors }}">
<meta name="generator" content="Jekyll v{{ jekyll.version }}">
<title>
{%- if page.title -%}
{{ page.title | smartify }} · {{ site.title | smartify }}
{%- else -%}
{{ site.title | smartify }} · {{ site.description | smartify }}
{%- endif -%}
</title>
<!-- Bootstrap core CSS -->
{% if site.github %}
<link href="{{ site.baseurl }}/dist/css/bootstrap.min.css" rel="stylesheet" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
{% else %}
<link href="{{ site.baseurl }}/dist/css/bootstrap.css" rel="stylesheet">
{% endif %}
<!-- Documentation extras -->
{% if page.layout == "docs" %}
<link href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" rel="stylesheet">
{% endif %}
<link href="{{ site.baseurl }}/assets/css/docs.min.css" rel="stylesheet">
{% include favicons.html %}
{% include social.html %}
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-146052-10', 'getbootstrap.com');
ga('send', 'pageview');
</script>
-1
View File
@@ -1 +0,0 @@
<svg{% if include.class %} class="{{ include.class }}"{% endif %}{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} viewbox="0 0 612 612" xmlns="http://www.w3.org/2000/svg" focusable="false"><title>Bootstrap</title><path fill="currentColor" d="M510 8a94.3 94.3 0 0 1 94 94v408a94.3 94.3 0 0 1-94 94H102a94.3 94.3 0 0 1-94-94V102a94.3 94.3 0 0 1 94-94h408m0-8H102C45.9 0 0 45.9 0 102v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V102C612 45.9 566.1 0 510 0z"/><path fill="currentColor" d="M196.77 471.5V154.43h124.15c54.27 0 91 31.64 91 79.1 0 33-24.17 63.72-54.71 69.21v1.76c43.07 5.49 70.75 35.82 70.75 78 0 55.81-40 89-107.45 89zm39.55-180.4h63.28c46.8 0 72.29-18.68 72.29-53 0-31.42-21.53-48.78-60-48.78h-75.57zm78.22 145.46c47.68 0 72.73-19.34 72.73-56s-25.93-55.37-76.46-55.37h-74.49v111.4z"/></svg>

Before

Width:  |  Height:  |  Size: 890 B

-1
View File
@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" focusable="false"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} fill="none" stroke="currentcolor" stroke-width="2"{% if include.class %} class="{{ include.class }}"{% endif %} viewBox="0 0 32 32" stroke-linecap="round" stroke-linejoin="round"><title>Download icon</title><path d="M9 22c-9 1-8-10 0-9C6 2 23 2 22 10c10-3 10 13 1 12m-12 4l5 4 5-4m-5-10v14"/></svg>

Before

Width:  |  Height:  |  Size: 482 B

-1
View File
@@ -1 +0,0 @@
<svg{% if include.class %} class="{{ include.class }}"{% endif %} xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 499.36"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} focusable="false"><title>GitHub</title><path d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z" fill="currentColor" fill-rule="evenodd"/></svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

-1
View File
@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" focusable="false"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} fill="none" stroke="currentcolor" stroke-width="2"{% if include.class %} class="{{ include.class }}"{% endif %} viewBox="0 0 32 32" stroke-linecap="round" stroke-linejoin="round"><title>Import icon</title><path d="M28 22v8H4v-8M16 4v20m-8-8l8 8 8-8"/></svg>

Before

Width:  |  Height:  |  Size: 441 B

-1
View File
@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" focusable="false"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} fill="none" stroke="currentcolor" stroke-width="2"{% if include.class %} class="{{ include.class }}"{% endif %} viewBox="0 0 32 32" stroke-linecap="round" stroke-linejoin="round"><title>Lightning icon</title><path d="M18 13l8-11L8 13l6 6-8 11 18-11z"/></svg>

Before

Width:  |  Height:  |  Size: 442 B

-1
View File
@@ -1 +0,0 @@
<svg{% if include.class %} class="{{ include.class }}"{% endif %} xmlns="http://www.w3.org/2000/svg" viewbox="0 0 30 30"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} focusable="false"><title>Menu</title><path stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-miterlimit="10" d="M4 7h22M4 15h22M4 23h22"/></svg>

Before

Width:  |  Height:  |  Size: 410 B

-1
View File
@@ -1 +0,0 @@
<svg{% if include.class %} class="{{ include.class }}"{% endif %} xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 512"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} focusable="false"><title>Slack</title><path fill="currentColor" d="M210.787 234.832l68.31-22.883 22.1 65.977-68.309 22.882z"/><path d="M490.54 185.6C437.7 9.59 361.6-31.34 185.6 21.46S-31.3 150.4 21.46 326.4 150.4 543.3 326.4 490.54 543.34 361.6 490.54 185.6zM401.7 299.8l-33.15 11.05 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.38-68.36 22.92 11.46 34.38c4.5 13.92-2.87 29.06-16.78 33.56-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18l-11.46-34.43-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.5-13.92 2.87-29.06 16.78-33.56l33.12-11.03-22.1-65.9-33.15 11.05c-2.87.82-6.14 1.64-9 1.23a27.32 27.32 0 0 1-24.56-18c-4.48-13.93 2.89-29.07 16.81-33.58l33.15-11.05-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.46 34.38 68.36-22.92-11.46-34.38c-4.5-13.92 2.87-29.06 16.78-33.56s29.06 2.87 33.56 16.78l11.47 34.42 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.87 29.06-16.78 33.56L329.7 194.6l22.1 65.9 33.15-11.05c13.92-4.5 29.06 2.87 33.56 16.78s-2.88 29.07-16.81 33.57z" fill="currentColor"/></svg>

Before

Width:  |  Height:  |  Size: 1.3 KiB

-1
View File
@@ -1 +0,0 @@
<svg{% if include.class %} class="{{ include.class }}"{% endif %} xmlns="http://www.w3.org/2000/svg" viewbox="0 0 512 416.32"{% if include.width %} width="{{ include.width }}"{% endif %}{% if include.height %} height="{{ include.height }}"{% endif %} focusable="false"><title>Twitter</title><path d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92" fill="currentColor"/></svg>

Before

Width:  |  Height:  |  Size: 861 B

-25
View File
@@ -1,25 +0,0 @@
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
<script>window.jQuery || document.write('<script src="{{ site.baseurl }}/assets/js/vendor/jquery-slim.min.js"><\/script>')</script>
<script src="{{ site.baseurl }}/assets/js/vendor/popper.min.js"{% if site.github %} integrity="{{ site.cdn.popper_hash }}" crossorigin="anonymous"{% endif %}></script>
{%- if site.github -%}
<script src="{{ site.baseurl }}/dist/js/bootstrap.min.js" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
{%- else -%}
<script src="{{ site.baseurl }}/dist/js/bootstrap.js"></script>
{%- endif -%}
{%- if page.layout == "docs" -%}
<script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
{%- endif -%}
{%- if site.github -%}
<script src="{{ site.baseurl }}/assets/js/docs.min.js"></script>
{%- else -%}
<script src="{{ site.baseurl }}/assets/js/vendor/anchor.min.js"></script>
<script src="{{ site.baseurl }}/assets/js/vendor/clipboard.min.js"></script>
<script src="{{ site.baseurl }}/assets/js/vendor/holder.min.js"></script>
<script src="{{ site.baseurl }}/assets/js/src/application.js"></script>
<script src="{{ site.baseurl }}/assets/js/src/ie-emulation-modes-warning.js"></script>
<script src="{{ site.baseurl }}/assets/js/src/pwa.js"></script>
{%- endif -%}
-5
View File
@@ -1,5 +0,0 @@
<a id="skippy" class="sr-only sr-only-focusable" href="#content">
<div class="container">
<span class="skiplink-text">Skip to main content</span>
</div>
</a>
-18
View File
@@ -1,18 +0,0 @@
<!-- Twitter -->
<meta name="twitter:card" content="{% if page.title %}summary{% else %}summary_large_image{% endif %}">
<meta name="twitter:site" content="@{{ site.twitter }}">
<meta name="twitter:creator" content="@{{ site.twitter }}">
<meta name="twitter:title" content="{{ page.title | default: site.title | smartify }}">
<meta name="twitter:description" content="{{ page.description | default: site.description | smartify }}">
<meta name="twitter:image" content="{% if page.title %}{{ site.url | append: site.social_logo_path }}{% else %}{{ site.url | append: site.social_image_path }}{% endif %}">
<!-- Facebook -->
<meta property="og:url" content="{{ site.url | append: page.url }}">
<meta property="og:title" content="{{ page.title | default: site.title | smartify }}">
<meta property="og:description" content="{{ page.description | default: site.description | smartify }}">
<meta property="og:type" content="website">
<meta property="og:image" content="{{ site.url | replace: 'https://', 'http://' | append: site.social_image_path }}">
<meta property="og:image:secure_url" content="{{ site.url | append: site.social_image_path }}">
<meta property="og:image:type" content="image/png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
-22
View File
@@ -1,22 +0,0 @@
<!doctype html>
<html lang="en">
<head>
{% include header.html %}
</head>
<body>
{% include skippy.html %}
{% include docs-navbar.html %}
{% if page.layout == "simple" or page.layout == "examples" %}
{{ content }}
{% else %}
<main id="content" role="main">
{{ content }}
</main>
{% endif %}
{% include footer.html %}
{% include scripts.html %}
</body>
</html>
-34
View File
@@ -1,34 +0,0 @@
<!doctype html>
<html lang="en">
<head>
{% include header.html %}
</head>
<body>
{% include skippy.html %}
{% include docs-navbar.html %}
<div class="container-fluid">
<div class="row flex-xl-nowrap">
<div class="col-12 col-md-3 col-xl-2 bd-sidebar">
{% include docs-sidebar.html %}
</div>
{% if page.toc %}
<div class="d-none d-xl-block col-xl-2 bd-toc">
{{ content | toc_only }}
</div>
{% endif %}
<main class="col-12 col-md-9 col-xl-8 py-md-3 pl-md-5 bd-content" role="main">
<h1 class="bd-title" id="content">{{ page.title | smartify }}</h1>
<p class="bd-lead">{{ page.description | smartify }}</p>
{% include ads.html %}
{{ content }}
</main>
</div>
</div>
{% include scripts.html %}
</body>
</html>
-16
View File
@@ -1,16 +0,0 @@
---
layout: default
---
<header class="d-flex flex-column flex-md-row align-items-md-center p-5 bg-light">
<div class="pt-md-3 pb-md-4">
<h1 class="bd-title mt-0">{{ page.title | smartify }}</h1>
<p class="bd-lead">{{ page.description | smartify }}</p>
<a href="{{ site.download.source }}" class="btn btn-lg btn-bd-primary" onclick="ga('send', 'event', 'Examples', 'Hero', 'Download');">Download source code</a>
</div>
{% include ads.html %}
</header>
<main class="bd-content p-5" id="content" role="main">
{{ content }}
</main>
-16
View File
@@ -1,16 +0,0 @@
<!doctype html>
<html lang="en">
<head>
{% include header.html %}
</head>
<body>
{% include skippy.html %}
{% include docs-navbar.html %}
{{ content }}
{% include footer.html %}
{% include scripts.html %}
</body>
</html>
-38
View File
@@ -1,38 +0,0 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Bootstrap · Content moved</title>
<link rel="canonical" href="{{ page.redirect.to }}">
<meta http-equiv="refresh" content="0; url={{ page.redirect.to }}">
<meta name="robots" content="noindex">
<style>
html {
display: flex;
align-items: center;
justify-content: center;
margin: 0;
width: 100vw;
height: 100vh;
text-align: center;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
h1 {
margin-top: 0;
margin-bottom: .5rem;
}
a {
color: #007bff;
text-decoration: none;
}
</style>
</head>
<body>
<h1>Redirecting&hellip;</h1>
<a href="{{ page.redirect.to }}">Click here if you are not redirected</a>
<script>window.location="{{ page.redirect.to }}";</script>
</body>
</html>
-12
View File
@@ -1,12 +0,0 @@
---
layout: default
---
<div class="container my-5">
<main class="bd-content" role="main">
<h1 class="bd-title" id="content">{{ page.title | smartify }}</h1>
<p class="bd-lead">{{ page.description | smartify }}</p>
{% include ads.html %}
{{ content }}
</main>
</div>
-6
View File
@@ -1,6 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 180 612 612">
<g fill="#FFF" sodipodi:docname="twitter_bootstrap_logo.svg" inkscape:version="0.48.1 r9760" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
<path d="M510 186c25.5 0 49.6 10 67.8 28.2S606 256.5 606 282v408c0 25.5-10 49.6-28.2 67.8S535.5 786 510 786H102c-25.5 0-49.6-10-67.8-28.2S6 715.5 6 690V282c0-25.5 10-49.6 28.2-67.8S76.5 186 102 186h408m0-6H102C45.9 180 0 225.9 0 282v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V282c0-56.1-45.9-102-102-102z"/>
<path d="M166.3 313h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.2-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V313zm62.5 149.5h102c15 0 27.5-4.2 37.5-12.8s15-20.8 15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.6zm0 156.5h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8 0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V619z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.3 KiB

-6
View File
@@ -1,6 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 180 612 612">
<g fill="#FFF" sodipodi:docname="twitter_bootstrap_logo.svg" inkscape:version="0.48.1 r9760" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
<path d="M383.5 521.8c-10.5-9.5-25.2-14.2-44.2-14.2H228.8V619h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8-.1-17.6-5.3-31.2-15.8-40.6zm-15.3-72c10-8.5 15-20.8 15-36.8 0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.5h102c15 0 27.5-4.3 37.5-12.7z"/>
<path d="M510 180H102C45.9 180 0 225.9 0 282v408c0 56.1 45.9 102 102 102h408c56.1 0 102-45.9 102-102V282c0-56.1-45.9-102-102-102zm-55.8 429.8c-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V313h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.3z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

-6
View File
@@ -1,6 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 612 612">
<g sodipodi:docname="twitter_bootstrap_logo.svg" inkscape:version="0.48.1 r9760" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
<path fill="#563D7C" d="M612 510c0 56.1-45.9 102-102 102H102C45.9 612 0 566.1 0 510V102C0 45.9 45.9 0 102 0h408c56.1 0 102 45.9 102 102v408z"/>
<path fill="#FFF" d="M166.3 133h173.5c32 0 57.7 7.3 77 22s29 36.8 29 66.5c0 18-4.4 33.4-13.2 46.2-8.8 12.8-21.4 22.8-37.8 29.8v1c22 4.7 38.7 15.1 50 31.2 11.3 16.2 17 36.4 17 60.8 0 14-2.5 27.1-7.5 39.2-5 12.2-12.8 22.7-23.5 31.5s-24.3 15.8-41 21-36.5 7.8-59.5 7.8h-164V133zm62.5 149.5h102c15 0 27.5-4.2 37.5-12.8s15-20.8 15-36.8c0-18-4.5-30.7-13.5-38s-22-11-39-11h-102v98.6zm0 156.5h110.5c19 0 33.8-4.9 44.2-14.8 10.5-9.8 15.8-23.8 15.8-41.8 0-17.7-5.2-31.2-15.8-40.8s-25.2-14.2-44.2-14.2H228.8V439z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

-8
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

-11
View File
@@ -1,11 +0,0 @@
---
---
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square150x150logo src="{{ site.baseurl }}/assets/img/favicons/mstile-150x150.png"/>
<TileColor>#563d7c</TileColor>
</tile>
</msapplication>
</browserconfig>
-22
View File
@@ -1,22 +0,0 @@
---
---
{
"name": "Bootstrap",
"short_name": "Bootstrap",
"icons": [
{
"src": "{{ site.baseurl }}/assets/img/favicons/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "{{ site.baseurl }}/assets/img/favicons/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
],
"start_url": "/",
"theme_color": "#563d7c",
"background_color": "#563d7c",
"display": "standalone"
}
-20
View File
@@ -1,20 +0,0 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
width="700.000000pt" height="700.000000pt" viewBox="0 0 700.000000 700.000000"
preserveAspectRatio="xMidYMid meet">
<metadata>
Created by potrace 1.11, written by Peter Selinger 2001-2013
</metadata>
<g transform="translate(0.000000,700.000000) scale(0.100000,-0.100000)"
fill="#000000" stroke="none">
<path d="M975 6983 c-494 -88 -870 -467 -959 -965 -13 -72 -15 -404 -14 -2513
0 -1970 3 -2446 13 -2515 46 -295 206 -564 445 -747 60 -46 164 -113 175 -113
3 0 31 -13 62 -28 73 -35 146 -58 260 -82 84 -17 196 -18 2563 -16 2334 1
2479 3 2545 19 39 10 77 20 85 22 74 18 226 87 310 139 92 58 255 209 298 276
9 14 28 41 43 60 36 48 111 200 138 280 12 36 30 106 40 155 18 86 19 188 17
2570 l-1 2480 -27 95 c-52 188 -106 300 -207 434 -170 225 -400 372 -691 442
-71 17 -200 18 -2545 20 -2111 2 -2482 0 -2550 -13z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

-26
View File
@@ -1,26 +0,0 @@
{
"env": {
"es6": false,
"jquery": true
},
"parserOptions": {
"ecmaVersion": 5,
"sourceType": "script"
},
"extends": "../../.eslintrc.json",
"rules": {
// Best Practices
"no-magic-numbers": "off",
"vars-on-top": "off",
// Stylistic Issues
"spaced-comment": "off",
// ECMAScript 6
"no-var": "off",
"object-shorthand": "off",
"prefer-arrow-callback": "off",
"prefer-template": "off",
"prefer-rest-params": "off"
}
}
-28
View File
File diff suppressed because one or more lines are too long
-17
View File
@@ -1,17 +0,0 @@
/* eslint no-console:off */
(function () {
'use strict'
if ('serviceWorker' in navigator) {
window.addEventListener('load', function () {
navigator.serviceWorker.register('/sw.js').then(function (registration) { // eslint-disable-line compat/compat
console.log('ServiceWorker registration successful with scope: ', registration.scope)
}).catch(function (err) {
console.log('ServiceWorker registration failed: ', err)
})
})
} else {
console.log('Service workers are not supported.')
}
}())
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
-13
View File
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
-110
View File
@@ -1,110 +0,0 @@
// stylelint-disable no-duplicate-selectors
//
// Brand guidelines
//
// Logo series wrapper
.bd-brand-logos {
display: table;
width: 100%;
margin-bottom: 1rem;
overflow: hidden;
color: #563d7c;
background-color: #f9f9f9;
border-radius: .25rem;
}
// Individual items
.bd-brand-item {
padding: 4rem 0;
text-align: center;
}
.bd-brand-item + .bd-brand-item {
border-top: 1px solid #fff;
}
.bd-brand-logos .inverse {
color: #fff;
background-color: #563d7c;
}
// Heading content within
.bd-brand-item h1,
.bd-brand-item h3 {
margin-top: 0;
margin-bottom: 0;
}
.bd-brand-item .bd-booticon {
margin-right: auto;
margin-left: auto;
}
// Make the icons stand out on what is/isn't okay
// .bd-brand-item .glyphicon {
// width: 30px;
// height: 30px;
// margin: 10px auto -10px;
// line-height: 30px;
// color: #fff;
// border-radius: 50%;
// }
// .bd-brand-item .glyphicon-ok {
// background-color: #5cb85c;
// }
// .bd-brand-item .glyphicon-remove {
// background-color: #d9534f;
// }
@media (min-width: 768px) {
.bd-brand-item {
display: table-cell;
width: 1%;
}
.bd-brand-item + .bd-brand-item {
border-top: 0;
border-left: 1px solid #fff;
}
.bd-brand-item h1 {
font-size: 4rem;
}
}
//
// Color swatches
//
.color-swatches {
margin: 0 -5px;
overflow: hidden; // clearfix
}
.color-swatch {
float: left;
width: 4rem;
height: 4rem;
margin-right: .25rem;
margin-left: .25rem;
border-radius: .25rem;
@media (min-width: 768px) {
width: 6rem;
height: 6rem;
}
}
// Docs colors
.color-swatches {
.bd-purple {
background-color: $bd-purple;
}
.bd-purple-light {
background-color: $bd-purple-light;
}
.bd-purple-lighter {
background-color: #e5e1ea;
}
.bd-gray {
background-color: #f9f9f9;
}
}
-24
View File
@@ -1,24 +0,0 @@
//
// Examples
//
.bd-examples .img-thumbnail {
margin-bottom: .75rem;
}
.bd-examples h4 {
margin-bottom: .25rem;
}
.bd-examples p {
margin-bottom: 1.25rem;
}
@media (max-width: 480px) {
.bd-examples {
margin-right: -.75rem;
margin-left: -.75rem;
}
.bd-examples > [class^="col-"] {
padding-right: .75rem;
padding-left: .75rem;
}
}
-56
View File
@@ -1,56 +0,0 @@
// stylelint-disable declaration-no-important
.bd-masthead {
position: relative;
padding: 3rem ($grid-gutter-width / 2);
// background-image: linear-gradient(45deg, #fafafa, #f5f5f5);
h1 {
line-height: 1;
}
.btn {
width: 100%;
padding: .8rem 2rem;
font-size: 1.25rem;
font-weight: 500;
}
.carbonad {
margin-top: 0 !important;
margin-bottom: -3rem !important;
}
@include media-breakpoint-up(sm) {
padding-top: 5rem;
padding-bottom: 5rem;
.carbonad {
margin-bottom: 0 !important;
}
}
@include media-breakpoint-up(md) {
h1 {
font-size: 4rem;
}
.carbonad {
margin-top: 3rem !important;
}
}
}
.half-rule {
width: 6rem;
margin: 2.5rem 0;
}
.masthead-followup {
.bd-clipboard { display: none; }
.highlight {
padding: .5rem 0;
background-color: transparent;
}
}
-14
View File
@@ -1,14 +0,0 @@
// stylelint-disable selector-max-id
#skippy {
display: block;
padding: 1em;
color: #fff;
background-color: $bd-purple;
outline: 0;
.skiplink-text {
padding: .5em;
outline: 1px dotted;
}
}
-78
View File
@@ -1,78 +0,0 @@
// stylelint-disable declaration-block-single-line-max-declarations
.hll { background-color: #ffc; }
.c { color: #999; }
.k { color: #069; }
.o { color: #555; }
.cm { color: #999; }
.cp { color: #099; }
.c1 { color: #999; }
.cs { color: #999; }
.gd { background-color: #fcc; border: 1px solid #c00; }
.ge { font-style: italic; }
.gr { color: #f00; }
.gh { color: #030; }
.gi { background-color: #cfc; border: 1px solid #0c0; }
.go { color: #aaa; }
.gp { color: #009; }
.gu { color: #030; }
.gt { color: #9c6; }
.kc { color: #069; }
.kd { color: #069; }
.kn { color: #069; }
.kp { color: #069; }
.kr { color: #069; }
.kt { color: #078; }
.m { color: #f60; }
.s { color: #d44950; }
.na { color: #4f9fcf; }
.nb { color: #366; }
.nc { color: #0a8; }
.no { color: #360; }
.nd { color: #99f; }
.ni { color: #999; }
.ne { color: #c00; }
.nf { color: #c0f; }
.nl { color: #99f; }
.nn { color: #0cf; }
.nt { color: #2f6f9f; }
.nv { color: #033; }
.ow { color: #000; }
.w { color: #bbb; }
.mf { color: #f60; }
.mh { color: #f60; }
.mi { color: #f60; }
.mo { color: #f60; }
.sb { color: #c30; }
.sc { color: #c30; }
.sd { font-style: italic; color: #c30; }
.s2 { color: #c30; }
.se { color: #c30; }
.sh { color: #c30; }
.si { color: #a00; }
.sx { color: #c30; }
.sr { color: #3aa; }
.s1 { color: #c30; }
.ss { color: #fc3; }
.bp { color: #366; }
.vc { color: #033; }
.vg { color: #033; }
.vi { color: #033; }
.il { color: #f60; }
.css .o,
.css .o + .nt,
.css .nt + .nt { color: #999; }
.language-bash::before,
.language-sh::before {
color: #009;
content: "$ ";
user-select: none;
}
.language-powershell::before {
color: #009;
content: "PM> ";
user-select: none;
}
-9
View File
@@ -1,9 +0,0 @@
// Local docs variables
$bd-purple: #563d7c !default;
$bd-purple-bright: lighten(saturate($bd-purple, 5%), 15%) !default;
$bd-purple-light: lighten(saturate($bd-purple, 5%), 45%) !default;
$bd-dark: #2a2730 !default;
$bd-download: #ffe484 !default;
$bd-info: #5bc0de !default;
$bd-warning: #f0ad4e !default;
$bd-danger: #d9534f !default;
+1 -7
View File
@@ -8,13 +8,7 @@
},
"extends": "../.eslintrc.json",
"rules": {
"consistent-return": "off",
"func-style": "off",
"no-console": "off",
"no-magic-numbers": "off",
"no-process-env": "off",
"no-process-exit": "off",
"no-sync": "off",
"spaced-comment": "off"
"strict": "error"
}
}
-43
View File
@@ -1,43 +0,0 @@
{
"attr-bans": ["align", "background", "bgcolor", "border", "frameborder", "longdesc", "marginwidth", "marginheight", "scrolling"],
"attr-name-style": false,
"attr-no-dup": true,
"attr-no-unsafe-char": true,
"attr-quote-style": "double",
"attr-req-value": true,
"attr-validate": true,
"class-no-dup": true,
"class-style": "dash",
"doctype-first": true,
"doctype-html5": true,
"fig-req-figcaption": false,
"focusable-tabindex-style": true,
"head-req-title": true,
"head-valid-content-model": false,
"href-style": false,
"html-req-lang": true,
"html-valid-content-model": false,
"id-class-ignore-regex": "(onclick|content|[a-z]+([A-Z][a-z])+)",
"id-class-no-ad": true,
"id-class-style": "dash",
"id-no-dup": true,
"img-req-alt": "allownull",
"img-req-src": false,
"indent-style": "spaces",
"indent-width": 2,
"input-radio-req-name": false,
"input-req-label": false,
"label-req-for": true,
"lang-style": "case",
"line-end-style": "lf",
"spec-char-escape": false,
"table-req-header": false,
"tag-bans": ["b", "i"],
"tag-close": true,
"tagname-lowercase": true,
"tag-name-match": true,
"tag-self-close": false,
"text-ignore-regex": false,
"title-max-len": 70,
"title-no-dup": true
}
+14
View File
@@ -0,0 +1,14 @@
'use strict'
const pkg = require('../package.json')
const year = new Date().getFullYear()
function getBanner(pluginFilename) {
return `/*!
* Bootstrap${pluginFilename ? ` ${pluginFilename}` : ''} v${pkg.version} (${pkg.homepage})
* Copyright 2011-${year} ${pkg.author}
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/`
}
module.exports = getBanner
+92
View File
@@ -0,0 +1,92 @@
#!/usr/bin/env node
/*!
* Script to build our plugins to use them separately.
* Copyright 2020-2022 The Bootstrap Authors
* Copyright 2020-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
'use strict'
const path = require('path')
const rollup = require('rollup')
const { babel } = require('@rollup/plugin-babel')
const banner = require('./banner.js')
const TEST = process.env.NODE_ENV === 'test'
const plugins = [
babel({
// Only transpile our source code
exclude: 'node_modules/**',
// Include the helpers in each file, at most one copy of each
babelHelpers: 'bundled'
})
]
const bsPlugins = {
Alert: path.resolve(__dirname, '../js/src/alert.js'),
Button: path.resolve(__dirname, '../js/src/button.js'),
Carousel: path.resolve(__dirname, '../js/src/carousel.js'),
Collapse: path.resolve(__dirname, '../js/src/collapse.js'),
Dropdown: path.resolve(__dirname, '../js/src/dropdown.js'),
Modal: path.resolve(__dirname, '../js/src/modal.js'),
Popover: path.resolve(__dirname, '../js/src/popover.js'),
ScrollSpy: path.resolve(__dirname, '../js/src/scrollspy.js'),
Tab: path.resolve(__dirname, '../js/src/tab.js'),
Toast: path.resolve(__dirname, '../js/src/toast.js'),
Tooltip: path.resolve(__dirname, '../js/src/tooltip.js'),
Util: path.resolve(__dirname, '../js/src/util.js')
}
const rootPath = TEST ? '../js/coverage/dist/' : '../js/dist/'
const build = async plugin => {
console.log(`Building ${plugin} plugin...`)
const external = ['jquery', 'popper.js']
const globals = {
jquery: 'jQuery', // Ensure we use jQuery which is always available even in noConflict mode
'popper.js': 'Popper'
}
// Do not bundle Util in plugins
if (plugin !== 'Util') {
external.push(bsPlugins.Util)
globals[bsPlugins.Util] = 'Util'
}
// Do not bundle Tooltip in Popover
if (plugin === 'Popover') {
external.push(bsPlugins.Tooltip)
globals[bsPlugins.Tooltip] = 'Tooltip'
}
const pluginFilename = `${plugin.toLowerCase()}.js`
const bundle = await rollup.rollup({
input: bsPlugins[plugin],
plugins,
external
})
await bundle.write({
banner: banner(pluginFilename),
format: 'umd',
name: plugin,
sourcemap: true,
globals,
file: path.resolve(__dirname, `${rootPath}${pluginFilename}`)
})
console.log(`Building ${plugin} plugin... Done!`)
}
const main = async () => {
try {
await Promise.all(Object.keys(bsPlugins).map(plugin => build(plugin)))
} catch (error) {
console.error(error)
process.exit(1)
}
}
main()
Executable → Regular
+51 -76
View File
@@ -1,106 +1,81 @@
#!/usr/bin/env node
'use strict'
/*!
* Script to update version number references in the project.
* Copyright 2017-2018 The Bootstrap Authors
* Copyright 2017-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Copyright 2017-2022 The Bootstrap Authors
* Copyright 2017-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
/* global Set */
'use strict'
const fs = require('fs')
const fs = require('fs').promises
const path = require('path')
const sh = require('shelljs')
const globby = require('globby')
sh.config.fatal = true
const VERBOSE = process.argv.includes('--verbose')
const DRY_RUN = process.argv.includes('--dry') || process.argv.includes('--dry-run')
// These are the filetypes we only care about replacing the version
const GLOB = [
'**/*.{css,html,js,json,md,scss,txt,yml}'
]
const GLOBBY_OPTIONS = {
cwd: path.join(__dirname, '..'),
gitignore: true
}
// Blame TC39... https://github.com/benjamingr/RegExp.escape/issues/37
function regExpQuote(string) {
return string.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&')
return string.replace(/[$()*+.?[\\\]^{|}-]/g, '\\$&')
}
function regExpQuoteReplacement(string) {
return string.replace(/[$]/g, '$$')
return string.replace(/\$/g, '$$')
}
const DRY_RUN = false
async function replaceRecursively(file, oldVersion, newVersion) {
const originalString = await fs.readFile(file, 'utf8')
const newString = originalString.replace(
new RegExp(regExpQuote(oldVersion), 'g'), regExpQuoteReplacement(newVersion)
)
function walkAsync(directory, excludedDirectories, fileCallback, errback) {
if (excludedDirectories.has(path.parse(directory).base)) {
// No need to move any further if the strings are identical
if (originalString === newString) {
return
}
fs.readdir(directory, (err, names) => {
if (err) {
errback(err)
return
}
names.forEach((name) => {
const filepath = path.join(directory, name)
fs.lstat(filepath, (err, stats) => {
if (err) {
process.nextTick(errback, err)
return
}
if (stats.isDirectory()) {
process.nextTick(walkAsync, filepath, excludedDirectories, fileCallback, errback)
} else if (stats.isFile()) {
process.nextTick(fileCallback, filepath)
}
})
})
})
}
function replaceRecursively(directory, excludedDirectories, allowedExtensions, original, replacement) {
original = new RegExp(regExpQuote(original), 'g')
replacement = regExpQuoteReplacement(replacement)
const updateFile = DRY_RUN ? (filepath) => {
if (allowedExtensions.has(path.parse(filepath).ext)) {
console.log(`FILE: ${filepath}`)
} else {
console.log(`EXCLUDED:${filepath}`)
}
} : (filepath) => {
if (allowedExtensions.has(path.parse(filepath).ext)) {
sh.sed('-i', original, replacement, filepath)
}
if (VERBOSE) {
console.log(`FILE: ${file}`)
}
walkAsync(directory, excludedDirectories, updateFile, (err) => {
console.error('ERROR while traversing directory!:')
console.error(err)
process.exit(1)
})
if (DRY_RUN) {
return
}
await fs.writeFile(file, newString, 'utf8')
}
function main(args) {
if (args.length !== 2) {
console.error('USAGE: change-version old_version new_version')
async function main(args) {
let [oldVersion, newVersion] = args
if (!oldVersion || !newVersion) {
console.error('USAGE: change-version old_version new_version [--verbose] [--dry[-run]]')
console.error('Got arguments:', args)
process.exit(1)
}
const oldVersion = args[0]
const newVersion = args[1]
const EXCLUDED_DIRS = new Set([
'.git',
'node_modules',
'vendor'
])
const INCLUDED_EXTENSIONS = new Set([
// This extension whitelist is how we avoid modifying binary files
'',
'.css',
'.html',
'.js',
'.json',
'.md',
'.scss',
'.txt',
'.yml'
])
replaceRecursively('.', EXCLUDED_DIRS, INCLUDED_EXTENSIONS, oldVersion, newVersion)
// Strip any leading `v` from arguments because otherwise we will end up with duplicate `v`s
[oldVersion, newVersion] = [oldVersion, newVersion].map(arg => arg.startsWith('v') ? arg.slice(1) : arg)
try {
const files = await globby(GLOB, GLOBBY_OPTIONS)
await Promise.all(files.map(file => replaceRecursively(file, oldVersion, newVersion)))
} catch (error) {
console.error(error)
process.exit(1)
}
}
main(process.argv.slice(2))
Binary file not shown.
+19 -13
View File
@@ -5,25 +5,27 @@
* Remember to use the same vendor files as the CDN ones,
* otherwise the hashes won't match!
*
* Copyright 2017-2018 The Bootstrap Authors
* Copyright 2017-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Copyright 2017-2022 The Bootstrap Authors
* Copyright 2017-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
'use strict'
const crypto = require('crypto')
const fs = require('fs')
const path = require('path')
const sriToolbox = require('sri-toolbox')
const sh = require('shelljs')
const pkg = require('../package.json')
sh.config.fatal = true
const configFile = path.join(__dirname, '../_config.yml')
const configFile = path.join(__dirname, '../config.yml')
// Array of objects which holds the files to generate SRI hashes for.
// `file` is the path from the root folder
// `configPropertyName` is the _config.yml variable's name of the file
// `configPropertyName` is the config.yml variable's name of the file
const files = [
{
file: 'dist/css/bootstrap.min.css',
@@ -34,27 +36,31 @@ const files = [
configPropertyName: 'js_hash'
},
{
file: 'assets/js/vendor/jquery-slim.min.js',
file: 'dist/js/bootstrap.bundle.min.js',
configPropertyName: 'js_bundle_hash'
},
{
file: `site/static/docs/${pkg.config.version_short}/assets/js/vendor/jquery.slim.min.js`,
configPropertyName: 'jquery_hash'
},
{
file: 'assets/js/vendor/popper.min.js',
file: 'node_modules/popper.js/dist/umd/popper.min.js',
configPropertyName: 'popper_hash'
}
]
files.forEach((file) => {
files.forEach(file => {
fs.readFile(file.file, 'utf8', (err, data) => {
if (err) {
throw err
}
const integrity = sriToolbox.generate({
algorithms: ['sha384']
}, data)
const algo = 'sha384'
const hash = crypto.createHash(algo).update(data, 'utf8').digest('base64')
const integrity = `${algo}-${hash}`
console.log(`${file.configPropertyName}: ${integrity}`)
sh.sed('-i', new RegExp(`(\\s${file.configPropertyName}:\\s+"|')(\\S+)("|')`), `$1${integrity}$3`, configFile)
sh.sed('-i', new RegExp(`^(\\s+${file.configPropertyName}:\\s+["'])\\S*(["'])`), `$1${integrity}$2`, configFile)
})
})
-83
View File
@@ -1,83 +0,0 @@
#!/usr/bin/env node
/*!
* Script to find unused Sass variables.
*
* Copyright 2017-2018 The Bootstrap Authors
* Copyright 2017-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
'use strict'
const fs = require('fs')
const path = require('path')
const glob = require('glob')
// Blame TC39... https://github.com/benjamingr/RegExp.escape/issues/37
function regExpQuote(str) {
return str.replace(/[-\\^$*+?.()|[\]{}]/g, '\\$&')
}
let globalSuccess = true
function findUnusedVars(dir) {
if (!(fs.existsSync(dir) && fs.statSync(dir).isDirectory())) {
console.log(`"${dir}": Not a valid directory!`)
process.exit(1)
}
console.log(`Finding unused variables in "${dir}"...`)
// A variable to handle success/failure message in this function
let unusedVarsFound = false
// Array of all Sass files' content
const sassFiles = glob.sync(path.join(dir, '**/*.scss'))
// String of all Sass files' content
let sassFilesString = ''
sassFiles.forEach((file) => {
sassFilesString += fs.readFileSync(file, 'utf8')
})
// Array of all Sass variables
const variables = sassFilesString.match(/(^\$[a-zA-Z0-9_-]+[^:])/gm)
console.log(`Found ${variables.length} total variables.`)
// Loop through each variable
variables.forEach((variable) => {
const re = new RegExp(regExpQuote(variable), 'g')
const count = (sassFilesString.match(re) || []).length
if (count === 1) {
console.log(`Variable "${variable}" is not being used.`)
unusedVarsFound = true
globalSuccess = false
}
})
if (unusedVarsFound === false) {
console.log(`No unused variables found in "${dir}".`)
}
}
function main(args) {
if (args.length < 1) {
console.log('Wrong arguments!')
console.log('Usage: lint-vars.js folder [, folder2...]')
process.exit(1)
}
args.forEach((arg) => {
findUnusedVars(arg)
})
if (globalSuccess === false) {
process.exit(1)
}
}
// The first and second args are: path/to/node script.js
main(process.argv.slice(2))
+14 -10
View File
@@ -1,14 +1,18 @@
'use strict'
module.exports = (ctx) => ({
map: ctx.file.dirname.includes('examples') ? false : {
inline: false,
annotation: true,
sourcesContent: true
},
plugins: {
autoprefixer: {
cascade: false
module.exports = ctx => {
return {
map: ctx.file.dirname.includes('examples') ?
false :
{
inline: false,
annotation: true,
sourcesContent: true
},
plugins: {
autoprefixer: {
cascade: false
}
}
}
})
}
+13 -22
View File
@@ -1,25 +1,20 @@
'use strict'
const path = require('path')
const babel = require('rollup-plugin-babel')
const resolve = require('rollup-plugin-node-resolve')
const path = require('path')
const { babel } = require('@rollup/plugin-babel')
const { nodeResolve } = require('@rollup/plugin-node-resolve')
const banner = require('./banner.js')
const pkg = require(path.resolve(__dirname, '../package.json'))
const BUNDLE = process.env.BUNDLE === 'true'
const year = new Date().getFullYear()
const BUNDLE = process.env.BUNDLE === 'true'
let fileDest = 'bootstrap.js'
let fileDest = 'bootstrap.js'
const external = ['jquery', 'popper.js']
const plugins = [
babel({
exclude: 'node_modules/**', // Only transpile our source code
externalHelpersWhitelist: [ // Include only required helpers
'defineProperties',
'createClass',
'inheritsLoose',
'defineProperty',
'objectSpread'
]
// Only transpile our source code
exclude: 'node_modules/**',
// Include the helpers in the bundle, at most one copy of each
babelHelpers: 'bundled'
})
]
const globals = {
@@ -32,17 +27,13 @@ if (BUNDLE) {
// Remove last entry in external array to bundle Popper
external.pop()
delete globals['popper.js']
plugins.push(resolve())
plugins.push(nodeResolve())
}
module.exports = {
input: path.resolve(__dirname, '../js/src/index.js'),
input: path.resolve(__dirname, '../js/index.js'),
output: {
banner: `/*!
* Bootstrap v${pkg.version} (${pkg.homepage})
* Copyright 2011-${year} ${pkg.author}
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/`,
banner,
file: path.resolve(__dirname, `../dist/js/${fileDest}`),
format: 'umd',
globals,
-65
View File
@@ -1,65 +0,0 @@
[
{
"browserName": "safari",
"platform": "OS X 10.11",
"version": "latest"
},
{
"browserName": "chrome",
"platform": "OS X 10.11",
"version": "latest"
},
{
"browserName": "firefox",
"platform": "OS X 10.11",
"version": "latest"
},
{
"browserName": "MicrosoftEdge",
"platform": "Windows 10",
"version": "latest"
},
{
"browserName": "internet explorer",
"version": "11",
"platform": "Windows 8.1"
},
{
"browserName": "internet explorer",
"version": "10",
"platform": "Windows 8"
},
{
"browserName": "chrome",
"platform": "Windows 10",
"version": "latest"
},
{
"browserName": "firefox",
"platform": "Windows 10",
"version": "latest"
},
{
"browserName": "iphone",
"deviceName": "iPhone Simulator",
"platformName": "OS X 10.11",
"version": "9.3"
},
{
"browserName": "chrome",
"platform": "Linux",
"version": "latest"
},
{
"browserName": "firefox",
"platform": "Linux",
"version": "latest"
},
{
"platform": "Linux",
"browserName": "android",
"deviceName": "Android Emulator",
"version": "latest",
"deviceType": "phone"
}
]
-111
View File
@@ -1,111 +0,0 @@
/*!
* Script to run our Sauce Labs tests.
* Copyright 2017-2018 The Bootstrap Authors
* Copyright 2017-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*
Docs: https://wiki.saucelabs.com/display/DOCS/Platform+Configurator
Mac Opera is not currently supported by Sauce Labs
Win Opera 15+ is not currently supported by Sauce Labs
iOS Chrome is not currently supported by Sauce Labs
*/
'use strict'
const path = require('path')
const JSUnitSaucelabs = require('jsunitsaucelabs')
const jsUnitSaucelabs = new JSUnitSaucelabs({
username: process.env.SAUCE_USERNAME,
password: process.env.SAUCE_ACCESS_KEY,
build: process.env.TRAVIS_JOB_ID
})
const testURL = 'http://localhost:3000/js/tests/index.html?hidepassed'
const browsersFile = require(path.resolve(__dirname, './sauce_browsers.json'))
let jobsDone = 0
let jobsSucceeded = 0
const waitingCallback = (error, body, id) => {
if (error) {
console.error(error)
process.exit(1)
}
if (typeof body !== 'undefined') {
if (!body.completed) {
setTimeout(() => {
jsUnitSaucelabs.getStatus(id, (error, body) => {
waitingCallback(error, body, id)
})
}, 2000)
} else {
const test = body['js tests'][0]
let passed = false
let errorStr = false
if (test.result !== null) {
if (typeof test.result === 'string' && test.result === 'Test exceeded maximum duration') {
errorStr = test.result
} else {
passed = test.result.total === test.result.passed
}
}
console.log(`Tested ${testURL}`)
console.log(`Platform: ${test.platform.join(', ')}`)
console.log(`Passed: ${passed.toString()}`)
console.log(`URL: ${test.url}\n`)
if (errorStr) {
console.error(errorStr)
}
if (passed) {
jobsSucceeded++
}
jobsDone++
// Exit
if (jobsDone === browsersFile.length - 1) {
jsUnitSaucelabs.stop()
if (jobsDone > jobsSucceeded) {
const failedTests = jobsDone - jobsSucceeded
throw new Error(`${failedTests} test${failedTests > 1 ? 's' : ''} failed.`)
}
console.log('All tests passed')
process.exit(0)
}
}
}
}
jsUnitSaucelabs.on('tunnelCreated', () => {
browsersFile.forEach((tmpBrowser) => {
const browsersPlatform = typeof tmpBrowser.platform === 'undefined' ? tmpBrowser.platformName : tmpBrowser.platform
const browsersArray = [browsersPlatform, tmpBrowser.browserName, tmpBrowser.version]
jsUnitSaucelabs.start([browsersArray], testURL, 'qunit', (error, success) => {
if (typeof success !== 'undefined') {
const taskIds = success['js tests']
if (!taskIds || taskIds.length === 0) {
throw new Error('Error starting tests through Sauce Labs API')
}
taskIds.forEach((id) => {
jsUnitSaucelabs.getStatus(id, (error, body) => {
waitingCallback(error, body, id)
})
})
} else {
console.error(error)
}
})
})
})
jsUnitSaucelabs.initTunnel()
-70
View File
@@ -1,70 +0,0 @@
#!/usr/bin/env bash
#
# Usage
# ---------------
# 1. Clone second version of Bootstrap in sibling directory named `bs-docs`.
# 2. Within `bs-docs` copy, switch to `gh-pages` branch.
# 3. Pull latest, re-bundle, re-npm.
# 4. Run script.
red=$'\e[1;31m'
green=$'\e[1;32m'
#blue=$'\e[1;34m'
magenta=$'\e[1;35m'
#cyan=$'\e[1;36m'
end=$'\e[0m'
# Get current version from package.json
current_version=$(node -p "require('./package.json').version")
if [[ $# -lt 1 ]]; then
printf "\n%s⚠️ Shipping aborted. You must specify a version.\n%s" $red $end
exit 1
fi
# Pulling latest changes, just to be sure
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sPulling latest changes...%s" $magenta $end
printf "\n%s=======================================================\n\n%s" $magenta $end
git pull origin v4-dev
# Update version number
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sUpdating version number...%s" $magenta $end
printf "\n%s=======================================================\n%s" $magenta $end
npm run release-version "$current_version" "$1"
# Compile latest CSS and JS
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sCompile latest CSS and JS...%s" $magenta $end
printf "\n%s=======================================================\n%s" $magenta $end
npm run dist
# Generate the SRI hashes
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sGenerate the SRI hashes...%s" $magenta $end
printf "\n%s=======================================================\n%s" $magenta $end
npm run release-sri
# Compress the dist files
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sCompressing the dist files...%s" $magenta $end
printf "\n%s=======================================================\n%s" $magenta $end
npm run release-zip
# Compile the docs
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sCompile hosted documentation...%s" $magenta $end
printf "\n%s=======================================================\n%s" $magenta $end
npm run docs-github
# Copy the contents of the built docs site over to `bs-docs` repo
printf "\n%s=======================================================%s" $magenta $end
printf "\n%sCopy it over...%s" $magenta $end
printf "\n%s=======================================================\n%s" $magenta $end
cp -rf _gh_pages/. ../bs-docs/
printf "\nDone!\n"
printf "\n%s=======================================================%s" $green $end
printf "\n%sSuccess, $1 is ready to review and publish.%s" $green $end
printf "\n%s=======================================================\n\n%s" $green $end
-13
View File
@@ -1,13 +0,0 @@
#!/bin/bash
# Upload built docs to preview.twbsapps.com
# Add build metadata to version
sed -i "/^current_version:/ s/\$/+pr.${TRAVIS_COMMIT}/" _config.yml
bundle exec jekyll build --destination "$TRAVIS_COMMIT" --baseurl "/c/${TRAVIS_COMMIT}"
openssl aes-256-cbc -K "${encrypted_2b749c8e6327_key:?}" -iv "${encrypted_2b749c8e6327_iv:?}" -in build/gcp-key.json.enc -out build/gcp-key.json -d
gcloud auth activate-service-account "$GCP_SERVICE_ACCOUNT" --key-file build/gcp-key.json &> /dev/null || (echo 'GCP login failed!'; exit 1)
echo "Uploading to http://preview.twbsapps.com/c/${TRAVIS_COMMIT} ..."
time gsutil -q -m cp -z html,css,js,svg -r "./${TRAVIS_COMMIT}" gs://preview.twbsapps.com/c/
echo 'Done.'
+14 -22
View File
@@ -2,56 +2,48 @@
/*!
* Script to run vnu-jar if Java is available.
* Copyright 2017-2018 The Bootstrap Authors
* Copyright 2017-2018 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Copyright 2017-2022 The Bootstrap Authors
* Copyright 2017-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
'use strict'
const childProcess = require('child_process')
const { execFile, spawn } = require('child_process')
const vnu = require('vnu-jar')
childProcess.exec('java -version', (error, stdout, stderr) => {
execFile('java', ['-version'], (error, stdout, stderr) => {
if (error) {
console.error('Skipping vnu-jar test; Java is missing.')
return
}
const is32bitJava = !stderr.match(/64-Bit/)
const is32bitJava = !/64-Bit/.test(stderr)
// vnu-jar accepts multiple ignores joined with a `|`.
// Also note that the ignores are regular expressions.
// Also note that the ignores are string regular expressions.
const ignores = [
// "autocomplete" is included in <button> and checkboxes and radio <input>s due to
// Firefox's non-standard autocomplete behavior - see https://bugzilla.mozilla.org/show_bug.cgi?id=654072
'Attribute “autocomplete” is only allowed when the input type is.*',
'Attribute “autocomplete” not allowed on element “button” at this point.',
// We use holder.js with `data-src` and no `src` to avoid 404 errors;
// we could work around this, but I'm not sure it's worth it.
'Element “img” is missing required attribute “src”.',
// Markup used in Components → Forms → Layout → Form grid → Horizontal form is currently invalid,
// but used this way due to lack of support for flexbox layout on <fieldset> element in most browsers
'Element “legend” not allowed as child of element “div” in this context.*',
// Content → Reboot uses various date/time inputs as a visual example.
// Documentation does not rely on them being usable.
'The “date” input type is not supported in all browsers.*',
'The “time” input type is not supported in all browsers.*',
// IE11 doesn't recognise <main> / give the element an implicit "main" landmark.
// Explicit role="main" is redundant for other modern browsers, but still valid.
'The “main” role is unnecessary for element “main”.',
// Ignore the wrong lanuage code warnings for now; they happen randomly.
'This document appears to be written in.*'
// Per https://www.w3.org/TR/html-aria/#docconformance having "aria-disabled" on a link is
// NOT RECOMMENDED, but it's still valid - we explain in the docs that it's not ideal,
// and offer more robust alternatives, but also need to show a less-than-ideal example
'An “aria-disabled” attribute whose value is “true” should not be specified on an “a” element that has an “href” attribute.'
].join('|')
const args = [
'-jar',
vnu,
`"${vnu}"`,
'--asciiquotes',
'--skip-non-html',
'--Werror',
`--filterpattern "${ignores}"`,
'_gh_pages/',
'_site/',
'js/tests/'
]
@@ -60,7 +52,7 @@ childProcess.exec('java -version', (error, stdout, stderr) => {
args.splice(0, 0, '-Xss512k')
}
return childProcess.spawn('java', args, {
return spawn('java', args, {
shell: true,
stdio: 'inherit'
})
-8
View File
@@ -1,8 +0,0 @@
{
"globDirectory": "./",
"globPatterns": [
"_gh_pages/**/*.{html,css,js,json,png,svg}"
],
"swSrc": "./sw.js",
"swDest": "./_gh_pages/sw.js"
}
-51
View File
@@ -1,51 +0,0 @@
'use strict'
const fs = require('fs')
const path = require('path')
const swBuild = require('workbox-build')
const config = require('./workbox.config.json')
const buildPrefix = '_gh_pages/'
const workboxSWSrcPath = require.resolve('workbox-sw')
const wbFileName = path.basename(workboxSWSrcPath)
const workboxSWDestPath = `${buildPrefix}assets/js/vendor/${wbFileName}`
const workboxSWSrcMapPath = `${workboxSWSrcPath}.map`
const workboxSWDestMapPath = `${workboxSWDestPath}.map`
fs.createReadStream(workboxSWSrcPath).pipe(fs.createWriteStream(workboxSWDestPath))
fs.createReadStream(workboxSWSrcMapPath).pipe(fs.createWriteStream(workboxSWDestMapPath))
const updateUrl = (manifestEntries) => {
const manifest = manifestEntries.map((entry) => {
if (entry.url.startsWith(buildPrefix)) {
const regex = new RegExp(buildPrefix, 'g')
entry.url = entry.url.replace(regex, '')
}
return entry
})
return {
manifest,
warnings: []
}
}
config.manifestTransforms = [updateUrl]
swBuild.injectManifest(config).then(({
count,
size
}) => {
const wbSwRegex = /{fileName}/g
fs.readFile(config.swDest, 'utf8', (err, data) => {
if (err) {
throw err
}
const swFileContents = data.replace(wbSwRegex, wbFileName)
fs.writeFile(config.swDest, swFileContents, () => {
console.log(`Pre-cache Manifest generated. Pre-cached ${count} files, totalling ${size} bytes.`)
})
})
}).catch((error) => {
console.error(`Something went wrong: ${error}`)
})
+88
View File
@@ -0,0 +1,88 @@
#!/usr/bin/env node
/*!
* Script to create the built examples zip archive;
* requires the `zip` command to be present!
* Copyright 2020-2022 The Bootstrap Authors
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/
'use strict'
const path = require('path')
const sh = require('shelljs')
const pkg = require('../package.json')
const versionShort = pkg.config.version_short
const distFolder = `bootstrap-${pkg.version}-examples`
const rootDocsDir = '_site'
const docsDir = `${rootDocsDir}/docs/${versionShort}/`
// these are the files we need in the examples
const cssFiles = [
'bootstrap.min.css',
'bootstrap.min.css.map'
]
const jsFiles = [
'bootstrap.bundle.min.js',
'bootstrap.bundle.min.js.map'
]
const imgFiles = [
'bootstrap-outline.svg',
'bootstrap-solid.svg'
]
sh.config.fatal = true
if (!sh.test('-d', rootDocsDir)) {
throw new Error(`The "${rootDocsDir}" folder does not exist, did you forget building the docs?`)
}
// switch to the root dir
sh.cd(path.join(__dirname, '..'))
// remove any previously created folder/zip with the same name
sh.rm('-rf', [distFolder, `${distFolder}.zip`])
// create any folders so that `cp` works
sh.mkdir('-p', [
distFolder,
`${distFolder}/assets/brand/`,
`${distFolder}/assets/dist/css/`,
`${distFolder}/assets/dist/js/`
])
sh.cp('-Rf', `${docsDir}/examples/*`, distFolder)
cssFiles.forEach(file => {
sh.cp('-f', `${docsDir}/dist/css/${file}`, `${distFolder}/assets/dist/css/`)
})
jsFiles.forEach(file => {
sh.cp('-f', `${docsDir}/dist/js/${file}`, `${distFolder}/assets/dist/js/`)
})
imgFiles.forEach(file => {
sh.cp('-f', `${docsDir}/assets/brand/${file}`, `${distFolder}/assets/brand/`)
})
sh.rm(`${distFolder}/index.html`)
// get all examples' HTML files
sh.find(`${distFolder}/**/*.html`).forEach(file => {
const fileContents = sh.cat(file)
.toString()
.replace(new RegExp(`"/docs/${versionShort}/`, 'g'), '"../')
.replace(/"..\/dist\//g, '"../assets/dist/')
.replace(/(<link href="\.\.\/.*) integrity=".*>/g, '$1>')
.replace(/(<script src="\.\.\/.*) integrity=".*>/g, '$1></script>')
.replace(/( +)<!-- favicons(.|\n)+<style>/i, ' <style>')
new sh.ShellString(fileContents).to(file)
})
// create the zip file
sh.exec(`zip -r9 "${distFolder}.zip" "${distFolder}"`)
// remove the folder we created
sh.rm('-rf', distFolder)

Some files were not shown because too many files have changed in this diff Show More