|
@@ -12,6 +12,7 @@ enum TSProgressState {
|
|
|
case start
|
|
|
case pending
|
|
|
case progress(CGFloat)
|
|
|
+ case progressString(String)
|
|
|
case success(Any?)
|
|
|
case failed(String)
|
|
|
|
|
@@ -28,6 +29,8 @@ enum TSProgressState {
|
|
|
progress = CGFloat(doubleValue)
|
|
|
}
|
|
|
return .progress(progress)
|
|
|
+ }else if string == "progressString" {
|
|
|
+ return .progressString(value)
|
|
|
}else if string == "success" {
|
|
|
return .success(value)
|
|
|
}else if string == "failed" {
|
|
@@ -47,6 +50,8 @@ enum TSProgressState {
|
|
|
return ("pending","")
|
|
|
case .progress(let float):
|
|
|
return ("progress",String(Float(float)))
|
|
|
+ case .progressString(let string):
|
|
|
+ return ("progressString",string)
|
|
|
case .success(let string):
|
|
|
if let string = string as? String{
|
|
|
return ("success",string)
|
|
@@ -68,6 +73,8 @@ enum TSProgressState {
|
|
|
return false
|
|
|
case .progress(_):
|
|
|
return false
|
|
|
+ case .progressString(_):
|
|
|
+ return false
|
|
|
case .success(_):
|
|
|
return true
|
|
|
case .failed(_):
|
|
@@ -83,7 +90,7 @@ enum TSProgressState {
|
|
|
case .failed(_):
|
|
|
return false
|
|
|
default:
|
|
|
- return true
|
|
|
+ return false
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -101,6 +108,7 @@ class TSGenmojiGennerateViewModel {
|
|
|
stopNetwork = false
|
|
|
aiText = text
|
|
|
stateDatauPblished = (.start,nil)
|
|
|
+ stateDatauPblished = (.progressString(generating(progress: 0.0)),nil)
|
|
|
creatRequest = TSNetworkShared.post(urlType: .imageEmoji,parameters: ["prompt":text]) { [weak self] data,error in
|
|
|
guard let self = self else { return }
|
|
|
|
|
@@ -128,6 +136,7 @@ class TSGenmojiGennerateViewModel {
|
|
|
case .failed:
|
|
|
self.stateDatauPblished = (.failed(kNetWorkMessage(data: data) ?? ""),nil)
|
|
|
default:
|
|
|
+ stateDatauPblished = (.progressString(generating(progress: genmojiModel.percent)),nil)
|
|
|
if stopNetwork == false {
|
|
|
kDelayOnMainThread(1.0) {
|
|
|
self.getActionInfo(action_id: action_id)
|
|
@@ -148,6 +157,11 @@ class TSGenmojiGennerateViewModel {
|
|
|
stopNetwork = true
|
|
|
}
|
|
|
|
|
|
+ func generating(progress:Float) -> String {
|
|
|
+ //Generating 0%-100%
|
|
|
+ let progressInt = Int(progress*100)
|
|
|
+ return "Generating \(progressInt)%"
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|