1
0
mirror of https://github.com/flarum/core.git synced 2025-08-16 05:14:20 +02:00

feat: extension list UI (#4066)

This commit is contained in:
Sami Mazouz
2024-10-16 18:12:46 +01:00
committed by GitHub
parent b0e8f5ca36
commit 0107c96fb7
59 changed files with 1769 additions and 514 deletions

View File

@@ -25,62 +25,6 @@
}
}
.ExtensionManager-extension {
display: flex;
align-items: center;
gap: 8px;
background-color: var(--control-bg);
padding: 8px;
border-radius: var(--border-radius);
&-controls {
margin-left: auto;
}
&-icon {
--size: 40px;
}
&-name {
font-weight: bold;
}
&-version {
display: flex;
align-items: center;
gap: 8px;
&-latest {
text-transform: lowercase;
padding: 2px 6px;
font-size: 0.7rem;
}
}
&--core {
--bg-hover: darken(#e7672e, 5);
background-color: #e7672e;
color: #fff;
--button-color: #fff;
--button-bg-hover: var(--bg-hover);
.Button--danger {
color: #fff;
--button-bg-hover: var(--bg-hover);
}
}
&--core &-icon {
background-size: 100%;
background-color: transparent;
filter: grayscale(1) brightness(3.5);
}
&--danger {
background-color: var(--control-danger-bg);
}
}
.ExtensionManager-majorUpdate {
--space: 16px;
padding: var(--space);
@@ -169,3 +113,8 @@
.ExtensionManager-primaryWarning ul {
margin: 0;
}
.ExtensionManager-extensions--empty {
border: 1px solid var(--control-bg);
border-radius: var(--border-radius);
}

View File

@@ -0,0 +1,51 @@
.ExtensionManager-DiscoverSection .Tabs-divider {
margin-left: -30px;
margin-right: -30px;
}
.ExtensionManager-DiscoverSection-list-inner {
--cards: 1;
--gap: 24px;
display: grid;
grid-template-columns: repeat(auto-fit, calc((100% / var(--cards)) - (var(--gap) - (var(--gap) / var(--cards)))));
gap: var(--gap);
&--empty {
display: block;
}
@media @tablet-up {
--cards: 2;
}
@media @desktop-xl {
--cards: 3;
}
@media @desktop-xxl {
--cards: 4;
}
@media @desktop-xxxl {
--cards: 5;
}
}
.ExtensionManager-DiscoverSection-toolbar {
margin-bottom: 14px;
display: flex;
justify-content: space-between;
&-primary, &-secondary {
display: flex;
gap: 8px;
}
}
.ExtensionManager-DiscoverSection-footer {
margin: 24px 0 0;
> * {
margin-top: 16px;
}
}

View File

@@ -0,0 +1,128 @@
.ExtensionCard {
display: flex;
flex-direction: column;
gap: 12px;
border-radius: var(--border-radius);
padding: 12px;
border: 1px solid var(--control-bg);
color: var(--control-color);
}
.ExtensionCard-header {
display: flex;
align-items: center;
gap: 12px;
}
.ExtensionCard-header .ExtensionIcon {
--size: 36px;
background-color: transparent;
flex-shrink: 0;
}
.ExtensionCard-badges {
display: flex;
gap: 4px;
}
.ExtensionCard-badge--premium {
--badge-bg: #FBDB33;
--badge-color: #4B4940;
}
.ExtensionCard--core .ExtensionIcon, .ExtensionCard-badge--flarum::before {
filter: grayscale(1) brightness(3.5);
}
.ExtensionCard-badge--flarum {
background-color: #e7672e;
position: relative;
&::before {
background-image: url('../extensions/flarum-extension-manager/flarum.svg');
background-size: 100%;
content: '';
display: block;
position: absolute;
width: 80%;
height: 80%;
}
}
.ExtensionCard-actions {
margin-inline-start: auto;
}
.ExtensionCard-header h4 {
color: var(--text-color);
font-size: 14px;
margin: 0;
max-width: 45%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.ExtensionCard-meta {
display: flex;
gap: 12px;
}
.ExtensionCard-badges .Badge {
--size: 18px;
}
.ExtensionCard-meta > * {
display: flex;
align-items: center;
gap: 6px;
}
.ExtensionCard-body {
margin-bottom: 6px;
flex-grow: 1;
p {
margin-bottom: 0;
}
}
.ExtensionCard {
&-version {
display: flex;
align-items: center;
gap: 8px;
&-latest {
text-transform: lowercase;
padding: 2px 6px;
font-size: 0.7rem;
}
}
&--core {
--bg-hover: #e2571a;
--text-color: #fff;
--button-color: #fff;
--button-bg-hover: var(--bg-hover);
background-color: #e7672e;
border-color: var(--bg-hover);
color: #fff;
.Button--danger {
color: #fff;
--button-bg-hover: var(--bg-hover);
}
}
&--core .ExtensionIcon {
background-size: 100%;
background-color: transparent;
}
&--danger {
background-color: var(--control-danger-bg);
border-color: var(--control-danger-bg-hover);
color: var(--control-danger-color);
}
}