Skip to content

Commit 2a4c5c6

Browse files
committed
Update CodeSuggestionProvider to be a Perceptible object
1 parent 3bc2c86 commit 2a4c5c6

1 file changed

Lines changed: 20 additions & 13 deletions

File tree

Core/Sources/SuggestionWidget/Providers/CodeSuggestionProvider.swift

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,34 @@
1+
import Combine
12
import Foundation
3+
import Perception
4+
import SharedUIComponents
25
import SwiftUI
6+
import XcodeInspector
37

4-
public final class CodeSuggestionProvider: ObservableObject, Equatable {
8+
@Perceptible
9+
public final class CodeSuggestionProvider: Equatable {
510
public static func == (lhs: CodeSuggestionProvider, rhs: CodeSuggestionProvider) -> Bool {
611
lhs.code == rhs.code && lhs.language == rhs.language
712
}
813

9-
@Published public var code: String = ""
10-
@Published public var language: String = ""
11-
@Published public var startLineIndex: Int = 0
12-
@Published public var suggestionCount: Int = 0
13-
@Published public var currentSuggestionIndex: Int = 0
14-
@Published public var commonPrecedingSpaceCount = 0
15-
@Published public var extraInformation: String = ""
14+
public var code: String = ""
15+
public var language: String = ""
16+
public var startLineIndex: Int = 0
17+
public var suggestionCount: Int = 0
18+
public var currentSuggestionIndex: Int = 0
19+
public var extraInformation: String = ""
1620

17-
public var onSelectPreviousSuggestionTapped: () -> Void
18-
public var onSelectNextSuggestionTapped: () -> Void
19-
public var onRejectSuggestionTapped: () -> Void
20-
public var onAcceptSuggestionTapped: () -> Void
21-
public var onDismissSuggestionTapped: () -> Void
21+
@PerceptionIgnored public var onSelectPreviousSuggestionTapped: () -> Void
22+
@PerceptionIgnored public var onSelectNextSuggestionTapped: () -> Void
23+
@PerceptionIgnored public var onRejectSuggestionTapped: () -> Void
24+
@PerceptionIgnored public var onAcceptSuggestionTapped: () -> Void
25+
@PerceptionIgnored public var onDismissSuggestionTapped: () -> Void
2226

2327
public init(
2428
code: String = "",
2529
language: String = "",
2630
startLineIndex: Int = 0,
31+
startCharacerIndex: Int = 0,
2732
suggestionCount: Int = 0,
2833
currentSuggestionIndex: Int = 0,
2934
onSelectPreviousSuggestionTapped: @escaping () -> Void = {},
@@ -49,5 +54,7 @@ public final class CodeSuggestionProvider: ObservableObject, Equatable {
4954
func rejectSuggestion() { onRejectSuggestionTapped() }
5055
func acceptSuggestion() { onAcceptSuggestionTapped() }
5156
func dismissSuggestion() { onDismissSuggestionTapped() }
57+
58+
5259
}
5360

0 commit comments

Comments
 (0)