From 888e472157674d3a8dd67665a081b39772b64542 Mon Sep 17 00:00:00 2001
From: naskya <m@naskya.net>
Date: Mon, 22 Jul 2024 04:20:27 +0900
Subject: [PATCH] feat (client): sort "select a widget" dropdown (closes
 #10973)

---
 packages/client/src/components/MkWidgets.vue | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/packages/client/src/components/MkWidgets.vue b/packages/client/src/components/MkWidgets.vue
index fb8a449590..58e192e926 100644
--- a/packages/client/src/components/MkWidgets.vue
+++ b/packages/client/src/components/MkWidgets.vue
@@ -9,7 +9,7 @@
 				>
 					<template #label>{{ i18n.ts.selectWidget }}</template>
 					<option
-						v-for="widget in widgetDefs"
+						v-for="widget in sortedWidgets"
 						:key="widget"
 						:value="widget"
 					>
@@ -101,6 +101,12 @@ const emit = defineEmits<{
 	(ev: "exit"): void;
 }>();
 
+const sortedWidgets = computed(() =>
+	widgetDefs.sort((a, b) =>
+		i18n.t(`_widgets.${a}`).localeCompare(i18n.t(`_widgets.${b}`)),
+	),
+);
+
 const widgetRefs = {};
 const configWidget = (id: string) => {
 	widgetRefs[id].configure();