{"version":3,"file":"rx.lite.min.js","sources":["rx.lite.js"],"names":["undefined","checkDisposed","this","isDisposed","Error","objectDisposed","makeStackTraceLong","error","observable","hasStacks","stack","indexOf","STACK_JUMP_SEPARATOR","stacks","o","source","unshift","concatedStacks","join","filterStackString","stackString","lines","split","desiredLines","i","len","length","line","isInternalFrame","isNodeFrame","push","stackLine","fileNameAndLineNumber","getFileNameAndLineNumber","fileName","lineNumber","rFileName","rStartingLine","rEndingLine","captureLine","e","firstLine","attempt1","exec","Number","attempt2","attempt3","isObject","value","type","keysIn","object","result","support","nonEnumArgs","isArguments","slice","call","skipProto","enumPrototypes","skipErrorProps","enumErrorProps","errorProto","key","nonEnumShadows","objectProto","ctor","constructor","index","shadowedProps","prototype","className","stringProto","stringClass","errorClass","toString","nonEnum","nonEnumProps","hasOwnProperty","internalFor","callback","keysFunc","props","internalForIn","isNode","deepEquals","a","b","stackA","stackB","otherType","otherClass","argsClass","objectClass","boolClass","dateClass","numberClass","regexpClass","String","isArr","arrayClass","nodeClass","ctorA","argsObject","Object","ctorB","isFunction","size","pop","argsOrArray","args","idx","Array","isArray","arrayInitialize","count","factory","IndexedItem","id","StringIterable","_s","s","StringIterator","_l","_i","ArrayIterable","_a","ArrayIterator","toLength","numberIsFinite","root","isFinite","getIterable","it","$iterator$","TypeError","sign","number","isNaN","Math","floor","abs","maxSafeInteger","observableOf","scheduler","array","isScheduler","currentThreadScheduler","AnonymousObservable","observer","scheduleRecursive","self","onNext","onCompleted","observableCatchHandler","handler","d1","SingleAssignmentDisposable","subscription","SerialDisposable","setDisposable","subscribe","bind","exception","d","ex","onError","isPromise","observableFromPromise","zipArray","second","resultSelector","first","left","right","concatMap","selector","thisArg","map","x","isArrayLike","isIterable","observableFrom","concatAll","flatMap","mergeAll","createListener","element","name","addEventListener","disposableCreate","removeEventListener","createEventListener","el","eventName","disposables","CompositeDisposable","add","item","observableTimerDate","dueTime","scheduleWithAbsolute","observableTimerDateAndPeriod","period","p","normalizeTime","scheduleRecursiveWithAbsolute","now","observableTimerTimeSpan","scheduleWithRelative","observableTimerTimeSpanAndPeriod","schedulePeriodicWithState","observableDefer","observableDelayTimeSpan","active","cancelable","q","running","materialize","timestamp","notification","shouldRun","kind","scheduleRecursiveWithRelative","recurseDueTime","shouldRecurse","shift","accept","max","observableDelayDate","sampleObservable","sampler","sampleSubscribe","hasValue","atEnd","newValue","combineLatestSource","subject","next","values","res","hasValueAll","every","identity","err","apply","isDone","objectTypes","boolean","function","string","window","freeExports","exports","nodeType","freeModule","module","moduleExports","freeGlobal","global","Rx","internals","config","Promise","helpers","noop","notDefined","Scheduler","defaultNow","pluck","property","just","Date","defaultComparer","y","isEqual","defaultSubComparer","defaultError","defaultKeySerializer","then","asArray","arguments","not","isFn","argumentOutOfRange","longStackSupport","Symbol","iterator","Set","doneEnumerator","done","supportNodeClass","deprecate","funcClass","supportsArgsClass","propertyIsEnumerable","k","document","toLocaleString","valueOf","test","inherits","child","parent","__","addProperties","obj","sources","prop","addRef","xs","r","getDisposable","compareTo","other","c","PriorityQueue","capacity","items","priorityProto","isHigherPriority","percolate","temp","heapify","peek","removeAt","dequeue","enqueue","remove","CompositeDisposablePrototype","dispose","shouldDispose","splice","currentDisposables","toArray","Disposable","action","create","disposableEmpty","empty","BooleanDisposable","current","booleanDisposablePrototype","old","ScheduledItem","RefCountDisposable","InnerDisposable","disposable","isInnerDisposed","underlyingDisposable","isPrimaryDisposed","state","comparer","invoke","invokeCore","isCancelled","schedule","scheduleRelative","scheduleAbsolute","_schedule","_scheduleRelative","_scheduleAbsolute","invokeAction","schedulerProto","scheduleWithState","scheduleWithRelativeAndState","scheduleWithAbsoluteAndState","normalize","timeSpan","invokeRecImmediate","pair","group","recursiveAction","state1","state2","isAdded","scheduler1","state3","invokeRecDate","method","dueTime1","scheduleInnerRecursive","dt","scheduleRecursiveWithState","_action","scheduleRecursiveWithRelativeAndState","scheduleRecursiveWithAbsoluteAndState","schedulePeriodic","setInterval","clearInterval","scheduleMethod","immediateScheduler","immediate","scheduleNow","currentThread","runTrampoline","si","queue","currentScheduler","scheduleRequired","ensureTrampoline","clearMethod","SchedulePeriodicRecursive","tick","command","recurse","_period","_state","_cancel","_scheduler","start","localTimer","localSetTimeout","localClearTimeout","fn","time","WScript","Sleep","setTimeout","clearTimeout","postMessageSupported","postMessage","importScripts","isAsync","oldHandler","onmessage","reNative","RegExp","replace","setImmediate","clearImmediate","process","nextTick","MSG_PREFIX","random","tasks","taskId","onGlobalPostMessage","event","data","substring","handleId","attachEvent","currentId","MessageChannel","channel","channelTasks","channelTaskId","port1","port2","createElement","scriptElement","onreadystatechange","parentNode","removeChild","documentElement","appendChild","timeoutScheduler","timeout","Notification","observerOrOnNext","_acceptObservable","_accept","toObservable","notificationCreateOnNext","createOnNext","notificationCreateOnError","createOnError","notificationCreateOnCompleted","createOnCompleted","Enumerator","_next","Enumerable","_iterator","concat","currentItem","currentValue","catchError","lastException","exn","enumerableRepeat","repeat","repeatCount","enumerableOf","of","Observer","toNotifier","n","asObserver","AnonymousObserver","observerCreate","fromNotifier","observableProto","AbstractObserver","__super__","isStopped","completed","fail","_onNext","_onError","_onCompleted","Observable","_subscribe","oldOnError","forEach","subscribeOnNext","subscribeOnError","subscribeOnCompleted","ScheduledObserver","isAcquired","hasFaulted","ensureActive","isOwner","work","arr","createWithDisposable","defer","observableFactory","observableThrow","observableEmpty","pow","val","charAt","from","iterable","mapFn","list","observableFromArray","fromArray","never","ofWithScheduler","range","observableReturn","returnValue","throwException","throwError","handlerOrSecond","observableCatch","catchException","combineLatest","filter","j","falseFactory","subscriptions","sad","observableConcat","merge","concatObservable","maxConcurrentOrOther","observableMerge","activeCount","innerSource","m","innerSubscription","mergeObservable","skipUntil","isOpen","rightSubscription","switchLatest","hasLatest","latest","takeUntil","zip","queuedValues","queues","compositeDisposable","qIdx","qLen","asObservable","dematerialize","distinctUntilChanged","keySelector","currentKey","hasCurrentKey","comparerEquals","tap","onNextFunc","doAction","doOnNext","tapOnNext","doOnError","tapOnError","doOnCompleted","tapOnCompleted","ensure","finallyAction","ignoreElements","retry","retryCount","scan","seed","accumulator","hasSeed","hasAccumulation","accumulation","skipLast","startWith","takeLast","selectConcat","selectorResult","i2","select","selectorFn","selectMany","selectSwitch","flatMapLatest","switchMap","skip","remaining","skipWhile","predicate","take","RangeError","takeWhile","where","fromCallback","func","context","results","publishLast","refCount","fromNodeCallback","useNativeEvents","jq","angular","jQuery","Zepto","ember","Ember","addListener","marionette","Backbone","Marionette","fromEvent","fromEventPattern","h","removeListener","on","off","$elem","publish","addHandler","removeHandler","innerHandler","fromPromise","promise","AsyncSubject","toPromise","promiseCtor","resolve","reject","v","startAsync","functionAsync","multicast","subjectOrSubjectSelector","connectable","connect","ConnectableObservable","Subject","share","publishValue","initialValueOrSelector","initialValue","BehaviorSubject","shareValue","replay","bufferSize","ReplaySubject","shareReplay","hasSubscription","sourceObservable","connectableSubscription","shouldConnect","observableinterval","interval","timer","periodOrScheduler","getTime","delay","debounce","throttleWithTimeout","hasvalue","throttle","sample","throttleLatest","intervalOrSampler","schedulerMethod","createTimer","myId","original","switched","throttleFirst","windowDuration","duration","lastOnNext","PausableObservable","conn","connection","pausable","pauser","controller","pause","resume","PausableBufferedObservable","previousShouldFire","shouldFire","pausableBuffered","ControlledObservable","enableQueue","ControlledSubject","request","numberOfItems","requestedCount","requestedDisposable","hasFailed","hasCompleted","controlledDisposable","hasRequested","disposeCurrentRequest","_processRequest","controlled","transduce","transducer","transformForObserver","init","step","obs","input","xform","fixSubscriber","subscriber","autoDetachObserver","AutoDetachObserver","AutoDetachObserverPrototype","noError","InnerSubscription","observers","_super","hasObservers","os","AnonymousSubject","hv","createRemovableDisposable","so","_trim","hasError","windowSize","MAX_VALUE","define","amd"],"mappings":"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"}