From c55a9b33fde43318c17f288e3e2a53f39e1ee00c Mon Sep 17 00:00:00 2001 From: Beingpax Date: Thu, 7 Aug 2025 23:28:38 +0545 Subject: [PATCH] Consistent sorting for prompts. --- .../Components/PromptSelectionGrid.swift | 35 ++----------------- 1 file changed, 3 insertions(+), 32 deletions(-) diff --git a/VoiceInk/Views/Components/PromptSelectionGrid.swift b/VoiceInk/Views/Components/PromptSelectionGrid.swift index 5d52af8..ddb922a 100644 --- a/VoiceInk/Views/Components/PromptSelectionGrid.swift +++ b/VoiceInk/Views/Components/PromptSelectionGrid.swift @@ -27,40 +27,11 @@ struct PromptSelectionGrid: View { self.onAddNewPrompt = onAddNewPrompt } - private var sortedPrompts: [CustomPrompt] { - prompts.sorted { prompt1, prompt2 in - // Predefined prompts come first - if prompt1.isPredefined && !prompt2.isPredefined { - return true - } - if !prompt1.isPredefined && prompt2.isPredefined { - return false - } - - // Among predefined prompts: Default first, then Assistant - if prompt1.isPredefined && prompt2.isPredefined { - if prompt1.id == PredefinedPrompts.defaultPromptId { - return true - } - if prompt2.id == PredefinedPrompts.defaultPromptId { - return false - } - if prompt1.id == PredefinedPrompts.assistantPromptId { - return true - } - if prompt2.id == PredefinedPrompts.assistantPromptId { - return false - } - } - - // Custom prompts: sort alphabetically by title - return prompt1.title.localizedCaseInsensitiveCompare(prompt2.title) == .orderedAscending - } - } + var body: some View { VStack(alignment: .leading, spacing: 12) { - if sortedPrompts.isEmpty { + if prompts.isEmpty { Text("No prompts available") .foregroundColor(.secondary) .font(.caption) @@ -70,7 +41,7 @@ struct PromptSelectionGrid: View { ] LazyVGrid(columns: columns, spacing: 16) { - ForEach(sortedPrompts) { prompt in + ForEach(prompts) { prompt in prompt.promptIcon( isSelected: selectedPromptId == prompt.id, onTap: {