pleroma-fe/src/components/search_bar/search_bar.vue

74 lines
1.5 KiB
Vue
Raw Normal View History

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