diff --git a/package.json b/package.json index 4615298bd..ac7a8ff70 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "tailwindcss": "^3.4", "universal-cookie": "^7.1.4", "vite": "^7.0", - "vue": "^3.5", + "vue": "^3.5.23", "vue3-click-away": "^1.2.4", "vue-cookies": "^1.8.2", "vue-instantsearch": "^4.19.13", diff --git a/resources/js/components/Search/Autocomplete.vue b/resources/js/components/Search/Autocomplete.vue index d8dae8a27..b13a6c396 100644 --- a/resources/js/components/Search/Autocomplete.vue +++ b/resources/js/components/Search/Autocomplete.vue @@ -16,6 +16,7 @@ import { useDebounceFn } from '@vueuse/core' import { rapidezAPI } from '../../fetch' import { searchHistory } from '../../stores/useSearchHistory' +let focusId = document.activeElement.id export default { mixins: [InstantSearchMixin], components: { @@ -40,25 +41,27 @@ export default { }, }, - data() { - return { - focusId: null, - } - }, - render() { return this.$slots.default(this) }, created() { - this.focusId = document.activeElement.id + focusId ??= document.activeElement.id }, mounted() { + let element = null + if (focusId && (element = this.$el.nextSibling.querySelector('#' + focusId))) { + setTimeout(() => { + requestAnimationFrame(() => { + element?.focus() + }) + }) + } this.$nextTick(() => { this.$emit('mounted') setTimeout(() => { requestAnimationFrame(() => { let element = null - if (this.focusId && (element = this.$el.nextSibling.querySelector('#' + this.focusId))) { + if (focusId && (element = this.$el.nextSibling.querySelector('#' + focusId))) { element?.focus() } }) diff --git a/resources/js/vue-components.js b/resources/js/vue-components.js index c60785777..2ea468803 100644 --- a/resources/js/vue-components.js +++ b/resources/js/vue-components.js @@ -57,7 +57,6 @@ document.addEventListener('vue:loaded', function (event) { }), render() { - // TODO: seems broken, replaced by (https://github.com/vuejs/core/pull/13997) return this.$slots.default(this) }, delay: 0, diff --git a/resources/views/layouts/partials/header/autocomplete.blade.php b/resources/views/layouts/partials/header/autocomplete.blade.php index b2e9425ff..b38e2c527 100644 --- a/resources/views/layouts/partials/header/autocomplete.blade.php +++ b/resources/views/layouts/partials/header/autocomplete.blade.php @@ -1,49 +1,43 @@ - - - - + +