egroupware_official/api/js/etemplate/Et2File/Et2FileItem.styles.ts

234 lines
4.6 KiB
TypeScript
Raw Normal View History

2025-02-03 19:32:00 +01:00
import {css} from 'lit';
export default css`
:host {
--border-radius: var(--sl-border-radius-medium);
--border-style: solid;
display: contents;
margin: 0;
}
.file-item {
position: relative;
display: flex;
background-color: var(--sl-panel-background-color);
border: var(--sl-panel-border-width) var(--border-style, solid) var(--sl-panel-border-color);
border-radius: var(--sl-border-radius-medium);
font-size: var(--sl-font-size-medium);
font-weight: var(--sl-font-weight-normal);
line-height: var(--sl-line-height-normal);
color: var(--label-color);
margin: inherit;
}
.file-item__content {
position: relative;
display: flex;
flex: 1;
overflow: hidden;
2025-02-06 19:15:04 +01:00
align-items: center;
2025-02-03 19:32:00 +01:00
}
.file-item:not(.file-item--has-image) .file-item__image,
.file-item:not(.file-item--closable) .file-item__close-button {
display: none;
}
.file-item__image {
flex: 0 0 auto;
display: flex;
align-items: center;
padding-left: var(--sl-spacing-medium);
color: var(--sl-color-primary-600);
2025-02-06 19:15:04 +01:00
max-width: 1em;
max-height: 1em;
2025-02-03 19:32:00 +01:00
::slotted(*) {
2025-02-03 19:32:00 +01:00
line-height: 1;
width: 1em;
2025-02-03 19:32:00 +01:00
}
}
.file-item__progress-bar__container {
inset: 0;
position: absolute;
display: flex;
padding: var(--sl-spacing-large);
align-items: center;
}
.file-item__progress-bar {
flex: 1;
}
.file-item__label {
flex: 1 1 auto;
padding: var(--sl-spacing-small);
overflow: hidden;
display: flex;
flex-direction: column;
font-size: var(--sl-font-size-small);
}
.file-item__label__size {
font-size: var(--sl-font-size-x-small);
line-height: var(--sl-line-height-dense);
}
.file-item__close-button {
flex: 0 0 auto;
display: flex;
align-items: center;
font-size: var(--sl-font-size-large);
padding-right: var(--sl-spacing-small);
color: var(--sl-color-neutral-500);
}
/*
* Variants
*/
/* Default */
.file-item.file-item--default {
border-color: var(--sl-color-neutral-300);
color: var(--sl-color-neutral-700);
}
.file-item.file-item--default:hover:not(.file-item--disabled) {
border-color: var(--sl-input-border-color-hover);
color: var(--sl-input-color-hover);
}
/* Primary */
.file-item.file-item--primary {
border-color: var(--sl-color-primary-600);
color: var(--sl-color-primary-600);
}
.file-item.file-item--primary:hover:not(.file-item--disabled) {
border-color: var(--sl-color-primary-300);
color: var(--sl-color-primary-500);
}
/* Success */
.file-item.file-item--success {
border-color: var(--sl-color-success-600);
color: var(--sl-color-success-600);
}
.file-item.file-item--success:hover:not(.file-item--disabled) {
border-color: var(--sl-color-success-500);
color: var(--sl-color-success-500);
}
/* Neutral */
.file-item.file-item--neutral {
border-color: var(--sl-color-neutral-600);
color: var(--sl-color-neutral-1000);
}
.file-item.file-item--neutral:hover:not(.file-item--disabled) {
border-color: var(--sl-color-neutral-500);
color: var(--sl-color-neutral-1000);
}
/* Warning */
.file-item.file-item--warning {
border-color: var(--sl-color-warning-600);
color: var(--sl-color-warning-600);
}
.file-item.file-item--warning:hover:not(.file-item--disabled) {
border-color: var(--sl-color-warning-500);
color: var(--sl-color-warning-500);
}
/* Danger */
.file-item.file-item--danger {
border-color: var(--sl-color-danger-600);
color: var(--sl-color-danger-600);
.file-item__image {
color: inherit;
}
}
.file-item.file-item--danger:hover:not(.file-item--disabled) {
border-color: var(--sl-color-danger-500);
color: var(--sl-color-danger-500);
}
/**
* Displays
*/
.file-item.file-item--large {
min-height: var(--sl-input-height-large);
.file-item__image {
font-size: var(--sl-font-size-2x-large);
}
.file-item__label {
padding: var(--sl-spacing-medium);
}
}
.file-item.file-item--small {
min-height: var(--sl-input-height-small);
.file-item__image {
font-size: var(--sl-font-size-large);
line-height: 1;
}
.file-item__label {
flex-direction: row;
align-items: center;
slot {
display: inline-block;
flex: 1 1 auto;
}
sl-format-bytes {
flex: 0 0 fit-content;
}
}
}
.file-item.file-item--list {
min-height: var(--sl-input-height-small);
.file-item__image {
font-size: var(--sl-font-size-large);
line-height: 1;
}
.file-item__label {
flex-direction: row;
align-items: center;
slot {
display: inline-block;
flex: 1 1 auto;
}
sl-format-bytes {
flex: 0 0 20%;
text-align: right;
}
}
}
.file-item.file-item--list.file-item--default {
border-color: transparent;
}
`;