diff --git a/css/addons/bazarr/bazarr-4k-logo/bazarr-4k-logo.css b/css/addons/bazarr/bazarr-4k-logo/bazarr-4k-logo.css index 6e104532..a9328c19 100644 --- a/css/addons/bazarr/bazarr-4k-logo/bazarr-4k-logo.css +++ b/css/addons/bazarr/bazarr-4k-logo/bazarr-4k-logo.css @@ -1,35 +1,19 @@ -/* Desktop */ -@media (min-width: 752px) { - .header-icon.px-3.m-0.d-none.d-md-block img { + .mantine-Avatar-root[class*="bazarr-"] img { display: none !important; } - .header-icon.px-3.m-0.d-none.d-md-block:before { - background-image: url("/theme.park/css/addons/bazarr/bazarr-4k-logo/bazarr4k.png"); - display: inline-block; - width: 32px; - height: 32px; - content:""; - background-size: cover; - -webkit-background-size: cover; - -moz-background-size: cover; - -o-background-size: cover; - } -} -/* Mobile */ -@media (max-width: 767px) { - .sidebar-title.d-flex.align-items-center.d-md-none.container img { - display: none !important; - } - .sidebar-title.d-flex.align-items-center.d-md-none.container:before { + .mantine-Avatar-root[class*="bazarr-"]:before { background-image: url("/theme.park/css/addons/bazarr/bazarr-4k-logo/bazarr4k.png"); display: inline-block; - width: 32px; + width: 32px; height: 32px; - content:""; - background-size: cover; - -webkit-background-size: cover; - -moz-background-size: cover; + content: ""; + background-size: cover; + -webkit-background-size: cover; + -moz-background-size: cover; -o-background-size: cover; - } -} + } + + #root>div>nav>div>div.mantine-Group-root.mantine-Group-child[class*="bazarr-"]>div>span:after { + content: " 4K"; + } \ No newline at end of file diff --git a/css/addons/bazarr/bazarr-darker/bazarr-darker.css b/css/addons/bazarr/bazarr-darker/bazarr-darker.css index 33e5d42d..2f423c72 100644 --- a/css/addons/bazarr/bazarr-darker/bazarr-darker.css +++ b/css/addons/bazarr/bazarr-darker/bazarr-darker.css @@ -37,30 +37,19 @@ } /* HEADER */ -.header-container .bg-primary { +.mantine-Header-root[class*="bazarr-"] { background-color: var(--header-color) !important; + border-bottom: 1px solid var(--transparency-light-15); } /* SIDE MENU */ -.sidebar-container { +.mantine-Navbar-root[class*="bazarr-"] { background-color: var(--side-menu-color) !important; color: white !important; } -.sidebar-container .sidebar-button { - color: var(--side-menu-link-color) !important; -} - -.sidebar-container .sidebar-button { - background-color: var(--side-menu-color) !important; -} -.sidebar-container .sidebar-button.sb-active, .sidebar-container .sidebar-button.sb-active:hover { - color: var(--side-menu-link-color) !important; - background-color: var(--side-menu-active) !important; -} - - -.sidebar-container .sidebar-button:hover { - background-color: var(--side-menu-active) !important; - color: var(--side-menu-link-color) !important; +#root>div>div>main>div>div.mantine-Group-root[class*="bazarr-"], +#root>div>div>main>div>div>div.mantine-Group-root[class*="bazarr-"], +#root>div>div>main>form>div.mantine-Group-root[class*="bazarr-"] { + background: #262626 !important; } \ No newline at end of file diff --git a/css/base/bazarr/bazarr-base.css b/css/base/bazarr/bazarr-base.css index a17f64a4..7cb6436a 100644 --- a/css/base/bazarr/bazarr-base.css +++ b/css/base/bazarr/bazarr-base.css @@ -1,23 +1,9 @@ -/* dP dP dP */ -/* 88 88 88 */ -/* d8888P 88d888b. .d8888b. 88d8b.d8b. .d8888b. 88d888b. .d8888b. 88d888b. 88 .dP */ -/* 88 88' `88 88ooood8 88'`88'`88 88ooood8 88' `88 88' `88 88' `88 88888" */ -/* 88 88 88 88. ... 88 88 88 88. ... 88. .88 88. .88 88 88 `8b. */ -/* dP dP dP `88888P' dP dP dP `88888P' 88 88Y888P' `88888P8 dP dP `YP */ -/* 88 */ -/* dP */ - -/* Made by @gilbN */ -/* https://github.com/gilbN/theme.park */ - @import url("/theme.park/css/defaults/placeholders.css"); @import url("/theme.park/css/defaults/transparent.css"); -* { - outline: none; -} - -body { +body, +#root, +html { background: var(--main-bg-color); background-repeat: repeat, no-repeat; background-attachment: fixed, fixed; @@ -29,771 +15,468 @@ body { color: var(--text); } -/* scroller */ -::-webkit-scrollbar-corner { - background-color: var(--transparency-dark-10); -} - -::-webkit-scrollbar { - width: 10px; - height: 10px; - background: #1f1f1f; -} - -::-webkit-scrollbar-thumb { - -webkit-border-radius: 5px; - border-radius: 5px; - background-color: var(--transparency-light-35) !important; -} - -a, -.page-link { - color: var(--link-color); -} - -a:hover { - color: var(--link-color-hover); -} - -/* Pagination */ -.page-item.active .page-link { - z-index: 3; - color: var(--button-text); - background-color: var(--button-color); - border-color: var(--button-color); -} - -.page-link { - background-color: var(--transparency-light-10); - border: 1px solid var(--transparency-light-10); -} - -.page-link:hover { - color: var(--link-color-hover); - text-decoration: none; - background-color: var(--transparency-dark-15); - border: 1px solid var(--transparency-light-10); -} - -.page-item.disabled .page-link { - color: var(--link-color); - background-color: var(--transparency-light-10); - border: 1px solid var(--transparency-light-10); -} - -.page-link:focus { - z-index: 3; - outline: 0; - box-shadow: 0 0 0 0.2rem rgb(var(--accent-color) / 25%); -} - /* TEXT */ -.text-muted { - color: var(--text-muted) !important; + +[class$="-label"]:not([class$="-Button-label"]) { + color: var(--text-hover) !important; } -.table { +.mantine-Text-root[class*="bazarr-"]:not(.mantine-Badge-light span div):not(.mantine-Progress-bar div):not(a) { color: var(--text); } -.table thead th { - color: var(--text-hover); +a, +.mantine-Text-root.mantine-Anchor-root[class*="bazarr-"] { + color: var(--link-color); } -.table-striped tbody tr:nth-of-type(odd) { - background-color: var(--transparency-dark-15); +a:hover, +.mantine-Text-root.mantine-Anchor-root[class*="bazarr-"]:hover { + color: var(--link-color-hover); } -.text-dark { -color: var(--text-hover)!important; -} -.text-secondary { -color: var(--text)!important; -} -.dropdown-item.disabled, .dropdown-item:disabled { -color: var(--text-muted); -pointer-events: none; -background-color: transparent; -} - - h1, +h1 div, h2, h3, h4, h5, h6, -.custom-control-label, -label, -.modal-header { - color: var(--text-hover); +.mantine-Blockquote-icon { + color: var(--text-hover) !important; } -/* Form Stuff */ +/* HEADER */ -.header-container input[type=text] { - padding: 0; - transition: none; - color: var(--text-hover); - border-radius: 0; - border: none; - border-bottom: 1px solid rgba(255, 255, 255, .3) !important; - background-color: transparent; +.mantine-Header-root[class*="bazarr-"] { + background: var(--main-bg-color); + border-bottom: 1px solid var(--transparency-light-15); } -.header-container input[type=text]:focus { - box-shadow: none; - color: var(--text-hover); - background-color: transparent !important; - border-color: rgb(var(--accent-color)) !important; -} +/* SUBHEADER */ -.form-control { - color: var(--text-hover); - background-color: var(--transparency-light-10); - border: 1px solid var(--transparency-light-10); -} - -.form-control:focus { - background-color: var(--transparency-light-25) !important; - border-color: var(--transparency-light-25) !important; - outline: 0; - box-shadow: none; - color: var(--text-hover); -} - -.form-control:disabled, -.form-control[readonly] { - background-color: var(--transparency-light-15); - opacity: .7; - color: var(--text-hover); - border: 1px solid var(--transparency-light-15); -} - -:root .form-control:focus { - box-shadow: none !important; - border-color: transparent !important; -} - -.form-group i { - color: var(--text-hover); -} - -.bootstrap-tagsinput { - color: var(--text); - background: var(--transparency-dark-25) !important; - border: 1px solid transparent !important; - -} - -.bootstrap-tagsinput.focus { - background-color: #fff !important; - border-color: transparent; - outline: 0; - box-shadow: none; - color: black; -} - -.input-group-text { - color: var(--text); - background: var(--transparency-dark-25); - border: 1px solid transparent; -} - -.custom-chip-input .main-input { - background: transparent; - color: var(--text); -} - -.custom-chip-input:focus-within { - border-color: var(--transparency-light-10); -} - -.custom-chip-input .custom-chip { - color: var(--button-text); - background-color: var(--button-color); -} - -.custom-selector .selector__control .selector__multi-value, -.selector__multi-value__label { - background: var(--button-color); - color: var(--button-text); -} - -/* SIDEBAR */ -.sidebar-container { +/* .mantine-Container-root[class*="bazarr-"] .mantine-Group-root[class*="bazarr-"]:not(td>*):not(.mantine-Card-root div), */ +#root>div>div>main>div>div.mantine-Group-root[class*="bazarr-"], +#root>div>div>main>div>div>div.mantine-Group-root[class*="bazarr-"]:not([role="navigation"]), +#root>div>div>main>form>div.mantine-Group-root[class*="bazarr-"] { background: var(--transparency-dark-25); } -.sidebar-container .sidebar-button, -.sidebar-container .button { - color: var(--text) !important; - background: transparent -} - -.sidebar-container .sidebar-button:active, -.sidebar-container .sidebar-button:focus { - color: rgb(var(--accent-color)) !important; - background-color: var(--transparency-dark-15) !important; -} - -.sidebar-container .sidebar-button:hover, -.sidebar-container .button:hover { - background-color: transparent !important; - color: rgb(var(--accent-color)) !important; -} - -.content-header.bg-dark .btn-dark:hover { - color: rgb(var(--accent-color)); -} - -.sidebar-container .sidebar-button.sb-active, -.sidebar-container .sidebar-button.sb-active:hover, -.sidebar-container .button.active { - background-color: var(--transparency-dark-15) !important; - color: rgb(var(--accent-color)) !important; -} - -.content-header.bg-dark>button { - color: var(--text); -} - -.content-header.bg-dark>button:hover { - color: var(--text-hover); -} - -.content-header.bg-dark .btn-dark { - color: var(--text); -} - -.btn-dark.disabled:hover, -.btn-dark:disabled:hover { - color: var(--text) !important; -} - - -.sidebar-container .sidebar-collapse-box.active:before, -.sidebar-container .sidebar-button.sb-active:before { - background-color: rgb(var(--accent-color)); -} - -@media (max-width: 767.98px) { - - .sidebar-container.open, - .sidebar-container { - background: var(--modal-bg-color); - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; - } -} - -.sidebar-container .badge-secondary { - color: var(--label-text-color); - background-color: var(--arr-queue-color); -} - -/* TOP NAV BAR */ -.header-container .bg-primary { - background: var(--transparency-dark-35) !important; -} - -.header-container .btn-primary { - color: var(--button-text); - background-color: transparent; - border-color: transparent; -} - -.header-container .btn-primary.focus, -.header-container .btn-primary:focus, -.header-container .btn-primary:hover { - color: var(--button-text-hover); - background-color: transparent; - border-color: transparent; -} - -.header-container .btn-primary:not(:disabled):not(.disabled).active, -.header-container .btn-primary:not(:disabled):not(.disabled):active, -.header-container .show>.btn-primary.dropdown-toggle { - color: var(--button-text-hover); - background-color: transparent; - border-color: transparent; -} - -/* PAGES */ -.content-header.bg-dark { - background: var(--main-bg-color) !important; - background-repeat: repeat, no-repeat !important; - background-attachment: fixed, fixed !important; - background-position: center center, center center !important; - background-size: auto, cover !important; - -webkit-background-size: auto, cover !important; - -moz-background-size: auto, cover !important; - -o-background-size: auto, cover !important; - border-bottom: solid 1px var(--transparency-light-10); - -} - -/* LOGIN */ -.bg-light { - background: var(--main-bg-color) !important; - background-repeat: repeat, no-repeat !important; - background-attachment: fixed, fixed !important; - background-position: center center, center center !important; - background-size: auto, cover !important; - -webkit-background-size: auto, cover !important; - -moz-background-size: auto, cover !important; - -o-background-size: auto, cover !important; -} - -.auth-card { - border: 1px solid transparent; -} - -.auth-card .card-footer { - background-color: transparent; - border-top: 1px solid var(--transparency-light-10); -} - -hr { - border-top: 1px solid var(--transparency-light-10); -} - - -.card { - background-color: var(--transparency-dark-45); - box-shadow: 0 0 10px 1px #000000; - color: var(--text); -} -.card-header { - border-bottom: 1px solid var(--transparency-light-10); -} - -.settings-card:hover, -.settings-card:focus { - border-color: transparent; - color: var(--text-hover); -} - -.alert-secondary { - color: var(--text); - background-color: var(--transparency-light-15); - border-color: var(--transparency-light-15); -} - -/* Series page */ -.progress-bar { - background-color: var(--accent-color); - text-shadow: none; -} - -.progress { - background-color: var(--transparency-light-20); -} - -.progress-bar.bg-primary { - background: rgb(var(--accent-color)) !important; - color: var(--label-text-color) !important; -} - -.progress-bar.bg-warning { - color: #212529; - background-color: rgba(255, 193, 7, .8) !important; -} - -.badge-warning { - color: #212529; - background-color: rgba(255, 193, 7, .8); -} - -.badge-primary { - color: var(--label-text-color); - background-color: rgb(var(--accent-color)); -} - -.text-truncate.badge.badge-secondary { - color: var(--label-text-color); - background-color: rgb(var(--accent-color)); -} - -.popover { - background-color: var(--drop-down-menu-bg); - border: 1px solid var(--transparency-light-20); -} - -.bs-popover-auto[x-placement^=top]>.arrow:after, -.bs-popover-top>.arrow:after { - border-top-color: var(--transparency-light-50); -} - -.popover-header { - background-color: var(--drop-down-menu-bg); - border-bottom: 1px solid var(--transparency-light-10); - -} - -.popover-body { +.mantine-Button-icon.mantine-Button-leftIcon[class*="bazarr-"] { color: var(--text) } -.spinner-border { + +/* SIDEMENU */ + +.mantine-Navbar-root[class*="bazarr-"] { + background: var(--transparency-dark-25); + border-right: 1px solid var(--transparency-light-15); +} + +.mantine-Divider-root .mantine-Divider-horizontal[class*="bazarr-"] { + border-top-color: var(--transparency-light-10); +} + +.mantine-Navbar-root[class*="bazarr-"] .mantine-Stack-root[class*="bazarr-"] a[aria-current="page"] { + background: var(--transparency-dark-15) !important; + border-left: 2px solid rgb(var(--accent-color)); +} + +.mantine-Navbar-root[class*="bazarr-"] .mantine-Stack-root[class*="bazarr-"] a { + border-left: 2px solid var(--transparency-light-10); +} + +.mantine-Navbar-root[class*="bazarr-"] .mantine-Stack-root a [class*="bazarr-"]:hover:not(.mantine-Badge-light):not(.mantine-Badge-inner), +.mantine-Navbar-root[class*="bazarr-"] .mantine-Stack-root [class*="bazarr-"]:hover:not(.mantine-Badge-light):not(.mantine-Badge-inner) { color: rgb(var(--accent-color)); + background: transparent; } -/* Modal */ - -.modal-content { - box-shadow: 0 0 10px 1px rgba(0, 0, 0, .1); - border-radius: 3px; - background: var(--modal-bg-color); - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; +.mantine-Navbar-root[class*="bazarr-"] { + background: var(--main-bg-color); } -.modal-header { - background: var(--modal-header-color); - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; - border-bottom: 1px solid var(--accent-color); -} - -.modal-footer { - background: var(--modal-footer-color); - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; - border-top: 1px solid var(--accent-color); -} - -.modal-content .badge-secondary { - color: var(--text-hover); - background-color: var(--accent-color); - padding: 5px; -} - -.modal-content button:focus { - outline: none !important; -} - -.close { - float: right; - font-size: 1.5rem; - font-weight: 700; - line-height: 1; +/* TABLE */ +[class*="bazarr-"] tbody tr { color: var(--text); - text-shadow: 0 1px 0 var(--text); - opacity: .5; } -.close:hover { - color: var(--text-hover) !important; - text-decoration: none; +[class*="bazarr-"] tbody tr td { + border-bottom: 1px solid var(--transparency-light-10) !important; } +[class*="bazarr-"] thead tr th { + border-bottom: 1px solid var(--transparency-light-20) !important; +} + +[class*="bazarr-"].__mantine-ref-striped tbody tr:nth-of-type(2n+1) { + background: var(--transparency-dark-15) !important; +} + +.mantine-Table-root .__mantine-ref-striped .mantine-Table-striped[class*="bazarr-"] { + color: var(--text) +} + +[class*="bazarr-"] thead tr th, +[class*="bazarr-"] tfoot tr th { + color: var(--text-hover) !important; +} + +.mantine-Skeleton-root.mantine-Skeleton-visible[class*="bazarr-"]::after { + background: var(--transparency-light-10); +} + +.mantine-Skeleton-root.mantine-Skeleton-visible[class*="bazarr-"]::before { + background: var(--transparency-dark-25); +} + +/* PAGINATION */ + +.mantine-Group-child.mantine-Pagination-item { + border: 1px solid var(--transparency-light-10); + background: var(--transparency-dark-15); + color: var(--text); +} + +.mantine-Group-child.mantine-Pagination-item[class*="bazarr-"]:disabled { + background: var(--transparency-light-15); + color: var(--text-muted); +} + +.mantine-Group-child.mantine-Pagination-item.mantine-Pagination-active[class*="bazarr-"] { + background: rgb(var(--accent-color)); + color: var(--label-text-color); +} + + /* BUTTONS */ -.btn-primary, -.btn-outline-secondary { +.mantine-Button-filled.mantine-Button-root.mantine-Group-child[class*="bazarr-"] { color: var(--button-text); - background-color: var(--button-color); - border-color: var(--button-color); -} - -.btn-primary.focus, -.btn-primary:focus, -.btn-primary:hover, -.btn-outline-secondary:hover, -.btn-outline-secondary.focus, -.btn-outline-secondary:focus { - color: var(--button-text-hover); - background-color: var(--button-color-hover); - border-color: var(--button-color-hover); -} - -.btn-primary:not(:disabled):not(.disabled).active, -.btn-primary:not(:disabled):not(.disabled):active, -.show>.btn-primary.dropdown-toggle { - color: var(--button-text-hover); - background-color: var(--button-color-hover); - border-color: var(--button-color-hover); -} - -.btn-primary:not(:disabled):not(.disabled).active:focus, -.btn-primary:not(:disabled):not(.disabled):active:focus, -.show>.btn-primary.dropdown-toggle:focus, -.btn-primary.focus, -.btn-primary:focus { - box-shadow: 0 0 0 0.2rem rgba(var(--accent-color), .5); -} - -.btn-primary.disabled, -.btn-primary:disabled { - color: var(--button-text); - background-color: var(--button-color); - border-color: var(--button-color); -} - -.btn-dark.disabled, -.btn-dark:disabled { - color: var(--text-muted); - background-color: transparent; - border-color: transparent; -} - -.btn-dark.disabled:hover, -.btn-dark:disabled:hover { - color: var(--text-muted); - background-color: transparent; - border-color: transparent; -} - -.btn-dark { - color: var(--button-text); - background-color: transparent; - /* rgba(var(--accent-color),.5)*/ - border-color: transparent; -} - -.btn-dark.focus, -.btn-dark:focus, -.btn-dark:hover { - color: var(--button-text-hover); - background-color: transparent; - /* rgba(var(--accent-color),.8) */ - border-color: transparent; -} - -.btn-dark.focus, -.btn-dark:focus { - box-shadow: 0 0 0 0.2rem transparent; -} - -.btn-dark:not(:disabled):not(.disabled).active, -.btn-dark:not(:disabled):not(.disabled):active, -.show>.btn-dark.dropdown-toggle { - color: var(--button-text-hover); - background-color: transparent; - border-color: transparent; -} - -.btn-dark:not(:disabled):not(.disabled).active:focus, -.btn-dark:not(:disabled):not(.disabled):active:focus, -.show>.btn-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem transparent; -} - -.btn-light { - color: var(--button-text); - background-color: var(--button-color); - border-color: var(--button-color); -} - -.btn-light.focus, -.btn-light:focus, -.btn-light:hover { - color: var(--button-text-hover); - background-color: var(--button-color-hover); - border-color: var(--button-color-hover); -} - -.btn-light.disabled, -.btn-light:disabled { - color: var(--button-text); - background-color: var(--button-color); - border-color: var(--button-color); -} - -.btn-light:not(:disabled):not(.disabled).active, -.btn-light:not(:disabled):not(.disabled):active, -.show>.btn-light.dropdown-toggle, -.btn-light.focus, -.btn-light:focus { - color: var(--button-text-hover); - background-color: var(--button-color-hover); - border-color: var(--button-color-hover); -} - -.btn-light:not(:disabled):not(.disabled).active:focus, -.btn-light:not(:disabled):not(.disabled):active:focus, -.show>.btn-light.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem transparent; -} - -.custom-control-input:focus~.custom-control-label:before { - box-shadow: 0 0 0 0.2rem var(--transparency-light-10); -} - -.custom-control-input:checked~.custom-control-label:before { - border-color: rgb(var(--accent-color)); - background-color: rgb(var(--accent-color)); -} - -.custom-control-input:focus~.custom-control-label:before { - box-shadow: 0 0 0 .2rem rgba(var(--accent-color), .25) -} - -.custom-control-input:focus:not(:checked)~.custom-control-label:before { - border-color: var(--accent-color); -} - -.custom-control-input:not(:disabled):active~.custom-control-label:before { - color: var(--text-hover); - background-color: rgb(var(--accent-color)); - border-color: rgb(var(--accent-color)); -} - -.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before { - border-color: rgb(var(--accent-color)); - background-color: rgb(var(--accent-color)); -} - -.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before { - background-color: rgba(var(--accent-color), .5) -} - -.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before { - background-color: rgba(var(--accent-color), .5) -} - -.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before { - background-color: rgba(var(--accent-color), .5) -} - -.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before { - background-color: rgba(var(--accent-color), .5) -} - -.custom-checkbox .custom-control-input:checked~.custom-control-label:after { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23000' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E"); -} - -input { - color: var(--text-hover) !important; -} - -.custom-select:focus { - border-color: rgb(var(--accent-color)); - outline: 0; - box-shadow: 0 0 0 .2rem rgba(var(--accent-color), .25) -} - -.custom-file-input:focus~.custom-file-label { - border-color: rgb(var(--accent-color)); - box-shadow: 0 0 0 .2rem rgba(var(--accent-color), .25) -} - -/* DROPDOWN MENU */ -.dropdown-menu, -.dropdown-header { - color: var(--text); - background: var(--drop-down-menu-bg); - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; -} - -.dropdown-item { - color: var(--text); -} - -.dropdown-item:focus, -.dropdown-item:hover { - color: var(--text-hover); - background-color: var(--transparency-dark-10); -} - -.custom-selector .selector__control { - background: var(--transparency-dark-25); - border-color: rgba(0, 0, 0, 0) !important; - color: var(--text-hover); -} - -[class$="-singleValue"], -[class$="-placeholder"], -[class$="-indicatorContainer"] { - color: var(--text) !important; -} - -[class$="-indicatorContainer"]:hover { - color: var(--text-hover); -} - -.custom-selector .selector__control--is-focused { - border-color: var(--transparency-light-20) !important; -} - -.selector__menu { - background: var(--drop-down-menu-bg) !important; - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; - color: var(--text) -} - -.custom-selector .selector__option--is-selected:active { - background-color: var(--transparency-light-10) !important; -} - -.custom-selector .selector__option--is-focused { - background-color: rgba(var(--accent-color), .2); - color: var(--text-hover); -} - -.custom-selector .selector__option--is-focused:active, -.custom-selector .selector__option--is-focused:focus { - background-color: rgba(var(--accent-color), .2); - color: var(--text-hover); -} - -.custom-selector .selector__option--is-selected { - background-color: rgb(var(--accent-color)); - color: var(--label-text-color); -} - -.custom-selector .selector__option--is-selected:active { - background-color: rgb(var(--accent-color)); -} - -.custom-rc-slider .rc-slider-track { background: var(--button-color); } -.custom-rc-slider .rc-slider-handle { - border: 3px solid var(--button-color); +.mantine-Button-filled.mantine-Button-root.mantine-Group-child[class*="bazarr-"]:hover { + color: var(--button-text-hover); + background: var(--button-color-hover); } -.custom-rc-slider .rc-slider-handle:hover, -.custom-rc-slider .rc-slider-handle:active { - border-color: var(--button-color-hover); +.mantine-Button-subtle.mantine-Button-root.mantine-Group-child[class*="bazarr-"]:hover { + background: var(--transparency-dark-15); } +.mantine-Button-subtle.mantine-Button-root.mantine-Group-child[class*="bazarr-"]:not(.__mantine-ref-loading):disabled { + background: transparent; + opacity: .5; +} + +.mantine-ActionIcon-hover.mantine-ActionIcon-root[class*="bazarr-"]:hover { + background: var(--transparency-dark-15); +} + +.mantine-Button-filled.mantine-Button-root[class*="bazarr-"] { + color: var(--button-text); + background: var(--button-color); +} + +.mantine-Button-filled.mantine-Button-root[class*="bazarr-"]:hover { + color: var(--button-text-hover); + background: var(--button-color-hover); +} + +[class*="bazarr-"].mantine-Switch-input:checked { + background-color: rgb(var(--accent-color)); + border-color: rgb(var(--accent-color)); +} + +[class*="bazarr-"].mantine-Switch-input:checked::before { + border-color: var(--label-text-color); + background: var(--label-text-color); +} + +[class*="bazarr-"].mantine-Switch-input:checked::after { + color: var(--label-text-color); +} + +[class*="bazarr-"].mantine-Switch-label { + color: var(--text-hover); +} + +[class*="bazarr-"].mantine-Switch-input { + background: var(--transparency-dark-15); + border: 1px solid var(--transparency-light-10); +} + +.mantine-UnstyledButton-root.__mantine-ref-control.mantine-Accordion-control[class*="bazarr-"]:hover { + background: var(--transparency-dark-15); +} + +.mantine-Accordion-item[class*="bazarr-"] { + border-bottom: var(--transparency-light-10) 1px solid; +} + +.__mantine-ref-icon.mantine-Accordion-icon[class*="bazarr-"] { + color: rgb(var(--accent-color)) +} + +.mantine-ActionIcon-transparent.mantine-ActionIcon-root[class*="bazarr-"] { + color: rgb(var(--accent-color)) +} + +.mantine-UnstyledButton-root[class*="bazarr-"] { + color: var(--text); + border: 1px solid var(--transparency-light-10); +} + +.mantine-UnstyledButton-root[class*="bazarr-"]:hover { + box-shadow: rgb(0 0 0 / 5%) 0px 1px 3px, rgb(0 0 0 / 5%) 0px 20px 25px -5px, rgb(0 0 0 / 4%) 0px 10px 10px -5px; + border: 1px solid rgb(var(--accent-color)); +} + +.mantine-Slider-bar[class*="bazarr-"] { + background: rgb(var(--accent-color)); +} + +.mantine-Slider-thumb[class*="bazarr-"] { + border: 4px solid rgb(var(--accent-color)); + color: var(--label-text-color); + background: var(--label-text-color); +} + +.mantine-Slider-mark.mantine-Slider-markFilled[class*="bazarr-"] { + border: 2px solid var(--label-text-color); + background: var(--label-text-color); +} + +[class*="bazarr-"].mantine-Slider-track::before { + background: var(--transparency-dark-15); +} + +[class*="bazarr-"].mantine-Slider-mark { + border: 2px solid rgb(var(--accent-color)); + background-color: rgb(var(--accent-color)) +} + +/* ACTION BUTTON */ +.mantine-ActionIcon-light.mantine-ActionIcon-root[class*="bazarr-"] { + background: var(--button-color); + color: var(--button-text); + border: 1px solid var(--button-color) +} + +.mantine-ActionIcon-light.mantine-ActionIcon-root[class*="bazarr-"]:hover { + background: var(--button-color-hover); + color: var(--button-text-hover); + border: 1px solid var(--button-color-hover) +} + +.mantine-ActionIcon-hover.mantine-ActionIcon-root.mantine-Group-child[class*="bazarr-"] { + color: var(--text); +} + +/* BADGES/PROGRESSBARS */ +.mantine-Progress-root[class*="bazarr-"] { + background: var(--transparency-dark-15); +} + +.mantine-Badge-light.mantine-Badge-root[class*="bazarr-"] { + background-color: rgb(var(--accent-color)); + color: var(--label-text-color) +} + +[class*="mantine-MultiSelect-"].mantine-MultiSelect-value[class*="bazarr-"], +.mantine-ActionIcon-transparent.mantine-ActionIcon-root.mantine-MultiSelect-defaultValueRemove[class*="bazarr-"] { + background: rgb(var(--accent-color)); + color: var(--label-text-color) +} + +/* INPUT */ + +[class*="mantine-Autocomplete-"].mantine-Autocomplete-input.mantine-Autocomplete-withIcon[class*="bazarr-"], +[class*="mantine-TextInput-"].mantine-TextInput-input[class*="bazarr-"], +[class*="mantine-NumberInput-"].mantine-NumberInput-input[class*="bazarr-"], +[class*="mantine-PasswordInput-"].mantine-PasswordInput-input.mantine-PasswordInput-input[class*="bazarr-"] { + background: var(--transparency-dark-25); + border: 1px solid var(--transparency-light-10); + color: var(--text); +} + +[class*="mantine-Autocomplete-"].mantine-Autocomplete-input.mantine-Autocomplete-withIcon[class*="bazarr-"]:focus, +[class*="mantine-Autocomplete-"].mantine-Autocomplete-input.mantine-Autocomplete-withIcon[class*="bazarr-"]:focus-within, +[class*="mantine-TextInput-"].mantine-TextInput-input[class*="bazarr-"]:focus, +[class*="mantine-TextInput-"].mantine-TextInput-input[class*="bazarr-"]:focus-within, +[class*="mantine-NumberInput-"].mantine-NumberInput-input[class*="bazarr-"]:focus, +[class*="mantine-NumberInput-"].mantine-NumberInput-input[class*="bazarr-"]:focus-within, +[class*="mantine-PasswordInput-"].mantine-PasswordInput-input.mantine-PasswordInput-input[class*="bazarr-"]:focus, +[class*="mantine-PasswordInput-"].mantine-PasswordInput-input.mantine-PasswordInput-input[class*="bazarr-"]:focus-within { + outline: none; + border-color: rgb(var(--accent-color)) !important; + color: var(--text-hover) +} + +.mantine-NumberInput-control.mantine-NumberInput-controlUp[class*="bazarr-"] { + border-bottom-color: var(--transparency-light-10); + border-left-color: var(--transparency-light-10); +} + +.mantine-NumberInput-control.mantine-NumberInput-controlDown[class*="bazarr-"] { + border-left-color: var(--transparency-light-10); +} + +.mantine-NumberInput-control.mantine-NumberInput-controlUp[class*="bazarr-"]::after { + border-color: transparent transparent var(--text); +} + +.mantine-NumberInput-control.mantine-NumberInput-controlDown[class*="bazarr-"]::after { + border-color: var(--text) transparent transparent; +} + +[class*="bazarr-"].mantine-Checkbox-inner input { + background: var(--transparency-dark-15); + border: 1px solid var(--transparency-light-10); +} + +[class*="bazarr-"].mantine-Checkbox-input:checked { + background-color: rgb(var(--accent-color)); + border-color: rgb(var(--accent-color)); +} + +.__mantine-ref-icon[class*="bazarr-"].mantine-Checkbox-icon { + color: var(--label-text-color) +} + +[class*="mantine-TextInput-"].mantine-TextInput-input[class*="bazarr-"], +[class*="mantine-Autocomplete-"].mantine-Autocomplete-input.mantine-Autocomplete-withIcon[class*="bazarr-"] { + color: var(--text); +} + +textarea, +[class*="mantine-Textarea-"].mantine-Textarea-input[class*="bazarr-"] { + background: var(--transparency-dark-15); +} + +textarea:focus, +[class*="mantine-Textarea-"].mantine-Textarea-input[class*="bazarr-"]:focus, +textarea:focus-within, +[class*="mantine-Textarea-"].mantine-Textarea-input[class*="bazarr-"]:focus-within { + border-color: rgb(var(--accent-color)) !important; +} + +/* SELECT */ +.mantine-Select-wrapper[class*="bazarr-"] input, +[class*="mantine-MultiSelect-"].mantine-MultiSelect-input[class*="bazarr-"] { + background-color: var(--transparency-dark-15); + color: var(--text); + border: 1px solid var(--transparency-light-10); +} + +[class*="mantine-MultiSelect-"].mantine-MultiSelect-input[class*="bazarr-"]:focus, +[class*="mantine-MultiSelect-"].mantine-MultiSelect-input[class*="bazarr-"]:focus-within { + border-color: rgb(var(--accent-color)) !important; +} + +.mantine-Select-wrapper[class*="bazarr-"] input:focus, +.mantine-Select-wrapper[class*="bazarr-"] input:focus-within { + outline: none; + border-color: rgb(var(--accent-color)) !important; +} + +/* DROPDOWNS */ + +.mantine-Paper-root.mantine-Menu-body[class*="bazarr-"] { + border: 1px solid var(--transparency-light-10); + background: var(--drop-down-menu-bg); +} + +[class*="bazarr-"].mantine-Menu-itemInner { + color: var(--text); +} + +.mantine-Menu-item.mantine-Menu-itemHovered[class*="bazarr-"] { + background-color: var(--transparency-light-10); + color: var(--text-hover); +} + +.mantine-Menu-item[class*="bazarr-"]:hover { + color: var(--text-hover); +} + +.mantine-ScrollArea-root.mantine-Paper-root.mantine-Select-dropdown[class*="bazarr-"] { + background: var(--drop-down-menu-bg); + border: 1px solid var(--drop-down-menu-bg); +} + +.mantine-Select-item.mantine-Select-selected[class*="bazarr-"] { + background: var(--transparency-light-10); +} + +[class*="bazarr-"].mantine-Select-item:hover { + background: var(--transparency-dark-15) +} + +.mantine-ScrollArea-root.mantine-Paper-root.mantine-Autocomplete-dropdown[class*="bazarr-"] { + background: var(--drop-down-menu-bg); + color: var(--text); + border: 1px solid var(--drop-down-menu-bg); +} + +.mantine-Autocomplete-item.mantine-Autocomplete-hovered[class*="bazarr-"] { + background: var(--transparency-dark-15); +} + +[class*="bazarr-"].mantine-Autocomplete-item { + color: var(--text); +} + +/* MODAL */ + +.mantine-Paper-root.mantine-Modal-modal[class*="bazarr-"] { + color: var(--text); + box-shadow: rgb(0 0 0 / 5%) 0px 1px 3px, rgb(0 0 0 / 5%) 0px 28px 23px -7px, rgb(0 0 0 / 4%) 0px 12px 12px -7px; + background: var(--modal-bg-color); +} + +.mantine-Divider-root.mantine-Divider-horizontal[class*="bazarr-"] { + border-top-color: var(--transparency-light-10); +} + +.mantine-ActionIcon-hover.mantine-ActionIcon-root.mantine-Modal-close[class*="bazarr-"]:hover { + background: var(--transparency-dark-15); +} + +.mantine-ActionIcon-hover.mantine-ActionIcon-root.mantine-Modal-close[class*="bazarr-"] { + color: var(--text); +} + +.mantine-ActionIcon-hover.mantine-ActionIcon-root[class*="bazarr-"] { + color: var(--text); +} + +/* RELEASES */ + +.mantine-Paper-root.mantine-Card-root[class*="bazarr-"] { + background: var(--transparency-dark-15); +} + +.mantine-List-item[class*="bazarr-"] { + color: var(--text); +} + +/* ALERTS */ + +.mantine-Alert-root.mantine-Alert-light[class*="bazarr-"] { + background: var(--transparency-dark-15); +} + +[class*="bazarr-"].mantine-Alert-message { + color: var(--text); +} + +[class*="bazarr-"].mantine-Alert-label { + color: var(--text-hover) +} /* RECHARTS */ .recharts-default-tooltip { @@ -816,43 +499,42 @@ line { fill: none; } - -/* TOASTS */ -.toast { - background: var(--modal-bg-color); - background-repeat: repeat, no-repeat; - background-attachment: fixed, fixed; - background-position: center center, center center; - background-size: auto, cover; - -webkit-background-size: auto, cover; - -moz-background-size: auto, cover; - -o-background-size: auto, cover; - border: 1px solid rgba(0, 0, 0, .1); - box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .1); - color: var(--text) +/* NOTIFICATIONS */ +.mantine-Notification-root.mantine-Notification-withIcon[class*="bazarr-"], +.mantine-Notification-root[class*="bazarr-"] { + background: var(--drop-down-menu-bg); + border: 1px solid var(--drop-down-menu-bg); } -.toast-header { - color: var(--text-hover); - background: var(--transparency-dark-35); - border-bottom: 1px solid rgba(0, 0, 0, .05); +code, +.mantine-Code-root[class*="bazarr-"] { + background: rgb(var(--accent-color)); + color: var(--label-text-color); } -.alert-container .toast-container .toast .toast-body .progress .progress-bar { - text-shadow: -2px -2px 5px rgba(var(--accent-color), .35), 2px -2px 5px rgba(var(--accent-color), .35), -2px 2px 5px rgba(var(--accent-color), .35), 2px 2px 5px rgba(var(--accent-color), .35); - overflow: visible +.mantine-Code-root.mantine-Code-block[class*="bazarr-"] { + background: var(--transparency-dark-15); + color: var(text); } -.progress-bar-striped { - background-image: linear-gradient(45deg, rgba(var(--accent-color), .5) 25%, transparent 0, transparent 50%, rgba(var(--accent-color), .5) 0, rgba(var(--accent-color), .5) 75%, transparent 0, transparent); - background-size: 1rem 1rem +/* SPINNER */ + +.mantine-Notification-root.mantine-Notification-withIcon[class*="bazarr-"] svg { + stroke: rgb(var(--accent-color)); } -.notification-btn .notification-center-progress .progress .progress-bar { - text-shadow: -2px -2px 5px rgb(var(--accent-color)), 2px -2px 5px rgb(var(--accent-color)), -2px 2px 5px rgb(var(--accent-color)), 2px 2px 5px rgb(var(--accent-color)); +/* PROGRESSBAR */ + +[class*="bazarr-"].mantine-Progress-bar[style="width: 100%;"] { + background: rgb(var(--accent-color)); } -/* LOGS */ -/* Stack traceback */ -code.zmdi-language-python-alt { - color: var(--text); + +[class*="bazarr-"].mantine-Progress-bar[style="width: 100%;"] .mantine-Text-root.mantine-Progress-label[class*="bazarr-"] { + color: var(--label-text-color); +} + +/* LOADER */ + +.mantine-LoadingOverlay-root[class*="bazarr-"] svg { + stroke: rgb(var(--accent-color)); } \ No newline at end of file diff --git a/css/base/vuetorrent/vuetorrent-base.css b/css/base/vuetorrent/vuetorrent-base.css index 35668a6e..17b75dd8 100644 --- a/css/base/vuetorrent/vuetorrent-base.css +++ b/css/base/vuetorrent/vuetorrent-base.css @@ -108,7 +108,7 @@ p, /* CARDS */ [class*="theme--"].v-card { - background: var(--transparency-dark-50); + background: var(--transparency-dark-35); color: var(--text); } @@ -223,6 +223,10 @@ p, button>.v-btn--is-elevated .v-btn--has-bg.v-icon__svg { fill: var(--button-text); } + +[class*="theme--"].v-btn.v-btn--has-bg .v-icon__svg { + fill: var(--button-text) !important; +} .v-icon__svg{ fill: rgb(var(--accent-color)) !important; } @@ -461,6 +465,13 @@ button>.v-btn--is-elevated .v-btn--has-bg.v-icon__svg { color: var(--text-hover); } +[class*="theme--"].v-data-table .v-data-table__empty-wrapper { + color: var(--text); +} + +[class*="theme--"].v-tabs-items { + background-color: transparent; +} /* TOOLTIP */ .apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title, .apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title { @@ -496,4 +507,11 @@ button>.v-btn--is-elevated .v-btn--has-bg.v-icon__svg { .v-speed-dial__list .v-icon__svg { fill: var(--text-hover); +} + +/* SETTING */ + +[class*="theme--"].v-list { + background: var(--transparency-light-05); + color: rgba(0,0,0,.87); } \ No newline at end of file diff --git a/fetch.sh b/fetch.sh new file mode 100644 index 00000000..9a4b63f8 --- /dev/null +++ b/fetch.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +# Downloads all docker mod scripts + +MODS=$(curl https://theme-park.dev/themes.json | jq -r '.["docker-mods"]') +if [[ "$0" == "bash" ]]; then + DIR="/tmp/theme-park-mods" +else + DIR="$0" +fi +mkdir -p "$DIR" +printf "\nSaving mods into $DIR\n\n" +jq -r 'to_entries | map(.key + "|" + (.value | tostring)) | .[]' <<< "$MODS" | \ + while IFS='|' read key value; do + curl "$value" --create-dirs --output "$DIR/$key" --silent + echo "Fetched $key script" + done +chmod go+rx $DIR \ No newline at end of file diff --git a/themes.py b/themes.py index 6f814b9c..1278c368 100644 --- a/themes.py +++ b/themes.py @@ -61,7 +61,7 @@ def create_addons_json(): return dumps(ADDONS, sort_keys=True) -def create_json(app_folders: list = None, themes: list = None, community_themes: list = None, no_sub_folders=False): +def create_json(app_folders: list = None, themes: list = None, community_themes: list = None ,docker_mods: list = None, no_sub_folders=False) -> str: if no_sub_folders: THEMES_DICT = {} theme_shas = subprocess.check_output(["git", "ls-files", "-s", "./css/theme-options/*.css"]) if isdir(".git") else [] @@ -71,12 +71,12 @@ def create_json(app_folders: list = None, themes: list = None, community_themes: THEMES = { theme.split(".")[0].capitalize(): { "url": f"{scheme}://{DOMAIN}/css/theme-options/{theme}?sha={THEME_SHAS.get(theme)}" - }for theme in themes + }for theme in themes if themes } COMMUNITY_THEMES = { theme.split(".")[0].capitalize(): { "url": f"{scheme}://{DOMAIN}/css/community-theme-options/{theme}?sha={COMMUNITY_THEME_SHAS.get(theme)}" - }for theme in community_themes + }for theme in community_themes if community_themes } THEMES_DICT.update(dict(sorted({ "themes": { @@ -111,12 +111,17 @@ def create_json(app_folders: list = None, themes: list = None, community_themes: } for app in app_folders if isfile(f'./css/base/{app}/.deprecated') } }.items()))) + APPS.update(dict(sorted({ + "docker-mods": { + mod: f"{scheme}://{DOMAIN}/docker-mods/{mod}/root/etc/cont-init.d/98-themepark" for mod in docker_mods if docker_mods + } + }.items()))) THEMES = loads(create_json(themes=themes, community_themes=community_themes, no_sub_folders=True)) APPS.update(ADDONS) APPS.update(THEMES) return dumps(APPS) -def create_theme_options(): +def create_theme_options() -> None: app_shas = subprocess.check_output(["git", "ls-files", "-s", "./css/base/*base.css"]) if isdir(".git") else [] theme_shas = subprocess.check_output(["git", "ls-files", "-s", "./css/theme-options/*.css"]) if isdir(".git") else [] community_theme_shas = subprocess.check_output(["git", "ls-files", "-s", "./css/community-theme-options/*.css"]) if isdir(".git") else [] @@ -145,6 +150,7 @@ scheme = env.get('TP_SCHEME','https') if env.get('TP_SCHEME') else 'https' if __name__ == "__main__": app_folders = [name for name in listdir('./css/base') if isdir(join('./css/base', name))] themes = [name for name in listdir('./css/theme-options') if isfile(join('./css/theme-options', name))] + docker_mods = [name for name in listdir('./docker-mods') if isdir(join('./docker-mods', name))] community_themes = [name for name in listdir('./css/community-theme-options') if isfile(join('./css/community-theme-options', name))] develop = True if isdir(".git") and subprocess.check_output(["git", "symbolic-ref", "--short", "HEAD"]).decode('ascii').strip() == "develop" else False if env_domain: @@ -153,7 +159,7 @@ if __name__ == "__main__": with open("CNAME", "rt", closefd=True) as cname: CNAME = cname.readline() DOMAIN = CNAME if not develop else f"develop.{CNAME}" - apps = loads(create_json(app_folders=app_folders, themes=themes, community_themes=community_themes)) + apps = loads(create_json(app_folders=app_folders, themes=themes, community_themes=community_themes, docker_mods=docker_mods)) with open("themes.json", "w") as outfile: dump(apps, outfile, indent=2, sort_keys=True) create_theme_options() \ No newline at end of file