{"version":3,"file":"rx.compat.min.js","sources":["rx.compat.js"],"names":["undefined","cloneArray","arr","len","length","a","Array","i","tryCatcher","tryCatchTarget","apply","this","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","thrower","makeStackTraceLong","error","observable","hasStacks","stack","indexOf","STACK_JUMP_SEPARATOR","stacks","o","source","unshift","concatedStacks","join","filterStackString","stackString","lines","split","desiredLines","line","isInternalFrame","isNodeFrame","push","stackLine","fileNameAndLineNumber","getFileNameAndLineNumber","fileName","lineNumber","rFileName","rStartingLine","rEndingLine","captureLine","Error","firstLine","attempt1","exec","Number","attempt2","attempt3","keysIn","object","result","isObject","support","nonEnumArgs","isArguments","slice","call","skipProto","enumPrototypes","skipErrorProps","enumErrorProps","errorProto","key","nonEnumShadows","objectProto","ctor","constructor","index","dontEnumsLength","prototype","className","stringProto","stringClass","errorClass","toString","nonEnum","nonEnumProps","dontEnums","hasOwnProperty","internalFor","callback","keysFunc","props","internalForIn","isNode","value","deepEquals","b","stackA","stackB","type","otherType","otherClass","argsClass","objectClass","boolClass","dateClass","numberClass","regexpClass","String","isArr","arrayClass","nodeClass","ctorA","argsObject","Object","ctorB","size","pop","arrayInitialize","count","factory","ScheduledDisposable","scheduler","disposable","isDisposed","scheduleItem","s","self","dispose","StringIterable","_s","StringIterator","_l","_i","ArrayIterable","_a","ArrayIterator","toLength","numberIsFinite","root","isFinite","getIterable","it","$iterator$","sign","number","isNaN","Math","floor","abs","maxSafeInteger","FromArraySink","observer","parent","observableOf","array","isScheduler","currentThreadScheduler","FromArrayObservable","PairsSink","RepeatSink","amb","p","c","observableCatchHandler","handler","AnonymousObservable","d1","SingleAssignmentDisposable","subscription","SerialDisposable","setDisposable","subscribe","CatchObserver","falseFactory","zipArray","second","resultSelector","first","left","right","res","onError","onNext","onCompleted","emptyArrayFactory","arrayFactory","asObservable","toArray","x","notEmpty","DistinctUntilChangedObserver","keyFn","comparer","hasCurrentKey","currentKey","isStopped","InnerObserver","accumulator","hasSeed","seed","hasAccumulation","accumulation","hasValue","arrayIndexOfComparer","item","HashSet","set","plucker","args","currentProp","objectTypes","function","freeExports","exports","nodeType","freeSelf","freeWindow","window","freeModule","module","moduleExports","freeGlobal","global","Rx","internals","config","Promise","helpers","noop","identity","defaultNow","Date","now","defaultComparer","y","isEqual","defaultSubComparer","defaultError","defaultKeySerializer","err","isPromise","then","isFn","longStackSupport","EmptyError","message","ObjectDisposedError","ArgumentOutOfRangeError","NotSupportedError","NotImplementedError","notImplemented","notSupported","Symbol","iterator","Set","doneEnumerator","done","isIterable","isArrayLike","supportNodeClass","bindCallback","func","thisArg","argCount","arg","collection","funcClass","supportsArgsClass","propertyIsEnumerable","document","toLocaleString","valueOf","test","inherits","child","__","addProperties","obj","sources","idx","ln","prop","addRef","xs","r","CompositeDisposable","getDisposable","Function","bind","that","target","bound","F","concat","forEach","T","k","O","kValue","boxedString","splitString","every","fun","thisp","map","filter","predicate","results","t","isArray","searchElement","n","Infinity","max","keys","hasDontEnumBug","isDisposable","disposables","CompositeDisposablePrototype","add","remove","shouldDispose","splice","currentDisposables","Disposable","action","disposableCreate","create","disposableEmpty","empty","d","checkDisposed","current","old","RefCountDisposable","InnerDisposable","isInnerDisposed","underlyingDisposable","isPrimaryDisposed","scheduleWithState","ScheduledItem","state","dueTime","invoke","invokeCore","compareTo","other","isCancelled","Scheduler","schedule","scheduleRelative","scheduleAbsolute","_schedule","_scheduleRelative","_scheduleAbsolute","invokeAction","schedulerProto","scheduleWithRelative","scheduleWithRelativeAndState","scheduleWithAbsolute","scheduleWithAbsoluteAndState","normalize","timeSpan","normalizeTime","invokeRecImmediate","pair","innerAction","state2","scheduleWork","_","state3","isAdded","group","isDone","invokeRecDate","method","dueTime1","invokeRecDateRelative","invokeRecDateAbsolute","scheduleInnerRecursive","dt","scheduleRecursive","scheduleRecursiveWithState","scheduleRecursiveWithRelative","scheduleRecursiveWithRelativeAndState","scheduleRecursiveWithAbsolute","scheduleRecursiveWithAbsoluteAndState","schedulePeriodic","period","schedulePeriodicWithState","setInterval","id","clearInterval","catchError","CatchScheduler","scheduleMethod","clearMethod","immediateScheduler","SchedulePeriodicRecursive","tick","command","recurse","_period","_state","_action","_cancel","_scheduler","start","immediate","scheduleNow","currentThread","runTrampoline","queue","shift","si","currentScheduler","scheduleRequired","localTimer","localSetTimeout","localClearTimeout","setTimeout","clearTimeout","WScript","time","Sleep","runTask","handle","currentlyRunning","task","tasksByHandle","postMessageSupported","postMessage","importScripts","isAsync","oldHandler","onmessage","onGlobalPostMessage","event","data","substring","MSG_PREFIX","nextHandle","reNative","RegExp","replace","setImmediate","process","nextTick","random","addEventListener","attachEvent","currentId","MessageChannel","channel","port1","port2","createElement","scriptElement","onreadystatechange","parentNode","removeChild","documentElement","appendChild","timeout","__super__","_wrap","_handler","_recursiveOriginal","_recursiveWrapper","_clone","_getRecursiveWrapper","wrapper","failed","state1","Notification","kind","exception","accept","acceptObservable","_accept","_acceptObservable","observerOrOnNext","toObservable","notification","notificationCreateOnNext","createOnNext","notificationCreateOnError","createOnError","notificationCreateOnCompleted","createOnCompleted","Observer","toNotifier","asObserver","AnonymousObserver","checked","CheckedObserver","observerCreate","fromNotifier","cb","notifyOn","ObserveOnObserver","makeSafe","AnonymousSafeObserver","_onNext","_onError","_onCompleted","observableProto","AbstractObserver","next","completed","fail","_observer","CheckedObserverPrototype","checkAccess","ScheduledObserver","isAcquired","hasFaulted","ensureActive","isOwner","work","cancel","Observable","makeSubscribe","oldOnError","_subscribe","isObservable","oOrOnNext","subscribeOnNext","subscribeOnError","subscribeOnCompleted","ObservableBase","fixSubscriber","subscriber","ado","sub","subscribeCore","AutoDetachObserver","FlatMapObservable","selector","_wrapResult","i2","fromPromise","from","Enumerable","ConcatEnumerableObservable","cancelable","currentItem","currentValue","observableFromPromise","CatchErrorObservable","lastException","catchErrorWhen","notificationHandler","exceptions","Subject","notifier","handled","notificationDisposable","outer","inner","exn","ex","RepeatEnumerable","v","RepeatEnumerator","l","enumerableRepeat","repeat","repeatCount","OfEnumerable","OfEnumerator","enumerableOf","of","observeOn","subscribeOn","m","FromPromiseObservable","promise","toPromise","promiseCtor","resolve","reject","ToArrayObservable","EmptyObservable","defer","observableFactory","observableThrow","EmptySink","sink","run","observableEmpty","FromObservable","iterable","mapper","FromSink","loopRecursive","list","pow","charAt","mapFn","observableFromArray","fromArray","generate","initialState","condition","iterate","hasResult","NeverObservable","observableNever","never","ofWithScheduler","PairsObservable","pairs","RangeObservable","rangeCount","RangeSink","range","RepeatObservable","JustObservable","JustSink","ThrowObservable","just","ThrowSink","using","resourceFactory","resource","rightSource","leftSource","choiceL","choice","leftChoice","rightSubscription","choiceR","rightChoice","leftSubscription","leftSubscribe","rightSubscribe","items","acc","_o","_fn","handlerOrSecond","observableCatch","combineLatest","hasValueAll","values","j","subscriptions","sad","observableConcat","ConcatObservable","ConcatSink","concatAll","merge","MergeObservable","maxConcurrent","g","MergeObserver","q","activeCount","handleSubscribe","innerSource","maxConcurrentOrOther","observableMerge","mergeAll","MergeAllObservable","MergeAllObserver","CompositeError","errors","name","innerErrors","mergeDelayError","setCompletion","innerSubscription","onErrorResumeNext","pos","skipUntil","isOpen","SwitchObservable","SwitchObserver","stopped","latest","hasLatest","switchLatest","TakeUntilObservable","takeUntil","withLatestFrom","allValues","zip","queues","queuedValues","bufferWithCount","skip","windowWithCount","flatMap","dematerialize","DistinctUntilChangedObservable","comparerEquals","distinctUntilChanged","TapObservable","_oN","_oE","_oC","tap","doAction","doOnNext","tapOnNext","doOnError","tapOnError","doOnCompleted","tapOnCompleted","ensure","IgnoreElementsObservable","ignoreElements","materialize","retry","retryCount","retryWhen","ScanObservable","scan","skipLast","startWith","takeLast","takeLastBuffer","createWindow","refCountDisposable","flatMapConcat","concatMap","concatMapObserver","selectConcatObserver","onNextFunc","onErrorFunc","onCompletedFunc","defaultIfEmpty","defaultValue","found","retValue","distinct","keySelector","hashSet","MapObservable","innerMap","internalMap","select","selectorFn","pluck","selectMany","flatMapObserver","selectManyObserver","flatMapLatest","SkipObservable","skipCount","skipWhile","running","take","remaining","takeWhile","FilterObservable","innerPredicate","internalFilter","shouldYield","where","transduce","transducer","transformForObserver","@@transducer/init","@@transducer/step","obs","input","@@transducer/result","xform","__subscribe","innerSubscribe","AutoDetachObserverPrototype","InnerSubscription","subject","observers","hasError","hasObservers","os","AnonymousSubject","AsyncSubject","define","amd"],"mappings":"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"}