diff --git a/docs/inputs.stories.js b/docs/inputs.stories.js
index 970a1d4..79510f8 100644
--- a/docs/inputs.stories.js
+++ b/docs/inputs.stories.js
@@ -1,28 +1,30 @@
import { storiesOf } from '@storybook/html'; // eslint-disable-line import/no-extraneous-dependencies
import { // eslint-disable-line import/no-extraneous-dependencies
- withKnobs, radios,
+ withKnobs, radios, boolean,
} from '@storybook/addon-knobs';
const stories = storiesOf('Inputs', module);
stories.addDecorator(withKnobs);
-stories.add('input.radio', () => `
- `)
+stories.add('input.radio', () => {
+ const isDark = boolean('is-dark', false) ? 'is-dark' : '';
+
+ return (`
+ `
+ );
+})
.add('input.checkbox', () => {
- const selectedClass = radios('class', {
- default: '',
- 'is-dark': 'is-dark',
- }, '');
+ const isDark = boolean('is-dark', false) ? 'is-dark' : '';
return (
``
);
diff --git a/scss/form/radios.scss b/scss/form/radios.scss
index ac13669..f554626 100644
--- a/scss/form/radios.scss
+++ b/scss/form/radios.scss
@@ -20,6 +20,7 @@
(2,2,0,0,0,0),
);
$colors: ($base-color, map-get($default-colors, "shadow"));
+ $colors-radio-dark: ($color-white, map-get($default-colors, "shadow"));
margin-right: 20px;
-webkit-appearance: none;
@@ -50,4 +51,24 @@
&:checked:focus + span::before {
@include pixelize(2px, $radio-checked-focus, $colors);
}
+ &.is-dark {
+ + span {
+ color: $color-white;
+ }
+ // prettier-ignore
+ + span::before { /* stylelint-disable-line no-descending-specificity */
+ color: $color-white;
+ }
+
+ &:checked + span::before {
+ @include pixelize(2px, $radio-checked-focus, $colors-radio-dark);
+
+ color: $color-white;
+ }
+ &:checked:focus + span::before {
+ @include pixelize(2px, $radio-checked-focus, $colors-radio-dark);
+
+ color: $color-white;
+ }
+ }
}