@@ -199,6 +199,16 @@ - (void)handleMethodCall:(FlutterMethodCall *)call result:(FlutterResult)result
199199 completion: ^(FIRUser *user, NSError *error) {
200200 [self sendResult: result forUser: user error: error];
201201 }];
202+ [[FIRAuth auth ].currentUser linkWithCredential: credential
203+ completion: ^(FIRUser *user, NSError *error) {
204+ [self sendResult: result forUser: user error: error];
205+ }];
206+ } else if ([@" unlink" isEqualToString: call.method]) {
207+ NSString *providerId = call.arguments [@" providerId" ];
208+ [[FIRAuth auth ].currentUser unlinkFromProvider: providerId
209+ completion: ^(FIRUser *user, NSError *error) {
210+ [self sendResult: result forUser: user error: error];
211+ }];
202212 } else if ([@" updateEmail" isEqualToString: call.method]) {
203213 NSString *email = call.arguments [@" email" ];
204214 [[self getAuth: call.arguments].currentUser updateEmail: email
@@ -212,6 +222,10 @@ - (void)handleMethodCall:(FlutterMethodCall *)call result:(FlutterResult)result
212222 completion: ^(NSError *error) {
213223 [self sendResult: result forUser: nil error: error];
214224 }];
225+ [[FIRAuth auth ].currentUser updatePassword: password
226+ completion: ^(NSError *error) {
227+ [self sendResult: result forUser: nil error: error];
228+ }];
215229 } else if ([@" updateProfile" isEqualToString: call.method]) {
216230 FIRUserProfileChangeRequest *changeRequest =
217231 [[self getAuth: call.arguments].currentUser profileChangeRequest ];
0 commit comments