@@ -35,12 +35,12 @@ final class BookingFiltersViewModel: FilterListViewModel {
3535 }
3636
3737 var criteria : Filters {
38- let teamMember = teamMemberFilterViewModel. selectedValue as? BookingResource ?? nil
39- let product = productFilterViewModel. selectedValue as? FilterBookingsByProduct ?? nil
40- let customer = customerFilterViewModel. selectedValue as? CustomerFilter ?? nil
41- let attendanceStatus = attendanceStatusFilterViewModel. selectedValue as? BookingAttendanceStatus ?? nil
42- let paymentStatus = paymentStatusFilterViewModel. selectedValue as? BookingStatus ?? nil
43- let dateRange = dateTimeFilterViewModel. selectedValue as? BookingDateRangeFilter ?? nil
38+ let teamMember = teamMemberFilterViewModel. selectedValue as? BookingResource
39+ let product = productFilterViewModel. selectedValue as? BookingProductFilter
40+ let customer = customerFilterViewModel. selectedValue as? CustomerFilter
41+ let attendanceStatus = attendanceStatusFilterViewModel. selectedValue as? BookingAttendanceStatus
42+ let paymentStatus = paymentStatusFilterViewModel. selectedValue as? BookingStatus
43+ let dateRange = dateTimeFilterViewModel. selectedValue as? BookingDateRangeFilter
4444 let numberOfActiveFilters = filterTypeViewModels. numberOfActiveFilters
4545
4646 return Filters ( teamMember: teamMember,
@@ -74,31 +74,20 @@ final class BookingFiltersViewModel: FilterListViewModel {
7474 }
7575
7676 func clearAll( ) {
77- let clearedTeamMember : BookingResource ? = nil
78- teamMemberFilterViewModel. selectedValue = clearedTeamMember
79-
80- let clearedProduct : FilterBookingsByProduct ? = nil
81- productFilterViewModel. selectedValue = clearedProduct
82-
83- let clearedCustomer : CustomerFilter ? = nil
84- customerFilterViewModel. selectedValue = clearedCustomer
85-
86- let clearedAttendanceStatus : BookingAttendanceStatus ? = nil
87- attendanceStatusFilterViewModel. selectedValue = clearedAttendanceStatus
88-
89- let clearedPaymentStatus : BookingStatus ? = nil
90- paymentStatusFilterViewModel. selectedValue = clearedPaymentStatus
91-
92- let clearedDateRange : BookingDateRangeFilter ? = nil
93- dateTimeFilterViewModel. selectedValue = clearedDateRange
77+ teamMemberFilterViewModel. selectedValue = BookingResource ? . none
78+ productFilterViewModel. selectedValue = BookingProductFilter ? . none
79+ customerFilterViewModel. selectedValue = CustomerFilter ? . none
80+ attendanceStatusFilterViewModel. selectedValue = BookingAttendanceStatus ? . none
81+ paymentStatusFilterViewModel. selectedValue = BookingStatus ? . none
82+ dateTimeFilterViewModel. selectedValue = BookingDateRangeFilter ? . none
9483 }
9584
9685 typealias Criteria = Filters
9786
9887 struct Filters : Equatable , HumanReadable {
9988
10089 let teamMember : BookingResource ?
101- let product : FilterBookingsByProduct ?
90+ let product : BookingProductFilter ?
10291 let attendanceStatus : BookingAttendanceStatus ?
10392 let paymentStatus : BookingStatus ?
10493 let customer : CustomerFilter ?
@@ -117,7 +106,7 @@ final class BookingFiltersViewModel: FilterListViewModel {
117106 }
118107
119108 init ( teamMember: BookingResource ? ,
120- product: FilterBookingsByProduct ? ,
109+ product: BookingProductFilter ? ,
121110 attendanceStatus: BookingAttendanceStatus ? ,
122111 paymentStatus: BookingStatus ? ,
123112 customer: CustomerFilter ? ,
@@ -260,7 +249,7 @@ extension BookingStatus: FilterType {
260249 }
261250}
262251
263- extension FilterBookingsByProduct : FilterType {
252+ extension BookingProductFilter : FilterType {
264253 /// The user-facing description of the filter value.
265254 var description : String { name }
266255
0 commit comments