Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ng-table-virtual-scroll

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ng-table-virtual-scroll - npm Package Compare versions

Comparing version 1.3.7 to 1.3.8

4

bundles/ng-table-virtual-scroll.umd.js

@@ -487,4 +487,4 @@ (function (global, factory) {

}
var stickyHeaderSelector = '.mat-header-row .mat-table-sticky';
var stickyFooterSelector = '.mat-footer-row .mat-table-sticky';
var stickyHeaderSelector = '.mat-header-row .mat-table-sticky, .mat-header-row.mat-table-sticky';
var stickyFooterSelector = '.mat-footer-row .mat-table-sticky, .mat-header-row.mat-table-sticky';
var defaults = {

@@ -491,0 +491,0 @@ rowHeight: 48,

@@ -15,3 +15,3 @@ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/cdk/scrolling"),require("rxjs/operators"),require("rxjs"),require("@angular/material/table")):"function"==typeof define&&define.amd?define("ng-table-virtual-scroll",["exports","@angular/core","@angular/cdk/scrolling","rxjs/operators","rxjs","@angular/material/table"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["ng-table-virtual-scroll"]={},t.ng.core,t.ng.cdk.scrolling,t.rxjs.operators,t.rxjs,t.ng.material.table)}(this,(function(t,e,r,i,n,o){"use strict";

PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,e)};Object.create;function s(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var i,n,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(i=o.next()).done;)a.push(i.value)}catch(t){n={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return a}Object.create;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e.prototype._updateChangeSubscription=function(){var t,e=this;this.initStreams();var r=this._sort,o=this._paginator,a=this._internalPageChanges,h=this._filter,c=this._renderData,l=r?n.merge(r.sortChange,r.initialized):n.of(null),u=o?n.merge(o.page,a,o.initialized):n.of(null),p=this._data,d=n.combineLatest([p,h]).pipe(i.map((function(t){var r=s(t,1)[0];return e._filterData(r)}))),f=n.combineLatest([d,l]).pipe(i.map((function(t){var r=s(t,1)[0];return e._orderData(r)}))),g=n.combineLatest([f,u]).pipe(i.map((function(t){var r=s(t,1)[0];return e._pageData(r)})));null===(t=this._renderChangesSubscription)||void 0===t||t.unsubscribe(),this._renderChangesSubscription=new n.Subscription,this._renderChangesSubscription.add(g.subscribe((function(t){return e.dataToRender$.next(t)}))),this._renderChangesSubscription.add(this.dataOfRange$.subscribe((function(t){return c.next(t)})))},e.prototype.initStreams=function(){this.streamsReady||(this.dataToRender$=new n.ReplaySubject(1),this.dataOfRange$=new n.ReplaySubject(1),this.streamsReady=!0)},e}(o.MatTableDataSource),c=function(){function t(){this.indexChange=new n.Subject,this.stickyChange=new n.Subject,this.renderedRangeStream=new n.BehaviorSubject({start:0,end:0}),this.scrolledIndexChange=this.indexChange.pipe(i.distinctUntilChanged()),this._dataLength=0}return Object.defineProperty(t.prototype,"dataLength",{get:function(){return this._dataLength},set:function(t){this._dataLength=t,this.onDataLengthChanged()},enumerable:!1,configurable:!0}),t.prototype.attach=function(t){this.viewport=t,this.viewport.renderedRangeStream.subscribe(this.renderedRangeStream),this.onDataLengthChanged()},t.prototype.detach=function(){this.indexChange.complete(),this.stickyChange.complete(),this.renderedRangeStream.complete()},t.prototype.onContentScrolled=function(){this.updateContent()},t.prototype.onDataLengthChanged=function(){this.viewport&&this.viewport.setTotalContentSize(this.dataLength*this.rowHeight+this.headerHeight+this.footerHeight),this.updateContent()},t.prototype.onContentRendered=function(){},t.prototype.onRenderedOffsetChanged=function(){},t.prototype.scrollToIndex=function(t,e){this.viewport&&this.rowHeight&&this.viewport.scrollToOffset((t-1)*this.rowHeight+this.headerHeight,e)},t.prototype.setConfig=function(t){var e=t.rowHeight,r=t.headerHeight,i=t.footerHeight,n=t.bufferMultiplier;this.rowHeight===e&&this.headerHeight===r&&this.footerHeight===i&&this.bufferMultiplier===n||(this.rowHeight=e,this.headerHeight=r,this.footerHeight=i,this.bufferMultiplier=n,this.onDataLengthChanged())},t.prototype.updateContent=function(){if(this.viewport&&this.rowHeight){var t=this.viewport.getOffsetToRenderedContentStart(),e=t/this.rowHeight,r=Math.ceil(this.viewport.getViewportSize()/this.rowHeight),i=Math.ceil(r*this.bufferMultiplier),n=e+r+2*i,o=t+i*this.rowHeight,a=this.viewport.measureScrollOffset(),s=(a-o)/this.rowHeight,h=a/this.rowHeight;this.indexChange.next(h);if(Math.abs(s)<1)return this.viewport.setRenderedContentOffset(t),void this.viewport.setRenderedRange({start:e,end:n});if(0===t&&s<0)return this.viewport.setRenderedContentOffset(t),void this.viewport.setRenderedRange({start:e,end:n});var c=Math.sign(s)*Math.floor(Math.abs(s)),l=Math.max(0,t+c*this.rowHeight);this.viewport.setRenderedContentOffset(l);var u=Math.max(0,e+c),p=u+r+2*i;this.viewport.setRenderedRange({start:u,end:p}),this.stickyChange.next(l)}},t}();function l(t){return t.scrollStrategy}c.decorators=[{type:e.Injectable}];var u=".mat-header-row .mat-table-sticky",p=48,d=56,f=!0,g=48,y=!1,b=.7,S=function(){function t(t){this.zone=t,this.destroyed$=new n.Subject,this.rowHeight=p,this.headerEnabled=f,this.headerHeight=d,this.footerEnabled=y,this.footerHeight=g,this.bufferMultiplier=b,this.scrollStrategy=new c,this.dataSourceChanges=new n.Subject}return t.prototype.ngOnDestroy=function(){this.destroyed$.next(),this.destroyed$.complete(),this.dataSourceChanges.complete()},t.prototype.isStickyEnabled=function(){return!!this.scrollStrategy.viewport&&this.table._headerRowDefs.map((function(t){return t.sticky})).reduce((function(t,e){return t&&e}),!0)},t.prototype.ngAfterContentInit=function(){var t=this,e=this.table._switchDataSource;this.table._switchDataSource=function(r){e.call(t.table,r),t.connectDataSource(r)},this.connectDataSource(this.table.dataSource),this.scrollStrategy.stickyChange.pipe(i.filter((function(){return t.isStickyEnabled()})),i.tap((function(){t.stickyPositions||t.initStickyPositions()})),i.takeUntil(this.destroyed$)).subscribe((function(e){t.setSticky(e)}))},t.prototype.connectDataSource=function(t){var e=this;if(this.dataSourceChanges.next(),!(t instanceof h))throw new Error("[tvsItemSize] requires TableVirtualScrollDataSource be set as [dataSource] of [mat-table]");t.dataToRender$.pipe(i.distinctUntilChanged(),i.takeUntil(this.dataSourceChanges),i.takeUntil(this.destroyed$),i.tap((function(t){return e.scrollStrategy.dataLength=t.length})),i.switchMap((function(t){return e.scrollStrategy.renderedRangeStream.pipe(i.map((function(e){var r=e.start,i=e.end;return"number"!=typeof r||"number"!=typeof i?t:t.slice(r,i)})))}))).subscribe((function(r){e.zone.run((function(){t.dataOfRange$.next(r)}))}))},t.prototype.ngOnChanges=function(){var t={rowHeight:+this.rowHeight||p,headerHeight:this.headerEnabled?+this.headerHeight||d:0,footerHeight:this.footerEnabled?+this.footerHeight||g:0,bufferMultiplier:+this.bufferMultiplier||b};this.scrollStrategy.setConfig(t)},t.prototype.setSticky=function(t){var e=this;this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(u).forEach((function(r){var i=r.parentElement,n=0;e.stickyPositions.has(i)&&(n=e.stickyPositions.get(i)),r.style.top=n-t+"px"})),this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(".mat-footer-row .mat-table-sticky").forEach((function(r){var i=r.parentElement,n=0;e.stickyPositions.has(i)&&(n=e.stickyPositions.get(i)),r.style.bottom=-n+t+"px"}))},t.prototype.initStickyPositions=function(){var t=this;this.stickyPositions=new Map,this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(u).forEach((function(e){var r=e.parentElement;t.stickyPositions.has(r)||t.stickyPositions.set(r,r.offsetTop)}))},t}();S.decorators=[{type:e.Directive,args:[{selector:"cdk-virtual-scroll-viewport[tvsItemSize]",providers:[{provide:r.VIRTUAL_SCROLL_STRATEGY,useFactory:l,deps:[e.forwardRef((function(){return S}))]}]}]}],S.ctorParameters=function(){return[{type:e.NgZone}]},S.propDecorators={rowHeight:[{type:e.Input,args:["tvsItemSize"]}],headerEnabled:[{type:e.Input}],headerHeight:[{type:e.Input}],footerEnabled:[{type:e.Input}],footerHeight:[{type:e.Input}],bufferMultiplier:[{type:e.Input}],table:[{type:e.ContentChild,args:[o.MatTable,{static:!1}]}]};var v=function(){};v.decorators=[{type:e.NgModule,args:[{declarations:[S],imports:[],exports:[S]}]}],t.FixedSizeTableVirtualScrollStrategy=c,t.TableItemSizeDirective=S,t.TableVirtualScrollDataSource=h,t.TableVirtualScrollModule=v,t._tableVirtualScrollDirectiveStrategyFactory=l,Object.defineProperty(t,"__esModule",{value:!0})}));
***************************************************************************** */var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,e)};Object.create;function s(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var i,n,o=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(i=o.next()).done;)a.push(i.value)}catch(t){n={error:t}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return a}Object.create;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e.prototype._updateChangeSubscription=function(){var t,e=this;this.initStreams();var r=this._sort,o=this._paginator,a=this._internalPageChanges,h=this._filter,c=this._renderData,l=r?n.merge(r.sortChange,r.initialized):n.of(null),u=o?n.merge(o.page,a,o.initialized):n.of(null),p=this._data,d=n.combineLatest([p,h]).pipe(i.map((function(t){var r=s(t,1)[0];return e._filterData(r)}))),f=n.combineLatest([d,l]).pipe(i.map((function(t){var r=s(t,1)[0];return e._orderData(r)}))),g=n.combineLatest([f,u]).pipe(i.map((function(t){var r=s(t,1)[0];return e._pageData(r)})));null===(t=this._renderChangesSubscription)||void 0===t||t.unsubscribe(),this._renderChangesSubscription=new n.Subscription,this._renderChangesSubscription.add(g.subscribe((function(t){return e.dataToRender$.next(t)}))),this._renderChangesSubscription.add(this.dataOfRange$.subscribe((function(t){return c.next(t)})))},e.prototype.initStreams=function(){this.streamsReady||(this.dataToRender$=new n.ReplaySubject(1),this.dataOfRange$=new n.ReplaySubject(1),this.streamsReady=!0)},e}(o.MatTableDataSource),c=function(){function t(){this.indexChange=new n.Subject,this.stickyChange=new n.Subject,this.renderedRangeStream=new n.BehaviorSubject({start:0,end:0}),this.scrolledIndexChange=this.indexChange.pipe(i.distinctUntilChanged()),this._dataLength=0}return Object.defineProperty(t.prototype,"dataLength",{get:function(){return this._dataLength},set:function(t){this._dataLength=t,this.onDataLengthChanged()},enumerable:!1,configurable:!0}),t.prototype.attach=function(t){this.viewport=t,this.viewport.renderedRangeStream.subscribe(this.renderedRangeStream),this.onDataLengthChanged()},t.prototype.detach=function(){this.indexChange.complete(),this.stickyChange.complete(),this.renderedRangeStream.complete()},t.prototype.onContentScrolled=function(){this.updateContent()},t.prototype.onDataLengthChanged=function(){this.viewport&&this.viewport.setTotalContentSize(this.dataLength*this.rowHeight+this.headerHeight+this.footerHeight),this.updateContent()},t.prototype.onContentRendered=function(){},t.prototype.onRenderedOffsetChanged=function(){},t.prototype.scrollToIndex=function(t,e){this.viewport&&this.rowHeight&&this.viewport.scrollToOffset((t-1)*this.rowHeight+this.headerHeight,e)},t.prototype.setConfig=function(t){var e=t.rowHeight,r=t.headerHeight,i=t.footerHeight,n=t.bufferMultiplier;this.rowHeight===e&&this.headerHeight===r&&this.footerHeight===i&&this.bufferMultiplier===n||(this.rowHeight=e,this.headerHeight=r,this.footerHeight=i,this.bufferMultiplier=n,this.onDataLengthChanged())},t.prototype.updateContent=function(){if(this.viewport&&this.rowHeight){var t=this.viewport.getOffsetToRenderedContentStart(),e=t/this.rowHeight,r=Math.ceil(this.viewport.getViewportSize()/this.rowHeight),i=Math.ceil(r*this.bufferMultiplier),n=e+r+2*i,o=t+i*this.rowHeight,a=this.viewport.measureScrollOffset(),s=(a-o)/this.rowHeight,h=a/this.rowHeight;this.indexChange.next(h);if(Math.abs(s)<1)return this.viewport.setRenderedContentOffset(t),void this.viewport.setRenderedRange({start:e,end:n});if(0===t&&s<0)return this.viewport.setRenderedContentOffset(t),void this.viewport.setRenderedRange({start:e,end:n});var c=Math.sign(s)*Math.floor(Math.abs(s)),l=Math.max(0,t+c*this.rowHeight);this.viewport.setRenderedContentOffset(l);var u=Math.max(0,e+c),p=u+r+2*i;this.viewport.setRenderedRange({start:u,end:p}),this.stickyChange.next(l)}},t}();function l(t){return t.scrollStrategy}c.decorators=[{type:e.Injectable}];var u=".mat-header-row .mat-table-sticky, .mat-header-row.mat-table-sticky",p=48,d=56,f=!0,g=48,y=!1,b=.7,S=function(){function t(t){this.zone=t,this.destroyed$=new n.Subject,this.rowHeight=p,this.headerEnabled=f,this.headerHeight=d,this.footerEnabled=y,this.footerHeight=g,this.bufferMultiplier=b,this.scrollStrategy=new c,this.dataSourceChanges=new n.Subject}return t.prototype.ngOnDestroy=function(){this.destroyed$.next(),this.destroyed$.complete(),this.dataSourceChanges.complete()},t.prototype.isStickyEnabled=function(){return!!this.scrollStrategy.viewport&&this.table._headerRowDefs.map((function(t){return t.sticky})).reduce((function(t,e){return t&&e}),!0)},t.prototype.ngAfterContentInit=function(){var t=this,e=this.table._switchDataSource;this.table._switchDataSource=function(r){e.call(t.table,r),t.connectDataSource(r)},this.connectDataSource(this.table.dataSource),this.scrollStrategy.stickyChange.pipe(i.filter((function(){return t.isStickyEnabled()})),i.tap((function(){t.stickyPositions||t.initStickyPositions()})),i.takeUntil(this.destroyed$)).subscribe((function(e){t.setSticky(e)}))},t.prototype.connectDataSource=function(t){var e=this;if(this.dataSourceChanges.next(),!(t instanceof h))throw new Error("[tvsItemSize] requires TableVirtualScrollDataSource be set as [dataSource] of [mat-table]");t.dataToRender$.pipe(i.distinctUntilChanged(),i.takeUntil(this.dataSourceChanges),i.takeUntil(this.destroyed$),i.tap((function(t){return e.scrollStrategy.dataLength=t.length})),i.switchMap((function(t){return e.scrollStrategy.renderedRangeStream.pipe(i.map((function(e){var r=e.start,i=e.end;return"number"!=typeof r||"number"!=typeof i?t:t.slice(r,i)})))}))).subscribe((function(r){e.zone.run((function(){t.dataOfRange$.next(r)}))}))},t.prototype.ngOnChanges=function(){var t={rowHeight:+this.rowHeight||p,headerHeight:this.headerEnabled?+this.headerHeight||d:0,footerHeight:this.footerEnabled?+this.footerHeight||g:0,bufferMultiplier:+this.bufferMultiplier||b};this.scrollStrategy.setConfig(t)},t.prototype.setSticky=function(t){var e=this;this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(u).forEach((function(r){var i=r.parentElement,n=0;e.stickyPositions.has(i)&&(n=e.stickyPositions.get(i)),r.style.top=n-t+"px"})),this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(".mat-footer-row .mat-table-sticky, .mat-header-row.mat-table-sticky").forEach((function(r){var i=r.parentElement,n=0;e.stickyPositions.has(i)&&(n=e.stickyPositions.get(i)),r.style.bottom=-n+t+"px"}))},t.prototype.initStickyPositions=function(){var t=this;this.stickyPositions=new Map,this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(u).forEach((function(e){var r=e.parentElement;t.stickyPositions.has(r)||t.stickyPositions.set(r,r.offsetTop)}))},t}();S.decorators=[{type:e.Directive,args:[{selector:"cdk-virtual-scroll-viewport[tvsItemSize]",providers:[{provide:r.VIRTUAL_SCROLL_STRATEGY,useFactory:l,deps:[e.forwardRef((function(){return S}))]}]}]}],S.ctorParameters=function(){return[{type:e.NgZone}]},S.propDecorators={rowHeight:[{type:e.Input,args:["tvsItemSize"]}],headerEnabled:[{type:e.Input}],headerHeight:[{type:e.Input}],footerEnabled:[{type:e.Input}],footerHeight:[{type:e.Input}],bufferMultiplier:[{type:e.Input}],table:[{type:e.ContentChild,args:[o.MatTable,{static:!1}]}]};var v=function(){};v.decorators=[{type:e.NgModule,args:[{declarations:[S],imports:[],exports:[S]}]}],t.FixedSizeTableVirtualScrollStrategy=c,t.TableItemSizeDirective=S,t.TableVirtualScrollDataSource=h,t.TableVirtualScrollModule=v,t._tableVirtualScrollDirectiveStrategyFactory=l,Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=ng-table-virtual-scroll.umd.min.js.map

