rxjs-ajax-cancelable
Version:
Cancelable XMLHttpRequest library based on RxJS.
35 lines (34 loc) • 1.53 kB
TypeScript
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/of';
import 'rxjs/add/observable/dom/ajax';
import 'rxjs/add/operator/take';
import 'rxjs/add/operator/takeUntil';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/filter';
import 'rxjs/add/operator/mergeMap';
import 'rxjs/add/operator/switchMap';
import 'rxjs/add/operator/exhaustMap';
import 'rxjs/add/operator/retry';
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/toPromise';
import 'rxjs/add/operator/do';
import 'rxjs/add/operator/share';
import 'rxjs/add/operator/partition';
import { AjaxResponsePlus, AjaxRequestOptions } from './interfaces';
export declare class AjaxCancelable {
private request;
private refCount;
private subject$;
private canceller$;
constructor(request?: AjaxRequestOptions);
private invokeSubjects();
requestAjax(request?: AjaxRequestOptions): Observable<AjaxResponsePlus | never>;
requestAjaxAsPromise(request?: AjaxRequestOptions): Promise<AjaxResponsePlus | never>;
requestPriorityLastAjax(request?: AjaxRequestOptions): Observable<AjaxResponsePlus | never>;
requestPriorityLastAjaxAsPromise(request?: AjaxRequestOptions): Promise<AjaxResponsePlus | never>;
requestPriorityFirstAjax(request?: AjaxRequestOptions): Observable<AjaxResponsePlus | never>;
requestPriorityFirstAjaxAsPromise(request?: AjaxRequestOptions): Promise<AjaxResponsePlus | never>;
cancelAjax(): void;
private unsubscribeSubjects();
private ajaxRequestCallback(ajaxObj);
}