171724befSSurenNeware<template> 271724befSSurenNeware <div class="search-global"> 371724befSSurenNeware <b-form-group 471724befSSurenNeware :label="$t('global.form.search')" 5129d79bbSYoshie Muranaka :label-for="`searchInput-${_uid}`" 6787635a2SSurenNeware label-class="invisible" 771724befSSurenNeware class="mb-2" 871724befSSurenNeware > 971724befSSurenNeware <b-input-group size="md" class="align-items-center"> 1071724befSSurenNeware <b-input-group-prepend> 1171724befSSurenNeware <icon-search class="search-icon" /> 1271724befSSurenNeware </b-input-group-prepend> 1371724befSSurenNeware <b-form-input 14129d79bbSYoshie Muranaka :id="`searchInput-${_uid}`" 159b22b492SDixsie Wolmers ref="searchInput" 1671724befSSurenNeware v-model="filter" 17129d79bbSYoshie Muranaka class="search-input" 1871724befSSurenNeware type="text" 19787635a2SSurenNeware :aria-label="$t('global.form.search')" 2071724befSSurenNeware :placeholder="placeholder" 2171724befSSurenNeware @input="onChangeInput" 229b22b492SDixsie Wolmers > 239b22b492SDixsie Wolmers </b-form-input> 249b22b492SDixsie Wolmers <b-button 259b22b492SDixsie Wolmers v-if="filter" 269b22b492SDixsie Wolmers variant="link" 2730f11f81SDixsie Wolmers class="btn-icon-only input-action-btn" 2830f11f81SDixsie Wolmers :title="$t('global.ariaLabel.clearSearch')" 299b22b492SDixsie Wolmers @click="onClearSearch" 309b22b492SDixsie Wolmers > 3130f11f81SDixsie Wolmers <icon-close /> 326e2cb978SSurenNeware <span class="sr-only">{{ $t('global.ariaLabel.clearSearch') }}</span> 339b22b492SDixsie Wolmers </b-button> 3471724befSSurenNeware </b-input-group> 3571724befSSurenNeware </b-form-group> 3671724befSSurenNeware </div> 3771724befSSurenNeware</template> 3871724befSSurenNeware 3971724befSSurenNeware<script> 4071724befSSurenNewareimport IconSearch from '@carbon/icons-vue/es/search/16'; 419b22b492SDixsie Wolmersimport IconClose from '@carbon/icons-vue/es/close/20'; 42*883a0d59SEd Tanousimport { useI18n } from 'vue-i18n'; 43*883a0d59SEd Tanousimport i18n from '@/i18n'; 449b22b492SDixsie Wolmers 4571724befSSurenNewareexport default { 4671724befSSurenNeware name: 'Search', 479b22b492SDixsie Wolmers components: { IconSearch, IconClose }, 4871724befSSurenNeware props: { 4971724befSSurenNeware placeholder: { 5071724befSSurenNeware type: String, 5183458ae7SYoshie Muranaka default: function () { 52*883a0d59SEd Tanous return i18n.global.t('global.form.search'); 53602e98aaSDerick Montague }, 54602e98aaSDerick Montague }, 5571724befSSurenNeware }, 5671724befSSurenNeware data() { 5771724befSSurenNeware return { 58*883a0d59SEd Tanous $t: useI18n().t, 59602e98aaSDerick Montague filter: null, 6071724befSSurenNeware }; 6171724befSSurenNeware }, 6271724befSSurenNeware methods: { 6371724befSSurenNeware onChangeInput() { 64edb8a774SSukanya Pandey this.$emit('change-search', this.filter); 659b22b492SDixsie Wolmers }, 669b22b492SDixsie Wolmers onClearSearch() { 679b22b492SDixsie Wolmers this.filter = ''; 68edb8a774SSukanya Pandey this.$emit('clear-search'); 699b22b492SDixsie Wolmers this.$refs.searchInput.focus(); 70602e98aaSDerick Montague }, 71602e98aaSDerick Montague }, 7271724befSSurenNeware}; 7371724befSSurenNeware</script> 7471724befSSurenNeware 7571724befSSurenNeware<style lang="scss" scoped> 76129d79bbSYoshie Muranaka.search-input { 7771724befSSurenNeware padding-left: ($spacer * 2); 7871724befSSurenNeware} 7971724befSSurenNeware.search-icon { 8071724befSSurenNeware position: absolute; 8171724befSSurenNeware left: 10px; 8271724befSSurenNeware top: 12px; 8371724befSSurenNeware z-index: 4; 8401da8187SYoshie Muranaka stroke: gray('400'); 8571724befSSurenNeware} 8671724befSSurenNeware</style> 87