frontend:add user count badge on subscriptions page
This commit is contained in:
@@ -179,7 +179,6 @@
|
|||||||
backgroundColor="--base"
|
backgroundColor="--base"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- <input type="text" bind:value={searchTerm} placeholder={$t('placeholder.search')} /> -->
|
|
||||||
<div>
|
<div>
|
||||||
<button
|
<button
|
||||||
class="btn primary"
|
class="btn primary"
|
||||||
@@ -201,7 +200,7 @@
|
|||||||
<details class="accordion-item">
|
<details class="accordion-item">
|
||||||
<summary class="accordion-header">
|
<summary class="accordion-header">
|
||||||
{user.first_name}
|
{user.first_name}
|
||||||
{user.last_name} - {user.email}
|
{user.last_name}
|
||||||
</summary>
|
</summary>
|
||||||
<div class="accordion-content">
|
<div class="accordion-content">
|
||||||
<table class="table">
|
<table class="table">
|
||||||
@@ -218,6 +217,10 @@
|
|||||||
<th>{$t('user.email')}</th>
|
<th>{$t('user.email')}</th>
|
||||||
<td>{user.email}</td>
|
<td>{user.email}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>{$t('subscription.subscription')}</th>
|
||||||
|
<td>{user.membership?.subscription_model?.name}</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>{$t('status')}</th>
|
<th>{$t('status')}</th>
|
||||||
<td>{$t('userStatus.' + user.status)}</td>
|
<td>{$t('userStatus.' + user.status)}</td>
|
||||||
@@ -281,6 +284,12 @@
|
|||||||
<details class="accordion-item">
|
<details class="accordion-item">
|
||||||
<summary class="accordion-header">
|
<summary class="accordion-header">
|
||||||
{subscription.name}
|
{subscription.name}
|
||||||
|
<span class="nav-badge"
|
||||||
|
>{users.filter(
|
||||||
|
(/** @type{App.Locals['user']}*/ user) =>
|
||||||
|
user.membership?.subscription_model?.name === subscription.name
|
||||||
|
).length}</span
|
||||||
|
>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="accordion-content">
|
<div class="accordion-content">
|
||||||
<table class="table">
|
<table class="table">
|
||||||
@@ -507,6 +516,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.accordion-header {
|
.accordion-header {
|
||||||
|
display: flex;
|
||||||
padding: 1rem;
|
padding: 1rem;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
font-family: 'Roboto Mono', monospace;
|
font-family: 'Roboto Mono', monospace;
|
||||||
@@ -586,7 +596,6 @@
|
|||||||
gap: 0.5rem;
|
gap: 0.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Style for the nav badge */
|
|
||||||
.nav-badge {
|
.nav-badge {
|
||||||
background: var(--surface2);
|
background: var(--surface2);
|
||||||
color: var(--text);
|
color: var(--text);
|
||||||
@@ -596,7 +605,6 @@
|
|||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Improved focus states */
|
|
||||||
.nav-link:focus,
|
.nav-link:focus,
|
||||||
.accordion-header:focus {
|
.accordion-header:focus {
|
||||||
outline: 2px solid var(--mauve);
|
outline: 2px solid var(--mauve);
|
||||||
|
|||||||
Reference in New Issue
Block a user