title: How can i replace retryWhen on this ngrx effect?
body: <p>I have this code that work as intended:</p>
  <ul>
  <li>i dispatch a signin function</li>
  <li>the effect take data fom action and make http post</li>
  <li>if the error status is 504 i retry the http post</li>
  <li>if it's all ok -&gt; success action else error action</li>
  </ul>
  <pre><code>authSignIn$ = createEffect(() =&gt; this.actions$.pipe(
      ofType(authActions.signInStart),
      exhaustMap(action =&gt; this.http
        .post&lt;responseModel.SignInResponse&gt;(`${environment.baseUrl}/${authBaseUrl}/${ApiPaths.singIn}`, {
          codF: action.username,
          password: action.password
        })
        .pipe(
          map((response) =&gt; authActions.signInSuccess({user: response.accountInfo, token: response.token})),
          catchError((error: HttpErrorResponse) =&gt; {
            if (error.status === 504) {
              return throwError(() =&gt; error);
            }
            return of(authActions.signInFail({error: error.message}))
          }),
          retryWhen((errors) =&gt; errors.pipe(delay(4000), take(4)))
        )
      )
    ));
  </code></pre>
  <p>but on RxJs documentation (<a href="https://rxjs.dev/api/operators/retryWhen" rel="nofollow noreferrer">https://rxjs.dev/api/operators/retryWhen</a>) the retryWhen operator is tagged as deprecated...
  So, how can i modify this code to do the same things but without deprecated operators? What is the replacement for replyWhen (if there's one)?</p>