@@ -11,4 +11,4 @@ import { ContentChild, Directive, forwardRef, Input, NgZone } from '@angular/core';

}
const stickyHeaderSelector = '.mat-header-row .mat-table-sticky';
const stickyFooterSelector = '.mat-footer-row .mat-table-sticky';
const stickyHeaderSelector = '.mat-header-row .mat-table-sticky, .mat-header-row.mat-table-sticky';
const stickyFooterSelector = '.mat-footer-row .mat-table-sticky, .mat-header-row.mat-table-sticky';
const defaults = {

@@ -146,2 +146,2 @@ rowHeight: 48,

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsL3NyYy9saWIvdGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsWUFBWSxFQUNaLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRSxPQUFPLEVBQWEsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVqRyxPQUFPLEVBQU0sT0FBTyxFQUFTLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE1BQU0sVUFBVSwyQ0FBMkMsQ0FBQyxRQUFnQztJQUMxRixPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUM7QUFDakMsQ0FBQztBQUVELE1BQU0sb0JBQW9CLEdBQUcsbUNBQW1DLENBQUM7QUFDakUsTUFBTSxvQkFBb0IsR0FBRyxtQ0FBbUMsQ0FBQztBQUVqRSxNQUFNLFFBQVEsR0FBRztJQUNmLFNBQVMsRUFBRSxFQUFFO0lBQ2IsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLElBQUk7SUFDbkIsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLEtBQUs7SUFDcEIsZ0JBQWdCLEVBQUUsR0FBRztDQUN0QixDQUFDO0FBVUYsTUFBTSxPQUFPLHNC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QUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBQ3RELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUM7YUFDekYsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ1osTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDcEQ7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OztZQXhKRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDBDQUEwQztnQkFDcEQsU0FBUyxFQUFFLENBQUM7d0JBQ1YsT0FBTyxFQUFFLHVCQUF1Qjt3QkFDaEMsVUFBVSxFQUFFLDJDQUEyQzt3QkFDdkQsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUM7cUJBQ2pELENBQUM7YUFDSDs7O1lBbkNDLE1BQU07Ozt3QkF3Q0wsS0FBSyxTQUFDLGFBQWE7NEJBR25CLEtBQUs7MkJBR0wsS0FBSzs0QkFHTCxLQUFLOzJCQUdMLEtBQUs7K0JBR0wsS0FBSztvQkFHTCxZQUFZLFNBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRGlyZWN0aXZlLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZJUlRVQUxfU0NST0xMX1NUUkFURUdZIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBkZWxheVdoZW4sIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2UgfSBmcm9tICcuL3RhYmxlLWRhdGEtc291cmNlJztcbmltcG9ydCB7IE1hdFRhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgRml4ZWRTaXplVGFibGVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgfSBmcm9tICcuL2ZpeGVkLXNpemUtdGFibGUtdmlydHVhbC1zY3JvbGwtc3RyYXRlZ3knO1xuaW1wb3J0IHsgQ2RrSGVhZGVyUm93RGVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RhYmxlJztcbmltcG9ydCB7IG9mLCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gX3RhYmxlVmlydHVhbFNjcm9sbERpcmVjdGl2ZVN0cmF0ZWd5RmFjdG9yeSh0YWJsZURpcjogVGFibGVJdGVtU2l6ZURpcmVjdGl2ZSkge1xuICByZXR1cm4gdGFibGVEaXIuc2Nyb2xsU3RyYXRlZ3k7XG59XG5cbmNvbnN0IHN0aWNreUhlYWRlclNlbGVjdG9yID0gJy5tYXQtaGVhZGVyLXJvdyAubWF0LXRhYmxlLXN0aWNreSc7XG5jb25zdCBzdGlja3lGb290ZXJTZWxlY3RvciA9ICcubWF0LWZvb3Rlci1yb3cgLm1hdC10YWJsZS1zdGlja3knO1xuXG5jb25zdCBkZWZhdWx0cyA9IHtcbiAgcm93SGVpZ2h0OiA0OCxcbiAgaGVhZGVySGVpZ2h0OiA1NixcbiAgaGVhZGVyRW5hYmxlZDogdHJ1ZSxcbiAgZm9vdGVySGVpZ2h0OiA0OCxcbiAgZm9vdGVyRW5hYmxlZDogZmFsc2UsXG4gIGJ1ZmZlck11bHRpcGxpZXI6IDAuN1xufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0W3R2c0l0ZW1TaXplXScsXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBWSVJUVUFMX1NDUk9MTF9TVFJBVEVHWSxcbiAgICB1c2VGYWN0b3J5OiBfdGFibGVWaXJ0dWFsU2Nyb2xsRGlyZWN0aXZlU3RyYXRlZ3lGYWN0b3J5LFxuICAgIGRlcHM6IFtmb3J3YXJkUmVmKCgpID0+IFRhYmxlSXRlbVNpemVEaXJlY3RpdmUpXVxuICB9XVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUl0ZW1TaXplRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCd0dnNJdGVtU2l6ZScpXG4gIHJvd0hlaWdodDogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMucm93SGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGhlYWRlckVuYWJsZWQ6IGJvb2xlYW4gPSBkZWZhdWx0cy5oZWFkZXJFbmFibGVkO1xuXG4gIEBJbnB1dCgpXG4gIGhlYWRlckhlaWdodDogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMuaGVhZGVySGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlckVuYWJsZWQ6IGJvb2xlYW4gPSBkZWZhdWx0cy5mb290ZXJFbmFibGVkO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlckhlaWdodDogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMuZm9vdGVySGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGJ1ZmZlck11bHRpcGxpZXI6IHN0cmluZyB8IG51bWJlciA9IGRlZmF1bHRzLmJ1ZmZlck11bHRpcGxpZXI7XG5cbiAgQENvbnRlbnRDaGlsZChNYXRUYWJsZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHRhYmxlOiBNYXRUYWJsZTxhbnk+O1xuXG4gIHNjcm9sbFN0cmF0ZWd5ID0gbmV3IEZpeGVkU2l6ZVRhYmxlVmlydHVhbFNjcm9sbFN0cmF0ZWd5KCk7XG5cbiAgZGF0YVNvdXJjZUNoYW5nZXMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgc3RpY2t5UG9zaXRpb25zOiBNYXA8SFRNTEVsZW1lbnQsIG51bWJlcj47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB6b25lOiBOZ1pvbmUpIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5kYXRhU291cmNlQ2hhbmdlcy5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1N0aWNreUVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydCAmJiAodGhpcy50YWJsZVsnX2hlYWRlclJvd0RlZnMnXSBhcyBDZGtIZWFkZXJSb3dEZWZbXSlcbiAgICAgIC5tYXAoZGVmID0+IGRlZi5zdGlja3kpXG4gICAgICAucmVkdWNlKChwcmV2U3RhdGUsIHN0YXRlKSA9PiBwcmV2U3RhdGUgJiYgc3RhdGUsIHRydWUpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIGNvbnN0IHN3aXRjaERhdGFTb3VyY2VPcmlnaW4gPSB0aGlzLnRhYmxlWydfc3dpdGNoRGF0YVNvdXJjZSddO1xuICAgIHRoaXMudGFibGVbJ19zd2l0Y2hEYXRhU291cmNlJ10gPSAoZGF0YVNvdXJjZTogYW55KSA9PiB7XG4gICAgICBzd2l0Y2hEYXRhU291cmNlT3JpZ2luLmNhbGwodGhpcy50YWJsZSwgZGF0YVNvdXJjZSk7XG4gICAgICB0aGlzLmNvbm5lY3REYXRhU291cmNlKGRhdGFTb3VyY2UpO1xuICAgIH07XG5cbiAgICB0aGlzLmNvbm5lY3REYXRhU291cmNlKHRoaXMudGFibGUuZGF0YVNvdXJjZSk7XG5cbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5LnN0aWNreUNoYW5nZVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLmlzU3RpY2t5RW5hYmxlZCgpKSxcbiAgICAgICAgLy8gYnJlYWtzIHN0aWNreSBoZWFkZXIgb24gdGhlIHRvcC4gbmVlZHMgaW52ZXN0aWdhdGlvblxuICAgICAgICAvLyBkZWxheVdoZW4oKCkgPT4gIXRoaXMuc3RpY2t5UG9zaXRpb25zID8gdGltZXIoMCkgOiBvZigpKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMuc3RpY2t5UG9zaXRpb25zKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRTdGlja3lQb3NpdGlvbnMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RpY2t5T2Zmc2V0KSA9PiB7XG4gICAgICAgIHRoaXMuc2V0U3RpY2t5KHN0aWNreU9mZnNldCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNvbm5lY3REYXRhU291cmNlKGRhdGFTb3VyY2U6IGFueSkge1xuICAgIHRoaXMuZGF0YVNvdXJjZUNoYW5nZXMubmV4dCgpO1xuICAgIGlmIChkYXRhU291cmNlIGluc3RhbmNlb2YgVGFibGVWaXJ0dWFsU2Nyb2xsRGF0YVNvdXJjZSkge1xuICAgICAgZGF0YVNvdXJjZVxuICAgICAgICAuZGF0YVRvUmVuZGVyJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRhdGFTb3VyY2VDaGFuZ2VzKSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSxcbiAgICAgICAgICB0YXAoZGF0YSA9PiB0aGlzLnNjcm9sbFN0cmF0ZWd5LmRhdGFMZW5ndGggPSBkYXRhLmxlbmd0aCksXG4gICAgICAgICAgc3dpdGNoTWFwKGRhdGEgPT5cbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3lcbiAgICAgICAgICAgICAgLnJlbmRlcmVkUmFuZ2VTdHJlYW1cbiAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh7XG4gICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LFxuICAgICAgICAgICAgICAgICAgICAgICBlbmRcbiAgICAgICAgICAgICAgICAgICAgIH0pID0+IHR5cGVvZiBzdGFydCAhPT0gJ251bWJlcicgfHwgdHlwZW9mIGVuZCAhPT0gJ251bWJlcicgPyBkYXRhIDogZGF0YS5zbGljZShzdGFydCwgZW5kKSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgZGF0YVNvdXJjZS5kYXRhT2ZSYW5nZSQubmV4dChkYXRhKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignW3R2c0l0ZW1TaXplXSByZXF1aXJlcyBUYWJsZVZpcnR1YWxTY3JvbGxEYXRhU291cmNlIGJlIHNldCBhcyBbZGF0YVNvdXJjZV0gb2YgW21hdC10YWJsZV0nKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICByb3dIZWlnaHQ6ICt0aGlzLnJvd0hlaWdodCB8fCBkZWZhdWx0cy5yb3dIZWlnaHQsXG4gICAgICBoZWFkZXJIZWlnaHQ6IHRoaXMuaGVhZGVyRW5hYmxlZCA/ICt0aGlzLmhlYWRlckhlaWdodCB8fCBkZWZhdWx0cy5oZWFkZXJIZWlnaHQgOiAwLFxuICAgICAgZm9vdGVySGVpZ2h0OiB0aGlzLmZvb3RlckVuYWJsZWQgPyArdGhpcy5mb290ZXJIZWlnaHQgfHwgZGVmYXVsdHMuZm9vdGVySGVpZ2h0IDogMCxcbiAgICAgIGJ1ZmZlck11bHRpcGxpZXI6ICt0aGlzLmJ1ZmZlck11bHRpcGxpZXIgfHwgZGVmYXVsdHMuYnVmZmVyTXVsdGlwbGllclxuICAgIH07XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS5zZXRDb25maWcoY29uZmlnKTtcbiAgfVxuXG5cbiAgc2V0U3RpY2t5KG9mZnNldDogbnVtYmVyKSB7XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzdGlja3lIZWFkZXJTZWxlY3RvcilcbiAgICAgIC5mb3JFYWNoKChlbDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgY29uc3QgcGFyZW50ID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgICAgbGV0IGJhc2VPZmZzZXQgPSAwO1xuICAgICAgICBpZiAodGhpcy5zdGlja3lQb3NpdGlvbnMuaGFzKHBhcmVudCkpIHtcbiAgICAgICAgICBiYXNlT2Zmc2V0ID0gdGhpcy5zdGlja3lQb3NpdGlvbnMuZ2V0KHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuc3R5bGUudG9wID0gYCR7YmFzZU9mZnNldCAtIG9mZnNldH1weGA7XG4gICAgICB9KTtcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5LnZpZXdwb3J0LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHN0aWNreUZvb3RlclNlbGVjdG9yKVxuICAgICAgLmZvckVhY2goKGVsOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgICBjb25zdCBwYXJlbnQgPSBlbC5wYXJlbnRFbGVtZW50O1xuICAgICAgICBsZXQgYmFzZU9mZnNldCA9IDA7XG4gICAgICAgIGlmICh0aGlzLnN0aWNreVBvc2l0aW9ucy5oYXMocGFyZW50KSkge1xuICAgICAgICAgIGJhc2VPZmZzZXQgPSB0aGlzLnN0aWNreVBvc2l0aW9ucy5nZXQocGFyZW50KTtcbiAgICAgICAgfVxuICAgICAgICBlbC5zdHlsZS5ib3R0b20gPSBgJHstYmFzZU9mZnNldCArIG9mZnNldH1weGA7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFN0aWNreVBvc2l0aW9ucygpIHtcbiAgICB0aGlzLnN0aWNreVBvc2l0aW9ucyA9IG5ldyBNYXA8SFRNTEVsZW1lbnQsIG51bWJlcj4oKTtcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5LnZpZXdwb3J0LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHN0aWNreUhlYWRlclNlbGVjdG9yKVxuICAgICAgLmZvckVhY2goZWwgPT4ge1xuICAgICAgICBjb25zdCBwYXJlbnQgPSBlbC5wYXJlbnRFbGVtZW50O1xuICAgICAgICBpZiAoIXRoaXMuc3RpY2t5UG9zaXRpb25zLmhhcyhwYXJlbnQpKSB7XG4gICAgICAgICAgdGhpcy5zdGlja3lQb3NpdGlvbnMuc2V0KHBhcmVudCwgcGFyZW50Lm9mZnNldFRvcCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsL3NyYy9saWIvdGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsWUFBWSxFQUNaLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRSxPQUFPLEVBQWEsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVqRyxPQUFPLEVBQU0sT0FBTyxFQUFTLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE1BQU0sVUFBVSwyQ0FBMkMsQ0FBQyxRQUFnQztJQUMxRixPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUM7QUFDakMsQ0FBQztBQUVELE1BQU0sb0JBQW9CLEdBQUcscUVBQXFFLENBQUM7QUFDbkcsTUFBTSxvQkFBb0IsR0FBRyxxRUFBcUUsQ0FBQztBQUVuRyxNQUFNLFFBQVEsR0FBRztJQUNmLFNBQVMsRUFBRSxFQUFFO0lBQ2IsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLElBQUk7SUFDbkIsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLEtBQUs7SUFDcEIsZ0JBQWdCLEVBQUUsR0FBRztDQUN0QixDQUFDO0FBVUYsTUFBTSxPQUFPLHNC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QUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBQ3RELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUM7YUFDekYsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ1osTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDcEQ7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OztZQXhKRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDBDQUEwQztnQkFDcEQsU0FBUyxFQUFFLENBQUM7d0JBQ1YsT0FBTyxFQUFFLHVCQUF1Qjt3QkFDaEMsVUFBVSxFQUFFLDJDQUEyQzt3QkFDdkQsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUM7cUJBQ2pELENBQUM7YUFDSDs7O1lBbkNDLE1BQU07Ozt3QkF3Q0wsS0FBSyxTQUFDLGFBQWE7NEJBR25CLEtBQUs7MkJBR0wsS0FBSzs0QkFHTCxLQUFLOzJCQUdMLEtBQUs7K0JBR0wsS0FBSztvQkFHTCxZQUFZLFNBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRGlyZWN0aXZlLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZJUlRVQUxfU0NST0xMX1NUUkFURUdZIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBkZWxheVdoZW4sIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2UgfSBmcm9tICcuL3RhYmxlLWRhdGEtc291cmNlJztcbmltcG9ydCB7IE1hdFRhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgRml4ZWRTaXplVGFibGVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgfSBmcm9tICcuL2ZpeGVkLXNpemUtdGFibGUtdmlydHVhbC1zY3JvbGwtc3RyYXRlZ3knO1xuaW1wb3J0IHsgQ2RrSGVhZGVyUm93RGVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RhYmxlJztcbmltcG9ydCB7IG9mLCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gX3RhYmxlVmlydHVhbFNjcm9sbERpcmVjdGl2ZVN0cmF0ZWd5RmFjdG9yeSh0YWJsZURpcjogVGFibGVJdGVtU2l6ZURpcmVjdGl2ZSkge1xuICByZXR1cm4gdGFibGVEaXIuc2Nyb2xsU3RyYXRlZ3k7XG59XG5cbmNvbnN0IHN0aWNreUhlYWRlclNlbGVjdG9yID0gJy5tYXQtaGVhZGVyLXJvdyAubWF0LXRhYmxlLXN0aWNreSwgLm1hdC1oZWFkZXItcm93Lm1hdC10YWJsZS1zdGlja3knO1xuY29uc3Qgc3RpY2t5Rm9vdGVyU2VsZWN0b3IgPSAnLm1hdC1mb290ZXItcm93IC5tYXQtdGFibGUtc3RpY2t5LCAubWF0LWhlYWRlci1yb3cubWF0LXRhYmxlLXN0aWNreSc7XG5cbmNvbnN0IGRlZmF1bHRzID0ge1xuICByb3dIZWlnaHQ6IDQ4LFxuICBoZWFkZXJIZWlnaHQ6IDU2LFxuICBoZWFkZXJFbmFibGVkOiB0cnVlLFxuICBmb290ZXJIZWlnaHQ6IDQ4LFxuICBmb290ZXJFbmFibGVkOiBmYWxzZSxcbiAgYnVmZmVyTXVsdGlwbGllcjogMC43XG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnRbdHZzSXRlbVNpemVdJyxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IFZJUlRVQUxfU0NST0xMX1NUUkFURUdZLFxuICAgIHVzZUZhY3Rvcnk6IF90YWJsZVZpcnR1YWxTY3JvbGxEaXJlY3RpdmVTdHJhdGVneUZhY3RvcnksXG4gICAgZGVwczogW2ZvcndhcmRSZWYoKCkgPT4gVGFibGVJdGVtU2l6ZURpcmVjdGl2ZSldXG4gIH1dXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlSXRlbVNpemVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3R2c0l0ZW1TaXplJylcbiAgcm93SGVpZ2h0OiBzdHJpbmcgfCBudW1iZXIgPSBkZWZhdWx0cy5yb3dIZWlnaHQ7XG5cbiAgQElucHV0KClcbiAgaGVhZGVyRW5hYmxlZDogYm9vbGVhbiA9IGRlZmF1bHRzLmhlYWRlckVuYWJsZWQ7XG5cbiAgQElucHV0KClcbiAgaGVhZGVySGVpZ2h0OiBzdHJpbmcgfCBudW1iZXIgPSBkZWZhdWx0cy5oZWFkZXJIZWlnaHQ7XG5cbiAgQElucHV0KClcbiAgZm9vdGVyRW5hYmxlZDogYm9vbGVhbiA9IGRlZmF1bHRzLmZvb3RlckVuYWJsZWQ7XG5cbiAgQElucHV0KClcbiAgZm9vdGVySGVpZ2h0OiBzdHJpbmcgfCBudW1iZXIgPSBkZWZhdWx0cy5mb290ZXJIZWlnaHQ7XG5cbiAgQElucHV0KClcbiAgYnVmZmVyTXVsdGlwbGllcjogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMuYnVmZmVyTXVsdGlwbGllcjtcblxuICBAQ29udGVudENoaWxkKE1hdFRhYmxlLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgdGFibGU6IE1hdFRhYmxlPGFueT47XG5cbiAgc2Nyb2xsU3RyYXRlZ3kgPSBuZXcgRml4ZWRTaXplVGFibGVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3koKTtcblxuICBkYXRhU291cmNlQ2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBzdGlja3lQb3NpdGlvbnM6IE1hcDxIVE1MRWxlbWVudCwgbnVtYmVyPjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHpvbmU6IE5nWm9uZSkge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3llZCQuY29tcGxldGUoKTtcbiAgICB0aGlzLmRhdGFTb3VyY2VDaGFuZ2VzLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGlzU3RpY2t5RW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnNjcm9sbFN0cmF0ZWd5LnZpZXdwb3J0ICYmICh0aGlzLnRhYmxlWydfaGVhZGVyUm93RGVmcyddIGFzIENka0hlYWRlclJvd0RlZltdKVxuICAgICAgLm1hcChkZWYgPT4gZGVmLnN0aWNreSlcbiAgICAgIC5yZWR1Y2UoKHByZXZTdGF0ZSwgc3RhdGUpID0+IHByZXZTdGF0ZSAmJiBzdGF0ZSwgdHJ1ZSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgY29uc3Qgc3dpdGNoRGF0YVNvdXJjZU9yaWdpbiA9IHRoaXMudGFibGVbJ19zd2l0Y2hEYXRhU291cmNlJ107XG4gICAgdGhpcy50YWJsZVsnX3N3aXRjaERhdGFTb3VyY2UnXSA9IChkYXRhU291cmNlOiBhbnkpID0+IHtcbiAgICAgIHN3aXRjaERhdGFTb3VyY2VPcmlnaW4uY2FsbCh0aGlzLnRhYmxlLCBkYXRhU291cmNlKTtcbiAgICAgIHRoaXMuY29ubmVjdERhdGFTb3VyY2UoZGF0YVNvdXJjZSk7XG4gICAgfTtcblxuICAgIHRoaXMuY29ubmVjdERhdGFTb3VyY2UodGhpcy50YWJsZS5kYXRhU291cmNlKTtcblxuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kuc3RpY2t5Q2hhbmdlXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuaXNTdGlja3lFbmFibGVkKCkpLFxuICAgICAgICAvLyBicmVha3Mgc3RpY2t5IGhlYWRlciBvbiB0aGUgdG9wLiBuZWVkcyBpbnZlc3RpZ2F0aW9uXG4gICAgICAgIC8vIGRlbGF5V2hlbigoKSA9PiAhdGhpcy5zdGlja3lQb3NpdGlvbnMgPyB0aW1lcigwKSA6IG9mKCkpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIGlmICghdGhpcy5zdGlja3lQb3NpdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdFN0aWNreVBvc2l0aW9ucygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChzdGlja3lPZmZzZXQpID0+IHtcbiAgICAgICAgdGhpcy5zZXRTdGlja3koc3RpY2t5T2Zmc2V0KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgY29ubmVjdERhdGFTb3VyY2UoZGF0YVNvdXJjZTogYW55KSB7XG4gICAgdGhpcy5kYXRhU291cmNlQ2hhbmdlcy5uZXh0KCk7XG4gICAgaWYgKGRhdGFTb3VyY2UgaW5zdGFuY2VvZiBUYWJsZVZpcnR1YWxTY3JvbGxEYXRhU291cmNlKSB7XG4gICAgICBkYXRhU291cmNlXG4gICAgICAgIC5kYXRhVG9SZW5kZXIkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGF0YVNvdXJjZUNoYW5nZXMpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpLFxuICAgICAgICAgIHRhcChkYXRhID0+IHRoaXMuc2Nyb2xsU3RyYXRlZ3kuZGF0YUxlbmd0aCA9IGRhdGEubGVuZ3RoKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoZGF0YSA9PlxuICAgICAgICAgICAgdGhpcy5zY3JvbGxTdHJhdGVneVxuICAgICAgICAgICAgICAucmVuZGVyZWRSYW5nZVN0cmVhbVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQsXG4gICAgICAgICAgICAgICAgICAgICAgIGVuZFxuICAgICAgICAgICAgICAgICAgICAgfSkgPT4gdHlwZW9mIHN0YXJ0ICE9PSAnbnVtYmVyJyB8fCB0eXBlb2YgZW5kICE9PSAnbnVtYmVyJyA/IGRhdGEgOiBkYXRhLnNsaWNlKHN0YXJ0LCBlbmQpKVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBkYXRhU291cmNlLmRhdGFPZlJhbmdlJC5uZXh0KGRhdGEpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdbdHZzSXRlbVNpemVdIHJlcXVpcmVzIFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2UgYmUgc2V0IGFzIFtkYXRhU291cmNlXSBvZiBbbWF0LXRhYmxlXScpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIHJvd0hlaWdodDogK3RoaXMucm93SGVpZ2h0IHx8IGRlZmF1bHRzLnJvd0hlaWdodCxcbiAgICAgIGhlYWRlckhlaWdodDogdGhpcy5oZWFkZXJFbmFibGVkID8gK3RoaXMuaGVhZGVySGVpZ2h0IHx8IGRlZmF1bHRzLmhlYWRlckhlaWdodCA6IDAsXG4gICAgICBmb290ZXJIZWlnaHQ6IHRoaXMuZm9vdGVyRW5hYmxlZCA/ICt0aGlzLmZvb3RlckhlaWdodCB8fCBkZWZhdWx0cy5mb290ZXJIZWlnaHQgOiAwLFxuICAgICAgYnVmZmVyTXVsdGlwbGllcjogK3RoaXMuYnVmZmVyTXVsdGlwbGllciB8fCBkZWZhdWx0cy5idWZmZXJNdWx0aXBsaWVyXG4gICAgfTtcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5LnNldENvbmZpZyhjb25maWcpO1xuICB9XG5cblxuICBzZXRTdGlja3kob2Zmc2V0OiBudW1iZXIpIHtcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5LnZpZXdwb3J0LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHN0aWNreUhlYWRlclNlbGVjdG9yKVxuICAgICAgLmZvckVhY2goKGVsOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgICBjb25zdCBwYXJlbnQgPSBlbC5wYXJlbnRFbGVtZW50O1xuICAgICAgICBsZXQgYmFzZU9mZnNldCA9IDA7XG4gICAgICAgIGlmICh0aGlzLnN0aWNreVBvc2l0aW9ucy5oYXMocGFyZW50KSkge1xuICAgICAgICAgIGJhc2VPZmZzZXQgPSB0aGlzLnN0aWNreVBvc2l0aW9ucy5nZXQocGFyZW50KTtcbiAgICAgICAgfVxuICAgICAgICBlbC5zdHlsZS50b3AgPSBgJHtiYXNlT2Zmc2V0IC0gb2Zmc2V0fXB4YDtcbiAgICAgIH0pO1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kudmlld3BvcnQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc3RpY2t5Rm9vdGVyU2VsZWN0b3IpXG4gICAgICAuZm9yRWFjaCgoZWw6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGVsLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgIGxldCBiYXNlT2Zmc2V0ID0gMDtcbiAgICAgICAgaWYgKHRoaXMuc3RpY2t5UG9zaXRpb25zLmhhcyhwYXJlbnQpKSB7XG4gICAgICAgICAgYmFzZU9mZnNldCA9IHRoaXMuc3RpY2t5UG9zaXRpb25zLmdldChwYXJlbnQpO1xuICAgICAgICB9XG4gICAgICAgIGVsLnN0eWxlLmJvdHRvbSA9IGAkey1iYXNlT2Zmc2V0ICsgb2Zmc2V0fXB4YDtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U3RpY2t5UG9zaXRpb25zKCkge1xuICAgIHRoaXMuc3RpY2t5UG9zaXRpb25zID0gbmV3IE1hcDxIVE1MRWxlbWVudCwgbnVtYmVyPigpO1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kudmlld3BvcnQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc3RpY2t5SGVhZGVyU2VsZWN0b3IpXG4gICAgICAuZm9yRWFjaChlbCA9PiB7XG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGVsLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgIGlmICghdGhpcy5zdGlja3lQb3NpdGlvbnMuaGFzKHBhcmVudCkpIHtcbiAgICAgICAgICB0aGlzLnN0aWNreVBvc2l0aW9ucy5zZXQocGFyZW50LCBwYXJlbnQub2Zmc2V0VG9wKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -149,4 +149,4 @@ import { Injectable, Directive, forwardRef, NgZone, Input, ContentChild, NgModule } from '@angular/core';

}
const stickyHeaderSelector = '.mat-header-row .mat-table-sticky';
const stickyFooterSelector = '.mat-footer-row .mat-table-sticky';
const stickyHeaderSelector = '.mat-header-row .mat-table-sticky, .mat-header-row.mat-table-sticky';
const stickyFooterSelector = '.mat-footer-row .mat-table-sticky, .mat-header-row.mat-table-sticky';
const defaults = {

@@ -153,0 +153,0 @@ rowHeight: 48,

{
"name": "ng-table-virtual-scroll",
"version": "1.3.7",
"version": "1.3.8",
"description": "Virtual scroll for for Angular Material Table",

@@ -5,0 +5,0 @@ "homepage": "https://github.com/diprokon/ng-table-virtual-scroll",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc