Actualizacion maquina principal
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / rxjs / internal / operators / debounceTime.js
1 "use strict";
2 var __extends = (this && this.__extends) || (function () {
3     var extendStatics = function (d, b) {
4         extendStatics = Object.setPrototypeOf ||
5             ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6             function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7         return extendStatics(d, b);
8     }
9     return function (d, b) {
10         extendStatics(d, b);
11         function __() { this.constructor = d; }
12         d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13     };
14 })();
15 Object.defineProperty(exports, "__esModule", { value: true });
16 var Subscriber_1 = require("../Subscriber");
17 var async_1 = require("../scheduler/async");
18 function debounceTime(dueTime, scheduler) {
19     if (scheduler === void 0) { scheduler = async_1.async; }
20     return function (source) { return source.lift(new DebounceTimeOperator(dueTime, scheduler)); };
21 }
22 exports.debounceTime = debounceTime;
23 var DebounceTimeOperator = (function () {
24     function DebounceTimeOperator(dueTime, scheduler) {
25         this.dueTime = dueTime;
26         this.scheduler = scheduler;
27     }
28     DebounceTimeOperator.prototype.call = function (subscriber, source) {
29         return source.subscribe(new DebounceTimeSubscriber(subscriber, this.dueTime, this.scheduler));
30     };
31     return DebounceTimeOperator;
32 }());
33 var DebounceTimeSubscriber = (function (_super) {
34     __extends(DebounceTimeSubscriber, _super);
35     function DebounceTimeSubscriber(destination, dueTime, scheduler) {
36         var _this = _super.call(this, destination) || this;
37         _this.dueTime = dueTime;
38         _this.scheduler = scheduler;
39         _this.debouncedSubscription = null;
40         _this.lastValue = null;
41         _this.hasValue = false;
42         return _this;
43     }
44     DebounceTimeSubscriber.prototype._next = function (value) {
45         this.clearDebounce();
46         this.lastValue = value;
47         this.hasValue = true;
48         this.add(this.debouncedSubscription = this.scheduler.schedule(dispatchNext, this.dueTime, this));
49     };
50     DebounceTimeSubscriber.prototype._complete = function () {
51         this.debouncedNext();
52         this.destination.complete();
53     };
54     DebounceTimeSubscriber.prototype.debouncedNext = function () {
55         this.clearDebounce();
56         if (this.hasValue) {
57             var lastValue = this.lastValue;
58             this.lastValue = null;
59             this.hasValue = false;
60             this.destination.next(lastValue);
61         }
62     };
63     DebounceTimeSubscriber.prototype.clearDebounce = function () {
64         var debouncedSubscription = this.debouncedSubscription;
65         if (debouncedSubscription !== null) {
66             this.remove(debouncedSubscription);
67             debouncedSubscription.unsubscribe();
68             this.debouncedSubscription = null;
69         }
70     };
71     return DebounceTimeSubscriber;
72 }(Subscriber_1.Subscriber));
73 function dispatchNext(subscriber) {
74     subscriber.debouncedNext();
75 }
76 //# sourceMappingURL=debounceTime.js.map