http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/90759b86/node_modules/@angular/cdk/esm5/scrolling.es5.js ---------------------------------------------------------------------- diff --git a/node_modules/@angular/cdk/esm5/scrolling.es5.js b/node_modules/@angular/cdk/esm5/scrolling.es5.js new file mode 100644 index 0000000..39a9cdf --- /dev/null +++ b/node_modules/@angular/cdk/esm5/scrolling.es5.js @@ -0,0 +1,416 @@ +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +import { Directive, ElementRef, Injectable, NgModule, NgZone, Optional, Renderer2, SkipSelf } from '@angular/core'; +import { Platform, PlatformModule } from '@angular/cdk/platform'; +import { Subject } from 'rxjs/Subject'; +import { Subscription } from 'rxjs/Subscription'; +import { fromEvent } from 'rxjs/observable/fromEvent'; +import { auditTime } from 'rxjs/operator/auditTime'; +import { merge } from 'rxjs/observable/merge'; +import { of } from 'rxjs/observable/of'; + +/** + * Time in ms to throttle the scrolling events by default. + */ +var DEFAULT_SCROLL_TIME = 20; +/** + * Service contained all registered Scrollable references and emits an event when any one of the + * Scrollable references emit a scrolled event. + */ +var ScrollDispatcher = (function () { + /** + * @param {?} _ngZone + * @param {?} _platform + */ + function ScrollDispatcher(_ngZone, _platform) { + this._ngZone = _ngZone; + this._platform = _platform; + /** + * Subject for notifying that a registered scrollable reference element has been scrolled. + */ + this._scrolled = new Subject(); + /** + * Keeps track of the global `scroll` and `resize` subscriptions. + */ + this._globalSubscription = null; + /** + * Keeps track of the amount of subscriptions to `scrolled`. Used for cleaning up afterwards. + */ + this._scrolledCount = 0; + /** + * Map of all the scrollable references that are registered with the service and their + * scroll event subscriptions. + */ + this.scrollableReferences = new Map(); + } + /** + * Registers a Scrollable with the service and listens for its scrolled events. When the + * scrollable is scrolled, the service emits the event in its scrolled observable. + * @param {?} scrollable Scrollable instance to be registered. + * @return {?} + */ + ScrollDispatcher.prototype.register = function (scrollable) { + var _this = this; + var /** @type {?} */ scrollSubscription = scrollable.elementScrolled().subscribe(function () { return _this._notify(); }); + this.scrollableReferences.set(scrollable, scrollSubscription); + }; + /** + * Deregisters a Scrollable reference and unsubscribes from its scroll event observable. + * @param {?} scrollable Scrollable instance to be deregistered. + * @return {?} + */ + ScrollDispatcher.prototype.deregister = function (scrollable) { + var /** @type {?} */ scrollableReference = this.scrollableReferences.get(scrollable); + if (scrollableReference) { + scrollableReference.unsubscribe(); + this.scrollableReferences.delete(scrollable); + } + }; + /** + * Subscribes to an observable that emits an event whenever any of the registered Scrollable + * references (or window, document, or body) fire a scrolled event. Can provide a time in ms + * to override the default "throttle" time. + * @param {?=} auditTimeInMs + * @param {?=} callback + * @return {?} + */ + ScrollDispatcher.prototype.scrolled = function (auditTimeInMs, callback) { + var _this = this; + if (auditTimeInMs === void 0) { auditTimeInMs = DEFAULT_SCROLL_TIME; } + // Scroll events can only happen on the browser, so do nothing if we're not on the browser. + if (!this._platform.isBrowser) { + return Subscription.EMPTY; + } + // In the case of a 0ms delay, use an observable without auditTime + // since it does add a perceptible delay in processing overhead. + var /** @type {?} */ observable = auditTimeInMs > 0 ? + auditTime.call(this._scrolled.asObservable(), auditTimeInMs) : + this._scrolled.asObservable(); + this._scrolledCount++; + if (!this._globalSubscription) { + this._globalSubscription = this._ngZone.runOutsideAngular(function () { + return fromEvent(window.document, 'scroll').subscribe(function () { return _this._notify(); }); + }); + } + // Note that we need to do the subscribing from here, in order to be able to remove + // the global event listeners once there are no more subscriptions. + var /** @type {?} */ subscription = observable.subscribe(callback); + subscription.add(function () { + _this._scrolledCount--; + if (_this._globalSubscription && !_this.scrollableReferences.size && !_this._scrolledCount) { + _this._globalSubscription.unsubscribe(); + _this._globalSubscription = null; + } + }); + return subscription; + }; + /** + * Returns all registered Scrollables that contain the provided element. + * @param {?} elementRef + * @return {?} + */ + ScrollDispatcher.prototype.getScrollContainers = function (elementRef) { + var _this = this; + var /** @type {?} */ scrollingContainers = []; + this.scrollableReferences.forEach(function (_subscription, scrollable) { + if (_this.scrollableContainsElement(scrollable, elementRef)) { + scrollingContainers.push(scrollable); + } + }); + return scrollingContainers; + }; + /** + * Returns true if the element is contained within the provided Scrollable. + * @param {?} scrollable + * @param {?} elementRef + * @return {?} + */ + ScrollDispatcher.prototype.scrollableContainsElement = function (scrollable, elementRef) { + var /** @type {?} */ element = elementRef.nativeElement; + var /** @type {?} */ scrollableElement = scrollable.getElementRef().nativeElement; + // Traverse through the element parents until we reach null, checking if any of the elements + // are the scrollable's element. + do { + if (element == scrollableElement) { + return true; + } + } while (element = element.parentElement); + return false; + }; + /** + * Sends a notification that a scroll event has been fired. + * @return {?} + */ + ScrollDispatcher.prototype._notify = function () { + this._scrolled.next(); + }; + ScrollDispatcher.decorators = [ + { type: Injectable }, + ]; + /** + * @nocollapse + */ + ScrollDispatcher.ctorParameters = function () { return [ + { type: NgZone, }, + { type: Platform, }, + ]; }; + return ScrollDispatcher; +}()); +/** + * \@docs-private + * @param {?} parentDispatcher + * @param {?} ngZone + * @param {?} platform + * @return {?} + */ +function SCROLL_DISPATCHER_PROVIDER_FACTORY(parentDispatcher, ngZone, platform) { + return parentDispatcher || new ScrollDispatcher(ngZone, platform); +} +/** + * \@docs-private + */ +var SCROLL_DISPATCHER_PROVIDER = { + // If there is already a ScrollDispatcher available, use that. Otherwise, provide a new one. + provide: ScrollDispatcher, + deps: [[new Optional(), new SkipSelf(), ScrollDispatcher], NgZone, Platform], + useFactory: SCROLL_DISPATCHER_PROVIDER_FACTORY +}; + +/** + * Sends an event when the directive's element is scrolled. Registers itself with the + * ScrollDispatcher service to include itself as part of its collection of scrolling events that it + * can be listened to through the service. + */ +var Scrollable = (function () { + /** + * @param {?} _elementRef + * @param {?} _scroll + * @param {?} _ngZone + * @param {?} _renderer + */ + function Scrollable(_elementRef, _scroll, _ngZone, _renderer) { + this._elementRef = _elementRef; + this._scroll = _scroll; + this._ngZone = _ngZone; + this._renderer = _renderer; + this._elementScrolled = new Subject(); + } + /** + * @return {?} + */ + Scrollable.prototype.ngOnInit = function () { + var _this = this; + this._scrollListener = this._ngZone.runOutsideAngular(function () { + return _this._renderer.listen(_this.getElementRef().nativeElement, 'scroll', function (event) { + _this._elementScrolled.next(event); + }); + }); + this._scroll.register(this); + }; + /** + * @return {?} + */ + Scrollable.prototype.ngOnDestroy = function () { + this._scroll.deregister(this); + if (this._scrollListener) { + this._scrollListener(); + this._scrollListener = null; + } + }; + /** + * Returns observable that emits when a scroll event is fired on the host element. + * @return {?} + */ + Scrollable.prototype.elementScrolled = function () { + return this._elementScrolled.asObservable(); + }; + /** + * @return {?} + */ + Scrollable.prototype.getElementRef = function () { + return this._elementRef; + }; + Scrollable.decorators = [ + { type: Directive, args: [{ + selector: '[cdk-scrollable], [cdkScrollable]' + },] }, + ]; + /** + * @nocollapse + */ + Scrollable.ctorParameters = function () { return [ + { type: ElementRef, }, + { type: ScrollDispatcher, }, + { type: NgZone, }, + { type: Renderer2, }, + ]; }; + return Scrollable; +}()); + +/** + * Time in ms to throttle the resize events by default. + */ +var DEFAULT_RESIZE_TIME = 20; +/** + * Simple utility for getting the bounds of the browser viewport. + * \@docs-private + */ +var ViewportRuler = (function () { + /** + * @param {?} platform + * @param {?} ngZone + * @param {?} scrollDispatcher + */ + function ViewportRuler(platform, ngZone, scrollDispatcher) { + var _this = this; + this._change = platform.isBrowser ? ngZone.runOutsideAngular(function () { + return merge(fromEvent(window, 'resize'), fromEvent(window, 'orientationchange')); + }) : of(); + // Subscribe to scroll and resize events and update the document rectangle on changes. + this._invalidateCacheSubscriptions = [ + scrollDispatcher.scrolled(0, function () { return _this._cacheViewportGeometry(); }), + this.change().subscribe(function () { return _this._cacheViewportGeometry(); }) + ]; + } + /** + * @return {?} + */ + ViewportRuler.prototype.ngOnDestroy = function () { + this._invalidateCacheSubscriptions.forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + /** + * Gets a ClientRect for the viewport's bounds. + * @param {?=} documentRect + * @return {?} + */ + ViewportRuler.prototype.getViewportRect = function (documentRect) { + if (documentRect === void 0) { documentRect = this._documentRect; } + // Cache the document bounding rect so that we don't recompute it for multiple calls. + if (!documentRect) { + this._cacheViewportGeometry(); + documentRect = this._documentRect; + } + // Use the document element's bounding rect rather than the window scroll properties + // (e.g. pageYOffset, scrollY) due to in issue in Chrome and IE where window scroll + // properties and client coordinates (boundingClientRect, clientX/Y, etc.) are in different + // conceptual viewports. Under most circumstances these viewports are equivalent, but they + // can disagree when the page is pinch-zoomed (on devices that support touch). + // See https://bugs.chromium.org/p/chromium/issues/detail?id=489206#c4 + // We use the documentElement instead of the body because, by default (without a css reset) + // browsers typically give the document body an 8px margin, which is not included in + // getBoundingClientRect(). + var /** @type {?} */ scrollPosition = this.getViewportScrollPosition(documentRect); + var /** @type {?} */ height = window.innerHeight; + var /** @type {?} */ width = window.innerWidth; + return { + top: scrollPosition.top, + left: scrollPosition.left, + bottom: scrollPosition.top + height, + right: scrollPosition.left + width, + height: height, + width: width, + }; + }; + /** + * Gets the (top, left) scroll position of the viewport. + * @param {?=} documentRect + * @return {?} + */ + ViewportRuler.prototype.getViewportScrollPosition = function (documentRect) { + if (documentRect === void 0) { documentRect = this._documentRect; } + // Cache the document bounding rect so that we don't recompute it for multiple calls. + if (!documentRect) { + this._cacheViewportGeometry(); + documentRect = this._documentRect; + } + // The top-left-corner of the viewport is determined by the scroll position of the document + // body, normally just (scrollLeft, scrollTop). However, Chrome and Firefox disagree about + // whether `document.body` or `document.documentElement` is the scrolled element, so reading + // `scrollTop` and `scrollLeft` is inconsistent. However, using the bounding rect of + // `document.documentElement` works consistently, where the `top` and `left` values will + // equal negative the scroll position. + var /** @type {?} */ top = -((documentRect)).top || document.body.scrollTop || window.scrollY || + document.documentElement.scrollTop || 0; + var /** @type {?} */ left = -((documentRect)).left || document.body.scrollLeft || window.scrollX || + document.documentElement.scrollLeft || 0; + return { top: top, left: left }; + }; + /** + * Returns a stream that emits whenever the size of the viewport changes. + * @param {?=} throttleTime + * @return {?} + */ + ViewportRuler.prototype.change = function (throttleTime) { + if (throttleTime === void 0) { throttleTime = DEFAULT_RESIZE_TIME; } + return throttleTime > 0 ? auditTime.call(this._change, throttleTime) : this._change; + }; + /** + * Caches the latest client rectangle of the document element. + * @return {?} + */ + ViewportRuler.prototype._cacheViewportGeometry = function () { + this._documentRect = document.documentElement.getBoundingClientRect(); + }; + ViewportRuler.decorators = [ + { type: Injectable }, + ]; + /** + * @nocollapse + */ + ViewportRuler.ctorParameters = function () { return [ + { type: Platform, }, + { type: NgZone, }, + { type: ScrollDispatcher, }, + ]; }; + return ViewportRuler; +}()); +/** + * \@docs-private + * @param {?} parentRuler + * @param {?} platform + * @param {?} ngZone + * @param {?} scrollDispatcher + * @return {?} + */ +function VIEWPORT_RULER_PROVIDER_FACTORY(parentRuler, platform, ngZone, scrollDispatcher) { + return parentRuler || new ViewportRuler(platform, ngZone, scrollDispatcher); +} +/** + * \@docs-private + */ +var VIEWPORT_RULER_PROVIDER = { + // If there is already a ViewportRuler available, use that. Otherwise, provide a new one. + provide: ViewportRuler, + deps: [[new Optional(), new SkipSelf(), ViewportRuler], Platform, NgZone, ScrollDispatcher], + useFactory: VIEWPORT_RULER_PROVIDER_FACTORY +}; + +var ScrollDispatchModule = (function () { + function ScrollDispatchModule() { + } + ScrollDispatchModule.decorators = [ + { type: NgModule, args: [{ + imports: [PlatformModule], + exports: [Scrollable], + declarations: [Scrollable], + providers: [SCROLL_DISPATCHER_PROVIDER], + },] }, + ]; + /** + * @nocollapse + */ + ScrollDispatchModule.ctorParameters = function () { return []; }; + return ScrollDispatchModule; +}()); + +/** + * Generated bundle index. Do not edit. + */ + +export { DEFAULT_SCROLL_TIME, ScrollDispatcher, SCROLL_DISPATCHER_PROVIDER_FACTORY, SCROLL_DISPATCHER_PROVIDER, Scrollable, DEFAULT_RESIZE_TIME, ViewportRuler, VIEWPORT_RULER_PROVIDER_FACTORY, VIEWPORT_RULER_PROVIDER, ScrollDispatchModule }; +//# sourceMappingURL=scrolling.es5.js.map
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/90759b86/node_modules/@angular/cdk/esm5/scrolling.es5.js.map ---------------------------------------------------------------------- diff --git a/node_modules/@angular/cdk/esm5/scrolling.es5.js.map b/node_modules/@angular/cdk/esm5/scrolling.es5.js.map new file mode 100644 index 0000000..6f7cf2b --- /dev/null +++ b/node_modules/@angular/cdk/esm5/scrolling.es5.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scrolling.es5.js","sources":["../../packages/cdk/esm5/scrolling/scroll-dispatcher.js","../../packages/cdk/esm5/scrolling/scrollable.js","../../packages/cdk/esm5/scrolling/viewport-ruler.js","../../packages/cdk/esm5/scrolling/scrolling-module.js","../../packages/cdk/esm5/scrolling/index.js"],"sourcesContent":["/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport { Injectable, NgZone, Optional, SkipSelf } from '@angular/core';\nimport { Platform } from '@angular/cdk/platform';\nimport { Subject } from 'rxjs/Subject';\nimport { Subscription } from 'rxjs/Subscription';\nimport { fromEvent } from 'rxjs/observable/fromEvent';\nimport { auditTime } from 'rxjs/operator/auditTime';\n/**\n * Time in ms to throttle the scrolling events by default.\n */\nexport var DEFAULT_SCROLL_TIME = 20;\n/**\n * Service conta ined all registered Scrollable references and emits an event when any one of the\n * Scrollable references emit a scrolled event.\n */\nvar ScrollDispatcher = (function () {\n /**\n * @param {?} _ngZone\n * @param {?} _platform\n */\n function ScrollDispatcher(_ngZone, _platform) {\n this._ngZone = _ngZone;\n this._platform = _platform;\n /**\n * Subject for notifying that a registered scrollable reference element has been scrolled.\n */\n this._scrolled = new Subject();\n /**\n * Keeps track of the global `scroll` and `resize` subscriptions.\n */\n this._globalSubscription = null;\n /**\n * Keeps track of the amount of subscriptions to `scrolled`. Used for cleaning up afterwards.\n */\n this._scrolledCount = 0;\n /**\n * Map of all the scrollable references that are registered with the service and their\n * scroll event subscriptions.\n */\n this.scrollableReferences = new Map();\n }\n /**\n * Registers a Scrollable with the service and listens for its scrolled events. When the\n * scrollable is scrolled, the service emits the event in its scrolled observable.\n * @param {?} scrollable Scrollable instance to be registered.\n * @return {?}\n */\n ScrollDispatcher.prototype.register = function (scrollable) {\n var _this = this;\n var /** @type {?} */ scrollSubscription = scrollable.elementScrolled().subscribe(function () { return _this._notify(); });\n this.scrollableReferences.set(scrollable, scrollSubscription);\n };\n /**\n * Deregisters a Scrollable reference and unsubscribes from its scroll event observable.\n * @param {?} scrollable Scrollable instance to be deregistered.\n * @return {?}\n */\n ScrollDispatcher.prototype.deregister = function (scrollable) {\n var /** @type {?} */ scrollableReference = this.scrollableR eferences.get(scrollable);\n if (scrollableReference) {\n scrollableReference.unsubscribe();\n this.scrollableReferences.delete(scrollable);\n }\n };\n /**\n * Subscribes to an observable that emits an event whenever any of the registered Scrollable\n * references (or window, document, or body) fire a scrolled event. Can provide a time in ms\n * to override the default \"throttle\" time.\n * @param {?=} auditTimeInMs\n * @param {?=} callback\n * @return {?}\n */\n ScrollDispatcher.prototype.scrolled = function (auditTimeInMs, callback) {\n var _this = this;\n if (auditTimeInMs === void 0) { auditTimeInMs = DEFAULT_SCROLL_TIME; }\n // Scroll events can only happen on the browser, so do nothing if we're not on the browser.\n if (!this._platform.isBrowser) {\n return Subscription.EMPTY;\n }\n // In the case of a 0ms delay, use an observable without auditTime\n // since it does add a perceptible delay in processing overhead.\n var /** @type {?} */ observable = auditTimeInMs > 0 ?\n auditTime.call(this._scrolled.asObservable(), auditTimeInMs) :\n this._scrolled.asObservable();\n this._scrolledCount++;\n if (!this._globalSubscription) {\n this._globalSubscription = this._ngZone.runOutsideAngular(function () {\n return fromEvent(window.document, 'scroll').subscribe(function () { return _this._notify(); });\n });\n }\n // Note that we need to do the subscribing from here, in order to be able to remove\n // the global event listeners once there are no more subscriptions.\n var /** @type {?} */ subscription = observable.subscribe(callback);\n subscription.add(function () {\n _this._scrolledCount--;\n if (_this._globalSubscription && !_this.scrollableReferences.size && !_this._scrolledCount) {\n _this._globalSubscription.unsubscribe();\n _this._globalSubscription = null;\n }\n });\n return subscription;\n };\n /**\n * Returns all registered Scrollables that contain the provided element.\n * @param {?} elementRef\n * @return {?}\n */\n ScrollDispatcher.prototype.getScrollContainers = function (elementRef) {\n var _this = this;\n var /** @type {?} */ scrollingContainers = [];\n this.scrollableReferences.forEach(function (_subscription, scrollable) {\n if (_this.scrollableContainsElement(scrollable, elementRef)) {\n scrollingContainers.push(scrollable);\n }\n });\n return scrollingContainers;\n };\n /**\n * Returns true if the element is contained within the provided Scrollable.\n * @param {?} scrollable\n * @param {?} elementRef\n * @return {?}\n */\n ScrollDispatcher.prototype.scrollableContainsElement = fu nction (scrollable, elementRef) {\n var /** @type {?} */ element = elementRef.nativeElement;\n var /** @type {?} */ scrollableElement = scrollable.getElementRef().nativeElement;\n // Traverse through the element parents until we reach null, checking if any of the elements\n // are the scrollable's element.\n do {\n if (element == scrollableElement) {\n return true;\n }\n } while (element = element.parentElement);\n return false;\n };\n /**\n * Sends a notification that a scroll event has been fired.\n * @return {?}\n */\n ScrollDispatcher.prototype._notify = function () {\n this._scrolled.next();\n };\n ScrollDispatcher.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n ScrollDispatcher.ctorParameters = function () { return [\n { type: NgZone, },\n { type: Platform, },\n ]; };\n return ScrollDispatch er;\n}());\nexport { ScrollDispatcher };\nfunction ScrollDispatcher_tsickle_Closure_declarations() {\n /** @type {?} */\n ScrollDispatcher.decorators;\n /**\n * @nocollapse\n * @type {?}\n */\n ScrollDispatcher.ctorParameters;\n /**\n * Subject for notifying that a registered scrollable reference element has been scrolled.\n * @type {?}\n */\n ScrollDispatcher.prototype._scrolled;\n /**\n * Keeps track of the global `scroll` and `resize` subscriptions.\n * @type {?}\n */\n ScrollDispatcher.prototype._globalSubscription;\n /**\n * Keeps track of the amount of subscriptions to `scrolled`. Used for cleaning up afterwards.\n * @type {?}\n */\n ScrollDispatcher.prototype._scrolledCount;\n /**\n * Map of all the scrollable references that are registered with the service and their\n * scroll event subscriptions.\n * @type {?}\n */\n ScrollDispatcher.prototype.scrollableReferences;\n /** @ type {?} */\n ScrollDispatcher.prototype._ngZone;\n /** @type {?} */\n ScrollDispatcher.prototype._platform;\n}\n/**\n * \\@docs-private\n * @param {?} parentDispatcher\n * @param {?} ngZone\n * @param {?} platform\n * @return {?}\n */\nexport function SCROLL_DISPATCHER_PROVIDER_FACTORY(parentDispatcher, ngZone, platform) {\n return parentDispatcher || new ScrollDispatcher(ngZone, platform);\n}\n/**\n * \\@docs-private\n */\nexport var SCROLL_DISPATCHER_PROVIDER = {\n // If there is already a ScrollDispatcher available, use that. Otherwise, provide a new one.\n provide: ScrollDispatcher,\n deps: [[new Optional(), new SkipSelf(), ScrollDispatcher], NgZone, Platform],\n useFactory: SCROLL_DISPATCHER_PROVIDER_FACTORY\n};\n//# sourceMappingURL=scroll-dispatcher.js.map","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/ license\n */\nimport { Directive, ElementRef, NgZone, Renderer2 } from '@angular/core';\nimport { Subject } from 'rxjs/Subject';\nimport { ScrollDispatcher } from './scroll-dispatcher';\n/**\n * Sends an event when the directive's element is scrolled. Registers itself with the\n * ScrollDispatcher service to include itself as part of its collection of scrolling events that it\n * can be listened to through the service.\n */\nvar Scrollable = (function () {\n /**\n * @param {?} _elementRef\n * @param {?} _scroll\n * @param {?} _ngZone\n * @param {?} _renderer\n */\n function Scrollable(_elementRef, _scroll, _ngZone, _renderer) {\n this._elementRef = _elementRef;\n this._scroll = _scroll;\n this._ngZone = _ngZone;\n this._renderer = _renderer;\n this._elementScrolled = new Subject();\n }\n /**\n * @return {?}\n */\n Scrollable.prototype.ngOnInit = function () {\n var _this = this;\n this._scrol lListener = this._ngZone.runOutsideAngular(function () {\n return _this._renderer.listen(_this.getElementRef().nativeElement, 'scroll', function (event) {\n _this._elementScrolled.next(event);\n });\n });\n this._scroll.register(this);\n };\n /**\n * @return {?}\n */\n Scrollable.prototype.ngOnDestroy = function () {\n this._scroll.deregister(this);\n if (this._scrollListener) {\n this._scrollListener();\n this._scrollListener = null;\n }\n };\n /**\n * Returns observable that emits when a scroll event is fired on the host element.\n * @return {?}\n */\n Scrollable.prototype.elementScrolled = function () {\n return this._elementScrolled.asObservable();\n };\n /**\n * @return {?}\n */\n Scrollable.prototype.getElementRef = function () {\n return this._elementRef;\n };\n Scrollable.decorators = [\n { type: Direc tive, args: [{\n selector: '[cdk-scrollable], [cdkScrollable]'\n },] },\n ];\n /**\n * @nocollapse\n */\n Scrollable.ctorParameters = function () { return [\n { type: ElementRef, },\n { type: ScrollDispatcher, },\n { type: NgZone, },\n { type: Renderer2, },\n ]; };\n return Scrollable;\n}());\nexport { Scrollable };\nfunction Scrollable_tsickle_Closure_declarations() {\n /** @type {?} */\n Scrollable.decorators;\n /**\n * @nocollapse\n * @type {?}\n */\n Scrollable.ctorParameters;\n /** @type {?} */\n Scrollable.prototype._elementScrolled;\n /** @type {?} */\n Scrollable.prototype._scrollListener;\n /** @type {?} */\n Scrollable.prototype._elementRef;\n /** @type {?} */\n Scrollable.prototype._scroll;\n /** @type {?} */\n Scrollable.prototype._ngZone;\n /** @type {?} */\n Scrollable.prototype._renderer;\n}\n//# sourceMappingURL=scrollable.j s.map","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport { Injectable, Optional, SkipSelf, NgZone } from '@angular/core';\nimport { Platform } from '@angular/cdk/platform';\nimport { ScrollDispatcher } from './scroll-dispatcher';\nimport { fromEvent } from 'rxjs/observable/fromEvent';\nimport { merge } from 'rxjs/observable/merge';\nimport { auditTime } from 'rxjs/operator/auditTime';\nimport { of as observableOf } from 'rxjs/observable/of';\n/**\n * Time in ms to throttle the resize events by default.\n */\nexport var DEFAULT_RESIZE_TIME = 20;\n/**\n * Simple utility for getting the bounds of the browser viewport.\n * \\@docs-private\n */\nvar ViewportRuler = (function () {\n /**\n * @param {?} platform\n * @param {?} ngZone\n * @param {?} scrollDispatcher\n */\n function ViewportRuler(platform, ngZone, scrollDispatcher) {\n var _this = this;\n this._change = platform.isBrowser ? ngZone.runOutsideAngular(function () {\n return merge(fromEvent(window, 'resize'), fromEvent(window, 'orientationchange'));\n }) : observableOf();\n // Subscribe to scroll and resize events and update the document rectangle on changes.\n this._invalidateCacheSubscriptions = [\n scrollDispatcher.scrolled(0, function () { return _this._cacheViewportGeometry(); }),\n this.change().subscribe(function () { return _this._cacheViewportGeometry(); })\n ];\n }\n /**\n * @return {?}\n */\n ViewportRuler.prototype.ngOnDestroy = function () {\n this._invalidateCacheSubscriptions.forEach(function (subscription) { return subscription.unsubscribe(); });\n };\n /**\n * Gets a ClientRect for the viewport's bounds.\n * @param {?=} documentRect\n * @return {?}\n */\n ViewportRuler.prototype.get ViewportRect = function (documentRect) {\n if (documentRect === void 0) { documentRect = this._documentRect; }\n // Cache the document bounding rect so that we don't recompute it for multiple calls.\n if (!documentRect) {\n this._cacheViewportGeometry();\n documentRect = this._documentRect;\n }\n // Use the document element's bounding rect rather than the window scroll properties\n // (e.g. pageYOffset, scrollY) due to in issue in Chrome and IE where window scroll\n // properties and client coordinates (boundingClientRect, clientX/Y, etc.) are in different\n // conceptual viewports. Under most circumstances these viewports are equivalent, but they\n // can disagree when the page is pinch-zoomed (on devices that support touch).\n // See https://bugs.chromium.org/p/chromium/issues/detail?id=489206#c4\n // We use the documentElement instead of the body because, by default (without a css r eset)\n // browsers typically give the document body an 8px margin, which is not included in\n // getBoundingClientRect().\n var /** @type {?} */ scrollPosition = this.getViewportScrollPosition(documentRect);\n var /** @type {?} */ height = window.innerHeight;\n var /** @type {?} */ width = window.innerWidth;\n return {\n top: scrollPosition.top,\n left: scrollPosition.left,\n bottom: scrollPosition.top + height,\n right: scrollPosition.left + width,\n height: height,\n width: width,\n };\n };\n /**\n * Gets the (top, left) scroll position of the viewport.\n * @param {?=} documentRect\n * @return {?}\n */\n ViewportRuler.prototype.getViewportScrollPosition = function (documentRect) {\n if (documentRect === void 0) { documentRect = this._documentRect; }\n // Cache the document bounding rect so that we don't recompute it for multiple calls.\n if (!documentRect) {\n this._cacheViewportGeometry();\n documentRect = this._documentRect;\n }\n // The top-left-corner of the viewport is determined by the scroll position of the document\n // body, normally just (scrollLeft, scrollTop). However, Chrome and Firefox disagree about\n // whether `document.body` or `document.documentElement` is the scrolled element, so reading\n // `scrollTop` and `scrollLeft` is inconsistent. However, using the bounding rect of\n // `document.documentElement` works consistently, where the `top` and `left` values will\n // equal negative the scroll position.\n var /** @type {?} */ top = -((documentRect)).top || document.body.scrollTop || window.scrollY ||\n document.documentElement.scrollTop || 0;\n var /** @type {?} */ left = -((documentRect)).left || document.body.scrollLeft || window.scrollX ||\n document.documentElement.scroll Left || 0;\n return { top: top, left: left };\n };\n /**\n * Returns a stream that emits whenever the size of the viewport changes.\n * @param {?=} throttleTime\n * @return {?}\n */\n ViewportRuler.prototype.change = function (throttleTime) {\n if (throttleTime === void 0) { throttleTime = DEFAULT_RESIZE_TIME; }\n return throttleTime > 0 ? auditTime.call(this._change, throttleTime) : this._change;\n };\n /**\n * Caches the latest client rectangle of the document element.\n * @return {?}\n */\n ViewportRuler.prototype._cacheViewportGeometry = function () {\n this._documentRect = document.documentElement.getBoundingClientRect();\n };\n ViewportRuler.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n ViewportRuler.ctorParameters = function () { return [\n { type: Platform, },\n { type: NgZone, },\n { type: ScrollDispatcher, },\n ]; };\n return ViewportRuler;\n}());\nexport { ViewportRuler };\nfunction ViewportRuler_tsickle_Closure_declarations() {\n /** @type {?} */\n ViewportRuler.decorators;\n /**\n * @nocollapse\n * @type {?}\n */\n ViewportRuler.ctorParameters;\n /**\n * Cached document client rectangle.\n * @type {?}\n */\n ViewportRuler.prototype._documentRect;\n /**\n * Stream of viewport change events.\n * @type {?}\n */\n ViewportRuler.prototype._change;\n /**\n * Subscriptions to streams that invalidate the cached viewport dimensions.\n * @type {?}\n */\n ViewportRuler.prototype._invalidateCacheSubscriptions;\n}\n/**\n * \\@docs-private\n * @param {?} parentRuler\n * @param {?} platform\n * @param {?} ngZone\n * @param {?} scrollDispatcher\n * @return {?}\n */\nexport function VIEWPORT_RULER_PROVIDER_FACTORY(parentRuler, platform, ngZone, scrollDispatcher) {\n return parentRuler || new ViewportRuler(platform, ngZone, scroll Dispatcher);\n}\n/**\n * \\@docs-private\n */\nexport var VIEWPORT_RULER_PROVIDER = {\n // If there is already a ViewportRuler available, use that. Otherwise, provide a new one.\n provide: ViewportRuler,\n deps: [[new Optional(), new SkipSelf(), ViewportRuler], Platform, NgZone, ScrollDispatcher],\n useFactory: VIEWPORT_RULER_PROVIDER_FACTORY\n};\n//# sourceMappingURL=viewport-ruler.js.map","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport { NgModule } from '@angular/core';\nimport { SCROLL_DISPATCHER_PROVIDER } from './scroll-dispatcher';\nimport { Scrollable } from './scrollable';\nimport { PlatformModule } from '@angular/cdk/platform';\nvar ScrollDispatchModule = (function () {\n function ScrollDispatchModule() {\n }\n ScrollDispatchModule.decorators = [\n { type: NgModule, args: [{\n imports: [PlatformModule],\n exports: [Scrollable],\n declarations: [Scrollable],\n providers: [SCROLL_DISPATCHER_PROVIDER],\n },] },\n ];\n /**\n * @nocollapse\n */\n ScrollDispatchModule.ctorParameters = function () { return []; };\n return ScrollDispatchModule;\n}());\nexport { ScrollDispatchModule };\nfunction ScrollDispatchModule_tsickle_Closure_declarations() {\n /** @type {?} */\n ScrollDispatchModule.decorators;\n /**\n * @nocollapse\n * @type {?}\n */\n ScrollDispatchModule.ctorParameters;\n}\n//# sourceMappingURL=scrolling-module.js.map","/**\n * Generated bundle index. Do not edit.\n */\nexport { DEFAULT_SCROLL_TIME, ScrollDispatcher, SCROLL_DISPATCHER_PROVIDER_FACTORY, SCROLL_DISPATCHER_PROVIDER, Scrollable, DEFAULT_RESIZE_TIME, ViewportRuler, VIEWPORT_RULER_PROVIDER_FACTORY, VIEWPORT_RULER_PROVIDER, ScrollDispatchModule } from './public-ap i';\n//# sourceMappingURL=index.js.map"],"names":["observableOf"],"mappings":"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"} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/90759b86/node_modules/@angular/cdk/esm5/stepper.es5.js ---------------------------------------------------------------------- diff --git a/node_modules/@angular/cdk/esm5/stepper.es5.js b/node_modules/@angular/cdk/esm5/stepper.es5.js new file mode 100644 index 0000000..60aa5f7 --- /dev/null +++ b/node_modules/@angular/cdk/esm5/stepper.es5.js @@ -0,0 +1,479 @@ +/** + * @license + * Copyright Google Inc. All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.io/license + */ +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, Directive, EventEmitter, Inject, Input, NgModule, Optional, Output, TemplateRef, ViewChild, ViewEncapsulation, forwardRef } from '@angular/core'; +import { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes'; +import { coerceBooleanProperty } from '@angular/cdk/coercion'; +import { BidiModule, Directionality } from '@angular/cdk/bidi'; +import { CommonModule } from '@angular/common'; + +var CdkStepLabel = (function () { + /** + * @param {?} template + */ + function CdkStepLabel(template) { + this.template = template; + } + CdkStepLabel.decorators = [ + { type: Directive, args: [{ + selector: '[cdkStepLabel]', + },] }, + ]; + /** + * @nocollapse + */ + CdkStepLabel.ctorParameters = function () { return [ + { type: TemplateRef, }, + ]; }; + return CdkStepLabel; +}()); + +/** + * Used to generate unique ID for each stepper component. + */ +var nextId = 0; +/** + * Change event emitted on selection changes. + */ +var StepperSelectionEvent = (function () { + function StepperSelectionEvent() { + } + return StepperSelectionEvent; +}()); +var CdkStep = (function () { + /** + * @param {?} _stepper + */ + function CdkStep(_stepper) { + this._stepper = _stepper; + /** + * Whether user has seen the expanded step content or not. + */ + this.interacted = false; + this._editable = true; + this._optional = false; + this._customCompleted = null; + } + Object.defineProperty(CdkStep.prototype, "editable", { + /** + * @return {?} + */ + get: function () { return this._editable; }, + /** + * @param {?} value + * @return {?} + */ + set: function (value) { + this._editable = coerceBooleanProperty(value); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CdkStep.prototype, "optional", { + /** + * Whether the completion of step is optional or not. + * @return {?} + */ + get: function () { return this._optional; }, + /** + * @param {?} value + * @return {?} + */ + set: function (value) { + this._optional = coerceBooleanProperty(value); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CdkStep.prototype, "completed", { + /** + * Return whether step is completed or not. + * @return {?} + */ + get: function () { + return this._customCompleted == null ? this._defaultCompleted : this._customCompleted; + }, + /** + * @param {?} value + * @return {?} + */ + set: function (value) { + this._customCompleted = coerceBooleanProperty(value); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CdkStep.prototype, "_defaultCompleted", { + /** + * @return {?} + */ + get: function () { + return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted; + }, + enumerable: true, + configurable: true + }); + /** + * Selects this step component. + * @return {?} + */ + CdkStep.prototype.select = function () { + this._stepper.selected = this; + }; + /** + * @return {?} + */ + CdkStep.prototype.ngOnChanges = function () { + // Since basically all inputs of the MdStep get proxied through the view down to the + // underlying MdStepHeader, we have to make sure that change detection runs correctly. + this._stepper._stateChanged(); + }; + CdkStep.decorators = [ + { type: Component, args: [{selector: 'cdk-step', + exportAs: 'cdkStep', + template: "<ng-template><ng-content></ng-content></ng-template>", + encapsulation: ViewEncapsulation.None, + preserveWhitespaces: false, + changeDetection: ChangeDetectionStrategy.OnPush, + },] }, + ]; + /** + * @nocollapse + */ + CdkStep.ctorParameters = function () { return [ + { type: CdkStepper, decorators: [{ type: Inject, args: [forwardRef(function () { return CdkStepper; }),] },] }, + ]; }; + CdkStep.propDecorators = { + 'stepLabel': [{ type: ContentChild, args: [CdkStepLabel,] },], + 'content': [{ type: ViewChild, args: [TemplateRef,] },], + 'stepControl': [{ type: Input },], + 'label': [{ type: Input },], + 'editable': [{ type: Input },], + 'optional': [{ type: Input },], + 'completed': [{ type: Input },], + }; + return CdkStep; +}()); +var CdkStepper = (function () { + /** + * @param {?} _dir + * @param {?} _changeDetectorRef + */ + function CdkStepper(_dir, _changeDetectorRef) { + this._dir = _dir; + this._changeDetectorRef = _changeDetectorRef; + this._linear = false; + this._selectedIndex = 0; + /** + * Event emitted when the selected step has changed. + */ + this.selectionChange = new EventEmitter(); + /** + * The index of the step that the focus can be set. + */ + this._focusIndex = 0; + this._groupId = nextId++; + } + Object.defineProperty(CdkStepper.prototype, "linear", { + /** + * Whether the validity of previous steps should be checked or not. + * @return {?} + */ + get: function () { return this._linear; }, + /** + * @param {?} value + * @return {?} + */ + set: function (value) { this._linear = coerceBooleanProperty(value); }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CdkStepper.prototype, "selectedIndex", { + /** + * The index of the selected step. + * @return {?} + */ + get: function () { return this._selectedIndex; }, + /** + * @param {?} index + * @return {?} + */ + set: function (index) { + if (this._anyControlsInvalid(index) + || index < this._selectedIndex && !this._steps.toArray()[index].editable) { + // remove focus from clicked step header if the step is not able to be selected + this._stepHeader.toArray()[index].nativeElement.blur(); + } + else if (this._selectedIndex != index) { + this._emitStepperSelectionEvent(index); + this._focusIndex = this._selectedIndex; + } + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(CdkStepper.prototype, "selected", { + /** + * The step that is selected. + * @return {?} + */ + get: function () { return this._steps.toArray()[this.selectedIndex]; }, + /** + * @param {?} step + * @return {?} + */ + set: function (step) { + this.selectedIndex = this._steps.toArray().indexOf(step); + }, + enumerable: true, + configurable: true + }); + /** + * Selects and focuses the next step in list. + * @return {?} + */ + CdkStepper.prototype.next = function () { + this.selectedIndex = Math.min(this._selectedIndex + 1, this._steps.length - 1); + }; + /** + * Selects and focuses the previous step in list. + * @return {?} + */ + CdkStepper.prototype.previous = function () { + this.selectedIndex = Math.max(this._selectedIndex - 1, 0); + }; + /** + * Returns a unique id for each step label element. + * @param {?} i + * @return {?} + */ + CdkStepper.prototype._getStepLabelId = function (i) { + return "mat-step-label-" + this._groupId + "-" + i; + }; + /** + * Returns unique id for each step content element. + * @param {?} i + * @return {?} + */ + CdkStepper.prototype._getStepContentId = function (i) { + return "mat-step-content-" + this._groupId + "-" + i; + }; + /** + * Marks the component to be change detected. + * @return {?} + */ + CdkStepper.prototype._stateChanged = function () { + this._changeDetectorRef.markForCheck(); + }; + /** + * Returns position state of the step with the given index. + * @param {?} index + * @return {?} + */ + CdkStepper.prototype._getAnimationDirection = function (index) { + var /** @type {?} */ position = index - this._selectedIndex; + if (position < 0) { + return this._layoutDirection() === 'rtl' ? 'next' : 'previous'; + } + else if (position > 0) { + return this._layoutDirection() === 'rtl' ? 'previous' : 'next'; + } + return 'current'; + }; + /** + * Returns the type of icon to be displayed. + * @param {?} index + * @return {?} + */ + CdkStepper.prototype._getIndicatorType = function (index) { + var /** @type {?} */ step = this._steps.toArray()[index]; + if (!step.completed || this._selectedIndex == index) { + return 'number'; + } + else { + return step.editable ? 'edit' : 'done'; + } + }; + /** + * @param {?} newIndex + * @return {?} + */ + CdkStepper.prototype._emitStepperSelectionEvent = function (newIndex) { + var /** @type {?} */ stepsArray = this._steps.toArray(); + this.selectionChange.emit({ + selectedIndex: newIndex, + previouslySelectedIndex: this._selectedIndex, + selectedStep: stepsArray[newIndex], + previouslySelectedStep: stepsArray[this._selectedIndex], + }); + this._selectedIndex = newIndex; + this._stateChanged(); + }; + /** + * @param {?} event + * @return {?} + */ + CdkStepper.prototype._onKeydown = function (event) { + switch (event.keyCode) { + case RIGHT_ARROW: + if (this._layoutDirection() === 'rtl') { + this._focusPreviousStep(); + } + else { + this._focusNextStep(); + } + break; + case LEFT_ARROW: + if (this._layoutDirection() === 'rtl') { + this._focusNextStep(); + } + else { + this._focusPreviousStep(); + } + break; + case SPACE: + case ENTER: + this.selectedIndex = this._focusIndex; + break; + default: + // Return to avoid calling preventDefault on keys that are not explicitly handled. + return; + } + event.preventDefault(); + }; + /** + * @return {?} + */ + CdkStepper.prototype._focusNextStep = function () { + this._focusStep((this._focusIndex + 1) % this._steps.length); + }; + /** + * @return {?} + */ + CdkStepper.prototype._focusPreviousStep = function () { + this._focusStep((this._focusIndex + this._steps.length - 1) % this._steps.length); + }; + /** + * @param {?} index + * @return {?} + */ + CdkStepper.prototype._focusStep = function (index) { + this._focusIndex = index; + this._stepHeader.toArray()[this._focusIndex].nativeElement.focus(); + }; + /** + * @param {?} index + * @return {?} + */ + CdkStepper.prototype._anyControlsInvalid = function (index) { + this._steps.toArray()[this._selectedIndex].interacted = true; + if (this._linear && index >= 0) { + return this._steps.toArray().slice(0, index).some(function (step) { return step.stepControl.invalid; }); + } + return false; + }; + /** + * @return {?} + */ + CdkStepper.prototype._layoutDirection = function () { + return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr'; + }; + CdkStepper.decorators = [ + { type: Directive, args: [{ + selector: '[cdkStepper]', + exportAs: 'cdkStepper', + },] }, + ]; + /** + * @nocollapse + */ + CdkStepper.ctorParameters = function () { return [ + { type: Directionality, decorators: [{ type: Optional },] }, + { type: ChangeDetectorRef, }, + ]; }; + CdkStepper.propDecorators = { + '_steps': [{ type: ContentChildren, args: [CdkStep,] },], + 'linear': [{ type: Input },], + 'selectedIndex': [{ type: Input },], + 'selected': [{ type: Input },], + 'selectionChange': [{ type: Output },], + }; + return CdkStepper; +}()); + +/** + * Button that moves to the next step in a stepper workflow. + */ +var CdkStepperNext = (function () { + /** + * @param {?} _stepper + */ + function CdkStepperNext(_stepper) { + this._stepper = _stepper; + } + CdkStepperNext.decorators = [ + { type: Directive, args: [{ + selector: 'button[cdkStepperNext]', + host: { '(click)': '_stepper.next()' } + },] }, + ]; + /** + * @nocollapse + */ + CdkStepperNext.ctorParameters = function () { return [ + { type: CdkStepper, }, + ]; }; + return CdkStepperNext; +}()); +/** + * Button that moves to the previous step in a stepper workflow. + */ +var CdkStepperPrevious = (function () { + /** + * @param {?} _stepper + */ + function CdkStepperPrevious(_stepper) { + this._stepper = _stepper; + } + CdkStepperPrevious.decorators = [ + { type: Directive, args: [{ + selector: 'button[cdkStepperPrevious]', + host: { '(click)': '_stepper.previous()' } + },] }, + ]; + /** + * @nocollapse + */ + CdkStepperPrevious.ctorParameters = function () { return [ + { type: CdkStepper, }, + ]; }; + return CdkStepperPrevious; +}()); + +var CdkStepperModule = (function () { + function CdkStepperModule() { + } + CdkStepperModule.decorators = [ + { type: NgModule, args: [{ + imports: [BidiModule, CommonModule], + exports: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious], + declarations: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious] + },] }, + ]; + /** + * @nocollapse + */ + CdkStepperModule.ctorParameters = function () { return []; }; + return CdkStepperModule; +}()); + +/** + * Generated bundle index. Do not edit. + */ + +export { StepperSelectionEvent, CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious, CdkStepperModule }; +//# sourceMappingURL=stepper.es5.js.map