* Docs: add explanation of the base `.btn` class
and a callout reminding authors to at least define some focus styling if they intend to use it "naked"
* Turn callout into a warning
* Add initial heading
* Tweak callout wording
* Make theme switcher accessible
* set an explicit `aria-label` to the switcher (as the `<span>` is not sufficient, as it can be display:none'd and then the button has no accName)
* make the theme buttons actual `aria-pressed` toggles
* Dynamically update aria-label for theme switcher
* Explicitly reset focus after activating theme
* Use innerText for the constructed dynamic aria-label
this way, if the text ever gets changed in the html, this will adapt appropriately
* Tweak accessible name for the dropdown
* Fixup
* Use `textContent` instead of `innerText`
* Add global variables for box-shadow focus rings
* Update instances of -btn-focus-box-shadow to use -ring-box-shadow, unless it's for buttons or inputs
* fix variable name
* Add CSS variables for global focus styling, document it
* Move to CSS vars section
* Update scss/_nav.scss
Co-authored-by: Gaël Poupard <ffoodd@users.noreply.github.com>
* Helper and utils
* Fix bundlewatch
* Change 'Focus ring' in sidebar so that the page can be visible
* Minor typo fix
* fix merge
* Revamp some more, improve docs
Co-authored-by: Gaël Poupard <ffoodd@users.noreply.github.com>
Co-authored-by: Julien Déramond <juderamond@gmail.com>
Co-authored-by: Patrick H. Lauke <redux@splintered.co.uk>
* use scrollspy on docs pages
* Update colors by taking into account new dark mode
* Restyle it
* Update colors once more
* Fix some color contrast issues
Co-authored-by: Julien Déramond <juderamond@gmail.com>
Co-authored-by: Mark Otto <markdotto@gmail.com>
* Add .nav-underline modifier class
* Tweak sizing and spacing, add underline on hover
* Rebuild with Sass and CSS variables
* Document CSS vars
* Bump bundlewatch
It's not easy to otherwise correlate the examples with the relevant classes: you'd have to mentally count and correlate them. This obviates that need. Please see the image below to see the usefulness of the above.
Co-authored-by: Mark Otto <markdotto@gmail.com>
* Use aria-labelledby to associate form-text (helper) with input field when it contains mandatory info (e.g. data format)
* Example in input-group needs aria-describedby (or aria-labelledby) too
Co-authored-by: Mark Otto <markdotto@gmail.com>
* Update hero button color
* Fix link color on examples index
* Move .bd-btn-lg to docs buttons partial, move larger border-radius to that class so medium buttons don't look odd
* Undo the markup split
* Round padding up to whole number
* Set up CSS testing using sass-true and mocha
Use mocha to handle the heavy lifting of finding tests and running them.
Mocha is made to look directly for SCSS files which are compiled
thanks to Node's require.extensions mechanism.
* Add CSS tests to workflow
* Add tests for the generate-utility mixin
* Add tests for utilities generation
* Fix linting issues
* Fix test contents
Don't know why the whole utilities.test.scss ended up copied in the api.test.scss
* Remove unnecessary entry in package.json
* Move to Jasmine for running the tests
* Move running of CSS tests before CSS build
* Update linting set up
Add exceptions for test files in stylelint
* Remove irrelevant option for sass-true
* Fix linting issues after rebase
* Add color mode tests
* Fix linter
Co-authored-by: Mark Otto <markdotto@gmail.com>