From ae7d8b1379993e2fa32c9ca6b6d58947b117742c Mon Sep 17 00:00:00 2001 From: pan93412 Date: Mon, 21 Aug 2023 03:34:54 +0800 Subject: [PATCH] feat: sort the language list in details --- Source/BuildConfigView.swift | 2 +- Source/BuildDetails.swift | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Source/BuildConfigView.swift b/Source/BuildConfigView.swift index 8090166..bd291e2 100644 --- a/Source/BuildConfigView.swift +++ b/Source/BuildConfigView.swift @@ -52,7 +52,7 @@ struct BuildConfigView: View { }.padding(.bottom, 5) Section("Language") { Picker("", selection: $selectedLocale) { - ForEach(details.languages) { language in + ForEach(details.sortedLanguages) { language in Text(language.display).tag(language.code) } }.onChange(of: selectedLocale) { newValue in diff --git a/Source/BuildDetails.swift b/Source/BuildDetails.swift index 98a3096..3c7b9ce 100644 --- a/Source/BuildDetails.swift +++ b/Source/BuildDetails.swift @@ -32,6 +32,10 @@ struct BuildDetails { let arch: String let build: String let created: Date + + var sortedLanguages: [Language] { + return languages.sorted(using: KeyPathComparator(\.display)) + } static var empty = BuildDetails()