mirror of
https://github.com/penpot/penpot.git
synced 2026-05-30 12:18:13 +00:00
* 🔧 Add SCSS linter (stylelint) * ✨ Fix default standard scss errors with extends - WIP * ✨ Fix default standard scss errors * ✨ Update and cleanup * ✨ Update and cleanup * ✨ Update and cleanup * 🐛 Fix broken visual regression tests * 📎 Add to CHANGES * ♻️ Remove unused class
267 lines
4.8 KiB
SCSS
267 lines
4.8 KiB
SCSS
// This Source Code Form is subject to the terms of the Mozilla Public
|
|
// License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
//
|
|
// Copyright (c) KALEIDOS INC
|
|
|
|
@use "common/refactor/common-dashboard";
|
|
@use "ds/typography.scss" as t;
|
|
@use "ds/_borders.scss" as *;
|
|
@use "ds/spacing.scss" as *;
|
|
@use "ds/_sizes.scss" as *;
|
|
@use "ds/z-index.scss" as *;
|
|
@use "ds/mixins.scss" as *;
|
|
@use "ds/_utils.scss" as *;
|
|
|
|
.dashboard-container {
|
|
flex: 1 0 0;
|
|
inline-size: 100%;
|
|
margin-inline-end: var(--sp-l);
|
|
border-block-start: $b-1 solid var(--panel-border-color);
|
|
overflow-y: auto;
|
|
padding-block-end: var(--sp-xxxl);
|
|
}
|
|
|
|
.dashboard-projects {
|
|
user-select: none;
|
|
block-size: calc(100vh - px2rem(64));
|
|
}
|
|
|
|
.with-team-hero {
|
|
block-size: calc(100vh - px2rem(280));
|
|
}
|
|
|
|
.dashboard-shared {
|
|
inline-size: calc(100vw - px2rem(320));
|
|
margin-inline-end: px2rem(52);
|
|
}
|
|
|
|
.search {
|
|
margin-block-start: var(--sp-m);
|
|
}
|
|
|
|
.dashboard-project-row {
|
|
--actions-opacity: 0;
|
|
|
|
margin-block-end: var(--sp-xxl);
|
|
position: relative;
|
|
|
|
&:hover,
|
|
&:focus,
|
|
&:focus-within {
|
|
--actions-opacity: 1;
|
|
}
|
|
}
|
|
|
|
.pinned-project {
|
|
--actions-opacity: 1;
|
|
}
|
|
|
|
.projects-container {
|
|
display: grid;
|
|
grid-auto-rows: min-content;
|
|
}
|
|
|
|
.project {
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: var(--sp-s);
|
|
inline-size: 99%;
|
|
max-block-size: $sz-40;
|
|
padding: var(--sp-s) var(--sp-s) var(--sp-s) var(--sp-l);
|
|
margin-block-start: var(--sp-l);
|
|
border-radius: $br-4;
|
|
}
|
|
|
|
.project-name-wrapper {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: flex-start;
|
|
inline-size: 100%;
|
|
min-block-size: $sz-32;
|
|
margin-inline-start: var(--sp-s);
|
|
}
|
|
|
|
.project-name {
|
|
@include text-ellipsis;
|
|
@include t.use-typography("body-large");
|
|
|
|
color: var(--title-foreground-color-hover);
|
|
cursor: pointer;
|
|
block-size: $sz-16;
|
|
line-height: 0.8;
|
|
margin-inline-end: var(--sp-m);
|
|
}
|
|
|
|
.info-wrapper {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--sp-s);
|
|
}
|
|
|
|
.info,
|
|
.recent-files-row-title-info {
|
|
@include t.use-typography("body-medium");
|
|
|
|
color: var(--title-foreground-color);
|
|
|
|
@media (width <= 760px) {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.project-actions {
|
|
display: flex;
|
|
opacity: var(--actions-opacity);
|
|
margin-inline-start: var(--sp-xxxl);
|
|
}
|
|
|
|
.add-file-btn,
|
|
.options-btn {
|
|
@extend %button-tertiary;
|
|
|
|
block-size: $sz-32;
|
|
inline-size: $sz-32;
|
|
margin: 0 var(--sp-s);
|
|
padding: var(--sp-s);
|
|
}
|
|
|
|
.add-icon,
|
|
.menu-icon {
|
|
@extend %button-icon;
|
|
|
|
stroke: var(--icon-foreground);
|
|
}
|
|
|
|
.grid-container {
|
|
inline-size: 100%;
|
|
padding: 0 var(--sp-xs);
|
|
}
|
|
|
|
.placeholder-placement {
|
|
margin: var(--sp-l) var(--sp-xxxl);
|
|
}
|
|
|
|
.show-more {
|
|
--show-more-color: var(--button-secondary-foreground-color-rest);
|
|
|
|
@include t.use-typography("body-medium");
|
|
|
|
border: none;
|
|
background: none;
|
|
cursor: pointer;
|
|
position: absolute;
|
|
inset-block-start: var(--sp-s);
|
|
inset-inline-end: px2rem(52);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
column-gap: var(--sp-m);
|
|
color: var(--show-more-color);
|
|
|
|
&:hover {
|
|
--show-more-color: var(--button-secondary-foreground-color-active);
|
|
}
|
|
}
|
|
|
|
.show-more-icon {
|
|
block-size: $sz-16;
|
|
inline-size: $sz-16;
|
|
fill: none;
|
|
stroke: var(--show-more-color);
|
|
}
|
|
|
|
// Team hero
|
|
.team-hero {
|
|
background-color: var(--color-background-tertiary);
|
|
border-radius: $br-8;
|
|
border: none;
|
|
display: flex;
|
|
margin: var(--sp-l);
|
|
padding: var(--sp-s);
|
|
position: relative;
|
|
|
|
img {
|
|
border-radius: $br-4;
|
|
inline-size: auto;
|
|
|
|
@media (width <= 1200px) {
|
|
display: none;
|
|
inline-size: 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
.text {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
flex-grow: 1;
|
|
padding: var(--sp-xl) var(--sp-xl);
|
|
}
|
|
|
|
.title {
|
|
color: var(--color-foreground-primary);
|
|
font-size: px2rem(24);
|
|
}
|
|
|
|
.info {
|
|
flex: 1;
|
|
font-size: $sz-16;
|
|
|
|
span {
|
|
color: var(--color-foreground-secondary);
|
|
display: block;
|
|
}
|
|
|
|
a {
|
|
color: var(--color-accent-primary);
|
|
}
|
|
|
|
padding: var(--sp-s) 0;
|
|
}
|
|
|
|
.close {
|
|
--close-icon-foreground-color: var(--icon-foreground);
|
|
|
|
position: absolute;
|
|
top: var(--sp-xl);
|
|
inset-inline-end: var(--sp-xxl);
|
|
inline-size: var(--sp-xxl);
|
|
background-color: transparent;
|
|
border: none;
|
|
cursor: pointer;
|
|
|
|
&:hover {
|
|
--close-icon-foreground-color: var(--button-icon-foreground-color-selected);
|
|
}
|
|
}
|
|
|
|
.close-icon {
|
|
@extend %button-icon;
|
|
|
|
stroke: var(--close-icon-foreground-color);
|
|
}
|
|
|
|
.invite {
|
|
block-size: $sz-32;
|
|
inline-size: px2rem(180);
|
|
}
|
|
|
|
.img-wrapper {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
inline-size: var(--sp-xl) 0;
|
|
block-size: var(--sp-xl) 0;
|
|
overflow: hidden;
|
|
border-radius: $br-4;
|
|
|
|
@media (width <= 1200px) {
|
|
display: none;
|
|
inline-size: 0;
|
|
}
|
|
}
|