mirror of
https://github.com/retspen/webvirtcloud
synced 2026-11-08 11:16:47 +00:00
build(deps): Bootstrap and Bootswatch 5.3.8
Bootstrap SCSS, the JS bundle and the Bootswatch themes go from 5.3.3 to 5.3.8 (bug fixes only), and wvc-main.min.css is recompiled from zephyr. Bootswatch now gives table text the body color, and Lux drops card and modal header borders. Tests compile every theme with the pinned libsass and check that the shipped CSS is zephyr from these sources. The update and rollback steps put back the two files a theme change rewrites, or git refuses to pull over them.
This commit is contained in:
parent
c23521bcf4
commit
d4f04cbf1e
80 changed files with 701 additions and 246 deletions
|
|
@ -444,6 +444,7 @@ docker compose up -d
|
|||
venv/bin/python3 -c "import sqlite3,sys; sqlite3.connect('db.sqlite3').backup(sqlite3.connect(sys.argv[1]))" "$b/db.sqlite3" &&
|
||||
cp -p webvirtcloud/settings.py /etc/nginx/conf.d/webvirtcloud.conf "$b"/ &&
|
||||
git rev-parse HEAD > "$b/commit" &&
|
||||
git checkout -- static/css/wvc-main.min.css dev/scss/wvc-main.scss &&
|
||||
git checkout master && git pull
|
||||
```
|
||||
|
||||
|
|
@ -507,6 +508,7 @@ b=/root/webvirtcloud-backup-YYYYMMDD-HHMMSS
|
|||
supervisorctl stop webvirtcloud novncd
|
||||
cd /srv/webvirtcloud &&
|
||||
! supervisorctl status webvirtcloud novncd | grep RUNNING &&
|
||||
git checkout -- static/css/wvc-main.min.css dev/scss/wvc-main.scss &&
|
||||
git checkout "$(cat "$b/commit")" &&
|
||||
venv/bin/python3 -c "import os,sqlite3,sys; [os.remove(p) for p in ('db.sqlite3-journal','db.sqlite3-wal','db.sqlite3-shm') if os.path.exists(p)]; sqlite3.connect(sys.argv[1]).backup(sqlite3.connect('db.sqlite3'))" "$b/db.sqlite3" &&
|
||||
cp "$b/settings.py" webvirtcloud/settings.py &&
|
||||
|
|
@ -552,6 +554,7 @@ A rollback leaves the clone on a detached HEAD at the restored commit; the updat
|
|||
- A running VM without a guest agent shows the IPv4 address the host learned by ARP (the lookup always failed before).
|
||||
- After a live migration the VM's NVRAM file is deleted on the source, when it is in libvirt's `/var/lib/libvirt/qemu/nvram` and the destination does not share that directory (a VM created there later with the same name would start with those UEFI variables).
|
||||
- gstfsd finds the guest's operating system the way libguestfs inspects it, so a root on LVM works, and it always answers (an error when it finds no or several operating systems). Update `/usr/local/bin/gstfsd` on every compute (see [Adding a Compute Node](#adding-a-compute-node), step 3).
|
||||
- A theme picked on the Settings page rewrites two tracked files; the update and rollback steps put back the shipped theme. Pick yours again afterwards, also after Docker recreates the container.
|
||||
- Docker no longer publishes port 6080; the console goes through nginx on the panel's port (`WS_PUBLIC_PORT`, default 80).
|
||||
|
||||
## Usage
|
||||
|
|
|
|||
33
appsettings/test_themes.py
Normal file
33
appsettings/test_themes.py
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
"""The themes in dev/scss/wvc-themes compile with the pinned libsass, and the
|
||||
shipped wvc-main.min.css is the default theme compiled from these sources."""
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
import sass
|
||||
from django.conf import settings
|
||||
from django.test import SimpleTestCase
|
||||
|
||||
SCSS = Path(settings.BASE_DIR, "dev", "scss")
|
||||
|
||||
|
||||
def compile_theme(theme):
|
||||
# the imports the settings view compiles
|
||||
return sass.compile(
|
||||
string=f"@import '{SCSS}/wvc-themes/{theme}/variables';\n"
|
||||
f"@import '{SCSS}/bootstrap-overrides.scss';\n"
|
||||
f"@import '{SCSS}/wvc-themes/{theme}/bootswatch';",
|
||||
output_style="compressed",
|
||||
)
|
||||
|
||||
|
||||
class ThemeTests(SimpleTestCase):
|
||||
def test_every_theme_compiles(self):
|
||||
themes = sorted(p.name for p in (SCSS / "wvc-themes").iterdir() if p.is_dir())
|
||||
self.assertIn("zephyr", themes)
|
||||
for theme in themes:
|
||||
with self.subTest(theme=theme):
|
||||
self.assertIn(".btn", compile_theme(theme))
|
||||
|
||||
def test_the_shipped_css_is_zephyr_from_these_sources(self):
|
||||
shipped = Path(settings.BASE_DIR, "static", "css", "wvc-main.min.css").read_text()
|
||||
self.assertEqual(shipped, compile_theme("zephyr"))
|
||||
4
dev/scss/bootstrap-overrides.scss
vendored
4
dev/scss/bootstrap-overrides.scss
vendored
|
|
@ -1,6 +1,6 @@
|
|||
/*!
|
||||
* Bootstrap v5.3.3 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2024 The Bootstrap Authors
|
||||
* Bootstrap v5.3.8 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2025 The Bootstrap Authors
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -134,17 +134,12 @@
|
|||
&:last-child { border-bottom: 0; }
|
||||
|
||||
// stylelint-disable selector-max-class
|
||||
> .accordion-header .accordion-button {
|
||||
&,
|
||||
&.collapsed {
|
||||
@include border-radius(0);
|
||||
}
|
||||
}
|
||||
// stylelint-enable selector-max-class
|
||||
|
||||
> .accordion-collapse {
|
||||
> .accordion-collapse,
|
||||
> .accordion-header .accordion-button,
|
||||
> .accordion-header .accordion-button.collapsed {
|
||||
@include border-radius(0);
|
||||
}
|
||||
// stylelint-enable selector-max-class
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
// Prevent double borders when buttons are next to each other
|
||||
> :not(.btn-check:first-child) + .btn,
|
||||
> .btn-group:not(:first-child) {
|
||||
margin-left: calc(#{$btn-border-width} * -1); // stylelint-disable-line function-disallowed-list
|
||||
margin-left: calc(-1 * #{$btn-border-width}); // stylelint-disable-line function-disallowed-list
|
||||
}
|
||||
|
||||
// Reset rounded corners
|
||||
|
|
@ -126,7 +126,7 @@
|
|||
|
||||
> .btn:not(:first-child),
|
||||
> .btn-group:not(:first-child) {
|
||||
margin-top: calc(#{$btn-border-width} * -1); // stylelint-disable-line function-disallowed-list
|
||||
margin-top: calc(-1 * #{$btn-border-width}); // stylelint-disable-line function-disallowed-list
|
||||
}
|
||||
|
||||
// Reset rounded corners
|
||||
|
|
@ -135,7 +135,12 @@
|
|||
@include border-bottom-radius(0);
|
||||
}
|
||||
|
||||
> .btn ~ .btn,
|
||||
// The top radius should be 0 if the button is:
|
||||
// - the "third or more" child
|
||||
// - the second child and the previous element isn't `.btn-check` (making it the first child visually)
|
||||
// - part of a btn-group which isn't the first child
|
||||
> .btn:nth-child(n + 3),
|
||||
> :not(.btn-check) + .btn,
|
||||
> .btn-group:not(:first-child) > .btn {
|
||||
@include border-top-radius(0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -193,8 +193,7 @@
|
|||
// The child selector allows nested `.card` within `.card-group`
|
||||
// to display properly.
|
||||
> .card {
|
||||
// Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4
|
||||
flex: 1 0 0%;
|
||||
flex: 1 0 0;
|
||||
margin-bottom: 0;
|
||||
|
||||
+ .card {
|
||||
|
|
@ -207,13 +206,13 @@
|
|||
&:not(:last-child) {
|
||||
@include border-end-radius(0);
|
||||
|
||||
.card-img-top,
|
||||
.card-header {
|
||||
> .card-img-top,
|
||||
> .card-header {
|
||||
// stylelint-disable-next-line property-disallowed-list
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
.card-img-bottom,
|
||||
.card-footer {
|
||||
> .card-img-bottom,
|
||||
> .card-footer {
|
||||
// stylelint-disable-next-line property-disallowed-list
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
|
@ -222,13 +221,13 @@
|
|||
&:not(:first-child) {
|
||||
@include border-start-radius(0);
|
||||
|
||||
.card-img-top,
|
||||
.card-header {
|
||||
> .card-img-top,
|
||||
> .card-header {
|
||||
// stylelint-disable-next-line property-disallowed-list
|
||||
border-top-left-radius: 0;
|
||||
}
|
||||
.card-img-bottom,
|
||||
.card-footer {
|
||||
> .card-img-bottom,
|
||||
> .card-footer {
|
||||
// stylelint-disable-next-line property-disallowed-list
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -99,6 +99,7 @@
|
|||
color: $carousel-control-color;
|
||||
text-align: center;
|
||||
background: none;
|
||||
filter: var(--#{$prefix}carousel-control-icon-filter);
|
||||
border: 0;
|
||||
opacity: $carousel-control-opacity;
|
||||
@include transition($carousel-control-transition);
|
||||
|
|
@ -168,7 +169,7 @@
|
|||
margin-left: $carousel-indicator-spacer;
|
||||
text-indent: -999px;
|
||||
cursor: pointer;
|
||||
background-color: $carousel-indicator-active-bg;
|
||||
background-color: var(--#{$prefix}carousel-indicator-active-bg);
|
||||
background-clip: padding-box;
|
||||
border: 0;
|
||||
// Use transparent borders to increase the hit area by 10px on top and bottom.
|
||||
|
|
@ -195,42 +196,31 @@
|
|||
left: (100% - $carousel-caption-width) * .5;
|
||||
padding-top: $carousel-caption-padding-y;
|
||||
padding-bottom: $carousel-caption-padding-y;
|
||||
color: $carousel-caption-color;
|
||||
color: var(--#{$prefix}carousel-caption-color);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
// Dark mode carousel
|
||||
|
||||
@mixin carousel-dark() {
|
||||
.carousel-control-prev-icon,
|
||||
.carousel-control-next-icon {
|
||||
filter: $carousel-dark-control-icon-filter;
|
||||
}
|
||||
|
||||
.carousel-indicators [data-bs-target] {
|
||||
background-color: $carousel-dark-indicator-active-bg;
|
||||
}
|
||||
|
||||
.carousel-caption {
|
||||
color: $carousel-dark-caption-color;
|
||||
}
|
||||
--#{$prefix}carousel-indicator-active-bg: #{$carousel-indicator-active-bg-dark};
|
||||
--#{$prefix}carousel-caption-color: #{$carousel-caption-color-dark};
|
||||
--#{$prefix}carousel-control-icon-filter: #{$carousel-control-icon-filter-dark};
|
||||
}
|
||||
|
||||
.carousel-dark {
|
||||
@include carousel-dark();
|
||||
}
|
||||
|
||||
:root,
|
||||
[data-bs-theme="light"] {
|
||||
--#{$prefix}carousel-indicator-active-bg: #{$carousel-indicator-active-bg};
|
||||
--#{$prefix}carousel-caption-color: #{$carousel-caption-color};
|
||||
--#{$prefix}carousel-control-icon-filter: #{$carousel-control-icon-filter};
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
@if $color-mode-type == "media-query" {
|
||||
.carousel {
|
||||
@include carousel-dark();
|
||||
}
|
||||
} @else {
|
||||
.carousel,
|
||||
&.carousel {
|
||||
@include carousel-dark();
|
||||
}
|
||||
}
|
||||
@include color-mode(dark, true) {
|
||||
@include carousel-dark();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,6 @@
|
|||
--#{$prefix}btn-close-focus-shadow: #{$btn-close-focus-shadow};
|
||||
--#{$prefix}btn-close-focus-opacity: #{$btn-close-focus-opacity};
|
||||
--#{$prefix}btn-close-disabled-opacity: #{$btn-close-disabled-opacity};
|
||||
--#{$prefix}btn-close-white-filter: #{$btn-close-white-filter};
|
||||
// scss-docs-end close-css-vars
|
||||
|
||||
box-sizing: content-box;
|
||||
|
|
@ -21,6 +20,7 @@
|
|||
padding: $btn-close-padding-y $btn-close-padding-x;
|
||||
color: var(--#{$prefix}btn-close-color);
|
||||
background: transparent var(--#{$prefix}btn-close-bg) center / $btn-close-width auto no-repeat; // include transparent for button elements
|
||||
filter: var(--#{$prefix}btn-close-filter);
|
||||
border: 0; // for button elements
|
||||
@include border-radius();
|
||||
opacity: var(--#{$prefix}btn-close-opacity);
|
||||
|
|
@ -47,17 +47,20 @@
|
|||
}
|
||||
|
||||
@mixin btn-close-white() {
|
||||
filter: var(--#{$prefix}btn-close-white-filter);
|
||||
--#{$prefix}btn-close-filter: #{$btn-close-filter-dark};
|
||||
}
|
||||
|
||||
.btn-close-white {
|
||||
@include btn-close-white();
|
||||
}
|
||||
|
||||
:root,
|
||||
[data-bs-theme="light"] {
|
||||
--#{$prefix}btn-close-filter: #{$btn-close-filter};
|
||||
}
|
||||
|
||||
@if $enable-dark-mode {
|
||||
@include color-mode(dark) {
|
||||
.btn-close {
|
||||
@include btn-close-white();
|
||||
}
|
||||
@include color-mode(dark, true) {
|
||||
@include btn-close-white();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -157,7 +157,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
|
|||
|
||||
@each $color in $foregrounds {
|
||||
$contrast-ratio: contrast-ratio($background, $color);
|
||||
@if $contrast-ratio > $min-contrast-ratio {
|
||||
@if $contrast-ratio >= $min-contrast-ratio {
|
||||
@return $color;
|
||||
} @else if $contrast-ratio > $max-ratio {
|
||||
$max-ratio: $contrast-ratio;
|
||||
|
|
@ -177,7 +177,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
|
|||
@return if($l1 > $l2, divide($l1 + .05, $l2 + .05), divide($l2 + .05, $l1 + .05));
|
||||
}
|
||||
|
||||
// Return WCAG2.1 relative luminance
|
||||
// Return WCAG2.2 relative luminance
|
||||
// See https://www.w3.org/TR/WCAG/#dfn-relative-luminance
|
||||
// See https://www.w3.org/TR/WCAG/#dfn-contrast-ratio
|
||||
@function luminance($color) {
|
||||
|
|
|
|||
|
|
@ -43,31 +43,6 @@
|
|||
}
|
||||
}
|
||||
|
||||
// Interactive list items
|
||||
//
|
||||
// Use anchor or button elements instead of `li`s or `div`s to create interactive
|
||||
// list items. Includes an extra `.active` modifier class for selected items.
|
||||
|
||||
.list-group-item-action {
|
||||
width: 100%; // For `<button>`s (anchors become 100% by default though)
|
||||
color: var(--#{$prefix}list-group-action-color);
|
||||
text-align: inherit; // For `<button>`s (anchors inherit)
|
||||
|
||||
// Hover state
|
||||
&:hover,
|
||||
&:focus {
|
||||
z-index: 1; // Place hover/focus items above their siblings for proper border styling
|
||||
color: var(--#{$prefix}list-group-action-hover-color);
|
||||
text-decoration: none;
|
||||
background-color: var(--#{$prefix}list-group-action-hover-bg);
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: var(--#{$prefix}list-group-action-active-color);
|
||||
background-color: var(--#{$prefix}list-group-action-active-bg);
|
||||
}
|
||||
}
|
||||
|
||||
// Individual list items
|
||||
//
|
||||
// Use on `li`s or `div`s within the `.list-group` parent.
|
||||
|
|
@ -115,6 +90,33 @@
|
|||
}
|
||||
}
|
||||
|
||||
// Interactive list items
|
||||
//
|
||||
// Use anchor or button elements instead of `li`s or `div`s to create interactive
|
||||
// list items. Includes an extra `.active` modifier class for selected items.
|
||||
|
||||
.list-group-item-action {
|
||||
width: 100%; // For `<button>`s (anchors become 100% by default though)
|
||||
color: var(--#{$prefix}list-group-action-color);
|
||||
text-align: inherit; // For `<button>`s (anchors inherit)
|
||||
|
||||
&:not(.active) {
|
||||
// Hover state
|
||||
&:hover,
|
||||
&:focus {
|
||||
z-index: 1; // Place hover/focus items above their siblings for proper border styling
|
||||
color: var(--#{$prefix}list-group-action-hover-color);
|
||||
text-decoration: none;
|
||||
background-color: var(--#{$prefix}list-group-action-hover-bg);
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: var(--#{$prefix}list-group-action-active-color);
|
||||
background-color: var(--#{$prefix}list-group-action-active-bg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Horizontal
|
||||
//
|
||||
// Change the layout of list group items from vertical (default) to horizontal.
|
||||
|
|
|
|||
|
|
@ -59,8 +59,8 @@
|
|||
|
||||
// When fading in the modal, animate it to slide down
|
||||
.modal.fade & {
|
||||
@include transition($modal-transition);
|
||||
transform: $modal-fade-transform;
|
||||
@include transition($modal-transition);
|
||||
}
|
||||
.modal.show & {
|
||||
transform: $modal-show-transform;
|
||||
|
|
@ -132,7 +132,11 @@
|
|||
|
||||
.btn-close {
|
||||
padding: calc(var(--#{$prefix}modal-header-padding-y) * .5) calc(var(--#{$prefix}modal-header-padding-x) * .5);
|
||||
margin: calc(-.5 * var(--#{$prefix}modal-header-padding-y)) calc(-.5 * var(--#{$prefix}modal-header-padding-x)) calc(-.5 * var(--#{$prefix}modal-header-padding-y)) auto;
|
||||
// Split properties to avoid invalid calc() function if value is 0
|
||||
margin-top: calc(-.5 * var(--#{$prefix}modal-header-padding-y));
|
||||
margin-right: calc(-.5 * var(--#{$prefix}modal-header-padding-x));
|
||||
margin-bottom: calc(-.5 * var(--#{$prefix}modal-header-padding-y));
|
||||
margin-left: auto;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -169,8 +169,8 @@
|
|||
.nav-justified {
|
||||
> .nav-link,
|
||||
.nav-item {
|
||||
flex-basis: 0;
|
||||
flex-grow: 1;
|
||||
flex-basis: 0;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -139,8 +139,8 @@
|
|||
// the default flexbox row orientation. Requires the use of `flex-wrap: wrap`
|
||||
// on the `.navbar` parent.
|
||||
.navbar-collapse {
|
||||
flex-basis: 100%;
|
||||
flex-grow: 1;
|
||||
flex-basis: 100%;
|
||||
// For always expanded or extra full navbars, ensure content aligns itself
|
||||
// properly vertically. Can be easily overridden with flex utilities.
|
||||
align-items: center;
|
||||
|
|
|
|||
|
|
@ -127,7 +127,11 @@
|
|||
|
||||
.btn-close {
|
||||
padding: calc(var(--#{$prefix}offcanvas-padding-y) * .5) calc(var(--#{$prefix}offcanvas-padding-x) * .5);
|
||||
margin: calc(-.5 * var(--#{$prefix}offcanvas-padding-y)) calc(-.5 * var(--#{$prefix}offcanvas-padding-x)) calc(-.5 * var(--#{$prefix}offcanvas-padding-y)) auto;
|
||||
// Split properties to avoid invalid calc() function if value is 0
|
||||
margin-top: calc(-.5 * var(--#{$prefix}offcanvas-padding-y));
|
||||
margin-right: calc(-.5 * var(--#{$prefix}offcanvas-padding-x));
|
||||
margin-bottom: calc(-.5 * var(--#{$prefix}offcanvas-padding-y));
|
||||
margin-left: auto;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@
|
|||
margin-left: $pagination-margin-start;
|
||||
}
|
||||
|
||||
@if $pagination-margin-start == calc(#{$pagination-border-width} * -1) {
|
||||
@if $pagination-margin-start == calc(-1 * #{$pagination-border-width}) {
|
||||
&:first-child {
|
||||
.page-link {
|
||||
@include border-start-radius(var(--#{$prefix}pagination-border-radius));
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
// scss-docs-start progress-keyframes
|
||||
@if $enable-transitions {
|
||||
@keyframes progress-bar-stripes {
|
||||
0% { background-position-x: $progress-height; }
|
||||
0% { background-position-x: var(--#{$prefix}progress-height); }
|
||||
}
|
||||
}
|
||||
// scss-docs-end progress-keyframes
|
||||
|
|
|
|||
|
|
@ -499,9 +499,9 @@ legend {
|
|||
width: 100%;
|
||||
padding: 0;
|
||||
margin-bottom: $legend-margin-bottom;
|
||||
@include font-size($legend-font-size);
|
||||
font-weight: $legend-font-weight;
|
||||
line-height: inherit;
|
||||
@include font-size($legend-font-size);
|
||||
|
||||
+ * {
|
||||
clear: left; // 2
|
||||
|
|
@ -534,6 +534,12 @@ legend {
|
|||
[type="search"] {
|
||||
-webkit-appearance: textfield; // 1
|
||||
outline-offset: -2px; // 2
|
||||
|
||||
// 3. Better affordance and consistent appearance for search cancel button
|
||||
&::-webkit-search-cancel-button {
|
||||
cursor: pointer;
|
||||
filter: grayscale(1);
|
||||
}
|
||||
}
|
||||
|
||||
// 1. A few input types should stay LTR
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
.spinner-grow,
|
||||
.spinner-border {
|
||||
display: inline-block;
|
||||
flex-shrink: 0;
|
||||
width: var(--#{$prefix}spinner-width);
|
||||
height: var(--#{$prefix}spinner-height);
|
||||
vertical-align: var(--#{$prefix}spinner-vertical-align);
|
||||
|
|
|
|||
|
|
@ -34,11 +34,11 @@
|
|||
// Type display classes
|
||||
@each $display, $font-size in $display-font-sizes {
|
||||
.display-#{$display} {
|
||||
@include font-size($font-size);
|
||||
font-family: $display-font-family;
|
||||
font-style: $display-font-style;
|
||||
font-weight: $display-font-weight;
|
||||
line-height: $display-line-height;
|
||||
@include font-size($font-size);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -82,6 +82,21 @@ $form-invalid-border-color-dark: $red-300 !default;
|
|||
$accordion-icon-color-dark: $primary-text-emphasis-dark !default;
|
||||
$accordion-icon-active-color-dark: $primary-text-emphasis-dark !default;
|
||||
|
||||
$accordion-button-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !default;
|
||||
$accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-active-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !default;
|
||||
$accordion-button-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/></svg>") !default;
|
||||
$accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-active-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/></svg>") !default;
|
||||
// scss-docs-end sass-dark-mode-vars
|
||||
|
||||
|
||||
//
|
||||
// Carousel
|
||||
//
|
||||
|
||||
$carousel-indicator-active-bg-dark: $carousel-dark-indicator-active-bg !default;
|
||||
$carousel-caption-color-dark: $carousel-dark-caption-color !default;
|
||||
$carousel-control-icon-filter-dark: $carousel-dark-control-icon-filter !default;
|
||||
|
||||
//
|
||||
// Close button
|
||||
//
|
||||
|
||||
$btn-close-filter-dark: $btn-close-white-filter !default;
|
||||
|
|
|
|||
|
|
@ -67,8 +67,8 @@ $colors: (
|
|||
) !default;
|
||||
// scss-docs-end colors-map
|
||||
|
||||
// The contrast ratio to reach against white, to determine if color changes from "light" to "dark". Acceptable values for WCAG 2.0 are 3, 4.5 and 7.
|
||||
// See https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast
|
||||
// The contrast ratio to reach against white, to determine if color changes from "light" to "dark". Acceptable values for WCAG 2.2 are 3, 4.5 and 7.
|
||||
// See https://www.w3.org/TR/WCAG/#contrast-minimum
|
||||
$min-contrast-ratio: 4.5 !default;
|
||||
|
||||
// Customize the light and dark text colors for use in our color contrast function.
|
||||
|
|
@ -1091,7 +1091,7 @@ $form-feedback-valid-color: $success !default;
|
|||
$form-feedback-invalid-color: $danger !default;
|
||||
|
||||
$form-feedback-icon-valid-color: $form-feedback-valid-color !default;
|
||||
$form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/></svg>") !default;
|
||||
$form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/></svg>") !default;
|
||||
$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
|
||||
$form-feedback-icon-invalid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}'><circle cx='6' cy='6' r='4.5'/><path stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/><circle cx='6' cy='8.2' r='.6' fill='#{$form-feedback-icon-invalid-color}' stroke='none'/></svg>") !default;
|
||||
// scss-docs-end form-feedback-variables
|
||||
|
|
@ -1302,7 +1302,7 @@ $pagination-color: var(--#{$prefix}link-color) !default;
|
|||
$pagination-bg: var(--#{$prefix}body-bg) !default;
|
||||
$pagination-border-radius: var(--#{$prefix}border-radius) !default;
|
||||
$pagination-border-width: var(--#{$prefix}border-width) !default;
|
||||
$pagination-margin-start: calc(#{$pagination-border-width} * -1) !default; // stylelint-disable-line function-disallowed-list
|
||||
$pagination-margin-start: calc(-1 * #{$pagination-border-width}) !default; // stylelint-disable-line function-disallowed-list
|
||||
$pagination-border-color: var(--#{$prefix}border-color) !default;
|
||||
|
||||
$pagination-focus-color: var(--#{$prefix}link-hover-color) !default;
|
||||
|
|
@ -1394,8 +1394,8 @@ $accordion-icon-active-color: $primary-text-emphasis !default;
|
|||
$accordion-icon-transition: transform .2s ease-in-out !default;
|
||||
$accordion-icon-transform: rotate(-180deg) !default;
|
||||
|
||||
$accordion-button-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='#{$accordion-icon-color}' stroke-linecap='round' stroke-linejoin='round'><path d='M2 5L8 11L14 5'/></svg>") !default;
|
||||
$accordion-button-active-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='#{$accordion-icon-active-color}' stroke-linecap='round' stroke-linejoin='round'><path d='M2 5L8 11L14 5'/></svg>") !default;
|
||||
$accordion-button-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='#{$accordion-icon-color}' stroke-linecap='round' stroke-linejoin='round'><path d='m2 5 6 6 6-6'/></svg>") !default;
|
||||
$accordion-button-active-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='#{$accordion-icon-active-color}' stroke-linecap='round' stroke-linejoin='round'><path d='m2 5 6 6 6-6'/></svg>") !default;
|
||||
// scss-docs-end accordion-variables
|
||||
|
||||
// Tooltips
|
||||
|
|
@ -1507,7 +1507,7 @@ $modal-dialog-margin-y-sm-up: 1.75rem !default;
|
|||
|
||||
$modal-title-line-height: $line-height-base !default;
|
||||
|
||||
$modal-content-color: null !default;
|
||||
$modal-content-color: var(--#{$prefix}body-color) !default;
|
||||
$modal-content-bg: var(--#{$prefix}body-bg) !default;
|
||||
$modal-content-border-color: var(--#{$prefix}border-color-translucent) !default;
|
||||
$modal-content-border-width: var(--#{$prefix}border-width) !default;
|
||||
|
|
@ -1652,6 +1652,7 @@ $carousel-control-width: 15% !default;
|
|||
$carousel-control-opacity: .5 !default;
|
||||
$carousel-control-hover-opacity: .9 !default;
|
||||
$carousel-control-transition: opacity .15s ease !default;
|
||||
$carousel-control-icon-filter: null !default;
|
||||
|
||||
$carousel-indicator-width: 30px !default;
|
||||
$carousel-indicator-height: 3px !default;
|
||||
|
|
@ -1669,17 +1670,17 @@ $carousel-caption-spacer: 1.25rem !default;
|
|||
|
||||
$carousel-control-icon-width: 2rem !default;
|
||||
|
||||
$carousel-control-prev-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$carousel-control-color}'><path d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/></svg>") !default;
|
||||
$carousel-control-next-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$carousel-control-color}'><path d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/></svg>") !default;
|
||||
$carousel-control-prev-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$carousel-control-color}'><path d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/></svg>") !default;
|
||||
$carousel-control-next-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$carousel-control-color}'><path d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/></svg>") !default;
|
||||
|
||||
$carousel-transition-duration: .6s !default;
|
||||
$carousel-transition: transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)
|
||||
// scss-docs-end carousel-variables
|
||||
|
||||
// scss-docs-start carousel-dark-variables
|
||||
$carousel-dark-indicator-active-bg: $black !default;
|
||||
$carousel-dark-caption-color: $black !default;
|
||||
$carousel-dark-control-icon-filter: invert(1) grayscale(100) !default;
|
||||
$carousel-dark-indicator-active-bg: $black !default; // Deprecated in v5.3.4
|
||||
$carousel-dark-caption-color: $black !default; // Deprecated in v5.3.4
|
||||
$carousel-dark-control-icon-filter: invert(1) grayscale(100) !default; // Deprecated in v5.3.4
|
||||
// scss-docs-end carousel-dark-variables
|
||||
|
||||
|
||||
|
|
@ -1706,13 +1707,14 @@ $btn-close-height: $btn-close-width !default;
|
|||
$btn-close-padding-x: .25em !default;
|
||||
$btn-close-padding-y: $btn-close-padding-x !default;
|
||||
$btn-close-color: $black !default;
|
||||
$btn-close-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/></svg>") !default;
|
||||
$btn-close-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/></svg>") !default;
|
||||
$btn-close-focus-shadow: $focus-ring-box-shadow !default;
|
||||
$btn-close-opacity: .5 !default;
|
||||
$btn-close-hover-opacity: .75 !default;
|
||||
$btn-close-focus-opacity: 1 !default;
|
||||
$btn-close-disabled-opacity: .25 !default;
|
||||
$btn-close-white-filter: invert(1) grayscale(100%) brightness(200%) !default;
|
||||
$btn-close-filter: null !default;
|
||||
$btn-close-white-filter: invert(1) grayscale(100%) brightness(200%) !default; // Deprecated in v5.3.4
|
||||
// scss-docs-end close-variables
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -14,9 +14,11 @@
|
|||
top: 0;
|
||||
left: 0;
|
||||
z-index: 2;
|
||||
max-width: 100%;
|
||||
height: 100%; // allow textareas
|
||||
padding: $form-floating-padding-y $form-floating-padding-x;
|
||||
overflow: hidden;
|
||||
color: rgba(var(--#{$prefix}body-color-rgb), #{$form-floating-label-opacity});
|
||||
text-align: start;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
|
|
@ -49,6 +51,7 @@
|
|||
> .form-select {
|
||||
padding-top: $form-floating-input-padding-t;
|
||||
padding-bottom: $form-floating-input-padding-b;
|
||||
padding-left: $form-floating-padding-x;
|
||||
}
|
||||
|
||||
> .form-control:focus,
|
||||
|
|
@ -56,27 +59,30 @@
|
|||
> .form-control-plaintext,
|
||||
> .form-select {
|
||||
~ label {
|
||||
color: rgba(var(--#{$prefix}body-color-rgb), #{$form-floating-label-opacity});
|
||||
transform: $form-floating-label-transform;
|
||||
|
||||
&::after {
|
||||
position: absolute;
|
||||
inset: $form-floating-padding-y ($form-floating-padding-x * .5);
|
||||
z-index: -1;
|
||||
height: $form-floating-label-height;
|
||||
content: "";
|
||||
background-color: $input-bg;
|
||||
@include border-radius($input-border-radius);
|
||||
}
|
||||
}
|
||||
}
|
||||
// Duplicated because `:-webkit-autofill` invalidates other selectors when grouped
|
||||
> .form-control:-webkit-autofill {
|
||||
~ label {
|
||||
color: rgba(var(--#{$prefix}body-color-rgb), #{$form-floating-label-opacity});
|
||||
transform: $form-floating-label-transform;
|
||||
}
|
||||
}
|
||||
> textarea:focus,
|
||||
> textarea:not(:placeholder-shown) {
|
||||
~ label::after {
|
||||
position: absolute;
|
||||
inset: $form-floating-padding-y ($form-floating-padding-x * .5);
|
||||
z-index: -1;
|
||||
height: $form-floating-label-height;
|
||||
content: "";
|
||||
background-color: $input-bg;
|
||||
@include border-radius($input-border-radius);
|
||||
}
|
||||
}
|
||||
> textarea:disabled ~ label::after {
|
||||
background-color: $input-disabled-bg;
|
||||
}
|
||||
|
||||
> .form-control-plaintext {
|
||||
~ label {
|
||||
|
|
@ -87,9 +93,5 @@
|
|||
> :disabled ~ label,
|
||||
> .form-control:disabled ~ label { // Required for `.form-control`s because of specificity
|
||||
color: $form-floating-label-disabled-color;
|
||||
|
||||
&::after {
|
||||
background-color: $input-disabled-bg;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -121,7 +121,7 @@
|
|||
}
|
||||
|
||||
> :not(:first-child):not(.dropdown-menu)#{$validation-messages} {
|
||||
margin-left: calc(#{$input-border-width} * -1); // stylelint-disable-line function-disallowed-list
|
||||
margin-left: calc(-1 * #{$input-border-width}); // stylelint-disable-line function-disallowed-list
|
||||
@include border-start-radius(0);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
@mixin bsBanner($file) {
|
||||
/*!
|
||||
* Bootstrap #{$file} v5.3.3 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2024 The Bootstrap Authors
|
||||
* Bootstrap #{$file} v5.3.8 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2025 The Bootstrap Authors
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||
*/
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,17 +1,23 @@
|
|||
@mixin box-shadow($shadow...) {
|
||||
@if $enable-shadows {
|
||||
$result: ();
|
||||
$has-single-value: false;
|
||||
$single-value: null;
|
||||
|
||||
@each $value in $shadow {
|
||||
@if $value != null {
|
||||
$result: append($result, $value, "comma");
|
||||
}
|
||||
@if $value == none and length($shadow) > 1 {
|
||||
@warn "The keyword 'none' must be used as a single argument.";
|
||||
@if $value == none or $value == initial or $value == inherit or $value == unset {
|
||||
$has-single-value: true;
|
||||
$single-value: $value;
|
||||
} @else {
|
||||
$result: append($result, $value, "comma");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@if (length($result) > 0) {
|
||||
@if $has-single-value {
|
||||
box-shadow: $single-value;
|
||||
} @else if (length($result) > 0) {
|
||||
box-shadow: $result;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@
|
|||
@include media-breakpoint-up($breakpoint, $breakpoints) {
|
||||
// Provide basic `.col-{bp}` classes for equal-width flexbox columns
|
||||
.col#{$infix} {
|
||||
flex: 1 0 0%; // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4
|
||||
flex: 1 0 0;
|
||||
}
|
||||
|
||||
.row-cols#{$infix}-auto > * {
|
||||
|
|
|
|||
|
|
@ -19,12 +19,17 @@
|
|||
&:not(caption) {
|
||||
position: absolute !important;
|
||||
}
|
||||
|
||||
// Fix to prevent overflowing children to become focusable
|
||||
* {
|
||||
overflow: hidden !important;
|
||||
}
|
||||
}
|
||||
|
||||
// Use to only display content when it's focused, or one of its child elements is focused
|
||||
// (i.e. when focus is within the element/container that the class was applied to)
|
||||
//
|
||||
// Useful for "Skip to main content" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
|
||||
// Useful for "Skip to main content" links; see https://www.w3.org/WAI/WCAG22/Techniques/general/G1.html
|
||||
|
||||
@mixin visually-hidden-focusable() {
|
||||
&:not(:focus):not(:focus-within) {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Cerulean 5.3.3
|
||||
// Cerulean 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -20,6 +20,18 @@ $text-shadow: 0 1px 0 rgba(0, 0, 0, .05) !default;
|
|||
@include gradient-y-three-colors(shade-color($color, 20%), shade-color($color, 20%), 60%, shade-color($color, 30%));
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Navbar
|
||||
|
||||
.navbar {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Cerulean 5.3.3
|
||||
// Cerulean 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "cerulean" !default;
|
||||
|
|
@ -49,6 +49,10 @@ $body-color: $gray-700 !default;
|
|||
|
||||
$headings-color: $cyan !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Dropdowns
|
||||
|
||||
$dropdown-link-hover-color: $white !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Cosmo 5.3.3
|
||||
// Cosmo 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -15,6 +15,24 @@ body {
|
|||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
.form-range::-moz-range-thumb {
|
||||
border-radius: inherit;
|
||||
}
|
||||
|
||||
// Indicators
|
||||
|
||||
.badge {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Cosmo 5.3.3
|
||||
// Cosmo 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "cosmo" !default;
|
||||
|
|
@ -55,6 +55,10 @@ $body-color: $gray-800 !default;
|
|||
$font-family-sans-serif: "Source Sans Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
|
||||
$headings-font-weight: 400 !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-dark-hover-color: rgba($white, 1) !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Cyborg 5.3.3
|
||||
// Cyborg 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Cyborg 5.3.3
|
||||
// Cyborg 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "cyborg" !default;
|
||||
|
|
@ -60,7 +60,7 @@ $headings-color: $white !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: $white !default;
|
||||
$table-color: initial !default;
|
||||
$table-accent-bg: rgba($white, .05) !default;
|
||||
$table-hover-bg: rgba($white, .075) !default;
|
||||
$table-border-color: $gray-700 !default;
|
||||
|
|
@ -80,7 +80,8 @@ $input-disabled-bg: $gray-400 !default;
|
|||
|
||||
$input-color: $gray-900 !default;
|
||||
$input-border-color: $white !default;
|
||||
$input-border-width: 0 !default;
|
||||
// stylelint-disable-next-line length-zero-no-unit
|
||||
$input-border-width: 0px !default;
|
||||
|
||||
$input-group-addon-color: $white !default;
|
||||
$input-group-addon-bg: $gray-700 !default;
|
||||
|
|
@ -109,6 +110,8 @@ $nav-tabs-link-active-color: $white !default;
|
|||
$nav-tabs-link-active-bg: $nav-tabs-border-color !default;
|
||||
$nav-tabs-link-active-border-color: $nav-tabs-border-color !default;
|
||||
|
||||
$nav-underline-link-active-color: $white !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-dark-hover-color: $white !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Darkly 5.3.3
|
||||
// Darkly 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -17,6 +17,10 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0
|
|||
}
|
||||
}
|
||||
|
||||
.text-secondary {
|
||||
color: var(--bs-secondary-color) !important;
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
@include color-mode(dark) {
|
||||
|
|
@ -35,19 +39,6 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0
|
|||
|
||||
// Navs
|
||||
|
||||
.nav-tabs,
|
||||
.nav-pills {
|
||||
.nav-link,
|
||||
.nav-link.active,
|
||||
.nav-link.active:focus,
|
||||
.nav-link.active:hover,
|
||||
.nav-item.open .nav-link,
|
||||
.nav-item.open .nav-link:focus,
|
||||
.nav-item.open .nav-link:hover {
|
||||
color: $white;
|
||||
}
|
||||
}
|
||||
|
||||
.breadcrumb a {
|
||||
color: $white;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Darkly 5.3.3
|
||||
// Darkly 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "darkly" !default;
|
||||
|
|
@ -61,7 +61,7 @@ $text-muted: $gray-600 !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: $white !default;
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-border-color: $gray-700 !default;
|
||||
|
||||
|
|
@ -97,12 +97,16 @@ $dropdown-link-hover-bg: $primary !default;
|
|||
// Navs
|
||||
|
||||
$nav-link-padding-x: 2rem !default;
|
||||
$nav-link-disabled-color: $gray-500 !default;
|
||||
$nav-link-color: $white !default;
|
||||
$nav-link-hover-color: $white !default;
|
||||
$nav-link-disabled-color: $gray-600 !default;
|
||||
$nav-tabs-border-color: $gray-700 !default;
|
||||
$nav-tabs-link-hover-border-color: $nav-tabs-border-color $nav-tabs-border-color transparent !default;
|
||||
$nav-tabs-link-active-color: $white !default;
|
||||
$nav-tabs-link-active-border-color: $nav-tabs-border-color $nav-tabs-border-color transparent !default;
|
||||
|
||||
$nav-underline-link-active-color: $white !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-padding-y: 1rem !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Flatly 5.3.3
|
||||
// Flatly 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Flatly 5.3.3
|
||||
// Flatly 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "flatly" !default;
|
||||
|
|
@ -55,6 +55,7 @@ $h3-font-size: 2rem !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
$table-bg-scale: 0% !default;
|
||||
|
||||
// Dropdowns
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Journal 5.3.3
|
||||
// Journal 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -9,6 +9,18 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=News+Cycle:wght@400;70
|
|||
@import url("#{$web-font-path}");
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Navbar
|
||||
|
||||
.navbar {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Journal 5.3.3
|
||||
// Journal 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "journal" !default;
|
||||
|
|
@ -47,6 +47,10 @@ $headings-font-family: "News Cycle", "Arial Narrow Bold", sans-serif !default;
|
|||
$headings-font-weight: 700 !default;
|
||||
$headings-line-height: 1.1 !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Buttons
|
||||
|
||||
$input-btn-padding-x: 1rem !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Litera 5.3.3
|
||||
// Litera 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Litera 5.3.3
|
||||
// Litera 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "litera" !default;
|
||||
|
|
@ -57,6 +57,8 @@ $headings-font-weight: 700 !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-border-color: rgba(0, 0, 0, .1) !default;
|
||||
|
||||
$table-bg-scale: 0% !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Lumen 5.3.3
|
||||
// Lumen 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -100,6 +100,13 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Source+Sans+Pro:ital,w
|
|||
color: $gray-600;
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-secondary,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
.form-control {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Lumen 5.3.3
|
||||
// Lumen 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "lumen" !default;
|
||||
|
|
@ -53,6 +53,8 @@ $font-family-sans-serif: "Source Sans Pro", -apple-system, BlinkMacSystemFo
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-bg-scale: 0% !default;
|
||||
|
||||
// Buttons
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Lux 5.3.3
|
||||
// Lux 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -9,6 +9,10 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@200;3
|
|||
@import url("#{$web-font-path}");
|
||||
}
|
||||
|
||||
:root {
|
||||
--bs-border-width: 0;
|
||||
}
|
||||
|
||||
// Navbar
|
||||
|
||||
.navbar {
|
||||
|
|
@ -54,31 +58,43 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@200;3
|
|||
font-size: 10px;
|
||||
}
|
||||
|
||||
&-warning {
|
||||
&,
|
||||
&:hover,
|
||||
&:not([disabled]):not(.disabled):active,
|
||||
&:focus {
|
||||
color: $white;
|
||||
}
|
||||
&-primary {
|
||||
--bs-btn-hover-bg: #{$black};
|
||||
--bs-btn-hover-border-color: #{$black};
|
||||
--bs-btn-active-bg: #{$black};
|
||||
--bs-btn-active-border-color: #{$black};
|
||||
}
|
||||
|
||||
&-secondary {
|
||||
--bs-btn-hover-bg: #{$gray-200};
|
||||
--bs-btn-hover-border-color: #{$gray-200};
|
||||
--bs-btn-active-bg: #{$gray-300};
|
||||
--bs-btn-active-border-color: #{$gray-300};
|
||||
}
|
||||
|
||||
&-light {
|
||||
--bs-btn-hover-bg: #{$gray-300};
|
||||
--bs-btn-hover-border-color: #{$gray-300};
|
||||
--bs-btn-active-bg: #{$gray-400};
|
||||
--bs-btn-active-border-color: #{$gray-400};
|
||||
}
|
||||
|
||||
&-link {
|
||||
font-weight: $btn-font-weight;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-outline-secondary {
|
||||
color: $gray-600;
|
||||
border-color: $gray-600;
|
||||
--bs-btn-color: #{$black};
|
||||
--bs-btn-hover-bg: #{$gray-200};
|
||||
--bs-btn-hover-border-color: #{$gray-200};
|
||||
--bs-btn-active-bg: #{$gray-300};
|
||||
--bs-btn-active-border-color: #{$gray-300};
|
||||
border-color: $gray-100;
|
||||
}
|
||||
|
||||
&:not([disabled]):not(.disabled):hover,
|
||||
&:not([disabled]):not(.disabled):focus,
|
||||
&:not([disabled]):not(.disabled):active {
|
||||
color: $white;
|
||||
background-color: $gray-400;
|
||||
border-color: $gray-400;
|
||||
}
|
||||
|
||||
&:not([disabled]):not(.disabled):focus {
|
||||
box-shadow: 0 0 0 .2rem rgba($gray-400, .5);
|
||||
}
|
||||
.btn-outline-light {
|
||||
color: var(--bs-btn-active-color);
|
||||
}
|
||||
|
||||
[class*="btn-outline-"] {
|
||||
|
|
@ -91,7 +107,37 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@200;3
|
|||
|
||||
@include color-mode(dark) {
|
||||
.btn-primary {
|
||||
background-color: #080808;
|
||||
--bs-btn-bg: #080808;
|
||||
--bs-btn-hover-bg: #{$black};
|
||||
}
|
||||
|
||||
.btn-outline-primary {
|
||||
color: $white;
|
||||
border-color: #080808;
|
||||
--bs-btn-hover-bg: #{$black};
|
||||
}
|
||||
|
||||
.btn-outline-secondary {
|
||||
--bs-btn-color: #{$white};
|
||||
--bs-btn-hover-color: #{$black};
|
||||
--bs-btn-hover-bg: #{$gray-200};
|
||||
--bs-btn-hover-border-color: #{$gray-200};
|
||||
--bs-btn-active-bg: #{$gray-300};
|
||||
--bs-btn-active-border-color: #{$gray-300};
|
||||
}
|
||||
|
||||
.btn-outline-light {
|
||||
color: $white;
|
||||
|
||||
&:not([disabled]):not(.disabled):hover,
|
||||
&:not([disabled]):not(.disabled):focus,
|
||||
&:not([disabled]):not(.disabled):active {
|
||||
color: var(--bs-btn-active-color);
|
||||
}
|
||||
}
|
||||
|
||||
.btn-outline-dark {
|
||||
color: $white;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -136,6 +182,16 @@ th {
|
|||
}
|
||||
}
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
@include color-mode(dark) {
|
||||
|
|
@ -224,3 +280,25 @@ th {
|
|||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
.modal-dialog {
|
||||
box-shadow: var(--bs-box-shadow);
|
||||
}
|
||||
|
||||
.popover {
|
||||
--bs-popover-border-color: transparent;
|
||||
box-shadow: var(--bs-box-shadow);
|
||||
|
||||
.popover-arrow {
|
||||
--bs-popover-border-width: 1px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@include color-mode(dark) {
|
||||
.modal-content,
|
||||
.popover,
|
||||
.toast {
|
||||
background-color: lighten($gray-900, 5%);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Lux 5.3.3
|
||||
// Lux 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "lux" !default;
|
||||
|
|
@ -9,9 +9,9 @@ $theme: "lux" !default;
|
|||
|
||||
$white: #fff !default;
|
||||
$gray-100: #f8f9fa !default;
|
||||
$gray-200: #f7f7f9 !default;
|
||||
$gray-300: #eceeef !default;
|
||||
$gray-400: #ced4da !default;
|
||||
$gray-200: #f0f1f2 !default;
|
||||
$gray-300: #e0e1e2 !default;
|
||||
$gray-400: #cdcecf !default;
|
||||
$gray-500: #adb5bd !default;
|
||||
$gray-600: #919aa1 !default;
|
||||
$gray-700: #55595c !default;
|
||||
|
|
@ -36,10 +36,10 @@ $success: $green !default;
|
|||
$info: $cyan !default;
|
||||
$warning: $yellow !default;
|
||||
$danger: $red !default;
|
||||
$light: $white !default;
|
||||
$light: $gray-200 !default;
|
||||
$dark: $gray-800 !default;
|
||||
|
||||
$min-contrast-ratio: 2.3 !default;
|
||||
$min-contrast-ratio: 1.9 !default;
|
||||
|
||||
// Options
|
||||
|
||||
|
|
@ -73,12 +73,12 @@ $headings-color: $gray-900 !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-border-color: rgba(0, 0, 0, .05) !default;
|
||||
|
||||
// Buttons + Forms
|
||||
|
||||
$input-btn-border-width: 0 !default;
|
||||
|
||||
// Buttons
|
||||
|
||||
$btn-line-height: 1.5rem !default;
|
||||
|
|
@ -113,3 +113,12 @@ $navbar-light-active-color: $gray-900 !default;
|
|||
$pagination-border-color: transparent !default;
|
||||
$pagination-hover-border-color: $pagination-border-color !default;
|
||||
$pagination-disabled-border-color: $pagination-border-color !default;
|
||||
|
||||
// Popovers
|
||||
|
||||
$popover-header-bg: transparent !default;
|
||||
$popover-header-color: var(--bs-popover-header-color) !default;
|
||||
|
||||
// Toasts
|
||||
|
||||
$toast-header-background-color: transparent !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Materia 5.3.3
|
||||
// Materia 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -236,6 +236,16 @@ p {
|
|||
background-color: $primary;
|
||||
}
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
.col-form-label {
|
||||
|
|
@ -317,7 +327,7 @@ select.form-control {
|
|||
margin-top: 1px;
|
||||
border: 2px solid $gray-400;
|
||||
|
||||
&:checked[type="radio"] {
|
||||
:not(.form-check) > &:checked[type="radio"] {
|
||||
background-image: escape-svg(url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='#{$blue}' stroke='#{$white}'/></svg>")), var(--bs-gradient);
|
||||
background-size: 1.8em;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Materia 5.3.3
|
||||
// Materia 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "materia" !default;
|
||||
|
|
@ -54,6 +54,12 @@ $font-family-sans-serif: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI
|
|||
$font-size-base: 1rem !default;
|
||||
$font-weight-base: 400 !default;
|
||||
|
||||
$line-height-base: 1.5 !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Buttons
|
||||
|
||||
$input-btn-padding-y: .8rem !default;
|
||||
|
|
@ -78,6 +84,12 @@ $input-border-radius-sm: 0 !default;
|
|||
$input-placeholder-color: rgba(0, 0, 0, .4) !default;
|
||||
$input-group-addon-bg: transparent !default;
|
||||
|
||||
$input-height: calc($line-height-base * 1em + $input-padding-y * 2) !default;
|
||||
$input-height-sm: $line-height-base * 1em !default;
|
||||
$input-height-lg: calc($line-height-base * 1em + $input-padding-y-lg * 2) !default;
|
||||
|
||||
$form-floating-height: 3.5rem !default;
|
||||
|
||||
// Navs
|
||||
|
||||
$nav-link-disabled-color: $gray-500 !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Minty 5.3.3
|
||||
// Minty 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -72,6 +72,12 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;50
|
|||
}
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
legend {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Minty 5.3.3
|
||||
// Minty 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "minty" !default;
|
||||
|
|
@ -59,6 +59,7 @@ $headings-color: $gray-700 !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
$table-border-color: rgba(0, 0, 0, .05) !default;
|
||||
|
||||
$table-bg-scale: 0% !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Morph 5.3.3
|
||||
// Morph 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -341,6 +341,18 @@ $box-shadow-dark: 5px 5px 10px rgba(darken($dark, 50%), .2), -5px -5px 10px rgba
|
|||
}
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
.input-group {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Morph 5.3.3
|
||||
// Morph 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "morph" !default;
|
||||
|
|
@ -73,6 +73,10 @@ $headings-color: $link-color !default;
|
|||
|
||||
$text-muted: lighten($body-color, 15%) !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Buttons + Forms
|
||||
|
||||
$input-btn-padding-y: 1rem !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Pulse 5.3.3
|
||||
// Pulse 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -72,6 +72,16 @@
|
|||
border-color: $table-border-color;
|
||||
}
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
.form-control:focus {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Pulse 5.3.3
|
||||
// Pulse 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "pulse" !default;
|
||||
|
|
@ -55,6 +55,8 @@ $link-hover-color: $primary !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-border-color: rgba(0, 0, 0, .05) !default;
|
||||
|
||||
// Forms
|
||||
|
|
@ -63,7 +65,6 @@ $input-focus-border-color: $primary !default;
|
|||
|
||||
// Dropdowns
|
||||
|
||||
$dropdown-link-color: $gray-700 !default;
|
||||
$dropdown-link-hover-color: $white !default;
|
||||
$dropdown-link-hover-bg: $primary !default;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Quartz 5.3.3
|
||||
// Quartz 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Quartz 5.3.3
|
||||
// Quartz 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "quartz" !default;
|
||||
|
|
@ -76,6 +76,8 @@ $blockquote-footer-color: $text-muted !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-dark-bg: $dark !default;
|
||||
$table-dark-border-color: darken($dark, 5%) !default;
|
||||
|
||||
|
|
@ -134,6 +136,8 @@ $nav-pills-border-radius: $border-radius-pill !default;
|
|||
$nav-pills-link-active-color: $white !default;
|
||||
$nav-pills-link-active-bg: $primary !default;
|
||||
|
||||
$nav-underline-link-active-color: $white !default;
|
||||
|
||||
// Navbars
|
||||
|
||||
// Dropdowns
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Sandstone 5.3.3
|
||||
// Sandstone 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -52,6 +52,16 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;70
|
|||
}
|
||||
}
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
input,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Sandstone 5.3.3
|
||||
// Sandstone 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "sandstone" !default;
|
||||
|
|
@ -55,6 +55,10 @@ $link-color: $success !default;
|
|||
$font-family-sans-serif: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
|
||||
$headings-font-weight: 400 !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Dropdowns
|
||||
|
||||
$dropdown-link-color: $gray-600 !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Simplex 5.3.3
|
||||
// Simplex 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -109,6 +109,18 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700
|
|||
color: $gray-600 !important;
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
legend,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Simplex 5.3.3
|
||||
// Simplex 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "simplex" !default;
|
||||
|
|
@ -50,6 +50,10 @@ $body-bg: #fcfcfc !default;
|
|||
// stylelint-disable-next-line value-keyword-case
|
||||
$font-family-sans-serif: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Dropdowns
|
||||
|
||||
$dropdown-link-hover-color: $white !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Sketchy 5.3.3
|
||||
// Sketchy 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -63,6 +63,36 @@ $border-radius-sm-sketchy: 255px 25px 225px 25px / 25px 225px 25px 255px;
|
|||
opacity: 0;
|
||||
}
|
||||
|
||||
[data-bs-theme="dark"] .btn-primary {
|
||||
--bs-btn-bg: #{$gray-100};
|
||||
--bs-btn-hover-bg: #{$gray-300};
|
||||
--bs-btn-active-bg: #{$gray-400};
|
||||
--bs-btn-disabled-bg: #{$gray-500};
|
||||
--bs-btn-color: #{$black};
|
||||
--bs-btn-hover-color: #{$black};
|
||||
--bs-btn-active-color: #{$black};
|
||||
--bs-btn-disabled-color: #{$black};
|
||||
}
|
||||
|
||||
[data-bs-theme="dark"] .btn-outline-primary {
|
||||
--bs-btn-hover-bg: #{$gray-300};
|
||||
--bs-btn-active-bg: #{$gray-100};
|
||||
--bs-btn-disabled-bg: #{$gray-500};
|
||||
--bs-btn-border-color: #{$gray-100};
|
||||
--bs-btn-hover-border-color: #{$gray-300};
|
||||
--bs-btn-active-border-color: #{$gray-100};
|
||||
--bs-btn-disabled-border-color: #{$gray-500};
|
||||
--bs-btn-color: #{$gray-100};
|
||||
--bs-btn-hover-color: #{$black};
|
||||
--bs-btn-active-color: #{$black};
|
||||
--bs-btn-disabled-color: #{$black};
|
||||
}
|
||||
|
||||
[data-bs-theme="dark"] .btn-outline-secondary,
|
||||
[data-bs-theme="dark"] .btn-outline-dark {
|
||||
--bs-btn-color: #{$white};
|
||||
}
|
||||
|
||||
// Typography
|
||||
|
||||
button,
|
||||
|
|
@ -149,6 +179,15 @@ table {
|
|||
}
|
||||
}
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
|
|
@ -250,6 +289,32 @@ select.form-control {
|
|||
}
|
||||
}
|
||||
|
||||
[data-bs-theme="dark"] {
|
||||
[type="radio"]::before {
|
||||
border-color: $white;
|
||||
}
|
||||
|
||||
[type="radio"]:checked::before {
|
||||
background-color: $white;
|
||||
}
|
||||
|
||||
[type="checkbox"]::before {
|
||||
border-color: $white;
|
||||
}
|
||||
|
||||
[type="checkbox"]:checked::before {
|
||||
background-color: $white;
|
||||
}
|
||||
|
||||
.form-range::-webkit-slider-thumb {
|
||||
background-color: $white;
|
||||
}
|
||||
|
||||
.form-range:disabled::-webkit-slider-thumb {
|
||||
background-color: $secondary;
|
||||
}
|
||||
}
|
||||
|
||||
.form-check-input {
|
||||
&:focus {
|
||||
box-shadow: none;
|
||||
|
|
@ -386,6 +451,11 @@ select.form-control {
|
|||
border-radius: $border-radius-sm-sketchy;
|
||||
}
|
||||
|
||||
[data-bs-theme="dark"] .progress,
|
||||
[data-bs-theme="dark"] .progress-stacked {
|
||||
background-color: $secondary;
|
||||
}
|
||||
|
||||
// Containers
|
||||
|
||||
.card {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Sketchy 5.3.3
|
||||
// Sketchy 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "sketchy" !default;
|
||||
|
|
@ -63,6 +63,8 @@ $blockquote-small-color: $gray-800 !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-hover-bg: $white !default;
|
||||
$table-border-width: 2px !default;
|
||||
$table-border-color: $gray-800 !default;
|
||||
|
|
@ -87,7 +89,6 @@ $dropdown-link-hover-bg: $gray-800 !default;
|
|||
|
||||
$nav-tabs-border-color: $gray-800 !default;
|
||||
$nav-tabs-link-hover-border-color: $gray-800 !default;
|
||||
$nav-tabs-link-active-color: $gray-800 !default;
|
||||
$nav-tabs-link-active-border-color: $gray-800 !default;
|
||||
|
||||
// Navbar
|
||||
|
|
@ -145,7 +146,6 @@ $list-group-action-color: $gray-800 !default;
|
|||
$breadcrumb-padding-y: .375rem !default;
|
||||
$breadcrumb-padding-x: .75rem !default;
|
||||
$breadcrumb-divider-color: $gray-800 !default;
|
||||
$breadcrumb-active-color: $gray-800 !default;
|
||||
$breadcrumb-border-radius: .25rem !default;
|
||||
|
||||
// Close
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Slate 5.3.3
|
||||
// Slate 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -337,3 +337,4 @@ legend {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Slate 5.3.3
|
||||
// Slate 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "slate" !default;
|
||||
|
|
@ -56,7 +56,7 @@ $link-color: $white !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: $white !default;
|
||||
$table-color: initial !default;
|
||||
$table-accent-bg: rgba($white, .05) !default;
|
||||
$table-hover-bg: rgba($white, .075) !default;
|
||||
$table-border-color: rgba($black, .6) !default;
|
||||
|
|
@ -107,6 +107,8 @@ $nav-tabs-link-hover-border-color: $nav-tabs-border-color !default;
|
|||
$nav-tabs-link-active-color: $white !default;
|
||||
$nav-tabs-link-active-border-color: $nav-tabs-border-color !default;
|
||||
|
||||
$nav-underline-link-active-color: $white !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-padding-y: 0 !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Solar 5.3.3
|
||||
// Solar 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Solar 5.3.3
|
||||
// Solar 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "solar" !default;
|
||||
|
|
@ -63,7 +63,7 @@ $font-family-sans-serif: "Source Sans Pro", -apple-system, BlinkMacSystemFo
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: $white !default;
|
||||
$table-color: initial !default;
|
||||
$table-accent-bg: rgba($white, .05) !default;
|
||||
$table-hover-bg: rgba($white, .075) !default;
|
||||
$table-border-color: $component-active-bg !default;
|
||||
|
|
@ -116,6 +116,8 @@ $nav-tabs-link-active-color: $component-active-color !default;
|
|||
$nav-tabs-link-active-bg: $body-bg !default;
|
||||
$nav-tabs-link-active-border-color: $nav-tabs-border-color !default;
|
||||
|
||||
$nav-underline-link-active-color: rgba(255, 255, 255, .75) !default;
|
||||
|
||||
// Navbars
|
||||
|
||||
// Pagination
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Spacelab 5.3.3
|
||||
// Spacelab 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -93,3 +93,15 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,
|
|||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Spacelab 5.3.3
|
||||
// Spacelab 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "spacelab" !default;
|
||||
|
|
@ -55,6 +55,10 @@ $link-color: $info !default;
|
|||
$font-family-sans-serif: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
|
||||
$headings-color: $gray-900 !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-light-hover-color: $info !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Superhero 5.3.3
|
||||
// Superhero 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -25,6 +25,10 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&
|
|||
|
||||
// Typography
|
||||
|
||||
.text-secondary {
|
||||
color: var(--bs-secondary-color) !important;
|
||||
}
|
||||
|
||||
.dropdown-menu {
|
||||
font-size: $font-size-sm;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Superhero 5.3.3
|
||||
// Superhero 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "superhero" !default;
|
||||
|
|
@ -62,7 +62,7 @@ $text-muted: rgba(255, 255, 255, .4) !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: $white !default;
|
||||
$table-color: initial !default;
|
||||
$table-accent-bg: rgba($white, .05) !default;
|
||||
$table-hover-bg: rgba($white, .075) !default;
|
||||
$table-border-color: rgba($black, .15) !default;
|
||||
|
|
@ -117,6 +117,8 @@ $nav-tabs-link-hover-border-color: $nav-tabs-border-color !default;
|
|||
$nav-tabs-link-active-color: $body-color !default;
|
||||
$nav-tabs-link-active-border-color: $gray-600 !default;
|
||||
|
||||
$nav-underline-link-active-color: $white !default;
|
||||
|
||||
// Navbar
|
||||
|
||||
$navbar-dark-color: rgba($white, .75) !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// United 5.3.3
|
||||
// United 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -16,3 +16,15 @@ $web-font-path: "https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&di
|
|||
color: $body-color;
|
||||
}
|
||||
}
|
||||
|
||||
// Tables
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// United 5.3.3
|
||||
// United 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "united" !default;
|
||||
|
|
@ -52,5 +52,5 @@ $font-family-sans-serif: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe
|
|||
|
||||
// Tables
|
||||
|
||||
$table-dark-bg: $dark !default;
|
||||
$table-color: initial !default;
|
||||
$table-dark-border-color: darken($dark, 5%) !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Vapor 5.3.3
|
||||
// Vapor 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -224,6 +224,14 @@ table,
|
|||
}
|
||||
}
|
||||
|
||||
.nav-underline {
|
||||
.nav-link {
|
||||
&.active {
|
||||
@include text-shadow-sm($nav-underline-link-active-color);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
legend {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Vapor 5.3.3
|
||||
// Vapor 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "vapor" !default;
|
||||
|
|
@ -72,9 +72,11 @@ $text-muted: rgba($body-color, .3) !default;
|
|||
|
||||
$blockquote-footer-color: $text-muted !default;
|
||||
|
||||
$vr-border-width: 1px !default;
|
||||
|
||||
// Tables
|
||||
|
||||
$table-color: $white !default;
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-bg-scale: 0% !default;
|
||||
|
||||
|
|
@ -106,6 +108,8 @@ $nav-link-disabled-color: $text-muted !default;
|
|||
|
||||
$nav-tabs-link-active-color: $component-active-bg !default;
|
||||
|
||||
$nav-underline-link-active-color: $component-active-bg !default;
|
||||
|
||||
// Dropdowns
|
||||
|
||||
$dropdown-link-hover-bg: rgba($white, .15) !default;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Yeti 5.3.3
|
||||
// Yeti 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -221,6 +221,11 @@ table {
|
|||
font-size: $font-size-sm;
|
||||
}
|
||||
|
||||
.table-secondary,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
label,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Yeti 5.3.3
|
||||
// Yeti 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "yeti" !default;
|
||||
|
|
@ -55,6 +55,7 @@ $headings-font-weight: 300 !default;
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
$table-bg-scale: 0% !default;
|
||||
|
||||
// Buttons
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Zephyr 5.3.3
|
||||
// Zephyr 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
|
||||
|
|
@ -107,6 +107,16 @@ thead th {
|
|||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.table-primary,
|
||||
.table-secondary,
|
||||
.table-success,
|
||||
.table-warning,
|
||||
.table-danger,
|
||||
.table-info,
|
||||
.table-light {
|
||||
--#{$prefix}table-color: #{$body-color};
|
||||
}
|
||||
|
||||
// Forms
|
||||
|
||||
.input-group-text {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Zephyr 5.3.3
|
||||
// Zephyr 5.3.8
|
||||
// Bootswatch
|
||||
|
||||
$theme: "zephyr" !default;
|
||||
|
|
@ -63,6 +63,8 @@ $box-shadow-lg: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0,
|
|||
|
||||
// Tables
|
||||
|
||||
$table-color: initial !default;
|
||||
|
||||
$table-cell-padding-y: 1rem !default;
|
||||
$table-cell-padding-x: 1rem !default;
|
||||
$table-cell-padding-y-sm: .5rem !default;
|
||||
|
|
|
|||
10
static/css/wvc-main.min.css
vendored
10
static/css/wvc-main.min.css
vendored
File diff suppressed because one or more lines are too long
6
static/js/bootstrap.bundle.min.js
vendored
6
static/js/bootstrap.bundle.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue