refactoring
This commit is contained in:
parent
68863a9113
commit
0973c5e995
10 changed files with 302 additions and 258 deletions
25
btfl.less
25
btfl.less
|
@ -3,11 +3,26 @@
|
||||||
* Zlib License
|
* Zlib License
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@import "src/hide";
|
@round: 8px;
|
||||||
@import "src/dimmer";
|
@rounder: 16px;
|
||||||
@import "src/mobile";
|
@roundest: 24px; // text area
|
||||||
@import "src/profile";
|
|
||||||
@import "src/people";
|
@div-width: (@rounder / 2);
|
||||||
|
@tab-height: 40px;
|
||||||
|
|
||||||
|
// Required
|
||||||
|
@import "src/func";
|
||||||
@import "src/fixes";
|
@import "src/fixes";
|
||||||
|
|
||||||
|
// Optional
|
||||||
|
@import "src/hide";
|
||||||
|
@import "src/mobile";
|
||||||
|
|
||||||
|
// Style
|
||||||
|
@import "src/materials";
|
||||||
@import "src/style";
|
@import "src/style";
|
||||||
@import "src/ui";
|
@import "src/ui";
|
||||||
|
@import "src/dimmer";
|
||||||
|
@import "src/profile";
|
||||||
|
@import "src/people";
|
||||||
|
@import "src/settings";
|
||||||
|
|
|
@ -12,6 +12,9 @@ ul[data-list-id="guildsnav"] div[class^="scroller-"] {
|
||||||
|
|
||||||
& > div:nth-child(4) {
|
& > div:nth-child(4) {
|
||||||
margin-top: 4px;
|
margin-top: 4px;
|
||||||
|
|
||||||
|
& ~ div
|
||||||
|
{ &:extend(.hide); }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
31
src/func.less
Normal file
31
src/func.less
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
.left-border(@r: 0) {
|
||||||
|
border-top-left-radius: @r !important;
|
||||||
|
border-bottom-left-radius: @r !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.right-border(@r: 0) {
|
||||||
|
border-top-right-radius: @r !important;
|
||||||
|
border-bottom-right-radius: @r !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bottom-border(@r: 0) {
|
||||||
|
border-bottom-left-radius: @r !important;
|
||||||
|
border-bottom-right-radius: @r !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.top-border(@r: 0) {
|
||||||
|
border-top-left-radius: @r !important;
|
||||||
|
border-top-right-radius: @r !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.radius(@r: 0) {
|
||||||
|
border-radius: @r !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hide {
|
||||||
|
all: unset !important;
|
||||||
|
display: none !important;
|
||||||
|
width: 0 !important;
|
||||||
|
height: 0 !important;
|
||||||
|
}
|
||||||
|
|
102
src/hide.less
102
src/hide.less
|
@ -1,26 +1,36 @@
|
||||||
|
|
||||||
// Site
|
// Site
|
||||||
[class*="perksContainer-"],
|
[class*="perksContainer-"],
|
||||||
[class^="DocSearch"], // Algolia, f you
|
[class^="DocSearch"], // Algolia, f you
|
||||||
#app-mount div:not([class]) div[class=""] div:not([class]), // main page content
|
{ &:extend(.hide); }
|
||||||
#app-mount div:not([class]) div[class=""] div div[class*="background-"], // nitro animation at top
|
|
||||||
#app-mount div:not([class]) div[class=""] div[class^="grid-"] div[class^="animation-"], // nitro animation
|
#app-mount div:not([class]) div[class=""] {
|
||||||
|
div:not([class]), // main page content
|
||||||
|
div div[class*="background-"], // nitro animation at top
|
||||||
|
div[class^="grid-"] div[class^="animation-"], // nitro animation at bottom
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
}
|
||||||
|
|
||||||
// Remove background (invite, login)
|
// Remove background (invite, login)
|
||||||
[class*="artwork-"],
|
[class*="artwork-"],
|
||||||
div[class^="characterBackground-"] [class*="rightSplit-"],
|
div[class^="characterBackground-"] [class*="rightSplit-"],
|
||||||
div[class^="art-"],
|
div[class^="art-"],
|
||||||
|
{ &:extend(.hide); }
|
||||||
// New server (inside app)
|
|
||||||
div[class*="templatesList-"] button[class^="container-"] ~ *, // templates are really useless
|
|
||||||
|
|
||||||
// Nicks
|
// Nicks
|
||||||
li[class^="messageListItem-"] [class*="cozyMessage-"] [class^="username-"], // in message
|
[class^="username-"] {
|
||||||
:not([class^="headerText-"]) > div[class*="nameTag-"] [class^="username-"], // outside message
|
li[class^="messageListItem-"]
|
||||||
[class^="discrimBase-"],
|
[class*="cozyMessage-"] &, // inside message
|
||||||
|
:not([class^="headerText-"])
|
||||||
|
> div[class*="nameTag-"] &, // outside message
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
}
|
||||||
|
|
||||||
|
[class^="discrimBase-"],
|
||||||
div[class^="discordTag-"] [class^="username-"], // friends tab
|
div[class^="discordTag-"] [class^="username-"], // friends tab
|
||||||
div[class^="nameTag-"],
|
div[class^="nameTag-"],
|
||||||
[class^="usernameInnerRow-"], // at settings
|
[class^="usernameInnerRow-"], // at settings
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
// Nitro
|
// Nitro
|
||||||
[class^="marketing"],
|
[class^="marketing"],
|
||||||
|
@ -40,7 +50,8 @@ span[class^="questionMark-"], // at tag change
|
||||||
div[class^="characterCount-"] div[class^="root-"], // at many characters
|
div[class^="characterCount-"] div[class^="root-"], // at many characters
|
||||||
[class^="clickableSticker-"], // stickers
|
[class^="clickableSticker-"], // stickers
|
||||||
nav[class^="privateChannels-"] div div // Nitro tab at DM
|
nav[class^="privateChannels-"] div div // Nitro tab at DM
|
||||||
*[data-list-item-id$="nitro"],
|
[data-list-item-id$="nitro"],
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
// Suggestions
|
// Suggestions
|
||||||
button[class*="followButton-"], // at top in channels
|
button[class*="followButton-"], // at top in channels
|
||||||
|
@ -49,20 +60,12 @@ div[class^="threadSuggestionBar-"], // create thread because many replies
|
||||||
div[class^="welcomeCTA-"], // wave to say hi on server
|
div[class^="welcomeCTA-"], // wave to say hi on server
|
||||||
div[role="separator"]:not([id$="new-messages-bar"]), // aren't needed
|
div[role="separator"]:not([id$="new-messages-bar"]), // aren't needed
|
||||||
|
|
||||||
// Profile
|
div[class^="channelNotice-"], // sh** at bottom of server name like invite people, server boost etc.
|
||||||
[class^="botTagVerified-"],
|
h2[class^="privateChannelsHeaderContainer"], // direct messages label
|
||||||
[class^="bannerContainer-"],
|
|
||||||
[class*="banner-"],
|
|
||||||
[class^="badgeList-"],
|
|
||||||
[class^="profileBadges-"],
|
|
||||||
|
|
||||||
// Settings
|
div[class*="templatesList-"] button[class^="container-"] ~ *, // templates are really useless
|
||||||
div[class^="keybind-"], // true must know it!
|
|
||||||
[class*="socialLink-"], // in change log
|
|
||||||
div[class^="socialLinks-"], // in settings at bottom
|
|
||||||
|
|
||||||
// Member list
|
{ &:extend(.hide); }
|
||||||
[class^="membersGroup-"], // groups (roles)
|
|
||||||
|
|
||||||
// Emoji picker
|
// Emoji picker
|
||||||
#gif-picker-tab, #sticker-picker-tab,
|
#gif-picker-tab, #sticker-picker-tab,
|
||||||
|
@ -70,43 +73,44 @@ div[class^="socialLinks-"], // in settings at bottom
|
||||||
div[class^="emojiPicker-"]
|
div[class^="emojiPicker-"]
|
||||||
> div[class^="header-"],
|
> div[class^="header-"],
|
||||||
nav[class^="nav-"], // breaks emoji panel, fixed at fixes.less
|
nav[class^="nav-"], // breaks emoji panel, fixed at fixes.less
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
// Search
|
// Search
|
||||||
nav > [class^="searchBar-"],
|
nav > [class^="searchBar-"], // in dm
|
||||||
[role^="tab"] > [class^="searchBar-"],
|
[role^="tab"] > [class^="searchBar-"], // in tabs
|
||||||
div[class^="toolbar-3_"] > :nth-child(3) ~ *:not([class^="search-"]),
|
div[class^="toolbar-3_"] > :nth-child(3)
|
||||||
|
~ *:not([class^="search-"]), // remove after 3 elements except search
|
||||||
// Sidebar
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
ul[data-list-id="guildsnav"] div[class^="scroller-"] > div:nth-child(4) ~ div, // guild selector in left part
|
|
||||||
|
|
||||||
div[class^="channelNotice-"], // sh** at bottom of server name like invite people, server boost etc.
|
|
||||||
h2[class^="privateChannelsHeaderContainer"], // direct messages label
|
|
||||||
// #private-channels-0, #private-channels-1, #private-channels-2, // to check
|
|
||||||
|
|
||||||
// Text area
|
// Text area
|
||||||
div[class^="channelTextArea-"] div div > div[class^="buttons-"]
|
div[class^="channelTextArea-"] {
|
||||||
> button, // gift button, f you
|
div div > div[class^="buttons-"] { // button
|
||||||
|
& > button // gift button, f you
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
main form div div > div[class^="channelTextArea-"] div div > div[class^="buttons-"] // block all except emoji (and send button, if exists)
|
& > div.expression-picker-chat-input-button {
|
||||||
> div.expression-picker-chat-input-button:not(:nth-child(4)),
|
&:not(:nth-child(4)) // except emoji (and send button, if exists)
|
||||||
|
{ &:extend(.hide); }
|
||||||
div[class^="channelTextArea-"] > div[class^="scrollableContainer-"] // divider breaks redesigned text area
|
}
|
||||||
div[class^="divider-"],
|
}
|
||||||
|
& > div[class^="scrollableContainer-"]
|
||||||
|
div[class^="divider-"] // breaks redesigned text area
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
}
|
||||||
|
|
||||||
// Other
|
// Other
|
||||||
div[class^="autocompleteShadow-"], // bugged
|
div[class^="autocompleteShadow-"], // bugged
|
||||||
[class^="unreadPill-"], // NEW at right, not needed
|
[class^="unreadPill-"], // NEW at right, not needed
|
||||||
div[class^="overviewSidebar-"], // at community creation, not needed
|
div[class^="overviewSidebar-"], // at community creation, not needed
|
||||||
section div[class^="children-"] div[class^="spacer-"], // to check
|
|
||||||
|
|
||||||
div[class^="base-"] div[class^="children-"] div[class^="divider-"] ~ div:not([class^="tabBar-"]),
|
|
||||||
div[class^="base-"] div[class^="children-"] div[class^="divider-"],
|
|
||||||
div[class^="children-"]::after, // shadow at title
|
|
||||||
form::before, // message input shadow
|
form::before, // message input shadow
|
||||||
{
|
div[class^="children-"]::after, // shadow at title
|
||||||
all: unset !important;
|
{ &:extend(.hide); }
|
||||||
display: none !important;
|
|
||||||
width: 0 !important;
|
div[class^="base-"] div[class^="children-"] {
|
||||||
height: 0 !important;
|
// channel title
|
||||||
|
div[class^="divider-"] {
|
||||||
|
&, & ~ div:not([class^="tabBar-"]),
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
115
src/materials.less
Normal file
115
src/materials.less
Normal file
|
@ -0,0 +1,115 @@
|
||||||
|
// Mica-like material from Windows 11
|
||||||
|
|
||||||
|
[class^="sidebar-"] {
|
||||||
|
&, & > nav {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
& > nav,
|
||||||
|
div[class*="scroller"] {
|
||||||
|
.top-border(@rounder);
|
||||||
|
}
|
||||||
|
|
||||||
|
div[class*="scroller"] {
|
||||||
|
background-color: var(--background-secondary);
|
||||||
|
}
|
||||||
|
|
||||||
|
nav[class^="private"] {
|
||||||
|
&::before {
|
||||||
|
content: "Discord";
|
||||||
|
color: var(--header-primary);
|
||||||
|
margin: ((48px - 20px) / 2) 16px; // 20px is line-height
|
||||||
|
font-size: 15px;
|
||||||
|
line-height: 20px;
|
||||||
|
font-weight: 500;
|
||||||
|
font-family: var(--font-display);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
section { // bottom panel
|
||||||
|
.bottom-border(@rounder);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
div[class^="base-"] > div[class^="content-"] > div[class^="container"],
|
||||||
|
div[class^="chat-"]
|
||||||
|
{
|
||||||
|
background-color: unset;
|
||||||
|
& > div {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[class^="sidebar"] header,
|
||||||
|
[class^="chat"] > section:not([class^="chat"]),
|
||||||
|
[class^="container-"] > section {
|
||||||
|
background-color: var(--background-tertiary) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes glow {
|
||||||
|
from { box-shadow: 0 0 2px 4px var(--interactive-normal); }
|
||||||
|
to { box-shadow: 0 0 1px 2px var(--interactive-muted); }
|
||||||
|
}
|
||||||
|
|
||||||
|
[class^="item-"] {
|
||||||
|
&[class*="focused-"] {
|
||||||
|
background-color: var(--text-muted);
|
||||||
|
color: var(--interactive-active);
|
||||||
|
animation: glow 0.7s linear infinite alternate;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Acrylic
|
||||||
|
.acrylic {
|
||||||
|
--acrylic-blur: @round;
|
||||||
|
--acrylic-color: var(--background-floating);
|
||||||
|
--acrylic-opacity: 0.5;
|
||||||
|
|
||||||
|
&, & > *, div[class^="body"] {
|
||||||
|
background: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::before, &::after {
|
||||||
|
border-radius: inherit;
|
||||||
|
position: absolute;
|
||||||
|
top: 0; bottom: 0;
|
||||||
|
left: 0; right: 0;
|
||||||
|
content: "";
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
backdrop-filter: blur(var(--acrylic-blur)) saturate(125%);
|
||||||
|
}
|
||||||
|
&::after {
|
||||||
|
background-color: var(--acrylic-color);
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAUVBMVEWFhYWDg4N3d3dtbW17e3t1dXWBgYGHh4d5eXlzc3OLi4ubm5uVlZWPj4+NjY19fX2JiYl/f39ra2uRkZGZmZlpaWmXl5dvb29xcXGTk5NnZ2c8TV1mAAAAG3RSTlNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAvEOwtAAAFVklEQVR4XpWWB67c2BUFb3g557T/hRo9/WUMZHlgr4Bg8Z4qQgQJlHI4A8SzFVrapvmTF9O7dmYRFZ60YiBhJRCgh1FYhiLAmdvX0CzTOpNE77ME0Zty/nWWzchDtiqrmQDeuv3powQ5ta2eN0FY0InkqDD73lT9c9lEzwUNqgFHs9VQce3TVClFCQrSTfOiYkVJQBmpbq2L6iZavPnAPcoU0dSw0SUTqz/GtrGuXfbyyBniKykOWQWGqwwMA7QiYAxi+IlPdqo+hYHnUt5ZPfnsHJyNiDtnpJyayNBkF6cWoYGAMY92U2hXHF/C1M8uP/ZtYdiuj26UdAdQQSXQErwSOMzt/XWRWAz5GuSBIkwG1H3FabJ2OsUOUhGC6tK4EMtJO0ttC6IBD3kM0ve0tJwMdSfjZo+EEISaeTr9P3wYrGjXqyC1krcKdhMpxEnt5JetoulscpyzhXN5FRpuPHvbeQaKxFAEB6EN+cYN6xD7RYGpXpNndMmZgM5Dcs3YSNFDHUo2LGfZuukSWyUYirJAdYbF3MfqEKmjM+I2EfhA94iG3L7uKrR+GdWD73ydlIB+6hgref1QTlmgmbM3/LeX5GI1Ux1RWpgxpLuZ2+I+IjzZ8wqE4nilvQdkUdfhzI5QDWy+kw5Wgg2pGpeEVeCCA7b85BO3F9DzxB3cdqvBzWcmzbyMiqhzuYqtHRVG2y4x+KOlnyqla8AoWWpuBoYRxzXrfKuILl6SfiWCbjxoZJUaCBj1CjH7GIaDbc9kqBY3W/Rgjda1iqQcOJu2WW+76pZC9QG7M00dffe9hNnseupFL53r8F7YHSwJWUKP2q+k7RdsxyOB11n0xtOvnW4irMMFNV4H0uqwS5ExsmP9AxbDTc9JwgneAT5vTiUSm1E7BSflSt3bfa1tv8Di3R8n3Af7MNWzs49hmauE2wP+ttrq+AsWpFG2awvsuOqbipWHgtuvuaAE+A1Z/7gC9hesnr+7wqCwG8c5yAg3AL1fm8T9AZtp/bbJGwl1pNrE7RuOX7PeMRUERVaPpEs+yqeoSmuOlokqw49pgomjLeh7icHNlG19yjs6XXOMedYm5xH2YxpV2tc0Ro2jJfxC50ApuxGob7lMsxfTbeUv07TyYxpeLucEH1gNd4IKH2LAg5TdVhlCafZvpskfncCfx8pOhJzd76bJWeYFnFciwcYfubRc12Ip/ppIhA1/mSZ/RxjFDrJC5xifFjJpY2Xl5zXdguFqYyTR1zSp1Y9p+tktDYYSNflcxI0iyO4TPBdlRcpeqjK/piF5bklq77VSEaA+z8qmJTFzIWiitbnzR794USKBUaT0NTEsVjZqLaFVqJoPN9ODG70IPbfBHKK+/q/AWR0tJzYHRULOa4MP+W/HfGadZUbfw177G7j/OGbIs8TahLyynl4X4RinF793Oz+BU0saXtUHrVBFT/DnA3ctNPoGbs4hRIjTok8i+algT1lTHi4SxFvONKNrgQFAq2/gFnWMXgwffgYMJpiKYkmW3tTg3ZQ9Jq+f8XN+A5eeUKHWvJWJ2sgJ1Sop+wwhqFVijqWaJhwtD8MNlSBeWNNWTa5Z5kPZw5+LbVT99wqTdx29lMUH4OIG/D86ruKEauBjvH5xy6um/Sfj7ei6UUVk4AIl3MyD4MSSTOFgSwsH/QJWaQ5as7ZcmgBZkzjjU1UrQ74ci1gWBCSGHtuV1H2mhSnO3Wp/3fEV5a+4wz//6qy8JxjZsmxxy5+4w9CDNJY09T072iKG0EnOS0arEYgXqYnXcYHwjTtUNAcMelOd4xpkoqiTYICWFq0JSiPfPDQdnt+4/wuqcXY47QILbgAAAABJRU5ErkJggg==);
|
||||||
|
opacity: var(--acrylic-opacity);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Acrylic patches
|
||||||
|
div[class^="layers-"] {
|
||||||
|
& > div[class*="baseLayer"] {
|
||||||
|
opacity: 1 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
& > div[class^="layer"]:not([class*="baseLayer"]) {
|
||||||
|
div[class*="View-"] {
|
||||||
|
--acrylic-color: var(--background-primary);
|
||||||
|
}
|
||||||
|
&, & > div[class*="View-"], div[class*="scroller"] {
|
||||||
|
background: unset;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
div[class^="channelTextArea-"],
|
||||||
|
div[class^="quickswitcher-"] div[class^="scroll"],
|
||||||
|
div[class^="focusLock-"] > div,
|
||||||
|
div[class^="avatar-"],
|
||||||
|
{
|
||||||
|
background: unset !important;
|
||||||
|
border-color: transparent;
|
||||||
|
scrollbar-color: var(--scrollbar-auto-scrollbar-color-track) transparent;
|
||||||
|
}
|
|
@ -1,3 +1,7 @@
|
||||||
|
|
||||||
|
[class^="membersGroup-"] // groups (roles)
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
[class^="membersWrap-"] {
|
[class^="membersWrap-"] {
|
||||||
// make it shorter
|
// make it shorter
|
||||||
&, div[class^="members-"] {
|
&, div[class^="members-"] {
|
||||||
|
|
|
@ -1,3 +1,11 @@
|
||||||
|
|
||||||
|
[class^="botTagVerified-"],
|
||||||
|
[class^="bannerContainer-"],
|
||||||
|
[class*="banner-"],
|
||||||
|
[class^="badgeList-"],
|
||||||
|
[class^="profileBadges-"],
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
div[class^="accountProfileCard-"] div[class^="userInfo-"] {
|
div[class^="accountProfileCard-"] div[class^="userInfo-"] {
|
||||||
// settings
|
// settings
|
||||||
justify-content: left;
|
justify-content: left;
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
|
||||||
|
div[class^="keybind-"], // true must know it!
|
||||||
|
[class*="socialLink-"], // in change log
|
||||||
|
div[class^="socialLinks-"], // in settings at bottom
|
||||||
|
{ &:extend(.hide); }
|
||||||
|
|
||||||
// New sidebar in settings
|
// New sidebar in settings
|
||||||
div[class^="standardSidebarView-"] {
|
div[class^="standardSidebarView-"] {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
228
src/style.less
228
src/style.less
|
@ -1,16 +1,19 @@
|
||||||
@round: 8px;
|
.round { .radius(@round); }
|
||||||
@rounder: 16px;
|
.rounder { .radius(@rounder); }
|
||||||
@roundest: 24px; // text area
|
|
||||||
|
|
||||||
@div-width: (@rounder / 2);
|
// Space between sidebar and chat
|
||||||
@tab-height: 40px;
|
div[class^="sidebar-"] {
|
||||||
|
margin-right: @div-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Old-school embed
|
||||||
|
[class*="embed"] {
|
||||||
|
.left-border(3px);
|
||||||
|
max-width: unset;
|
||||||
|
background: unset;
|
||||||
|
}
|
||||||
|
|
||||||
// Round
|
// Round
|
||||||
// UI elements
|
|
||||||
div[class^="tabBarItem-"],
|
|
||||||
div[class^="checkbox"],
|
|
||||||
button[class*="button"],
|
|
||||||
|
|
||||||
// UI parts
|
// UI parts
|
||||||
li[class^="channel-"],
|
li[class^="channel-"],
|
||||||
[class^="avatar-"],
|
[class^="avatar-"],
|
||||||
|
@ -26,10 +29,7 @@
|
||||||
input[class^="inputDefault-"],
|
input[class^="inputDefault-"],
|
||||||
div[class*="TextArea"],
|
div[class*="TextArea"],
|
||||||
textarea,
|
textarea,
|
||||||
//[class*="Text"], [class*="text"],
|
{ &:extend(.round); }
|
||||||
{
|
|
||||||
border-radius: @round !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Rounder
|
// Rounder
|
||||||
// Popouts
|
// Popouts
|
||||||
|
@ -40,18 +40,6 @@
|
||||||
div[class*="fullscreenOnMobile"],
|
div[class*="fullscreenOnMobile"],
|
||||||
div[class*="root"] div[class^="flex-"],
|
div[class*="root"] div[class^="flex-"],
|
||||||
|
|
||||||
// UI elements
|
|
||||||
[class^="checkboxWrapper-"], // checkbox
|
|
||||||
div[class^="markup-"] pre code, // ```code```
|
|
||||||
span[class^="spoiler"],
|
|
||||||
span.mention,
|
|
||||||
code.inline,
|
|
||||||
[class^="item-"], // in settings
|
|
||||||
div[class^="group-"], // radiogroup
|
|
||||||
div[class*="card"],
|
|
||||||
div[class^="categoryItem-"] > *, // in Discovery
|
|
||||||
div[class^="content-"] img[class^="image-"],
|
|
||||||
|
|
||||||
// UI parts
|
// UI parts
|
||||||
div[class^="noticeRegion"] > div, // you have unsaved changes bottom bar
|
div[class^="noticeRegion"] > div, // you have unsaved changes bottom bar
|
||||||
[class^="resultsGroup-"], // search
|
[class^="resultsGroup-"], // search
|
||||||
|
@ -75,38 +63,7 @@
|
||||||
div[class^="guildList-"] div[class^="container-"],
|
div[class^="guildList-"] div[class^="container-"],
|
||||||
div[class^="container"] > div,
|
div[class^="container"] > div,
|
||||||
div[class^="chat-"] > div[class^="content-"],
|
div[class^="chat-"] > div[class^="content-"],
|
||||||
{
|
{ &:extend(.rounder); }
|
||||||
border-radius: @rounder !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Movement
|
|
||||||
div[class^="sidebar-"] {
|
|
||||||
margin-right: @div-width;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="radioBar-"] {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.left-border(@r: 0) {
|
|
||||||
border-top-left-radius: @r !important;
|
|
||||||
border-bottom-left-radius: @r !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.right-border(@r: 0) {
|
|
||||||
border-top-right-radius: @r !important;
|
|
||||||
border-bottom-right-radius: @r !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bottom-border(@r: 0) {
|
|
||||||
border-bottom-left-radius: @r !important;
|
|
||||||
border-bottom-right-radius: @r !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.top-border(@r: 0) {
|
|
||||||
border-top-left-radius: @r !important;
|
|
||||||
border-top-right-radius: @r !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="auditLog"] {
|
div[class^="auditLog"] {
|
||||||
div[class^="headerExpanded-"]
|
div[class^="headerExpanded-"]
|
||||||
|
@ -115,45 +72,20 @@ div[class^="auditLog"] {
|
||||||
{ .top-border(); }
|
{ .top-border(); }
|
||||||
}
|
}
|
||||||
|
|
||||||
[class*="embed"] {
|
|
||||||
.left-border(3px);
|
|
||||||
max-width: unset;
|
|
||||||
background: unset;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="messagesWrapper-"]
|
div[class^="messagesWrapper-"]
|
||||||
div[class^="message-"][class*="mentioned"]
|
div[class^="message-"][class*="mentioned"]
|
||||||
{ .left-border(4px); }
|
{ .left-border(4px); }
|
||||||
|
|
||||||
// title
|
// no shadows
|
||||||
|
|
||||||
section, header,
|
section, header,
|
||||||
div[class^="content-"]::before,
|
div[class^="content-"]::before,
|
||||||
div[class^="tabBody-"]::before
|
div[class^="tabBody-"]::before
|
||||||
{
|
{ box-shadow: unset !important; }
|
||||||
box-shadow: unset !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
// tabs
|
|
||||||
div[class^="side-"] div[role="tab"],
|
|
||||||
div[class^="tabBarItem-"] {
|
|
||||||
.bottom-border();
|
|
||||||
margin: 0;
|
|
||||||
margin-top: 8px;
|
|
||||||
margin-right: 16px;
|
|
||||||
padding: 4px 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
[role="tab"][class*="selected-"],
|
|
||||||
[role="tab"]:hover
|
|
||||||
{
|
|
||||||
background-color: var(--background-modifier-hover);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Pins
|
// Pins
|
||||||
div[class^="messageGroupWrapper-"] {
|
div[class^="messageGroupWrapper-"] {
|
||||||
border: none;
|
border: none;
|
||||||
background-color: unset;
|
background: unset;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Redesigned text input
|
// Redesigned text input
|
||||||
|
@ -205,123 +137,11 @@ div[class^="channelTextArea-"] {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mica-like material from Windows 11
|
[role="menu"],
|
||||||
|
|
||||||
[class^="sidebar-"] {
|
|
||||||
&, & > nav {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
& > nav,
|
|
||||||
div[class*="scroller"] {
|
|
||||||
.top-border(@rounder);
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class*="scroller"] {
|
|
||||||
background-color: var(--background-secondary);
|
|
||||||
}
|
|
||||||
|
|
||||||
nav[class^="private"] {
|
|
||||||
&::before {
|
|
||||||
content: "Discord";
|
|
||||||
color: var(--header-primary);
|
|
||||||
margin: ((48px - 20px) / 2) 16px; // 20px is line-height
|
|
||||||
font-size: 15px;
|
|
||||||
line-height: 20px;
|
|
||||||
font-weight: 500;
|
|
||||||
font-family: var(--font-display);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
section { // bottom panel
|
|
||||||
.bottom-border(@rounder);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="base-"] > div[class^="content-"] > div[class^="container"],
|
|
||||||
div[class^="chat-"]
|
|
||||||
{
|
|
||||||
background-color: unset;
|
|
||||||
& > div {
|
|
||||||
background-color: var(--background-primary);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[class^="sidebar"] header,
|
|
||||||
[class^="chat"] > section:not([class^="chat"]),
|
|
||||||
[class^="container-"] > section {
|
|
||||||
background-color: var(--background-tertiary) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes glow {
|
|
||||||
from { box-shadow: 0 0 2px 4px var(--interactive-normal); }
|
|
||||||
to { box-shadow: 0 0 1px 2px var(--interactive-muted); }
|
|
||||||
}
|
|
||||||
|
|
||||||
[class^="item-"] {
|
|
||||||
&[class*="focused-"] {
|
|
||||||
background-color: var(--text-muted);
|
|
||||||
color: var(--interactive-active);
|
|
||||||
animation: glow 0.7s linear infinite alternate;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Acrylic material
|
|
||||||
div[class^="channelTextArea-"],
|
|
||||||
div[class^="quickswitcher-"] div[class^="scroll"],
|
|
||||||
div[class^="focusLock-"] > div,
|
|
||||||
div[class^="avatar-"],
|
|
||||||
{
|
|
||||||
background: unset !important;
|
|
||||||
border-color: transparent;
|
|
||||||
scrollbar-color: var(--scrollbar-auto-scrollbar-color-track) transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="layers-"] {
|
|
||||||
& > div[class*="baseLayer"] {
|
|
||||||
opacity: 1 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
& > div[class^="layer"]:not([class*="baseLayer"]) {
|
|
||||||
& > div[class] {
|
|
||||||
--acrylic-color: var(--background-primary);
|
|
||||||
}
|
|
||||||
&, & > div[class], div[class*="scroller"] {
|
|
||||||
background: unset;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="layers-"] > div[class^="layer-"] > div[class],
|
|
||||||
div[class^="channelHeader-"],
|
|
||||||
div[class^="focusLock-"] > div,
|
|
||||||
[role="dialog"]:not([class^="focusLock-"]),
|
[role="dialog"]:not([class^="focusLock-"]),
|
||||||
[role="menu"] {
|
div[class^="focusLock-"] > div,
|
||||||
--acrylic-blur: @round;
|
div[class^="channelHeader-"],
|
||||||
--acrylic-color: var(--background-floating);
|
div[class^="layers-"] > div[class^="layer-"] div[class*="View-"],
|
||||||
--acrylic-opacity: 0.5;
|
{
|
||||||
|
&:extend(.acrylic all);
|
||||||
&, & > *, div[class^="body"] {
|
|
||||||
background: unset;
|
|
||||||
}
|
|
||||||
|
|
||||||
&::before, &::after {
|
|
||||||
border-radius: inherit;
|
|
||||||
position: absolute;
|
|
||||||
top: 0; bottom: 0;
|
|
||||||
left: 0; right: 0;
|
|
||||||
content: "";
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
&::before {
|
|
||||||
backdrop-filter: blur(var(--acrylic-blur)) saturate(125%);
|
|
||||||
}
|
|
||||||
&::after {
|
|
||||||
background-color: var(--acrylic-color);
|
|
||||||
background-image: url(data:image/png;base64,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);
|
|
||||||
opacity: var(--acrylic-opacity);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@import "settings";
|
|
||||||
|
|
38
src/ui.less
38
src/ui.less
|
@ -1,5 +1,6 @@
|
||||||
// UI element changes
|
// UI element changes
|
||||||
|
|
||||||
|
// slider
|
||||||
div[class^="slider-"] {
|
div[class^="slider-"] {
|
||||||
div[class^="track-"] {
|
div[class^="track-"] {
|
||||||
div[class^="grabber-"] {
|
div[class^="grabber-"] {
|
||||||
|
@ -13,3 +14,40 @@ div[class^="slider-"] {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// tabs
|
||||||
|
div[role="tab"],
|
||||||
|
div[class^="tabBarItem-"] {
|
||||||
|
.bottom-border();
|
||||||
|
margin: 0;
|
||||||
|
margin-top: 8px;
|
||||||
|
margin-right: 16px;
|
||||||
|
padding: 4px 8px;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background-color: var(--interactive-hover);
|
||||||
|
color: var(--text-muted) !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
div[class^="radioBar-"] {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Round
|
||||||
|
div[class^="tabBarItem-"],
|
||||||
|
div[class^="checkbox"],
|
||||||
|
button[class*="button"],
|
||||||
|
{ &:extend(.round); }
|
||||||
|
|
||||||
|
// Rounder
|
||||||
|
div[class^="markup-"] pre code, // ```code```
|
||||||
|
span[class^="spoiler"],
|
||||||
|
span.mention,
|
||||||
|
code.inline,
|
||||||
|
[class^="item-"], // in settings
|
||||||
|
div[class^="group-"], // radiogroup
|
||||||
|
div[class*="card"],
|
||||||
|
div[class^="categoryItem-"] > *, // in Discovery
|
||||||
|
div[class^="content-"] img[class^="image-"],
|
||||||
|
{ &:extend(.rounder); }
|
||||||
|
|
Loading…
Reference in a new issue