Is that correct in the last edit of retry operator to not connect retryWhen with source observable?
Nandan Kumar

Pipeable/lettable operators are functions that are passed an observable and return an observable, so there’s no source observable for the retry operator to be connected to.

The source observable will be passed into the function returned by the retry operator when the operator is applied to the source observable using pipe.

For example:

const composed = source.pipe(retry(3, 1000));

Here, source will be passed to the function returned by the call to retry and that function will return the observable assigned to composed.