logixia 1.2.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/{index-BDRSTjUt.d.ts → index-CHIsdA9n.d.ts} +53 -2
  2. package/dist/index-CHIsdA9n.d.ts.map +1 -0
  3. package/dist/{index-Drrzn-Yg.d.mts → index-iDTW2-eY.d.mts} +53 -2
  4. package/dist/index-iDTW2-eY.d.mts.map +1 -0
  5. package/dist/index.d.mts +89 -3
  6. package/dist/index.d.mts.map +1 -1
  7. package/dist/index.d.ts +89 -3
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +5 -2
  10. package/dist/index.js.map +1 -1
  11. package/dist/index.mjs +3 -3
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/{logitron-logger.module-iO8DPE7_.mjs → logitron-logger.module-2AzkadqZ.mjs} +226 -8
  14. package/dist/logitron-logger.module-2AzkadqZ.mjs.map +1 -0
  15. package/dist/{logitron-logger.module-X6nGDVGC.js → logitron-logger.module-BqNKp0Fs.js} +240 -4
  16. package/dist/logitron-logger.module-BqNKp0Fs.js.map +1 -0
  17. package/dist/{logitron-logger.module-CY3t8yK6.d.mts → logitron-logger.module-C0G8JGVf.d.ts} +6 -4
  18. package/dist/logitron-logger.module-C0G8JGVf.d.ts.map +1 -0
  19. package/dist/{logitron-logger.module-DgEldK9V.d.ts → logitron-logger.module-DQKaZTJL.d.mts} +6 -4
  20. package/dist/logitron-logger.module-DQKaZTJL.d.mts.map +1 -0
  21. package/dist/middleware.d.mts +83 -0
  22. package/dist/middleware.d.mts.map +1 -0
  23. package/dist/middleware.d.ts +83 -0
  24. package/dist/middleware.d.ts.map +1 -0
  25. package/dist/middleware.js +132 -0
  26. package/dist/middleware.js.map +1 -0
  27. package/dist/middleware.mjs +130 -0
  28. package/dist/middleware.mjs.map +1 -0
  29. package/dist/nest.d.mts +2 -2
  30. package/dist/nest.d.ts +2 -2
  31. package/dist/nest.js +2 -2
  32. package/dist/nest.mjs +2 -2
  33. package/dist/testing.d.mts +67 -0
  34. package/dist/testing.d.mts.map +1 -0
  35. package/dist/testing.d.ts +67 -0
  36. package/dist/testing.d.ts.map +1 -0
  37. package/dist/testing.js +164 -0
  38. package/dist/testing.js.map +1 -0
  39. package/dist/testing.mjs +163 -0
  40. package/dist/testing.mjs.map +1 -0
  41. package/dist/{transport.manager-Vi__pagn.mjs → transport.manager-5VVdqS3o.mjs} +51 -2
  42. package/dist/transport.manager-5VVdqS3o.mjs.map +1 -0
  43. package/dist/{transport.manager-C3Xr7Tvi.js → transport.manager-DCOm4uIQ.js} +51 -2
  44. package/dist/transport.manager-DCOm4uIQ.js.map +1 -0
  45. package/dist/transports.d.mts +38 -1
  46. package/dist/transports.d.mts.map +1 -1
  47. package/dist/transports.d.ts +38 -1
  48. package/dist/transports.d.ts.map +1 -1
  49. package/dist/transports.js +1 -1
  50. package/dist/transports.mjs +1 -1
  51. package/package.json +21 -1
  52. package/dist/index-BDRSTjUt.d.ts.map +0 -1
  53. package/dist/index-Drrzn-Yg.d.mts.map +0 -1
  54. package/dist/logitron-logger.module-CY3t8yK6.d.mts.map +0 -1
  55. package/dist/logitron-logger.module-DgEldK9V.d.ts.map +0 -1
  56. package/dist/logitron-logger.module-X6nGDVGC.js.map +0 -1
  57. package/dist/logitron-logger.module-iO8DPE7_.mjs.map +0 -1
  58. package/dist/transport.manager-C3Xr7Tvi.js.map +0 -1
  59. package/dist/transport.manager-Vi__pagn.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logitron-logger.module-BqNKp0Fs.js","names":["AsyncLocalStorage","base: LogContext","serialized: Record<string, unknown>","skip","out: Record<string, unknown>","result: Record<string, unknown>","interval","max","timeout","native","AsyncLocalStorage","uuidv4","DEFAULT_TRACE_HEADERS","resolvedConfig: TraceIdConfig","traceId: string | undefined","context","TransportManager","normalized: GracefulShutdownConfig","timer","traceId","payload: Record<string, unknown> | undefined","entry: LogEntry","LogixiaLoggerService","context","internalError","errorData: Record<string, string>","Scope","createErrorClass_1","__values","__read","__spreadArray","from","isFunction_1","UnsubscriptionError_1","arrRemove_1","Subscription","empty","__read","__spreadArray","from","timeout","config_1","timeoutProvider_1","config_1","__extends","b","isFunction_1","Subscription_1","config_1","reportUnhandledError_1","noop_1","errorContext_1","Subscriber","ConsumerObserver","SafeSubscriber","identity_1","Subscriber_1","Subscription_1","observable_1","pipe_1","config_1","isFunction_1","errorContext_1","Observable","isFunction_1","__extends","b","Subscriber_1","OperatorSubscriber","err","lift_1","OperatorSubscriber_1","__extends","b","Observable_1","Subscription_1","refCount_1","OperatorSubscriber_1","lift_1","ConnectableObservable","__read","__spreadArray","from","Subscription_1","timestamp","Observable_1","animationFrameProvider_1","timestamp","createErrorClass_1","__extends","b","__values","Observable_1","Subscription_1","ObjectUnsubscribedError_1","arrRemove_1","Subject","AnonymousSubject","__extends","b","BehaviorSubject","__extends","b","Subject_1","dateTimestampProvider_1","ReplaySubject","last","__extends","b","AsyncSubject","__extends","b","Action","delay","__read","__spreadArray","from","timeout","__extends","b","arrRemove_1","AsyncAction","delay","__read","__spreadArray","from","__extends","b","AsyncAction_1","AsapAction","delay","dateTimestampProvider_1","Scheduler","delay","__extends","b","Scheduler_1","AsyncScheduler","__extends","b","AsapScheduler","AsyncAction_1","__extends","b","QueueAction","delay","__extends","b","QueueScheduler","__extends","b","AsyncAction_1","AnimationFrameAction","delay","__extends","b","AnimationFrameScheduler","b","Subscription_1","VirtualTimeScheduler","VirtualAction","delay","Observable_1","isFunction_1","isFunction_1","isScheduler_1","last","isFunction_1","observable_1","isFunction_1","isFunction_1","iterator_1","isFunction_1","__generator","isFunction_1","__generator","__values","v","isArrayLike_1","isPromise_1","Observable_1","isInteropObservable_1","isAsyncIterable_1","throwUnobservableError_1","isIterable_1","isReadableStreamLike_1","isFunction_1","observable_1","process","delay","repeat","executeSchedule_1","lift_1","OperatorSubscriber_1","delay","lift_1","delay","innerFrom_1","observeOn_1","subscribeOn_1","innerFrom_1","observeOn_1","subscribeOn_1","Observable_1","Observable_1","isFunction_1","executeSchedule_1","Observable_1","executeSchedule_1","scheduleAsyncIterable_1","isReadableStreamLike_1","scheduleIterable_1","isArrayLike_1","scheduled_1","innerFrom_1","args_1","from_1","Observable_1","isFunction_1","empty_1","of_1","throwError_1","isFunction_1","Notification","Observable_1","isFunction_1","createErrorClass_1","EmptyError_1","EmptyError_1","Subscriber_1","createErrorClass_1","createErrorClass_1","createErrorClass_1","async_1","isDate_1","lift_1","innerFrom_1","OperatorSubscriber_1","executeSchedule_1","first","delay","lift_1","OperatorSubscriber_1","__read","__spreadArray","from","map_1","isArray","__read","__spreadArray","from","isScheduler_1","Observable_1","subscribeOn_1","mapOneOrManyArgs_1","observeOn_1","AsyncSubject_1","_i","bindCallbackInternals_1","isArray","first_1","Observable_1","argsArgArrayOrObject_1","from_1","identity_1","mapOneOrManyArgs_1","args_1","createObject_1","OperatorSubscriber_1","executeSchedule_1","combineLatest","i","innerFrom_1","executeSchedule_1","OperatorSubscriber_1","buffer","expand","map_1","innerFrom_1","lift_1","mergeInternals_1","isFunction_1","mergeMap_1","identity_1","mergeAll_1","concatAll_1","args_1","from_1","concat","Observable_1","innerFrom_1","Subject_1","Observable_1","defer_1","DEFAULT_CONFIG","Observable_1","innerFrom_1","args_1","OperatorSubscriber_1","mapOneOrManyArgs_1","sourceIndex","__read","innerFrom_1","Observable_1","mergeMap_1","isFunction_1","mapOneOrManyArgs_1","Observable_1","isFunction_1","mapOneOrManyArgs_1","identity_1","isScheduler_1","defer_1","_a","defer_1","Observable_1","async_1","isDate_1","async_1","timer_1","mergeAll_1","innerFrom_1","empty_1","args_1","from_1","merge","Observable_1","noop_1","Observable_1","argsOrArgArray_1","OperatorSubscriber_1","noop_1","innerFrom_1","from_1","lift_1","OperatorSubscriber_1","filter_1","innerFrom_1","Observable_1","innerFrom_1","argsOrArgArray_1","OperatorSubscriber_1","i","Observable_1","empty_1","count","Observable_1","innerFrom_1","empty_1","__read","__spreadArray","from","Observable_1","innerFrom_1","argsOrArgArray_1","empty_1","OperatorSubscriber_1","args_1","zip","sourceIndex","buffer","lift_1","innerFrom_1","OperatorSubscriber_1","async_1","audit_1","timer_1","lift_1","noop_1","OperatorSubscriber_1","innerFrom_1","__values","lift_1","OperatorSubscriber_1","arrRemove_1","count","buffer","__values","Subscription_1","lift_1","OperatorSubscriber_1","arrRemove_1","async_1","args_1","executeSchedule_1","buffer","_a","__values","Subscription_1","lift_1","innerFrom_1","OperatorSubscriber_1","noop_1","arrRemove_1","buffer","lift_1","noop_1","OperatorSubscriber_1","innerFrom_1","buffer","innerFrom_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","scanInternals_1","lift_1","reduce_1","lift_1","identity_1","mapOneOrManyArgs_1","pipe_1","mergeMap_1","toArray_1","combineLatest_1","joinAllInternals_1","combineLatestAll_1","__read","__spreadArray","from","combineLatest_1","lift_1","argsOrArgArray_1","pipe_1","args_1","__read","__spreadArray","from","combineLatest_1","mergeMap_1","isFunction_1","concatMap_1","isFunction_1","__read","__spreadArray","from","lift_1","concatAll_1","args_1","from_1","__read","__spreadArray","from","concat_1","Observable_1","Subject_1","innerFrom_1","lift_1","reduce_1","lift_1","noop_1","OperatorSubscriber_1","innerFrom_1","async_1","lift_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","empty_1","lift_1","OperatorSubscriber_1","count","lift_1","OperatorSubscriber_1","noop_1","map_1","concat_1","take_1","ignoreElements_1","mapTo_1","mergeMap_1","innerFrom_1","async_1","delayWhen_1","timer_1","Notification_1","lift_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","noop_1","innerFrom_1","identity_1","lift_1","OperatorSubscriber_1","first","distinctUntilChanged_1","EmptyError_1","lift_1","OperatorSubscriber_1","ArgumentOutOfRangeError_1","filter_1","throwIfEmpty_1","defaultIfEmpty_1","take_1","__read","__spreadArray","from","concat_1","of_1","lift_1","OperatorSubscriber_1","map_1","innerFrom_1","lift_1","OperatorSubscriber_1","exhaustMap_1","identity_1","exhaustAll_1","lift_1","mergeInternals_1","lift_1","lift_1","OperatorSubscriber_1","findIndex","lift_1","find_1","EmptyError_1","filter_1","take_1","defaultIfEmpty_1","throwIfEmpty_1","identity_1","Observable_1","innerFrom_1","Subject_1","lift_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","__values","empty_1","lift_1","OperatorSubscriber_1","count","buffer","buffer_1","EmptyError_1","filter_1","takeLast_1","throwIfEmpty_1","defaultIfEmpty_1","identity_1","Notification_1","lift_1","OperatorSubscriber_1","reduce_1","isFunction_1","mergeMap_1","mergeMap_1","isFunction_1","lift_1","__read","__spreadArray","from","lift_1","mergeAll_1","args_1","from_1","__read","__spreadArray","from","merge_1","reduce_1","isFunction_1","ConnectableObservable_1","isFunction_1","connect_1","__read","__spreadArray","from","onErrorResumeNext_1","lift_1","OperatorSubscriber_1","map_1","Subject_1","multicast_1","connect_1","BehaviorSubject_1","ConnectableObservable_1","AsyncSubject_1","ConnectableObservable_1","ReplaySubject_1","multicast_1","isFunction_1","windowTime","__read","__spreadArray","from","race_1","lift_1","identity_1","empty_1","lift_1","OperatorSubscriber_1","innerFrom_1","timer_1","count","delay","innerFrom_1","Subject_1","lift_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","identity_1","timer_1","innerFrom_1","count","delay","innerFrom_1","Subject_1","lift_1","OperatorSubscriber_1","innerFrom_1","lift_1","noop_1","OperatorSubscriber_1","async_1","sample_1","interval_1","lift_1","lift_1","OperatorSubscriber_1","innerFrom_1","buffer","__read","__spreadArray","from","innerFrom_1","Subject_1","Subscriber_1","lift_1","refCount","ReplaySubject_1","share_1","refCount","windowTime","EmptyError_1","SequenceError_1","NotFoundError_1","lift_1","OperatorSubscriber_1","filter_1","count","identity_1","lift_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","innerFrom_1","noop_1","lift_1","OperatorSubscriber_1","concat_1","args_1","lift_1","innerFrom_1","lift_1","OperatorSubscriber_1","switchMap_1","identity_1","switchMap_1","isFunction_1","switchMap_1","lift_1","lift_1","OperatorSubscriber_1","innerFrom_1","noop_1","lift_1","OperatorSubscriber_1","lift_1","OperatorSubscriber_1","identity_1","_a","lift_1","OperatorSubscriber_1","innerFrom_1","async_1","throttle_1","timer_1","async_1","lift_1","OperatorSubscriber_1","last","interval","TimeInterval","async_1","timeout_1","first","map_1","Subject_1","lift_1","OperatorSubscriber_1","noop_1","innerFrom_1","__values","Subject_1","lift_1","OperatorSubscriber_1","count","Subject_1","async_1","Subscription_1","lift_1","OperatorSubscriber_1","arrRemove_1","args_1","window","window_1","_a","Subject_1","Subscription_1","lift_1","innerFrom_1","OperatorSubscriber_1","noop_1","window","Subject_1","lift_1","OperatorSubscriber_1","innerFrom_1","window","__read","__spreadArray","from","lift_1","identity_1","noop_1","i","zip_1","__read","__spreadArray","from","zip_1","from","zip_1","exports","KafkaTraceInterceptor","config?: TraceIdConfig","context","traceId: string | undefined","Observable","TraceMiddleware","config?: TraceIdConfig","traceId: string | undefined","WebSocketTraceInterceptor","config?: TraceIdConfig","context","traceId: string | undefined","Observable","DEFAULT_ROUTES: RouteInfo[]","RequestMethod","LogixiaLoggerModule","traceConfig: TraceIdConfig | undefined","traceConfig","defaultConfig: LoggerConfig","context"],"sources":["../src/context/async-context.ts","../src/types/index.ts","../src/utils/error.utils.ts","../src/utils/redact.utils.ts","../src/utils/sampling.utils.ts","../src/utils/shutdown.utils.ts","../node_modules/uuid/dist/esm-node/rng.js","../node_modules/uuid/dist/esm-node/stringify.js","../node_modules/uuid/dist/esm-node/native.js","../node_modules/uuid/dist/esm-node/v4.js","../src/utils/trace.utils.ts","../src/core/logitron-logger.ts","../src/core/logitron-nestjs.service.ts","../node_modules/rxjs/dist/cjs/internal/util/isFunction.js","../node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js","../node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js","../node_modules/rxjs/dist/cjs/internal/util/arrRemove.js","../node_modules/rxjs/dist/cjs/internal/Subscription.js","../node_modules/rxjs/dist/cjs/internal/config.js","../node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js","../node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js","../node_modules/rxjs/dist/cjs/internal/util/noop.js","../node_modules/rxjs/dist/cjs/internal/NotificationFactories.js","../node_modules/rxjs/dist/cjs/internal/util/errorContext.js","../node_modules/rxjs/dist/cjs/internal/Subscriber.js","../node_modules/rxjs/dist/cjs/internal/symbol/observable.js","../node_modules/rxjs/dist/cjs/internal/util/identity.js","../node_modules/rxjs/dist/cjs/internal/util/pipe.js","../node_modules/rxjs/dist/cjs/internal/Observable.js","../node_modules/rxjs/dist/cjs/internal/util/lift.js","../node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js","../node_modules/rxjs/dist/cjs/internal/operators/refCount.js","../node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js","../node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js","../node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js","../node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js","../node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js","../node_modules/rxjs/dist/cjs/internal/Subject.js","../node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js","../node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js","../node_modules/rxjs/dist/cjs/internal/ReplaySubject.js","../node_modules/rxjs/dist/cjs/internal/AsyncSubject.js","../node_modules/rxjs/dist/cjs/internal/scheduler/Action.js","../node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js","../node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js","../node_modules/rxjs/dist/cjs/internal/util/Immediate.js","../node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js","../node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js","../node_modules/rxjs/dist/cjs/internal/Scheduler.js","../node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js","../node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js","../node_modules/rxjs/dist/cjs/internal/scheduler/asap.js","../node_modules/rxjs/dist/cjs/internal/scheduler/async.js","../node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js","../node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js","../node_modules/rxjs/dist/cjs/internal/scheduler/queue.js","../node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js","../node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js","../node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js","../node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js","../node_modules/rxjs/dist/cjs/internal/observable/empty.js","../node_modules/rxjs/dist/cjs/internal/util/isScheduler.js","../node_modules/rxjs/dist/cjs/internal/util/args.js","../node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js","../node_modules/rxjs/dist/cjs/internal/util/isPromise.js","../node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js","../node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js","../node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js","../node_modules/rxjs/dist/cjs/internal/symbol/iterator.js","../node_modules/rxjs/dist/cjs/internal/util/isIterable.js","../node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js","../node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js","../node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js","../node_modules/rxjs/dist/cjs/internal/operators/observeOn.js","../node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js","../node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js","../node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js","../node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js","../node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js","../node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js","../node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js","../node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js","../node_modules/rxjs/dist/cjs/internal/observable/from.js","../node_modules/rxjs/dist/cjs/internal/observable/of.js","../node_modules/rxjs/dist/cjs/internal/observable/throwError.js","../node_modules/rxjs/dist/cjs/internal/Notification.js","../node_modules/rxjs/dist/cjs/internal/util/isObservable.js","../node_modules/rxjs/dist/cjs/internal/util/EmptyError.js","../node_modules/rxjs/dist/cjs/internal/lastValueFrom.js","../node_modules/rxjs/dist/cjs/internal/firstValueFrom.js","../node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js","../node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js","../node_modules/rxjs/dist/cjs/internal/util/SequenceError.js","../node_modules/rxjs/dist/cjs/internal/util/isDate.js","../node_modules/rxjs/dist/cjs/internal/operators/timeout.js","../node_modules/rxjs/dist/cjs/internal/operators/map.js","../node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js","../node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js","../node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js","../node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js","../node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js","../node_modules/rxjs/dist/cjs/internal/util/createObject.js","../node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js","../node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js","../node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js","../node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js","../node_modules/rxjs/dist/cjs/internal/operators/concatAll.js","../node_modules/rxjs/dist/cjs/internal/observable/concat.js","../node_modules/rxjs/dist/cjs/internal/observable/defer.js","../node_modules/rxjs/dist/cjs/internal/observable/connectable.js","../node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js","../node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js","../node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js","../node_modules/rxjs/dist/cjs/internal/observable/generate.js","../node_modules/rxjs/dist/cjs/internal/observable/iif.js","../node_modules/rxjs/dist/cjs/internal/observable/timer.js","../node_modules/rxjs/dist/cjs/internal/observable/interval.js","../node_modules/rxjs/dist/cjs/internal/observable/merge.js","../node_modules/rxjs/dist/cjs/internal/observable/never.js","../node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js","../node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js","../node_modules/rxjs/dist/cjs/internal/observable/pairs.js","../node_modules/rxjs/dist/cjs/internal/util/not.js","../node_modules/rxjs/dist/cjs/internal/operators/filter.js","../node_modules/rxjs/dist/cjs/internal/observable/partition.js","../node_modules/rxjs/dist/cjs/internal/observable/race.js","../node_modules/rxjs/dist/cjs/internal/observable/range.js","../node_modules/rxjs/dist/cjs/internal/observable/using.js","../node_modules/rxjs/dist/cjs/internal/observable/zip.js","../node_modules/rxjs/dist/cjs/internal/types.js","../node_modules/rxjs/dist/cjs/internal/operators/audit.js","../node_modules/rxjs/dist/cjs/internal/operators/auditTime.js","../node_modules/rxjs/dist/cjs/internal/operators/buffer.js","../node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js","../node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js","../node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js","../node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js","../node_modules/rxjs/dist/cjs/internal/operators/catchError.js","../node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js","../node_modules/rxjs/dist/cjs/internal/operators/reduce.js","../node_modules/rxjs/dist/cjs/internal/operators/toArray.js","../node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js","../node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js","../node_modules/rxjs/dist/cjs/internal/operators/combineAll.js","../node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js","../node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js","../node_modules/rxjs/dist/cjs/internal/operators/concatMap.js","../node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js","../node_modules/rxjs/dist/cjs/internal/operators/concat.js","../node_modules/rxjs/dist/cjs/internal/operators/concatWith.js","../node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js","../node_modules/rxjs/dist/cjs/internal/operators/connect.js","../node_modules/rxjs/dist/cjs/internal/operators/count.js","../node_modules/rxjs/dist/cjs/internal/operators/debounce.js","../node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js","../node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js","../node_modules/rxjs/dist/cjs/internal/operators/take.js","../node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js","../node_modules/rxjs/dist/cjs/internal/operators/mapTo.js","../node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js","../node_modules/rxjs/dist/cjs/internal/operators/delay.js","../node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js","../node_modules/rxjs/dist/cjs/internal/operators/distinct.js","../node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js","../node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js","../node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js","../node_modules/rxjs/dist/cjs/internal/operators/elementAt.js","../node_modules/rxjs/dist/cjs/internal/operators/endWith.js","../node_modules/rxjs/dist/cjs/internal/operators/every.js","../node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js","../node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js","../node_modules/rxjs/dist/cjs/internal/operators/exhaust.js","../node_modules/rxjs/dist/cjs/internal/operators/expand.js","../node_modules/rxjs/dist/cjs/internal/operators/finalize.js","../node_modules/rxjs/dist/cjs/internal/operators/find.js","../node_modules/rxjs/dist/cjs/internal/operators/findIndex.js","../node_modules/rxjs/dist/cjs/internal/operators/first.js","../node_modules/rxjs/dist/cjs/internal/operators/groupBy.js","../node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js","../node_modules/rxjs/dist/cjs/internal/operators/takeLast.js","../node_modules/rxjs/dist/cjs/internal/operators/last.js","../node_modules/rxjs/dist/cjs/internal/operators/materialize.js","../node_modules/rxjs/dist/cjs/internal/operators/max.js","../node_modules/rxjs/dist/cjs/internal/operators/flatMap.js","../node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js","../node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js","../node_modules/rxjs/dist/cjs/internal/operators/merge.js","../node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js","../node_modules/rxjs/dist/cjs/internal/operators/min.js","../node_modules/rxjs/dist/cjs/internal/operators/multicast.js","../node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js","../node_modules/rxjs/dist/cjs/internal/operators/pairwise.js","../node_modules/rxjs/dist/cjs/internal/operators/pluck.js","../node_modules/rxjs/dist/cjs/internal/operators/publish.js","../node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js","../node_modules/rxjs/dist/cjs/internal/operators/publishLast.js","../node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js","../node_modules/rxjs/dist/cjs/internal/operators/raceWith.js","../node_modules/rxjs/dist/cjs/internal/operators/repeat.js","../node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js","../node_modules/rxjs/dist/cjs/internal/operators/retry.js","../node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js","../node_modules/rxjs/dist/cjs/internal/operators/sample.js","../node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js","../node_modules/rxjs/dist/cjs/internal/operators/scan.js","../node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js","../node_modules/rxjs/dist/cjs/internal/operators/share.js","../node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js","../node_modules/rxjs/dist/cjs/internal/operators/single.js","../node_modules/rxjs/dist/cjs/internal/operators/skip.js","../node_modules/rxjs/dist/cjs/internal/operators/skipLast.js","../node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js","../node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js","../node_modules/rxjs/dist/cjs/internal/operators/startWith.js","../node_modules/rxjs/dist/cjs/internal/operators/switchMap.js","../node_modules/rxjs/dist/cjs/internal/operators/switchAll.js","../node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js","../node_modules/rxjs/dist/cjs/internal/operators/switchScan.js","../node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js","../node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js","../node_modules/rxjs/dist/cjs/internal/operators/tap.js","../node_modules/rxjs/dist/cjs/internal/operators/throttle.js","../node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js","../node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js","../node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js","../node_modules/rxjs/dist/cjs/internal/operators/timestamp.js","../node_modules/rxjs/dist/cjs/internal/operators/window.js","../node_modules/rxjs/dist/cjs/internal/operators/windowCount.js","../node_modules/rxjs/dist/cjs/internal/operators/windowTime.js","../node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js","../node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js","../node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js","../node_modules/rxjs/dist/cjs/internal/operators/zipAll.js","../node_modules/rxjs/dist/cjs/internal/operators/zip.js","../node_modules/rxjs/dist/cjs/internal/operators/zipWith.js","../node_modules/rxjs/dist/cjs/index.js","../src/core/kafka-trace.interceptor.ts","../src/core/trace.middleware.ts","../src/core/websocket-trace.interceptor.ts","../src/core/logitron-logger.module.ts"],"sourcesContent":["/**\n * LogixiaContext — Zero-boilerplate AsyncLocalStorage context propagation.\n *\n * Lets every `logger.info()` call inside a context automatically pick up stored\n * fields (requestId, userId, tenantId, …) without passing them through every function.\n *\n * Works across `Promise.all`, `setTimeout`, and event emitters — anything that\n * inherits the async execution context.\n *\n * @example\n * ```ts\n * import { LogixiaContext } from 'logixia';\n *\n * // Wrap a request handler:\n * app.use((req, res, next) => {\n * LogixiaContext.run({ requestId: req.id, userId: req.user?.id }, next);\n * });\n *\n * // Anywhere deeper in the call tree:\n * async function processOrder(orderId: string) {\n * const ctx = LogixiaContext.get(); // { requestId, userId, orderId }\n * logger.info('Processing order', { orderId, ...ctx });\n * }\n * ```\n */\n\nimport { AsyncLocalStorage } from 'node:async_hooks';\n\nexport interface LogContext {\n requestId?: string;\n traceId?: string;\n spanId?: string;\n userId?: string;\n tenantId?: string;\n sessionId?: string;\n [key: string]: unknown;\n}\n\n// Module-level singleton so all loggers share the same ALS store.\nconst _storage = new AsyncLocalStorage<LogContext>();\n\nexport const LogixiaContext = {\n /**\n * Run `callback` inside an async context that carries `store` fields.\n * All loggers queried within `callback` (and its async descendants) will\n * automatically see these fields.\n *\n * @example\n * ```ts\n * LogixiaContext.run({ requestId: 'abc', userId: '42' }, async () => {\n * await processOrder(); // sees requestId + userId in every log\n * });\n * ```\n */\n run<T>(store: LogContext, callback: () => T): T {\n const parent = _storage.getStore() ?? {};\n return _storage.run({ ...parent, ...store }, callback);\n },\n\n /**\n * Return the context fields active in the current async scope.\n * Returns `undefined` when called outside any `LogixiaContext.run()`.\n */\n get(): LogContext | undefined {\n return _storage.getStore();\n },\n\n /**\n * Merge `fields` into the **existing** context for the current scope.\n * If called outside a `run()` context this is a no-op (logs a dev warning).\n */\n set(fields: Partial<LogContext>): void {\n const store = _storage.getStore();\n if (!store) {\n // Silently ignore — avoids crashing in code that may call setContext\n // before a request context is established (e.g. background jobs).\n return;\n }\n Object.assign(store, fields);\n },\n\n /**\n * Retrieve the underlying `AsyncLocalStorage` instance.\n * Useful for advanced use-cases like custom middleware.\n */\n getStorage(): AsyncLocalStorage<LogContext> {\n return _storage;\n },\n};\n\n/**\n * Create an Express/Connect-compatible middleware that wraps each request in\n * a `LogixiaContext.run()` scope populated with common request fields.\n *\n * @example\n * ```ts\n * import { createExpressContextMiddleware } from 'logixia';\n * app.use(createExpressContextMiddleware());\n * ```\n */\nexport function createExpressContextMiddleware(\n options: {\n /** Extract additional fields from the request. */\n enrich?: (req: Record<string, unknown>) => Partial<LogContext>;\n /** Header to read the requestId from. Default: 'x-request-id'. */\n requestIdHeader?: string;\n /** Header to read the traceId from. Default: 'x-trace-id'. */\n traceIdHeader?: string;\n } = {}\n) {\n const { enrich, requestIdHeader = 'x-request-id', traceIdHeader = 'x-trace-id' } = options;\n\n return function logixiaContextMiddleware(\n req: Record<string, unknown>,\n _res: unknown,\n next: () => void\n ): void {\n const headers = (req['headers'] ?? {}) as Record<string, string | undefined>;\n const traceId = headers[traceIdHeader];\n const base: LogContext = {\n requestId:\n (headers[requestIdHeader] as string | undefined) ?? crypto.randomUUID().slice(0, 8),\n ...(traceId !== undefined ? { traceId } : {}),\n };\n LogixiaContext.run({ ...base, ...(enrich ? enrich(req) : {}) }, next);\n };\n}\n\n/**\n * Create a Fastify lifecycle hook that wraps each request in a context scope.\n *\n * Register with `fastify.addHook('onRequest', createFastifyContextHook())`.\n */\nexport function createFastifyContextHook(\n options: {\n enrich?: (request: Record<string, unknown>) => Partial<LogContext>;\n requestIdHeader?: string;\n traceIdHeader?: string;\n } = {}\n) {\n const { enrich, requestIdHeader = 'x-request-id', traceIdHeader = 'x-trace-id' } = options;\n\n return function logixiaFastifyHook(\n request: Record<string, unknown>,\n _reply: unknown,\n done: () => void\n ): void {\n const headers = (request['headers'] ?? {}) as Record<string, string | undefined>;\n const traceId = headers[traceIdHeader];\n const base: LogContext = {\n requestId:\n (headers[requestIdHeader] as string | undefined) ??\n (request['id'] as string | undefined) ??\n crypto.randomUUID().slice(0, 8),\n ...(traceId !== undefined ? { traceId } : {}),\n };\n LogixiaContext.run({ ...base, ...(enrich ? enrich(request) : {}) }, done);\n };\n}\n","/**\n * Core type definitions for Logitron Logger\n */\n\nimport type { HttpRequest, HttpResponse } from './http.types';\n\n// Log levels const object for better flexibility\nexport const LogLevel = {\n ERROR: 'error',\n WARN: 'warn',\n INFO: 'info',\n DEBUG: 'debug',\n TRACE: 'trace',\n VERBOSE: 'verbose',\n} as const;\n\nexport type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];\nexport type LogLevelString = LogLevel | (string & {});\n\n// Predefined color types\nexport type LogColor =\n | 'black'\n | 'red'\n | 'green'\n | 'yellow'\n | 'blue'\n | 'magenta'\n | 'cyan'\n | 'white'\n | 'gray'\n | 'grey'\n | 'brightRed'\n | 'brightGreen'\n | 'brightYellow'\n | 'brightBlue'\n | 'brightMagenta'\n | 'brightCyan'\n | 'brightWhite';\n\n// Predefined field keys that can be enabled/disabled\nexport type LogFieldKey =\n | 'timestamp'\n | 'level'\n | 'appName'\n | 'service'\n | 'traceId'\n | 'message'\n | 'payload'\n | 'timeTaken'\n | 'context'\n | 'requestId'\n | 'userId'\n | 'sessionId'\n | 'environment';\n\n// Environment types\nexport type Environment = 'development' | 'production';\n\n// Trace ID configuration\nexport interface TraceIdExtractorConfig {\n header?: string | string[];\n query?: string | string[];\n body?: string | string[];\n params?: string | string[];\n}\n\nexport interface TraceIdConfig {\n enabled: boolean;\n generator?: () => string;\n contextKey?: string;\n extractor?: TraceIdExtractorConfig;\n}\n\n// ── Redaction ──────────────────────────────────────────────────────────────────\nexport interface RedactConfig {\n /**\n * Dot-notation field paths to redact. Supports `*` (one segment) and `**` (any depth).\n * @example `['req.headers.authorization', '*.password', 'user.creditCard']`\n */\n paths?: string[];\n /**\n * Regex patterns applied to string values — replaces matches with the censor string.\n * @example `[/Bearer\\s+\\S+/gi, /sk-[a-z0-9]{32,}/gi]`\n */\n patterns?: RegExp[];\n /** Replacement value for redacted content. Default: `\"[REDACTED]\"` */\n censor?: string;\n}\n\n// ── Log Sampling ───────────────────────────────────────────────────────────────\n/**\n * Built-in log sampling / rate limiting.\n *\n * @example\n * ```ts\n * sampling: {\n * rate: 0.1, // log 10% of all entries\n * perLevel: { debug: 0.01 }, // override: debug at 1%\n * maxLogsPerSecond: 500, // hard cap — extras dropped\n * traceConsistent: true, // if a traceId is sampled, keep all logs for that trace\n * }\n * ```\n */\nexport interface SamplingConfig {\n /**\n * Global sample rate for all log levels: 0.0 (drop all) → 1.0 (keep all).\n * Default: 1.0 (no sampling).\n */\n rate?: number;\n /**\n * Per-level rate overrides. Unmentioned levels fall back to `rate`.\n * ERROR and WARN default to 1.0 even when a lower global rate is set,\n * unless you explicitly override them here.\n * @example `{ debug: 0.05, info: 0.5 }`\n */\n perLevel?: Partial<Record<string, number>>;\n /**\n * Hard cap on logs emitted per second across all levels.\n * Excess entries are silently dropped and counted in the sampling stats.\n * Default: unlimited.\n */\n maxLogsPerSecond?: number;\n /**\n * When true, all log entries sharing a traceId are either all kept or all\n * dropped — preventing a sampled trace from having missing log entries.\n * Default: false.\n */\n traceConsistent?: boolean;\n /**\n * Emit a periodic sampling stats entry at this interval (ms).\n * Stats include: sampled, dropped, and rate per level over the window.\n * Set to 0 to disable. Default: 60_000 (60 s).\n */\n statsIntervalMs?: number;\n}\n\n// ── Namespace Levels ───────────────────────────────────────────────────────────\n/**\n * Per-namespace log level overrides.\n * Keys are namespace patterns (dot-separated, `*` wildcard); values are log levels.\n *\n * @example\n * ```ts\n * namespaceLevels: {\n * 'db.*': 'debug', // all db.* namespaces → DEBUG\n * 'http.*': 'warn', // all http.* → WARN only\n * 'payment': 'trace', // payment namespace → TRACE\n * }\n * ```\n * ENV overrides: `LOGIXIA_LEVEL_DB=debug` maps to namespace `db`.\n */\nexport type NamespaceLevels = Record<string, LogLevelString>;\n\n// ── Graceful Shutdown ──────────────────────────────────────────────────────────\nexport interface GracefulShutdownConfig {\n /** Auto-register SIGTERM/SIGINT handlers to flush this logger on exit. Default: false */\n enabled: boolean;\n /** Max ms to wait for transports to flush. Default: 5000 */\n timeout?: number;\n /** Signals to listen on. Default: ['SIGTERM', 'SIGINT'] */\n signals?: NodeJS.Signals[];\n}\n\nexport interface LoggerConfig<TLevels extends Record<string, number> = Record<string, number>> {\n appName?: string;\n environment?: Environment;\n traceId?: boolean | TraceIdConfig;\n format?: {\n timestamp?: boolean;\n colorize?: boolean;\n json?: boolean;\n };\n silent?: boolean;\n levelOptions?:\n | {\n level?: keyof TLevels | LogLevelString;\n levels?: TLevels;\n colors?: Record<string, LogColor>;\n }\n | undefined;\n fields?: Partial<Record<LogFieldKey, string | boolean>>;\n /**\n * Built-in log redaction — masks sensitive fields before they reach any transport.\n * @see RedactConfig\n */\n redact?: RedactConfig;\n /**\n * Per-namespace log level overrides.\n * A child logger's context is used as its namespace for matching.\n * ENV vars `LOGIXIA_LEVEL_<NS>=<level>` also apply.\n */\n namespaceLevels?: NamespaceLevels;\n /**\n * Automatically register SIGTERM/SIGINT handlers that flush all transports\n * before the process exits — prevents losing the last N seconds of logs on\n * deployments / restarts.\n */\n gracefulShutdown?: boolean | GracefulShutdownConfig;\n /**\n * Built-in log sampling & rate limiting.\n * Completely missing from all existing loggers — eliminates the need to\n * implement sampling logic in application code.\n */\n sampling?: SamplingConfig;\n [key: string]: unknown;\n}\n\n// Base logger interface with standard methods\nexport interface IBaseLogger {\n error(message: string, data?: Record<string, unknown>): Promise<void>;\n error(error: Error, data?: Record<string, unknown>): Promise<void>;\n warn(message: string, data?: Record<string, unknown>): Promise<void>;\n info(message: string, data?: Record<string, unknown>): Promise<void>;\n debug(message: string, data?: Record<string, unknown>): Promise<void>;\n trace(message: string, data?: Record<string, unknown>): Promise<void>;\n verbose(message: string, data?: Record<string, unknown>): Promise<void>;\n logLevel(level: string, message: string, data?: Record<string, unknown>): Promise<void>;\n\n time(label: string): void;\n timeEnd(label: string): Promise<number | undefined>;\n timeAsync<T>(label: string, fn: () => Promise<T>): Promise<T>;\n\n setLevel(level: LogLevel | string): void;\n getLevel(): string;\n setContext(context: string): void;\n getContext(): string | undefined;\n\n // Field Management Methods\n enableField(fieldName: string): void;\n disableField(fieldName: string): void;\n isFieldEnabled(fieldName: string): boolean;\n getFieldState(): Record<string, boolean>;\n resetFieldState(): void;\n\n // Transport Level Management Methods\n enableTransportLevelPrompting(): void;\n disableTransportLevelPrompting(): void;\n setTransportLevels(transportId: string, levels: string[]): void;\n getTransportLevels(transportId: string): string[] | undefined;\n clearTransportLevelPreferences(): void;\n getAvailableTransports(): string[];\n\n child(context: string, data?: Record<string, unknown>): ILogger;\n close(): Promise<void>;\n}\n\n// Type for custom level methods based on config\nexport type CustomLevelMethods<T extends Record<string, number>> = {\n [K in keyof T]: (message: string, data?: Record<string, unknown>) => Promise<void>;\n};\n\n// Generic logger type that combines base logger with custom level methods\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type -- empty default is intentional for optional generic\nexport type ILogger<TLevels extends Record<string, number> = {}> = IBaseLogger &\n CustomLevelMethods<TLevels>;\n\n// Default logger interface for backward compatibility\n// eslint-disable-next-line @typescript-eslint/no-empty-object-type -- marker interface for backward compat\nexport interface ILoggerDefault extends IBaseLogger {}\n\n// Helper type to create logger with specific custom levels\n// eslint-disable-next-line @typescript-eslint/no-explicit-any -- generic type needs any to accept all LoggerConfig shapes\nexport type LoggerWithLevels<T extends LoggerConfig<any>> = T['levelOptions'] extends {\n levels: infer L;\n}\n ? L extends Record<string, number>\n ? ILogger<L>\n : ILoggerDefault\n : ILoggerDefault;\n\n// Helper type to extract levels from config for IntelliSense\nexport type ExtractLevels<T> = T extends LoggerConfig<infer L> ? L : Record<string, number>;\n\n// Log entry interface\nexport interface LogEntry {\n timestamp: string;\n level: string;\n appName: string;\n environment?: string;\n traceId?: string;\n message: string;\n payload?: Record<string, unknown>;\n context?: string;\n error?: Error;\n}\n\n// Error serialization options\nexport interface ErrorSerializationOptions {\n includeStack?: boolean;\n maxDepth?: number;\n excludeFields?: string[];\n}\n\n// Timing entry interface\nexport interface TimingEntry {\n label: string;\n startTime: number;\n endTime?: number;\n duration?: number;\n}\n\n// Context data interface\nexport interface ContextData {\n [key: string]: unknown;\n}\n\n// Log formatter interface\nexport interface ILogFormatter {\n format(entry: LogEntry): string;\n}\n\n// Request context interface for tracking request lifecycle\nexport interface RequestContext {\n requestId: string;\n traceId?: string;\n startTime: number;\n endTime?: number;\n duration?: number;\n request: HttpRequest;\n response?: HttpResponse;\n error?: Error;\n userId?: string;\n sessionId?: string;\n userAgent?: string;\n ip?: string;\n}\n\n// Default log levels with colors\nexport const DEFAULT_LOG_LEVELS = {\n error: 0,\n warn: 1,\n info: 2,\n debug: 3,\n trace: 4,\n verbose: 5,\n};\n\nexport const DEFAULT_LOG_COLORS = {\n error: 'red',\n warn: 'yellow',\n info: 'green',\n debug: 'blue',\n trace: 'magenta',\n verbose: 'cyan',\n};\n\n// Additional exports for compatibility\nexport type { LoggerConfig as LoggerConfigInterface };\n\n// Export all HTTP types\nexport * from './http.types';\n","/**\n * Error serialization utilities for Logixia\n *\n * v1.1 improvements:\n * - Full ES2022 `cause` chain serialization (recursive)\n * - AggregateError.errors array serialization\n * - Standard extra fields: code, statusCode, status, errno, syscall, path\n * - Circular-reference safe via a WeakSet seen guard\n */\n\nimport type { ErrorSerializationOptions } from '../types';\n\n// Well-known extra fields to always capture when present on an error\nconst EXTRA_FIELDS = [\n 'code',\n 'statusCode',\n 'status',\n 'errno',\n 'syscall',\n 'path',\n 'address',\n 'port',\n 'type',\n] as const;\n\n/**\n * Serialize an Error into a plain JSON-safe object, including:\n * - `name`, `message`, `stack`\n * - `cause` (recursively serialized, full ES2022 chain)\n * - `errors` (for AggregateError)\n * - standard Node.js error fields (`code`, `statusCode`, `errno`, …)\n * - any other enumerable own properties\n */\nexport function serializeError(\n error: Error,\n options: ErrorSerializationOptions = {}\n): Record<string, unknown> {\n const { includeStack = true, maxDepth = 5, excludeFields = [] } = options;\n const seen = new WeakSet<object>();\n return _serializeError(error, includeStack, maxDepth, excludeFields, 0, seen);\n}\n\nfunction _serializeError(\n error: Error,\n includeStack: boolean,\n maxDepth: number,\n excludeFields: string[],\n depth: number,\n seen: WeakSet<object>\n): Record<string, unknown> {\n if (depth >= maxDepth) {\n return { name: error.name, message: error.message, _truncated: true };\n }\n\n if (seen.has(error)) {\n return { name: error.name, message: error.message, _circular: true };\n }\n seen.add(error);\n\n const serialized: Record<string, unknown> = {\n name: error.name,\n message: error.message,\n };\n\n if (includeStack && error.stack) {\n serialized.stack = error.stack;\n }\n\n // ── ES2022 cause chain ──────────────────────────────────────────────────────\n const errorWithCause = error as Error & { cause?: unknown };\n if (errorWithCause.cause !== undefined) {\n if (errorWithCause.cause instanceof Error) {\n serialized.cause = _serializeError(\n errorWithCause.cause,\n includeStack,\n maxDepth,\n excludeFields,\n depth + 1,\n seen\n );\n } else {\n serialized.cause = serializeValue(errorWithCause.cause, maxDepth - depth - 1);\n }\n }\n\n // ── AggregateError.errors ───────────────────────────────────────────────────\n const aggregateError = error as Error & { errors?: unknown[] };\n if (Array.isArray(aggregateError.errors)) {\n serialized.errors = aggregateError.errors.map((e) =>\n e instanceof Error\n ? _serializeError(e, includeStack, maxDepth, excludeFields, depth + 1, seen)\n : serializeValue(e, maxDepth - depth - 1)\n );\n }\n\n // ── Standard Node.js / HTTP error fields ───────────────────────────────────\n const errorRecord = error as unknown as Record<string, unknown>;\n for (const field of EXTRA_FIELDS) {\n if (!excludeFields.includes(field) && field in error && errorRecord[field] !== undefined) {\n serialized[field] = errorRecord[field];\n }\n }\n\n // ── All other own enumerable properties ────────────────────────────────────\n const skip = new Set<string>([\n 'name',\n 'message',\n 'stack',\n 'cause',\n 'errors',\n ...EXTRA_FIELDS,\n ...excludeFields,\n ]);\n\n for (const key of Object.getOwnPropertyNames(error)) {\n if (skip.has(key)) continue;\n try {\n serialized[key] = serializeValue(errorRecord[key], maxDepth - depth - 1);\n } catch {\n serialized[key] = '[Unserializable]';\n }\n }\n\n return serialized;\n}\n\n/**\n * Recursively serialize an arbitrary value to a JSON-safe representation.\n */\nfunction serializeValue(value: unknown, remainingDepth: number): unknown {\n if (remainingDepth <= 0) return '[Max Depth]';\n if (value === null || value === undefined) return value;\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n return value;\n }\n\n if (value instanceof Date) return value.toISOString();\n\n if (value instanceof Error) {\n return _serializeError(value, true, remainingDepth, [], 0, new WeakSet());\n }\n\n if (Array.isArray(value)) {\n return value.map((item) => serializeValue(item, remainingDepth - 1));\n }\n\n if (typeof value === 'object') {\n const out: Record<string, unknown> = {};\n for (const [k, v] of Object.entries(value as Record<string, unknown>)) {\n try {\n out[k] = serializeValue(v, remainingDepth - 1);\n } catch {\n out[k] = '[Unserializable]';\n }\n }\n return out;\n }\n\n return String(value);\n}\n\n/**\n * Type guard: returns true if the value looks like an Error object.\n */\nexport function isError(value: unknown): value is Error {\n return (\n value instanceof Error ||\n (Boolean(value) &&\n typeof value === 'object' &&\n 'name' in (value as object) &&\n 'message' in (value as object))\n );\n}\n\n/**\n * Coerce any thrown value into a proper Error instance.\n */\nexport function normalizeError(error: unknown): Error {\n if (isError(error)) return error;\n\n if (typeof error === 'string') return new Error(error);\n\n if (typeof error === 'object' && error !== null) {\n const e = error as Record<string, unknown>;\n const err = new Error(typeof e['message'] === 'string' ? e['message'] : 'Unknown error');\n Object.assign(err, error);\n return err;\n }\n\n return new Error(String(error));\n}\n","/**\n * Log redaction utilities for Logixia\n *\n * Solves the #1 logging security problem: sensitive data (PII, secrets, tokens)\n * being logged to transports that shouldn't have them.\n *\n * Addresses Winston issue #1079 \"redacting secrets\" which has been open for years\n * with no built-in solution.\n *\n * @example\n * ```ts\n * const logger = createLogger({\n * redact: {\n * paths: ['req.headers.authorization', '*.password', 'user.creditCard', 'token'],\n * patterns: [/Bearer\\s+\\S+/gi, /sk-[a-z0-9]{32,}/gi],\n * censor: '[REDACTED]',\n * }\n * });\n * ```\n */\n\nimport type { RedactConfig } from '../types';\n\nexport type { RedactConfig };\n\nconst DEFAULT_CENSOR = '[REDACTED]';\n\n/**\n * Convert a dot-notation path pattern to a RegExp.\n * Supports `*` (one segment) and `**` (zero or more segments).\n *\n * Examples:\n * \"password\" → /^password$/\n * \"user.password\" → /^user\\.password$/\n * \"*.token\" → /^[^.]+\\.token$/\n * \"req.headers.*\" → /^req\\.headers\\.[^.]+$/\n * \"**\" → /^.*$/\n */\nfunction pathToRegExp(pattern: string): RegExp {\n const regexStr = pattern\n .split('.')\n .map((segment) => {\n if (segment === '**') return '.*';\n if (segment === '*') return '[^.]+';\n // Escape regex special chars in the segment\n return segment.replace(/[$()*+.?[\\\\\\]^{|}]/g, '\\\\$&');\n })\n .join('\\\\.');\n\n return new RegExp(`^${regexStr}$`);\n}\n\n/** Pre-compiled path matchers keyed by pattern string for perf */\nconst patternCache = new Map<string, RegExp>();\n\nfunction matchesPath(fullPath: string, pattern: string): boolean {\n let re = patternCache.get(pattern);\n if (!re) {\n re = pathToRegExp(pattern);\n patternCache.set(pattern, re);\n }\n return re.test(fullPath);\n}\n\n/**\n * Deep-clone and redact an object according to the given RedactConfig.\n * Non-objects are returned as-is (with pattern replacement on strings).\n *\n * The function is intentionally non-mutating — it returns a new object.\n */\nexport function redactObject(\n obj: Record<string, unknown>,\n config: RedactConfig,\n _currentPath = ''\n): Record<string, unknown> {\n const { paths = [], patterns = [], censor = DEFAULT_CENSOR } = config;\n const result: Record<string, unknown> = {};\n\n for (const [key, value] of Object.entries(obj)) {\n const fullPath = _currentPath ? `${_currentPath}.${key}` : key;\n\n // ── 1. Path-based redaction ──────────────────────────────────────────────\n if (paths.length > 0 && paths.some((p) => matchesPath(fullPath, p))) {\n result[key] = censor;\n continue;\n }\n\n // ── 2. Recurse into plain objects ────────────────────────────────────────\n if (isPlainObject(value)) {\n result[key] = redactObject(value as Record<string, unknown>, config, fullPath);\n continue;\n }\n\n // ── 3. Pattern-based redaction on string values ──────────────────────────\n if (typeof value === 'string' && patterns.length > 0) {\n let redacted = value;\n for (const pattern of patterns) {\n redacted = redacted.replace(pattern, censor);\n }\n result[key] = redacted;\n continue;\n }\n\n // ── 4. Recurse into arrays ───────────────────────────────────────────────\n if (Array.isArray(value)) {\n result[key] = value.map((item) => {\n if (isPlainObject(item)) {\n return redactObject(item as Record<string, unknown>, config, fullPath);\n }\n if (typeof item === 'string' && patterns.length > 0) {\n return patterns.reduce((s, p) => s.replace(p, censor), item);\n }\n return item;\n });\n continue;\n }\n\n // ── 5. Pass-through ──────────────────────────────────────────────────────\n result[key] = value;\n }\n\n return result;\n}\n\n/**\n * Apply redaction to a log payload (top-level call convenience wrapper).\n * Returns a new object — never mutates the input.\n */\nexport function applyRedaction(\n payload: Record<string, unknown> | undefined,\n config: RedactConfig | undefined\n): Record<string, unknown> | undefined {\n if (!payload || !config) return payload;\n if (\n (!config.paths || config.paths.length === 0) &&\n (!config.patterns || config.patterns.length === 0)\n ) {\n return payload;\n }\n return redactObject(payload, config);\n}\n\nfunction isPlainObject(value: unknown): boolean {\n return (\n value !== null &&\n typeof value === 'object' &&\n !Array.isArray(value) &&\n !(value instanceof Date) &&\n !(value instanceof Error) &&\n !(value instanceof RegExp)\n );\n}\n","/**\n * Log sampling & rate-limiting engine.\n *\n * Completely stateless between log calls — all state lives in the Sampler instance\n * so multiple loggers can have independent sampling budgets.\n */\n\nimport type { SamplingConfig } from '../types';\n\n// Safety-critical levels that are NEVER sampled below 100 % by default.\nconst ALWAYS_EMIT_LEVELS = new Set(['error', 'fatal']);\n\n// ── Sampler ───────────────────────────────────────────────────────────────────\n\nexport interface SamplingStats {\n /** Total calls evaluated since last reset. */\n evaluated: number;\n /** Total calls emitted (passed through). */\n emitted: number;\n /** Total calls dropped. */\n dropped: number;\n /** Per-level breakdown. */\n byLevel: Record<string, { evaluated: number; emitted: number }>;\n /** Window start (ms since epoch). */\n windowStart: number;\n}\n\nexport class Sampler {\n private readonly config: SamplingConfig;\n /** Trace IDs that have been sampled in this window → always emit. */\n private readonly sampledTraces = new Set<string>();\n /** Trace IDs that have been dropped in this window → always drop. */\n private readonly droppedTraces = new Set<string>();\n\n // Rate-limiting state\n private _tokenBucket = 0;\n private _lastRefillMs = Date.now();\n\n // Stats\n private _stats: SamplingStats = {\n evaluated: 0,\n emitted: 0,\n dropped: 0,\n byLevel: {},\n windowStart: Date.now(),\n };\n private _statsTimer?: ReturnType<typeof setInterval>;\n\n constructor(config: SamplingConfig, onStats?: (stats: SamplingStats) => void) {\n this.config = config;\n\n // Initialise token bucket to the max cap\n if (config.maxLogsPerSecond && config.maxLogsPerSecond > 0) {\n this._tokenBucket = config.maxLogsPerSecond;\n }\n\n // Periodic stats reporter\n const interval = config.statsIntervalMs ?? 60_000;\n if (interval > 0 && onStats) {\n this._statsTimer = setInterval(() => {\n const snapshot = this.getStats();\n onStats(snapshot);\n this.resetStats();\n }, interval);\n // Don't prevent process exit\n if (this._statsTimer.unref) this._statsTimer.unref();\n }\n }\n\n /**\n * Decide whether a given log entry should be emitted.\n *\n * @param level Log level string (lowercase)\n * @param traceId Active trace ID, if any\n * @returns true → emit, false → drop\n */\n shouldEmit(level: string, traceId?: string): boolean {\n const lvl = level.toLowerCase();\n this._trackEvaluated(lvl);\n\n // ── 1. Safety: error/fatal always pass (unless explicitly overridden) ─────\n if (ALWAYS_EMIT_LEVELS.has(lvl) && this.config.perLevel?.[lvl] === undefined) {\n this._trackEmitted(lvl);\n return true;\n }\n\n // ── 2. Trace-consistent sampling ──────────────────────────────────────────\n if (this.config.traceConsistent && traceId) {\n if (this.sampledTraces.has(traceId)) {\n this._trackEmitted(lvl);\n return true;\n }\n if (this.droppedTraces.has(traceId)) {\n this._trackDropped(lvl);\n return false;\n }\n // First time we see this traceId — make the sampling decision now\n const emit = this._sampleByRate(lvl);\n if (emit) {\n this.sampledTraces.add(traceId);\n } else {\n this.droppedTraces.add(traceId);\n }\n if (emit) this._trackEmitted(lvl);\n else this._trackDropped(lvl);\n return emit;\n }\n\n // ── 3. Rate-based sampling ─────────────────────────────────────────────────\n const emit = this._sampleByRate(lvl);\n if (!emit) {\n this._trackDropped(lvl);\n return false;\n }\n\n // ── 4. Hard cap (token bucket) ────────────────────────────────────────────\n if (this.config.maxLogsPerSecond && this.config.maxLogsPerSecond > 0) {\n if (!this._consumeToken()) {\n this._trackDropped(lvl);\n return false;\n }\n }\n\n this._trackEmitted(lvl);\n return true;\n }\n\n getStats(): SamplingStats {\n return { ...this._stats, byLevel: { ...this._stats.byLevel } };\n }\n\n resetStats(): void {\n this._stats = {\n evaluated: 0,\n emitted: 0,\n dropped: 0,\n byLevel: {},\n windowStart: Date.now(),\n };\n // Clear trace sets so long-running processes don't accumulate unbounded memory\n this.sampledTraces.clear();\n this.droppedTraces.clear();\n }\n\n destroy(): void {\n if (this._statsTimer) clearInterval(this._statsTimer);\n }\n\n // ── Private helpers ─────────────────────────────────────────────────────────\n\n private _sampleByRate(level: string): boolean {\n const rate =\n this.config.perLevel?.[level] ?? this.config.perLevel?.['*'] ?? this.config.rate ?? 1.0;\n\n if (rate >= 1.0) return true;\n if (rate <= 0.0) return false;\n // eslint-disable-next-line sonarjs/pseudo-random -- probabilistic sampling, not security-sensitive\n return Math.random() < rate;\n }\n\n private _consumeToken(): boolean {\n const now = Date.now();\n const elapsed = (now - this._lastRefillMs) / 1000;\n const max = this.config.maxLogsPerSecond!;\n\n // Refill tokens proportional to elapsed time\n this._tokenBucket = Math.min(max, this._tokenBucket + elapsed * max);\n this._lastRefillMs = now;\n\n if (this._tokenBucket >= 1) {\n this._tokenBucket -= 1;\n return true;\n }\n return false;\n }\n\n private _ensure(level: string): void {\n if (!this._stats.byLevel[level]) {\n this._stats.byLevel[level] = { evaluated: 0, emitted: 0 };\n }\n }\n\n private _trackEvaluated(level: string): void {\n this._stats.evaluated++;\n this._ensure(level);\n this._stats.byLevel[level]!.evaluated++;\n }\n\n private _trackEmitted(level: string): void {\n this._stats.emitted++;\n this._ensure(level);\n this._stats.byLevel[level]!.emitted++;\n }\n\n private _trackDropped(_level: string): void {\n this._stats.dropped++;\n }\n}\n","/**\n * Graceful shutdown utilities for Logixia\n *\n * Ensures all in-flight logs are flushed to every transport before the process\n * exits on SIGTERM / SIGINT — solving the \"last N seconds of logs are lost on\n * deployment\" problem reported in Pino issue #2002 and LogDNA issue #15.\n */\n\nexport interface FlushOnExitOptions {\n /** How long (ms) to wait for transports to flush before force-exiting. Default: 5000 */\n timeout?: number;\n /** OS signals that trigger a graceful flush. Default: ['SIGTERM', 'SIGINT'] */\n signals?: NodeJS.Signals[];\n /** Called just before flushing starts — useful for stopping traffic intake */\n beforeFlush?: () => void | Promise<void>;\n /** Called after all loggers have flushed successfully */\n afterFlush?: () => void | Promise<void>;\n}\n\ntype Closeable = { close(): Promise<void> };\n\n/** Module-level registry of all logger instances that have opted into graceful shutdown */\nconst registry = new Set<Closeable>();\nlet shutdownHandlerRegistered = false;\n\n/**\n * Register a logger instance so it is included in the graceful shutdown flush.\n * Called automatically when `gracefulShutdown: true` is set in logger config.\n */\nexport function registerForShutdown(logger: Closeable): void {\n registry.add(logger);\n}\n\n/**\n * Deregister a logger (e.g. after `logger.close()` is called manually).\n */\nexport function deregisterFromShutdown(logger: Closeable): void {\n registry.delete(logger);\n}\n\n/**\n * Register SIGTERM / SIGINT handlers that flush all registered loggers before\n * the process exits. Idempotent — calling multiple times is safe.\n *\n * @example\n * ```ts\n * import { flushOnExit } from 'logixia';\n * flushOnExit({ timeout: 5000 });\n * ```\n */\nexport function flushOnExit(options: FlushOnExitOptions = {}): void {\n if (shutdownHandlerRegistered) return;\n shutdownHandlerRegistered = true;\n\n const { timeout = 5000, signals = ['SIGTERM', 'SIGINT'], beforeFlush, afterFlush } = options;\n\n const handler = async (signal: NodeJS.Signals) => {\n // Force-exit safety net — if flushing hangs, don't block the process forever\n const forceExitTimer = setTimeout(() => {\n process.stderr.write(\n `[logixia] Graceful shutdown timed out after ${timeout}ms on ${signal}. Force-exiting.\\n`\n );\n process.exit(1);\n }, timeout).unref();\n\n try {\n if (beforeFlush) await beforeFlush();\n\n // Flush all registered loggers concurrently, ignoring individual failures\n await Promise.allSettled([...registry].map((logger) => logger.close()));\n\n if (afterFlush) await afterFlush();\n } finally {\n clearTimeout(forceExitTimer);\n process.exit(0);\n }\n };\n\n for (const signal of signals) {\n // Only add if not already handled (avoids double-handling in long-lived processes)\n if (process.listenerCount(signal) === 0) {\n process.on(signal, handler);\n }\n }\n}\n\n/**\n * Remove all graceful shutdown handlers and clear the registry.\n * Primarily useful in tests.\n */\nexport function resetShutdownHandlers(): void {\n registry.clear();\n shutdownHandlerRegistered = false;\n}\n","import crypto from 'crypto';\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\n\nlet poolPtr = rnds8Pool.length;\nexport default function rng() {\n if (poolPtr > rnds8Pool.length - 16) {\n crypto.randomFillSync(rnds8Pool);\n poolPtr = 0;\n }\n\n return rnds8Pool.slice(poolPtr, poolPtr += 16);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import crypto from 'crypto';\nexport default {\n randomUUID: crypto.randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","/**\n * Trace ID utilities for Logitron\n */\n\nimport { AsyncLocalStorage } from 'node:async_hooks';\n\nimport { v4 as uuidv4 } from 'uuid';\n\nimport type { TraceIdConfig, TraceIdExtractorConfig } from '../types';\n\n// Async local storage for trace context\nexport const traceStorage = new AsyncLocalStorage<{\n traceId: string;\n [key: string]: unknown;\n}>();\n\n/**\n * Default trace ID generator using UUID v4\n */\nexport function generateTraceId(): string {\n return uuidv4();\n}\n\n/**\n * Get current trace ID from async context\n */\nexport function getCurrentTraceId(): string | undefined {\n const store = traceStorage.getStore();\n return store?.traceId;\n}\n\n/**\n * Set trace ID in the CURRENT async context without starting a new one.\n *\n * ⚠️ Uses `enterWith()` which mutates the context for the current async\n * execution and ALL futures spawned from it. Prefer `runWithTraceId()` when\n * you can wrap the operation in a callback, as it creates a properly-scoped\n * child context. Use `setTraceId()` only when you cannot use `runWithTraceId()`\n * (e.g., inside a class constructor or a non-callback async entry point).\n */\nexport function setTraceId(traceId: string, data?: Record<string, unknown>): void {\n const currentStore = traceStorage.getStore() ?? {};\n traceStorage.enterWith({ ...currentStore, traceId, ...data });\n}\n\n/**\n * Run function with trace ID context\n */\nexport function runWithTraceId<T>(traceId: string, fn: () => T, data?: Record<string, unknown>): T {\n return traceStorage.run({ traceId, ...data }, fn);\n}\n\n/** Shape that extractTraceId accepts (Express-compatible) */\ninterface RequestLike {\n headers?: Record<string, string | string[] | undefined>;\n query?: Record<string, string | string[] | undefined>;\n body?: Record<string, string | undefined>;\n params?: Record<string, string | undefined>;\n}\n\n/**\n * Extract trace ID from request using configuration\n */\nexport function extractTraceId(\n request: unknown,\n config: TraceIdExtractorConfig\n): string | undefined {\n const req = request as RequestLike;\n // Try headers first\n if (config.header) {\n const headers = Array.isArray(config.header) ? config.header : [config.header];\n for (const header of headers) {\n const value = req.headers?.[header.toLowerCase()];\n if (value) {\n return Array.isArray(value) ? value[0] : value;\n }\n }\n }\n\n // Try query parameters\n if (config.query) {\n const queries = Array.isArray(config.query) ? config.query : [config.query];\n for (const query of queries) {\n const value = req.query?.[query];\n if (value) {\n return Array.isArray(value) ? value[0] : value;\n }\n }\n }\n\n // Try body parameters\n if (config.body) {\n const bodyFields = Array.isArray(config.body) ? config.body : [config.body];\n for (const field of bodyFields) {\n const value = req.body?.[field];\n if (value) {\n return value;\n }\n }\n }\n\n // Try route parameters\n if (config.params) {\n const paramFields = Array.isArray(config.params) ? config.params : [config.params];\n for (const param of paramFields) {\n const value = req.params?.[param];\n if (value) {\n return value;\n }\n }\n }\n\n return undefined;\n}\n\n/**\n * Default headers checked for incoming trace ID propagation, in priority order:\n * traceparent (W3C/OTel) → x-trace-id → x-request-id → x-correlation-id → trace-id\n */\nexport const DEFAULT_TRACE_HEADERS = [\n 'traceparent',\n 'x-trace-id',\n 'x-request-id',\n 'x-correlation-id',\n 'trace-id',\n];\n\n/**\n * Create trace ID middleware for Express/NestJS\n */\nexport function createTraceMiddleware(config: TraceIdConfig) {\n const resolvedConfig: TraceIdConfig = {\n extractor: {\n header: DEFAULT_TRACE_HEADERS,\n query: ['traceId', 'trace_id'],\n },\n ...config,\n };\n\n return (req: unknown, res: unknown, next: () => void) => {\n let traceId: string | undefined;\n\n // Try to extract existing trace ID from incoming request\n if (resolvedConfig.extractor) {\n traceId = extractTraceId(req, resolvedConfig.extractor);\n }\n\n // Generate new trace ID if none was provided by the caller\n if (!traceId) {\n traceId = resolvedConfig.generator ? resolvedConfig.generator() : generateTraceId();\n }\n\n // Set trace ID on the request object and propagate back in response header\n (req as Record<string, unknown>).traceId = traceId;\n (res as { setHeader: (k: string, v: string) => void }).setHeader('X-Trace-Id', traceId);\n\n // Run the rest of the middleware/handler chain inside the trace context.\n // AsyncLocalStorage.run() propagates the context through all awaited async\n // operations spawned within the callback, so every logger.log() call\n // will find the same traceId via getCurrentTraceId().\n runWithTraceId(\n traceId,\n () => {\n next();\n },\n {\n requestId:\n ((req as Record<string, unknown>)['id'] as string) ||\n ((req as Record<string, unknown>)['requestId'] as string) ||\n generateTraceId(),\n }\n );\n };\n}\n","/**\n * Core Logixia Logger implementation\n *\n * v1.1 additions:\n * - Feature 1: Graceful shutdown / flushOnExit (auto-registered via config)\n * - Feature 2: Built-in log redaction (path-based + regex)\n * - Feature 3: Per-namespace log levels + LOGIXIA_LEVEL* ENV overrides\n * - Feature 4: Cause-chain error serialization (handled in error.utils)\n * - Feature 5: Adaptive log level based on NODE_ENV / CI detection\n */\n\nimport buildFastStringify from 'fast-json-stringify';\n\n// ── Module-level JSON serializer (built once, reused for all loggers) ─────────\n// Covers the fixed LogEntry shape; unknown payload fields handled by additionalProperties\nconst _fastStringifyEntry = buildFastStringify({\n type: 'object',\n properties: {\n timestamp: { type: 'string' },\n level: { type: 'string' },\n appName: { type: 'string' },\n environment: { type: 'string' },\n message: { type: 'string' },\n context: { type: 'string' },\n traceId: { type: 'string' },\n payload: { type: 'object', additionalProperties: true },\n },\n additionalProperties: true,\n});\n\nimport { LogixiaContext } from '../context/async-context';\nimport { TransportManager } from '../transports/transport.manager';\nimport type {\n ContextData,\n GracefulShutdownConfig,\n ILogger,\n ILoggerDefault,\n LogEntry,\n LoggerConfig,\n LoggerWithLevels,\n LogLevelString,\n TimingEntry,\n} from '../types';\nimport { LogLevel } from '../types';\nimport { isError, serializeError } from '../utils/error.utils';\nimport { internalError, internalLog, internalWarn } from '../utils/internal-log';\nimport { applyRedaction } from '../utils/redact.utils';\nimport { Sampler } from '../utils/sampling.utils';\nimport { deregisterFromShutdown, flushOnExit, registerForShutdown } from '../utils/shutdown.utils';\nimport { generateTraceId, getCurrentTraceId } from '../utils/trace.utils';\n\n// ── Namespace level helpers ──────────────────────────────────────────────────\n\nfunction namespacePatternToRegex(pattern: string): RegExp {\n const escaped = pattern\n .split('.')\n .map((s) => (s === '*' ? '[^.]+' : s.replace(/[$()*+.?[\\\\\\]^{|}]/g, '\\\\$&')))\n .join('\\\\.');\n return new RegExp(`^${escaped}$`);\n}\n\nconst _nsPatternCache = new Map<string, RegExp>();\n\nfunction matchesNamespacePattern(ns: string, pattern: string): boolean {\n let re = _nsPatternCache.get(pattern);\n if (!re) {\n re = namespacePatternToRegex(pattern);\n _nsPatternCache.set(pattern, re);\n }\n return re.test(ns);\n}\n\n// ── Feature 5: Adaptive level resolution ────────────────────────────────────\n\nfunction resolveInitialLevel(config: LoggerConfig): LogLevelString {\n // 1. Hard env override\n const envLevel = process.env['LOGIXIA_LEVEL'];\n if (envLevel) return envLevel as LogLevelString;\n\n // 2. Explicit config value\n if (config.levelOptions?.level) return config.levelOptions.level as LogLevelString;\n\n // 3. NODE_ENV smart defaults\n const nodeEnv = process.env['NODE_ENV'];\n if (nodeEnv === 'development') return LogLevel.DEBUG;\n if (nodeEnv === 'test') return LogLevel.WARN;\n if (nodeEnv === 'production') return LogLevel.INFO;\n\n // 4. CI detection\n if (process.env['CI']) return LogLevel.INFO;\n\n return LogLevel.INFO;\n}\n\n// ── Logger class ─────────────────────────────────────────────────────────────\n\nexport class LogixiaLogger<\n TConfig extends LoggerConfig<Record<string, number>> = LoggerConfig,\n> implements ILoggerDefault {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- index signature for dynamic custom level methods\n [K: string]: any;\n\n private config: TConfig;\n private context?: string;\n private timers: Map<string, TimingEntry> = new Map();\n private contextData: ContextData = {};\n private transportManager?: TransportManager;\n private fieldState: Map<string, boolean> = new Map();\n\n /** Stable fallback trace ID generated ONCE per logger instance. */\n private readonly fallbackTraceId: string = generateTraceId();\n\n // ── Performance: hot-path caches (rebuilt when config changes) ───────────────\n /** Numeric value for each known log level — built once, read on every log call. */\n private _levelValues: Map<string, number> = new Map();\n /** Numeric threshold for the currently active log level. */\n private _minLevelValue = 2;\n /** Pre-built ANSI color codes to avoid recreating the object in colorize(). */\n private _colorMap: Map<string, string> = new Map();\n /** Pre-computed field-enabled booleans so isFieldEnabled() isn't called per log. */\n private _fieldCache: Map<string, boolean> = new Map();\n /** True when contextData is non-empty — avoids Object.keys() check on hot path. */\n private _hasContextData = false;\n /**\n * Pre-computed `[INFO] `, `[WARN] ` etc. strings — avoids a colorize() call per log.\n * Key: lowercase level name. Value: formatted bracket string ready to concatenate.\n */\n private _formattedLevels: Map<string, string> = new Map();\n /** Pre-computed `[appName] ` string — avoids template literal allocation per log. */\n private _formattedAppName = '';\n /** True when a redact config is present — short-circuits applyRedaction when false. */\n private _hasRedact = false;\n /** Sampling engine — only created when sampling config is present. */\n private _sampler?: Sampler;\n\n constructor(config: TConfig, context?: string) {\n const defaultConfig: LoggerConfig = {\n appName: 'App',\n environment: 'development',\n traceId: true,\n format: { timestamp: true, colorize: true, json: false },\n silent: false,\n levelOptions: {\n level: LogLevel.INFO,\n levels: {\n [LogLevel.ERROR]: 0,\n [LogLevel.WARN]: 1,\n [LogLevel.INFO]: 2,\n [LogLevel.DEBUG]: 3,\n [LogLevel.TRACE]: 4,\n [LogLevel.VERBOSE]: 5,\n },\n colors: {\n [LogLevel.ERROR]: 'red',\n [LogLevel.WARN]: 'yellow',\n [LogLevel.INFO]: 'blue',\n [LogLevel.DEBUG]: 'green',\n [LogLevel.TRACE]: 'gray',\n [LogLevel.VERBOSE]: 'cyan',\n },\n },\n };\n\n this.config = { ...defaultConfig, ...config };\n\n // ── Feature 5: Adaptive log level ───────────────────────────────────────\n const resolvedLevel = resolveInitialLevel(this.config);\n this.config.levelOptions = { ...this.config.levelOptions, level: resolvedLevel };\n\n if (!this.config.fields) {\n this.config.fields = {\n timestamp: '[yyyy-mm-dd HH:MM:ss.MS]',\n level: '[log_level]',\n appName: '[app_name]',\n traceId: '[trace_id]',\n message: '[message]',\n payload: '[payload]',\n timeTaken: '[time_taken_MS]',\n };\n }\n\n this.context = context ?? '';\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- transports is on extended config shapes\n if ((this.config as any).transports) {\n this.transportManager = new TransportManager(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (this.config as any).transports\n );\n }\n\n // ── Feature 8: Log sampling ───────────────────────────────────────────────\n if (this.config.sampling) {\n this._sampler = new Sampler(this.config.sampling, (stats) => {\n // Emit sampling stats as an INFO log via direct stdout to avoid recursion\n process.stdout.write(\n JSON.stringify({\n level: 'info',\n message: '[logixia/sampling] stats',\n ...stats,\n }) + '\\n'\n );\n });\n }\n\n // ── Feature 1: Graceful shutdown ─────────────────────────────────────────\n this.setupGracefulShutdown();\n\n this.createCustomLevelMethods();\n\n // ── Build hot-path caches after all config is finalised ──────────────────\n this._buildPerfCaches();\n }\n\n // ── Feature 1 ────────────────────────────────────────────────────────────────\n\n private setupGracefulShutdown(): void {\n const shutdownCfg = this.config.gracefulShutdown;\n if (!shutdownCfg) return;\n\n const normalized: GracefulShutdownConfig =\n shutdownCfg === true ? { enabled: true } : (shutdownCfg as GracefulShutdownConfig);\n\n if (!normalized.enabled) return;\n\n registerForShutdown(this);\n flushOnExit({\n timeout: normalized.timeout ?? 5000,\n signals: normalized.signals ?? ['SIGTERM', 'SIGINT'],\n });\n }\n\n private createCustomLevelMethods(): void {\n if (this.config.levelOptions?.levels) {\n for (const levelName of Object.keys(this.config.levelOptions.levels)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (!(this as any)[levelName.toLowerCase()]) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (this as any)[levelName.toLowerCase()] = async (\n message: string,\n data?: Record<string, unknown>\n ) => {\n await this.logLevel(levelName.toLowerCase(), message, data);\n };\n }\n }\n }\n }\n\n /**\n * Rebuild all hot-path caches after any config mutation or level change.\n * Keeps the actual log() call free of allocations in the common case.\n */\n private _buildPerfCaches(): void {\n // 1. Level value map — pre-merge built-ins + custom levels once\n const customLevelEntries = Object.entries(\n (this.config.levelOptions?.levels ?? {}) as Record<string, number>\n );\n this._levelValues = new Map<string, number>([\n [LogLevel.ERROR, 0],\n [LogLevel.WARN, 1],\n [LogLevel.INFO, 2],\n [LogLevel.DEBUG, 3],\n [LogLevel.TRACE, 4],\n [LogLevel.VERBOSE, 5],\n ...customLevelEntries,\n ]);\n const effectiveLevel = this.resolveEffectiveLevel();\n this._minLevelValue = this._levelValues.get(effectiveLevel) ?? 2;\n\n // 2. ANSI color map — static, built once\n this._colorMap = new Map([\n ['red', '\\x1b[31m'],\n ['green', '\\x1b[32m'],\n ['yellow', '\\x1b[33m'],\n ['blue', '\\x1b[34m'],\n ['magenta', '\\x1b[35m'],\n ['cyan', '\\x1b[36m'],\n ['white', '\\x1b[37m'],\n ['gray', '\\x1b[90m'],\n ['reset', '\\x1b[0m'],\n ]);\n\n // 3. Field enabled cache — replaces per-call isFieldEnabled() calls\n const fieldNames = [\n 'timestamp',\n 'level',\n 'appName',\n 'traceId',\n 'context',\n 'message',\n 'payload',\n ];\n for (const f of fieldNames) {\n if (this.fieldState.has(f)) {\n this._fieldCache.set(f, this.fieldState.get(f)!);\n } else if (this.config.fields?.[f as keyof typeof this.config.fields] !== undefined) {\n this._fieldCache.set(f, this.config.fields[f as keyof typeof this.config.fields] !== false);\n } else {\n this._fieldCache.set(f, true);\n }\n }\n\n // 4. Pre-computed formatted level strings (e.g. \"[INFO] \" with ANSI codes baked in)\n // Eliminates a colorize() call + template literal allocation on every log call.\n const colorize = this.config.format?.colorize ?? true;\n this._formattedLevels = new Map();\n for (const [lvl] of this._levelValues) {\n const upper = lvl.toUpperCase();\n if (colorize && this._fieldCache.get('level') !== false) {\n const colorName = (this.config.levelOptions?.colors?.[lvl] ?? 'white') as string;\n const code = this._colorMap.get(colorName.toLowerCase()) ?? this._colorMap.get('white')!;\n const reset = this._colorMap.get('reset')!;\n this._formattedLevels.set(lvl, `[${code}${upper}${reset}] `);\n } else {\n this._formattedLevels.set(lvl, `[${upper}] `);\n }\n }\n\n // 5. Pre-computed \"[appName] \" string\n this._formattedAppName =\n this._fieldCache.get('appName') !== false ? `[${this.config.appName ?? 'App'}] ` : '';\n\n // 6. Redact flag — if no redact config, skip applyRedaction entirely\n this._hasRedact = !!(\n this.config.redact &&\n ((this.config.redact.paths?.length ?? 0) > 0 ||\n (this.config.redact.patterns?.length ?? 0) > 0)\n );\n }\n\n // ── Public logging API ───────────────────────────────────────────────────────\n\n async error(messageOrError: string | Error, data?: Record<string, unknown>): Promise<void> {\n if (isError(messageOrError)) {\n await this.log('error', messageOrError.message, {\n ...data,\n error: serializeError(messageOrError),\n });\n } else {\n await this.log('error', messageOrError, data);\n }\n }\n\n async warn(message: string, data?: Record<string, unknown>): Promise<void> {\n await this.log('warn', message, data);\n }\n\n async info(message: string, data?: Record<string, unknown>): Promise<void> {\n await this.log('info', message, data);\n }\n\n async debug(message: string, data?: Record<string, unknown>): Promise<void> {\n await this.log('debug', message, data);\n }\n\n async trace(message: string, data?: Record<string, unknown>): Promise<void> {\n await this.log('trace', message, data);\n }\n\n async verbose(message: string, data?: Record<string, unknown>): Promise<void> {\n await this.log('verbose', message, data);\n }\n\n async logLevel(level: string, message: string, data?: Record<string, unknown>): Promise<void> {\n await this.log(level, message, data);\n }\n\n // ── Timer API ────────────────────────────────────────────────────────────────\n\n time(label: string): void {\n this.timers.set(label, { label, startTime: Date.now() });\n }\n\n async timeEnd(label: string): Promise<number | undefined> {\n const timer = this.timers.get(label);\n if (!timer) {\n await this.warn(`Timer '${label}' does not exist`);\n return undefined;\n }\n const endTime = Date.now();\n const duration = endTime - timer.startTime;\n timer.endTime = endTime;\n timer.duration = duration;\n await this.info(`Timer '${label}' finished`, {\n duration: `${duration}ms`,\n startTime: new Date(timer.startTime).toISOString(),\n endTime: new Date(endTime).toISOString(),\n });\n this.timers.delete(label);\n return duration;\n }\n\n async timeAsync<T>(label: string, fn: () => Promise<T>): Promise<T> {\n this.time(label);\n try {\n const result = await fn();\n await this.timeEnd(label);\n return result;\n } catch (error) {\n await this.timeEnd(label);\n throw error;\n }\n }\n\n // ── Level & context management ───────────────────────────────────────────────\n\n setLevel(level: LogLevelString): void {\n this.config.levelOptions = this.config.levelOptions ?? {};\n this.config.levelOptions.level = level as string;\n // Refresh the cached numeric threshold so shouldLog() stays accurate\n this._minLevelValue = this._levelValues.get(level) ?? this._minLevelValue;\n // Rebuild level string cache in case colours are keyed per-level\n this._buildPerfCaches();\n }\n\n getLevel(): LogLevelString {\n return (this.config.levelOptions?.level as LogLevelString) ?? LogLevel.INFO;\n }\n\n setContext(context: string): void {\n this.context = context;\n }\n\n getContext(): string | undefined {\n return this.context;\n }\n\n // ── Field management ─────────────────────────────────────────────────────────\n\n enableField(fieldName: string): void {\n this.fieldState.set(fieldName, true);\n this._fieldCache.set(fieldName, true);\n // Rebuild derivative caches that depend on field visibility\n if (fieldName === 'level' || fieldName === 'appName') this._buildPerfCaches();\n internalLog(`Field '${fieldName}' enabled`);\n }\n\n disableField(fieldName: string): void {\n this.fieldState.set(fieldName, false);\n this._fieldCache.set(fieldName, false);\n // Rebuild derivative caches that depend on field visibility\n if (fieldName === 'level' || fieldName === 'appName') this._buildPerfCaches();\n internalLog(`Field '${fieldName}' disabled`);\n }\n\n isFieldEnabled(fieldName: string): boolean {\n if (this.fieldState.has(fieldName)) return this.fieldState.get(fieldName)!;\n if (this.config.fields?.[fieldName as keyof typeof this.config.fields] !== undefined) {\n return this.config.fields[fieldName as keyof typeof this.config.fields] !== false;\n }\n return true;\n }\n\n getFieldState(): Record<string, boolean> {\n const allFields = [\n 'timestamp',\n 'level',\n 'appName',\n 'service',\n 'traceId',\n 'message',\n 'payload',\n 'timeTaken',\n 'context',\n 'requestId',\n 'userId',\n 'sessionId',\n 'environment',\n ];\n return Object.fromEntries(allFields.map((f) => [f, this.isFieldEnabled(f)]));\n }\n\n resetFieldState(): void {\n this.fieldState.clear();\n internalLog('Field state reset to configuration defaults');\n }\n\n // ── Transport level management ───────────────────────────────────────────────\n\n enableTransportLevelPrompting(): void {\n if (this.transportManager) this.transportManager.enableLevelPrompting();\n else internalWarn('Transport manager not initialized');\n }\n\n disableTransportLevelPrompting(): void {\n if (this.transportManager) this.transportManager.disableLevelPrompting();\n else internalWarn('Transport manager not initialized');\n }\n\n setTransportLevels(transportId: string, levels: string[]): void {\n if (this.transportManager) this.transportManager.setTransportLevels(transportId, levels);\n else internalWarn('Transport manager not initialized');\n }\n\n getTransportLevels(transportId: string): string[] | undefined {\n if (this.transportManager) return this.transportManager.getTransportLevels(transportId);\n internalWarn('Transport manager not initialized');\n return undefined;\n }\n\n clearTransportLevelPreferences(): void {\n if (this.transportManager) this.transportManager.clearTransportLevelPreferences();\n else internalWarn('Transport manager not initialized');\n }\n\n getAvailableTransports(): string[] {\n return this.transportManager?.getTransports() ?? [];\n }\n\n // ── Child logger ─────────────────────────────────────────────────────────────\n\n child(context: string, data?: Record<string, unknown>): ILogger {\n const childLogger = new LogixiaLogger(this.config, context);\n if (data) childLogger.contextData = { ...this.contextData, ...data };\n return childLogger;\n }\n\n // ── Flush / health / close ───────────────────────────────────────────────────\n\n async flush(): Promise<void> {\n if (this.transportManager) await this.transportManager.flush();\n }\n\n async healthCheck(): Promise<{ healthy: boolean; details: Record<string, unknown> }> {\n if (!this.transportManager) {\n return { healthy: false, details: { error: 'TransportManager not initialized' } };\n }\n return this.transportManager.healthCheck();\n }\n\n async close(): Promise<void> {\n for (const [label, timer] of this.timers) {\n await this.warn(`Timer '${label}' was not ended properly`, {\n startTime: new Date(timer.startTime).toISOString(),\n duration: `${Date.now() - timer.startTime}ms (incomplete)`,\n });\n }\n this.timers.clear();\n\n if (this.transportManager) {\n await this.transportManager.flush();\n await this.transportManager.close();\n }\n\n this._sampler?.destroy();\n deregisterFromShutdown(this);\n }\n\n // ── Core log method ──────────────────────────────────────────────────────────\n\n private async log(level: string, message: string, data?: Record<string, unknown>): Promise<void> {\n if (this.config.silent) return;\n if (!this.shouldLog(level)) return;\n\n // ── Feature 8: Sampling ───────────────────────────────────────────────────\n if (this._sampler) {\n const traceId = this.config.traceId\n ? (getCurrentTraceId() ?? this.fallbackTraceId)\n : undefined;\n if (!this._sampler.shouldEmit(level, traceId)) return;\n }\n\n // ── Feature 6: AsyncLocalStorage context auto-merge ───────────────────────\n // Merge ALS-stored fields (requestId, userId, …) into the payload so every\n // log call inside a LogixiaContext.run() scope automatically carries them.\n const alsContext = LogixiaContext.get();\n const mergedData =\n alsContext && Object.keys(alsContext).length > 0 ? { ...alsContext, ...data } : data;\n\n // ── Feature 2: Redaction ─────────────────────────────────────────────────\n // Avoid spread allocation when contextData is empty (the common case)\n const rawPayload = this._hasContextData ? { ...this.contextData, ...mergedData } : mergedData;\n // _hasRedact is pre-computed in _buildPerfCaches() — skips the entire redaction\n // code path when no redact config is present (fast path for the common case).\n let payload: Record<string, unknown> | undefined;\n if (rawPayload !== undefined && rawPayload !== null) {\n payload = this._hasRedact\n ? (applyRedaction(rawPayload, this.config.redact) ?? rawPayload)\n : rawPayload;\n }\n\n // Use a monomorphic LogEntry shape — always the same fields, some may be undefined.\n // Consistent shape lets V8 inline-cache property accesses across calls.\n const traceId = this.config.traceId ? (getCurrentTraceId() ?? this.fallbackTraceId) : undefined;\n const entry: LogEntry = {\n timestamp: new Date().toISOString(),\n level,\n appName: this.config.appName ?? 'App',\n environment: this.config.environment ?? 'development',\n message,\n };\n if (this.context) entry.context = this.context;\n if (payload !== undefined) entry.payload = payload;\n if (traceId !== undefined) entry.traceId = traceId;\n\n const formattedLog = this.formatLog(entry);\n await this.output(formattedLog, level, entry);\n }\n\n // ── Feature 3: Namespace-aware shouldLog ─────────────────────────────────────\n\n /**\n * Hot-path level check: a single Map lookup + integer compare.\n * The level map and threshold are pre-built in _buildPerfCaches().\n */\n private shouldLog(level: string): boolean {\n const v = this._levelValues.get(level);\n return v !== undefined && v <= this._minLevelValue;\n }\n\n /**\n * Feature 3: Resolve the effective log level for this logger instance.\n *\n * Priority:\n * 1. ENV `LOGIXIA_LEVEL_<NS_UPPER>` (e.g. LOGIXIA_LEVEL_DB for ns \"db\" or \"db.queries\")\n * 2. Matching `namespaceLevels` config entry (longer pattern = more specific, wins)\n * 3. Global `LOGIXIA_LEVEL` ENV override\n * 4. `levelOptions.level` (resolved via Feature 5 in constructor)\n */\n private resolveEffectiveLevel(): LogLevelString {\n const ns = this.context;\n\n if (ns) {\n // 1. ENV namespace override: LOGIXIA_LEVEL_DB → context \"db\" or \"db.queries\"\n const nsKey = ns.split('.')[0]!.toUpperCase();\n const envNsLevel = process.env[`LOGIXIA_LEVEL_${nsKey}`];\n if (envNsLevel) return envNsLevel as LogLevelString;\n\n // 2. namespaceLevels config\n const namespaceLevels = this.config.namespaceLevels;\n if (namespaceLevels) {\n const sortedPatterns = Object.keys(namespaceLevels).sort((a, b) => b.length - a.length);\n for (const pattern of sortedPatterns) {\n if (matchesNamespacePattern(ns, pattern)) {\n return namespaceLevels[pattern]!;\n }\n }\n }\n }\n\n // 3. Global ENV override\n const globalEnv = process.env['LOGIXIA_LEVEL'];\n if (globalEnv) return globalEnv as LogLevelString;\n\n // 4. Config-resolved level\n return this.getLevel();\n }\n\n // ── Formatters ───────────────────────────────────────────────────────────────\n\n private formatLog(entry: LogEntry): string {\n // JSON mode: use fast-json-stringify (pre-compiled serializer, ~59% faster than JSON.stringify)\n if (this.config.format?.json) return _fastStringifyEntry(entry);\n\n let formatted = '';\n\n // Use _fieldCache instead of calling isFieldEnabled() per field\n if (this.config.format?.timestamp !== false && this._fieldCache.get('timestamp') !== false) {\n // entry.timestamp is already an ISO string — no need to re-parse it\n formatted += `[${entry.timestamp}] `;\n }\n\n // Use pre-computed level string (avoids colorize() call + template literal allocation)\n if (this._fieldCache.get('level') !== false) {\n formatted += this._formattedLevels.get(entry.level) ?? `[${entry.level.toUpperCase()}] `;\n }\n\n // Use pre-computed \"[appName] \" string (built once in _buildPerfCaches)\n formatted += this._formattedAppName;\n\n if (entry.traceId && this._fieldCache.get('traceId') !== false)\n formatted += `[${entry.traceId}] `;\n if (entry.context && this._fieldCache.get('context') !== false)\n formatted += `[${entry.context}] `;\n if (this._fieldCache.get('message') !== false) formatted += entry.message;\n\n if (entry.payload !== undefined && this._fieldCache.get('payload') !== false) {\n formatted += ` ${JSON.stringify(entry.payload)}`;\n }\n\n return formatted;\n }\n\n private colorize(text: string, color: string): string {\n if (!this.config.format?.colorize) return text;\n // Use pre-built _colorMap instead of recreating the colors object every call\n const code = this._colorMap.get(color.toLowerCase()) ?? this._colorMap.get('white')!;\n return `${code}${text}${this._colorMap.get('reset')!}`;\n }\n\n private async output(message: string, level: string, entry: LogEntry): Promise<void> {\n if (this.transportManager) {\n try {\n await this.transportManager.write(entry);\n return;\n } catch (error) {\n internalError('Transport write failed', error);\n }\n }\n\n // Fallback: direct stdout/stderr write — faster than console wrappers\n const out = level === LogLevel.ERROR ? process.stderr : process.stdout;\n out.write(message + '\\n');\n }\n}\n\n// ── Factory ───────────────────────────────────────────────────────────────────\n\nexport function createLogger<T extends LoggerConfig<Record<string, number>>>(\n config: T,\n context?: string\n): LoggerWithLevels<T> {\n const logger = new LogixiaLogger<T>(config, context);\n const mutableLogger = logger as unknown as Record<string, unknown>;\n\n if (config.levelOptions?.levels) {\n for (const levelName of Object.keys(config.levelOptions.levels)) {\n if (!mutableLogger[levelName]) {\n mutableLogger[levelName] = async (message: string, data?: Record<string, unknown>) => {\n await logger.logLevel(levelName, message, data);\n };\n }\n }\n }\n\n return logger as unknown as LoggerWithLevels<T>;\n}\n","/**\n * NestJS Service integration for Logitron Logger\n */\n\nimport type { LoggerService } from '@nestjs/common';\nimport { Injectable, Scope } from '@nestjs/common';\n\nimport type { LoggerConfig, LogLevelString } from '../types';\nimport { LogLevel } from '../types';\nimport { internalError } from '../utils/internal-log';\nimport { getCurrentTraceId } from '../utils/trace.utils';\nimport { LogixiaLogger } from './logitron-logger';\n\n@Injectable({ scope: Scope.TRANSIENT })\nexport class LogixiaLoggerService implements LoggerService {\n private logger: LogixiaLogger;\n private context?: string;\n\n constructor(config?: LoggerConfig) {\n const defaultConfig: LoggerConfig = {\n appName: 'NestJS-App',\n environment: 'development',\n traceId: true,\n format: {\n timestamp: true,\n colorize: true,\n json: false,\n },\n silent: false,\n levelOptions: {\n level: LogLevel.INFO,\n levels: {\n error: 0,\n warn: 1,\n log: 2,\n debug: 3,\n verbose: 4,\n },\n colors: {\n error: 'red',\n warn: 'yellow',\n log: 'green',\n debug: 'blue',\n verbose: 'cyan',\n },\n },\n fields: {\n timestamp: '[yyyy-mm-dd HH:MM:ss.MS]',\n level: '[log_level]',\n appName: '[app_name]',\n traceId: '[trace_id]',\n message: '[message]',\n payload: '[payload]',\n timeTaken: '[time_taken_MS]',\n },\n };\n\n this.logger = new LogixiaLogger({ ...defaultConfig, ...config });\n }\n\n /**\n * NestJS LoggerService interface implementation\n */\n log(message: unknown, context?: string): void {\n this.setContextIfProvided(context);\n this.logger\n .info(this.formatMessage(message))\n .catch((err: unknown) => internalError('LogixiaLoggerService.log failed', err));\n }\n\n error(message: unknown, trace?: string, context?: string): void {\n this.setContextIfProvided(context);\n const errorData: Record<string, string> = {};\n\n if (trace) {\n errorData.stack = trace;\n }\n\n const logPromise =\n typeof message === 'object' && message instanceof Error\n ? this.logger.error(message, errorData)\n : this.logger.error(this.formatMessage(message), errorData);\n\n logPromise.catch((err: unknown) => internalError('LogixiaLoggerService.error failed', err));\n }\n\n warn(message: unknown, context?: string): void {\n this.setContextIfProvided(context);\n this.logger\n .warn(this.formatMessage(message))\n .catch((err: unknown) => internalError('LogixiaLoggerService.warn failed', err));\n }\n\n debug(message: unknown, context?: string): void {\n this.setContextIfProvided(context);\n this.logger\n .debug(this.formatMessage(message))\n .catch((err: unknown) => internalError('LogixiaLoggerService.debug failed', err));\n }\n\n verbose(message: unknown, context?: string): void {\n this.setContextIfProvided(context);\n this.logger\n .trace(this.formatMessage(message))\n .catch((err: unknown) => internalError('LogixiaLoggerService.verbose failed', err));\n }\n\n /**\n * Extended Logitron methods\n */\n async info(message: string, data?: Record<string, unknown>): Promise<void> {\n return this.logger.info(message, data);\n }\n\n async trace(message: string, data?: Record<string, unknown>): Promise<void> {\n return this.logger.trace(message, data);\n }\n\n logLevel(level: string, message: string, data?: Record<string, unknown>): Promise<void> {\n return this.logger.logLevel(level, message, data);\n }\n\n /**\n * Timing methods\n */\n time(label: string): void {\n this.logger.time(label);\n }\n\n async timeEnd(label: string): Promise<number | undefined> {\n return this.logger.timeEnd(label);\n }\n\n async timeAsync<T>(label: string, fn: () => Promise<T>): Promise<T> {\n return this.logger.timeAsync(label, fn);\n }\n\n /**\n * Context and level management\n */\n setContext(context: string): void {\n this.context = context;\n this.logger.setContext(context);\n }\n\n getContext(): string | undefined {\n return this.context;\n }\n\n setLevel(level: LogLevelString): void {\n this.logger.setLevel(level);\n }\n\n getLevel(): LogLevelString {\n return this.logger.getLevel();\n }\n\n /**\n * Create child logger\n */\n child(context: string, data?: Record<string, unknown>): LogixiaLoggerService {\n const childService = new LogixiaLoggerService();\n childService.logger = this.logger.child(context, data) as LogixiaLogger;\n childService.context = context;\n return childService;\n }\n\n /**\n * Get current trace ID\n */\n getCurrentTraceId(): string | undefined {\n return getCurrentTraceId();\n }\n\n /**\n * Close logger\n */\n async close(): Promise<void> {\n return this.logger.close();\n }\n\n /**\n * Private helper methods\n */\n private setContextIfProvided(context?: string): void {\n if (context && context !== this.context) {\n this.setContext(context);\n }\n }\n\n private formatMessage(message: unknown): string {\n if (typeof message === 'string') {\n return message;\n }\n\n if (typeof message === 'object') {\n return JSON.stringify(message);\n }\n\n return String(message);\n }\n\n /**\n * Static factory method for easy instantiation\n */\n static create(config?: LoggerConfig): LogixiaLoggerService {\n return new LogixiaLoggerService(config);\n }\n\n /**\n * Get the underlying Logitron logger instance\n */\n getLogger(): LogixiaLogger {\n return this.logger;\n }\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isFunction = void 0;\nfunction isFunction(value) {\n return typeof value === 'function';\n}\nexports.isFunction = isFunction;\n//# sourceMappingURL=isFunction.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createErrorClass = void 0;\nfunction createErrorClass(createImpl) {\n var _super = function (instance) {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n var ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\nexports.createErrorClass = createErrorClass;\n//# sourceMappingURL=createErrorClass.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.UnsubscriptionError = void 0;\nvar createErrorClass_1 = require(\"./createErrorClass\");\nexports.UnsubscriptionError = createErrorClass_1.createErrorClass(function (_super) {\n return function UnsubscriptionErrorImpl(errors) {\n _super(this);\n this.message = errors\n ? errors.length + \" errors occurred during unsubscription:\\n\" + errors.map(function (err, i) { return i + 1 + \") \" + err.toString(); }).join('\\n ')\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n };\n});\n//# sourceMappingURL=UnsubscriptionError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arrRemove = void 0;\nfunction arrRemove(arr, item) {\n if (arr) {\n var index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\nexports.arrRemove = arrRemove;\n//# sourceMappingURL=arrRemove.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isSubscription = exports.EMPTY_SUBSCRIPTION = exports.Subscription = void 0;\nvar isFunction_1 = require(\"./util/isFunction\");\nvar UnsubscriptionError_1 = require(\"./util/UnsubscriptionError\");\nvar arrRemove_1 = require(\"./util/arrRemove\");\nvar Subscription = (function () {\n function Subscription(initialTeardown) {\n this.initialTeardown = initialTeardown;\n this.closed = false;\n this._parentage = null;\n this._finalizers = null;\n }\n Subscription.prototype.unsubscribe = function () {\n var e_1, _a, e_2, _b;\n var errors;\n if (!this.closed) {\n this.closed = true;\n var _parentage = this._parentage;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n try {\n for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {\n var parent_1 = _parentage_1_1.value;\n parent_1.remove(this);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n else {\n _parentage.remove(this);\n }\n }\n var initialFinalizer = this.initialTeardown;\n if (isFunction_1.isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n }\n catch (e) {\n errors = e instanceof UnsubscriptionError_1.UnsubscriptionError ? e.errors : [e];\n }\n }\n var _finalizers = this._finalizers;\n if (_finalizers) {\n this._finalizers = null;\n try {\n for (var _finalizers_1 = __values(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) {\n var finalizer = _finalizers_1_1.value;\n try {\n execFinalizer(finalizer);\n }\n catch (err) {\n errors = errors !== null && errors !== void 0 ? errors : [];\n if (err instanceof UnsubscriptionError_1.UnsubscriptionError) {\n errors = __spreadArray(__spreadArray([], __read(errors)), __read(err.errors));\n }\n else {\n errors.push(err);\n }\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n if (errors) {\n throw new UnsubscriptionError_1.UnsubscriptionError(errors);\n }\n }\n };\n Subscription.prototype.add = function (teardown) {\n var _a;\n if (teardown && teardown !== this) {\n if (this.closed) {\n execFinalizer(teardown);\n }\n else {\n if (teardown instanceof Subscription) {\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);\n }\n }\n };\n Subscription.prototype._hasParent = function (parent) {\n var _parentage = this._parentage;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n };\n Subscription.prototype._addParent = function (parent) {\n var _parentage = this._parentage;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n };\n Subscription.prototype._removeParent = function (parent) {\n var _parentage = this._parentage;\n if (_parentage === parent) {\n this._parentage = null;\n }\n else if (Array.isArray(_parentage)) {\n arrRemove_1.arrRemove(_parentage, parent);\n }\n };\n Subscription.prototype.remove = function (teardown) {\n var _finalizers = this._finalizers;\n _finalizers && arrRemove_1.arrRemove(_finalizers, teardown);\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n };\n Subscription.EMPTY = (function () {\n var empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n return Subscription;\n}());\nexports.Subscription = Subscription;\nexports.EMPTY_SUBSCRIPTION = Subscription.EMPTY;\nfunction isSubscription(value) {\n return (value instanceof Subscription ||\n (value && 'closed' in value && isFunction_1.isFunction(value.remove) && isFunction_1.isFunction(value.add) && isFunction_1.isFunction(value.unsubscribe)));\n}\nexports.isSubscription = isSubscription;\nfunction execFinalizer(finalizer) {\n if (isFunction_1.isFunction(finalizer)) {\n finalizer();\n }\n else {\n finalizer.unsubscribe();\n }\n}\n//# sourceMappingURL=Subscription.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.config = void 0;\nexports.config = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n//# sourceMappingURL=config.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timeoutProvider = void 0;\nexports.timeoutProvider = {\n setTimeout: function (handler, timeout) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var delegate = exports.timeoutProvider.delegate;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {\n return delegate.setTimeout.apply(delegate, __spreadArray([handler, timeout], __read(args)));\n }\n return setTimeout.apply(void 0, __spreadArray([handler, timeout], __read(args)));\n },\n clearTimeout: function (handle) {\n var delegate = exports.timeoutProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=timeoutProvider.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reportUnhandledError = void 0;\nvar config_1 = require(\"../config\");\nvar timeoutProvider_1 = require(\"../scheduler/timeoutProvider\");\nfunction reportUnhandledError(err) {\n timeoutProvider_1.timeoutProvider.setTimeout(function () {\n var onUnhandledError = config_1.config.onUnhandledError;\n if (onUnhandledError) {\n onUnhandledError(err);\n }\n else {\n throw err;\n }\n });\n}\nexports.reportUnhandledError = reportUnhandledError;\n//# sourceMappingURL=reportUnhandledError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.noop = void 0;\nfunction noop() { }\nexports.noop = noop;\n//# sourceMappingURL=noop.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createNotification = exports.nextNotification = exports.errorNotification = exports.COMPLETE_NOTIFICATION = void 0;\nexports.COMPLETE_NOTIFICATION = (function () { return createNotification('C', undefined, undefined); })();\nfunction errorNotification(error) {\n return createNotification('E', undefined, error);\n}\nexports.errorNotification = errorNotification;\nfunction nextNotification(value) {\n return createNotification('N', value, undefined);\n}\nexports.nextNotification = nextNotification;\nfunction createNotification(kind, value, error) {\n return {\n kind: kind,\n value: value,\n error: error,\n };\n}\nexports.createNotification = createNotification;\n//# sourceMappingURL=NotificationFactories.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.captureError = exports.errorContext = void 0;\nvar config_1 = require(\"../config\");\nvar context = null;\nfunction errorContext(cb) {\n if (config_1.config.useDeprecatedSynchronousErrorHandling) {\n var isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n var _a = context, errorThrown = _a.errorThrown, error = _a.error;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n }\n else {\n cb();\n }\n}\nexports.errorContext = errorContext;\nfunction captureError(err) {\n if (config_1.config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\nexports.captureError = captureError;\n//# sourceMappingURL=errorContext.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EMPTY_OBSERVER = exports.SafeSubscriber = exports.Subscriber = void 0;\nvar isFunction_1 = require(\"./util/isFunction\");\nvar Subscription_1 = require(\"./Subscription\");\nvar config_1 = require(\"./config\");\nvar reportUnhandledError_1 = require(\"./util/reportUnhandledError\");\nvar noop_1 = require(\"./util/noop\");\nvar NotificationFactories_1 = require(\"./NotificationFactories\");\nvar timeoutProvider_1 = require(\"./scheduler/timeoutProvider\");\nvar errorContext_1 = require(\"./util/errorContext\");\nvar Subscriber = (function (_super) {\n __extends(Subscriber, _super);\n function Subscriber(destination) {\n var _this = _super.call(this) || this;\n _this.isStopped = false;\n if (destination) {\n _this.destination = destination;\n if (Subscription_1.isSubscription(destination)) {\n destination.add(_this);\n }\n }\n else {\n _this.destination = exports.EMPTY_OBSERVER;\n }\n return _this;\n }\n Subscriber.create = function (next, error, complete) {\n return new SafeSubscriber(next, error, complete);\n };\n Subscriber.prototype.next = function (value) {\n if (this.isStopped) {\n handleStoppedNotification(NotificationFactories_1.nextNotification(value), this);\n }\n else {\n this._next(value);\n }\n };\n Subscriber.prototype.error = function (err) {\n if (this.isStopped) {\n handleStoppedNotification(NotificationFactories_1.errorNotification(err), this);\n }\n else {\n this.isStopped = true;\n this._error(err);\n }\n };\n Subscriber.prototype.complete = function () {\n if (this.isStopped) {\n handleStoppedNotification(NotificationFactories_1.COMPLETE_NOTIFICATION, this);\n }\n else {\n this.isStopped = true;\n this._complete();\n }\n };\n Subscriber.prototype.unsubscribe = function () {\n if (!this.closed) {\n this.isStopped = true;\n _super.prototype.unsubscribe.call(this);\n this.destination = null;\n }\n };\n Subscriber.prototype._next = function (value) {\n this.destination.next(value);\n };\n Subscriber.prototype._error = function (err) {\n try {\n this.destination.error(err);\n }\n finally {\n this.unsubscribe();\n }\n };\n Subscriber.prototype._complete = function () {\n try {\n this.destination.complete();\n }\n finally {\n this.unsubscribe();\n }\n };\n return Subscriber;\n}(Subscription_1.Subscription));\nexports.Subscriber = Subscriber;\nvar _bind = Function.prototype.bind;\nfunction bind(fn, thisArg) {\n return _bind.call(fn, thisArg);\n}\nvar ConsumerObserver = (function () {\n function ConsumerObserver(partialObserver) {\n this.partialObserver = partialObserver;\n }\n ConsumerObserver.prototype.next = function (value) {\n var partialObserver = this.partialObserver;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n };\n ConsumerObserver.prototype.error = function (err) {\n var partialObserver = this.partialObserver;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n else {\n handleUnhandledError(err);\n }\n };\n ConsumerObserver.prototype.complete = function () {\n var partialObserver = this.partialObserver;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n };\n return ConsumerObserver;\n}());\nvar SafeSubscriber = (function (_super) {\n __extends(SafeSubscriber, _super);\n function SafeSubscriber(observerOrNext, error, complete) {\n var _this = _super.call(this) || this;\n var partialObserver;\n if (isFunction_1.isFunction(observerOrNext) || !observerOrNext) {\n partialObserver = {\n next: (observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined),\n error: error !== null && error !== void 0 ? error : undefined,\n complete: complete !== null && complete !== void 0 ? complete : undefined,\n };\n }\n else {\n var context_1;\n if (_this && config_1.config.useDeprecatedNextContext) {\n context_1 = Object.create(observerOrNext);\n context_1.unsubscribe = function () { return _this.unsubscribe(); };\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context_1),\n error: observerOrNext.error && bind(observerOrNext.error, context_1),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context_1),\n };\n }\n else {\n partialObserver = observerOrNext;\n }\n }\n _this.destination = new ConsumerObserver(partialObserver);\n return _this;\n }\n return SafeSubscriber;\n}(Subscriber));\nexports.SafeSubscriber = SafeSubscriber;\nfunction handleUnhandledError(error) {\n if (config_1.config.useDeprecatedSynchronousErrorHandling) {\n errorContext_1.captureError(error);\n }\n else {\n reportUnhandledError_1.reportUnhandledError(error);\n }\n}\nfunction defaultErrorHandler(err) {\n throw err;\n}\nfunction handleStoppedNotification(notification, subscriber) {\n var onStoppedNotification = config_1.config.onStoppedNotification;\n onStoppedNotification && timeoutProvider_1.timeoutProvider.setTimeout(function () { return onStoppedNotification(notification, subscriber); });\n}\nexports.EMPTY_OBSERVER = {\n closed: true,\n next: noop_1.noop,\n error: defaultErrorHandler,\n complete: noop_1.noop,\n};\n//# sourceMappingURL=Subscriber.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.observable = void 0;\nexports.observable = (function () { return (typeof Symbol === 'function' && Symbol.observable) || '@@observable'; })();\n//# sourceMappingURL=observable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.identity = void 0;\nfunction identity(x) {\n return x;\n}\nexports.identity = identity;\n//# sourceMappingURL=identity.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pipeFromArray = exports.pipe = void 0;\nvar identity_1 = require(\"./identity\");\nfunction pipe() {\n var fns = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n fns[_i] = arguments[_i];\n }\n return pipeFromArray(fns);\n}\nexports.pipe = pipe;\nfunction pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity_1.identity;\n }\n if (fns.length === 1) {\n return fns[0];\n }\n return function piped(input) {\n return fns.reduce(function (prev, fn) { return fn(prev); }, input);\n };\n}\nexports.pipeFromArray = pipeFromArray;\n//# sourceMappingURL=pipe.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Observable = void 0;\nvar Subscriber_1 = require(\"./Subscriber\");\nvar Subscription_1 = require(\"./Subscription\");\nvar observable_1 = require(\"./symbol/observable\");\nvar pipe_1 = require(\"./util/pipe\");\nvar config_1 = require(\"./config\");\nvar isFunction_1 = require(\"./util/isFunction\");\nvar errorContext_1 = require(\"./util/errorContext\");\nvar Observable = (function () {\n function Observable(subscribe) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n Observable.prototype.lift = function (operator) {\n var observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n };\n Observable.prototype.subscribe = function (observerOrNext, error, complete) {\n var _this = this;\n var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new Subscriber_1.SafeSubscriber(observerOrNext, error, complete);\n errorContext_1.errorContext(function () {\n var _a = _this, operator = _a.operator, source = _a.source;\n subscriber.add(operator\n ?\n operator.call(subscriber, source)\n : source\n ?\n _this._subscribe(subscriber)\n :\n _this._trySubscribe(subscriber));\n });\n return subscriber;\n };\n Observable.prototype._trySubscribe = function (sink) {\n try {\n return this._subscribe(sink);\n }\n catch (err) {\n sink.error(err);\n }\n };\n Observable.prototype.forEach = function (next, promiseCtor) {\n var _this = this;\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor(function (resolve, reject) {\n var subscriber = new Subscriber_1.SafeSubscriber({\n next: function (value) {\n try {\n next(value);\n }\n catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n _this.subscribe(subscriber);\n });\n };\n Observable.prototype._subscribe = function (subscriber) {\n var _a;\n return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n };\n Observable.prototype[observable_1.observable] = function () {\n return this;\n };\n Observable.prototype.pipe = function () {\n var operations = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n operations[_i] = arguments[_i];\n }\n return pipe_1.pipeFromArray(operations)(this);\n };\n Observable.prototype.toPromise = function (promiseCtor) {\n var _this = this;\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor(function (resolve, reject) {\n var value;\n _this.subscribe(function (x) { return (value = x); }, function (err) { return reject(err); }, function () { return resolve(value); });\n });\n };\n Observable.create = function (subscribe) {\n return new Observable(subscribe);\n };\n return Observable;\n}());\nexports.Observable = Observable;\nfunction getPromiseCtor(promiseCtor) {\n var _a;\n return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_1.config.Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction isObserver(value) {\n return value && isFunction_1.isFunction(value.next) && isFunction_1.isFunction(value.error) && isFunction_1.isFunction(value.complete);\n}\nfunction isSubscriber(value) {\n return (value && value instanceof Subscriber_1.Subscriber) || (isObserver(value) && Subscription_1.isSubscription(value));\n}\n//# sourceMappingURL=Observable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.operate = exports.hasLift = void 0;\nvar isFunction_1 = require(\"./isFunction\");\nfunction hasLift(source) {\n return isFunction_1.isFunction(source === null || source === void 0 ? void 0 : source.lift);\n}\nexports.hasLift = hasLift;\nfunction operate(init) {\n return function (source) {\n if (hasLift(source)) {\n return source.lift(function (liftedSource) {\n try {\n return init(liftedSource, this);\n }\n catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\nexports.operate = operate;\n//# sourceMappingURL=lift.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.OperatorSubscriber = exports.createOperatorSubscriber = void 0;\nvar Subscriber_1 = require(\"../Subscriber\");\nfunction createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\nexports.createOperatorSubscriber = createOperatorSubscriber;\nvar OperatorSubscriber = (function (_super) {\n __extends(OperatorSubscriber, _super);\n function OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) {\n var _this = _super.call(this, destination) || this;\n _this.onFinalize = onFinalize;\n _this.shouldUnsubscribe = shouldUnsubscribe;\n _this._next = onNext\n ? function (value) {\n try {\n onNext(value);\n }\n catch (err) {\n destination.error(err);\n }\n }\n : _super.prototype._next;\n _this._error = onError\n ? function (err) {\n try {\n onError(err);\n }\n catch (err) {\n destination.error(err);\n }\n finally {\n this.unsubscribe();\n }\n }\n : _super.prototype._error;\n _this._complete = onComplete\n ? function () {\n try {\n onComplete();\n }\n catch (err) {\n destination.error(err);\n }\n finally {\n this.unsubscribe();\n }\n }\n : _super.prototype._complete;\n return _this;\n }\n OperatorSubscriber.prototype.unsubscribe = function () {\n var _a;\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n var closed_1 = this.closed;\n _super.prototype.unsubscribe.call(this);\n !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this));\n }\n };\n return OperatorSubscriber;\n}(Subscriber_1.Subscriber));\nexports.OperatorSubscriber = OperatorSubscriber;\n//# sourceMappingURL=OperatorSubscriber.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.refCount = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction refCount() {\n return lift_1.operate(function (source, subscriber) {\n var connection = null;\n source._refCount++;\n var refCounter = OperatorSubscriber_1.createOperatorSubscriber(subscriber, undefined, undefined, undefined, function () {\n if (!source || source._refCount <= 0 || 0 < --source._refCount) {\n connection = null;\n return;\n }\n var sharedConnection = source._connection;\n var conn = connection;\n connection = null;\n if (sharedConnection && (!conn || sharedConnection === conn)) {\n sharedConnection.unsubscribe();\n }\n subscriber.unsubscribe();\n });\n source.subscribe(refCounter);\n if (!refCounter.closed) {\n connection = source.connect();\n }\n });\n}\nexports.refCount = refCount;\n//# sourceMappingURL=refCount.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ConnectableObservable = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar Subscription_1 = require(\"../Subscription\");\nvar refCount_1 = require(\"../operators/refCount\");\nvar OperatorSubscriber_1 = require(\"../operators/OperatorSubscriber\");\nvar lift_1 = require(\"../util/lift\");\nvar ConnectableObservable = (function (_super) {\n __extends(ConnectableObservable, _super);\n function ConnectableObservable(source, subjectFactory) {\n var _this = _super.call(this) || this;\n _this.source = source;\n _this.subjectFactory = subjectFactory;\n _this._subject = null;\n _this._refCount = 0;\n _this._connection = null;\n if (lift_1.hasLift(source)) {\n _this.lift = source.lift;\n }\n return _this;\n }\n ConnectableObservable.prototype._subscribe = function (subscriber) {\n return this.getSubject().subscribe(subscriber);\n };\n ConnectableObservable.prototype.getSubject = function () {\n var subject = this._subject;\n if (!subject || subject.isStopped) {\n this._subject = this.subjectFactory();\n }\n return this._subject;\n };\n ConnectableObservable.prototype._teardown = function () {\n this._refCount = 0;\n var _connection = this._connection;\n this._subject = this._connection = null;\n _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe();\n };\n ConnectableObservable.prototype.connect = function () {\n var _this = this;\n var connection = this._connection;\n if (!connection) {\n connection = this._connection = new Subscription_1.Subscription();\n var subject_1 = this.getSubject();\n connection.add(this.source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subject_1, undefined, function () {\n _this._teardown();\n subject_1.complete();\n }, function (err) {\n _this._teardown();\n subject_1.error(err);\n }, function () { return _this._teardown(); })));\n if (connection.closed) {\n this._connection = null;\n connection = Subscription_1.Subscription.EMPTY;\n }\n }\n return connection;\n };\n ConnectableObservable.prototype.refCount = function () {\n return refCount_1.refCount()(this);\n };\n return ConnectableObservable;\n}(Observable_1.Observable));\nexports.ConnectableObservable = ConnectableObservable;\n//# sourceMappingURL=ConnectableObservable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.performanceTimestampProvider = void 0;\nexports.performanceTimestampProvider = {\n now: function () {\n return (exports.performanceTimestampProvider.delegate || performance).now();\n },\n delegate: undefined,\n};\n//# sourceMappingURL=performanceTimestampProvider.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.animationFrameProvider = void 0;\nvar Subscription_1 = require(\"../Subscription\");\nexports.animationFrameProvider = {\n schedule: function (callback) {\n var request = requestAnimationFrame;\n var cancel = cancelAnimationFrame;\n var delegate = exports.animationFrameProvider.delegate;\n if (delegate) {\n request = delegate.requestAnimationFrame;\n cancel = delegate.cancelAnimationFrame;\n }\n var handle = request(function (timestamp) {\n cancel = undefined;\n callback(timestamp);\n });\n return new Subscription_1.Subscription(function () { return cancel === null || cancel === void 0 ? void 0 : cancel(handle); });\n },\n requestAnimationFrame: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = exports.animationFrameProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spreadArray([], __read(args)));\n },\n cancelAnimationFrame: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = exports.animationFrameProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spreadArray([], __read(args)));\n },\n delegate: undefined,\n};\n//# sourceMappingURL=animationFrameProvider.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.animationFrames = void 0;\nvar Observable_1 = require(\"../../Observable\");\nvar performanceTimestampProvider_1 = require(\"../../scheduler/performanceTimestampProvider\");\nvar animationFrameProvider_1 = require(\"../../scheduler/animationFrameProvider\");\nfunction animationFrames(timestampProvider) {\n return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES;\n}\nexports.animationFrames = animationFrames;\nfunction animationFramesFactory(timestampProvider) {\n return new Observable_1.Observable(function (subscriber) {\n var provider = timestampProvider || performanceTimestampProvider_1.performanceTimestampProvider;\n var start = provider.now();\n var id = 0;\n var run = function () {\n if (!subscriber.closed) {\n id = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function (timestamp) {\n id = 0;\n var now = provider.now();\n subscriber.next({\n timestamp: timestampProvider ? now : timestamp,\n elapsed: now - start,\n });\n run();\n });\n }\n };\n run();\n return function () {\n if (id) {\n animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id);\n }\n };\n });\n}\nvar DEFAULT_ANIMATION_FRAMES = animationFramesFactory();\n//# sourceMappingURL=animationFrames.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ObjectUnsubscribedError = void 0;\nvar createErrorClass_1 = require(\"./createErrorClass\");\nexports.ObjectUnsubscribedError = createErrorClass_1.createErrorClass(function (_super) {\n return function ObjectUnsubscribedErrorImpl() {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n };\n});\n//# sourceMappingURL=ObjectUnsubscribedError.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AnonymousSubject = exports.Subject = void 0;\nvar Observable_1 = require(\"./Observable\");\nvar Subscription_1 = require(\"./Subscription\");\nvar ObjectUnsubscribedError_1 = require(\"./util/ObjectUnsubscribedError\");\nvar arrRemove_1 = require(\"./util/arrRemove\");\nvar errorContext_1 = require(\"./util/errorContext\");\nvar Subject = (function (_super) {\n __extends(Subject, _super);\n function Subject() {\n var _this = _super.call(this) || this;\n _this.closed = false;\n _this.currentObservers = null;\n _this.observers = [];\n _this.isStopped = false;\n _this.hasError = false;\n _this.thrownError = null;\n return _this;\n }\n Subject.prototype.lift = function (operator) {\n var subject = new AnonymousSubject(this, this);\n subject.operator = operator;\n return subject;\n };\n Subject.prototype._throwIfClosed = function () {\n if (this.closed) {\n throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError();\n }\n };\n Subject.prototype.next = function (value) {\n var _this = this;\n errorContext_1.errorContext(function () {\n var e_1, _a;\n _this._throwIfClosed();\n if (!_this.isStopped) {\n if (!_this.currentObservers) {\n _this.currentObservers = Array.from(_this.observers);\n }\n try {\n for (var _b = __values(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) {\n var observer = _c.value;\n observer.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n });\n };\n Subject.prototype.error = function (err) {\n var _this = this;\n errorContext_1.errorContext(function () {\n _this._throwIfClosed();\n if (!_this.isStopped) {\n _this.hasError = _this.isStopped = true;\n _this.thrownError = err;\n var observers = _this.observers;\n while (observers.length) {\n observers.shift().error(err);\n }\n }\n });\n };\n Subject.prototype.complete = function () {\n var _this = this;\n errorContext_1.errorContext(function () {\n _this._throwIfClosed();\n if (!_this.isStopped) {\n _this.isStopped = true;\n var observers = _this.observers;\n while (observers.length) {\n observers.shift().complete();\n }\n }\n });\n };\n Subject.prototype.unsubscribe = function () {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null;\n };\n Object.defineProperty(Subject.prototype, \"observed\", {\n get: function () {\n var _a;\n return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;\n },\n enumerable: false,\n configurable: true\n });\n Subject.prototype._trySubscribe = function (subscriber) {\n this._throwIfClosed();\n return _super.prototype._trySubscribe.call(this, subscriber);\n };\n Subject.prototype._subscribe = function (subscriber) {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n };\n Subject.prototype._innerSubscribe = function (subscriber) {\n var _this = this;\n var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers;\n if (hasError || isStopped) {\n return Subscription_1.EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription_1.Subscription(function () {\n _this.currentObservers = null;\n arrRemove_1.arrRemove(observers, subscriber);\n });\n };\n Subject.prototype._checkFinalizedStatuses = function (subscriber) {\n var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped;\n if (hasError) {\n subscriber.error(thrownError);\n }\n else if (isStopped) {\n subscriber.complete();\n }\n };\n Subject.prototype.asObservable = function () {\n var observable = new Observable_1.Observable();\n observable.source = this;\n return observable;\n };\n Subject.create = function (destination, source) {\n return new AnonymousSubject(destination, source);\n };\n return Subject;\n}(Observable_1.Observable));\nexports.Subject = Subject;\nvar AnonymousSubject = (function (_super) {\n __extends(AnonymousSubject, _super);\n function AnonymousSubject(destination, source) {\n var _this = _super.call(this) || this;\n _this.destination = destination;\n _this.source = source;\n return _this;\n }\n AnonymousSubject.prototype.next = function (value) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);\n };\n AnonymousSubject.prototype.error = function (err) {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);\n };\n AnonymousSubject.prototype.complete = function () {\n var _a, _b;\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);\n };\n AnonymousSubject.prototype._subscribe = function (subscriber) {\n var _a, _b;\n return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : Subscription_1.EMPTY_SUBSCRIPTION;\n };\n return AnonymousSubject;\n}(Subject));\nexports.AnonymousSubject = AnonymousSubject;\n//# sourceMappingURL=Subject.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BehaviorSubject = void 0;\nvar Subject_1 = require(\"./Subject\");\nvar BehaviorSubject = (function (_super) {\n __extends(BehaviorSubject, _super);\n function BehaviorSubject(_value) {\n var _this = _super.call(this) || this;\n _this._value = _value;\n return _this;\n }\n Object.defineProperty(BehaviorSubject.prototype, \"value\", {\n get: function () {\n return this.getValue();\n },\n enumerable: false,\n configurable: true\n });\n BehaviorSubject.prototype._subscribe = function (subscriber) {\n var subscription = _super.prototype._subscribe.call(this, subscriber);\n !subscription.closed && subscriber.next(this._value);\n return subscription;\n };\n BehaviorSubject.prototype.getValue = function () {\n var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value;\n if (hasError) {\n throw thrownError;\n }\n this._throwIfClosed();\n return _value;\n };\n BehaviorSubject.prototype.next = function (value) {\n _super.prototype.next.call(this, (this._value = value));\n };\n return BehaviorSubject;\n}(Subject_1.Subject));\nexports.BehaviorSubject = BehaviorSubject;\n//# sourceMappingURL=BehaviorSubject.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dateTimestampProvider = void 0;\nexports.dateTimestampProvider = {\n now: function () {\n return (exports.dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n//# sourceMappingURL=dateTimestampProvider.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReplaySubject = void 0;\nvar Subject_1 = require(\"./Subject\");\nvar dateTimestampProvider_1 = require(\"./scheduler/dateTimestampProvider\");\nvar ReplaySubject = (function (_super) {\n __extends(ReplaySubject, _super);\n function ReplaySubject(_bufferSize, _windowTime, _timestampProvider) {\n if (_bufferSize === void 0) { _bufferSize = Infinity; }\n if (_windowTime === void 0) { _windowTime = Infinity; }\n if (_timestampProvider === void 0) { _timestampProvider = dateTimestampProvider_1.dateTimestampProvider; }\n var _this = _super.call(this) || this;\n _this._bufferSize = _bufferSize;\n _this._windowTime = _windowTime;\n _this._timestampProvider = _timestampProvider;\n _this._buffer = [];\n _this._infiniteTimeWindow = true;\n _this._infiniteTimeWindow = _windowTime === Infinity;\n _this._bufferSize = Math.max(1, _bufferSize);\n _this._windowTime = Math.max(1, _windowTime);\n return _this;\n }\n ReplaySubject.prototype.next = function (value) {\n var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime;\n if (!isStopped) {\n _buffer.push(value);\n !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);\n }\n this._trimBuffer();\n _super.prototype.next.call(this, value);\n };\n ReplaySubject.prototype._subscribe = function (subscriber) {\n this._throwIfClosed();\n this._trimBuffer();\n var subscription = this._innerSubscribe(subscriber);\n var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer;\n var copy = _buffer.slice();\n for (var i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i]);\n }\n this._checkFinalizedStatuses(subscriber);\n return subscription;\n };\n ReplaySubject.prototype._trimBuffer = function () {\n var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow;\n var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;\n _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);\n if (!_infiniteTimeWindow) {\n var now = _timestampProvider.now();\n var last = 0;\n for (var i = 1; i < _buffer.length && _buffer[i] <= now; i += 2) {\n last = i;\n }\n last && _buffer.splice(0, last + 1);\n }\n };\n return ReplaySubject;\n}(Subject_1.Subject));\nexports.ReplaySubject = ReplaySubject;\n//# sourceMappingURL=ReplaySubject.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AsyncSubject = void 0;\nvar Subject_1 = require(\"./Subject\");\nvar AsyncSubject = (function (_super) {\n __extends(AsyncSubject, _super);\n function AsyncSubject() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._value = null;\n _this._hasValue = false;\n _this._isComplete = false;\n return _this;\n }\n AsyncSubject.prototype._checkFinalizedStatuses = function (subscriber) {\n var _a = this, hasError = _a.hasError, _hasValue = _a._hasValue, _value = _a._value, thrownError = _a.thrownError, isStopped = _a.isStopped, _isComplete = _a._isComplete;\n if (hasError) {\n subscriber.error(thrownError);\n }\n else if (isStopped || _isComplete) {\n _hasValue && subscriber.next(_value);\n subscriber.complete();\n }\n };\n AsyncSubject.prototype.next = function (value) {\n if (!this.isStopped) {\n this._value = value;\n this._hasValue = true;\n }\n };\n AsyncSubject.prototype.complete = function () {\n var _a = this, _hasValue = _a._hasValue, _value = _a._value, _isComplete = _a._isComplete;\n if (!_isComplete) {\n this._isComplete = true;\n _hasValue && _super.prototype.next.call(this, _value);\n _super.prototype.complete.call(this);\n }\n };\n return AsyncSubject;\n}(Subject_1.Subject));\nexports.AsyncSubject = AsyncSubject;\n//# sourceMappingURL=AsyncSubject.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Action = void 0;\nvar Subscription_1 = require(\"../Subscription\");\nvar Action = (function (_super) {\n __extends(Action, _super);\n function Action(scheduler, work) {\n return _super.call(this) || this;\n }\n Action.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n return this;\n };\n return Action;\n}(Subscription_1.Subscription));\nexports.Action = Action;\n//# sourceMappingURL=Action.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.intervalProvider = void 0;\nexports.intervalProvider = {\n setInterval: function (handler, timeout) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var delegate = exports.intervalProvider.delegate;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) {\n return delegate.setInterval.apply(delegate, __spreadArray([handler, timeout], __read(args)));\n }\n return setInterval.apply(void 0, __spreadArray([handler, timeout], __read(args)));\n },\n clearInterval: function (handle) {\n var delegate = exports.intervalProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=intervalProvider.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AsyncAction = void 0;\nvar Action_1 = require(\"./Action\");\nvar intervalProvider_1 = require(\"./intervalProvider\");\nvar arrRemove_1 = require(\"../util/arrRemove\");\nvar AsyncAction = (function (_super) {\n __extends(AsyncAction, _super);\n function AsyncAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n _this.pending = false;\n return _this;\n }\n AsyncAction.prototype.schedule = function (state, delay) {\n var _a;\n if (delay === void 0) { delay = 0; }\n if (this.closed) {\n return this;\n }\n this.state = state;\n var id = this.id;\n var scheduler = this.scheduler;\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n this.pending = true;\n this.delay = delay;\n this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler, this.id, delay);\n return this;\n };\n AsyncAction.prototype.requestAsyncId = function (scheduler, _id, delay) {\n if (delay === void 0) { delay = 0; }\n return intervalProvider_1.intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n };\n AsyncAction.prototype.recycleAsyncId = function (_scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n if (id != null) {\n intervalProvider_1.intervalProvider.clearInterval(id);\n }\n return undefined;\n };\n AsyncAction.prototype.execute = function (state, delay) {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n this.pending = false;\n var error = this._execute(state, delay);\n if (error) {\n return error;\n }\n else if (this.pending === false && this.id != null) {\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n };\n AsyncAction.prototype._execute = function (state, _delay) {\n var errored = false;\n var errorValue;\n try {\n this.work(state);\n }\n catch (e) {\n errored = true;\n errorValue = e ? e : new Error('Scheduled action threw falsy error');\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n };\n AsyncAction.prototype.unsubscribe = function () {\n if (!this.closed) {\n var _a = this, id = _a.id, scheduler = _a.scheduler;\n var actions = scheduler.actions;\n this.work = this.state = this.scheduler = null;\n this.pending = false;\n arrRemove_1.arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n this.delay = null;\n _super.prototype.unsubscribe.call(this);\n }\n };\n return AsyncAction;\n}(Action_1.Action));\nexports.AsyncAction = AsyncAction;\n//# sourceMappingURL=AsyncAction.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TestTools = exports.Immediate = void 0;\nvar nextHandle = 1;\nvar resolved;\nvar activeHandles = {};\nfunction findAndClearHandle(handle) {\n if (handle in activeHandles) {\n delete activeHandles[handle];\n return true;\n }\n return false;\n}\nexports.Immediate = {\n setImmediate: function (cb) {\n var handle = nextHandle++;\n activeHandles[handle] = true;\n if (!resolved) {\n resolved = Promise.resolve();\n }\n resolved.then(function () { return findAndClearHandle(handle) && cb(); });\n return handle;\n },\n clearImmediate: function (handle) {\n findAndClearHandle(handle);\n },\n};\nexports.TestTools = {\n pending: function () {\n return Object.keys(activeHandles).length;\n }\n};\n//# sourceMappingURL=Immediate.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.immediateProvider = void 0;\nvar Immediate_1 = require(\"../util/Immediate\");\nvar setImmediate = Immediate_1.Immediate.setImmediate, clearImmediate = Immediate_1.Immediate.clearImmediate;\nexports.immediateProvider = {\n setImmediate: function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var delegate = exports.immediateProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate).apply(void 0, __spreadArray([], __read(args)));\n },\n clearImmediate: function (handle) {\n var delegate = exports.immediateProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=immediateProvider.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AsapAction = void 0;\nvar AsyncAction_1 = require(\"./AsyncAction\");\nvar immediateProvider_1 = require(\"./immediateProvider\");\nvar AsapAction = (function (_super) {\n __extends(AsapAction, _super);\n function AsapAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n return _this;\n }\n AsapAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay !== null && delay > 0) {\n return _super.prototype.requestAsyncId.call(this, scheduler, id, delay);\n }\n scheduler.actions.push(this);\n return scheduler._scheduled || (scheduler._scheduled = immediateProvider_1.immediateProvider.setImmediate(scheduler.flush.bind(scheduler, undefined)));\n };\n AsapAction.prototype.recycleAsyncId = function (scheduler, id, delay) {\n var _a;\n if (delay === void 0) { delay = 0; }\n if (delay != null ? delay > 0 : this.delay > 0) {\n return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay);\n }\n var actions = scheduler.actions;\n if (id != null && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) {\n immediateProvider_1.immediateProvider.clearImmediate(id);\n if (scheduler._scheduled === id) {\n scheduler._scheduled = undefined;\n }\n }\n return undefined;\n };\n return AsapAction;\n}(AsyncAction_1.AsyncAction));\nexports.AsapAction = AsapAction;\n//# sourceMappingURL=AsapAction.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Scheduler = void 0;\nvar dateTimestampProvider_1 = require(\"./scheduler/dateTimestampProvider\");\nvar Scheduler = (function () {\n function Scheduler(schedulerActionCtor, now) {\n if (now === void 0) { now = Scheduler.now; }\n this.schedulerActionCtor = schedulerActionCtor;\n this.now = now;\n }\n Scheduler.prototype.schedule = function (work, delay, state) {\n if (delay === void 0) { delay = 0; }\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n };\n Scheduler.now = dateTimestampProvider_1.dateTimestampProvider.now;\n return Scheduler;\n}());\nexports.Scheduler = Scheduler;\n//# sourceMappingURL=Scheduler.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AsyncScheduler = void 0;\nvar Scheduler_1 = require(\"../Scheduler\");\nvar AsyncScheduler = (function (_super) {\n __extends(AsyncScheduler, _super);\n function AsyncScheduler(SchedulerAction, now) {\n if (now === void 0) { now = Scheduler_1.Scheduler.now; }\n var _this = _super.call(this, SchedulerAction, now) || this;\n _this.actions = [];\n _this._active = false;\n return _this;\n }\n AsyncScheduler.prototype.flush = function (action) {\n var actions = this.actions;\n if (this._active) {\n actions.push(action);\n return;\n }\n var error;\n this._active = true;\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions.shift()));\n this._active = false;\n if (error) {\n while ((action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AsyncScheduler;\n}(Scheduler_1.Scheduler));\nexports.AsyncScheduler = AsyncScheduler;\n//# sourceMappingURL=AsyncScheduler.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AsapScheduler = void 0;\nvar AsyncScheduler_1 = require(\"./AsyncScheduler\");\nvar AsapScheduler = (function (_super) {\n __extends(AsapScheduler, _super);\n function AsapScheduler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AsapScheduler.prototype.flush = function (action) {\n this._active = true;\n var flushId = this._scheduled;\n this._scheduled = undefined;\n var actions = this.actions;\n var error;\n action = action || actions.shift();\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n this._active = false;\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AsapScheduler;\n}(AsyncScheduler_1.AsyncScheduler));\nexports.AsapScheduler = AsapScheduler;\n//# sourceMappingURL=AsapScheduler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.asap = exports.asapScheduler = void 0;\nvar AsapAction_1 = require(\"./AsapAction\");\nvar AsapScheduler_1 = require(\"./AsapScheduler\");\nexports.asapScheduler = new AsapScheduler_1.AsapScheduler(AsapAction_1.AsapAction);\nexports.asap = exports.asapScheduler;\n//# sourceMappingURL=asap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.async = exports.asyncScheduler = void 0;\nvar AsyncAction_1 = require(\"./AsyncAction\");\nvar AsyncScheduler_1 = require(\"./AsyncScheduler\");\nexports.asyncScheduler = new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction);\nexports.async = exports.asyncScheduler;\n//# sourceMappingURL=async.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.QueueAction = void 0;\nvar AsyncAction_1 = require(\"./AsyncAction\");\nvar QueueAction = (function (_super) {\n __extends(QueueAction, _super);\n function QueueAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n return _this;\n }\n QueueAction.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay > 0) {\n return _super.prototype.schedule.call(this, state, delay);\n }\n this.delay = delay;\n this.state = state;\n this.scheduler.flush(this);\n return this;\n };\n QueueAction.prototype.execute = function (state, delay) {\n return delay > 0 || this.closed ? _super.prototype.execute.call(this, state, delay) : this._execute(state, delay);\n };\n QueueAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if ((delay != null && delay > 0) || (delay == null && this.delay > 0)) {\n return _super.prototype.requestAsyncId.call(this, scheduler, id, delay);\n }\n scheduler.flush(this);\n return 0;\n };\n return QueueAction;\n}(AsyncAction_1.AsyncAction));\nexports.QueueAction = QueueAction;\n//# sourceMappingURL=QueueAction.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.QueueScheduler = void 0;\nvar AsyncScheduler_1 = require(\"./AsyncScheduler\");\nvar QueueScheduler = (function (_super) {\n __extends(QueueScheduler, _super);\n function QueueScheduler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n return QueueScheduler;\n}(AsyncScheduler_1.AsyncScheduler));\nexports.QueueScheduler = QueueScheduler;\n//# sourceMappingURL=QueueScheduler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.queue = exports.queueScheduler = void 0;\nvar QueueAction_1 = require(\"./QueueAction\");\nvar QueueScheduler_1 = require(\"./QueueScheduler\");\nexports.queueScheduler = new QueueScheduler_1.QueueScheduler(QueueAction_1.QueueAction);\nexports.queue = exports.queueScheduler;\n//# sourceMappingURL=queue.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AnimationFrameAction = void 0;\nvar AsyncAction_1 = require(\"./AsyncAction\");\nvar animationFrameProvider_1 = require(\"./animationFrameProvider\");\nvar AnimationFrameAction = (function (_super) {\n __extends(AnimationFrameAction, _super);\n function AnimationFrameAction(scheduler, work) {\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n return _this;\n }\n AnimationFrameAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n if (delay !== null && delay > 0) {\n return _super.prototype.requestAsyncId.call(this, scheduler, id, delay);\n }\n scheduler.actions.push(this);\n return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function () { return scheduler.flush(undefined); }));\n };\n AnimationFrameAction.prototype.recycleAsyncId = function (scheduler, id, delay) {\n var _a;\n if (delay === void 0) { delay = 0; }\n if (delay != null ? delay > 0 : this.delay > 0) {\n return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay);\n }\n var actions = scheduler.actions;\n if (id != null && id === scheduler._scheduled && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) {\n animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id);\n scheduler._scheduled = undefined;\n }\n return undefined;\n };\n return AnimationFrameAction;\n}(AsyncAction_1.AsyncAction));\nexports.AnimationFrameAction = AnimationFrameAction;\n//# sourceMappingURL=AnimationFrameAction.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AnimationFrameScheduler = void 0;\nvar AsyncScheduler_1 = require(\"./AsyncScheduler\");\nvar AnimationFrameScheduler = (function (_super) {\n __extends(AnimationFrameScheduler, _super);\n function AnimationFrameScheduler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AnimationFrameScheduler.prototype.flush = function (action) {\n this._active = true;\n var flushId;\n if (action) {\n flushId = action.id;\n }\n else {\n flushId = this._scheduled;\n this._scheduled = undefined;\n }\n var actions = this.actions;\n var error;\n action = action || actions.shift();\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n this._active = false;\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n return AnimationFrameScheduler;\n}(AsyncScheduler_1.AsyncScheduler));\nexports.AnimationFrameScheduler = AnimationFrameScheduler;\n//# sourceMappingURL=AnimationFrameScheduler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.animationFrame = exports.animationFrameScheduler = void 0;\nvar AnimationFrameAction_1 = require(\"./AnimationFrameAction\");\nvar AnimationFrameScheduler_1 = require(\"./AnimationFrameScheduler\");\nexports.animationFrameScheduler = new AnimationFrameScheduler_1.AnimationFrameScheduler(AnimationFrameAction_1.AnimationFrameAction);\nexports.animationFrame = exports.animationFrameScheduler;\n//# sourceMappingURL=animationFrame.js.map","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.VirtualAction = exports.VirtualTimeScheduler = void 0;\nvar AsyncAction_1 = require(\"./AsyncAction\");\nvar Subscription_1 = require(\"../Subscription\");\nvar AsyncScheduler_1 = require(\"./AsyncScheduler\");\nvar VirtualTimeScheduler = (function (_super) {\n __extends(VirtualTimeScheduler, _super);\n function VirtualTimeScheduler(schedulerActionCtor, maxFrames) {\n if (schedulerActionCtor === void 0) { schedulerActionCtor = VirtualAction; }\n if (maxFrames === void 0) { maxFrames = Infinity; }\n var _this = _super.call(this, schedulerActionCtor, function () { return _this.frame; }) || this;\n _this.maxFrames = maxFrames;\n _this.frame = 0;\n _this.index = -1;\n return _this;\n }\n VirtualTimeScheduler.prototype.flush = function () {\n var _a = this, actions = _a.actions, maxFrames = _a.maxFrames;\n var error;\n var action;\n while ((action = actions[0]) && action.delay <= maxFrames) {\n actions.shift();\n this.frame = action.delay;\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n }\n if (error) {\n while ((action = actions.shift())) {\n action.unsubscribe();\n }\n throw error;\n }\n };\n VirtualTimeScheduler.frameTimeFactor = 10;\n return VirtualTimeScheduler;\n}(AsyncScheduler_1.AsyncScheduler));\nexports.VirtualTimeScheduler = VirtualTimeScheduler;\nvar VirtualAction = (function (_super) {\n __extends(VirtualAction, _super);\n function VirtualAction(scheduler, work, index) {\n if (index === void 0) { index = (scheduler.index += 1); }\n var _this = _super.call(this, scheduler, work) || this;\n _this.scheduler = scheduler;\n _this.work = work;\n _this.index = index;\n _this.active = true;\n _this.index = scheduler.index = index;\n return _this;\n }\n VirtualAction.prototype.schedule = function (state, delay) {\n if (delay === void 0) { delay = 0; }\n if (Number.isFinite(delay)) {\n if (!this.id) {\n return _super.prototype.schedule.call(this, state, delay);\n }\n this.active = false;\n var action = new VirtualAction(this.scheduler, this.work);\n this.add(action);\n return action.schedule(state, delay);\n }\n else {\n return Subscription_1.Subscription.EMPTY;\n }\n };\n VirtualAction.prototype.requestAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n this.delay = scheduler.frame + delay;\n var actions = scheduler.actions;\n actions.push(this);\n actions.sort(VirtualAction.sortActions);\n return 1;\n };\n VirtualAction.prototype.recycleAsyncId = function (scheduler, id, delay) {\n if (delay === void 0) { delay = 0; }\n return undefined;\n };\n VirtualAction.prototype._execute = function (state, delay) {\n if (this.active === true) {\n return _super.prototype._execute.call(this, state, delay);\n }\n };\n VirtualAction.sortActions = function (a, b) {\n if (a.delay === b.delay) {\n if (a.index === b.index) {\n return 0;\n }\n else if (a.index > b.index) {\n return 1;\n }\n else {\n return -1;\n }\n }\n else if (a.delay > b.delay) {\n return 1;\n }\n else {\n return -1;\n }\n };\n return VirtualAction;\n}(AsyncAction_1.AsyncAction));\nexports.VirtualAction = VirtualAction;\n//# sourceMappingURL=VirtualTimeScheduler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.empty = exports.EMPTY = void 0;\nvar Observable_1 = require(\"../Observable\");\nexports.EMPTY = new Observable_1.Observable(function (subscriber) { return subscriber.complete(); });\nfunction empty(scheduler) {\n return scheduler ? emptyScheduled(scheduler) : exports.EMPTY;\n}\nexports.empty = empty;\nfunction emptyScheduled(scheduler) {\n return new Observable_1.Observable(function (subscriber) { return scheduler.schedule(function () { return subscriber.complete(); }); });\n}\n//# sourceMappingURL=empty.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isScheduler = void 0;\nvar isFunction_1 = require(\"./isFunction\");\nfunction isScheduler(value) {\n return value && isFunction_1.isFunction(value.schedule);\n}\nexports.isScheduler = isScheduler;\n//# sourceMappingURL=isScheduler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.popNumber = exports.popScheduler = exports.popResultSelector = void 0;\nvar isFunction_1 = require(\"./isFunction\");\nvar isScheduler_1 = require(\"./isScheduler\");\nfunction last(arr) {\n return arr[arr.length - 1];\n}\nfunction popResultSelector(args) {\n return isFunction_1.isFunction(last(args)) ? args.pop() : undefined;\n}\nexports.popResultSelector = popResultSelector;\nfunction popScheduler(args) {\n return isScheduler_1.isScheduler(last(args)) ? args.pop() : undefined;\n}\nexports.popScheduler = popScheduler;\nfunction popNumber(args, defaultValue) {\n return typeof last(args) === 'number' ? args.pop() : defaultValue;\n}\nexports.popNumber = popNumber;\n//# sourceMappingURL=args.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isArrayLike = void 0;\nexports.isArrayLike = (function (x) { return x && typeof x.length === 'number' && typeof x !== 'function'; });\n//# sourceMappingURL=isArrayLike.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isPromise = void 0;\nvar isFunction_1 = require(\"./isFunction\");\nfunction isPromise(value) {\n return isFunction_1.isFunction(value === null || value === void 0 ? void 0 : value.then);\n}\nexports.isPromise = isPromise;\n//# sourceMappingURL=isPromise.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isInteropObservable = void 0;\nvar observable_1 = require(\"../symbol/observable\");\nvar isFunction_1 = require(\"./isFunction\");\nfunction isInteropObservable(input) {\n return isFunction_1.isFunction(input[observable_1.observable]);\n}\nexports.isInteropObservable = isInteropObservable;\n//# sourceMappingURL=isInteropObservable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isAsyncIterable = void 0;\nvar isFunction_1 = require(\"./isFunction\");\nfunction isAsyncIterable(obj) {\n return Symbol.asyncIterator && isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);\n}\nexports.isAsyncIterable = isAsyncIterable;\n//# sourceMappingURL=isAsyncIterable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createInvalidObservableTypeError = void 0;\nfunction createInvalidObservableTypeError(input) {\n return new TypeError(\"You provided \" + (input !== null && typeof input === 'object' ? 'an invalid object' : \"'\" + input + \"'\") + \" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.\");\n}\nexports.createInvalidObservableTypeError = createInvalidObservableTypeError;\n//# sourceMappingURL=throwUnobservableError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.iterator = exports.getSymbolIterator = void 0;\nfunction getSymbolIterator() {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator';\n }\n return Symbol.iterator;\n}\nexports.getSymbolIterator = getSymbolIterator;\nexports.iterator = getSymbolIterator();\n//# sourceMappingURL=iterator.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isIterable = void 0;\nvar iterator_1 = require(\"../symbol/iterator\");\nvar isFunction_1 = require(\"./isFunction\");\nfunction isIterable(input) {\n return isFunction_1.isFunction(input === null || input === void 0 ? void 0 : input[iterator_1.iterator]);\n}\nexports.isIterable = isIterable;\n//# sourceMappingURL=isIterable.js.map","\"use strict\";\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }\nvar __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isReadableStreamLike = exports.readableStreamLikeToAsyncGenerator = void 0;\nvar isFunction_1 = require(\"./isFunction\");\nfunction readableStreamLikeToAsyncGenerator(readableStream) {\n return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() {\n var reader, _a, value, done;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n reader = readableStream.getReader();\n _b.label = 1;\n case 1:\n _b.trys.push([1, , 9, 10]);\n _b.label = 2;\n case 2:\n if (!true) return [3, 8];\n return [4, __await(reader.read())];\n case 3:\n _a = _b.sent(), value = _a.value, done = _a.done;\n if (!done) return [3, 5];\n return [4, __await(void 0)];\n case 4: return [2, _b.sent()];\n case 5: return [4, __await(value)];\n case 6: return [4, _b.sent()];\n case 7:\n _b.sent();\n return [3, 2];\n case 8: return [3, 10];\n case 9:\n reader.releaseLock();\n return [7];\n case 10: return [2];\n }\n });\n });\n}\nexports.readableStreamLikeToAsyncGenerator = readableStreamLikeToAsyncGenerator;\nfunction isReadableStreamLike(obj) {\n return isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader);\n}\nexports.isReadableStreamLike = isReadableStreamLike;\n//# sourceMappingURL=isReadableStreamLike.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n};\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromReadableStreamLike = exports.fromAsyncIterable = exports.fromIterable = exports.fromPromise = exports.fromArrayLike = exports.fromInteropObservable = exports.innerFrom = void 0;\nvar isArrayLike_1 = require(\"../util/isArrayLike\");\nvar isPromise_1 = require(\"../util/isPromise\");\nvar Observable_1 = require(\"../Observable\");\nvar isInteropObservable_1 = require(\"../util/isInteropObservable\");\nvar isAsyncIterable_1 = require(\"../util/isAsyncIterable\");\nvar throwUnobservableError_1 = require(\"../util/throwUnobservableError\");\nvar isIterable_1 = require(\"../util/isIterable\");\nvar isReadableStreamLike_1 = require(\"../util/isReadableStreamLike\");\nvar isFunction_1 = require(\"../util/isFunction\");\nvar reportUnhandledError_1 = require(\"../util/reportUnhandledError\");\nvar observable_1 = require(\"../symbol/observable\");\nfunction innerFrom(input) {\n if (input instanceof Observable_1.Observable) {\n return input;\n }\n if (input != null) {\n if (isInteropObservable_1.isInteropObservable(input)) {\n return fromInteropObservable(input);\n }\n if (isArrayLike_1.isArrayLike(input)) {\n return fromArrayLike(input);\n }\n if (isPromise_1.isPromise(input)) {\n return fromPromise(input);\n }\n if (isAsyncIterable_1.isAsyncIterable(input)) {\n return fromAsyncIterable(input);\n }\n if (isIterable_1.isIterable(input)) {\n return fromIterable(input);\n }\n if (isReadableStreamLike_1.isReadableStreamLike(input)) {\n return fromReadableStreamLike(input);\n }\n }\n throw throwUnobservableError_1.createInvalidObservableTypeError(input);\n}\nexports.innerFrom = innerFrom;\nfunction fromInteropObservable(obj) {\n return new Observable_1.Observable(function (subscriber) {\n var obs = obj[observable_1.observable]();\n if (isFunction_1.isFunction(obs.subscribe)) {\n return obs.subscribe(subscriber);\n }\n throw new TypeError('Provided object does not correctly implement Symbol.observable');\n });\n}\nexports.fromInteropObservable = fromInteropObservable;\nfunction fromArrayLike(array) {\n return new Observable_1.Observable(function (subscriber) {\n for (var i = 0; i < array.length && !subscriber.closed; i++) {\n subscriber.next(array[i]);\n }\n subscriber.complete();\n });\n}\nexports.fromArrayLike = fromArrayLike;\nfunction fromPromise(promise) {\n return new Observable_1.Observable(function (subscriber) {\n promise\n .then(function (value) {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n }, function (err) { return subscriber.error(err); })\n .then(null, reportUnhandledError_1.reportUnhandledError);\n });\n}\nexports.fromPromise = fromPromise;\nfunction fromIterable(iterable) {\n return new Observable_1.Observable(function (subscriber) {\n var e_1, _a;\n try {\n for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) {\n var value = iterable_1_1.value;\n subscriber.next(value);\n if (subscriber.closed) {\n return;\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n subscriber.complete();\n });\n}\nexports.fromIterable = fromIterable;\nfunction fromAsyncIterable(asyncIterable) {\n return new Observable_1.Observable(function (subscriber) {\n process(asyncIterable, subscriber).catch(function (err) { return subscriber.error(err); });\n });\n}\nexports.fromAsyncIterable = fromAsyncIterable;\nfunction fromReadableStreamLike(readableStream) {\n return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream));\n}\nexports.fromReadableStreamLike = fromReadableStreamLike;\nfunction process(asyncIterable, subscriber) {\n var asyncIterable_1, asyncIterable_1_1;\n var e_2, _a;\n return __awaiter(this, void 0, void 0, function () {\n var value, e_2_1;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _b.trys.push([0, 5, 6, 11]);\n asyncIterable_1 = __asyncValues(asyncIterable);\n _b.label = 1;\n case 1: return [4, asyncIterable_1.next()];\n case 2:\n if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4];\n value = asyncIterable_1_1.value;\n subscriber.next(value);\n if (subscriber.closed) {\n return [2];\n }\n _b.label = 3;\n case 3: return [3, 1];\n case 4: return [3, 11];\n case 5:\n e_2_1 = _b.sent();\n e_2 = { error: e_2_1 };\n return [3, 11];\n case 6:\n _b.trys.push([6, , 9, 10]);\n if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8];\n return [4, _a.call(asyncIterable_1)];\n case 7:\n _b.sent();\n _b.label = 8;\n case 8: return [3, 10];\n case 9:\n if (e_2) throw e_2.error;\n return [7];\n case 10: return [7];\n case 11:\n subscriber.complete();\n return [2];\n }\n });\n });\n}\n//# sourceMappingURL=innerFrom.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.executeSchedule = void 0;\nfunction executeSchedule(parentSubscription, scheduler, work, delay, repeat) {\n if (delay === void 0) { delay = 0; }\n if (repeat === void 0) { repeat = false; }\n var scheduleSubscription = scheduler.schedule(function () {\n work();\n if (repeat) {\n parentSubscription.add(this.schedule(null, delay));\n }\n else {\n this.unsubscribe();\n }\n }, delay);\n parentSubscription.add(scheduleSubscription);\n if (!repeat) {\n return scheduleSubscription;\n }\n}\nexports.executeSchedule = executeSchedule;\n//# sourceMappingURL=executeSchedule.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.observeOn = void 0;\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction observeOn(scheduler, delay) {\n if (delay === void 0) { delay = 0; }\n return lift_1.operate(function (source, subscriber) {\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return executeSchedule_1.executeSchedule(subscriber, scheduler, function () { return subscriber.next(value); }, delay); }, function () { return executeSchedule_1.executeSchedule(subscriber, scheduler, function () { return subscriber.complete(); }, delay); }, function (err) { return executeSchedule_1.executeSchedule(subscriber, scheduler, function () { return subscriber.error(err); }, delay); }));\n });\n}\nexports.observeOn = observeOn;\n//# sourceMappingURL=observeOn.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.subscribeOn = void 0;\nvar lift_1 = require(\"../util/lift\");\nfunction subscribeOn(scheduler, delay) {\n if (delay === void 0) { delay = 0; }\n return lift_1.operate(function (source, subscriber) {\n subscriber.add(scheduler.schedule(function () { return source.subscribe(subscriber); }, delay));\n });\n}\nexports.subscribeOn = subscribeOn;\n//# sourceMappingURL=subscribeOn.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scheduleObservable = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar observeOn_1 = require(\"../operators/observeOn\");\nvar subscribeOn_1 = require(\"../operators/subscribeOn\");\nfunction scheduleObservable(input, scheduler) {\n return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler));\n}\nexports.scheduleObservable = scheduleObservable;\n//# sourceMappingURL=scheduleObservable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.schedulePromise = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar observeOn_1 = require(\"../operators/observeOn\");\nvar subscribeOn_1 = require(\"../operators/subscribeOn\");\nfunction schedulePromise(input, scheduler) {\n return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler));\n}\nexports.schedulePromise = schedulePromise;\n//# sourceMappingURL=schedulePromise.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scheduleArray = void 0;\nvar Observable_1 = require(\"../Observable\");\nfunction scheduleArray(input, scheduler) {\n return new Observable_1.Observable(function (subscriber) {\n var i = 0;\n return scheduler.schedule(function () {\n if (i === input.length) {\n subscriber.complete();\n }\n else {\n subscriber.next(input[i++]);\n if (!subscriber.closed) {\n this.schedule();\n }\n }\n });\n });\n}\nexports.scheduleArray = scheduleArray;\n//# sourceMappingURL=scheduleArray.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scheduleIterable = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar iterator_1 = require(\"../symbol/iterator\");\nvar isFunction_1 = require(\"../util/isFunction\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nfunction scheduleIterable(input, scheduler) {\n return new Observable_1.Observable(function (subscriber) {\n var iterator;\n executeSchedule_1.executeSchedule(subscriber, scheduler, function () {\n iterator = input[iterator_1.iterator]();\n executeSchedule_1.executeSchedule(subscriber, scheduler, function () {\n var _a;\n var value;\n var done;\n try {\n (_a = iterator.next(), value = _a.value, done = _a.done);\n }\n catch (err) {\n subscriber.error(err);\n return;\n }\n if (done) {\n subscriber.complete();\n }\n else {\n subscriber.next(value);\n }\n }, 0, true);\n });\n return function () { return isFunction_1.isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return(); };\n });\n}\nexports.scheduleIterable = scheduleIterable;\n//# sourceMappingURL=scheduleIterable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scheduleAsyncIterable = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nfunction scheduleAsyncIterable(input, scheduler) {\n if (!input) {\n throw new Error('Iterable cannot be null');\n }\n return new Observable_1.Observable(function (subscriber) {\n executeSchedule_1.executeSchedule(subscriber, scheduler, function () {\n var iterator = input[Symbol.asyncIterator]();\n executeSchedule_1.executeSchedule(subscriber, scheduler, function () {\n iterator.next().then(function (result) {\n if (result.done) {\n subscriber.complete();\n }\n else {\n subscriber.next(result.value);\n }\n });\n }, 0, true);\n });\n });\n}\nexports.scheduleAsyncIterable = scheduleAsyncIterable;\n//# sourceMappingURL=scheduleAsyncIterable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scheduleReadableStreamLike = void 0;\nvar scheduleAsyncIterable_1 = require(\"./scheduleAsyncIterable\");\nvar isReadableStreamLike_1 = require(\"../util/isReadableStreamLike\");\nfunction scheduleReadableStreamLike(input, scheduler) {\n return scheduleAsyncIterable_1.scheduleAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(input), scheduler);\n}\nexports.scheduleReadableStreamLike = scheduleReadableStreamLike;\n//# sourceMappingURL=scheduleReadableStreamLike.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scheduled = void 0;\nvar scheduleObservable_1 = require(\"./scheduleObservable\");\nvar schedulePromise_1 = require(\"./schedulePromise\");\nvar scheduleArray_1 = require(\"./scheduleArray\");\nvar scheduleIterable_1 = require(\"./scheduleIterable\");\nvar scheduleAsyncIterable_1 = require(\"./scheduleAsyncIterable\");\nvar isInteropObservable_1 = require(\"../util/isInteropObservable\");\nvar isPromise_1 = require(\"../util/isPromise\");\nvar isArrayLike_1 = require(\"../util/isArrayLike\");\nvar isIterable_1 = require(\"../util/isIterable\");\nvar isAsyncIterable_1 = require(\"../util/isAsyncIterable\");\nvar throwUnobservableError_1 = require(\"../util/throwUnobservableError\");\nvar isReadableStreamLike_1 = require(\"../util/isReadableStreamLike\");\nvar scheduleReadableStreamLike_1 = require(\"./scheduleReadableStreamLike\");\nfunction scheduled(input, scheduler) {\n if (input != null) {\n if (isInteropObservable_1.isInteropObservable(input)) {\n return scheduleObservable_1.scheduleObservable(input, scheduler);\n }\n if (isArrayLike_1.isArrayLike(input)) {\n return scheduleArray_1.scheduleArray(input, scheduler);\n }\n if (isPromise_1.isPromise(input)) {\n return schedulePromise_1.schedulePromise(input, scheduler);\n }\n if (isAsyncIterable_1.isAsyncIterable(input)) {\n return scheduleAsyncIterable_1.scheduleAsyncIterable(input, scheduler);\n }\n if (isIterable_1.isIterable(input)) {\n return scheduleIterable_1.scheduleIterable(input, scheduler);\n }\n if (isReadableStreamLike_1.isReadableStreamLike(input)) {\n return scheduleReadableStreamLike_1.scheduleReadableStreamLike(input, scheduler);\n }\n }\n throw throwUnobservableError_1.createInvalidObservableTypeError(input);\n}\nexports.scheduled = scheduled;\n//# sourceMappingURL=scheduled.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.from = void 0;\nvar scheduled_1 = require(\"../scheduled/scheduled\");\nvar innerFrom_1 = require(\"./innerFrom\");\nfunction from(input, scheduler) {\n return scheduler ? scheduled_1.scheduled(input, scheduler) : innerFrom_1.innerFrom(input);\n}\nexports.from = from;\n//# sourceMappingURL=from.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.of = void 0;\nvar args_1 = require(\"../util/args\");\nvar from_1 = require(\"./from\");\nfunction of() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = args_1.popScheduler(args);\n return from_1.from(args, scheduler);\n}\nexports.of = of;\n//# sourceMappingURL=of.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.throwError = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction throwError(errorOrErrorFactory, scheduler) {\n var errorFactory = isFunction_1.isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function () { return errorOrErrorFactory; };\n var init = function (subscriber) { return subscriber.error(errorFactory()); };\n return new Observable_1.Observable(scheduler ? function (subscriber) { return scheduler.schedule(init, 0, subscriber); } : init);\n}\nexports.throwError = throwError;\n//# sourceMappingURL=throwError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.observeNotification = exports.Notification = exports.NotificationKind = void 0;\nvar empty_1 = require(\"./observable/empty\");\nvar of_1 = require(\"./observable/of\");\nvar throwError_1 = require(\"./observable/throwError\");\nvar isFunction_1 = require(\"./util/isFunction\");\nvar NotificationKind;\n(function (NotificationKind) {\n NotificationKind[\"NEXT\"] = \"N\";\n NotificationKind[\"ERROR\"] = \"E\";\n NotificationKind[\"COMPLETE\"] = \"C\";\n})(NotificationKind = exports.NotificationKind || (exports.NotificationKind = {}));\nvar Notification = (function () {\n function Notification(kind, value, error) {\n this.kind = kind;\n this.value = value;\n this.error = error;\n this.hasValue = kind === 'N';\n }\n Notification.prototype.observe = function (observer) {\n return observeNotification(this, observer);\n };\n Notification.prototype.do = function (nextHandler, errorHandler, completeHandler) {\n var _a = this, kind = _a.kind, value = _a.value, error = _a.error;\n return kind === 'N' ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === 'E' ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler();\n };\n Notification.prototype.accept = function (nextOrObserver, error, complete) {\n var _a;\n return isFunction_1.isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next)\n ? this.observe(nextOrObserver)\n : this.do(nextOrObserver, error, complete);\n };\n Notification.prototype.toObservable = function () {\n var _a = this, kind = _a.kind, value = _a.value, error = _a.error;\n var result = kind === 'N'\n ?\n of_1.of(value)\n :\n kind === 'E'\n ?\n throwError_1.throwError(function () { return error; })\n :\n kind === 'C'\n ?\n empty_1.EMPTY\n :\n 0;\n if (!result) {\n throw new TypeError(\"Unexpected notification kind \" + kind);\n }\n return result;\n };\n Notification.createNext = function (value) {\n return new Notification('N', value);\n };\n Notification.createError = function (err) {\n return new Notification('E', undefined, err);\n };\n Notification.createComplete = function () {\n return Notification.completeNotification;\n };\n Notification.completeNotification = new Notification('C');\n return Notification;\n}());\nexports.Notification = Notification;\nfunction observeNotification(notification, observer) {\n var _a, _b, _c;\n var _d = notification, kind = _d.kind, value = _d.value, error = _d.error;\n if (typeof kind !== 'string') {\n throw new TypeError('Invalid notification, missing \"kind\"');\n }\n kind === 'N' ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === 'E' ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);\n}\nexports.observeNotification = observeNotification;\n//# sourceMappingURL=Notification.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isObservable = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar isFunction_1 = require(\"./isFunction\");\nfunction isObservable(obj) {\n return !!obj && (obj instanceof Observable_1.Observable || (isFunction_1.isFunction(obj.lift) && isFunction_1.isFunction(obj.subscribe)));\n}\nexports.isObservable = isObservable;\n//# sourceMappingURL=isObservable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EmptyError = void 0;\nvar createErrorClass_1 = require(\"./createErrorClass\");\nexports.EmptyError = createErrorClass_1.createErrorClass(function (_super) {\n return function EmptyErrorImpl() {\n _super(this);\n this.name = 'EmptyError';\n this.message = 'no elements in sequence';\n };\n});\n//# sourceMappingURL=EmptyError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lastValueFrom = void 0;\nvar EmptyError_1 = require(\"./util/EmptyError\");\nfunction lastValueFrom(source, config) {\n var hasConfig = typeof config === 'object';\n return new Promise(function (resolve, reject) {\n var _hasValue = false;\n var _value;\n source.subscribe({\n next: function (value) {\n _value = value;\n _hasValue = true;\n },\n error: reject,\n complete: function () {\n if (_hasValue) {\n resolve(_value);\n }\n else if (hasConfig) {\n resolve(config.defaultValue);\n }\n else {\n reject(new EmptyError_1.EmptyError());\n }\n },\n });\n });\n}\nexports.lastValueFrom = lastValueFrom;\n//# sourceMappingURL=lastValueFrom.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.firstValueFrom = void 0;\nvar EmptyError_1 = require(\"./util/EmptyError\");\nvar Subscriber_1 = require(\"./Subscriber\");\nfunction firstValueFrom(source, config) {\n var hasConfig = typeof config === 'object';\n return new Promise(function (resolve, reject) {\n var subscriber = new Subscriber_1.SafeSubscriber({\n next: function (value) {\n resolve(value);\n subscriber.unsubscribe();\n },\n error: reject,\n complete: function () {\n if (hasConfig) {\n resolve(config.defaultValue);\n }\n else {\n reject(new EmptyError_1.EmptyError());\n }\n },\n });\n source.subscribe(subscriber);\n });\n}\nexports.firstValueFrom = firstValueFrom;\n//# sourceMappingURL=firstValueFrom.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ArgumentOutOfRangeError = void 0;\nvar createErrorClass_1 = require(\"./createErrorClass\");\nexports.ArgumentOutOfRangeError = createErrorClass_1.createErrorClass(function (_super) {\n return function ArgumentOutOfRangeErrorImpl() {\n _super(this);\n this.name = 'ArgumentOutOfRangeError';\n this.message = 'argument out of range';\n };\n});\n//# sourceMappingURL=ArgumentOutOfRangeError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NotFoundError = void 0;\nvar createErrorClass_1 = require(\"./createErrorClass\");\nexports.NotFoundError = createErrorClass_1.createErrorClass(function (_super) {\n return function NotFoundErrorImpl(message) {\n _super(this);\n this.name = 'NotFoundError';\n this.message = message;\n };\n});\n//# sourceMappingURL=NotFoundError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SequenceError = void 0;\nvar createErrorClass_1 = require(\"./createErrorClass\");\nexports.SequenceError = createErrorClass_1.createErrorClass(function (_super) {\n return function SequenceErrorImpl(message) {\n _super(this);\n this.name = 'SequenceError';\n this.message = message;\n };\n});\n//# sourceMappingURL=SequenceError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isValidDate = void 0;\nfunction isValidDate(value) {\n return value instanceof Date && !isNaN(value);\n}\nexports.isValidDate = isValidDate;\n//# sourceMappingURL=isDate.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timeout = exports.TimeoutError = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar isDate_1 = require(\"../util/isDate\");\nvar lift_1 = require(\"../util/lift\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar createErrorClass_1 = require(\"../util/createErrorClass\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nexports.TimeoutError = createErrorClass_1.createErrorClass(function (_super) {\n return function TimeoutErrorImpl(info) {\n if (info === void 0) { info = null; }\n _super(this);\n this.message = 'Timeout has occurred';\n this.name = 'TimeoutError';\n this.info = info;\n };\n});\nfunction timeout(config, schedulerArg) {\n var _a = (isDate_1.isValidDate(config) ? { first: config } : typeof config === 'number' ? { each: config } : config), first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d;\n if (first == null && each == null) {\n throw new TypeError('No timeout provided.');\n }\n return lift_1.operate(function (source, subscriber) {\n var originalSourceSubscription;\n var timerSubscription;\n var lastValue = null;\n var seen = 0;\n var startTimer = function (delay) {\n timerSubscription = executeSchedule_1.executeSchedule(subscriber, scheduler, function () {\n try {\n originalSourceSubscription.unsubscribe();\n innerFrom_1.innerFrom(_with({\n meta: meta,\n lastValue: lastValue,\n seen: seen,\n })).subscribe(subscriber);\n }\n catch (err) {\n subscriber.error(err);\n }\n }, delay);\n };\n originalSourceSubscription = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe();\n seen++;\n subscriber.next((lastValue = value));\n each > 0 && startTimer(each);\n }, undefined, undefined, function () {\n if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) {\n timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe();\n }\n lastValue = null;\n }));\n !seen && startTimer(first != null ? (typeof first === 'number' ? first : +first - scheduler.now()) : each);\n });\n}\nexports.timeout = timeout;\nfunction timeoutErrorFactory(info) {\n throw new exports.TimeoutError(info);\n}\n//# sourceMappingURL=timeout.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.map = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction map(project, thisArg) {\n return lift_1.operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n subscriber.next(project.call(thisArg, value, index++));\n }));\n });\n}\nexports.map = map;\n//# sourceMappingURL=map.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mapOneOrManyArgs = void 0;\nvar map_1 = require(\"../operators/map\");\nvar isArray = Array.isArray;\nfunction callOrApply(fn, args) {\n return isArray(args) ? fn.apply(void 0, __spreadArray([], __read(args))) : fn(args);\n}\nfunction mapOneOrManyArgs(fn) {\n return map_1.map(function (args) { return callOrApply(fn, args); });\n}\nexports.mapOneOrManyArgs = mapOneOrManyArgs;\n//# sourceMappingURL=mapOneOrManyArgs.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bindCallbackInternals = void 0;\nvar isScheduler_1 = require(\"../util/isScheduler\");\nvar Observable_1 = require(\"../Observable\");\nvar subscribeOn_1 = require(\"../operators/subscribeOn\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nvar observeOn_1 = require(\"../operators/observeOn\");\nvar AsyncSubject_1 = require(\"../AsyncSubject\");\nfunction bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler) {\n if (resultSelector) {\n if (isScheduler_1.isScheduler(resultSelector)) {\n scheduler = resultSelector;\n }\n else {\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler)\n .apply(this, args)\n .pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector));\n };\n }\n }\n if (scheduler) {\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return bindCallbackInternals(isNodeStyle, callbackFunc)\n .apply(this, args)\n .pipe(subscribeOn_1.subscribeOn(scheduler), observeOn_1.observeOn(scheduler));\n };\n }\n return function () {\n var _this = this;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var subject = new AsyncSubject_1.AsyncSubject();\n var uninitialized = true;\n return new Observable_1.Observable(function (subscriber) {\n var subs = subject.subscribe(subscriber);\n if (uninitialized) {\n uninitialized = false;\n var isAsync_1 = false;\n var isComplete_1 = false;\n callbackFunc.apply(_this, __spreadArray(__spreadArray([], __read(args)), [\n function () {\n var results = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n results[_i] = arguments[_i];\n }\n if (isNodeStyle) {\n var err = results.shift();\n if (err != null) {\n subject.error(err);\n return;\n }\n }\n subject.next(1 < results.length ? results : results[0]);\n isComplete_1 = true;\n if (isAsync_1) {\n subject.complete();\n }\n },\n ]));\n if (isComplete_1) {\n subject.complete();\n }\n isAsync_1 = true;\n }\n return subs;\n });\n };\n}\nexports.bindCallbackInternals = bindCallbackInternals;\n//# sourceMappingURL=bindCallbackInternals.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bindCallback = void 0;\nvar bindCallbackInternals_1 = require(\"./bindCallbackInternals\");\nfunction bindCallback(callbackFunc, resultSelector, scheduler) {\n return bindCallbackInternals_1.bindCallbackInternals(false, callbackFunc, resultSelector, scheduler);\n}\nexports.bindCallback = bindCallback;\n//# sourceMappingURL=bindCallback.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bindNodeCallback = void 0;\nvar bindCallbackInternals_1 = require(\"./bindCallbackInternals\");\nfunction bindNodeCallback(callbackFunc, resultSelector, scheduler) {\n return bindCallbackInternals_1.bindCallbackInternals(true, callbackFunc, resultSelector, scheduler);\n}\nexports.bindNodeCallback = bindNodeCallback;\n//# sourceMappingURL=bindNodeCallback.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.argsArgArrayOrObject = void 0;\nvar isArray = Array.isArray;\nvar getPrototypeOf = Object.getPrototypeOf, objectProto = Object.prototype, getKeys = Object.keys;\nfunction argsArgArrayOrObject(args) {\n if (args.length === 1) {\n var first_1 = args[0];\n if (isArray(first_1)) {\n return { args: first_1, keys: null };\n }\n if (isPOJO(first_1)) {\n var keys = getKeys(first_1);\n return {\n args: keys.map(function (key) { return first_1[key]; }),\n keys: keys,\n };\n }\n }\n return { args: args, keys: null };\n}\nexports.argsArgArrayOrObject = argsArgArrayOrObject;\nfunction isPOJO(obj) {\n return obj && typeof obj === 'object' && getPrototypeOf(obj) === objectProto;\n}\n//# sourceMappingURL=argsArgArrayOrObject.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createObject = void 0;\nfunction createObject(keys, values) {\n return keys.reduce(function (result, key, i) { return ((result[key] = values[i]), result); }, {});\n}\nexports.createObject = createObject;\n//# sourceMappingURL=createObject.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.combineLatestInit = exports.combineLatest = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar argsArgArrayOrObject_1 = require(\"../util/argsArgArrayOrObject\");\nvar from_1 = require(\"./from\");\nvar identity_1 = require(\"../util/identity\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nvar args_1 = require(\"../util/args\");\nvar createObject_1 = require(\"../util/createObject\");\nvar OperatorSubscriber_1 = require(\"../operators/OperatorSubscriber\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nfunction combineLatest() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = args_1.popScheduler(args);\n var resultSelector = args_1.popResultSelector(args);\n var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args), observables = _a.args, keys = _a.keys;\n if (observables.length === 0) {\n return from_1.from([], scheduler);\n }\n var result = new Observable_1.Observable(combineLatestInit(observables, scheduler, keys\n ?\n function (values) { return createObject_1.createObject(keys, values); }\n :\n identity_1.identity));\n return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result;\n}\nexports.combineLatest = combineLatest;\nfunction combineLatestInit(observables, scheduler, valueTransform) {\n if (valueTransform === void 0) { valueTransform = identity_1.identity; }\n return function (subscriber) {\n maybeSchedule(scheduler, function () {\n var length = observables.length;\n var values = new Array(length);\n var active = length;\n var remainingFirstValues = length;\n var _loop_1 = function (i) {\n maybeSchedule(scheduler, function () {\n var source = from_1.from(observables[i], scheduler);\n var hasFirstValue = false;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n values[i] = value;\n if (!hasFirstValue) {\n hasFirstValue = true;\n remainingFirstValues--;\n }\n if (!remainingFirstValues) {\n subscriber.next(valueTransform(values.slice()));\n }\n }, function () {\n if (!--active) {\n subscriber.complete();\n }\n }));\n }, subscriber);\n };\n for (var i = 0; i < length; i++) {\n _loop_1(i);\n }\n }, subscriber);\n };\n}\nexports.combineLatestInit = combineLatestInit;\nfunction maybeSchedule(scheduler, execute, subscription) {\n if (scheduler) {\n executeSchedule_1.executeSchedule(subscription, scheduler, execute);\n }\n else {\n execute();\n }\n}\n//# sourceMappingURL=combineLatest.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeInternals = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) {\n var buffer = [];\n var active = 0;\n var index = 0;\n var isComplete = false;\n var checkComplete = function () {\n if (isComplete && !buffer.length && !active) {\n subscriber.complete();\n }\n };\n var outerNext = function (value) { return (active < concurrent ? doInnerSub(value) : buffer.push(value)); };\n var doInnerSub = function (value) {\n expand && subscriber.next(value);\n active++;\n var innerComplete = false;\n innerFrom_1.innerFrom(project(value, index++)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (innerValue) {\n onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);\n if (expand) {\n outerNext(innerValue);\n }\n else {\n subscriber.next(innerValue);\n }\n }, function () {\n innerComplete = true;\n }, undefined, function () {\n if (innerComplete) {\n try {\n active--;\n var _loop_1 = function () {\n var bufferedValue = buffer.shift();\n if (innerSubScheduler) {\n executeSchedule_1.executeSchedule(subscriber, innerSubScheduler, function () { return doInnerSub(bufferedValue); });\n }\n else {\n doInnerSub(bufferedValue);\n }\n };\n while (buffer.length && active < concurrent) {\n _loop_1();\n }\n checkComplete();\n }\n catch (err) {\n subscriber.error(err);\n }\n }\n }));\n };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, outerNext, function () {\n isComplete = true;\n checkComplete();\n }));\n return function () {\n additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();\n };\n}\nexports.mergeInternals = mergeInternals;\n//# sourceMappingURL=mergeInternals.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeMap = void 0;\nvar map_1 = require(\"./map\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar lift_1 = require(\"../util/lift\");\nvar mergeInternals_1 = require(\"./mergeInternals\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction mergeMap(project, resultSelector, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n if (isFunction_1.isFunction(resultSelector)) {\n return mergeMap(function (a, i) { return map_1.map(function (b, ii) { return resultSelector(a, b, i, ii); })(innerFrom_1.innerFrom(project(a, i))); }, concurrent);\n }\n else if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return lift_1.operate(function (source, subscriber) { return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent); });\n}\nexports.mergeMap = mergeMap;\n//# sourceMappingURL=mergeMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeAll = void 0;\nvar mergeMap_1 = require(\"./mergeMap\");\nvar identity_1 = require(\"../util/identity\");\nfunction mergeAll(concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n return mergeMap_1.mergeMap(identity_1.identity, concurrent);\n}\nexports.mergeAll = mergeAll;\n//# sourceMappingURL=mergeAll.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.concatAll = void 0;\nvar mergeAll_1 = require(\"./mergeAll\");\nfunction concatAll() {\n return mergeAll_1.mergeAll(1);\n}\nexports.concatAll = concatAll;\n//# sourceMappingURL=concatAll.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.concat = void 0;\nvar concatAll_1 = require(\"../operators/concatAll\");\nvar args_1 = require(\"../util/args\");\nvar from_1 = require(\"./from\");\nfunction concat() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return concatAll_1.concatAll()(from_1.from(args, args_1.popScheduler(args)));\n}\nexports.concat = concat;\n//# sourceMappingURL=concat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defer = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar innerFrom_1 = require(\"./innerFrom\");\nfunction defer(observableFactory) {\n return new Observable_1.Observable(function (subscriber) {\n innerFrom_1.innerFrom(observableFactory()).subscribe(subscriber);\n });\n}\nexports.defer = defer;\n//# sourceMappingURL=defer.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.connectable = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar Observable_1 = require(\"../Observable\");\nvar defer_1 = require(\"./defer\");\nvar DEFAULT_CONFIG = {\n connector: function () { return new Subject_1.Subject(); },\n resetOnDisconnect: true,\n};\nfunction connectable(source, config) {\n if (config === void 0) { config = DEFAULT_CONFIG; }\n var connection = null;\n var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a;\n var subject = connector();\n var result = new Observable_1.Observable(function (subscriber) {\n return subject.subscribe(subscriber);\n });\n result.connect = function () {\n if (!connection || connection.closed) {\n connection = defer_1.defer(function () { return source; }).subscribe(subject);\n if (resetOnDisconnect) {\n connection.add(function () { return (subject = connector()); });\n }\n }\n return connection;\n };\n return result;\n}\nexports.connectable = connectable;\n//# sourceMappingURL=connectable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.forkJoin = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar argsArgArrayOrObject_1 = require(\"../util/argsArgArrayOrObject\");\nvar innerFrom_1 = require(\"./innerFrom\");\nvar args_1 = require(\"../util/args\");\nvar OperatorSubscriber_1 = require(\"../operators/OperatorSubscriber\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nvar createObject_1 = require(\"../util/createObject\");\nfunction forkJoin() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = args_1.popResultSelector(args);\n var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args), sources = _a.args, keys = _a.keys;\n var result = new Observable_1.Observable(function (subscriber) {\n var length = sources.length;\n if (!length) {\n subscriber.complete();\n return;\n }\n var values = new Array(length);\n var remainingCompletions = length;\n var remainingEmissions = length;\n var _loop_1 = function (sourceIndex) {\n var hasValue = false;\n innerFrom_1.innerFrom(sources[sourceIndex]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n if (!hasValue) {\n hasValue = true;\n remainingEmissions--;\n }\n values[sourceIndex] = value;\n }, function () { return remainingCompletions--; }, undefined, function () {\n if (!remainingCompletions || !hasValue) {\n if (!remainingEmissions) {\n subscriber.next(keys ? createObject_1.createObject(keys, values) : values);\n }\n subscriber.complete();\n }\n }));\n };\n for (var sourceIndex = 0; sourceIndex < length; sourceIndex++) {\n _loop_1(sourceIndex);\n }\n });\n return resultSelector ? result.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result;\n}\nexports.forkJoin = forkJoin;\n//# sourceMappingURL=forkJoin.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromEvent = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar Observable_1 = require(\"../Observable\");\nvar mergeMap_1 = require(\"../operators/mergeMap\");\nvar isArrayLike_1 = require(\"../util/isArrayLike\");\nvar isFunction_1 = require(\"../util/isFunction\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nvar nodeEventEmitterMethods = ['addListener', 'removeListener'];\nvar eventTargetMethods = ['addEventListener', 'removeEventListener'];\nvar jqueryMethods = ['on', 'off'];\nfunction fromEvent(target, eventName, options, resultSelector) {\n if (isFunction_1.isFunction(options)) {\n resultSelector = options;\n options = undefined;\n }\n if (resultSelector) {\n return fromEvent(target, eventName, options).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector));\n }\n var _a = __read(isEventTarget(target)\n ? eventTargetMethods.map(function (methodName) { return function (handler) { return target[methodName](eventName, handler, options); }; })\n :\n isNodeStyleEventEmitter(target)\n ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target, eventName))\n : isJQueryStyleEventEmitter(target)\n ? jqueryMethods.map(toCommonHandlerRegistry(target, eventName))\n : [], 2), add = _a[0], remove = _a[1];\n if (!add) {\n if (isArrayLike_1.isArrayLike(target)) {\n return mergeMap_1.mergeMap(function (subTarget) { return fromEvent(subTarget, eventName, options); })(innerFrom_1.innerFrom(target));\n }\n }\n if (!add) {\n throw new TypeError('Invalid event target');\n }\n return new Observable_1.Observable(function (subscriber) {\n var handler = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return subscriber.next(1 < args.length ? args : args[0]);\n };\n add(handler);\n return function () { return remove(handler); };\n });\n}\nexports.fromEvent = fromEvent;\nfunction toCommonHandlerRegistry(target, eventName) {\n return function (methodName) { return function (handler) { return target[methodName](eventName, handler); }; };\n}\nfunction isNodeStyleEventEmitter(target) {\n return isFunction_1.isFunction(target.addListener) && isFunction_1.isFunction(target.removeListener);\n}\nfunction isJQueryStyleEventEmitter(target) {\n return isFunction_1.isFunction(target.on) && isFunction_1.isFunction(target.off);\n}\nfunction isEventTarget(target) {\n return isFunction_1.isFunction(target.addEventListener) && isFunction_1.isFunction(target.removeEventListener);\n}\n//# sourceMappingURL=fromEvent.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromEventPattern = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar isFunction_1 = require(\"../util/isFunction\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nfunction fromEventPattern(addHandler, removeHandler, resultSelector) {\n if (resultSelector) {\n return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector));\n }\n return new Observable_1.Observable(function (subscriber) {\n var handler = function () {\n var e = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n e[_i] = arguments[_i];\n }\n return subscriber.next(e.length === 1 ? e[0] : e);\n };\n var retValue = addHandler(handler);\n return isFunction_1.isFunction(removeHandler) ? function () { return removeHandler(handler, retValue); } : undefined;\n });\n}\nexports.fromEventPattern = fromEventPattern;\n//# sourceMappingURL=fromEventPattern.js.map","\"use strict\";\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generate = void 0;\nvar identity_1 = require(\"../util/identity\");\nvar isScheduler_1 = require(\"../util/isScheduler\");\nvar defer_1 = require(\"./defer\");\nvar scheduleIterable_1 = require(\"../scheduled/scheduleIterable\");\nfunction generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler) {\n var _a, _b;\n var resultSelector;\n var initialState;\n if (arguments.length === 1) {\n (_a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity_1.identity : _b, scheduler = _a.scheduler);\n }\n else {\n initialState = initialStateOrOptions;\n if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) {\n resultSelector = identity_1.identity;\n scheduler = resultSelectorOrScheduler;\n }\n else {\n resultSelector = resultSelectorOrScheduler;\n }\n }\n function gen() {\n var state;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n state = initialState;\n _a.label = 1;\n case 1:\n if (!(!condition || condition(state))) return [3, 4];\n return [4, resultSelector(state)];\n case 2:\n _a.sent();\n _a.label = 3;\n case 3:\n state = iterate(state);\n return [3, 1];\n case 4: return [2];\n }\n });\n }\n return defer_1.defer((scheduler\n ?\n function () { return scheduleIterable_1.scheduleIterable(gen(), scheduler); }\n :\n gen));\n}\nexports.generate = generate;\n//# sourceMappingURL=generate.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.iif = void 0;\nvar defer_1 = require(\"./defer\");\nfunction iif(condition, trueResult, falseResult) {\n return defer_1.defer(function () { return (condition() ? trueResult : falseResult); });\n}\nexports.iif = iif;\n//# sourceMappingURL=iif.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timer = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar async_1 = require(\"../scheduler/async\");\nvar isScheduler_1 = require(\"../util/isScheduler\");\nvar isDate_1 = require(\"../util/isDate\");\nfunction timer(dueTime, intervalOrScheduler, scheduler) {\n if (dueTime === void 0) { dueTime = 0; }\n if (scheduler === void 0) { scheduler = async_1.async; }\n var intervalDuration = -1;\n if (intervalOrScheduler != null) {\n if (isScheduler_1.isScheduler(intervalOrScheduler)) {\n scheduler = intervalOrScheduler;\n }\n else {\n intervalDuration = intervalOrScheduler;\n }\n }\n return new Observable_1.Observable(function (subscriber) {\n var due = isDate_1.isValidDate(dueTime) ? +dueTime - scheduler.now() : dueTime;\n if (due < 0) {\n due = 0;\n }\n var n = 0;\n return scheduler.schedule(function () {\n if (!subscriber.closed) {\n subscriber.next(n++);\n if (0 <= intervalDuration) {\n this.schedule(undefined, intervalDuration);\n }\n else {\n subscriber.complete();\n }\n }\n }, due);\n });\n}\nexports.timer = timer;\n//# sourceMappingURL=timer.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.interval = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar timer_1 = require(\"./timer\");\nfunction interval(period, scheduler) {\n if (period === void 0) { period = 0; }\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n if (period < 0) {\n period = 0;\n }\n return timer_1.timer(period, period, scheduler);\n}\nexports.interval = interval;\n//# sourceMappingURL=interval.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.merge = void 0;\nvar mergeAll_1 = require(\"../operators/mergeAll\");\nvar innerFrom_1 = require(\"./innerFrom\");\nvar empty_1 = require(\"./empty\");\nvar args_1 = require(\"../util/args\");\nvar from_1 = require(\"./from\");\nfunction merge() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = args_1.popScheduler(args);\n var concurrent = args_1.popNumber(args, Infinity);\n var sources = args;\n return !sources.length\n ?\n empty_1.EMPTY\n : sources.length === 1\n ?\n innerFrom_1.innerFrom(sources[0])\n :\n mergeAll_1.mergeAll(concurrent)(from_1.from(sources, scheduler));\n}\nexports.merge = merge;\n//# sourceMappingURL=merge.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.never = exports.NEVER = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar noop_1 = require(\"../util/noop\");\nexports.NEVER = new Observable_1.Observable(noop_1.noop);\nfunction never() {\n return exports.NEVER;\n}\nexports.never = never;\n//# sourceMappingURL=never.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.argsOrArgArray = void 0;\nvar isArray = Array.isArray;\nfunction argsOrArgArray(args) {\n return args.length === 1 && isArray(args[0]) ? args[0] : args;\n}\nexports.argsOrArgArray = argsOrArgArray;\n//# sourceMappingURL=argsOrArgArray.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.onErrorResumeNext = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar argsOrArgArray_1 = require(\"../util/argsOrArgArray\");\nvar OperatorSubscriber_1 = require(\"../operators/OperatorSubscriber\");\nvar noop_1 = require(\"../util/noop\");\nvar innerFrom_1 = require(\"./innerFrom\");\nfunction onErrorResumeNext() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n var nextSources = argsOrArgArray_1.argsOrArgArray(sources);\n return new Observable_1.Observable(function (subscriber) {\n var sourceIndex = 0;\n var subscribeNext = function () {\n if (sourceIndex < nextSources.length) {\n var nextSource = void 0;\n try {\n nextSource = innerFrom_1.innerFrom(nextSources[sourceIndex++]);\n }\n catch (err) {\n subscribeNext();\n return;\n }\n var innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, undefined, noop_1.noop, noop_1.noop);\n nextSource.subscribe(innerSubscriber);\n innerSubscriber.add(subscribeNext);\n }\n else {\n subscriber.complete();\n }\n };\n subscribeNext();\n });\n}\nexports.onErrorResumeNext = onErrorResumeNext;\n//# sourceMappingURL=onErrorResumeNext.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pairs = void 0;\nvar from_1 = require(\"./from\");\nfunction pairs(obj, scheduler) {\n return from_1.from(Object.entries(obj), scheduler);\n}\nexports.pairs = pairs;\n//# sourceMappingURL=pairs.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.not = void 0;\nfunction not(pred, thisArg) {\n return function (value, index) { return !pred.call(thisArg, value, index); };\n}\nexports.not = not;\n//# sourceMappingURL=not.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.filter = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction filter(predicate, thisArg) {\n return lift_1.operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return predicate.call(thisArg, value, index++) && subscriber.next(value); }));\n });\n}\nexports.filter = filter;\n//# sourceMappingURL=filter.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.partition = void 0;\nvar not_1 = require(\"../util/not\");\nvar filter_1 = require(\"../operators/filter\");\nvar innerFrom_1 = require(\"./innerFrom\");\nfunction partition(source, predicate, thisArg) {\n return [filter_1.filter(predicate, thisArg)(innerFrom_1.innerFrom(source)), filter_1.filter(not_1.not(predicate, thisArg))(innerFrom_1.innerFrom(source))];\n}\nexports.partition = partition;\n//# sourceMappingURL=partition.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.raceInit = exports.race = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar innerFrom_1 = require(\"./innerFrom\");\nvar argsOrArgArray_1 = require(\"../util/argsOrArgArray\");\nvar OperatorSubscriber_1 = require(\"../operators/OperatorSubscriber\");\nfunction race() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n sources = argsOrArgArray_1.argsOrArgArray(sources);\n return sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : new Observable_1.Observable(raceInit(sources));\n}\nexports.race = race;\nfunction raceInit(sources) {\n return function (subscriber) {\n var subscriptions = [];\n var _loop_1 = function (i) {\n subscriptions.push(innerFrom_1.innerFrom(sources[i]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n if (subscriptions) {\n for (var s = 0; s < subscriptions.length; s++) {\n s !== i && subscriptions[s].unsubscribe();\n }\n subscriptions = null;\n }\n subscriber.next(value);\n })));\n };\n for (var i = 0; subscriptions && !subscriber.closed && i < sources.length; i++) {\n _loop_1(i);\n }\n };\n}\nexports.raceInit = raceInit;\n//# sourceMappingURL=race.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.range = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar empty_1 = require(\"./empty\");\nfunction range(start, count, scheduler) {\n if (count == null) {\n count = start;\n start = 0;\n }\n if (count <= 0) {\n return empty_1.EMPTY;\n }\n var end = count + start;\n return new Observable_1.Observable(scheduler\n ?\n function (subscriber) {\n var n = start;\n return scheduler.schedule(function () {\n if (n < end) {\n subscriber.next(n++);\n this.schedule();\n }\n else {\n subscriber.complete();\n }\n });\n }\n :\n function (subscriber) {\n var n = start;\n while (n < end && !subscriber.closed) {\n subscriber.next(n++);\n }\n subscriber.complete();\n });\n}\nexports.range = range;\n//# sourceMappingURL=range.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.using = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar innerFrom_1 = require(\"./innerFrom\");\nvar empty_1 = require(\"./empty\");\nfunction using(resourceFactory, observableFactory) {\n return new Observable_1.Observable(function (subscriber) {\n var resource = resourceFactory();\n var result = observableFactory(resource);\n var source = result ? innerFrom_1.innerFrom(result) : empty_1.EMPTY;\n source.subscribe(subscriber);\n return function () {\n if (resource) {\n resource.unsubscribe();\n }\n };\n });\n}\nexports.using = using;\n//# sourceMappingURL=using.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.zip = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar innerFrom_1 = require(\"./innerFrom\");\nvar argsOrArgArray_1 = require(\"../util/argsOrArgArray\");\nvar empty_1 = require(\"./empty\");\nvar OperatorSubscriber_1 = require(\"../operators/OperatorSubscriber\");\nvar args_1 = require(\"../util/args\");\nfunction zip() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = args_1.popResultSelector(args);\n var sources = argsOrArgArray_1.argsOrArgArray(args);\n return sources.length\n ? new Observable_1.Observable(function (subscriber) {\n var buffers = sources.map(function () { return []; });\n var completed = sources.map(function () { return false; });\n subscriber.add(function () {\n buffers = completed = null;\n });\n var _loop_1 = function (sourceIndex) {\n innerFrom_1.innerFrom(sources[sourceIndex]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n buffers[sourceIndex].push(value);\n if (buffers.every(function (buffer) { return buffer.length; })) {\n var result = buffers.map(function (buffer) { return buffer.shift(); });\n subscriber.next(resultSelector ? resultSelector.apply(void 0, __spreadArray([], __read(result))) : result);\n if (buffers.some(function (buffer, i) { return !buffer.length && completed[i]; })) {\n subscriber.complete();\n }\n }\n }, function () {\n completed[sourceIndex] = true;\n !buffers[sourceIndex].length && subscriber.complete();\n }));\n };\n for (var sourceIndex = 0; !subscriber.closed && sourceIndex < sources.length; sourceIndex++) {\n _loop_1(sourceIndex);\n }\n return function () {\n buffers = completed = null;\n };\n })\n : empty_1.EMPTY;\n}\nexports.zip = zip;\n//# sourceMappingURL=zip.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=types.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.audit = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction audit(durationSelector) {\n return lift_1.operate(function (source, subscriber) {\n var hasValue = false;\n var lastValue = null;\n var durationSubscriber = null;\n var isComplete = false;\n var endDuration = function () {\n durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();\n durationSubscriber = null;\n if (hasValue) {\n hasValue = false;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n isComplete && subscriber.complete();\n };\n var cleanupDuration = function () {\n durationSubscriber = null;\n isComplete && subscriber.complete();\n };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n lastValue = value;\n if (!durationSubscriber) {\n innerFrom_1.innerFrom(durationSelector(value)).subscribe((durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, endDuration, cleanupDuration)));\n }\n }, function () {\n isComplete = true;\n (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber.complete();\n }));\n });\n}\nexports.audit = audit;\n//# sourceMappingURL=audit.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.auditTime = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar audit_1 = require(\"./audit\");\nvar timer_1 = require(\"../observable/timer\");\nfunction auditTime(duration, scheduler) {\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n return audit_1.audit(function () { return timer_1.timer(duration, scheduler); });\n}\nexports.auditTime = auditTime;\n//# sourceMappingURL=auditTime.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.buffer = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar noop_1 = require(\"../util/noop\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction buffer(closingNotifier) {\n return lift_1.operate(function (source, subscriber) {\n var currentBuffer = [];\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return currentBuffer.push(value); }, function () {\n subscriber.next(currentBuffer);\n subscriber.complete();\n }));\n innerFrom_1.innerFrom(closingNotifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n var b = currentBuffer;\n currentBuffer = [];\n subscriber.next(b);\n }, noop_1.noop));\n return function () {\n currentBuffer = null;\n };\n });\n}\nexports.buffer = buffer;\n//# sourceMappingURL=buffer.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bufferCount = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar arrRemove_1 = require(\"../util/arrRemove\");\nfunction bufferCount(bufferSize, startBufferEvery) {\n if (startBufferEvery === void 0) { startBufferEvery = null; }\n startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize;\n return lift_1.operate(function (source, subscriber) {\n var buffers = [];\n var count = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var e_1, _a, e_2, _b;\n var toEmit = null;\n if (count++ % startBufferEvery === 0) {\n buffers.push([]);\n }\n try {\n for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) {\n var buffer = buffers_1_1.value;\n buffer.push(value);\n if (bufferSize <= buffer.length) {\n toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : [];\n toEmit.push(buffer);\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n if (toEmit) {\n try {\n for (var toEmit_1 = __values(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) {\n var buffer = toEmit_1_1.value;\n arrRemove_1.arrRemove(buffers, buffer);\n subscriber.next(buffer);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) _b.call(toEmit_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n }, function () {\n var e_3, _a;\n try {\n for (var buffers_2 = __values(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) {\n var buffer = buffers_2_1.value;\n subscriber.next(buffer);\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) _a.call(buffers_2);\n }\n finally { if (e_3) throw e_3.error; }\n }\n subscriber.complete();\n }, undefined, function () {\n buffers = null;\n }));\n });\n}\nexports.bufferCount = bufferCount;\n//# sourceMappingURL=bufferCount.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bufferTime = void 0;\nvar Subscription_1 = require(\"../Subscription\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar arrRemove_1 = require(\"../util/arrRemove\");\nvar async_1 = require(\"../scheduler/async\");\nvar args_1 = require(\"../util/args\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nfunction bufferTime(bufferTimeSpan) {\n var _a, _b;\n var otherArgs = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n otherArgs[_i - 1] = arguments[_i];\n }\n var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler;\n var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;\n var maxBufferSize = otherArgs[1] || Infinity;\n return lift_1.operate(function (source, subscriber) {\n var bufferRecords = [];\n var restartOnEmit = false;\n var emit = function (record) {\n var buffer = record.buffer, subs = record.subs;\n subs.unsubscribe();\n arrRemove_1.arrRemove(bufferRecords, record);\n subscriber.next(buffer);\n restartOnEmit && startBuffer();\n };\n var startBuffer = function () {\n if (bufferRecords) {\n var subs = new Subscription_1.Subscription();\n subscriber.add(subs);\n var buffer = [];\n var record_1 = {\n buffer: buffer,\n subs: subs,\n };\n bufferRecords.push(record_1);\n executeSchedule_1.executeSchedule(subs, scheduler, function () { return emit(record_1); }, bufferTimeSpan);\n }\n };\n if (bufferCreationInterval !== null && bufferCreationInterval >= 0) {\n executeSchedule_1.executeSchedule(subscriber, scheduler, startBuffer, bufferCreationInterval, true);\n }\n else {\n restartOnEmit = true;\n }\n startBuffer();\n var bufferTimeSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n var recordsCopy = bufferRecords.slice();\n try {\n for (var recordsCopy_1 = __values(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) {\n var record = recordsCopy_1_1.value;\n var buffer = record.buffer;\n buffer.push(value);\n maxBufferSize <= buffer.length && emit(record);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a = recordsCopy_1.return)) _a.call(recordsCopy_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }, function () {\n while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) {\n subscriber.next(bufferRecords.shift().buffer);\n }\n bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe();\n subscriber.complete();\n subscriber.unsubscribe();\n }, undefined, function () { return (bufferRecords = null); });\n source.subscribe(bufferTimeSubscriber);\n });\n}\nexports.bufferTime = bufferTime;\n//# sourceMappingURL=bufferTime.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bufferToggle = void 0;\nvar Subscription_1 = require(\"../Subscription\");\nvar lift_1 = require(\"../util/lift\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar noop_1 = require(\"../util/noop\");\nvar arrRemove_1 = require(\"../util/arrRemove\");\nfunction bufferToggle(openings, closingSelector) {\n return lift_1.operate(function (source, subscriber) {\n var buffers = [];\n innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (openValue) {\n var buffer = [];\n buffers.push(buffer);\n var closingSubscription = new Subscription_1.Subscription();\n var emitBuffer = function () {\n arrRemove_1.arrRemove(buffers, buffer);\n subscriber.next(buffer);\n closingSubscription.unsubscribe();\n };\n closingSubscription.add(innerFrom_1.innerFrom(closingSelector(openValue)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, emitBuffer, noop_1.noop)));\n }, noop_1.noop));\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n try {\n for (var buffers_1 = __values(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) {\n var buffer = buffers_1_1.value;\n buffer.push(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }, function () {\n while (buffers.length > 0) {\n subscriber.next(buffers.shift());\n }\n subscriber.complete();\n }));\n });\n}\nexports.bufferToggle = bufferToggle;\n//# sourceMappingURL=bufferToggle.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bufferWhen = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar noop_1 = require(\"../util/noop\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction bufferWhen(closingSelector) {\n return lift_1.operate(function (source, subscriber) {\n var buffer = null;\n var closingSubscriber = null;\n var openBuffer = function () {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n var b = buffer;\n buffer = [];\n b && subscriber.next(b);\n innerFrom_1.innerFrom(closingSelector()).subscribe((closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openBuffer, noop_1.noop)));\n };\n openBuffer();\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return buffer === null || buffer === void 0 ? void 0 : buffer.push(value); }, function () {\n buffer && subscriber.next(buffer);\n subscriber.complete();\n }, undefined, function () { return (buffer = closingSubscriber = null); }));\n });\n}\nexports.bufferWhen = bufferWhen;\n//# sourceMappingURL=bufferWhen.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.catchError = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar lift_1 = require(\"../util/lift\");\nfunction catchError(selector) {\n return lift_1.operate(function (source, subscriber) {\n var innerSub = null;\n var syncUnsub = false;\n var handledResult;\n innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, undefined, undefined, function (err) {\n handledResult = innerFrom_1.innerFrom(selector(err, catchError(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n else {\n syncUnsub = true;\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n });\n}\nexports.catchError = catchError;\n//# sourceMappingURL=catchError.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scanInternals = void 0;\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) {\n return function (source, subscriber) {\n var hasState = hasSeed;\n var state = seed;\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var i = index++;\n state = hasState\n ?\n accumulator(state, value, i)\n :\n ((hasState = true), value);\n emitOnNext && subscriber.next(state);\n }, emitBeforeComplete &&\n (function () {\n hasState && subscriber.next(state);\n subscriber.complete();\n })));\n };\n}\nexports.scanInternals = scanInternals;\n//# sourceMappingURL=scanInternals.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reduce = void 0;\nvar scanInternals_1 = require(\"./scanInternals\");\nvar lift_1 = require(\"../util/lift\");\nfunction reduce(accumulator, seed) {\n return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true));\n}\nexports.reduce = reduce;\n//# sourceMappingURL=reduce.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toArray = void 0;\nvar reduce_1 = require(\"./reduce\");\nvar lift_1 = require(\"../util/lift\");\nvar arrReducer = function (arr, value) { return (arr.push(value), arr); };\nfunction toArray() {\n return lift_1.operate(function (source, subscriber) {\n reduce_1.reduce(arrReducer, [])(source).subscribe(subscriber);\n });\n}\nexports.toArray = toArray;\n//# sourceMappingURL=toArray.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.joinAllInternals = void 0;\nvar identity_1 = require(\"../util/identity\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nvar pipe_1 = require(\"../util/pipe\");\nvar mergeMap_1 = require(\"./mergeMap\");\nvar toArray_1 = require(\"./toArray\");\nfunction joinAllInternals(joinFn, project) {\n return pipe_1.pipe(toArray_1.toArray(), mergeMap_1.mergeMap(function (sources) { return joinFn(sources); }), project ? mapOneOrManyArgs_1.mapOneOrManyArgs(project) : identity_1.identity);\n}\nexports.joinAllInternals = joinAllInternals;\n//# sourceMappingURL=joinAllInternals.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.combineLatestAll = void 0;\nvar combineLatest_1 = require(\"../observable/combineLatest\");\nvar joinAllInternals_1 = require(\"./joinAllInternals\");\nfunction combineLatestAll(project) {\n return joinAllInternals_1.joinAllInternals(combineLatest_1.combineLatest, project);\n}\nexports.combineLatestAll = combineLatestAll;\n//# sourceMappingURL=combineLatestAll.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.combineAll = void 0;\nvar combineLatestAll_1 = require(\"./combineLatestAll\");\nexports.combineAll = combineLatestAll_1.combineLatestAll;\n//# sourceMappingURL=combineAll.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.combineLatest = void 0;\nvar combineLatest_1 = require(\"../observable/combineLatest\");\nvar lift_1 = require(\"../util/lift\");\nvar argsOrArgArray_1 = require(\"../util/argsOrArgArray\");\nvar mapOneOrManyArgs_1 = require(\"../util/mapOneOrManyArgs\");\nvar pipe_1 = require(\"../util/pipe\");\nvar args_1 = require(\"../util/args\");\nfunction combineLatest() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var resultSelector = args_1.popResultSelector(args);\n return resultSelector\n ? pipe_1.pipe(combineLatest.apply(void 0, __spreadArray([], __read(args))), mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector))\n : lift_1.operate(function (source, subscriber) {\n combineLatest_1.combineLatestInit(__spreadArray([source], __read(argsOrArgArray_1.argsOrArgArray(args))))(subscriber);\n });\n}\nexports.combineLatest = combineLatest;\n//# sourceMappingURL=combineLatest.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.combineLatestWith = void 0;\nvar combineLatest_1 = require(\"./combineLatest\");\nfunction combineLatestWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return combineLatest_1.combineLatest.apply(void 0, __spreadArray([], __read(otherSources)));\n}\nexports.combineLatestWith = combineLatestWith;\n//# sourceMappingURL=combineLatestWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.concatMap = void 0;\nvar mergeMap_1 = require(\"./mergeMap\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction concatMap(project, resultSelector) {\n return isFunction_1.isFunction(resultSelector) ? mergeMap_1.mergeMap(project, resultSelector, 1) : mergeMap_1.mergeMap(project, 1);\n}\nexports.concatMap = concatMap;\n//# sourceMappingURL=concatMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.concatMapTo = void 0;\nvar concatMap_1 = require(\"./concatMap\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction concatMapTo(innerObservable, resultSelector) {\n return isFunction_1.isFunction(resultSelector) ? concatMap_1.concatMap(function () { return innerObservable; }, resultSelector) : concatMap_1.concatMap(function () { return innerObservable; });\n}\nexports.concatMapTo = concatMapTo;\n//# sourceMappingURL=concatMapTo.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.concat = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar concatAll_1 = require(\"./concatAll\");\nvar args_1 = require(\"../util/args\");\nvar from_1 = require(\"../observable/from\");\nfunction concat() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = args_1.popScheduler(args);\n return lift_1.operate(function (source, subscriber) {\n concatAll_1.concatAll()(from_1.from(__spreadArray([source], __read(args)), scheduler)).subscribe(subscriber);\n });\n}\nexports.concat = concat;\n//# sourceMappingURL=concat.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.concatWith = void 0;\nvar concat_1 = require(\"./concat\");\nfunction concatWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return concat_1.concat.apply(void 0, __spreadArray([], __read(otherSources)));\n}\nexports.concatWith = concatWith;\n//# sourceMappingURL=concatWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromSubscribable = void 0;\nvar Observable_1 = require(\"../Observable\");\nfunction fromSubscribable(subscribable) {\n return new Observable_1.Observable(function (subscriber) { return subscribable.subscribe(subscriber); });\n}\nexports.fromSubscribable = fromSubscribable;\n//# sourceMappingURL=fromSubscribable.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.connect = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar lift_1 = require(\"../util/lift\");\nvar fromSubscribable_1 = require(\"../observable/fromSubscribable\");\nvar DEFAULT_CONFIG = {\n connector: function () { return new Subject_1.Subject(); },\n};\nfunction connect(selector, config) {\n if (config === void 0) { config = DEFAULT_CONFIG; }\n var connector = config.connector;\n return lift_1.operate(function (source, subscriber) {\n var subject = connector();\n innerFrom_1.innerFrom(selector(fromSubscribable_1.fromSubscribable(subject))).subscribe(subscriber);\n subscriber.add(source.subscribe(subject));\n });\n}\nexports.connect = connect;\n//# sourceMappingURL=connect.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.count = void 0;\nvar reduce_1 = require(\"./reduce\");\nfunction count(predicate) {\n return reduce_1.reduce(function (total, value, i) { return (!predicate || predicate(value, i) ? total + 1 : total); }, 0);\n}\nexports.count = count;\n//# sourceMappingURL=count.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.debounce = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar noop_1 = require(\"../util/noop\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction debounce(durationSelector) {\n return lift_1.operate(function (source, subscriber) {\n var hasValue = false;\n var lastValue = null;\n var durationSubscriber = null;\n var emit = function () {\n durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();\n durationSubscriber = null;\n if (hasValue) {\n hasValue = false;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();\n hasValue = true;\n lastValue = value;\n durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, emit, noop_1.noop);\n innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber);\n }, function () {\n emit();\n subscriber.complete();\n }, undefined, function () {\n lastValue = durationSubscriber = null;\n }));\n });\n}\nexports.debounce = debounce;\n//# sourceMappingURL=debounce.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.debounceTime = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction debounceTime(dueTime, scheduler) {\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n return lift_1.operate(function (source, subscriber) {\n var activeTask = null;\n var lastValue = null;\n var lastTime = null;\n var emit = function () {\n if (activeTask) {\n activeTask.unsubscribe();\n activeTask = null;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n };\n function emitWhenIdle() {\n var targetTime = lastTime + dueTime;\n var now = scheduler.now();\n if (now < targetTime) {\n activeTask = this.schedule(undefined, targetTime - now);\n subscriber.add(activeTask);\n return;\n }\n emit();\n }\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n lastValue = value;\n lastTime = scheduler.now();\n if (!activeTask) {\n activeTask = scheduler.schedule(emitWhenIdle, dueTime);\n subscriber.add(activeTask);\n }\n }, function () {\n emit();\n subscriber.complete();\n }, undefined, function () {\n lastValue = activeTask = null;\n }));\n });\n}\nexports.debounceTime = debounceTime;\n//# sourceMappingURL=debounceTime.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultIfEmpty = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction defaultIfEmpty(defaultValue) {\n return lift_1.operate(function (source, subscriber) {\n var hasValue = false;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n subscriber.next(value);\n }, function () {\n if (!hasValue) {\n subscriber.next(defaultValue);\n }\n subscriber.complete();\n }));\n });\n}\nexports.defaultIfEmpty = defaultIfEmpty;\n//# sourceMappingURL=defaultIfEmpty.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.take = void 0;\nvar empty_1 = require(\"../observable/empty\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction take(count) {\n return count <= 0\n ?\n function () { return empty_1.EMPTY; }\n : lift_1.operate(function (source, subscriber) {\n var seen = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n if (++seen <= count) {\n subscriber.next(value);\n if (count <= seen) {\n subscriber.complete();\n }\n }\n }));\n });\n}\nexports.take = take;\n//# sourceMappingURL=take.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ignoreElements = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar noop_1 = require(\"../util/noop\");\nfunction ignoreElements() {\n return lift_1.operate(function (source, subscriber) {\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, noop_1.noop));\n });\n}\nexports.ignoreElements = ignoreElements;\n//# sourceMappingURL=ignoreElements.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mapTo = void 0;\nvar map_1 = require(\"./map\");\nfunction mapTo(value) {\n return map_1.map(function () { return value; });\n}\nexports.mapTo = mapTo;\n//# sourceMappingURL=mapTo.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.delayWhen = void 0;\nvar concat_1 = require(\"../observable/concat\");\nvar take_1 = require(\"./take\");\nvar ignoreElements_1 = require(\"./ignoreElements\");\nvar mapTo_1 = require(\"./mapTo\");\nvar mergeMap_1 = require(\"./mergeMap\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction delayWhen(delayDurationSelector, subscriptionDelay) {\n if (subscriptionDelay) {\n return function (source) {\n return concat_1.concat(subscriptionDelay.pipe(take_1.take(1), ignoreElements_1.ignoreElements()), source.pipe(delayWhen(delayDurationSelector)));\n };\n }\n return mergeMap_1.mergeMap(function (value, index) { return innerFrom_1.innerFrom(delayDurationSelector(value, index)).pipe(take_1.take(1), mapTo_1.mapTo(value)); });\n}\nexports.delayWhen = delayWhen;\n//# sourceMappingURL=delayWhen.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.delay = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar delayWhen_1 = require(\"./delayWhen\");\nvar timer_1 = require(\"../observable/timer\");\nfunction delay(due, scheduler) {\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n var duration = timer_1.timer(due, scheduler);\n return delayWhen_1.delayWhen(function () { return duration; });\n}\nexports.delay = delay;\n//# sourceMappingURL=delay.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dematerialize = void 0;\nvar Notification_1 = require(\"../Notification\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction dematerialize() {\n return lift_1.operate(function (source, subscriber) {\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (notification) { return Notification_1.observeNotification(notification, subscriber); }));\n });\n}\nexports.dematerialize = dematerialize;\n//# sourceMappingURL=dematerialize.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.distinct = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar noop_1 = require(\"../util/noop\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction distinct(keySelector, flushes) {\n return lift_1.operate(function (source, subscriber) {\n var distinctKeys = new Set();\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var key = keySelector ? keySelector(value) : value;\n if (!distinctKeys.has(key)) {\n distinctKeys.add(key);\n subscriber.next(value);\n }\n }));\n flushes && innerFrom_1.innerFrom(flushes).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () { return distinctKeys.clear(); }, noop_1.noop));\n });\n}\nexports.distinct = distinct;\n//# sourceMappingURL=distinct.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.distinctUntilChanged = void 0;\nvar identity_1 = require(\"../util/identity\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction distinctUntilChanged(comparator, keySelector) {\n if (keySelector === void 0) { keySelector = identity_1.identity; }\n comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare;\n return lift_1.operate(function (source, subscriber) {\n var previousKey;\n var first = true;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var currentKey = keySelector(value);\n if (first || !comparator(previousKey, currentKey)) {\n first = false;\n previousKey = currentKey;\n subscriber.next(value);\n }\n }));\n });\n}\nexports.distinctUntilChanged = distinctUntilChanged;\nfunction defaultCompare(a, b) {\n return a === b;\n}\n//# sourceMappingURL=distinctUntilChanged.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.distinctUntilKeyChanged = void 0;\nvar distinctUntilChanged_1 = require(\"./distinctUntilChanged\");\nfunction distinctUntilKeyChanged(key, compare) {\n return distinctUntilChanged_1.distinctUntilChanged(function (x, y) { return (compare ? compare(x[key], y[key]) : x[key] === y[key]); });\n}\nexports.distinctUntilKeyChanged = distinctUntilKeyChanged;\n//# sourceMappingURL=distinctUntilKeyChanged.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.throwIfEmpty = void 0;\nvar EmptyError_1 = require(\"../util/EmptyError\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction throwIfEmpty(errorFactory) {\n if (errorFactory === void 0) { errorFactory = defaultErrorFactory; }\n return lift_1.operate(function (source, subscriber) {\n var hasValue = false;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n subscriber.next(value);\n }, function () { return (hasValue ? subscriber.complete() : subscriber.error(errorFactory())); }));\n });\n}\nexports.throwIfEmpty = throwIfEmpty;\nfunction defaultErrorFactory() {\n return new EmptyError_1.EmptyError();\n}\n//# sourceMappingURL=throwIfEmpty.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.elementAt = void 0;\nvar ArgumentOutOfRangeError_1 = require(\"../util/ArgumentOutOfRangeError\");\nvar filter_1 = require(\"./filter\");\nvar throwIfEmpty_1 = require(\"./throwIfEmpty\");\nvar defaultIfEmpty_1 = require(\"./defaultIfEmpty\");\nvar take_1 = require(\"./take\");\nfunction elementAt(index, defaultValue) {\n if (index < 0) {\n throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError();\n }\n var hasDefaultValue = arguments.length >= 2;\n return function (source) {\n return source.pipe(filter_1.filter(function (v, i) { return i === index; }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function () { return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError(); }));\n };\n}\nexports.elementAt = elementAt;\n//# sourceMappingURL=elementAt.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.endWith = void 0;\nvar concat_1 = require(\"../observable/concat\");\nvar of_1 = require(\"../observable/of\");\nfunction endWith() {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n return function (source) { return concat_1.concat(source, of_1.of.apply(void 0, __spreadArray([], __read(values)))); };\n}\nexports.endWith = endWith;\n//# sourceMappingURL=endWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.every = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction every(predicate, thisArg) {\n return lift_1.operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n if (!predicate.call(thisArg, value, index++, source)) {\n subscriber.next(false);\n subscriber.complete();\n }\n }, function () {\n subscriber.next(true);\n subscriber.complete();\n }));\n });\n}\nexports.every = every;\n//# sourceMappingURL=every.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.exhaustMap = void 0;\nvar map_1 = require(\"./map\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction exhaustMap(project, resultSelector) {\n if (resultSelector) {\n return function (source) {\n return source.pipe(exhaustMap(function (a, i) { return innerFrom_1.innerFrom(project(a, i)).pipe(map_1.map(function (b, ii) { return resultSelector(a, b, i, ii); })); }));\n };\n }\n return lift_1.operate(function (source, subscriber) {\n var index = 0;\n var innerSub = null;\n var isComplete = false;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (outerValue) {\n if (!innerSub) {\n innerSub = OperatorSubscriber_1.createOperatorSubscriber(subscriber, undefined, function () {\n innerSub = null;\n isComplete && subscriber.complete();\n });\n innerFrom_1.innerFrom(project(outerValue, index++)).subscribe(innerSub);\n }\n }, function () {\n isComplete = true;\n !innerSub && subscriber.complete();\n }));\n });\n}\nexports.exhaustMap = exhaustMap;\n//# sourceMappingURL=exhaustMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.exhaustAll = void 0;\nvar exhaustMap_1 = require(\"./exhaustMap\");\nvar identity_1 = require(\"../util/identity\");\nfunction exhaustAll() {\n return exhaustMap_1.exhaustMap(identity_1.identity);\n}\nexports.exhaustAll = exhaustAll;\n//# sourceMappingURL=exhaustAll.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.exhaust = void 0;\nvar exhaustAll_1 = require(\"./exhaustAll\");\nexports.exhaust = exhaustAll_1.exhaustAll;\n//# sourceMappingURL=exhaust.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.expand = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar mergeInternals_1 = require(\"./mergeInternals\");\nfunction expand(project, concurrent, scheduler) {\n if (concurrent === void 0) { concurrent = Infinity; }\n concurrent = (concurrent || 0) < 1 ? Infinity : concurrent;\n return lift_1.operate(function (source, subscriber) {\n return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent, undefined, true, scheduler);\n });\n}\nexports.expand = expand;\n//# sourceMappingURL=expand.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.finalize = void 0;\nvar lift_1 = require(\"../util/lift\");\nfunction finalize(callback) {\n return lift_1.operate(function (source, subscriber) {\n try {\n source.subscribe(subscriber);\n }\n finally {\n subscriber.add(callback);\n }\n });\n}\nexports.finalize = finalize;\n//# sourceMappingURL=finalize.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createFind = exports.find = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction find(predicate, thisArg) {\n return lift_1.operate(createFind(predicate, thisArg, 'value'));\n}\nexports.find = find;\nfunction createFind(predicate, thisArg, emit) {\n var findIndex = emit === 'index';\n return function (source, subscriber) {\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var i = index++;\n if (predicate.call(thisArg, value, i, source)) {\n subscriber.next(findIndex ? i : value);\n subscriber.complete();\n }\n }, function () {\n subscriber.next(findIndex ? -1 : undefined);\n subscriber.complete();\n }));\n };\n}\nexports.createFind = createFind;\n//# sourceMappingURL=find.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.findIndex = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar find_1 = require(\"./find\");\nfunction findIndex(predicate, thisArg) {\n return lift_1.operate(find_1.createFind(predicate, thisArg, 'index'));\n}\nexports.findIndex = findIndex;\n//# sourceMappingURL=findIndex.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.first = void 0;\nvar EmptyError_1 = require(\"../util/EmptyError\");\nvar filter_1 = require(\"./filter\");\nvar take_1 = require(\"./take\");\nvar defaultIfEmpty_1 = require(\"./defaultIfEmpty\");\nvar throwIfEmpty_1 = require(\"./throwIfEmpty\");\nvar identity_1 = require(\"../util/identity\");\nfunction first(predicate, defaultValue) {\n var hasDefaultValue = arguments.length >= 2;\n return function (source) {\n return source.pipe(predicate ? filter_1.filter(function (v, i) { return predicate(v, i, source); }) : identity_1.identity, take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function () { return new EmptyError_1.EmptyError(); }));\n };\n}\nexports.first = first;\n//# sourceMappingURL=first.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.groupBy = void 0;\nvar Observable_1 = require(\"../Observable\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar Subject_1 = require(\"../Subject\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction groupBy(keySelector, elementOrOptions, duration, connector) {\n return lift_1.operate(function (source, subscriber) {\n var element;\n if (!elementOrOptions || typeof elementOrOptions === 'function') {\n element = elementOrOptions;\n }\n else {\n (duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector);\n }\n var groups = new Map();\n var notify = function (cb) {\n groups.forEach(cb);\n cb(subscriber);\n };\n var handleError = function (err) { return notify(function (consumer) { return consumer.error(err); }); };\n var activeGroups = 0;\n var teardownAttempted = false;\n var groupBySourceSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function (value) {\n try {\n var key_1 = keySelector(value);\n var group_1 = groups.get(key_1);\n if (!group_1) {\n groups.set(key_1, (group_1 = connector ? connector() : new Subject_1.Subject()));\n var grouped = createGroupedObservable(key_1, group_1);\n subscriber.next(grouped);\n if (duration) {\n var durationSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(group_1, function () {\n group_1.complete();\n durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe();\n }, undefined, undefined, function () { return groups.delete(key_1); });\n groupBySourceSubscriber.add(innerFrom_1.innerFrom(duration(grouped)).subscribe(durationSubscriber_1));\n }\n }\n group_1.next(element ? element(value) : value);\n }\n catch (err) {\n handleError(err);\n }\n }, function () { return notify(function (consumer) { return consumer.complete(); }); }, handleError, function () { return groups.clear(); }, function () {\n teardownAttempted = true;\n return activeGroups === 0;\n });\n source.subscribe(groupBySourceSubscriber);\n function createGroupedObservable(key, groupSubject) {\n var result = new Observable_1.Observable(function (groupSubscriber) {\n activeGroups++;\n var innerSub = groupSubject.subscribe(groupSubscriber);\n return function () {\n innerSub.unsubscribe();\n --activeGroups === 0 && teardownAttempted && groupBySourceSubscriber.unsubscribe();\n };\n });\n result.key = key;\n return result;\n }\n });\n}\nexports.groupBy = groupBy;\n//# sourceMappingURL=groupBy.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isEmpty = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction isEmpty() {\n return lift_1.operate(function (source, subscriber) {\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n subscriber.next(false);\n subscriber.complete();\n }, function () {\n subscriber.next(true);\n subscriber.complete();\n }));\n });\n}\nexports.isEmpty = isEmpty;\n//# sourceMappingURL=isEmpty.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.takeLast = void 0;\nvar empty_1 = require(\"../observable/empty\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction takeLast(count) {\n return count <= 0\n ? function () { return empty_1.EMPTY; }\n : lift_1.operate(function (source, subscriber) {\n var buffer = [];\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n buffer.push(value);\n count < buffer.length && buffer.shift();\n }, function () {\n var e_1, _a;\n try {\n for (var buffer_1 = __values(buffer), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) {\n var value = buffer_1_1.value;\n subscriber.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) _a.call(buffer_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n subscriber.complete();\n }, undefined, function () {\n buffer = null;\n }));\n });\n}\nexports.takeLast = takeLast;\n//# sourceMappingURL=takeLast.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.last = void 0;\nvar EmptyError_1 = require(\"../util/EmptyError\");\nvar filter_1 = require(\"./filter\");\nvar takeLast_1 = require(\"./takeLast\");\nvar throwIfEmpty_1 = require(\"./throwIfEmpty\");\nvar defaultIfEmpty_1 = require(\"./defaultIfEmpty\");\nvar identity_1 = require(\"../util/identity\");\nfunction last(predicate, defaultValue) {\n var hasDefaultValue = arguments.length >= 2;\n return function (source) {\n return source.pipe(predicate ? filter_1.filter(function (v, i) { return predicate(v, i, source); }) : identity_1.identity, takeLast_1.takeLast(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function () { return new EmptyError_1.EmptyError(); }));\n };\n}\nexports.last = last;\n//# sourceMappingURL=last.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.materialize = void 0;\nvar Notification_1 = require(\"../Notification\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction materialize() {\n return lift_1.operate(function (source, subscriber) {\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n subscriber.next(Notification_1.Notification.createNext(value));\n }, function () {\n subscriber.next(Notification_1.Notification.createComplete());\n subscriber.complete();\n }, function (err) {\n subscriber.next(Notification_1.Notification.createError(err));\n subscriber.complete();\n }));\n });\n}\nexports.materialize = materialize;\n//# sourceMappingURL=materialize.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.max = void 0;\nvar reduce_1 = require(\"./reduce\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction max(comparer) {\n return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function (x, y) { return (comparer(x, y) > 0 ? x : y); } : function (x, y) { return (x > y ? x : y); });\n}\nexports.max = max;\n//# sourceMappingURL=max.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.flatMap = void 0;\nvar mergeMap_1 = require(\"./mergeMap\");\nexports.flatMap = mergeMap_1.mergeMap;\n//# sourceMappingURL=flatMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeMapTo = void 0;\nvar mergeMap_1 = require(\"./mergeMap\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction mergeMapTo(innerObservable, resultSelector, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n if (isFunction_1.isFunction(resultSelector)) {\n return mergeMap_1.mergeMap(function () { return innerObservable; }, resultSelector, concurrent);\n }\n if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n return mergeMap_1.mergeMap(function () { return innerObservable; }, concurrent);\n}\nexports.mergeMapTo = mergeMapTo;\n//# sourceMappingURL=mergeMapTo.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeScan = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar mergeInternals_1 = require(\"./mergeInternals\");\nfunction mergeScan(accumulator, seed, concurrent) {\n if (concurrent === void 0) { concurrent = Infinity; }\n return lift_1.operate(function (source, subscriber) {\n var state = seed;\n return mergeInternals_1.mergeInternals(source, subscriber, function (value, index) { return accumulator(state, value, index); }, concurrent, function (value) {\n state = value;\n }, false, undefined, function () { return (state = null); });\n });\n}\nexports.mergeScan = mergeScan;\n//# sourceMappingURL=mergeScan.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.merge = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar mergeAll_1 = require(\"./mergeAll\");\nvar args_1 = require(\"../util/args\");\nvar from_1 = require(\"../observable/from\");\nfunction merge() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var scheduler = args_1.popScheduler(args);\n var concurrent = args_1.popNumber(args, Infinity);\n return lift_1.operate(function (source, subscriber) {\n mergeAll_1.mergeAll(concurrent)(from_1.from(__spreadArray([source], __read(args)), scheduler)).subscribe(subscriber);\n });\n}\nexports.merge = merge;\n//# sourceMappingURL=merge.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeWith = void 0;\nvar merge_1 = require(\"./merge\");\nfunction mergeWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return merge_1.merge.apply(void 0, __spreadArray([], __read(otherSources)));\n}\nexports.mergeWith = mergeWith;\n//# sourceMappingURL=mergeWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.min = void 0;\nvar reduce_1 = require(\"./reduce\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction min(comparer) {\n return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function (x, y) { return (comparer(x, y) < 0 ? x : y); } : function (x, y) { return (x < y ? x : y); });\n}\nexports.min = min;\n//# sourceMappingURL=min.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.multicast = void 0;\nvar ConnectableObservable_1 = require(\"../observable/ConnectableObservable\");\nvar isFunction_1 = require(\"../util/isFunction\");\nvar connect_1 = require(\"./connect\");\nfunction multicast(subjectOrSubjectFactory, selector) {\n var subjectFactory = isFunction_1.isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function () { return subjectOrSubjectFactory; };\n if (isFunction_1.isFunction(selector)) {\n return connect_1.connect(selector, {\n connector: subjectFactory,\n });\n }\n return function (source) { return new ConnectableObservable_1.ConnectableObservable(source, subjectFactory); };\n}\nexports.multicast = multicast;\n//# sourceMappingURL=multicast.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.onErrorResumeNext = exports.onErrorResumeNextWith = void 0;\nvar argsOrArgArray_1 = require(\"../util/argsOrArgArray\");\nvar onErrorResumeNext_1 = require(\"../observable/onErrorResumeNext\");\nfunction onErrorResumeNextWith() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n var nextSources = argsOrArgArray_1.argsOrArgArray(sources);\n return function (source) { return onErrorResumeNext_1.onErrorResumeNext.apply(void 0, __spreadArray([source], __read(nextSources))); };\n}\nexports.onErrorResumeNextWith = onErrorResumeNextWith;\nexports.onErrorResumeNext = onErrorResumeNextWith;\n//# sourceMappingURL=onErrorResumeNextWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pairwise = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction pairwise() {\n return lift_1.operate(function (source, subscriber) {\n var prev;\n var hasPrev = false;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var p = prev;\n prev = value;\n hasPrev && subscriber.next([p, value]);\n hasPrev = true;\n }));\n });\n}\nexports.pairwise = pairwise;\n//# sourceMappingURL=pairwise.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pluck = void 0;\nvar map_1 = require(\"./map\");\nfunction pluck() {\n var properties = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n properties[_i] = arguments[_i];\n }\n var length = properties.length;\n if (length === 0) {\n throw new Error('list of properties cannot be empty.');\n }\n return map_1.map(function (x) {\n var currentProp = x;\n for (var i = 0; i < length; i++) {\n var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i]];\n if (typeof p !== 'undefined') {\n currentProp = p;\n }\n else {\n return undefined;\n }\n }\n return currentProp;\n });\n}\nexports.pluck = pluck;\n//# sourceMappingURL=pluck.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.publish = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar multicast_1 = require(\"./multicast\");\nvar connect_1 = require(\"./connect\");\nfunction publish(selector) {\n return selector ? function (source) { return connect_1.connect(selector)(source); } : function (source) { return multicast_1.multicast(new Subject_1.Subject())(source); };\n}\nexports.publish = publish;\n//# sourceMappingURL=publish.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.publishBehavior = void 0;\nvar BehaviorSubject_1 = require(\"../BehaviorSubject\");\nvar ConnectableObservable_1 = require(\"../observable/ConnectableObservable\");\nfunction publishBehavior(initialValue) {\n return function (source) {\n var subject = new BehaviorSubject_1.BehaviorSubject(initialValue);\n return new ConnectableObservable_1.ConnectableObservable(source, function () { return subject; });\n };\n}\nexports.publishBehavior = publishBehavior;\n//# sourceMappingURL=publishBehavior.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.publishLast = void 0;\nvar AsyncSubject_1 = require(\"../AsyncSubject\");\nvar ConnectableObservable_1 = require(\"../observable/ConnectableObservable\");\nfunction publishLast() {\n return function (source) {\n var subject = new AsyncSubject_1.AsyncSubject();\n return new ConnectableObservable_1.ConnectableObservable(source, function () { return subject; });\n };\n}\nexports.publishLast = publishLast;\n//# sourceMappingURL=publishLast.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.publishReplay = void 0;\nvar ReplaySubject_1 = require(\"../ReplaySubject\");\nvar multicast_1 = require(\"./multicast\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction publishReplay(bufferSize, windowTime, selectorOrScheduler, timestampProvider) {\n if (selectorOrScheduler && !isFunction_1.isFunction(selectorOrScheduler)) {\n timestampProvider = selectorOrScheduler;\n }\n var selector = isFunction_1.isFunction(selectorOrScheduler) ? selectorOrScheduler : undefined;\n return function (source) { return multicast_1.multicast(new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, timestampProvider), selector)(source); };\n}\nexports.publishReplay = publishReplay;\n//# sourceMappingURL=publishReplay.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.raceWith = void 0;\nvar race_1 = require(\"../observable/race\");\nvar lift_1 = require(\"../util/lift\");\nvar identity_1 = require(\"../util/identity\");\nfunction raceWith() {\n var otherSources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherSources[_i] = arguments[_i];\n }\n return !otherSources.length\n ? identity_1.identity\n : lift_1.operate(function (source, subscriber) {\n race_1.raceInit(__spreadArray([source], __read(otherSources)))(subscriber);\n });\n}\nexports.raceWith = raceWith;\n//# sourceMappingURL=raceWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.repeat = void 0;\nvar empty_1 = require(\"../observable/empty\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar timer_1 = require(\"../observable/timer\");\nfunction repeat(countOrConfig) {\n var _a;\n var count = Infinity;\n var delay;\n if (countOrConfig != null) {\n if (typeof countOrConfig === 'object') {\n (_a = countOrConfig.count, count = _a === void 0 ? Infinity : _a, delay = countOrConfig.delay);\n }\n else {\n count = countOrConfig;\n }\n }\n return count <= 0\n ? function () { return empty_1.EMPTY; }\n : lift_1.operate(function (source, subscriber) {\n var soFar = 0;\n var sourceSub;\n var resubscribe = function () {\n sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe();\n sourceSub = null;\n if (delay != null) {\n var notifier = typeof delay === 'number' ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(soFar));\n var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n notifierSubscriber_1.unsubscribe();\n subscribeToSource();\n });\n notifier.subscribe(notifierSubscriber_1);\n }\n else {\n subscribeToSource();\n }\n };\n var subscribeToSource = function () {\n var syncUnsub = false;\n sourceSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, undefined, function () {\n if (++soFar < count) {\n if (sourceSub) {\n resubscribe();\n }\n else {\n syncUnsub = true;\n }\n }\n else {\n subscriber.complete();\n }\n }));\n if (syncUnsub) {\n resubscribe();\n }\n };\n subscribeToSource();\n });\n}\nexports.repeat = repeat;\n//# sourceMappingURL=repeat.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.repeatWhen = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar Subject_1 = require(\"../Subject\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction repeatWhen(notifier) {\n return lift_1.operate(function (source, subscriber) {\n var innerSub;\n var syncResub = false;\n var completions$;\n var isNotifierComplete = false;\n var isMainComplete = false;\n var checkComplete = function () { return isMainComplete && isNotifierComplete && (subscriber.complete(), true); };\n var getCompletionSubject = function () {\n if (!completions$) {\n completions$ = new Subject_1.Subject();\n innerFrom_1.innerFrom(notifier(completions$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n if (innerSub) {\n subscribeForRepeatWhen();\n }\n else {\n syncResub = true;\n }\n }, function () {\n isNotifierComplete = true;\n checkComplete();\n }));\n }\n return completions$;\n };\n var subscribeForRepeatWhen = function () {\n isMainComplete = false;\n innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, undefined, function () {\n isMainComplete = true;\n !checkComplete() && getCompletionSubject().next();\n }));\n if (syncResub) {\n innerSub.unsubscribe();\n innerSub = null;\n syncResub = false;\n subscribeForRepeatWhen();\n }\n };\n subscribeForRepeatWhen();\n });\n}\nexports.repeatWhen = repeatWhen;\n//# sourceMappingURL=repeatWhen.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.retry = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar identity_1 = require(\"../util/identity\");\nvar timer_1 = require(\"../observable/timer\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction retry(configOrCount) {\n if (configOrCount === void 0) { configOrCount = Infinity; }\n var config;\n if (configOrCount && typeof configOrCount === 'object') {\n config = configOrCount;\n }\n else {\n config = {\n count: configOrCount,\n };\n }\n var _a = config.count, count = _a === void 0 ? Infinity : _a, delay = config.delay, _b = config.resetOnSuccess, resetOnSuccess = _b === void 0 ? false : _b;\n return count <= 0\n ? identity_1.identity\n : lift_1.operate(function (source, subscriber) {\n var soFar = 0;\n var innerSub;\n var subscribeForRetry = function () {\n var syncUnsub = false;\n innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n if (resetOnSuccess) {\n soFar = 0;\n }\n subscriber.next(value);\n }, undefined, function (err) {\n if (soFar++ < count) {\n var resub_1 = function () {\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRetry();\n }\n else {\n syncUnsub = true;\n }\n };\n if (delay != null) {\n var notifier = typeof delay === 'number' ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(err, soFar));\n var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n notifierSubscriber_1.unsubscribe();\n resub_1();\n }, function () {\n subscriber.complete();\n });\n notifier.subscribe(notifierSubscriber_1);\n }\n else {\n resub_1();\n }\n }\n else {\n subscriber.error(err);\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n subscribeForRetry();\n }\n };\n subscribeForRetry();\n });\n}\nexports.retry = retry;\n//# sourceMappingURL=retry.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.retryWhen = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar Subject_1 = require(\"../Subject\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction retryWhen(notifier) {\n return lift_1.operate(function (source, subscriber) {\n var innerSub;\n var syncResub = false;\n var errors$;\n var subscribeForRetryWhen = function () {\n innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, undefined, undefined, function (err) {\n if (!errors$) {\n errors$ = new Subject_1.Subject();\n innerFrom_1.innerFrom(notifier(errors$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n return innerSub ? subscribeForRetryWhen() : (syncResub = true);\n }));\n }\n if (errors$) {\n errors$.next(err);\n }\n }));\n if (syncResub) {\n innerSub.unsubscribe();\n innerSub = null;\n syncResub = false;\n subscribeForRetryWhen();\n }\n };\n subscribeForRetryWhen();\n });\n}\nexports.retryWhen = retryWhen;\n//# sourceMappingURL=retryWhen.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sample = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar lift_1 = require(\"../util/lift\");\nvar noop_1 = require(\"../util/noop\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction sample(notifier) {\n return lift_1.operate(function (source, subscriber) {\n var hasValue = false;\n var lastValue = null;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n lastValue = value;\n }));\n innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n if (hasValue) {\n hasValue = false;\n var value = lastValue;\n lastValue = null;\n subscriber.next(value);\n }\n }, noop_1.noop));\n });\n}\nexports.sample = sample;\n//# sourceMappingURL=sample.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sampleTime = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar sample_1 = require(\"./sample\");\nvar interval_1 = require(\"../observable/interval\");\nfunction sampleTime(period, scheduler) {\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n return sample_1.sample(interval_1.interval(period, scheduler));\n}\nexports.sampleTime = sampleTime;\n//# sourceMappingURL=sampleTime.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.scan = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar scanInternals_1 = require(\"./scanInternals\");\nfunction scan(accumulator, seed) {\n return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, true));\n}\nexports.scan = scan;\n//# sourceMappingURL=scan.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sequenceEqual = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction sequenceEqual(compareTo, comparator) {\n if (comparator === void 0) { comparator = function (a, b) { return a === b; }; }\n return lift_1.operate(function (source, subscriber) {\n var aState = createState();\n var bState = createState();\n var emit = function (isEqual) {\n subscriber.next(isEqual);\n subscriber.complete();\n };\n var createSubscriber = function (selfState, otherState) {\n var sequenceEqualSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (a) {\n var buffer = otherState.buffer, complete = otherState.complete;\n if (buffer.length === 0) {\n complete ? emit(false) : selfState.buffer.push(a);\n }\n else {\n !comparator(a, buffer.shift()) && emit(false);\n }\n }, function () {\n selfState.complete = true;\n var complete = otherState.complete, buffer = otherState.buffer;\n complete && emit(buffer.length === 0);\n sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe();\n });\n return sequenceEqualSubscriber;\n };\n source.subscribe(createSubscriber(aState, bState));\n innerFrom_1.innerFrom(compareTo).subscribe(createSubscriber(bState, aState));\n });\n}\nexports.sequenceEqual = sequenceEqual;\nfunction createState() {\n return {\n buffer: [],\n complete: false,\n };\n}\n//# sourceMappingURL=sequenceEqual.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.share = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar Subject_1 = require(\"../Subject\");\nvar Subscriber_1 = require(\"../Subscriber\");\nvar lift_1 = require(\"../util/lift\");\nfunction share(options) {\n if (options === void 0) { options = {}; }\n var _a = options.connector, connector = _a === void 0 ? function () { return new Subject_1.Subject(); } : _a, _b = options.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d;\n return function (wrapperSource) {\n var connection;\n var resetConnection;\n var subject;\n var refCount = 0;\n var hasCompleted = false;\n var hasErrored = false;\n var cancelReset = function () {\n resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe();\n resetConnection = undefined;\n };\n var reset = function () {\n cancelReset();\n connection = subject = undefined;\n hasCompleted = hasErrored = false;\n };\n var resetAndUnsubscribe = function () {\n var conn = connection;\n reset();\n conn === null || conn === void 0 ? void 0 : conn.unsubscribe();\n };\n return lift_1.operate(function (source, subscriber) {\n refCount++;\n if (!hasErrored && !hasCompleted) {\n cancelReset();\n }\n var dest = (subject = subject !== null && subject !== void 0 ? subject : connector());\n subscriber.add(function () {\n refCount--;\n if (refCount === 0 && !hasErrored && !hasCompleted) {\n resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero);\n }\n });\n dest.subscribe(subscriber);\n if (!connection &&\n refCount > 0) {\n connection = new Subscriber_1.SafeSubscriber({\n next: function (value) { return dest.next(value); },\n error: function (err) {\n hasErrored = true;\n cancelReset();\n resetConnection = handleReset(reset, resetOnError, err);\n dest.error(err);\n },\n complete: function () {\n hasCompleted = true;\n cancelReset();\n resetConnection = handleReset(reset, resetOnComplete);\n dest.complete();\n },\n });\n innerFrom_1.innerFrom(source).subscribe(connection);\n }\n })(wrapperSource);\n };\n}\nexports.share = share;\nfunction handleReset(reset, on) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n if (on === true) {\n reset();\n return;\n }\n if (on === false) {\n return;\n }\n var onSubscriber = new Subscriber_1.SafeSubscriber({\n next: function () {\n onSubscriber.unsubscribe();\n reset();\n },\n });\n return innerFrom_1.innerFrom(on.apply(void 0, __spreadArray([], __read(args)))).subscribe(onSubscriber);\n}\n//# sourceMappingURL=share.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.shareReplay = void 0;\nvar ReplaySubject_1 = require(\"../ReplaySubject\");\nvar share_1 = require(\"./share\");\nfunction shareReplay(configOrBufferSize, windowTime, scheduler) {\n var _a, _b, _c;\n var bufferSize;\n var refCount = false;\n if (configOrBufferSize && typeof configOrBufferSize === 'object') {\n (_a = configOrBufferSize.bufferSize, bufferSize = _a === void 0 ? Infinity : _a, _b = configOrBufferSize.windowTime, windowTime = _b === void 0 ? Infinity : _b, _c = configOrBufferSize.refCount, refCount = _c === void 0 ? false : _c, scheduler = configOrBufferSize.scheduler);\n }\n else {\n bufferSize = (configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity);\n }\n return share_1.share({\n connector: function () { return new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler); },\n resetOnError: true,\n resetOnComplete: false,\n resetOnRefCountZero: refCount,\n });\n}\nexports.shareReplay = shareReplay;\n//# sourceMappingURL=shareReplay.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.single = void 0;\nvar EmptyError_1 = require(\"../util/EmptyError\");\nvar SequenceError_1 = require(\"../util/SequenceError\");\nvar NotFoundError_1 = require(\"../util/NotFoundError\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction single(predicate) {\n return lift_1.operate(function (source, subscriber) {\n var hasValue = false;\n var singleValue;\n var seenValue = false;\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n seenValue = true;\n if (!predicate || predicate(value, index++, source)) {\n hasValue && subscriber.error(new SequenceError_1.SequenceError('Too many matching values'));\n hasValue = true;\n singleValue = value;\n }\n }, function () {\n if (hasValue) {\n subscriber.next(singleValue);\n subscriber.complete();\n }\n else {\n subscriber.error(seenValue ? new NotFoundError_1.NotFoundError('No matching values') : new EmptyError_1.EmptyError());\n }\n }));\n });\n}\nexports.single = single;\n//# sourceMappingURL=single.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.skip = void 0;\nvar filter_1 = require(\"./filter\");\nfunction skip(count) {\n return filter_1.filter(function (_, index) { return count <= index; });\n}\nexports.skip = skip;\n//# sourceMappingURL=skip.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.skipLast = void 0;\nvar identity_1 = require(\"../util/identity\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction skipLast(skipCount) {\n return skipCount <= 0\n ?\n identity_1.identity\n : lift_1.operate(function (source, subscriber) {\n var ring = new Array(skipCount);\n var seen = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var valueIndex = seen++;\n if (valueIndex < skipCount) {\n ring[valueIndex] = value;\n }\n else {\n var index = valueIndex % skipCount;\n var oldValue = ring[index];\n ring[index] = value;\n subscriber.next(oldValue);\n }\n }));\n return function () {\n ring = null;\n };\n });\n}\nexports.skipLast = skipLast;\n//# sourceMappingURL=skipLast.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.skipUntil = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar noop_1 = require(\"../util/noop\");\nfunction skipUntil(notifier) {\n return lift_1.operate(function (source, subscriber) {\n var taking = false;\n var skipSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe();\n taking = true;\n }, noop_1.noop);\n innerFrom_1.innerFrom(notifier).subscribe(skipSubscriber);\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return taking && subscriber.next(value); }));\n });\n}\nexports.skipUntil = skipUntil;\n//# sourceMappingURL=skipUntil.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.skipWhile = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction skipWhile(predicate) {\n return lift_1.operate(function (source, subscriber) {\n var taking = false;\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return (taking || (taking = !predicate(value, index++))) && subscriber.next(value); }));\n });\n}\nexports.skipWhile = skipWhile;\n//# sourceMappingURL=skipWhile.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.startWith = void 0;\nvar concat_1 = require(\"../observable/concat\");\nvar args_1 = require(\"../util/args\");\nvar lift_1 = require(\"../util/lift\");\nfunction startWith() {\n var values = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n values[_i] = arguments[_i];\n }\n var scheduler = args_1.popScheduler(values);\n return lift_1.operate(function (source, subscriber) {\n (scheduler ? concat_1.concat(values, source, scheduler) : concat_1.concat(values, source)).subscribe(subscriber);\n });\n}\nexports.startWith = startWith;\n//# sourceMappingURL=startWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.switchMap = void 0;\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction switchMap(project, resultSelector) {\n return lift_1.operate(function (source, subscriber) {\n var innerSubscriber = null;\n var index = 0;\n var isComplete = false;\n var checkComplete = function () { return isComplete && !innerSubscriber && subscriber.complete(); };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe();\n var innerIndex = 0;\n var outerIndex = index++;\n innerFrom_1.innerFrom(project(value, outerIndex)).subscribe((innerSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (innerValue) { return subscriber.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue); }, function () {\n innerSubscriber = null;\n checkComplete();\n })));\n }, function () {\n isComplete = true;\n checkComplete();\n }));\n });\n}\nexports.switchMap = switchMap;\n//# sourceMappingURL=switchMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.switchAll = void 0;\nvar switchMap_1 = require(\"./switchMap\");\nvar identity_1 = require(\"../util/identity\");\nfunction switchAll() {\n return switchMap_1.switchMap(identity_1.identity);\n}\nexports.switchAll = switchAll;\n//# sourceMappingURL=switchAll.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.switchMapTo = void 0;\nvar switchMap_1 = require(\"./switchMap\");\nvar isFunction_1 = require(\"../util/isFunction\");\nfunction switchMapTo(innerObservable, resultSelector) {\n return isFunction_1.isFunction(resultSelector) ? switchMap_1.switchMap(function () { return innerObservable; }, resultSelector) : switchMap_1.switchMap(function () { return innerObservable; });\n}\nexports.switchMapTo = switchMapTo;\n//# sourceMappingURL=switchMapTo.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.switchScan = void 0;\nvar switchMap_1 = require(\"./switchMap\");\nvar lift_1 = require(\"../util/lift\");\nfunction switchScan(accumulator, seed) {\n return lift_1.operate(function (source, subscriber) {\n var state = seed;\n switchMap_1.switchMap(function (value, index) { return accumulator(state, value, index); }, function (_, innerValue) { return ((state = innerValue), innerValue); })(source).subscribe(subscriber);\n return function () {\n state = null;\n };\n });\n}\nexports.switchScan = switchScan;\n//# sourceMappingURL=switchScan.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.takeUntil = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar noop_1 = require(\"../util/noop\");\nfunction takeUntil(notifier) {\n return lift_1.operate(function (source, subscriber) {\n innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () { return subscriber.complete(); }, noop_1.noop));\n !subscriber.closed && source.subscribe(subscriber);\n });\n}\nexports.takeUntil = takeUntil;\n//# sourceMappingURL=takeUntil.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.takeWhile = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction takeWhile(predicate, inclusive) {\n if (inclusive === void 0) { inclusive = false; }\n return lift_1.operate(function (source, subscriber) {\n var index = 0;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var result = predicate(value, index++);\n (result || inclusive) && subscriber.next(value);\n !result && subscriber.complete();\n }));\n });\n}\nexports.takeWhile = takeWhile;\n//# sourceMappingURL=takeWhile.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tap = void 0;\nvar isFunction_1 = require(\"../util/isFunction\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar identity_1 = require(\"../util/identity\");\nfunction tap(observerOrNext, error, complete) {\n var tapObserver = isFunction_1.isFunction(observerOrNext) || error || complete\n ?\n { next: observerOrNext, error: error, complete: complete }\n : observerOrNext;\n return tapObserver\n ? lift_1.operate(function (source, subscriber) {\n var _a;\n (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n var isUnsub = true;\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var _a;\n (_a = tapObserver.next) === null || _a === void 0 ? void 0 : _a.call(tapObserver, value);\n subscriber.next(value);\n }, function () {\n var _a;\n isUnsub = false;\n (_a = tapObserver.complete) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n subscriber.complete();\n }, function (err) {\n var _a;\n isUnsub = false;\n (_a = tapObserver.error) === null || _a === void 0 ? void 0 : _a.call(tapObserver, err);\n subscriber.error(err);\n }, function () {\n var _a, _b;\n if (isUnsub) {\n (_a = tapObserver.unsubscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);\n }\n (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver);\n }));\n })\n :\n identity_1.identity;\n}\nexports.tap = tap;\n//# sourceMappingURL=tap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.throttle = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction throttle(durationSelector, config) {\n return lift_1.operate(function (source, subscriber) {\n var _a = config !== null && config !== void 0 ? config : {}, _b = _a.leading, leading = _b === void 0 ? true : _b, _c = _a.trailing, trailing = _c === void 0 ? false : _c;\n var hasValue = false;\n var sendValue = null;\n var throttled = null;\n var isComplete = false;\n var endThrottling = function () {\n throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe();\n throttled = null;\n if (trailing) {\n send();\n isComplete && subscriber.complete();\n }\n };\n var cleanupThrottling = function () {\n throttled = null;\n isComplete && subscriber.complete();\n };\n var startThrottle = function (value) {\n return (throttled = innerFrom_1.innerFrom(durationSelector(value)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, endThrottling, cleanupThrottling)));\n };\n var send = function () {\n if (hasValue) {\n hasValue = false;\n var value = sendValue;\n sendValue = null;\n subscriber.next(value);\n !isComplete && startThrottle(value);\n }\n };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n hasValue = true;\n sendValue = value;\n !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value));\n }, function () {\n isComplete = true;\n !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete();\n }));\n });\n}\nexports.throttle = throttle;\n//# sourceMappingURL=throttle.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.throttleTime = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar throttle_1 = require(\"./throttle\");\nvar timer_1 = require(\"../observable/timer\");\nfunction throttleTime(duration, scheduler, config) {\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n var duration$ = timer_1.timer(duration, scheduler);\n return throttle_1.throttle(function () { return duration$; }, config);\n}\nexports.throttleTime = throttleTime;\n//# sourceMappingURL=throttleTime.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TimeInterval = exports.timeInterval = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction timeInterval(scheduler) {\n if (scheduler === void 0) { scheduler = async_1.asyncScheduler; }\n return lift_1.operate(function (source, subscriber) {\n var last = scheduler.now();\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var now = scheduler.now();\n var interval = now - last;\n last = now;\n subscriber.next(new TimeInterval(value, interval));\n }));\n });\n}\nexports.timeInterval = timeInterval;\nvar TimeInterval = (function () {\n function TimeInterval(value, interval) {\n this.value = value;\n this.interval = interval;\n }\n return TimeInterval;\n}());\nexports.TimeInterval = TimeInterval;\n//# sourceMappingURL=timeInterval.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timeoutWith = void 0;\nvar async_1 = require(\"../scheduler/async\");\nvar isDate_1 = require(\"../util/isDate\");\nvar timeout_1 = require(\"./timeout\");\nfunction timeoutWith(due, withObservable, scheduler) {\n var first;\n var each;\n var _with;\n scheduler = scheduler !== null && scheduler !== void 0 ? scheduler : async_1.async;\n if (isDate_1.isValidDate(due)) {\n first = due;\n }\n else if (typeof due === 'number') {\n each = due;\n }\n if (withObservable) {\n _with = function () { return withObservable; };\n }\n else {\n throw new TypeError('No observable provided to switch to');\n }\n if (first == null && each == null) {\n throw new TypeError('No timeout provided.');\n }\n return timeout_1.timeout({\n first: first,\n each: each,\n scheduler: scheduler,\n with: _with,\n });\n}\nexports.timeoutWith = timeoutWith;\n//# sourceMappingURL=timeoutWith.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.timestamp = void 0;\nvar dateTimestampProvider_1 = require(\"../scheduler/dateTimestampProvider\");\nvar map_1 = require(\"./map\");\nfunction timestamp(timestampProvider) {\n if (timestampProvider === void 0) { timestampProvider = dateTimestampProvider_1.dateTimestampProvider; }\n return map_1.map(function (value) { return ({ value: value, timestamp: timestampProvider.now() }); });\n}\nexports.timestamp = timestamp;\n//# sourceMappingURL=timestamp.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.window = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar noop_1 = require(\"../util/noop\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction window(windowBoundaries) {\n return lift_1.operate(function (source, subscriber) {\n var windowSubject = new Subject_1.Subject();\n subscriber.next(windowSubject.asObservable());\n var errorHandler = function (err) {\n windowSubject.error(err);\n subscriber.error(err);\n };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.next(value); }, function () {\n windowSubject.complete();\n subscriber.complete();\n }, errorHandler));\n innerFrom_1.innerFrom(windowBoundaries).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function () {\n windowSubject.complete();\n subscriber.next((windowSubject = new Subject_1.Subject()));\n }, noop_1.noop, errorHandler));\n return function () {\n windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.unsubscribe();\n windowSubject = null;\n };\n });\n}\nexports.window = window;\n//# sourceMappingURL=window.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.windowCount = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nfunction windowCount(windowSize, startWindowEvery) {\n if (startWindowEvery === void 0) { startWindowEvery = 0; }\n var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize;\n return lift_1.operate(function (source, subscriber) {\n var windows = [new Subject_1.Subject()];\n var starts = [];\n var count = 0;\n subscriber.next(windows[0].asObservable());\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n try {\n for (var windows_1 = __values(windows), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) {\n var window_1 = windows_1_1.value;\n window_1.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) _a.call(windows_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n var c = count - windowSize + 1;\n if (c >= 0 && c % startEvery === 0) {\n windows.shift().complete();\n }\n if (++count % startEvery === 0) {\n var window_2 = new Subject_1.Subject();\n windows.push(window_2);\n subscriber.next(window_2.asObservable());\n }\n }, function () {\n while (windows.length > 0) {\n windows.shift().complete();\n }\n subscriber.complete();\n }, function (err) {\n while (windows.length > 0) {\n windows.shift().error(err);\n }\n subscriber.error(err);\n }, function () {\n starts = null;\n windows = null;\n }));\n });\n}\nexports.windowCount = windowCount;\n//# sourceMappingURL=windowCount.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.windowTime = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar async_1 = require(\"../scheduler/async\");\nvar Subscription_1 = require(\"../Subscription\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar arrRemove_1 = require(\"../util/arrRemove\");\nvar args_1 = require(\"../util/args\");\nvar executeSchedule_1 = require(\"../util/executeSchedule\");\nfunction windowTime(windowTimeSpan) {\n var _a, _b;\n var otherArgs = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n otherArgs[_i - 1] = arguments[_i];\n }\n var scheduler = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler;\n var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;\n var maxWindowSize = otherArgs[1] || Infinity;\n return lift_1.operate(function (source, subscriber) {\n var windowRecords = [];\n var restartOnClose = false;\n var closeWindow = function (record) {\n var window = record.window, subs = record.subs;\n window.complete();\n subs.unsubscribe();\n arrRemove_1.arrRemove(windowRecords, record);\n restartOnClose && startWindow();\n };\n var startWindow = function () {\n if (windowRecords) {\n var subs = new Subscription_1.Subscription();\n subscriber.add(subs);\n var window_1 = new Subject_1.Subject();\n var record_1 = {\n window: window_1,\n subs: subs,\n seen: 0,\n };\n windowRecords.push(record_1);\n subscriber.next(window_1.asObservable());\n executeSchedule_1.executeSchedule(subs, scheduler, function () { return closeWindow(record_1); }, windowTimeSpan);\n }\n };\n if (windowCreationInterval !== null && windowCreationInterval >= 0) {\n executeSchedule_1.executeSchedule(subscriber, scheduler, startWindow, windowCreationInterval, true);\n }\n else {\n restartOnClose = true;\n }\n startWindow();\n var loop = function (cb) { return windowRecords.slice().forEach(cb); };\n var terminate = function (cb) {\n loop(function (_a) {\n var window = _a.window;\n return cb(window);\n });\n cb(subscriber);\n subscriber.unsubscribe();\n };\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n loop(function (record) {\n record.window.next(value);\n maxWindowSize <= ++record.seen && closeWindow(record);\n });\n }, function () { return terminate(function (consumer) { return consumer.complete(); }); }, function (err) { return terminate(function (consumer) { return consumer.error(err); }); }));\n return function () {\n windowRecords = null;\n };\n });\n}\nexports.windowTime = windowTime;\n//# sourceMappingURL=windowTime.js.map","\"use strict\";\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.windowToggle = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar Subscription_1 = require(\"../Subscription\");\nvar lift_1 = require(\"../util/lift\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar noop_1 = require(\"../util/noop\");\nvar arrRemove_1 = require(\"../util/arrRemove\");\nfunction windowToggle(openings, closingSelector) {\n return lift_1.operate(function (source, subscriber) {\n var windows = [];\n var handleError = function (err) {\n while (0 < windows.length) {\n windows.shift().error(err);\n }\n subscriber.error(err);\n };\n innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (openValue) {\n var window = new Subject_1.Subject();\n windows.push(window);\n var closingSubscription = new Subscription_1.Subscription();\n var closeWindow = function () {\n arrRemove_1.arrRemove(windows, window);\n window.complete();\n closingSubscription.unsubscribe();\n };\n var closingNotifier;\n try {\n closingNotifier = innerFrom_1.innerFrom(closingSelector(openValue));\n }\n catch (err) {\n handleError(err);\n return;\n }\n subscriber.next(window.asObservable());\n closingSubscription.add(closingNotifier.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, closeWindow, noop_1.noop, handleError)));\n }, noop_1.noop));\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n var e_1, _a;\n var windowsCopy = windows.slice();\n try {\n for (var windowsCopy_1 = __values(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) {\n var window_1 = windowsCopy_1_1.value;\n window_1.next(value);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) _a.call(windowsCopy_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }, function () {\n while (0 < windows.length) {\n windows.shift().complete();\n }\n subscriber.complete();\n }, handleError, function () {\n while (0 < windows.length) {\n windows.shift().unsubscribe();\n }\n }));\n });\n}\nexports.windowToggle = windowToggle;\n//# sourceMappingURL=windowToggle.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.windowWhen = void 0;\nvar Subject_1 = require(\"../Subject\");\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nfunction windowWhen(closingSelector) {\n return lift_1.operate(function (source, subscriber) {\n var window;\n var closingSubscriber;\n var handleError = function (err) {\n window.error(err);\n subscriber.error(err);\n };\n var openWindow = function () {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n window === null || window === void 0 ? void 0 : window.complete();\n window = new Subject_1.Subject();\n subscriber.next(window.asObservable());\n var closingNotifier;\n try {\n closingNotifier = innerFrom_1.innerFrom(closingSelector());\n }\n catch (err) {\n handleError(err);\n return;\n }\n closingNotifier.subscribe((closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openWindow, openWindow, handleError)));\n };\n openWindow();\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) { return window.next(value); }, function () {\n window.complete();\n subscriber.complete();\n }, handleError, function () {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n window = null;\n }));\n });\n}\nexports.windowWhen = windowWhen;\n//# sourceMappingURL=windowWhen.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.withLatestFrom = void 0;\nvar lift_1 = require(\"../util/lift\");\nvar OperatorSubscriber_1 = require(\"./OperatorSubscriber\");\nvar innerFrom_1 = require(\"../observable/innerFrom\");\nvar identity_1 = require(\"../util/identity\");\nvar noop_1 = require(\"../util/noop\");\nvar args_1 = require(\"../util/args\");\nfunction withLatestFrom() {\n var inputs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n inputs[_i] = arguments[_i];\n }\n var project = args_1.popResultSelector(inputs);\n return lift_1.operate(function (source, subscriber) {\n var len = inputs.length;\n var otherValues = new Array(len);\n var hasValue = inputs.map(function () { return false; });\n var ready = false;\n var _loop_1 = function (i) {\n innerFrom_1.innerFrom(inputs[i]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n otherValues[i] = value;\n if (!ready && !hasValue[i]) {\n hasValue[i] = true;\n (ready = hasValue.every(identity_1.identity)) && (hasValue = null);\n }\n }, noop_1.noop));\n };\n for (var i = 0; i < len; i++) {\n _loop_1(i);\n }\n source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function (value) {\n if (ready) {\n var values = __spreadArray([value], __read(otherValues));\n subscriber.next(project ? project.apply(void 0, __spreadArray([], __read(values))) : values);\n }\n }));\n });\n}\nexports.withLatestFrom = withLatestFrom;\n//# sourceMappingURL=withLatestFrom.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.zipAll = void 0;\nvar zip_1 = require(\"../observable/zip\");\nvar joinAllInternals_1 = require(\"./joinAllInternals\");\nfunction zipAll(project) {\n return joinAllInternals_1.joinAllInternals(zip_1.zip, project);\n}\nexports.zipAll = zipAll;\n//# sourceMappingURL=zipAll.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.zip = void 0;\nvar zip_1 = require(\"../observable/zip\");\nvar lift_1 = require(\"../util/lift\");\nfunction zip() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n return lift_1.operate(function (source, subscriber) {\n zip_1.zip.apply(void 0, __spreadArray([source], __read(sources))).subscribe(subscriber);\n });\n}\nexports.zip = zip;\n//# sourceMappingURL=zip.js.map","\"use strict\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.zipWith = void 0;\nvar zip_1 = require(\"./zip\");\nfunction zipWith() {\n var otherInputs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n otherInputs[_i] = arguments[_i];\n }\n return zip_1.zip.apply(void 0, __spreadArray([], __read(otherInputs)));\n}\nexports.zipWith = zipWith;\n//# sourceMappingURL=zipWith.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.interval = exports.iif = exports.generate = exports.fromEventPattern = exports.fromEvent = exports.from = exports.forkJoin = exports.empty = exports.defer = exports.connectable = exports.concat = exports.combineLatest = exports.bindNodeCallback = exports.bindCallback = exports.UnsubscriptionError = exports.TimeoutError = exports.SequenceError = exports.ObjectUnsubscribedError = exports.NotFoundError = exports.EmptyError = exports.ArgumentOutOfRangeError = exports.firstValueFrom = exports.lastValueFrom = exports.isObservable = exports.identity = exports.noop = exports.pipe = exports.NotificationKind = exports.Notification = exports.Subscriber = exports.Subscription = exports.Scheduler = exports.VirtualAction = exports.VirtualTimeScheduler = exports.animationFrameScheduler = exports.animationFrame = exports.queueScheduler = exports.queue = exports.asyncScheduler = exports.async = exports.asapScheduler = exports.asap = exports.AsyncSubject = exports.ReplaySubject = exports.BehaviorSubject = exports.Subject = exports.animationFrames = exports.observable = exports.ConnectableObservable = exports.Observable = void 0;\nexports.filter = exports.expand = exports.exhaustMap = exports.exhaustAll = exports.exhaust = exports.every = exports.endWith = exports.elementAt = exports.distinctUntilKeyChanged = exports.distinctUntilChanged = exports.distinct = exports.dematerialize = exports.delayWhen = exports.delay = exports.defaultIfEmpty = exports.debounceTime = exports.debounce = exports.count = exports.connect = exports.concatWith = exports.concatMapTo = exports.concatMap = exports.concatAll = exports.combineLatestWith = exports.combineLatestAll = exports.combineAll = exports.catchError = exports.bufferWhen = exports.bufferToggle = exports.bufferTime = exports.bufferCount = exports.buffer = exports.auditTime = exports.audit = exports.config = exports.NEVER = exports.EMPTY = exports.scheduled = exports.zip = exports.using = exports.timer = exports.throwError = exports.range = exports.race = exports.partition = exports.pairs = exports.onErrorResumeNext = exports.of = exports.never = exports.merge = void 0;\nexports.switchMap = exports.switchAll = exports.subscribeOn = exports.startWith = exports.skipWhile = exports.skipUntil = exports.skipLast = exports.skip = exports.single = exports.shareReplay = exports.share = exports.sequenceEqual = exports.scan = exports.sampleTime = exports.sample = exports.refCount = exports.retryWhen = exports.retry = exports.repeatWhen = exports.repeat = exports.reduce = exports.raceWith = exports.publishReplay = exports.publishLast = exports.publishBehavior = exports.publish = exports.pluck = exports.pairwise = exports.onErrorResumeNextWith = exports.observeOn = exports.multicast = exports.min = exports.mergeWith = exports.mergeScan = exports.mergeMapTo = exports.mergeMap = exports.flatMap = exports.mergeAll = exports.max = exports.materialize = exports.mapTo = exports.map = exports.last = exports.isEmpty = exports.ignoreElements = exports.groupBy = exports.first = exports.findIndex = exports.find = exports.finalize = void 0;\nexports.zipWith = exports.zipAll = exports.withLatestFrom = exports.windowWhen = exports.windowToggle = exports.windowTime = exports.windowCount = exports.window = exports.toArray = exports.timestamp = exports.timeoutWith = exports.timeout = exports.timeInterval = exports.throwIfEmpty = exports.throttleTime = exports.throttle = exports.tap = exports.takeWhile = exports.takeUntil = exports.takeLast = exports.take = exports.switchScan = exports.switchMapTo = void 0;\nvar Observable_1 = require(\"./internal/Observable\");\nObject.defineProperty(exports, \"Observable\", { enumerable: true, get: function () { return Observable_1.Observable; } });\nvar ConnectableObservable_1 = require(\"./internal/observable/ConnectableObservable\");\nObject.defineProperty(exports, \"ConnectableObservable\", { enumerable: true, get: function () { return ConnectableObservable_1.ConnectableObservable; } });\nvar observable_1 = require(\"./internal/symbol/observable\");\nObject.defineProperty(exports, \"observable\", { enumerable: true, get: function () { return observable_1.observable; } });\nvar animationFrames_1 = require(\"./internal/observable/dom/animationFrames\");\nObject.defineProperty(exports, \"animationFrames\", { enumerable: true, get: function () { return animationFrames_1.animationFrames; } });\nvar Subject_1 = require(\"./internal/Subject\");\nObject.defineProperty(exports, \"Subject\", { enumerable: true, get: function () { return Subject_1.Subject; } });\nvar BehaviorSubject_1 = require(\"./internal/BehaviorSubject\");\nObject.defineProperty(exports, \"BehaviorSubject\", { enumerable: true, get: function () { return BehaviorSubject_1.BehaviorSubject; } });\nvar ReplaySubject_1 = require(\"./internal/ReplaySubject\");\nObject.defineProperty(exports, \"ReplaySubject\", { enumerable: true, get: function () { return ReplaySubject_1.ReplaySubject; } });\nvar AsyncSubject_1 = require(\"./internal/AsyncSubject\");\nObject.defineProperty(exports, \"AsyncSubject\", { enumerable: true, get: function () { return AsyncSubject_1.AsyncSubject; } });\nvar asap_1 = require(\"./internal/scheduler/asap\");\nObject.defineProperty(exports, \"asap\", { enumerable: true, get: function () { return asap_1.asap; } });\nObject.defineProperty(exports, \"asapScheduler\", { enumerable: true, get: function () { return asap_1.asapScheduler; } });\nvar async_1 = require(\"./internal/scheduler/async\");\nObject.defineProperty(exports, \"async\", { enumerable: true, get: function () { return async_1.async; } });\nObject.defineProperty(exports, \"asyncScheduler\", { enumerable: true, get: function () { return async_1.asyncScheduler; } });\nvar queue_1 = require(\"./internal/scheduler/queue\");\nObject.defineProperty(exports, \"queue\", { enumerable: true, get: function () { return queue_1.queue; } });\nObject.defineProperty(exports, \"queueScheduler\", { enumerable: true, get: function () { return queue_1.queueScheduler; } });\nvar animationFrame_1 = require(\"./internal/scheduler/animationFrame\");\nObject.defineProperty(exports, \"animationFrame\", { enumerable: true, get: function () { return animationFrame_1.animationFrame; } });\nObject.defineProperty(exports, \"animationFrameScheduler\", { enumerable: true, get: function () { return animationFrame_1.animationFrameScheduler; } });\nvar VirtualTimeScheduler_1 = require(\"./internal/scheduler/VirtualTimeScheduler\");\nObject.defineProperty(exports, \"VirtualTimeScheduler\", { enumerable: true, get: function () { return VirtualTimeScheduler_1.VirtualTimeScheduler; } });\nObject.defineProperty(exports, \"VirtualAction\", { enumerable: true, get: function () { return VirtualTimeScheduler_1.VirtualAction; } });\nvar Scheduler_1 = require(\"./internal/Scheduler\");\nObject.defineProperty(exports, \"Scheduler\", { enumerable: true, get: function () { return Scheduler_1.Scheduler; } });\nvar Subscription_1 = require(\"./internal/Subscription\");\nObject.defineProperty(exports, \"Subscription\", { enumerable: true, get: function () { return Subscription_1.Subscription; } });\nvar Subscriber_1 = require(\"./internal/Subscriber\");\nObject.defineProperty(exports, \"Subscriber\", { enumerable: true, get: function () { return Subscriber_1.Subscriber; } });\nvar Notification_1 = require(\"./internal/Notification\");\nObject.defineProperty(exports, \"Notification\", { enumerable: true, get: function () { return Notification_1.Notification; } });\nObject.defineProperty(exports, \"NotificationKind\", { enumerable: true, get: function () { return Notification_1.NotificationKind; } });\nvar pipe_1 = require(\"./internal/util/pipe\");\nObject.defineProperty(exports, \"pipe\", { enumerable: true, get: function () { return pipe_1.pipe; } });\nvar noop_1 = require(\"./internal/util/noop\");\nObject.defineProperty(exports, \"noop\", { enumerable: true, get: function () { return noop_1.noop; } });\nvar identity_1 = require(\"./internal/util/identity\");\nObject.defineProperty(exports, \"identity\", { enumerable: true, get: function () { return identity_1.identity; } });\nvar isObservable_1 = require(\"./internal/util/isObservable\");\nObject.defineProperty(exports, \"isObservable\", { enumerable: true, get: function () { return isObservable_1.isObservable; } });\nvar lastValueFrom_1 = require(\"./internal/lastValueFrom\");\nObject.defineProperty(exports, \"lastValueFrom\", { enumerable: true, get: function () { return lastValueFrom_1.lastValueFrom; } });\nvar firstValueFrom_1 = require(\"./internal/firstValueFrom\");\nObject.defineProperty(exports, \"firstValueFrom\", { enumerable: true, get: function () { return firstValueFrom_1.firstValueFrom; } });\nvar ArgumentOutOfRangeError_1 = require(\"./internal/util/ArgumentOutOfRangeError\");\nObject.defineProperty(exports, \"ArgumentOutOfRangeError\", { enumerable: true, get: function () { return ArgumentOutOfRangeError_1.ArgumentOutOfRangeError; } });\nvar EmptyError_1 = require(\"./internal/util/EmptyError\");\nObject.defineProperty(exports, \"EmptyError\", { enumerable: true, get: function () { return EmptyError_1.EmptyError; } });\nvar NotFoundError_1 = require(\"./internal/util/NotFoundError\");\nObject.defineProperty(exports, \"NotFoundError\", { enumerable: true, get: function () { return NotFoundError_1.NotFoundError; } });\nvar ObjectUnsubscribedError_1 = require(\"./internal/util/ObjectUnsubscribedError\");\nObject.defineProperty(exports, \"ObjectUnsubscribedError\", { enumerable: true, get: function () { return ObjectUnsubscribedError_1.ObjectUnsubscribedError; } });\nvar SequenceError_1 = require(\"./internal/util/SequenceError\");\nObject.defineProperty(exports, \"SequenceError\", { enumerable: true, get: function () { return SequenceError_1.SequenceError; } });\nvar timeout_1 = require(\"./internal/operators/timeout\");\nObject.defineProperty(exports, \"TimeoutError\", { enumerable: true, get: function () { return timeout_1.TimeoutError; } });\nvar UnsubscriptionError_1 = require(\"./internal/util/UnsubscriptionError\");\nObject.defineProperty(exports, \"UnsubscriptionError\", { enumerable: true, get: function () { return UnsubscriptionError_1.UnsubscriptionError; } });\nvar bindCallback_1 = require(\"./internal/observable/bindCallback\");\nObject.defineProperty(exports, \"bindCallback\", { enumerable: true, get: function () { return bindCallback_1.bindCallback; } });\nvar bindNodeCallback_1 = require(\"./internal/observable/bindNodeCallback\");\nObject.defineProperty(exports, \"bindNodeCallback\", { enumerable: true, get: function () { return bindNodeCallback_1.bindNodeCallback; } });\nvar combineLatest_1 = require(\"./internal/observable/combineLatest\");\nObject.defineProperty(exports, \"combineLatest\", { enumerable: true, get: function () { return combineLatest_1.combineLatest; } });\nvar concat_1 = require(\"./internal/observable/concat\");\nObject.defineProperty(exports, \"concat\", { enumerable: true, get: function () { return concat_1.concat; } });\nvar connectable_1 = require(\"./internal/observable/connectable\");\nObject.defineProperty(exports, \"connectable\", { enumerable: true, get: function () { return connectable_1.connectable; } });\nvar defer_1 = require(\"./internal/observable/defer\");\nObject.defineProperty(exports, \"defer\", { enumerable: true, get: function () { return defer_1.defer; } });\nvar empty_1 = require(\"./internal/observable/empty\");\nObject.defineProperty(exports, \"empty\", { enumerable: true, get: function () { return empty_1.empty; } });\nvar forkJoin_1 = require(\"./internal/observable/forkJoin\");\nObject.defineProperty(exports, \"forkJoin\", { enumerable: true, get: function () { return forkJoin_1.forkJoin; } });\nvar from_1 = require(\"./internal/observable/from\");\nObject.defineProperty(exports, \"from\", { enumerable: true, get: function () { return from_1.from; } });\nvar fromEvent_1 = require(\"./internal/observable/fromEvent\");\nObject.defineProperty(exports, \"fromEvent\", { enumerable: true, get: function () { return fromEvent_1.fromEvent; } });\nvar fromEventPattern_1 = require(\"./internal/observable/fromEventPattern\");\nObject.defineProperty(exports, \"fromEventPattern\", { enumerable: true, get: function () { return fromEventPattern_1.fromEventPattern; } });\nvar generate_1 = require(\"./internal/observable/generate\");\nObject.defineProperty(exports, \"generate\", { enumerable: true, get: function () { return generate_1.generate; } });\nvar iif_1 = require(\"./internal/observable/iif\");\nObject.defineProperty(exports, \"iif\", { enumerable: true, get: function () { return iif_1.iif; } });\nvar interval_1 = require(\"./internal/observable/interval\");\nObject.defineProperty(exports, \"interval\", { enumerable: true, get: function () { return interval_1.interval; } });\nvar merge_1 = require(\"./internal/observable/merge\");\nObject.defineProperty(exports, \"merge\", { enumerable: true, get: function () { return merge_1.merge; } });\nvar never_1 = require(\"./internal/observable/never\");\nObject.defineProperty(exports, \"never\", { enumerable: true, get: function () { return never_1.never; } });\nvar of_1 = require(\"./internal/observable/of\");\nObject.defineProperty(exports, \"of\", { enumerable: true, get: function () { return of_1.of; } });\nvar onErrorResumeNext_1 = require(\"./internal/observable/onErrorResumeNext\");\nObject.defineProperty(exports, \"onErrorResumeNext\", { enumerable: true, get: function () { return onErrorResumeNext_1.onErrorResumeNext; } });\nvar pairs_1 = require(\"./internal/observable/pairs\");\nObject.defineProperty(exports, \"pairs\", { enumerable: true, get: function () { return pairs_1.pairs; } });\nvar partition_1 = require(\"./internal/observable/partition\");\nObject.defineProperty(exports, \"partition\", { enumerable: true, get: function () { return partition_1.partition; } });\nvar race_1 = require(\"./internal/observable/race\");\nObject.defineProperty(exports, \"race\", { enumerable: true, get: function () { return race_1.race; } });\nvar range_1 = require(\"./internal/observable/range\");\nObject.defineProperty(exports, \"range\", { enumerable: true, get: function () { return range_1.range; } });\nvar throwError_1 = require(\"./internal/observable/throwError\");\nObject.defineProperty(exports, \"throwError\", { enumerable: true, get: function () { return throwError_1.throwError; } });\nvar timer_1 = require(\"./internal/observable/timer\");\nObject.defineProperty(exports, \"timer\", { enumerable: true, get: function () { return timer_1.timer; } });\nvar using_1 = require(\"./internal/observable/using\");\nObject.defineProperty(exports, \"using\", { enumerable: true, get: function () { return using_1.using; } });\nvar zip_1 = require(\"./internal/observable/zip\");\nObject.defineProperty(exports, \"zip\", { enumerable: true, get: function () { return zip_1.zip; } });\nvar scheduled_1 = require(\"./internal/scheduled/scheduled\");\nObject.defineProperty(exports, \"scheduled\", { enumerable: true, get: function () { return scheduled_1.scheduled; } });\nvar empty_2 = require(\"./internal/observable/empty\");\nObject.defineProperty(exports, \"EMPTY\", { enumerable: true, get: function () { return empty_2.EMPTY; } });\nvar never_2 = require(\"./internal/observable/never\");\nObject.defineProperty(exports, \"NEVER\", { enumerable: true, get: function () { return never_2.NEVER; } });\n__exportStar(require(\"./internal/types\"), exports);\nvar config_1 = require(\"./internal/config\");\nObject.defineProperty(exports, \"config\", { enumerable: true, get: function () { return config_1.config; } });\nvar audit_1 = require(\"./internal/operators/audit\");\nObject.defineProperty(exports, \"audit\", { enumerable: true, get: function () { return audit_1.audit; } });\nvar auditTime_1 = require(\"./internal/operators/auditTime\");\nObject.defineProperty(exports, \"auditTime\", { enumerable: true, get: function () { return auditTime_1.auditTime; } });\nvar buffer_1 = require(\"./internal/operators/buffer\");\nObject.defineProperty(exports, \"buffer\", { enumerable: true, get: function () { return buffer_1.buffer; } });\nvar bufferCount_1 = require(\"./internal/operators/bufferCount\");\nObject.defineProperty(exports, \"bufferCount\", { enumerable: true, get: function () { return bufferCount_1.bufferCount; } });\nvar bufferTime_1 = require(\"./internal/operators/bufferTime\");\nObject.defineProperty(exports, \"bufferTime\", { enumerable: true, get: function () { return bufferTime_1.bufferTime; } });\nvar bufferToggle_1 = require(\"./internal/operators/bufferToggle\");\nObject.defineProperty(exports, \"bufferToggle\", { enumerable: true, get: function () { return bufferToggle_1.bufferToggle; } });\nvar bufferWhen_1 = require(\"./internal/operators/bufferWhen\");\nObject.defineProperty(exports, \"bufferWhen\", { enumerable: true, get: function () { return bufferWhen_1.bufferWhen; } });\nvar catchError_1 = require(\"./internal/operators/catchError\");\nObject.defineProperty(exports, \"catchError\", { enumerable: true, get: function () { return catchError_1.catchError; } });\nvar combineAll_1 = require(\"./internal/operators/combineAll\");\nObject.defineProperty(exports, \"combineAll\", { enumerable: true, get: function () { return combineAll_1.combineAll; } });\nvar combineLatestAll_1 = require(\"./internal/operators/combineLatestAll\");\nObject.defineProperty(exports, \"combineLatestAll\", { enumerable: true, get: function () { return combineLatestAll_1.combineLatestAll; } });\nvar combineLatestWith_1 = require(\"./internal/operators/combineLatestWith\");\nObject.defineProperty(exports, \"combineLatestWith\", { enumerable: true, get: function () { return combineLatestWith_1.combineLatestWith; } });\nvar concatAll_1 = require(\"./internal/operators/concatAll\");\nObject.defineProperty(exports, \"concatAll\", { enumerable: true, get: function () { return concatAll_1.concatAll; } });\nvar concatMap_1 = require(\"./internal/operators/concatMap\");\nObject.defineProperty(exports, \"concatMap\", { enumerable: true, get: function () { return concatMap_1.concatMap; } });\nvar concatMapTo_1 = require(\"./internal/operators/concatMapTo\");\nObject.defineProperty(exports, \"concatMapTo\", { enumerable: true, get: function () { return concatMapTo_1.concatMapTo; } });\nvar concatWith_1 = require(\"./internal/operators/concatWith\");\nObject.defineProperty(exports, \"concatWith\", { enumerable: true, get: function () { return concatWith_1.concatWith; } });\nvar connect_1 = require(\"./internal/operators/connect\");\nObject.defineProperty(exports, \"connect\", { enumerable: true, get: function () { return connect_1.connect; } });\nvar count_1 = require(\"./internal/operators/count\");\nObject.defineProperty(exports, \"count\", { enumerable: true, get: function () { return count_1.count; } });\nvar debounce_1 = require(\"./internal/operators/debounce\");\nObject.defineProperty(exports, \"debounce\", { enumerable: true, get: function () { return debounce_1.debounce; } });\nvar debounceTime_1 = require(\"./internal/operators/debounceTime\");\nObject.defineProperty(exports, \"debounceTime\", { enumerable: true, get: function () { return debounceTime_1.debounceTime; } });\nvar defaultIfEmpty_1 = require(\"./internal/operators/defaultIfEmpty\");\nObject.defineProperty(exports, \"defaultIfEmpty\", { enumerable: true, get: function () { return defaultIfEmpty_1.defaultIfEmpty; } });\nvar delay_1 = require(\"./internal/operators/delay\");\nObject.defineProperty(exports, \"delay\", { enumerable: true, get: function () { return delay_1.delay; } });\nvar delayWhen_1 = require(\"./internal/operators/delayWhen\");\nObject.defineProperty(exports, \"delayWhen\", { enumerable: true, get: function () { return delayWhen_1.delayWhen; } });\nvar dematerialize_1 = require(\"./internal/operators/dematerialize\");\nObject.defineProperty(exports, \"dematerialize\", { enumerable: true, get: function () { return dematerialize_1.dematerialize; } });\nvar distinct_1 = require(\"./internal/operators/distinct\");\nObject.defineProperty(exports, \"distinct\", { enumerable: true, get: function () { return distinct_1.distinct; } });\nvar distinctUntilChanged_1 = require(\"./internal/operators/distinctUntilChanged\");\nObject.defineProperty(exports, \"distinctUntilChanged\", { enumerable: true, get: function () { return distinctUntilChanged_1.distinctUntilChanged; } });\nvar distinctUntilKeyChanged_1 = require(\"./internal/operators/distinctUntilKeyChanged\");\nObject.defineProperty(exports, \"distinctUntilKeyChanged\", { enumerable: true, get: function () { return distinctUntilKeyChanged_1.distinctUntilKeyChanged; } });\nvar elementAt_1 = require(\"./internal/operators/elementAt\");\nObject.defineProperty(exports, \"elementAt\", { enumerable: true, get: function () { return elementAt_1.elementAt; } });\nvar endWith_1 = require(\"./internal/operators/endWith\");\nObject.defineProperty(exports, \"endWith\", { enumerable: true, get: function () { return endWith_1.endWith; } });\nvar every_1 = require(\"./internal/operators/every\");\nObject.defineProperty(exports, \"every\", { enumerable: true, get: function () { return every_1.every; } });\nvar exhaust_1 = require(\"./internal/operators/exhaust\");\nObject.defineProperty(exports, \"exhaust\", { enumerable: true, get: function () { return exhaust_1.exhaust; } });\nvar exhaustAll_1 = require(\"./internal/operators/exhaustAll\");\nObject.defineProperty(exports, \"exhaustAll\", { enumerable: true, get: function () { return exhaustAll_1.exhaustAll; } });\nvar exhaustMap_1 = require(\"./internal/operators/exhaustMap\");\nObject.defineProperty(exports, \"exhaustMap\", { enumerable: true, get: function () { return exhaustMap_1.exhaustMap; } });\nvar expand_1 = require(\"./internal/operators/expand\");\nObject.defineProperty(exports, \"expand\", { enumerable: true, get: function () { return expand_1.expand; } });\nvar filter_1 = require(\"./internal/operators/filter\");\nObject.defineProperty(exports, \"filter\", { enumerable: true, get: function () { return filter_1.filter; } });\nvar finalize_1 = require(\"./internal/operators/finalize\");\nObject.defineProperty(exports, \"finalize\", { enumerable: true, get: function () { return finalize_1.finalize; } });\nvar find_1 = require(\"./internal/operators/find\");\nObject.defineProperty(exports, \"find\", { enumerable: true, get: function () { return find_1.find; } });\nvar findIndex_1 = require(\"./internal/operators/findIndex\");\nObject.defineProperty(exports, \"findIndex\", { enumerable: true, get: function () { return findIndex_1.findIndex; } });\nvar first_1 = require(\"./internal/operators/first\");\nObject.defineProperty(exports, \"first\", { enumerable: true, get: function () { return first_1.first; } });\nvar groupBy_1 = require(\"./internal/operators/groupBy\");\nObject.defineProperty(exports, \"groupBy\", { enumerable: true, get: function () { return groupBy_1.groupBy; } });\nvar ignoreElements_1 = require(\"./internal/operators/ignoreElements\");\nObject.defineProperty(exports, \"ignoreElements\", { enumerable: true, get: function () { return ignoreElements_1.ignoreElements; } });\nvar isEmpty_1 = require(\"./internal/operators/isEmpty\");\nObject.defineProperty(exports, \"isEmpty\", { enumerable: true, get: function () { return isEmpty_1.isEmpty; } });\nvar last_1 = require(\"./internal/operators/last\");\nObject.defineProperty(exports, \"last\", { enumerable: true, get: function () { return last_1.last; } });\nvar map_1 = require(\"./internal/operators/map\");\nObject.defineProperty(exports, \"map\", { enumerable: true, get: function () { return map_1.map; } });\nvar mapTo_1 = require(\"./internal/operators/mapTo\");\nObject.defineProperty(exports, \"mapTo\", { enumerable: true, get: function () { return mapTo_1.mapTo; } });\nvar materialize_1 = require(\"./internal/operators/materialize\");\nObject.defineProperty(exports, \"materialize\", { enumerable: true, get: function () { return materialize_1.materialize; } });\nvar max_1 = require(\"./internal/operators/max\");\nObject.defineProperty(exports, \"max\", { enumerable: true, get: function () { return max_1.max; } });\nvar mergeAll_1 = require(\"./internal/operators/mergeAll\");\nObject.defineProperty(exports, \"mergeAll\", { enumerable: true, get: function () { return mergeAll_1.mergeAll; } });\nvar flatMap_1 = require(\"./internal/operators/flatMap\");\nObject.defineProperty(exports, \"flatMap\", { enumerable: true, get: function () { return flatMap_1.flatMap; } });\nvar mergeMap_1 = require(\"./internal/operators/mergeMap\");\nObject.defineProperty(exports, \"mergeMap\", { enumerable: true, get: function () { return mergeMap_1.mergeMap; } });\nvar mergeMapTo_1 = require(\"./internal/operators/mergeMapTo\");\nObject.defineProperty(exports, \"mergeMapTo\", { enumerable: true, get: function () { return mergeMapTo_1.mergeMapTo; } });\nvar mergeScan_1 = require(\"./internal/operators/mergeScan\");\nObject.defineProperty(exports, \"mergeScan\", { enumerable: true, get: function () { return mergeScan_1.mergeScan; } });\nvar mergeWith_1 = require(\"./internal/operators/mergeWith\");\nObject.defineProperty(exports, \"mergeWith\", { enumerable: true, get: function () { return mergeWith_1.mergeWith; } });\nvar min_1 = require(\"./internal/operators/min\");\nObject.defineProperty(exports, \"min\", { enumerable: true, get: function () { return min_1.min; } });\nvar multicast_1 = require(\"./internal/operators/multicast\");\nObject.defineProperty(exports, \"multicast\", { enumerable: true, get: function () { return multicast_1.multicast; } });\nvar observeOn_1 = require(\"./internal/operators/observeOn\");\nObject.defineProperty(exports, \"observeOn\", { enumerable: true, get: function () { return observeOn_1.observeOn; } });\nvar onErrorResumeNextWith_1 = require(\"./internal/operators/onErrorResumeNextWith\");\nObject.defineProperty(exports, \"onErrorResumeNextWith\", { enumerable: true, get: function () { return onErrorResumeNextWith_1.onErrorResumeNextWith; } });\nvar pairwise_1 = require(\"./internal/operators/pairwise\");\nObject.defineProperty(exports, \"pairwise\", { enumerable: true, get: function () { return pairwise_1.pairwise; } });\nvar pluck_1 = require(\"./internal/operators/pluck\");\nObject.defineProperty(exports, \"pluck\", { enumerable: true, get: function () { return pluck_1.pluck; } });\nvar publish_1 = require(\"./internal/operators/publish\");\nObject.defineProperty(exports, \"publish\", { enumerable: true, get: function () { return publish_1.publish; } });\nvar publishBehavior_1 = require(\"./internal/operators/publishBehavior\");\nObject.defineProperty(exports, \"publishBehavior\", { enumerable: true, get: function () { return publishBehavior_1.publishBehavior; } });\nvar publishLast_1 = require(\"./internal/operators/publishLast\");\nObject.defineProperty(exports, \"publishLast\", { enumerable: true, get: function () { return publishLast_1.publishLast; } });\nvar publishReplay_1 = require(\"./internal/operators/publishReplay\");\nObject.defineProperty(exports, \"publishReplay\", { enumerable: true, get: function () { return publishReplay_1.publishReplay; } });\nvar raceWith_1 = require(\"./internal/operators/raceWith\");\nObject.defineProperty(exports, \"raceWith\", { enumerable: true, get: function () { return raceWith_1.raceWith; } });\nvar reduce_1 = require(\"./internal/operators/reduce\");\nObject.defineProperty(exports, \"reduce\", { enumerable: true, get: function () { return reduce_1.reduce; } });\nvar repeat_1 = require(\"./internal/operators/repeat\");\nObject.defineProperty(exports, \"repeat\", { enumerable: true, get: function () { return repeat_1.repeat; } });\nvar repeatWhen_1 = require(\"./internal/operators/repeatWhen\");\nObject.defineProperty(exports, \"repeatWhen\", { enumerable: true, get: function () { return repeatWhen_1.repeatWhen; } });\nvar retry_1 = require(\"./internal/operators/retry\");\nObject.defineProperty(exports, \"retry\", { enumerable: true, get: function () { return retry_1.retry; } });\nvar retryWhen_1 = require(\"./internal/operators/retryWhen\");\nObject.defineProperty(exports, \"retryWhen\", { enumerable: true, get: function () { return retryWhen_1.retryWhen; } });\nvar refCount_1 = require(\"./internal/operators/refCount\");\nObject.defineProperty(exports, \"refCount\", { enumerable: true, get: function () { return refCount_1.refCount; } });\nvar sample_1 = require(\"./internal/operators/sample\");\nObject.defineProperty(exports, \"sample\", { enumerable: true, get: function () { return sample_1.sample; } });\nvar sampleTime_1 = require(\"./internal/operators/sampleTime\");\nObject.defineProperty(exports, \"sampleTime\", { enumerable: true, get: function () { return sampleTime_1.sampleTime; } });\nvar scan_1 = require(\"./internal/operators/scan\");\nObject.defineProperty(exports, \"scan\", { enumerable: true, get: function () { return scan_1.scan; } });\nvar sequenceEqual_1 = require(\"./internal/operators/sequenceEqual\");\nObject.defineProperty(exports, \"sequenceEqual\", { enumerable: true, get: function () { return sequenceEqual_1.sequenceEqual; } });\nvar share_1 = require(\"./internal/operators/share\");\nObject.defineProperty(exports, \"share\", { enumerable: true, get: function () { return share_1.share; } });\nvar shareReplay_1 = require(\"./internal/operators/shareReplay\");\nObject.defineProperty(exports, \"shareReplay\", { enumerable: true, get: function () { return shareReplay_1.shareReplay; } });\nvar single_1 = require(\"./internal/operators/single\");\nObject.defineProperty(exports, \"single\", { enumerable: true, get: function () { return single_1.single; } });\nvar skip_1 = require(\"./internal/operators/skip\");\nObject.defineProperty(exports, \"skip\", { enumerable: true, get: function () { return skip_1.skip; } });\nvar skipLast_1 = require(\"./internal/operators/skipLast\");\nObject.defineProperty(exports, \"skipLast\", { enumerable: true, get: function () { return skipLast_1.skipLast; } });\nvar skipUntil_1 = require(\"./internal/operators/skipUntil\");\nObject.defineProperty(exports, \"skipUntil\", { enumerable: true, get: function () { return skipUntil_1.skipUntil; } });\nvar skipWhile_1 = require(\"./internal/operators/skipWhile\");\nObject.defineProperty(exports, \"skipWhile\", { enumerable: true, get: function () { return skipWhile_1.skipWhile; } });\nvar startWith_1 = require(\"./internal/operators/startWith\");\nObject.defineProperty(exports, \"startWith\", { enumerable: true, get: function () { return startWith_1.startWith; } });\nvar subscribeOn_1 = require(\"./internal/operators/subscribeOn\");\nObject.defineProperty(exports, \"subscribeOn\", { enumerable: true, get: function () { return subscribeOn_1.subscribeOn; } });\nvar switchAll_1 = require(\"./internal/operators/switchAll\");\nObject.defineProperty(exports, \"switchAll\", { enumerable: true, get: function () { return switchAll_1.switchAll; } });\nvar switchMap_1 = require(\"./internal/operators/switchMap\");\nObject.defineProperty(exports, \"switchMap\", { enumerable: true, get: function () { return switchMap_1.switchMap; } });\nvar switchMapTo_1 = require(\"./internal/operators/switchMapTo\");\nObject.defineProperty(exports, \"switchMapTo\", { enumerable: true, get: function () { return switchMapTo_1.switchMapTo; } });\nvar switchScan_1 = require(\"./internal/operators/switchScan\");\nObject.defineProperty(exports, \"switchScan\", { enumerable: true, get: function () { return switchScan_1.switchScan; } });\nvar take_1 = require(\"./internal/operators/take\");\nObject.defineProperty(exports, \"take\", { enumerable: true, get: function () { return take_1.take; } });\nvar takeLast_1 = require(\"./internal/operators/takeLast\");\nObject.defineProperty(exports, \"takeLast\", { enumerable: true, get: function () { return takeLast_1.takeLast; } });\nvar takeUntil_1 = require(\"./internal/operators/takeUntil\");\nObject.defineProperty(exports, \"takeUntil\", { enumerable: true, get: function () { return takeUntil_1.takeUntil; } });\nvar takeWhile_1 = require(\"./internal/operators/takeWhile\");\nObject.defineProperty(exports, \"takeWhile\", { enumerable: true, get: function () { return takeWhile_1.takeWhile; } });\nvar tap_1 = require(\"./internal/operators/tap\");\nObject.defineProperty(exports, \"tap\", { enumerable: true, get: function () { return tap_1.tap; } });\nvar throttle_1 = require(\"./internal/operators/throttle\");\nObject.defineProperty(exports, \"throttle\", { enumerable: true, get: function () { return throttle_1.throttle; } });\nvar throttleTime_1 = require(\"./internal/operators/throttleTime\");\nObject.defineProperty(exports, \"throttleTime\", { enumerable: true, get: function () { return throttleTime_1.throttleTime; } });\nvar throwIfEmpty_1 = require(\"./internal/operators/throwIfEmpty\");\nObject.defineProperty(exports, \"throwIfEmpty\", { enumerable: true, get: function () { return throwIfEmpty_1.throwIfEmpty; } });\nvar timeInterval_1 = require(\"./internal/operators/timeInterval\");\nObject.defineProperty(exports, \"timeInterval\", { enumerable: true, get: function () { return timeInterval_1.timeInterval; } });\nvar timeout_2 = require(\"./internal/operators/timeout\");\nObject.defineProperty(exports, \"timeout\", { enumerable: true, get: function () { return timeout_2.timeout; } });\nvar timeoutWith_1 = require(\"./internal/operators/timeoutWith\");\nObject.defineProperty(exports, \"timeoutWith\", { enumerable: true, get: function () { return timeoutWith_1.timeoutWith; } });\nvar timestamp_1 = require(\"./internal/operators/timestamp\");\nObject.defineProperty(exports, \"timestamp\", { enumerable: true, get: function () { return timestamp_1.timestamp; } });\nvar toArray_1 = require(\"./internal/operators/toArray\");\nObject.defineProperty(exports, \"toArray\", { enumerable: true, get: function () { return toArray_1.toArray; } });\nvar window_1 = require(\"./internal/operators/window\");\nObject.defineProperty(exports, \"window\", { enumerable: true, get: function () { return window_1.window; } });\nvar windowCount_1 = require(\"./internal/operators/windowCount\");\nObject.defineProperty(exports, \"windowCount\", { enumerable: true, get: function () { return windowCount_1.windowCount; } });\nvar windowTime_1 = require(\"./internal/operators/windowTime\");\nObject.defineProperty(exports, \"windowTime\", { enumerable: true, get: function () { return windowTime_1.windowTime; } });\nvar windowToggle_1 = require(\"./internal/operators/windowToggle\");\nObject.defineProperty(exports, \"windowToggle\", { enumerable: true, get: function () { return windowToggle_1.windowToggle; } });\nvar windowWhen_1 = require(\"./internal/operators/windowWhen\");\nObject.defineProperty(exports, \"windowWhen\", { enumerable: true, get: function () { return windowWhen_1.windowWhen; } });\nvar withLatestFrom_1 = require(\"./internal/operators/withLatestFrom\");\nObject.defineProperty(exports, \"withLatestFrom\", { enumerable: true, get: function () { return withLatestFrom_1.withLatestFrom; } });\nvar zipAll_1 = require(\"./internal/operators/zipAll\");\nObject.defineProperty(exports, \"zipAll\", { enumerable: true, get: function () { return zipAll_1.zipAll; } });\nvar zipWith_1 = require(\"./internal/operators/zipWith\");\nObject.defineProperty(exports, \"zipWith\", { enumerable: true, get: function () { return zipWith_1.zipWith; } });\n//# sourceMappingURL=index.js.map","/** @format */\n\nimport type { CallHandler, ExecutionContext, NestInterceptor } from '@nestjs/common';\nimport { Injectable } from '@nestjs/common';\nimport { Observable } from 'rxjs';\n\nimport type { TraceIdConfig } from '../types';\nimport { extractTraceId, getCurrentTraceId, runWithTraceId } from '../utils/trace.utils';\n\n@Injectable()\nexport class KafkaTraceInterceptor implements NestInterceptor {\n constructor(private readonly config?: TraceIdConfig) {\n this.config = {\n enabled: true,\n contextKey: 'traceId',\n extractor: {\n body: ['traceId', 'trace_id', 'x-trace-id'],\n header: ['x-trace-id', 'trace-id'],\n },\n ...config,\n };\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- NestJS interceptor interface requires Observable<any>\n intercept(context: ExecutionContext, next: CallHandler): Observable<any> {\n // Check if trace ID is enabled\n if (!this.config?.enabled) {\n return next.handle();\n }\n\n const rpcContext = context.switchToRpc();\n const data = rpcContext.getData();\n const rpcData = rpcContext.getContext();\n\n let traceId: string | undefined;\n\n // Try to extract existing trace ID using extractor\n if (this.config.extractor) {\n // Create a request-like object for extractTraceId\n const requestLike = {\n body: data,\n headers: rpcData?.headers || {},\n query: {},\n params: {},\n };\n traceId = extractTraceId(requestLike, this.config.extractor);\n }\n\n // Only use current trace ID if no extraction happened and we have one\n if (!traceId) {\n traceId = getCurrentTraceId();\n }\n\n // If still no trace ID and enabled, skip (don't generate)\n if (!traceId) {\n return next.handle();\n }\n\n // Set up Kafka-specific context data\n const kafkaContext = {\n messageType: 'kafka',\n topic: rpcData?.topic,\n partition: rpcData?.partition,\n offset: rpcData?.offset,\n key: rpcData?.key,\n timestamp: rpcData?.timestamp,\n };\n\n // Run the handler with trace ID context\n return new Observable((subscriber) => {\n runWithTraceId(\n traceId!,\n () => {\n next.handle().subscribe({\n next: (value) => subscriber.next(value),\n error: (err) => subscriber.error(err),\n complete: () => subscriber.complete(),\n });\n },\n kafkaContext\n );\n });\n }\n}\n","/**\n * Trace ID middleware for NestJS integration\n */\n\nimport type { NestMiddleware } from '@nestjs/common';\nimport { Injectable } from '@nestjs/common';\nimport type { NextFunction, Request, Response } from 'express';\n\nimport type { TraceIdConfig } from '../types';\nimport { extractTraceId, generateTraceId, runWithTraceId } from '../utils/trace.utils';\n\n// Extend Express Request interface — requires namespace to augment Express typings\n/* eslint-disable @typescript-eslint/no-namespace */\ndeclare global {\n namespace Express {\n interface Request {\n traceId?: string;\n requestId?: string;\n }\n }\n}\n/* eslint-enable @typescript-eslint/no-namespace */\n\n/**\n * Default headers checked when extracting an incoming trace ID, in priority order:\n * 1. traceparent — W3C Trace Context (OpenTelemetry standard)\n * 2. x-trace-id — common custom header\n * 3. x-request-id — used by AWS ALB, NGINX, etc.\n * 4. x-correlation-id — used by Azure / enterprise ESBs\n * 5. trace-id — legacy shorthand\n *\n * NOTE: for `traceparent` the format is `00-<traceId>-<spanId>-<flags>`.\n * We store the full header value as-is so downstream systems can forward it\n * unmodified. If you need only the 32-char traceId segment, configure a\n * custom extractor via TraceIdConfig.extractor.\n */\nconst DEFAULT_TRACE_HEADERS = [\n 'traceparent',\n 'x-trace-id',\n 'x-request-id',\n 'x-correlation-id',\n 'trace-id',\n];\n\n@Injectable()\nexport class TraceMiddleware implements NestMiddleware {\n constructor(private readonly config?: TraceIdConfig) {\n this.config = {\n enabled: true,\n generator: generateTraceId,\n contextKey: 'traceId',\n extractor: {\n header: DEFAULT_TRACE_HEADERS,\n query: ['traceId', 'trace_id'],\n },\n ...config,\n };\n }\n\n use(req: Request, res: Response, next: NextFunction): void {\n if (!this.config?.enabled) {\n return next();\n }\n\n let traceId: string | undefined;\n\n // Try to extract existing trace ID\n if (this.config.extractor) {\n traceId = extractTraceId(req, this.config.extractor);\n }\n\n // Generate new trace ID if not found\n if (!traceId) {\n traceId = this.config.generator ? this.config.generator() : generateTraceId();\n }\n\n // Set trace ID in request\n req.traceId = traceId;\n req.requestId = req.requestId || generateTraceId();\n\n // Set response headers\n res.setHeader('X-Trace-Id', traceId);\n res.setHeader('X-Request-Id', req.requestId);\n\n // Run with trace context\n runWithTraceId(\n traceId,\n () => {\n next();\n },\n {\n requestId: req.requestId,\n method: req.method,\n url: req.url,\n userAgent: req.get('User-Agent'),\n ip: req.ip || req.connection.remoteAddress,\n }\n );\n }\n}\n\n/**\n * Factory function to create trace middleware with configuration\n */\nexport function createTraceMiddleware(config?: TraceIdConfig): TraceMiddleware {\n return new TraceMiddleware(config);\n}\n\n/**\n * Functional middleware for Express-style usage\n */\nexport function traceMiddleware(config?: TraceIdConfig) {\n const traceConfig = {\n enabled: true,\n generator: generateTraceId,\n contextKey: 'traceId',\n extractor: {\n header: DEFAULT_TRACE_HEADERS,\n query: ['traceId', 'trace_id'],\n },\n ...config,\n };\n\n return (req: Request, res: Response, next: NextFunction) => {\n if (!traceConfig.enabled) {\n return next();\n }\n\n let traceId: string | undefined;\n\n // Try to extract existing trace ID\n if (traceConfig.extractor) {\n traceId = extractTraceId(req, traceConfig.extractor);\n }\n\n // Generate new trace ID if not found\n if (!traceId) {\n traceId = traceConfig.generator ? traceConfig.generator() : generateTraceId();\n }\n\n // Set trace ID in request\n req.traceId = traceId;\n req.requestId = req.requestId || generateTraceId();\n\n // Set response headers\n res.setHeader('X-Trace-Id', traceId);\n res.setHeader('X-Request-Id', req.requestId);\n\n // Run with trace context\n runWithTraceId(\n traceId,\n () => {\n next();\n },\n {\n requestId: req.requestId,\n method: req.method,\n url: req.url,\n userAgent: req.get('User-Agent'),\n ip: req.ip || req.connection.remoteAddress,\n }\n );\n };\n}\n","/** @format */\n\nimport type { CallHandler, ExecutionContext, NestInterceptor } from '@nestjs/common';\nimport { Injectable } from '@nestjs/common';\nimport { Observable } from 'rxjs';\n\nimport type { TraceIdConfig } from '../types';\nimport { extractTraceId, getCurrentTraceId, runWithTraceId } from '../utils/trace.utils';\n\n@Injectable()\nexport class WebSocketTraceInterceptor implements NestInterceptor {\n constructor(private readonly config?: TraceIdConfig) {\n this.config = {\n enabled: true,\n contextKey: 'traceId',\n extractor: {\n body: ['traceId', 'trace_id', 'x-trace-id'],\n header: ['x-trace-id', 'trace-id'],\n query: ['traceId', 'trace_id'],\n },\n ...config,\n };\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- NestJS interceptor interface requires Observable<any>\n intercept(context: ExecutionContext, next: CallHandler): Observable<any> {\n // Check if trace ID is enabled\n if (!this.config?.enabled) {\n return next.handle();\n }\n\n const wsContext = context.switchToWs();\n const data = wsContext.getData();\n const client = wsContext.getClient();\n\n let traceId: string | undefined;\n\n // Try to extract existing trace ID using extractor\n if (this.config.extractor) {\n // Create a request-like object for extractTraceId\n const requestLike = {\n body: data,\n headers: client?.handshake?.headers || {},\n query: client?.handshake?.query || {},\n params: {},\n };\n traceId = extractTraceId(requestLike, this.config.extractor);\n }\n\n // Only use current trace ID if no extraction happened and we have one\n if (!traceId) {\n traceId = getCurrentTraceId();\n }\n\n // If still no trace ID and enabled, skip (don't generate)\n if (!traceId) {\n return next.handle();\n }\n\n // Set up WebSocket-specific context data\n const wsContextData = {\n messageType: 'websocket',\n event: data?.event,\n socketId: client?.id,\n rooms: client?.rooms ? Array.from(client.rooms) : [],\n clientAddress: client?.handshake?.address,\n };\n\n // Run the handler with trace ID context\n return new Observable((observer) => {\n runWithTraceId(\n traceId!,\n () => {\n const result = next.handle();\n result.subscribe({\n next: (value) => observer.next(value),\n error: (err) => observer.error(err),\n complete: () => observer.complete(),\n });\n },\n wsContextData\n );\n });\n }\n}\n","import type {\n InjectionToken,\n MiddlewareConsumer,\n ModuleMetadata,\n NestModule,\n OptionalFactoryDependency,\n Type,\n} from '@nestjs/common';\nimport { Module, RequestMethod } from '@nestjs/common';\nimport type { RouteInfo } from '@nestjs/common/interfaces/middleware/middleware-configuration.interface';\nimport type { NextFunction, Request, Response } from 'express';\n\nimport type { LoggerConfig, TraceIdConfig } from '../types';\nimport { generateTraceId } from '../utils/trace.utils';\nimport { KafkaTraceInterceptor } from './kafka-trace.interceptor';\nimport { LogixiaLoggerService } from './logitron-nestjs.service';\nimport { TraceMiddleware } from './trace.middleware';\nimport { WebSocketTraceInterceptor } from './websocket-trace.interceptor';\n\nconst DEFAULT_ROUTES: RouteInfo[] = [{ path: '*', method: RequestMethod.ALL }];\n\n// Constants for provider tokens\nexport const LOGIXIA_LOGGER_CONFIG = 'LOGIXIA_LOGGER_CONFIG';\nexport const LOGIXIA_LOGGER_PREFIX = 'LOGIXIA_LOGGER_';\n\n// Export the service and interceptors for external use\nexport { KafkaTraceInterceptor } from './kafka-trace.interceptor';\nexport { LogixiaLoggerService } from './logitron-nestjs.service';\nexport { WebSocketTraceInterceptor } from './websocket-trace.interceptor';\n\n// Interface for module configuration\ninterface LogixiaModuleConfig {\n forRoutes?: RouteInfo[];\n exclude?: RouteInfo[];\n}\n\n// Interface for async configuration\nexport interface LogixiaAsyncOptions extends Pick<ModuleMetadata, 'imports'> {\n useExisting?: Type<LogixiaOptionsFactory>;\n useClass?: Type<LogixiaOptionsFactory>;\n useFactory?: (...args: unknown[]) => Promise<Partial<LoggerConfig>> | Partial<LoggerConfig>;\n inject?: Array<InjectionToken | OptionalFactoryDependency>;\n}\n\n// Interface for options factory\nexport interface LogixiaOptionsFactory {\n createLogixiaOptions(): Promise<Partial<LoggerConfig>> | Partial<LoggerConfig>;\n}\n\n/**\n * Logixia Logger Module for NestJS dependency injection\n */\n@Module({})\nexport class LogixiaLoggerModule implements NestModule {\n private config: LogixiaModuleConfig = {};\n private static loggerConfig: Partial<LoggerConfig> = {};\n\n configure(consumer: MiddlewareConsumer) {\n const { forRoutes = DEFAULT_ROUTES, exclude } = this.config;\n\n // Configure middleware with trace config\n const middlewareConfig = (req: Request, res: Response, next: NextFunction) => {\n let traceConfig: TraceIdConfig | undefined;\n\n if (typeof LogixiaLoggerModule.loggerConfig.traceId === 'object') {\n traceConfig = LogixiaLoggerModule.loggerConfig.traceId as TraceIdConfig;\n } else if (LogixiaLoggerModule.loggerConfig.traceId === true) {\n // Default configuration when traceId is simply true\n traceConfig = {\n enabled: true,\n contextKey: 'traceId',\n generator: () => generateTraceId(),\n };\n } else {\n traceConfig = undefined;\n }\n\n const middleware = new TraceMiddleware(traceConfig);\n return middleware.use(req, res, next);\n };\n\n if (exclude) {\n consumer\n .apply(middlewareConfig)\n .exclude(...exclude)\n .forRoutes(...forRoutes);\n } else {\n consumer.apply(middlewareConfig).forRoutes(...forRoutes);\n }\n }\n\n /**\n * Configure the module with synchronous options\n */\n static forRoot(config?: Partial<LoggerConfig>) {\n // Store config for middleware access\n LogixiaLoggerModule.loggerConfig = config || {};\n\n const traceConfig =\n typeof config?.traceId === 'object' ? config.traceId : { enabled: !!config?.traceId };\n\n return {\n module: LogixiaLoggerModule,\n providers: [\n {\n provide: LOGIXIA_LOGGER_CONFIG,\n useValue: config || {},\n },\n {\n provide: 'TRACE_CONFIG',\n useValue: traceConfig,\n },\n {\n provide: LogixiaLoggerService,\n useFactory: (loggerConfig: Partial<LoggerConfig>) => {\n const defaultConfig: LoggerConfig = {\n level: 'info',\n service: 'NestJSApp',\n environment: 'development',\n fields: {},\n formatters: ['text'],\n outputs: ['console'],\n levelOptions: {\n level: 'info', // INFO level\n levels: {\n error: 0,\n warn: 1,\n info: 2,\n debug: 3,\n verbose: 4,\n },\n colors: {\n error: 'red',\n warn: 'yellow',\n info: 'green',\n debug: 'blue',\n verbose: 'cyan',\n },\n },\n ...loggerConfig,\n };\n return new LogixiaLoggerService(defaultConfig);\n },\n inject: [LOGIXIA_LOGGER_CONFIG],\n },\n {\n provide: KafkaTraceInterceptor,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- NestJS DI injects typed config\n useFactory: (traceConfig: any) => new KafkaTraceInterceptor(traceConfig),\n inject: ['TRACE_CONFIG'],\n },\n {\n provide: WebSocketTraceInterceptor,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- NestJS DI injects typed config\n useFactory: (traceConfig: any) => new WebSocketTraceInterceptor(traceConfig),\n inject: ['TRACE_CONFIG'],\n },\n ],\n exports: [\n LogixiaLoggerService,\n LOGIXIA_LOGGER_CONFIG,\n KafkaTraceInterceptor,\n WebSocketTraceInterceptor,\n ],\n global: true,\n };\n }\n\n /**\n * Configure the module with asynchronous options\n */\n static forRootAsync(options: LogixiaAsyncOptions) {\n return {\n module: LogixiaLoggerModule,\n imports: options.imports || [],\n providers: [\n ...this.createAsyncProviders(options),\n {\n provide: 'TRACE_CONFIG',\n useFactory: (loggerConfig: Partial<LoggerConfig>) => {\n return typeof loggerConfig?.traceId === 'object'\n ? loggerConfig.traceId\n : { enabled: !!loggerConfig?.traceId };\n },\n inject: [LOGIXIA_LOGGER_CONFIG],\n },\n {\n provide: LogixiaLoggerService,\n useFactory: (loggerConfig: Partial<LoggerConfig>) => {\n const defaultConfig: LoggerConfig = {\n level: 'info',\n service: 'NestJSApp',\n environment: 'development',\n fields: {},\n formatters: ['text'],\n outputs: ['console'],\n levelOptions: {\n level: 'info', // INFO level\n levels: {\n error: 0,\n warn: 1,\n info: 2,\n debug: 3,\n verbose: 4,\n },\n colors: {\n error: 'red',\n warn: 'yellow',\n info: 'green',\n debug: 'blue',\n verbose: 'cyan',\n },\n },\n ...loggerConfig,\n };\n // Store config for middleware access\n LogixiaLoggerModule.loggerConfig = defaultConfig;\n return new LogixiaLoggerService(defaultConfig);\n },\n inject: [LOGIXIA_LOGGER_CONFIG],\n },\n {\n provide: KafkaTraceInterceptor,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- NestJS DI injects typed config\n useFactory: (traceConfig: any) => new KafkaTraceInterceptor(traceConfig),\n inject: ['TRACE_CONFIG'],\n },\n {\n provide: WebSocketTraceInterceptor,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- NestJS DI injects typed config\n useFactory: (traceConfig: any) => new WebSocketTraceInterceptor(traceConfig),\n inject: ['TRACE_CONFIG'],\n },\n ],\n exports: [\n LogixiaLoggerService,\n LOGIXIA_LOGGER_CONFIG,\n KafkaTraceInterceptor,\n WebSocketTraceInterceptor,\n ],\n global: true,\n };\n }\n\n /**\n * Create feature-specific logger instances\n */\n static forFeature(context: string) {\n const providerToken = `${LOGIXIA_LOGGER_PREFIX}${context.toUpperCase()}`;\n return {\n module: LogixiaLoggerModule,\n providers: [\n {\n provide: providerToken,\n useFactory: (baseLogger: LogixiaLoggerService) => {\n return baseLogger.child(context);\n },\n inject: [LogixiaLoggerService],\n },\n ],\n exports: [providerToken],\n };\n }\n\n private static createAsyncProviders(options: LogixiaAsyncOptions) {\n if (options.useExisting || options.useFactory) {\n return [this.createAsyncOptionsProvider(options)];\n }\n return [\n this.createAsyncOptionsProvider(options),\n {\n provide: options.useClass!,\n useClass: options.useClass!,\n },\n ];\n }\n\n private static createAsyncOptionsProvider(options: LogixiaAsyncOptions) {\n if (options.useFactory) {\n return {\n provide: LOGIXIA_LOGGER_CONFIG,\n useFactory: options.useFactory,\n inject: options.inject || [],\n };\n }\n return {\n provide: LOGIXIA_LOGGER_CONFIG,\n useFactory: async (optionsFactory: LogixiaOptionsFactory) =>\n await optionsFactory.createLogixiaOptions(),\n inject: [options.useExisting || options.useClass!],\n };\n }\n}\n"],"x_google_ignoreList":[6,7,8,9,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235],"mappings":"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"}