siyuan/app/src/assets/scss/base.scss
2023-01-27 16:35:38 +08:00

644 lines
12 KiB
SCSS

@import "keyframes";
@import "mixin";
@import "function";
@import "chip";
@import "slider";
@import "switch";
@import "scroll";
@import "tooltips";
@import "dialog";
@import "button";
@import "snackbar";
@import "form";
@import "node_modules/@simonwep/pickr/src/scss/themes/nano.scss";
@import "text-field";
@import "select";
@import "list";
@import "tab";
@import "graph";
@import "layout";
@import "block";
@import "reset";
@import "card";
@import "menu";
@import "color";
// un refactor
@import "protyle";
@import "typography";
@import "pdf/pdf";
@import "viewer";
/*
.status: 2
// 需小于 .block__popover
// 需小于 ctrl+p https://github.com/siyuan-note/siyuan/issues/7174
.protyle-util: 4
// 需小于 .block__popover https://github.com/siyuan-note/siyuan/issues/3515
ctrl+p 搜索: 199
// 引用提示需小于 .block__popover
.protyle-hint: 201
// 需小于 .b3-menu 悬浮窗点击更多
// 需小于 .b3-dialog https://ld246.com/article/1637204682648
.block__popover: 205
.block__popover--top: 206
// 需大于 .block__popover
.b3-menu: 210
// 需小于 .side-panel
#transactionTip & #keyboardToolbar: 212
// 需小于 .b3-dialog 关于中的锁屏密码设置
.side-panel: 220
// 需小于 #windowControls
// 需大于 .protyle-util https://github.com/siyuan-note/siyuan/issues/5069
.b3-dialog: 305
// 历史中切换笔记本需临时大于 .b3-dialog https://github.com/siyuan-note/siyuan/issues/5107
// 移动端排序和菜单需临时大于 .side-panel https://github.com/siyuan-note/siyuan/issues/5254
.b3-menu: 310
// 需大于 .b3-dialog
progressLoading: 400
#windowControls: 502
.b3-snackbar: 503
*/
.inbox {
&__details {
position: absolute;
background: var(--b3-theme-surface);
left: 0;
top: 30px;
bottom: 0;
overflow: auto;
z-index: 1;
right: 0;
padding: 4px 8px;
word-break: break-all;
user-select: text;
}
&__list {
label {
height: 28px;
}
}
}
.fullscreen {
position: fixed;
top: 0;
width: 100% !important;
left: 0;
height: 100vh !important;
z-index: 90;
border-radius: 0;
& > .protyle-breadcrumb,
& > .block__icons { // 关系图
padding-left: 69px;
height: 32px;
}
.protyle-breadcrumb > .protyle-breadcrumb__space {
-webkit-app-region: drag;
min-width: 32px;
&:hover {
border-radius: 16px;
background-color: var(--b3-theme-surface-light);
}
}
}
.custom-attr {
.b3-text-field {
border: 0;
}
&__add {
overflow: auto;
height: 30vh;
padding: 4px 0 4px 4px;
&::-webkit-scrollbar {
display: none;
}
}
}
.pcr-app {
box-shadow: var(--b3-dialog-shadow);
border: 1px solid var(--b3-theme-surface-lighter);
border-radius: 4px;
.pcr-interaction .pcr-result {
@extend .b3-text-field;
background: transparent;
font-size: 12px;
}
.pcr-selection .pcr-picker {
height: 16px;
width: 16px;
border: 1px solid var(--b3-theme-surface-lighter);
box-shadow: var(--b3-point-shadow);
transition: transform 100ms ease-out;
}
}
.svg {
fill: currentColor;
display: inline-block;
stroke-width: 0;
stroke: currentColor;
width: 14px;
height: 14px;
&--mid {
width: 16px;
height: 16px;
}
&--small {
width: 12px;
height: 12px;
}
}
.toolbar {
background-color: var(--b3-toolbar-background);
box-sizing: border-box;
height: 32px;
line-height: 32px;
padding: 0 5px 0 69px;
border-bottom: .5px solid var(--b3-border-color);
&--browser {
padding-left: 0;
}
&__window {
position: fixed;
top: 0;
right: 0;
display: flex;
z-index: 502;
.toolbar__item {
padding: 14px;
}
}
#windowAppIcon {
-webkit-app-region: drag;
width: 42px;
margin-left: 1px;
justify-content: center;
color: #fff;
&:hover {
color: var(--b3-theme-on-background);
}
}
#windowControls {
top: 0;
z-index: 502;
right: 0;
position: relative;
.toolbar__item svg {
width: 13px;
}
}
#drag {
-webkit-app-region: drag;
color: var(--b3-toolbar-color);
user-select: none;
text-align: center;
white-space: nowrap;
align-self: center;
font-size: 12px;
}
&__item {
flex-shrink: 0;
cursor: pointer;
color: var(--b3-toolbar-color);
padding: 9px;
box-sizing: border-box;
transition: var(--b3-transition);
display: flex;
align-self: center;
background-color: transparent;
border: 0;
line-height: 13.5px;
&:not(.toolbar__item--disabled):not(.toolbar__item--close):hover,
&--active {
color: var(--b3-theme-on-background);
background-color: var(--b3-theme-background-light);
}
svg {
height: 13.5px;
width: 13.5px;
}
svg.toolbar__svg {
width: 8px;
height: 13.5px;
margin-left: 4px;
}
&--disabled {
opacity: .54;
cursor: not-allowed;
}
&--close {
padding: 9px 16px;
svg {
width: 10px !important;
}
&:hover {
color: var(--b3-theme-on-error);
background-color: var(--b3-theme-error)
}
}
}
&__text {
font-size: 12px;
max-width: 96px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
user-select: none;
}
}
.status {
background-color: var(--b3-theme-surface);
box-sizing: border-box;
z-index: 2;
height: 32px;
line-height: 32px;
border-top: .5px solid var(--b3-border-color);
padding: 0 5px;
.toolbar__item {
color: var(--b3-theme-on-surface);
}
&__msg {
color: var(--b3-theme-on-surface);
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
padding-left: 5px;
font-size: 12px;
}
&__counter {
display: flex;
flex-shrink: 0;
font-size: 12px;
}
&__backgroundtask {
display: flex;
color: var(--b3-theme-on-surface);
font-size: 12px;
& > div {
height: 4px;
border-radius: 4px;
overflow: hidden;
background-color: #fff;
width: 64px;
align-self: center;
margin: 0 8px 0 4px;
cursor: pointer;
& > div {
background-color: var(--b3-theme-primary-light);
height: 4px;
background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
animation: stripMove 450ms linear infinite;
background-size: 50px 50px;
}
}
}
#barDock .b3-menu__item:hover {
background-color: var(--b3-list-hover);
}
.fn__space:last-child {
width: 5px;
}
}
.config {
&__panel {
& > .b3-tab-bar {
user-select: none;
width: 180px;
overflow: auto;
padding: 8px 0;
box-sizing: border-box
}
}
&-query {
display: flex;
flex-wrap: wrap;
label {
width: 16%;
margin-right: 17%;
}
}
&-repos__sync {
margin: 0 0 -16px 16px;
overflow: hidden;
max-height: 180px;
display: flex;
flex-direction: column;
padding-bottom: 16px;
}
&-account {
height: 100%;
&__center {
flex-direction: column;
justify-content: center;
flex: 1;
display: flex;
min-width: 1px;
align-items: center;
&--text {
background-color: var(--b3-theme-surface);
padding: 16px 24px;
.b3-button--outline {
white-space: normal;
}
}
}
&__form {
max-width: 298px;
width: 100%;
}
&__bg {
position: relative;
margin-bottom: 82px;
width: 100%;
flex: 1;
min-height: 128px;
}
&__info {
width: 100%;
box-sizing: border-box;
padding: 16px 24px;
}
&__cover {
position: absolute;
top: 0;
width: 100%;
height: 100%;
background-size: cover;
background-position: center center;
}
&__avatar {
position: absolute;
bottom: 24px;
width: 128px;
height: 128px;
left: 50%;
margin-left: -64px;
background-repeat: no-repeat;
background-position: 50%;
background-size: cover;
border-radius: 90px;
background-color: rgba(255, 255, 255, 0.8);
box-shadow: var(--b3-point-shadow);
border: 1px solid var(--b3-theme-surface-lighter);
}
&__name {
bottom: -58px;
position: absolute;
width: 100%;
text-align: center;
}
}
&-about__logo {
display: flex;
align-items: center;
flex-wrap: wrap;
img {
height: 24px;
width: 24px;
margin-right: 8px;
}
}
&-assets {
display: flex;
flex-direction: column;
height: 100%;
box-sizing: border-box;
#assetsList {
overflow: auto;
flex: 1;
}
&__preview {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
overflow: auto;
flex: 1;
margin-top: 8px;
}
}
&-keymap li .b3-text-field {
width: 124px;
text-align: center;
}
&-bazaar__readme {
position: absolute;
transition: var(--b3-transition);
right: -100%;
top: 0;
width: 100%;
height: 100%;
background-color: var(--b3-theme-background);
display: flex;
padding: 16px;
box-sizing: border-box;
.item {
&__side {
text-align: center;
width: 260px;
display: flex;
flex-direction: column;
height: 100%;
}
&__main {
flex: 1;
margin-left: 16px;
overflow: auto;
}
&__title {
font-size: 30px;
word-break: break-all;
color: var(--b3-theme-on-background);
}
&__nav {
text-align: center;
flex: 1;
line-height: 26px;
font-size: 16px;
color: var(--b3-theme-on-surface);
}
&__preview {
width: 100%;
height: 50%;
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
border-radius: 4px;
margin-bottom: 16px;
cursor: pointer;
left: 0;
top: 0;
transition: var(--b3-transition);
&--fullscreen {
position: absolute;
z-index: 1;
height: 100%;
background-size: contain;
background-color: var(--b3-mask-background);
}
}
}
}
}
.asset {
overflow: auto;
box-sizing: border-box;
margin: 16px;
&--pdf {
margin: 0;
height: 100%;
}
img, video, audio, canvas {
max-width: 100%;
}
}
.file-tree {
.dragover {
background-color: var(--b3-theme-primary-lightest);
&__top {
background-color: var(--b3-theme-primary-lightest);
box-shadow: 0 -2px 0 var(--b3-theme-primary-lighter), inset 0 2px 0 var(--b3-theme-primary-lighter);
}
&__bottom {
background-color: var(--b3-theme-primary-lightest);
box-shadow: 0 2px 0 var(--b3-theme-primary-lighter), inset 0px -2px 0 var(--b3-theme-primary-lighter);
}
}
&:hover .block__icons .block__icon:not([disabled]) {
opacity: 1;
}
&:hover .block__icons .block__icon[disabled] {
opacity: .68;
}
.block__icons .block__icon[disabled] {
opacity: 0;
}
&__close {
min-height: auto;
transition: var(--b3-transition);
}
&__sliderDown {
height: 0;
overflow: hidden;
transition: var(--b3-transition);
}
}
.counter {
margin-left: 4px;
line-height: 22px;
padding: 0 8px;
color: var(--b3-theme-on-surface);
border-radius: 2px;
font-size: 12px;
user-select: none;
height: 22px;
}
.reveal {
font-family: var(--b3-font-family);
}
.backlink--more {
.b3-list-item__text {
-webkit-line-clamp: initial;
}
.b3-list-item__graphic.popover__block {
align-self: flex-start;
margin-top: 7px;
}
}
// 需放置最后,否则 https://github.com/siyuan-note/siyuan/issues/7056
@import "responsive";