1/* tslint:disable:no-unused-variable */ 2// Subject imported before Observable to bypass circular dependency issue since 3// Subject extends Observable and Observable references Subject in it's 4// definition 5export {Subject, AnonymousSubject} from './Subject'; 6/* tslint:enable:no-unused-variable */ 7export {Observable} from './Observable'; 8 9export { config } from './config'; 10 11// statics 12/* tslint:disable:no-use-before-declare */ 13import 'rxjs-compat/add/observable/bindCallback'; 14import 'rxjs-compat/add/observable/bindNodeCallback'; 15import 'rxjs-compat/add/observable/combineLatest'; 16import 'rxjs-compat/add/observable/concat'; 17import 'rxjs-compat/add/observable/defer'; 18import 'rxjs-compat/add/observable/empty'; 19import 'rxjs-compat/add/observable/forkJoin'; 20import 'rxjs-compat/add/observable/from'; 21import 'rxjs-compat/add/observable/fromEvent'; 22import 'rxjs-compat/add/observable/fromEventPattern'; 23import 'rxjs-compat/add/observable/fromPromise'; 24import 'rxjs-compat/add/observable/generate'; 25import 'rxjs-compat/add/observable/if'; 26import 'rxjs-compat/add/observable/interval'; 27import 'rxjs-compat/add/observable/merge'; 28import 'rxjs-compat/add/observable/race'; 29import 'rxjs-compat/add/observable/never'; 30import 'rxjs-compat/add/observable/of'; 31import 'rxjs-compat/add/observable/onErrorResumeNext'; 32import 'rxjs-compat/add/observable/pairs'; 33import 'rxjs-compat/add/observable/range'; 34import 'rxjs-compat/add/observable/using'; 35import 'rxjs-compat/add/observable/throw'; 36import 'rxjs-compat/add/observable/timer'; 37import 'rxjs-compat/add/observable/zip'; 38 39//dom 40import 'rxjs-compat/add/observable/dom/ajax'; 41import 'rxjs-compat/add/observable/dom/webSocket'; 42 43//internal/operators 44import 'rxjs-compat/add/operator/buffer'; 45import 'rxjs-compat/add/operator/bufferCount'; 46import 'rxjs-compat/add/operator/bufferTime'; 47import 'rxjs-compat/add/operator/bufferToggle'; 48import 'rxjs-compat/add/operator/bufferWhen'; 49import 'rxjs-compat/add/operator/catch'; 50import 'rxjs-compat/add/operator/combineAll'; 51import 'rxjs-compat/add/operator/combineLatest'; 52import 'rxjs-compat/add/operator/concat'; 53import 'rxjs-compat/add/operator/concatAll'; 54import 'rxjs-compat/add/operator/concatMap'; 55import 'rxjs-compat/add/operator/concatMapTo'; 56import 'rxjs-compat/add/operator/count'; 57import 'rxjs-compat/add/operator/dematerialize'; 58import 'rxjs-compat/add/operator/debounce'; 59import 'rxjs-compat/add/operator/debounceTime'; 60import 'rxjs-compat/add/operator/defaultIfEmpty'; 61import 'rxjs-compat/add/operator/delay'; 62import 'rxjs-compat/add/operator/delayWhen'; 63import 'rxjs-compat/add/operator/distinct'; 64import 'rxjs-compat/add/operator/distinctUntilChanged'; 65import 'rxjs-compat/add/operator/distinctUntilKeyChanged'; 66import 'rxjs-compat/add/operator/do'; 67import 'rxjs-compat/add/operator/exhaust'; 68import 'rxjs-compat/add/operator/exhaustMap'; 69import 'rxjs-compat/add/operator/expand'; 70import 'rxjs-compat/add/operator/elementAt'; 71import 'rxjs-compat/add/operator/filter'; 72import 'rxjs-compat/add/operator/finally'; 73import 'rxjs-compat/add/operator/find'; 74import 'rxjs-compat/add/operator/findIndex'; 75import 'rxjs-compat/add/operator/first'; 76import 'rxjs-compat/add/operator/groupBy'; 77import 'rxjs-compat/add/operator/ignoreElements'; 78import 'rxjs-compat/add/operator/isEmpty'; 79import 'rxjs-compat/add/operator/audit'; 80import 'rxjs-compat/add/operator/auditTime'; 81import 'rxjs-compat/add/operator/last'; 82import 'rxjs-compat/add/operator/let'; 83import 'rxjs-compat/add/operator/every'; 84import 'rxjs-compat/add/operator/map'; 85import 'rxjs-compat/add/operator/mapTo'; 86import 'rxjs-compat/add/operator/materialize'; 87import 'rxjs-compat/add/operator/max'; 88import 'rxjs-compat/add/operator/merge'; 89import 'rxjs-compat/add/operator/mergeAll'; 90import 'rxjs-compat/add/operator/mergeMap'; 91import 'rxjs-compat/add/operator/mergeMapTo'; 92import 'rxjs-compat/add/operator/mergeScan'; 93import 'rxjs-compat/add/operator/min'; 94import 'rxjs-compat/add/operator/multicast'; 95import 'rxjs-compat/add/operator/observeOn'; 96import 'rxjs-compat/add/operator/onErrorResumeNext'; 97import 'rxjs-compat/add/operator/pairwise'; 98import 'rxjs-compat/add/operator/partition'; 99import 'rxjs-compat/add/operator/pluck'; 100import 'rxjs-compat/add/operator/publish'; 101import 'rxjs-compat/add/operator/publishBehavior'; 102import 'rxjs-compat/add/operator/publishReplay'; 103import 'rxjs-compat/add/operator/publishLast'; 104import 'rxjs-compat/add/operator/race'; 105import 'rxjs-compat/add/operator/reduce'; 106import 'rxjs-compat/add/operator/repeat'; 107import 'rxjs-compat/add/operator/repeatWhen'; 108import 'rxjs-compat/add/operator/retry'; 109import 'rxjs-compat/add/operator/retryWhen'; 110import 'rxjs-compat/add/operator/sample'; 111import 'rxjs-compat/add/operator/sampleTime'; 112import 'rxjs-compat/add/operator/scan'; 113import 'rxjs-compat/add/operator/sequenceEqual'; 114import 'rxjs-compat/add/operator/share'; 115import 'rxjs-compat/add/operator/shareReplay'; 116import 'rxjs-compat/add/operator/single'; 117import 'rxjs-compat/add/operator/skip'; 118import 'rxjs-compat/add/operator/skipLast'; 119import 'rxjs-compat/add/operator/skipUntil'; 120import 'rxjs-compat/add/operator/skipWhile'; 121import 'rxjs-compat/add/operator/startWith'; 122import 'rxjs-compat/add/operator/subscribeOn'; 123import 'rxjs-compat/add/operator/switch'; 124import 'rxjs-compat/add/operator/switchMap'; 125import 'rxjs-compat/add/operator/switchMapTo'; 126import 'rxjs-compat/add/operator/take'; 127import 'rxjs-compat/add/operator/takeLast'; 128import 'rxjs-compat/add/operator/takeUntil'; 129import 'rxjs-compat/add/operator/takeWhile'; 130import 'rxjs-compat/add/operator/throttle'; 131import 'rxjs-compat/add/operator/throttleTime'; 132import 'rxjs-compat/add/operator/timeInterval'; 133import 'rxjs-compat/add/operator/timeout'; 134import 'rxjs-compat/add/operator/timeoutWith'; 135import 'rxjs-compat/add/operator/timestamp'; 136import 'rxjs-compat/add/operator/toArray'; 137import 'rxjs-compat/add/operator/toPromise'; 138import 'rxjs-compat/add/operator/window'; 139import 'rxjs-compat/add/operator/windowCount'; 140import 'rxjs-compat/add/operator/windowTime'; 141import 'rxjs-compat/add/operator/windowToggle'; 142import 'rxjs-compat/add/operator/windowWhen'; 143import 'rxjs-compat/add/operator/withLatestFrom'; 144import 'rxjs-compat/add/operator/zip'; 145import 'rxjs-compat/add/operator/zipAll'; 146 147/* tslint:disable:no-unused-variable */ 148export {Operator} from './Operator'; 149export {Observer} from './types'; 150export {Subscription} from './Subscription'; 151export {Subscriber} from './Subscriber'; 152export {AsyncSubject} from './AsyncSubject'; 153export {ReplaySubject} from './ReplaySubject'; 154export {BehaviorSubject} from './BehaviorSubject'; 155export {ConnectableObservable} from './observable/ConnectableObservable'; 156export {Notification, NotificationKind} from './Notification'; 157export {EmptyError} from './util/EmptyError'; 158export {ArgumentOutOfRangeError} from './util/ArgumentOutOfRangeError'; 159export {ObjectUnsubscribedError} from './util/ObjectUnsubscribedError'; 160export {TimeoutError} from './util/TimeoutError'; 161export {UnsubscriptionError} from './util/UnsubscriptionError'; 162export {TimeInterval} from './operators/timeInterval'; 163export {Timestamp} from './operators/timestamp'; 164export {TestScheduler} from './testing/TestScheduler'; 165export {VirtualTimeScheduler} from './scheduler/VirtualTimeScheduler'; 166export {AjaxRequest, AjaxResponse, AjaxError, AjaxTimeoutError} from './observable/dom/AjaxObservable'; 167export { pipe } from './util/pipe'; 168 169import { asap } from './scheduler/asap'; 170import { async } from './scheduler/async'; 171import { queue } from './scheduler/queue'; 172import { animationFrame } from './scheduler/animationFrame'; 173import { AsapScheduler } from './scheduler/AsapScheduler'; 174import { AsyncScheduler } from './scheduler/AsyncScheduler'; 175import { QueueScheduler } from './scheduler/QueueScheduler'; 176import { AnimationFrameScheduler } from './scheduler/AnimationFrameScheduler'; 177import { rxSubscriber } from './symbol/rxSubscriber'; 178import { iterator } from './symbol/iterator'; 179import { observable } from './symbol/observable'; 180 181import * as _operators from './operators/index'; 182 183export const operators = _operators; 184 185/* tslint:enable:no-unused-variable */ 186 187/** 188 * @typedef {Object} Rx.Scheduler 189 * @property {SchedulerLike} asap Schedules on the micro task queue, which is the same 190 * queue used for promises. Basically after the current job, but before the next job. 191 * Use this for asynchronous conversions. 192 * @property {SchedulerLike} queue Schedules on a queue in the current event frame 193 * (trampoline scheduler). Use this for iteration operations. 194 * @property {SchedulerLike} animationFrame Schedules work with `requestAnimationFrame`. 195 * Use this for synchronizing with the platform's painting. 196 * @property {SchedulerLike} async Schedules work with `setInterval`. Use this for 197 * time-based operations. 198 */ 199let Scheduler = { 200 asap, 201 queue, 202 animationFrame, 203 async 204}; 205 206/** 207 * @typedef {Object} Rx.Symbol 208 * @property {Symbol|string} rxSubscriber A symbol to use as a property name to 209 * retrieve an "Rx safe" Observer from an object. "Rx safety" can be defined as 210 * an object that has all of the traits of an Rx Subscriber, including the 211 * ability to add and remove subscriptions to the subscription chain and 212 * guarantees involving event triggering (can't "next" after unsubscription, 213 * etc). 214 * @property {Symbol|string} observable A symbol to use as a property name to 215 * retrieve an Observable as defined by the [ECMAScript "Observable" spec](https://github.com/zenparsing/es-observable). 216 * @property {Symbol|string} iterator The ES6 symbol to use as a property name 217 * to retrieve an iterator from an object. 218 */ 219let Symbol = { 220 rxSubscriber, 221 observable, 222 iterator 223}; 224 225export { 226 Scheduler, 227 Symbol 228}; 229