Advertisement
Guest User

Untitled

a guest
Nov 12th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 0.77 KB | None | 0 0
  1. let fieldsUpdates = fields
  2.             .compactMap { $0 as? TextFieldViewModel }
  3.             .map { field in
  4.  
  5.                 field.didFinishEditingSubject
  6.                     .asObservable()
  7.                     .withLatestFrom(Observable.combineLatest(field.text.asObservable(), field.isValid.asObservable()))
  8.                     .filter { $1 }
  9.                     .do(onNext: {
  10.                         address.value.update(field.fieldType, with: $0.0)
  11.                         if let copyTo = field.copyTo {
  12.                             address.value.update(copyTo, with: $0.0)
  13.                         }
  14.                     })
  15.                     .mapToVoid()
  16.                     .asDriverOnErrorJustComplete()
  17.             }
  18.  
  19.         sideEffects = Driver.merge(fieldsUpdates)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement