export default () => ({ search: false, menu: false, searchValue: '', isLoading: false, results: '', init() { this.$el.classList.remove('hidden'); // this.openMenu(); // this.open(); }, openSearch() { // this.$refs.nav.classList.remove('w-0') this.$refs.search.classList.add('translate-y-72') this.$refs.searchField.focus() this.search = true; }, openMenu() { this.$refs.nav.classList.remove('w-0') this.$refs.nav.classList.add('w-2/3') this.menu = true; }, closeSearch() { this.searchValue = '' this.results = '' this.$refs.search.classList.remove('translate-y-72') this.search = false; }, closeMenu() { this.$refs.nav.classList.add('w-0') this.$refs.nav.classList.remove('w-2/3') this.menu = false; }, isSearchOpen() { return this.search === true; }, isMenuOpen() { return this.menu === true; }, showOverlay() { return this.search || this.menu }, shouldSearch() { return this.searchValue.length >= 2; }, // searching(fetch = true) { // if(fetch){ // this.isLoading = true; // this.$refs.results.classList.add('opacity-0') // } else { // this.isLoading = false; // this.$refs.results.classList.remove('opacity-0') // } // }, // fetchResults(query) { // // console.log(query); // if (this.shouldSearch) { // this.searching(); // fetch('/api/search', { // method: 'POST', // headers: { // 'Accept': 'application/json, text/plain, */*', // 'Content-Type': 'application/json' // }, // body: JSON.stringify({query: this.searchValue}) // }).then(res => { // if (res.ok) { // return res.json(); // } // throw new Error('Something went wrong'); // }).then(data => { // this.results = data.html.length ? data.html : `No Result Found` // setTimeout(this.searching(false), 2000) // }) // .catch( (error) => { // console.log(error); // }); // } // } });