UNPKG

bootstrap-darkmode

Version:

Stylesheet and Scripts for implementing dark mode with Bootstrap 4

16 lines 2.4 kB
export function writeDarkSwitch(config) { document.write(` <div class="custom-control custom-switch"> <input type="checkbox" class="custom-control-input" id="darkSwitch"> <label class="custom-control-label" for="darkSwitch">Dark Mode</label> </div> `); const darkSwitch = document.getElementById('darkSwitch'); darkSwitch.checked = config.getTheme() === 'dark'; darkSwitch.onchange = () => { config.setTheme(darkSwitch.checked ? 'dark' : 'light'); }; config.themeChangeHandlers.push(theme => darkSwitch.checked = theme === 'dark'); return darkSwitch; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFyay1zd2l0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Rhcmstc3dpdGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxlQUFlLENBQUMsTUFBbUI7SUFDL0MsUUFBUSxDQUFDLEtBQUssQ0FBQzs7Ozs7Q0FLbEIsQ0FBQyxDQUFDO0lBRUMsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQXFCLENBQUM7SUFFN0UsVUFBVSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssTUFBTSxDQUFDO0lBQ2xELFVBQVUsQ0FBQyxRQUFRLEdBQUcsR0FBRyxFQUFFO1FBQ3ZCLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzRCxDQUFDLENBQUM7SUFFRixNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sR0FBRyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUM7SUFFaEYsT0FBTyxVQUFVLENBQUM7QUFDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VGhlbWVDb25maWd9IGZyb20gJy4vdGhlbWUtY29uZmlnJztcblxuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlRGFya1N3aXRjaChjb25maWc6IFRoZW1lQ29uZmlnKSB7XG4gICAgZG9jdW1lbnQud3JpdGUoYFxuPGRpdiBjbGFzcz1cImN1c3RvbS1jb250cm9sIGN1c3RvbS1zd2l0Y2hcIj5cbjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBjbGFzcz1cImN1c3RvbS1jb250cm9sLWlucHV0XCIgaWQ9XCJkYXJrU3dpdGNoXCI+XG48bGFiZWwgY2xhc3M9XCJjdXN0b20tY29udHJvbC1sYWJlbFwiIGZvcj1cImRhcmtTd2l0Y2hcIj5EYXJrIE1vZGU8L2xhYmVsPlxuPC9kaXY+XG5gKTtcblxuICAgIGNvbnN0IGRhcmtTd2l0Y2ggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGFya1N3aXRjaCcpIGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG5cbiAgICBkYXJrU3dpdGNoLmNoZWNrZWQgPSBjb25maWcuZ2V0VGhlbWUoKSA9PT0gJ2RhcmsnO1xuICAgIGRhcmtTd2l0Y2gub25jaGFuZ2UgPSAoKSA9PiB7XG4gICAgICAgIGNvbmZpZy5zZXRUaGVtZShkYXJrU3dpdGNoLmNoZWNrZWQgPyAnZGFyaycgOiAnbGlnaHQnKTtcbiAgICB9O1xuXG4gICAgY29uZmlnLnRoZW1lQ2hhbmdlSGFuZGxlcnMucHVzaCh0aGVtZSA9PiBkYXJrU3dpdGNoLmNoZWNrZWQgPSB0aGVtZSA9PT0gJ2RhcmsnKTtcblxuICAgIHJldHVybiBkYXJrU3dpdGNoO1xufVxuIl19