gitlab-org--gitlab-foss/app/assets/stylesheets/pages/projects.scss

937 lines
14 KiB
SCSS

.alert_holder {
margin: -16px;
.alert-link {
font-weight: normal;
}
}
.new_project,
.edit-project {
.sharing-and-permissions {
.header {
padding-top: $gl-vert-padding;
}
.label-light {
margin-bottom: 0;
}
.help-block {
margin-top: 0;
}
.form-group {
margin-bottom: 5px;
}
& > .form-group {
padding-left: 0;
}
}
.help-block {
margin-bottom: 10px;
}
.project-path .form-control {
border-radius: $border-radius-base;
}
.input-group > div {
&:last-child {
padding-right: 0;
}
}
@media (max-width: $screen-xs-max) {
.input-group > div {
margin-bottom: 14px;
&:last-child {
margin-bottom: 0;
}
}
fieldset > .form-group:first-child {
padding-right: 0;
}
}
.input-group-addon {
&.static-namespace {
height: 35px;
border-radius: 3px;
border: 1px solid $border-color;
}
& + .select2 a {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
}
}
.project-home-panel,
.group-home-panel {
padding-top: 24px;
padding-bottom: 24px;
@media (min-width: $screen-sm-min) {
border-bottom: 1px solid $border-color;
}
.project-avatar,
.group-avatar {
float: none;
margin: 0 auto;
&.identicon {
border-radius: 50%;
}
}
.project-title,
.group-title {
margin-top: 10px;
margin-bottom: 10px;
font-size: 24px;
font-weight: 400;
line-height: 1;
word-wrap: break-word;
.fa {
margin-left: 2px;
font-size: 12px;
vertical-align: middle;
}
}
.project-home-desc,
.group-home-desc {
margin-left: auto;
margin-right: auto;
margin-bottom: 0;
max-width: 700px;
> p {
margin-bottom: 0;
}
}
.notifications-btn {
.fa-bell,
.fa-spinner {
margin-right: 6px;
}
.fa-angle-down {
margin-left: 6px;
}
}
}
.nav > .project-repo-buttons {
margin-top: 0;
}
.project-repo-buttons,
.group-buttons {
.btn {
@include btn-gray;
padding: 3px 10px;
&:last-child {
margin-left: 0;
}
.fa {
color: $layout-link-gray;
}
svg {
path {
fill: $layout-link-gray;
}
use {
stroke: $layout-link-gray;
}
}
.fa-caret-down {
margin-left: 3px;
}
}
.project-action-button {
margin: 15px 5px 0;
vertical-align: top;
}
.notification-dropdown .dropdown-menu {
@extend .dropdown-menu-align-right;
}
.download-button {
@media (max-width: $screen-md-max) {
margin-left: 0;
}
}
.count-buttons {
display: inline-block;
vertical-align: top;
margin-top: 15px;
}
.project-clone-holder {
display: inline-block;
margin: 15px 5px 0 0;
input {
height: 28px;
}
}
.count-with-arrow {
display: inline-block;
position: relative;
margin-left: 4px;
.arrow {
&::before {
content: '';
display: inline-block;
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
top: 50%;
left: 0;
margin-top: -6px;
border-width: 7px 5px 7px 0;
border-right-color: $count-arrow-border;
pointer-events: none;
}
&::after {
content: '';
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
top: 50%;
left: 1px;
margin-top: -9px;
border-width: 10px 7px 10px 0;
border-right-color: $white-light;
pointer-events: none;
}
}
.count {
@include btn-gray;
display: inline-block;
background: $white-light;
border-radius: 2px;
border-width: 1px;
border-style: solid;
font-size: 13px;
font-weight: 600;
line-height: 13px;
padding: $gl-vert-padding $gl-padding;
letter-spacing: .4px;
padding: 6px 14px;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
background-image: none;
white-space: nowrap;
margin: 0 10px 0 4px;
a {
color: inherit;
}
&:hover {
background: $white-light;
}
}
}
}
.project-repo-buttons {
.project-action-button .dropdown-menu {
max-height: 250px;
overflow-y: auto;
}
}
.split-one {
display: inline-table;
margin-right: 12px;
> a {
margin: -1px;
}
}
.project-visibility-level-holder {
.radio {
margin-bottom: 10px;
i {
margin: 2px 0;
font-size: 20px;
}
.option-title {
font-weight: normal;
display: inline-block;
color: $gl-text-color;
}
.option-descr {
margin-left: 29px;
color: $project-option-descr-color;
}
}
}
.save-project-loader {
margin-top: 50px;
margin-bottom: 50px;
color: $save-project-loader-color;
}
.transfer-project .select2-container {
min-width: 200px;
}
.deploy-key-content {
@media (min-width: $screen-sm-min) {
float: left;
&:last-child {
float: right;
}
}
}
.deploy-key-projects {
@media (min-width: $screen-sm-min) {
line-height: 42px;
}
}
a.deploy-project-label {
padding: 5px;
margin-right: 5px;
color: $gl-text-color;
background-color: $row-hover;
&:hover {
color: $gl-link-color;
}
}
.vs-public {
color: $gl-primary;
}
.vs-internal {
color: $gl-warning;
}
.vs-private {
color: $gl-success;
}
.lfs-enabled {
color: $gl-success;
}
.lfs-disabled {
color: $gl-warning;
}
.breadcrumb.repo-breadcrumb {
padding: 0;
background: transparent;
border: none;
line-height: 36px;
margin: 0;
> li + li::before {
padding: 0 3px;
color: $project-breadcrumb-color;
}
a {
color: $gl-text-color;
}
.dropdown-menu {
width: 240px;
}
}
.last-push-widget {
margin-top: -1px;
}
.fork-namespaces {
.row {
-webkit-flex-wrap: wrap;
display: -webkit-flex;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
.fork-thumbnail {
border-radius: $border-radius-base;
background-color: $white-light;
border: 1px solid $border-white-light;
height: 202px;
margin: $gl-padding;
text-align: center;
width: 169px;
&:hover,
&.forked {
background-color: $row-hover;
border-color: $row-hover-border;
}
.no-avatar {
width: 100px;
height: 100px;
background-color: $gray-light;
border: 1px solid $white-normal;
margin: 0 auto;
border-radius: 50%;
i {
font-size: 100px;
color: $white-normal;
}
}
a {
display: block;
width: 100%;
height: 100%;
padding-top: $gl-padding;
color: $gl-text-color;
.caption {
min-height: 30px;
padding: $gl-padding 0;
}
}
img {
border-radius: 50%;
max-width: 100px;
}
}
}
}
.project-import {
.form-group {
margin-bottom: 5px;
}
.import-buttons {
padding-left: 0;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
.btn {
padding: 8px;
margin-left: 10px;
}
> div {
margin-bottom: 10px;
padding-left: 0;
}
}
}
.project-stats {
font-size: 0;
text-align: center;
.nav {
padding-top: 12px;
padding-bottom: 12px;
border-bottom: 1px solid $border-color;
}
.nav > li {
display: inline-block;
&:not(:last-child) {
margin-right: $gl-padding;
}
&.right {
vertical-align: top;
margin-top: 0;
@media (min-width: $screen-lg-min) {
float: right;
}
}
}
.nav > li > a {
padding: 0;
background-color: transparent;
font-size: 14px;
line-height: 29px;
color: $notes-light-color;
&:hover,
&:focus {
color: $gl-text-color;
}
}
li.missing {
border: 1px dashed $border-gray-normal;
border-radius: $border-radius-default;
a {
padding-left: 10px;
padding-right: 10px;
color: $notes-light-color;
display: block;
}
&:hover {
background-color: $gray-normal;
}
}
}
pre.light-well {
border-color: $well-light-border;
}
.git-empty {
margin: 0 7px 7px;
h5 {
color: $gl-text-color;
}
.light-well {
border-radius: 2px;
color: $well-light-text-color;
font-size: 13px;
line-height: 1.6em;
}
}
.project-footer {
margin-top: 20px;
.btn-remove {
@include btn-middle;
@include btn-red;
float: left !important;
}
}
/*
* Projects list rendered on dashboard and user page
*/
.projects-list {
@include basic-list;
display: flex;
flex-direction: column;
// Disable Flexbox for admin page
&.admin-projects {
display: block;
.project-row {
display: block;
}
}
.project-row {
display: flex;
align-items: center;
@include basic-list-stats;
}
h3 {
font-size: $gl-font-size;
}
a {
color: $gl-text-color;
}
.avatar-container,
.controls {
flex: 0 0 auto;
}
.avatar-container {
align-self: flex-start;
> a {
width: 100%;
}
}
.project-details {
min-width: 0;
p,
.commit-row-message {
@include str-truncated(100%);
margin-bottom: 0;
}
}
.controls {
margin-left: auto;
text-align: right;
}
.ci-status-link {
display: inline-block;
line-height: 17px;
vertical-align: middle;
&:hover {
text-decoration: none;
}
}
}
.panel .projects-list li {
padding: 10px 15px;
margin: 0;
}
.commits-search-form {
.input-short {
min-width: 200px;
}
}
.project-show-readme {
.row-content-block {
background-color: inherit;
border: none;
}
.readme-holder {
padding: $gl-padding 0;
border-top: 0;
.edit-project-readme {
z-index: 2;
position: relative;
}
.wiki h1 {
border-bottom: none;
padding: 0;
}
}
}
.git-clone-holder {
width: 380px;
.btn-clipboard {
border: 1px solid $border-color;
}
.clone-options {
display: table-cell;
a.btn {
width: 100%;
}
}
.form-control {
@extend .monospace;
background: $white-light;
font-size: 14px;
margin-left: -1px;
cursor: auto;
width: 101%;
}
}
.cannot-be-merged,
.cannot-be-merged:hover {
color: $error-exclamation-point;
margin-top: 2px;
}
.private-forks-notice .private-fork-icon {
i:nth-child(1) {
color: $project-private-forks-notice-odd;
}
i:nth-child(2) {
color: $white-light;
}
}
.new_protected_branch {
label {
margin-top: 6px;
font-weight: normal;
}
}
.create-new-protected-branch-button {
@include dropdown-link;
width: 100%;
background-color: transparent;
border: 0;
text-align: left;
}
.protected-branches-list,
.protected-tags-list {
margin-bottom: 30px;
a {
color: $gl-text-color;
&:hover {
color: $gl-link-color;
}
&.is-active {
font-weight: 600;
}
}
.settings-message {
margin: 0;
border-radius: 0 0 1px 1px;
padding: 20px 0;
border: none;
}
.table-bordered {
border-radius: 1px;
th:not(:last-child),
td:not(:last-child) {
border-right: solid 1px transparent;
}
}
}
.protected-tags-list {
.dropdown-menu-toggle {
width: 100%;
max-width: 300px;
}
.flash-container {
padding: 0;
}
}
.custom-notifications-form {
.is-loading {
.custom-notification-event-loading {
display: inline-block;
}
}
}
.custom-notification-event-loading {
display: none;
margin-left: 5px;
&.is-done {
color: $gl-text-green;
}
}
.project-refs-form .dropdown-menu,
.dropdown-menu-projects,
.dropdown-menu-branches {
width: 300px;
@media (min-width: $screen-sm-min) {
width: 500px;
}
a {
white-space: normal;
}
}
.compare-form-group {
.dropdown-menu,
.inline-input-group {
width: 100%;
@media (min-width: $screen-sm-min) {
width: 300px;
}
}
+ .compare-ellipsis {
width: 100%;
vertical-align: middle;
text-align: center;
margin-top: -20px;
@media (min-width: $screen-sm-min) {
margin-top: 0;
width: auto;
}
}
}
.clearable-input {
position: relative;
.clear-icon {
@extend .fa-times;
display: none;
position: absolute;
right: 7px;
top: 7px;
color: $location-icon-color;
&::before {
font-family: FontAwesome;
font-weight: normal;
font-style: normal;
}
}
&.has-value {
.clear-icon {
cursor: pointer;
display: block;
}
}
}
.project-path {
.form-control {
min-width: 100px;
}
.select2-choice {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
}
.project-home-empty {
border-top: 0;
.container-fluid {
background: none;
}
p {
margin-left: auto;
margin-right: auto;
max-width: 650px;
}
}
.project-feature {
padding-top: 10px;
@media (min-width: $screen-sm-min) {
padding-left: 45px;
}
&.nested {
@media (min-width: $screen-sm-min) {
padding-left: 90px;
}
}
}
.project-repo-select {
&.disabled {
opacity: 0.5;
pointer-events: none;
}
}
.variables-table {
table-layout: fixed;
&.table-responsive {
border: none;
}
.variable-key {
max-width: 120px;
overflow: hidden;
word-wrap: break-word;
white-space: nowrap;
text-overflow: ellipsis;
}
.variable-value {
max-width: 150px;
overflow: hidden;
word-wrap: break-word;
white-space: nowrap;
text-overflow: ellipsis;
}
.variable-menu {
text-align: right;
}
}
.services-installation-info .row {
margin-bottom: 10px;
}
.service-installation {
padding: 32px;
margin: 32px;
border-radius: 3px;
background-color: $white-light;
h3 {
margin-top: 0;
}
hr {
margin: 32px 0;
border-color: $border-color;
}
}