title: Give BehaviorSubject initial value - value being an Observable
body: <p>I know that I cannot give <code>BehaviorSubject</code> an Observable value, but I need a way to solve this issue. On app initialization I am fetching current user (if exists), and I need to give the <code>BehaviorSubject</code> that potential value. So my service code looks like this:</p>
  
  <pre class="lang-ts prettyprint-override"><code>private user = new BehaviorSubject&lt;User&gt;(this.getUser());
  public user$ = this.user.asObservable();
  
  getUser(): User {
    // does obviously not work!
    return this.apiService.getUser()
      .map(data =&gt; {
        if(data) {
          return data;
        }
        // do something else
      })  
  }
  </code></pre>
  
  <p>So is there some magical rxjs operator to solve this issue, or some other possibility?</p>
  
  <p>Thanks in advance!</p>