TSAIDiyVideoTTBaseViewModel.swift 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. //
  2. // TSAIDiyVideoTTBaseViewModel.swift
  3. // AIEmoji
  4. //
  5. // Created by nkl on 2025/7/29.
  6. //
  7. import Combine
  8. import Foundation
  9. class TSAIDiyVideoPTVViewModel {
  10. @Published var selectedAiModelType: TSDiyAiModelType = .ViduQ1
  11. @Published var uploadImage: UIImage?
  12. @Published var prompt: String = ""
  13. @Published var didFinishEdit: Bool = false
  14. func judgeWasFinishedEdit() {
  15. // 去除prompt前后的空白字符(包括空格、换行等),再判断是否为空
  16. let trimmedPrompt = prompt.trimmingCharacters(in: .whitespacesAndNewlines)
  17. // 只有当上传图片存在,且处理后的prompt不为空时,才视为完成编辑
  18. didFinishEdit = (uploadImage != nil && !trimmedPrompt.isEmpty)
  19. }
  20. }
  21. class TSAIDiyVideoTTVViewModel {
  22. @Published var selectedAiModelType: TSDiyAiModelType = .ViduQ1
  23. @Published var prompt: String = ""
  24. @Published var didFinishEdit: Bool = false
  25. func judgeWasFinishedEdit() {
  26. // 去除prompt前后的空白字符(包括空格、换行等),再判断是否为空
  27. let trimmedPrompt = prompt.trimmingCharacters(in: .whitespacesAndNewlines)
  28. // 处理后的prompt不为空时,视为完成编辑
  29. didFinishEdit = !trimmedPrompt.isEmpty
  30. }
  31. }