2017-05-13 02:54:12 +10:00
|
|
|
<template>
|
2018-12-24 04:50:19 +11:00
|
|
|
<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>
|
2018-12-24 04:50:19 +11:00
|
|
|
<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" />
|
2018-12-24 04:50:19 +11:00
|
|
|
</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"
|
|
|
|
/>
|
2018-12-24 04:50:19 +11:00
|
|
|
</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">
|
2018-04-01 12:28:20 +10:00
|
|
|
@import '../../_variables.scss';
|
2017-11-08 20:26:42 +11:00
|
|
|
|
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
|
|
|
}
|
2017-06-04 06:42:54 +10: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;
|
|
|
|
}
|
2018-04-01 12:28:20 +10:00
|
|
|
}
|
2017-09-11 03:46:42 +10:00
|
|
|
|
2017-05-13 02:54:12 +10:00
|
|
|
</style>
|