refactor(core): drop injection context assertion in production (#61560)

In other parts of the code, calls to the `assertInInjectionContext` function are guarded with `ngDevMode`. This change aligns these parts of the code with other implementations that drop such assertions in production.

PR Close #61560
This commit is contained in:
arturovt 2025-05-21 14:01:44 +03:00 committed by Jessica Janiuk
parent fa5d7ff409
commit 9416483bd3
3 changed files with 5 additions and 3 deletions

View file

@ -20,7 +20,7 @@ import {MonoTypeOperatorFunction, Observable} from 'rxjs';
*/
export function pendingUntilEvent<T>(injector?: Injector): MonoTypeOperatorFunction<T> {
if (injector === undefined) {
assertInInjectionContext(pendingUntilEvent);
ngDevMode && assertInInjectionContext(pendingUntilEvent);
injector = inject(Injector);
}
const taskService = injector.get(PendingTasks);

View file

@ -22,7 +22,7 @@ import {takeUntil} from 'rxjs/operators';
*/
export function takeUntilDestroyed<T>(destroyRef?: DestroyRef): MonoTypeOperatorFunction<T> {
if (!destroyRef) {
assertInInjectionContext(takeUntilDestroyed);
ngDevMode && assertInInjectionContext(takeUntilDestroyed);
destroyRef = inject(DestroyRef);
}

View file

@ -42,7 +42,9 @@ export interface ToObservableOptions {
* @publicApi 20.0
*/
export function toObservable<T>(source: Signal<T>, options?: ToObservableOptions): Observable<T> {
!options?.injector && assertInInjectionContext(toObservable);
if (ngDevMode && !options?.injector) {
assertInInjectionContext(toObservable);
}
const injector = options?.injector ?? inject(Injector);
const subject = new ReplaySubject<T>(1);