mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 12:07:55 +00:00
Simplify the screen templates
This commit is contained in:
committed by
Stefan Ceriu
parent
28c2490910
commit
6e5854abf9
@@ -16,50 +16,25 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
enum TemplateScreenPromptType {
|
||||
case regular
|
||||
case upgrade
|
||||
}
|
||||
|
||||
extension TemplateScreenPromptType: Identifiable, CaseIterable {
|
||||
var id: Self { self }
|
||||
|
||||
var title: String {
|
||||
switch self {
|
||||
case .regular:
|
||||
return "Make this chat public?"
|
||||
case .upgrade:
|
||||
return "Privacy warning"
|
||||
}
|
||||
}
|
||||
|
||||
var imageSystemName: String {
|
||||
switch self {
|
||||
case .regular:
|
||||
return "app.gift"
|
||||
case .upgrade:
|
||||
return "shield"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
enum TemplateScreenViewModelAction {
|
||||
case accept
|
||||
case cancel
|
||||
case done
|
||||
|
||||
// Consider adding CustomStringConvertible conformance if the actions contain PII
|
||||
}
|
||||
|
||||
struct TemplateScreenViewState: BindableState {
|
||||
var promptType: TemplateScreenPromptType
|
||||
var count: Int
|
||||
var title: String
|
||||
var placeholder: String
|
||||
var bindings: TemplateScreenViewStateBindings
|
||||
}
|
||||
|
||||
struct TemplateScreenViewStateBindings {
|
||||
var composerText: String
|
||||
}
|
||||
|
||||
enum TemplateScreenViewAction {
|
||||
case incrementCount
|
||||
case decrementCount
|
||||
case accept
|
||||
case cancel
|
||||
case done
|
||||
case textChanged
|
||||
|
||||
// Consider adding CustomStringConvertible conformance if the actions contain PII
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user