mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-26 19:34:25 +02:00
Cleanup
This commit is contained in:
@@ -25,26 +25,9 @@ struct UserOtherSessions: View {
|
||||
var body: some View {
|
||||
ScrollView {
|
||||
ForEach(viewModel.viewState.sections) { section in
|
||||
|
||||
switch section {
|
||||
case let .sessionItems(header: header, items: items):
|
||||
SwiftUI.Section {
|
||||
LazyVStack(spacing: 0) {
|
||||
ForEach(items) { viewData in
|
||||
UserSessionListItem(viewData: viewData, onBackgroundTap: { sessionId in
|
||||
// viewModel.send(viewAction: .tapUserSession(sessionId))
|
||||
})
|
||||
}
|
||||
}
|
||||
.background(theme.colors.background)
|
||||
} header: {
|
||||
UserOtherSessionsHeaderView(viewData: header)
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.padding(.top, 24.0)
|
||||
}
|
||||
case .clearFilter:
|
||||
//TODO
|
||||
EmptyView()
|
||||
createSessionItemsSection(header: header, items: items)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,13 +36,33 @@ struct UserOtherSessions: View {
|
||||
.frame(maxHeight: .infinity)
|
||||
.navigationTitle(viewModel.viewState.title)
|
||||
}
|
||||
|
||||
private func createSessionItemsSection(header: UserOtherSessionsHeaderViewData, items: [UserSessionListItemViewData]) -> some View {
|
||||
SwiftUI.Section {
|
||||
LazyVStack(spacing: 0) {
|
||||
ForEach(items) { viewData in
|
||||
UserSessionListItem(viewData: viewData, onBackgroundTap: { sessionId in
|
||||
viewModel.send(viewAction: .userOtherSessionSelected(sessionId: sessionId))
|
||||
})
|
||||
}
|
||||
}
|
||||
.background(theme.colors.background)
|
||||
} header: {
|
||||
UserOtherSessionsHeaderView(viewData: header)
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.padding(.top, 24.0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Previews
|
||||
|
||||
struct UserOtherSessions_Previews: PreviewProvider {
|
||||
|
||||
static let stateRenderer = MockUserOtherSessionsScreenState.stateRenderer
|
||||
|
||||
static var previews: some View {
|
||||
stateRenderer.screenGroup()
|
||||
stateRenderer.screenGroup(addNavigation: true).theme(.light).preferredColorScheme(.light)
|
||||
stateRenderer.screenGroup(addNavigation: true).theme(.dark).preferredColorScheme(.dark)
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -47,12 +47,12 @@ struct UserOtherSessionsHeaderView: View {
|
||||
Text(title)
|
||||
.font(theme.fonts.calloutSB)
|
||||
.foregroundColor(theme.colors.primaryContent)
|
||||
.padding(.bottom, 9.0)
|
||||
.padding(.vertical, 9.0)
|
||||
}
|
||||
Text(viewData.subtitle)
|
||||
.font(theme.fonts.footnote)
|
||||
.foregroundColor(theme.colors.secondaryContent)
|
||||
.padding(.bottom, 12.0)
|
||||
.padding(.bottom, 20.0)
|
||||
})
|
||||
.padding(.leading, 16)
|
||||
}
|
||||
@@ -65,7 +65,7 @@ struct UserOtherSessionsHeaderView: View {
|
||||
struct UserOtherSessionsHeaderView_Previews: PreviewProvider {
|
||||
|
||||
private static let inactiveSessionViewData = UserOtherSessionsHeaderViewData(title: "Inactive sessions",
|
||||
subtitle: "Consider signing out from old sessions (90 days or older) you don’t use anymore. Learn more",
|
||||
subtitle: "Consider signing out from old sessions (90 days or older) you don’t use anymore.",
|
||||
iconName: Asset.Images.userOtherSessionsInactive.name)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user