\r\n \u003C/template>\r\n \u003C/div>\r\n \u003C/VPFlyout>\r\n\u003C/template>\r\n```\r\n\r\nI'm planning to provide a PR for this issue, if you agree. But I might need some guidance in how to provide the changes properly.\r\n\r\nIt seems like setting property `label` for component `VPFlyout` should resolve the issue. However, this value should be configurable for different locales IMO.\r\n\n\n### Reproduction\n\nConfigure vitepress for 2 locales at least to enable the \"Switch Language\" button in the navbar. Using a screen reader, the button is not announced properly (e.g. \"popup button collapse\").\n\n### Expected behavior\n\nThe `aria-label` property of the `button` element of `VPFlyout` in `VPNavBarTranslations` should be set.\r\n\r\n```html\r\n\u003C!-- src/client/theme-default/components/VPNavBarTranslations.vue -->\r\n\u003Ctemplate>\r\n \u003CVPFlyout\r\n v-if=\"localeLinks.length && currentLang.label\"\r\n class=\"VPNavBarTranslations\"\r\n :icon=\"VPIconLanguages\"\r\n :label=\"Switch Language\"\r\n >\r\n \u003Cdiv class=\"items\">\r\n \u003Cp class=\"title\">{{ currentLang.label }}\u003C/p>\r\n\r\n \u003Ctemplate v-for=\"locale in localeLinks\" :key=\"locale.link\">\r\n \u003CVPMenuLink :item=\"locale\" />\r\n \u003C/template>\r\n \u003C/div>\r\n \u003C/VPFlyout>\r\n\u003C/template>\r\n```\r\n\r\nor\r\n\r\n```html\r\n\u003C!-- src/client/theme-default/components/VPNavBarTranslations.vue -->\r\n\u003Ctemplate>\r\n \u003CVPFlyout\r\n v-if=\"localeLinks.length && currentLang.label\"\r\n class=\"VPNavBarTranslations\"\r\n :icon=\"VPIconLanguages\"\r\n :label=\"currentLang.languageButtonAriaLabel\"\r\n >\r\n \u003Cdiv class=\"items\">\r\n \u003Cp class=\"title\">{{ currentLang.label }}\u003C/p>\r\n\r\n \u003Ctemplate v-for=\"locale in localeLinks\" :key=\"locale.link\">\r\n \u003CVPMenuLink :item=\"locale\" />\r\n \u003C/template>\r\n \u003C/div>\r\n \u003C/VPFlyout>\r\n\u003C/template>\r\n```\r\n\r\nRelevant HTML code should look like this:\r\n\r\n```html\r\n\u003Cdiv class=\"VPFlyout VPNavBarTranslations translations\">\r\n \u003Cbutton type=\"button\" class=\"button\" aria-haspopup=\"true\" aria-expanded=\"false\" aria-label=\"Switch Language\">\r\n \u003Cspan class=\"text\">\r\n \u003Csvg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" class=\"option-icon\" >\r\n \u003Csvg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" class=\"text-icon\">\r\n \u003C/span>\r\n \u003C/button>\r\n \u003Cdiv class=\"menu\">\r\n \u003Cdiv class=\"VPMenu\">\r\n \u003Cdiv class=\"items\">\r\n \u003Cp class=\"title\">Deutsch\u003C/p>\r\n \u003Cdiv class=\"VPMenuLink\">\r\n \u003Ca class=\"VPLink link\" href=\"...\">English\u003C/a>\r\n \u003C/div>\r\n \u003C/div>\r\n \u003C/div>\r\n \u003C/div>\r\n\u003C/div>\r\n```\n\n### System Info\n\n```shell\nSystem:\r\n OS: Linux 5.15 Ubuntu 20.04.5 LTS (Focal Fossa)\r\n CPU: (8) x64 Intel(R) Xeon(R) CPU E3-1505M v5 @ 2.80GHz\r\n Memory: 22.58 GB / 31.13 GB\r\n Container: Yes\r\n Shell: 5.0.17 - /bin/bash\r\n Binaries:\r\n Node: 18.14.0 - ~/.nvm/versions/node/v18.14.0/bin/node\r\n Yarn: 1.22.19 - ~/.nvm/versions/node/v18.14.0/bin/yarn\r\n npm: 9.3.1 - ~/.nvm/versions/node/v18.14.0/bin/npm\r\n Browsers:\r\n Chrome: 110.0.5481.177\r\n Chromium: 110.0.5481.177\r\n Firefox: 110.0.1\n```\n\n\n### Additional context\n\nFollowing website explains the accessibility issue and possible solution in detail: https://dequeuniversity.com/rules/axe/4.4/button-name\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[3076],{"name":3053,"color":3054},2021,"'Switch Language' Button does not have an accessible name","2023-03-16T00:04:26Z","https://github.com/vuejs/vitepress/issues/2021",0.6880682,{"description":3083,"labels":3084,"number":3086,"owner":3030,"repository":3031,"state":3068,"title":3087,"updated_at":3088,"url":3089,"score":3090},"### Is your feature request related to a problem? Please describe.\r\n\r\nYes, when I verify my documentation site at https://agnosticui.com/ with the [IBM Equal Access Accessibility Checker](https://chrome.google.com/webstore/detail/ibm-equal-access-accessib/lkcagbfjnkomcinoddgooolagloogehp?hl=en-US) it fails hard. This is unfortunate, because one of the things I'm trying to point out is that the UI component library offered is accessible. I lose credibility if the documentation site itself is not a11y compliant.\r\n\r\nI actually get even worse results when I scan the vitepress docs themselves. So while this is a feature request, I would also call it a bug. Lighthouse which I would call more permissive also shows errors in the Accessibility category (but if the IBM checker passes Lighthouse will too).\r\n\r\n### Describe the solution you'd like\r\n\r\nEnsure the code produced by Vitepress is a11y compliant.\r\n\r\nI saw violations with the following rules which can easily be cross-referenced at:\r\nhttps://www.ibm.com/able/requirements/requirements\r\n\r\n1.3.1 Info and Relationships\r\n1.4.3 Contrast (Minimum)\r\n2.4.1 Bypass Blocks\r\n2.5.3 Label in Name\r\n4.1.2 Name, Role, Value\r\n\r\n_Note: this is only from scanning the top-level page. I saw a couple of other warnings on other pages, but this is a good start._\r\n\r\n### Describe alternatives you've considered\r\n\r\nThere are no alternatives. These issues are making Vitepress generated sites less inclusive than they could be meaning certain site users are being excluded which is a real bummer since Vitepress is otherwise producing such lovely sites.\r\n\r\n### Additional context\r\n\r\n\r\n\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/coc)\r\n- [X] Read the [docs](https://vitepress.vuejs.org/).\r\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/master/.github/contributing.md).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[3085],{"name":3053,"color":3054},466,"Make Vitepress Accessible","2023-02-04T00:04:08Z","https://github.com/vuejs/vitepress/issues/466",0.7226825,{"description":3092,"labels":3093,"number":3097,"owner":3030,"repository":3031,"state":3068,"title":3098,"updated_at":3099,"url":3100,"score":3101},"### Describe the bug\r\n\r\nIf search has been configured, a search button is shown the navigation bar. This opens a dialog which displays Algolia’s search interface.\r\n\r\nHowever, if JavaScript isn’t available/hasn’t loaded, this search button is still shown, labelled as ‘Search’, yet it doesn’t perform any function. This is confusing, perhaps even more so for screen reader users.\r\n\r\n### Reproduction\r\n\r\nLoad a VitePress-powered site with search configured and JavaScript disabled. A search button is shown, but clicking it doesn’t perform any action.\r\n\r\n### Expected behavior\r\n\r\nIdeally, it would be possible to have this element fallback to an input element and submit button that, when submitted, performs a search on a search engine like DuckDuckGo, with the query scoped to the VitePress’ site URL, for example: \u003Chttps://duckduckgo.com/?q=site%3Ahttps://vitepress.vuejs.org+my+query>\r\n\r\nHowever, the simpler option might be to only show the search button if JavaScript is available or loaded.\r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: macOS 13.1\r\n CPU: (10) arm64 Apple M1 Pro\r\n Memory: 3.05 GB / 32.00 GB\r\n Shell: 5.8.1 - /bin/zsh\r\n Binaries:\r\n Node: 18.11.0 - ~/.nvm/versions/node/v18.11.0/bin/node\r\n npm: 8.19.3 - ~/.nvm/versions/node/v18.11.0/bin/npm\r\n Browsers:\r\n Chrome: 109.0.5414.87\r\n Firefox: 108.0.2\r\n Safari: 16.2\r\n npmPackages:\r\n vitepress: ^1.0.0-alpha.27 => 1.0.0-alpha.36\r\n```\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.vuejs.org).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[3094],{"name":3095,"color":3096},"bug: pending triage","e99695",1794,"Search button shown when non-functional (i.e. without JavaScript)","2023-01-21T14:16:41Z","https://github.com/vuejs/vitepress/issues/1794",0.73612916,{"description":3103,"labels":3104,"number":3106,"owner":3030,"repository":3031,"state":3068,"title":3107,"updated_at":3108,"url":3109,"score":3110},"### Describe the bug\r\n\r\nAfter the version is upgraded, the navigation button on the mobile device becomes invalid.\r\n\r\n\r\n\r\n### Reproduction\r\n\r\nN/A\r\n\r\n### Expected behavior\r\n\r\nN/A\r\n\r\n### System Info\r\n\r\nN/A\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.vuejs.org).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[3105],{"name":3095,"color":3096},1181,"The navigation button on the mobile device becomes invalid.","2023-01-21T14:28:42Z","https://github.com/vuejs/vitepress/issues/1181",0.7391839,{"description":3112,"labels":3113,"number":3115,"owner":3030,"repository":3031,"state":3068,"title":3116,"updated_at":3117,"url":3118,"score":3119},"### Describe the bug\r\n\r\nThe search button and dialog should use semantic markup: roles and aria attributes\r\n\r\n### Reproduction\r\n\r\nhttps://unocss.dev/\r\n\r\n### Expected behavior\r\n\r\nJust check Algolia search button and dialog on VP docs.\r\n\r\n### System Info\r\n\r\n```shell\r\nNA\r\n```\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.dev).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[3114],{"name":3041,"color":3042},2232,"Local search: review html markup, should be semantic","2023-06-18T00:04:56Z","https://github.com/vuejs/vitepress/issues/2232",0.7411864,{"description":3121,"labels":3122,"number":3123,"owner":3030,"repository":3031,"state":3068,"title":3124,"updated_at":3125,"url":3126,"score":3127},"### Describe the bug\n\nUsing the features list for home page generates VPLink as VPFeature, which is an \u003Ca> tag without a href.\r\n\r\nThis causes SEO issues\r\n\r\n\r\n\n\n### Reproduction\n\nUse features list at home page\n\n### Expected behavior\n\nAn entire div should not be an \u003Ca> tag if it's not supposed to link anywhere\n\n### System Info\n\n```sh\nSystem:\r\n OS: Windows 10 10.0.23506\r\n CPU: (16) x64 AMD Ryzen 7 7800X3D 8-Core Processor\r\n Memory: 11.73 GB / 31.73 GB\r\n Binaries:\r\n Node: 18.16.0 - C:\\Program Files\\nodejs\\node.EXE\r\n npm: 9.5.1 - C:\\Program Files\\nodejs\\npm.CMD\r\n Browsers:\r\n Edge: Spartan (44.23506.1000.0), Chromium (116.0.1938.29)\r\n Internet Explorer: 11.0.23506.1000\r\n npmPackages:\r\n vitepress: ^1.0.0-beta.6 => 1.0.0-beta.6\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[],2684,"VPFeatures using VPLink","2023-08-03T00:04:16Z","https://github.com/vuejs/vitepress/issues/2684",0.74500376,["Reactive",3129],{},["Set"],["ShallowReactive",3132],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fFccF2zyOJzs6dPq-vkwG45o7iTAPz8PWFotjZ0lLu6k":-1},"/vuejs/vitepress/2096"]