akkoma-fe/src/components/user_finder/user_finder.vue

68 lines
1.5 KiB
Vue
Raw Normal View History

2017-05-12 16:54:12 +00:00
<template>
<div>
<div class="user-finder-container">
2019-07-05 07:17:44 +00:00
<i
v-if="loading"
class="icon-spin4 user-finder-icon animate-spin-slow"
/>
<a
v-if="hidden"
href="#"
:title="$t('finder.find_user')"
><i
class="icon-user-plus user-finder-icon"
@click.prevent.stop="toggleHidden"
/></a>
<template v-else>
2019-07-05 07:17:44 +00:00
<input
id="user-finder-input"
ref="userSearchInput"
v-model="username"
class="user-finder-input"
:placeholder="$t('finder.find_user')"
type="text"
@keyup.enter="findUser(username)"
>
<button
class="btn search-button"
@click="findUser(username)"
>
<i class="icon-search" />
</button>
2019-07-05 07:17:44 +00:00
<i
class="button-icon icon-cancel user-finder-icon"
@click.prevent.stop="toggleHidden"
/>
</template>
</div>
2018-12-05 12:01:56 +00:00
</div>
2017-05-12 16:54:12 +00:00
</template>
<script src="./user_finder.js"></script>
<style lang="scss">
@import '../../_variables.scss';
.user-finder-container {
2018-04-07 16:30:27 +00:00
max-width: 100%;
2018-12-03 05:03:11 +00:00
display: inline-flex;
align-items: baseline;
vertical-align: baseline;
.user-finder-input,
.search-button {
height: 29px;
}
.user-finder-input {
2018-12-18 18:26:14 +00:00
// TODO: do this properly without a rough guesstimate of 2 icons + paddings
max-width: calc(100% - 30px - 30px - 20px);
2018-12-03 05:03:11 +00:00
}
2018-12-03 05:03:11 +00:00
.search-button {
margin-left: .5em;
margin-right: .5em;
}
}
2017-09-10 17:46:42 +00:00
2017-05-12 16:54:12 +00:00
</style>