| | |
| | | |
| | | initAutocomplete() |
| | | { |
| | | this.autocompleteHandler = window.debounce((e) => this.handleAutocomplete(e), 300); |
| | | this.autocompleteHandler = (e) => { |
| | | window.debouncer.schedule( |
| | | 'taxonomy-autocomplete', |
| | | () => this.handleAutocomplete(e), |
| | | 300 |
| | | ); |
| | | }; |
| | | document.addEventListener('input', this.autocompleteHandler); |
| | | document.addEventListener('blur', this.cleanupAutocomplete.bind(this)); |
| | | // Preload taxonomy data on focus |
| | |
| | | * Initialize singleton |
| | | */ |
| | | document.addEventListener('DOMContentLoaded', function() { |
| | | window.jvbSelector = new TaxonomySelector(); |
| | | window.auth.subscribe((event) => { |
| | | if (event === 'auth-loaded') { |
| | | window.jvbSelector = new TaxonomySelector(); |
| | | } |
| | | }); |
| | | |
| | | }); |