import Component from '@glimmer/component'; import { service } from '@ember/service'; import { tracked } from '@glimmer/tracking'; import { action } from '@ember/object'; import { on } from '@ember/modifier'; import Icon from '#components/icon'; import UserMenu from '#components/user-menu'; import SearchBox from '#components/search-box'; import CategoryChips from '#components/category-chips'; export default class AppHeaderComponent extends Component { @service storage; @tracked isUserMenuOpen = false; @tracked searchQuery = ''; get hasQuery() { return !!this.searchQuery; } @action toggleUserMenu() { this.isUserMenuOpen = !this.isUserMenuOpen; } @action closeUserMenu() { this.isUserMenuOpen = false; } @action handleQueryChange(query) { this.searchQuery = query; } @action handleChipSelect(category) { this.searchQuery = category.label; // The existing logic in CategoryChips triggers the route transition. // This update simply fills the search box. } }