refactor(client): use css modules
This commit is contained in:
parent
ea1cff499a
commit
fdf7605074
|
@ -3,48 +3,48 @@
|
||||||
<MkStickyContainer>
|
<MkStickyContainer>
|
||||||
<template #header><XHeader :actions="headerActions" :tabs="headerTabs"/></template>
|
<template #header><XHeader :actions="headerActions" :tabs="headerTabs"/></template>
|
||||||
<MkSpacer :content-max="900">
|
<MkSpacer :content-max="900">
|
||||||
<div class="lknzcolw">
|
<div class="_gaps">
|
||||||
<div class="users">
|
<div :class="$style.inputs">
|
||||||
<div class="inputs">
|
<MkSelect v-model="sort" style="flex: 1;">
|
||||||
<MkSelect v-model="sort" style="flex: 1;">
|
<template #label>{{ i18n.ts.sort }}</template>
|
||||||
<template #label>{{ i18n.ts.sort }}</template>
|
<option value="-createdAt">{{ i18n.ts.registeredDate }} ({{ i18n.ts.ascendingOrder }})</option>
|
||||||
<option value="-createdAt">{{ i18n.ts.registeredDate }} ({{ i18n.ts.ascendingOrder }})</option>
|
<option value="+createdAt">{{ i18n.ts.registeredDate }} ({{ i18n.ts.descendingOrder }})</option>
|
||||||
<option value="+createdAt">{{ i18n.ts.registeredDate }} ({{ i18n.ts.descendingOrder }})</option>
|
<option value="-updatedAt">{{ i18n.ts.lastUsed }} ({{ i18n.ts.ascendingOrder }})</option>
|
||||||
<option value="-updatedAt">{{ i18n.ts.lastUsed }} ({{ i18n.ts.ascendingOrder }})</option>
|
<option value="+updatedAt">{{ i18n.ts.lastUsed }} ({{ i18n.ts.descendingOrder }})</option>
|
||||||
<option value="+updatedAt">{{ i18n.ts.lastUsed }} ({{ i18n.ts.descendingOrder }})</option>
|
</MkSelect>
|
||||||
</MkSelect>
|
<MkSelect v-model="state" style="flex: 1;">
|
||||||
<MkSelect v-model="state" style="flex: 1;">
|
<template #label>{{ i18n.ts.state }}</template>
|
||||||
<template #label>{{ i18n.ts.state }}</template>
|
<option value="all">{{ i18n.ts.all }}</option>
|
||||||
<option value="all">{{ i18n.ts.all }}</option>
|
<option value="available">{{ i18n.ts.normal }}</option>
|
||||||
<option value="available">{{ i18n.ts.normal }}</option>
|
<option value="admin">{{ i18n.ts.administrator }}</option>
|
||||||
<option value="admin">{{ i18n.ts.administrator }}</option>
|
<option value="moderator">{{ i18n.ts.moderator }}</option>
|
||||||
<option value="moderator">{{ i18n.ts.moderator }}</option>
|
<option value="suspended">{{ i18n.ts.suspend }}</option>
|
||||||
<option value="suspended">{{ i18n.ts.suspend }}</option>
|
</MkSelect>
|
||||||
</MkSelect>
|
<MkSelect v-model="origin" style="flex: 1;">
|
||||||
<MkSelect v-model="origin" style="flex: 1;">
|
<template #label>{{ i18n.ts.instance }}</template>
|
||||||
<template #label>{{ i18n.ts.instance }}</template>
|
<option value="combined">{{ i18n.ts.all }}</option>
|
||||||
<option value="combined">{{ i18n.ts.all }}</option>
|
<option value="local">{{ i18n.ts.local }}</option>
|
||||||
<option value="local">{{ i18n.ts.local }}</option>
|
<option value="remote">{{ i18n.ts.remote }}</option>
|
||||||
<option value="remote">{{ i18n.ts.remote }}</option>
|
</MkSelect>
|
||||||
</MkSelect>
|
</div>
|
||||||
</div>
|
<div :class="$style.inputs">
|
||||||
<div class="inputs">
|
<MkInput v-model="searchUsername" style="flex: 1;" type="text" :spellcheck="false" @update:model-value="$refs.users.reload()">
|
||||||
<MkInput v-model="searchUsername" style="flex: 1;" type="text" :spellcheck="false" @update:model-value="$refs.users.reload()">
|
<template #prefix>@</template>
|
||||||
<template #prefix>@</template>
|
<template #label>{{ i18n.ts.username }}</template>
|
||||||
<template #label>{{ i18n.ts.username }}</template>
|
</MkInput>
|
||||||
</MkInput>
|
<MkInput v-model="searchHost" style="flex: 1;" type="text" :spellcheck="false" :disabled="pagination.params.origin === 'local'" @update:model-value="$refs.users.reload()">
|
||||||
<MkInput v-model="searchHost" style="flex: 1;" type="text" :spellcheck="false" :disabled="pagination.params.origin === 'local'" @update:model-value="$refs.users.reload()">
|
<template #prefix>@</template>
|
||||||
<template #prefix>@</template>
|
<template #label>{{ i18n.ts.host }}</template>
|
||||||
<template #label>{{ i18n.ts.host }}</template>
|
</MkInput>
|
||||||
</MkInput>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
<MkPagination v-slot="{items}" ref="paginationComponent" :pagination="pagination" class="users">
|
<MkPagination v-slot="{items}" ref="paginationComponent" :pagination="pagination">
|
||||||
<MkA v-for="user in items" :key="user.id" v-tooltip.mfm="`Last posted: ${dateString(user.updatedAt)}`" class="user" :to="`/user-info/${user.id}`">
|
<div :class="$style.users">
|
||||||
|
<MkA v-for="user in items" :key="user.id" v-tooltip.mfm="`Last posted: ${dateString(user.updatedAt)}`" :class="$style.user" :to="`/user-info/${user.id}`">
|
||||||
<MkUserCardMini :user="user"/>
|
<MkUserCardMini :user="user"/>
|
||||||
</MkA>
|
</MkA>
|
||||||
</MkPagination>
|
</div>
|
||||||
</div>
|
</MkPagination>
|
||||||
</div>
|
</div>
|
||||||
</MkSpacer>
|
</MkSpacer>
|
||||||
</MkStickyContainer>
|
</MkStickyContainer>
|
||||||
|
@ -138,33 +138,20 @@ definePageMetadata(computed(() => ({
|
||||||
})));
|
})));
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" module>
|
||||||
.lknzcolw {
|
.inputs {
|
||||||
> .users {
|
display: flex;
|
||||||
|
gap: 8px;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
|
||||||
> .inputs {
|
.users {
|
||||||
display: flex;
|
display: grid;
|
||||||
margin-bottom: 16px;
|
grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
|
||||||
|
grid-gap: 12px;
|
||||||
|
|
||||||
> * {
|
> .user:hover {
|
||||||
margin-right: 16px;
|
text-decoration: none;
|
||||||
|
|
||||||
&:last-child {
|
|
||||||
margin-right: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
> .users {
|
|
||||||
margin-top: var(--margin);
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
|
|
||||||
grid-gap: 12px;
|
|
||||||
|
|
||||||
> .user:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
Loading…
Reference in New Issue