11import Foundation
2+ import SuggestionModel
23import SwiftUI
34
45public final class PromptToCodeProvider : ObservableObject {
56 let id = UUID ( )
67 let name : String ?
7-
8+
89 @Published public var code : String
910 @Published public var language : String
1011 @Published public var description : String
1112 @Published public var isResponding : Bool
12- @Published public var startLineIndex : Int
13- @Published public var startLineColumn : Int
13+ public var startLineIndex : Int { attachedToRange? . start. line ?? 0 }
14+ public var startLineColumn : Int { attachedToRange? . start. character ?? 0 }
15+ @Published public var attachedToRange : CursorRange ?
1416 @Published public var requirement : String
1517 @Published public var errorMessage : String
1618 @Published public var canRevert : Bool
@@ -28,8 +30,7 @@ public final class PromptToCodeProvider: ObservableObject {
2830 language: String = " " ,
2931 description: String = " " ,
3032 isResponding: Bool = false ,
31- startLineIndex: Int = 0 ,
32- startLineColumn: Int = 0 ,
33+ attachedToRange: CursorRange ? = nil ,
3334 requirement: String = " " ,
3435 errorMessage: String = " " ,
3536 canRevert: Bool = false ,
@@ -46,8 +47,7 @@ public final class PromptToCodeProvider: ObservableObject {
4647 self . language = language
4748 self . description = description
4849 self . isResponding = isResponding
49- self . startLineIndex = startLineIndex
50- self . startLineColumn = startLineColumn
50+ self . attachedToRange = attachedToRange
5151 self . requirement = requirement
5252 self . errorMessage = errorMessage
5353 self . canRevert = canRevert
@@ -65,11 +65,14 @@ public final class PromptToCodeProvider: ObservableObject {
6565 onRevertTapped ( )
6666 errorMessage = " "
6767 }
68+
6869 func stopResponding( ) {
6970 onStopRespondingTap ( )
7071 errorMessage = " "
7172 }
73+
7274 func cancel( ) { onCancelTapped ( ) }
75+
7376 func sendRequirement( ) {
7477 guard !isResponding else { return }
7578 guard !requirement. isEmpty else { return }
@@ -79,6 +82,7 @@ public final class PromptToCodeProvider: ObservableObject {
7982 }
8083
8184 func acceptSuggestion( ) { onAcceptSuggestionTapped ( ) }
82-
85+
8386 func toggleContinuous( ) { onContinuousToggleClick ( ) }
8487}
88+
0 commit comments