Skip to content

Commit e50f8a2

Browse files
JeanMecheatscott
authored andcommitted
Revert "refactor(core): use stream in rxResource instead of loader (angular#59910)" (angular#60803)
This reverts commit 98a584c. PR Close angular#60803
1 parent 2b4fd9b commit e50f8a2

File tree

3 files changed

+11
-30
lines changed

3 files changed

+11
-30
lines changed

goldens/public-api/core/rxjs-interop/index.api.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ export function rxResource<T, R>(opts: RxResourceOptions<T, R> & {
2626
export function rxResource<T, R>(opts: RxResourceOptions<T, R>): ResourceRef<T | undefined>;
2727

2828
// @public
29-
export type RxResourceOptions<T, R> = RxResourceStreamOptions<T, R> | RxResourceLoaderOptions<T, R>;
29+
export interface RxResourceOptions<T, R> extends BaseResourceOptions<T, R> {
30+
// (undocumented)
31+
loader: (params: ResourceLoaderParams<R>) => Observable<T>;
32+
}
3033

3134
// @public
3235
export function takeUntilDestroyed<T>(destroyRef?: DestroyRef): MonoTypeOperatorFunction<T>;

packages/core/rxjs-interop/src/rx_resource.ts

Lines changed: 4 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -17,35 +17,17 @@ import {
1717
} from '../../src/core';
1818
import {Observable, Subscription} from 'rxjs';
1919

20-
/**
21-
* Like `ResourceOptions` but uses an RxJS-based `stream`.
22-
*
23-
* @experimental
24-
*/
25-
interface RxResourceStreamOptions<T, R> extends BaseResourceOptions<T, R> {
26-
stream: (params: ResourceLoaderParams<R>) => Observable<T>;
27-
}
28-
2920
/**
3021
* Like `ResourceOptions` but uses an RxJS-based `loader`.
3122
*
3223
* @experimental
33-
* @deprecated Use `stream` instead of `loader`.
3424
*/
35-
interface RxResourceLoaderOptions<T, R> extends BaseResourceOptions<T, R> {
36-
/** @deprecated Use `stream` instead of `loader`. */
25+
export interface RxResourceOptions<T, R> extends BaseResourceOptions<T, R> {
3726
loader: (params: ResourceLoaderParams<R>) => Observable<T>;
3827
}
3928

4029
/**
41-
* Like `ResourceOptions` but uses an RxJS-based `stream`.
42-
*
43-
* @experimental
44-
*/
45-
export type RxResourceOptions<T, R> = RxResourceStreamOptions<T, R> | RxResourceLoaderOptions<T, R>;
46-
47-
/**
48-
* Like `resource` but uses an RxJS based `stream` which maps the request to an `Observable` of the
30+
* Like `resource` but uses an RxJS based `loader` which maps the request to an `Observable` of the
4931
* resource's value.
5032
*
5133
* @experimental
@@ -55,7 +37,7 @@ export function rxResource<T, R>(
5537
): ResourceRef<T>;
5638

5739
/**
58-
* Like `resource` but uses an RxJS based `stream` which maps the request to an `Observable` of the
40+
* Like `resource` but uses an RxJS based `loader` which maps the request to an `Observable` of the
5941
* resource's value.
6042
*
6143
* @experimental
@@ -85,11 +67,7 @@ export function rxResource<T, R>(opts: RxResourceOptions<T, R>): ResourceRef<T |
8567
resolve = undefined;
8668
}
8769

88-
// loader is kept for backwards compatibility
89-
const streamOrLoader =
90-
(opts as RxResourceStreamOptions<T, R>).stream ??
91-
(opts as RxResourceLoaderOptions<T, R>).loader;
92-
sub = streamOrLoader(params).subscribe({
70+
sub = opts.loader(params).subscribe({
9371
next: (value) => send({value}),
9472
error: (error) => send({error}),
9573
complete: () => {

packages/core/rxjs-interop/test/rx_resource_spec.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ describe('rxResource()', () => {
1616
const injector = TestBed.inject(Injector);
1717
const appRef = TestBed.inject(ApplicationRef);
1818
const res = rxResource({
19-
stream: () => of(1),
19+
loader: () => of(1),
2020
injector,
2121
});
2222
await appRef.whenStable();
@@ -31,7 +31,7 @@ describe('rxResource()', () => {
3131
let lastSeenRequest: number = 0;
3232
rxResource({
3333
request,
34-
stream: ({request}) => {
34+
loader: ({request}) => {
3535
lastSeenRequest = request;
3636
return new Observable((sub) => {
3737
if (request === 2) {
@@ -61,7 +61,7 @@ describe('rxResource()', () => {
6161
const appRef = TestBed.inject(ApplicationRef);
6262
const response = new BehaviorSubject(1);
6363
const res = rxResource({
64-
stream: () => response,
64+
loader: () => response,
6565
injector,
6666
});
6767
await appRef.whenStable();

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy