2019-04-02 21:12:31 +11:00
|
|
|
<template>
|
2019-04-03 04:18:36 +11:00
|
|
|
<div class="user-autosuggest" v-click-outside="onClickOutside">
|
2019-04-03 04:18:41 +11:00
|
|
|
<input v-model="query" placeholder="Search whom you want to block" @click="onInputClick" class="user-autosuggest-input" />
|
2019-04-03 05:07:03 +11:00
|
|
|
<div class="user-autosuggest-results" v-if="resultsVisible && results.length > 0">
|
2019-04-03 04:49:48 +11:00
|
|
|
<BlockCard v-for="user in results" :key="user.id" :userId="user.id"/>
|
2019-04-03 03:31:45 +11:00
|
|
|
</div>
|
2019-04-02 21:12:31 +11:00
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script src="./user_autosuggest.js"></script>
|
|
|
|
|
|
|
|
<style lang="scss">
|
2019-04-03 04:18:41 +11:00
|
|
|
@import '../../_variables.scss';
|
|
|
|
|
2019-04-03 03:33:01 +11:00
|
|
|
.user-autosuggest {
|
2019-04-03 03:31:45 +11:00
|
|
|
position: relative;
|
2019-04-02 21:12:31 +11:00
|
|
|
|
2019-04-03 04:18:41 +11:00
|
|
|
&-input {
|
|
|
|
display: block;
|
|
|
|
width: 100%;
|
|
|
|
}
|
|
|
|
|
2019-04-03 03:31:45 +11:00
|
|
|
&-results {
|
2019-04-02 21:12:31 +11:00
|
|
|
position: absolute;
|
2019-04-03 03:31:45 +11:00
|
|
|
left: 0;
|
|
|
|
top: 100%;
|
|
|
|
right: 0;
|
2019-04-03 05:07:03 +11:00
|
|
|
max-height: 400px;
|
2019-04-03 04:18:41 +11:00
|
|
|
background-color: $fallback--lightBg;
|
|
|
|
background-color: var(--lightBg, $fallback--lightBg);
|
|
|
|
border-style: solid;
|
|
|
|
border-width: 1px;
|
|
|
|
border-color: $fallback--border;
|
|
|
|
border-color: var(--border, $fallback--border);
|
|
|
|
border-radius: $fallback--inputRadius;
|
|
|
|
border-radius: var(--inputRadius, $fallback--inputRadius);
|
|
|
|
border-top-left-radius: 0;
|
|
|
|
border-top-right-radius: 0;
|
2019-04-03 05:07:03 +11:00
|
|
|
box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.6);
|
|
|
|
box-shadow: var(--panelShadow);
|
2019-04-03 03:31:45 +11:00
|
|
|
overflow-y: auto;
|
|
|
|
z-index: 1;
|
2019-04-02 21:12:31 +11:00
|
|
|
}
|
|
|
|
}
|
|
|
|
</style>
|