diff options
Diffstat (limited to 'node_modules/rxjs/dist/esm/internal/operators/throttle.js')
| -rw-r--r-- | node_modules/rxjs/dist/esm/internal/operators/throttle.js | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/node_modules/rxjs/dist/esm/internal/operators/throttle.js b/node_modules/rxjs/dist/esm/internal/operators/throttle.js deleted file mode 100644 index 704be4b..0000000 --- a/node_modules/rxjs/dist/esm/internal/operators/throttle.js +++ /dev/null @@ -1,43 +0,0 @@ -import { operate } from '../util/lift'; -import { createOperatorSubscriber } from './OperatorSubscriber'; -import { innerFrom } from '../observable/innerFrom'; -export function throttle(durationSelector, config) { - return operate((source, subscriber) => { - const { leading = true, trailing = false } = config !== null && config !== void 0 ? config : {}; - let hasValue = false; - let sendValue = null; - let throttled = null; - let isComplete = false; - const endThrottling = () => { - throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe(); - throttled = null; - if (trailing) { - send(); - isComplete && subscriber.complete(); - } - }; - const cleanupThrottling = () => { - throttled = null; - isComplete && subscriber.complete(); - }; - const startThrottle = (value) => (throttled = innerFrom(durationSelector(value)).subscribe(createOperatorSubscriber(subscriber, endThrottling, cleanupThrottling))); - const send = () => { - if (hasValue) { - hasValue = false; - const value = sendValue; - sendValue = null; - subscriber.next(value); - !isComplete && startThrottle(value); - } - }; - source.subscribe(createOperatorSubscriber(subscriber, (value) => { - hasValue = true; - sendValue = value; - !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value)); - }, () => { - isComplete = true; - !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete(); - })); - }); -} -//# sourceMappingURL=throttle.js.map
\ No newline at end of file |
