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.5 to 1.3.6

393

bundles/ng-table-virtual-scroll.umd.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/scrolling'), require('rxjs/operators'), require('rxjs'), require('@angular/material/table')) :
typeof define === 'function' && define.amd ? define('ng-table-virtual-scroll', ['exports', '@angular/core', '@angular/cdk/scrolling', 'rxjs/operators', 'rxjs', '@angular/material/table'], factory) :
(global = global || self, factory(global['ng-table-virtual-scroll'] = {}, global.ng.core, global.ng.cdk.scrolling, global.rxjs.operators, global.rxjs, global.ng.material.table));
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global['ng-table-virtual-scroll'] = {}, global.ng.core, global.ng.cdk.scrolling, global.rxjs.operators, global.rxjs, global.ng.material.table));
}(this, (function (exports, core, scrolling, operators, rxjs, table) { 'use strict';

@@ -22,11 +22,13 @@

/* global Reflect, Promise */
var extendStatics = function(d, b) {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
function (d, b) { for (var p in b)
if (Object.prototype.hasOwnProperty.call(b, p))
d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);

@@ -36,8 +38,9 @@ function __() { this.constructor = d; }

}
var __assign = function() {
var __assign = function () {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
for (var p in s)
if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}

@@ -48,7 +51,7 @@ return t;

};
function __rest(s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
for (var p in s)
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")

@@ -61,23 +64,34 @@ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {

}
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
r = Reflect.decorate(decorators, target, key, desc);
else
for (var i = decorators.length - 1; i >= 0; i--)
if (d = decorators[i])
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function __param(paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
return function (target, key) { decorator(target, key, paramIndex); };
}
function __metadata(metadataKey, metadataValue) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function fulfilled(value) { try {
step(generator.next(value));
}
catch (e) {
reject(e);
} }
function rejected(value) { try {
step(generator["throw"](value));
}
catch (e) {
reject(e);
} }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }

@@ -87,69 +101,124 @@ step((generator = generator.apply(thisArg, _arguments || [])).next());

}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
var _ = { label: 0, sent: function () { if (t[0] & 1)
throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
if (f)
throw new TypeError("Generator is already executing.");
while (_)
try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
return t;
if (y = 0, t)
op = [op[0] & 2, t.value];
switch (op[0]) {
case 0:
case 1:
t = op;
break;
case 4:
_.label++;
return { value: op[1], done: false };
case 5:
_.label++;
y = op[1];
op = [0];
continue;
case 7:
op = _.ops.pop();
_.trys.pop();
continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
_ = 0;
continue;
}
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
_.label = op[1];
break;
}
if (op[0] === 6 && _.label < t[1]) {
_.label = t[1];
t = op;
break;
}
if (t && _.label < t[2]) {
_.label = t[2];
_.ops.push(op);
break;
}
if (t[2])
_.ops.pop();
_.trys.pop();
continue;
}
op = body.call(thisArg, _);
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
catch (e) {
op = [6, e];
y = 0;
}
finally {
f = t = 0;
}
if (op[0] & 5)
throw op[1];
return { value: op[0] ? op[1] : void 0, done: true };
}
}
function __createBinding(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var __createBinding = Object.create ? (function (o, m, k, k2) {
if (k2 === undefined)
k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
}) : (function (o, m, k, k2) {
if (k2 === undefined)
k2 = k;
o[k2] = m[k];
});
function __exportStar(m, o) {
for (var p in m)
if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
__createBinding(o, m, p);
}
function __exportStar(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p];
}
function __values(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m) return m.call(o);
if (o && typeof o.length === "number") return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
if (m)
return m.call(o);
if (o && typeof o.length === "number")
return {
next: function () {
if (o && i >= o.length)
o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
if (!m)
return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
ar.push(r.value);
}
catch (error) { e = { error: error }; }
catch (error) {
e = { error: error };
}
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
if (r && !r.done && (m = i["return"]))
m.call(i);
}
finally { if (e) throw e.error; }
finally {
if (e)
throw e.error;
}
}
return ar;
}
/** @deprecated */
function __spread() {

@@ -160,5 +229,6 @@ for (var ar = [], i = 0; i < arguments.length; i++)

}
/** @deprecated */
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var s = 0, i = 0, il = arguments.length; i < il; i++)
s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)

@@ -168,20 +238,30 @@ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)

return r;
};
}
function __spreadArray(to, from) {
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
to[j] = from[i];
return to;
}
function __await(v) {
return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
if (!Symbol.asyncIterator)
throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function verb(n) { if (g[n])
i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try {
step(g[n](v));
}
catch (e) {
settle(q[0][3], e);
} }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
function settle(f, v) { if (f(v), q.shift(), q.length)
resume(q[0][0], q[0][1]); }
}
function __asyncDelegator(o) {

@@ -192,28 +272,39 @@ var i, p;

}
function __asyncValues(o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
if (!Symbol.asyncIterator)
throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
}
function __makeTemplateObject(cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
if (Object.defineProperty) {
Object.defineProperty(cooked, "raw", { value: raw });
}
else {
cooked.raw = raw;
}
return cooked;
}
;
var __setModuleDefault = Object.create ? (function (o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function (o, v) {
o["default"] = v;
};
function __importStar(mod) {
if (mod && mod.__esModule) return mod;
if (mod && mod.__esModule)
return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result.default = mod;
if (mod != null)
for (var k in mod)
if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
__createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
}
function __importDefault(mod) {
return (mod && mod.__esModule) ? mod : { default: mod };
}
function __classPrivateFieldGet(receiver, privateMap) {

@@ -225,3 +316,2 @@ if (!privateMap.has(receiver)) {

}
function __classPrivateFieldSet(receiver, privateMap, value) {

@@ -257,14 +347,14 @@ if (!privateMap.has(receiver)) {

var filteredData = rxjs.combineLatest([dataStream, _filter])
.pipe(operators.map(function (_a) {
var _b = __read(_a, 1), data = _b[0];
.pipe(operators.map(function (_b) {
var _c = __read(_b, 1), data = _c[0];
return _this._filterData(data);
}));
var orderedData = rxjs.combineLatest([filteredData, sortChange])
.pipe(operators.map(function (_a) {
var _b = __read(_a, 1), data = _b[0];
.pipe(operators.map(function (_b) {
var _c = __read(_b, 1), data = _c[0];
return _this._orderData(data);
}));
var paginatedData = rxjs.combineLatest([orderedData, pageChange])
.pipe(operators.map(function (_a) {
var _b = __read(_a, 1), data = _b[0];
.pipe(operators.map(function (_b) {
var _c = __read(_b, 1), data = _c[0];
return _this._pageData(data);

@@ -303,3 +393,3 @@ }));

},
enumerable: true,
enumerable: false,
configurable: true

@@ -336,3 +426,3 @@ });

}
this.viewport.scrollToOffset((index - 1) * this.rowHeight + this.headerHeight);
this.viewport.scrollToOffset((index - 1) * this.rowHeight + this.headerHeight, behavior);
};

@@ -371,7 +461,7 @@ FixedSizeTableVirtualScrollStrategy.prototype.setConfig = function (configs) {

};
FixedSizeTableVirtualScrollStrategy = __decorate([
core.Injectable()
], FixedSizeTableVirtualScrollStrategy);
return FixedSizeTableVirtualScrollStrategy;
}());
FixedSizeTableVirtualScrollStrategy.decorators = [
{ type: core.Injectable }
];

@@ -394,3 +484,3 @@ function _tableVirtualScrollDirectiveStrategyFactory(tableDir) {

this.zone = zone;
this.alive = true;
this.destroyed$ = new rxjs.Subject();
// tslint:disable-next-line:no-input-rename

@@ -406,11 +496,7 @@ this.rowHeight = defaults.rowHeight;

}
TableItemSizeDirective_1 = TableItemSizeDirective;
TableItemSizeDirective.prototype.ngOnDestroy = function () {
this.alive = false;
this.destroyed$.next();
this.destroyed$.complete();
this.dataSourceChanges.complete();
};
TableItemSizeDirective.prototype.isAlive = function () {
var _this = this;
return function () { return _this.alive; };
};
TableItemSizeDirective.prototype.isStickyEnabled = function () {

@@ -430,7 +516,7 @@ return !!this.scrollStrategy.viewport && this.table['_headerRowDefs']

this.scrollStrategy.stickyChange
.pipe(operators.filter(function () { return _this.isStickyEnabled(); }), operators.tap(function () {
.pipe(operators.filter(function () { return _this.isStickyEnabled(); }), operators.delayWhen(function () { return !_this.stickyPositions ? rxjs.timer(0) : rxjs.of(); }), operators.tap(function () {
if (!_this.stickyPositions) {
_this.initStickyPositions();
}
}), operators.takeWhile(this.isAlive()))
}), operators.takeUntil(this.destroyed$))
.subscribe(function (stickyOffset) {

@@ -446,10 +532,8 @@ _this.setSticky(stickyOffset);

.dataToRender$
.pipe(operators.distinctUntilChanged(), operators.takeUntil(this.dataSourceChanges), operators.takeWhile(this.isAlive()), operators.tap(function (data) { return _this.scrollStrategy.dataLength = data.length; }), operators.switchMap(function (data) {
return _this.scrollStrategy
.renderedRangeStream
.pipe(operators.map(function (_a) {
var start = _a.start, end = _a.end;
return typeof start !== 'number' || typeof end !== 'number' ? data : data.slice(start, end);
}));
}))
.pipe(operators.distinctUntilChanged(), operators.takeUntil(this.dataSourceChanges), operators.takeUntil(this.destroyed$), operators.tap(function (data) { return _this.scrollStrategy.dataLength = data.length; }), operators.switchMap(function (data) { return _this.scrollStrategy
.renderedRangeStream
.pipe(operators.map(function (_a) {
var start = _a.start, end = _a.end;
return typeof start !== 'number' || typeof end !== 'number' ? data : data.slice(start, end);
})); }))
.subscribe(function (data) {

@@ -506,39 +590,26 @@ _this.zone.run(function () {

};
var TableItemSizeDirective_1;
TableItemSizeDirective.ctorParameters = function () { return [
{ type: core.NgZone }
]; };
__decorate([
core.Input('tvsItemSize')
], TableItemSizeDirective.prototype, "rowHeight", void 0);
__decorate([
core.Input()
], TableItemSizeDirective.prototype, "headerEnabled", void 0);
__decorate([
core.Input()
], TableItemSizeDirective.prototype, "headerHeight", void 0);
__decorate([
core.Input()
], TableItemSizeDirective.prototype, "footerEnabled", void 0);
__decorate([
core.Input()
], TableItemSizeDirective.prototype, "footerHeight", void 0);
__decorate([
core.Input()
], TableItemSizeDirective.prototype, "bufferMultiplier", void 0);
__decorate([
core.ContentChild(table.MatTable, { static: false })
], TableItemSizeDirective.prototype, "table", void 0);
TableItemSizeDirective = TableItemSizeDirective_1 = __decorate([
core.Directive({
selector: 'cdk-virtual-scroll-viewport[tvsItemSize]',
providers: [{
provide: scrolling.VIRTUAL_SCROLL_STRATEGY,
useFactory: _tableVirtualScrollDirectiveStrategyFactory,
deps: [core.forwardRef(function () { return TableItemSizeDirective_1; })]
}]
})
], TableItemSizeDirective);
return TableItemSizeDirective;
}());
TableItemSizeDirective.decorators = [
{ type: core.Directive, args: [{
selector: 'cdk-virtual-scroll-viewport[tvsItemSize]',
providers: [{
provide: scrolling.VIRTUAL_SCROLL_STRATEGY,
useFactory: _tableVirtualScrollDirectiveStrategyFactory,
deps: [core.forwardRef(function () { return TableItemSizeDirective; })]
}]
},] }
];
TableItemSizeDirective.ctorParameters = function () { return [
{ type: core.NgZone }
]; };
TableItemSizeDirective.propDecorators = {
rowHeight: [{ type: core.Input, args: ['tvsItemSize',] }],
headerEnabled: [{ type: core.Input }],
headerHeight: [{ type: core.Input }],
footerEnabled: [{ type: core.Input }],
footerHeight: [{ type: core.Input }],
bufferMultiplier: [{ type: core.Input }],
table: [{ type: core.ContentChild, args: [table.MatTable, { static: false },] }]
};

@@ -548,12 +619,20 @@ var TableVirtualScrollModule = /** @class */ (function () {

}
TableVirtualScrollModule = __decorate([
core.NgModule({
declarations: [TableItemSizeDirective],
imports: [],
exports: [TableItemSizeDirective]
})
], TableVirtualScrollModule);
return TableVirtualScrollModule;
}());
TableVirtualScrollModule.decorators = [
{ type: core.NgModule, args: [{
declarations: [TableItemSizeDirective],
imports: [],
exports: [TableItemSizeDirective]
},] }
];
/*
* Public API Surface of ng-fixed-size-table-virtual-scroll
*/
/**
* Generated bundle index. Do not edit.
*/
exports.FixedSizeTableVirtualScrollStrategy = FixedSizeTableVirtualScrollStrategy;

@@ -560,0 +639,0 @@ exports.TableItemSizeDirective = TableItemSizeDirective;

@@ -1,2 +0,2 @@

!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=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,i,r,n,o){"use strict";
!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";
/*! *****************************************************************************

@@ -15,3 +15,3 @@ Copyright (c) Microsoft Corporation.

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 i in e)e.hasOwnProperty(i)&&(t[i]=e[i])})(t,e)};function s(t,e,i,r){var n,o=arguments.length,a=o<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,i):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,r);else for(var s=t.length-1;s>=0;s--)(n=t[s])&&(a=(o<3?n(a):o>3?n(e,i,a):n(e,i))||a);return o>3&&a&&Object.defineProperty(e,i,a),a}function h(t,e){var i="function"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var r,n,o=i.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){n={error:t}}finally{try{r&&!r.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return a}var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return function(t,e){function i(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype._updateChangeSubscription=function(){var t,e=this;this.initStreams();var i=this._sort,o=this._paginator,a=this._internalPageChanges,s=this._filter,c=this._renderData,l=i?n.merge(i.sortChange,i.initialized):n.of(null),u=o?n.merge(o.page,a,o.initialized):n.of(null),p=this._data,f=n.combineLatest([p,s]).pipe(r.map((function(t){var i=h(t,1)[0];return e._filterData(i)}))),d=n.combineLatest([f,l]).pipe(r.map((function(t){var i=h(t,1)[0];return e._orderData(i)}))),g=n.combineLatest([d,u]).pipe(r.map((function(t){var i=h(t,1)[0];return e._pageData(i)})));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),l=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(r.distinctUntilChanged()),this._dataLength=0}return Object.defineProperty(t.prototype,"dataLength",{get:function(){return this._dataLength},set:function(t){this._dataLength=t,this.onDataLengthChanged()},enumerable:!0,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)},t.prototype.setConfig=function(t){var e=t.rowHeight,i=t.headerHeight,r=t.footerHeight,n=t.bufferMultiplier;this.rowHeight===e&&this.headerHeight===i&&this.footerHeight===r&&this.bufferMultiplier===n||(this.rowHeight=e,this.headerHeight=i,this.footerHeight=r,this.bufferMultiplier=n,this.onDataLengthChanged())},t.prototype.updateContent=function(){if(this.viewport&&this.rowHeight){var t=this.viewport.measureScrollOffset(),e=Math.ceil(this.viewport.getViewportSize()/this.rowHeight),i=Math.max(t-this.headerHeight,0),r=Math.ceil(e*this.bufferMultiplier),n=Math.round(i/this.rowHeight),o=Math.max(0,n),a=Math.max(0,o-r),s=Math.min(this.dataLength,o+e+r),h=a*this.rowHeight;this.viewport.setRenderedContentOffset(h),this.viewport.setRenderedRange({start:a,end:s}),this.indexChange.next(o),this.stickyChange.next(h)}},t=s([e.Injectable()],t)}();function u(t){return t.scrollStrategy}var p=48,f=56,d=!0,g=48,y=!1,b=.7,v=function(){function t(t){this.zone=t,this.alive=!0,this.rowHeight=p,this.headerEnabled=d,this.headerHeight=f,this.footerEnabled=y,this.footerHeight=g,this.bufferMultiplier=b,this.scrollStrategy=new l,this.dataSourceChanges=new n.Subject}var a;return a=t,t.prototype.ngOnDestroy=function(){this.alive=!1,this.dataSourceChanges.complete()},t.prototype.isAlive=function(){var t=this;return function(){return t.alive}},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(i){e.call(t.table,i),t.connectDataSource(i)},this.connectDataSource(this.table.dataSource),this.scrollStrategy.stickyChange.pipe(r.filter((function(){return t.isStickyEnabled()})),r.tap((function(){t.stickyPositions||t.initStickyPositions()})),r.takeWhile(this.isAlive())).subscribe((function(e){t.setSticky(e)}))},t.prototype.connectDataSource=function(t){var e=this;if(this.dataSourceChanges.next(),!(t instanceof c))throw new Error("[tvsItemSize] requires TableVirtualScrollDataSource be set as [dataSource] of [mat-table]");t.dataToRender$.pipe(r.distinctUntilChanged(),r.takeUntil(this.dataSourceChanges),r.takeWhile(this.isAlive()),r.tap((function(t){return e.scrollStrategy.dataLength=t.length})),r.switchMap((function(t){return e.scrollStrategy.renderedRangeStream.pipe(r.map((function(e){var i=e.start,r=e.end;return"number"!=typeof i||"number"!=typeof r?t:t.slice(i,r)})))}))).subscribe((function(i){e.zone.run((function(){t.dataOfRange$.next(i)}))}))},t.prototype.ngOnChanges=function(){var t={rowHeight:+this.rowHeight||p,headerHeight:this.headerEnabled?+this.headerHeight||f: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(".mat-header-row .mat-table-sticky").forEach((function(i){var r=i.parentElement,n=0;e.stickyPositions.has(r)&&(n=e.stickyPositions.get(r)),i.style.top=n-t+"px"})),this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(".mat-footer-row .mat-table-sticky").forEach((function(i){var r=i.parentElement,n=0;e.stickyPositions.has(r)&&(n=e.stickyPositions.get(r)),i.style.bottom=-n+t+"px"}))},t.prototype.initStickyPositions=function(){var t=this;this.stickyPositions=new Map,this.scrollStrategy.viewport.elementRef.nativeElement.querySelectorAll(".mat-header-row .mat-table-sticky").forEach((function(e){var i=e.parentElement;t.stickyPositions.has(i)||t.stickyPositions.set(i,i.offsetTop)}))},t.ctorParameters=function(){return[{type:e.NgZone}]},s([e.Input("tvsItemSize")],t.prototype,"rowHeight",void 0),s([e.Input()],t.prototype,"headerEnabled",void 0),s([e.Input()],t.prototype,"headerHeight",void 0),s([e.Input()],t.prototype,"footerEnabled",void 0),s([e.Input()],t.prototype,"footerHeight",void 0),s([e.Input()],t.prototype,"bufferMultiplier",void 0),s([e.ContentChild(o.MatTable,{static:!1})],t.prototype,"table",void 0),t=a=s([e.Directive({selector:"cdk-virtual-scroll-viewport[tvsItemSize]",providers:[{provide:i.VIRTUAL_SCROLL_STRATEGY,useFactory:u,deps:[e.forwardRef((function(){return a}))]}]})],t)}(),S=function(){function t(){}return t=s([e.NgModule({declarations:[v],imports:[],exports:[v]})],t)}();t.FixedSizeTableVirtualScrollStrategy=l,t.TableItemSizeDirective=v,t.TableVirtualScrollDataSource=c,t.TableVirtualScrollModule=S,t._tableVirtualScrollDirectiveStrategyFactory=u,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,f=n.combineLatest([p,h]).pipe(i.map((function(t){var r=s(t,1)[0];return e._filterData(r)}))),d=n.combineLatest([f,l]).pipe(i.map((function(t){var r=s(t,1)[0];return e._orderData(r)}))),g=n.combineLatest([d,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.measureScrollOffset(),e=Math.ceil(this.viewport.getViewportSize()/this.rowHeight),r=Math.max(t-this.headerHeight,0),i=Math.ceil(e*this.bufferMultiplier),n=Math.round(r/this.rowHeight),o=Math.max(0,n),a=Math.max(0,o-i),s=Math.min(this.dataLength,o+e+i),h=a*this.rowHeight;this.viewport.setRenderedContentOffset(h),this.viewport.setRenderedRange({start:a,end:s}),this.indexChange.next(o),this.stickyChange.next(h)}},t}();function l(t){return t.scrollStrategy}c.decorators=[{type:e.Injectable}];var u=".mat-header-row .mat-table-sticky",p=48,f=56,d=!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=d,this.headerHeight=f,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.delayWhen((function(){return t.stickyPositions?n.of():n.timer(0)})),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||f: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 m=function(){};m.decorators=[{type:e.NgModule,args:[{declarations:[S],imports:[],exports:[S]}]}],t.FixedSizeTableVirtualScrollStrategy=c,t.TableItemSizeDirective=S,t.TableVirtualScrollDataSource=h,t.TableVirtualScrollModule=m,t._tableVirtualScrollDirectiveStrategyFactory=l,Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=ng-table-virtual-scroll.umd.min.js.map

@@ -1,6 +0,5 @@

import { __decorate } from "tslib";
import { Injectable } from '@angular/core';
import { distinctUntilChanged } from 'rxjs/operators';
import { BehaviorSubject, Subject } from 'rxjs';
let FixedSizeTableVirtualScrollStrategy = class FixedSizeTableVirtualScrollStrategy {
export class FixedSizeTableVirtualScrollStrategy {
constructor() {

@@ -49,3 +48,3 @@ this.indexChange = new Subject();

}
this.viewport.scrollToOffset((index - 1) * this.rowHeight + this.headerHeight);
this.viewport.scrollToOffset((index - 1) * this.rowHeight + this.headerHeight, behavior);
}

@@ -84,7 +83,6 @@ setConfig(configs) {

}
};
FixedSizeTableVirtualScrollStrategy = __decorate([
Injectable()
], FixedSizeTableVirtualScrollStrategy);
export { FixedSizeTableVirtualScrollStrategy };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtc2l6ZS10YWJsZS12aXJ0dWFsLXNjcm9sbC1zdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsLyIsInNvdXJjZXMiOlsibGliL2ZpeGVkLXNpemUtdGFibGUtdmlydHVhbC1zY3JvbGwtc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFZaEQsSUFBYSxtQ0FBbUMsR0FBaEQsTUFBYSxtQ0FBbUM7SUFBaEQ7UUFLVSxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7UUFDckMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBSXJDLHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFZLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQztRQUV6RSx3QkFBbUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFXbkUsZ0JBQVcsR0FBRyxDQUFDLENBQUM7SUE0RTFCLENBQUM7SUFyRkMsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxLQUFhO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFJTSxNQUFNLENBQUMsUUFBa0M7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FB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LElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxHQUFHLE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMvRCxNQUFNLGNBQWMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxDQUFDLHdCQUF3QixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBQyxLQUFLLEVBQUUsR0FBRyxFQUFDLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6QyxDQUFDO0NBQ0YsQ0FBQTtBQW5HWSxtQ0FBbUM7SUFEL0MsVUFBVSxFQUFFO0dBQ0EsbUNBQW1DLENBbUcvQztTQW5HWSxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0LCBWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IExpc3RSYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVFNWU3RyYXRlZ3lDb25maWdzIHtcbiAgcm93SGVpZ2h0OiBudW1iZXI7XG4gIGhlYWRlckhlaWdodDogbnVtYmVyO1xuICBmb290ZXJIZWlnaHQ6IG51bWJlcjtcbiAgYnVmZmVyTXVsdGlwbGllcjogbnVtYmVyO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRml4ZWRTaXplVGFibGVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgaW1wbGVtZW50cyBWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kge1xuICBwcml2YXRlIHJvd0hlaWdodCE6IG51bWJlcjtcbiAgcHJpdmF0ZSBoZWFkZXJIZWlnaHQhOiBudW1iZXI7XG4gIHByaXZhdGUgZm9vdGVySGVpZ2h0ITogbnVtYmVyO1xuICBwcml2YXRlIGJ1ZmZlck11bHRpcGxpZXIhOiBudW1iZXI7XG4gIHByaXZhdGUgaW5kZXhDaGFuZ2UgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG4gIHB1YmxpYyBzdGlja3lDaGFuZ2UgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG5cbiAgcHVibGljIHZpZXdwb3J0OiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQ7XG5cbiAgcHVibGljIHJlbmRlcmVkUmFuZ2VTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExpc3RSYW5nZT4oe3N0YXJ0OiAwLCBlbmQ6IDB9KTtcblxuICBwdWJsaWMgc2Nyb2xsZWRJbmRleENoYW5nZSA9IHRoaXMuaW5kZXhDaGFuZ2UucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcblxuICBnZXQgZGF0YUxlbmd0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9kYXRhTGVuZ3RoO1xuICB9XG5cbiAgc2V0IGRhdGFMZW5ndGgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2RhdGFMZW5ndGggPSB2YWx1ZTtcbiAgICB0aGlzLm9uRGF0YUxlbmd0aENoYW5nZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RhdGFMZW5ndGggPSAwO1xuXG4gIHB1YmxpYyBhdHRhY2godmlld3BvcnQ6IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCk6IHZvaWQge1xuICAgIHRoaXMudmlld3BvcnQgPSB2aWV3cG9ydDtcbiAgICB0aGlzLnZpZXdwb3J0LnJlbmRlcmVkUmFuZ2VTdHJlYW0uc3Vic2NyaWJlKHRoaXMucmVuZGVyZWRSYW5nZVN0cmVhbSk7XG4gICAgdGhpcy5vbkRhdGFMZW5ndGhDaGFuZ2VkKCk7XG4gIH1cblxuICBwdWJsaWMgZGV0YWNoKCk6IHZvaWQge1xuICAgIHRoaXMuaW5kZXhDaGFuZ2UuY29tcGxldGUoKTtcbiAgICB0aGlzLnN0aWNreUNoYW5nZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMucmVuZGVyZWRSYW5nZVN0cmVhbS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uQ29udGVudFNjcm9sbGVkKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQ29udGVudCgpO1xuICB9XG5cbiAgcHVibGljIG9uRGF0YUxlbmd0aENoYW5nZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmlld3BvcnQpIHtcbiAgICAgIHRoaXMudmlld3BvcnQuc2V0VG90YWxDb250ZW50U2l6ZSh0aGlzLmRhdGFMZW5ndGggKiB0aGlzLnJvd0hlaWdodCArIHRoaXMuaGVhZGVySGVpZ2h0ICsgdGhpcy5mb290ZXJIZWlnaHQpO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNvbnRlbnRSZW5kZXJlZCgpOiB2b2lkIHtcbiAgICAvLyBuby1vcFxuICB9XG5cbiAgcHVibGljIG9uUmVuZGVyZWRPZmZzZXRDaGFuZ2VkKCk6IHZvaWQge1xuICAgIC8vIG5vLW9wXG4gIH1cblxuICBwdWJsaWMgc2Nyb2xsVG9JbmRleChpbmRleDogbnVtYmVyLCBiZWhhdmlvcj86IFNjcm9sbEJlaGF2aW9yKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnZpZXdwb3J0IHx8ICF0aGlzLnJvd0hlaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnZpZXdwb3J0LnNjcm9sbFRvT2Zmc2V0KChpbmRleCAtIDEgKSAqIHRoaXMucm93SGVpZ2h0ICsgdGhpcy5oZWFkZXJIZWlnaHQpO1xuICB9XG5cbiAgcHVibGljIHNldENvbmZpZyhjb25maWdzOiBUU1ZTdHJhdGVneUNvbmZpZ3MpIHtcbiAgICBjb25zdCB7cm93SGVpZ2h0LCBoZWFkZXJIZWlnaHQsIGZvb3RlckhlaWdodCwgYnVmZmVyTXVsdGlwbGllcn0gPSBjb25maWdzO1xuICAgIGlmIChcbiAgICAgIHRoaXMucm93SGVpZ2h0ID09PSByb3dIZWlnaHRcbiAgICAgICYmIHRoaXMuaGVhZGVySGVpZ2h0ID09PSBoZWFkZXJIZWlnaHRcbiAgICAgICYmIHRoaXMuZm9vdGVySGVpZ2h0ID09PSBmb290ZXJIZWlnaHRcbiAgICAgICYmIHRoaXMuYnVmZmVyTXVsdGlwbGllciA9PT0gYnVmZmVyTXVsdGlwbGllclxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnJvd0hlaWdodCA9IHJvd0hlaWdodDtcbiAgICB0aGlzLmhlYWRlckhlaWdodCA9IGhlYWRlckhlaWdodDtcbiAgICB0aGlzLmZvb3RlckhlaWdodCA9IGZvb3RlckhlaWdodDtcbiAgICB0aGlzLmJ1ZmZlck11bHRpcGxpZXIgPSBidWZmZXJNdWx0aXBsaWVyO1xuICAgIHRoaXMub25EYXRhTGVuZ3RoQ2hhbmdlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb250ZW50KCkge1xuICAgIGlmICghdGhpcy52aWV3cG9ydCB8fCAhdGhpcy5yb3dIZWlnaHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgc2Nyb2xsT2Zmc2V0ID0gdGhpcy52aWV3cG9ydC5tZWFzdXJlU2Nyb2xsT2Zmc2V0KCk7XG4gICAgY29uc3QgYW1vdW50ID0gTWF0aC5jZWlsKHRoaXMudmlld3BvcnQuZ2V0Vmlld3BvcnRTaXplKCkgLyB0aGlzLnJvd0hlaWdodCk7XG4gICAgY29uc3Qgb2Zmc2V0ID0gTWF0aC5tYXgoc2Nyb2xsT2Zmc2V0IC0gdGhpcy5oZWFkZXJIZWlnaHQsIDApO1xuICAgIGNvbnN0IGJ1ZmZlciA9IE1hdGguY2VpbChhbW91bnQgKiB0aGlzLmJ1ZmZlck11bHRpcGxpZXIpO1xuXG4gICAgY29uc3Qgc2tpcCA9IE1hdGgucm91bmQob2Zmc2V0IC8gdGhpcy5yb3dIZWlnaHQpO1xuICAgIGNvbnN0IGluZGV4ID0gTWF0aC5tYXgoMCwgc2tpcCk7XG4gICAgY29uc3Qgc3RhcnQgPSBNYXRoLm1heCgwLCBpbmRleCAtIGJ1ZmZlcik7XG4gICAgY29uc3QgZW5kID0gTWF0aC5taW4odGhpcy5kYXRhTGVuZ3RoLCBpbmRleCArIGFtb3VudCArIGJ1ZmZlcik7XG4gICAgY29uc3QgcmVuZGVyZWRPZmZzZXQgPSBzdGFydCAqIHRoaXMucm93SGVpZ2h0O1xuICAgIHRoaXMudmlld3BvcnQuc2V0UmVuZGVyZWRDb250ZW50T2Zmc2V0KHJlbmRlcmVkT2Zmc2V0KTtcbiAgICB0aGlzLnZpZXdwb3J0LnNldFJlbmRlcmVkUmFuZ2Uoe3N0YXJ0LCBlbmR9KTtcbiAgICB0aGlzLmluZGV4Q2hhbmdlLm5leHQoaW5kZXgpO1xuICAgIHRoaXMuc3RpY2t5Q2hhbmdlLm5leHQocmVuZGVyZWRPZmZzZXQpO1xuICB9XG59XG4iXX0=
}
FixedSizeTableVirtualScrollStrategy.decorators = [
{ type: Injectable }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtc2l6ZS10YWJsZS12aXJ0dWFsLXNjcm9sbC1zdHJhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsL3NyYy9saWIvZml4ZWQtc2l6ZS10YWJsZS12aXJ0dWFsLXNjcm9sbC1zdHJhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBWWhELE1BQU0sT0FBTyxtQ0FBbUM7SUFEaEQ7UUFNVSxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7UUFDckMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBSXJDLHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFZLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQztRQUV6RSx3QkFBbUIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7UUFXbkUsZ0JBQVcsR0FBRyxDQUFDLENBQUM7SUE0RTFCLENBQUM7SUFyRkMsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxLQUFhO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFJTSxNQUFNLENBQUMsUUFBa0M7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFB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QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUM7UUFDMUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssR0FBRyxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUM7UUFDL0QsTUFBTSxjQUFjLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEVBQUMsS0FBSyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekMsQ0FBQzs7O1lBbkdGLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0LCBWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IExpc3RSYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVFNWU3RyYXRlZ3lDb25maWdzIHtcbiAgcm93SGVpZ2h0OiBudW1iZXI7XG4gIGhlYWRlckhlaWdodDogbnVtYmVyO1xuICBmb290ZXJIZWlnaHQ6IG51bWJlcjtcbiAgYnVmZmVyTXVsdGlwbGllcjogbnVtYmVyO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRml4ZWRTaXplVGFibGVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgaW1wbGVtZW50cyBWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kge1xuICBwcml2YXRlIHJvd0hlaWdodCE6IG51bWJlcjtcbiAgcHJpdmF0ZSBoZWFkZXJIZWlnaHQhOiBudW1iZXI7XG4gIHByaXZhdGUgZm9vdGVySGVpZ2h0ITogbnVtYmVyO1xuICBwcml2YXRlIGJ1ZmZlck11bHRpcGxpZXIhOiBudW1iZXI7XG4gIHByaXZhdGUgaW5kZXhDaGFuZ2UgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG4gIHB1YmxpYyBzdGlja3lDaGFuZ2UgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG5cbiAgcHVibGljIHZpZXdwb3J0OiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQ7XG5cbiAgcHVibGljIHJlbmRlcmVkUmFuZ2VTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExpc3RSYW5nZT4oe3N0YXJ0OiAwLCBlbmQ6IDB9KTtcblxuICBwdWJsaWMgc2Nyb2xsZWRJbmRleENoYW5nZSA9IHRoaXMuaW5kZXhDaGFuZ2UucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcblxuICBnZXQgZGF0YUxlbmd0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9kYXRhTGVuZ3RoO1xuICB9XG5cbiAgc2V0IGRhdGFMZW5ndGgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX2RhdGFMZW5ndGggPSB2YWx1ZTtcbiAgICB0aGlzLm9uRGF0YUxlbmd0aENoYW5nZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2RhdGFMZW5ndGggPSAwO1xuXG4gIHB1YmxpYyBhdHRhY2godmlld3BvcnQ6IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCk6IHZvaWQge1xuICAgIHRoaXMudmlld3BvcnQgPSB2aWV3cG9ydDtcbiAgICB0aGlzLnZpZXdwb3J0LnJlbmRlcmVkUmFuZ2VTdHJlYW0uc3Vic2NyaWJlKHRoaXMucmVuZGVyZWRSYW5nZVN0cmVhbSk7XG4gICAgdGhpcy5vbkRhdGFMZW5ndGhDaGFuZ2VkKCk7XG4gIH1cblxuICBwdWJsaWMgZGV0YWNoKCk6IHZvaWQge1xuICAgIHRoaXMuaW5kZXhDaGFuZ2UuY29tcGxldGUoKTtcbiAgICB0aGlzLnN0aWNreUNoYW5nZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMucmVuZGVyZWRSYW5nZVN0cmVhbS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uQ29udGVudFNjcm9sbGVkKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQ29udGVudCgpO1xuICB9XG5cbiAgcHVibGljIG9uRGF0YUxlbmd0aENoYW5nZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmlld3BvcnQpIHtcbiAgICAgIHRoaXMudmlld3BvcnQuc2V0VG90YWxDb250ZW50U2l6ZSh0aGlzLmRhdGFMZW5ndGggKiB0aGlzLnJvd0hlaWdodCArIHRoaXMuaGVhZGVySGVpZ2h0ICsgdGhpcy5mb290ZXJIZWlnaHQpO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZUNvbnRlbnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNvbnRlbnRSZW5kZXJlZCgpOiB2b2lkIHtcbiAgICAvLyBuby1vcFxuICB9XG5cbiAgcHVibGljIG9uUmVuZGVyZWRPZmZzZXRDaGFuZ2VkKCk6IHZvaWQge1xuICAgIC8vIG5vLW9wXG4gIH1cblxuICBwdWJsaWMgc2Nyb2xsVG9JbmRleChpbmRleDogbnVtYmVyLCBiZWhhdmlvcj86IFNjcm9sbEJlaGF2aW9yKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnZpZXdwb3J0IHx8ICF0aGlzLnJvd0hlaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnZpZXdwb3J0LnNjcm9sbFRvT2Zmc2V0KChpbmRleCAtIDEgKSAqIHRoaXMucm93SGVpZ2h0ICsgdGhpcy5oZWFkZXJIZWlnaHQsIGJlaGF2aW9yKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRDb25maWcoY29uZmlnczogVFNWU3RyYXRlZ3lDb25maWdzKSB7XG4gICAgY29uc3Qge3Jvd0hlaWdodCwgaGVhZGVySGVpZ2h0LCBmb290ZXJIZWlnaHQsIGJ1ZmZlck11bHRpcGxpZXJ9ID0gY29uZmlncztcbiAgICBpZiAoXG4gICAgICB0aGlzLnJvd0hlaWdodCA9PT0gcm93SGVpZ2h0XG4gICAgICAmJiB0aGlzLmhlYWRlckhlaWdodCA9PT0gaGVhZGVySGVpZ2h0XG4gICAgICAmJiB0aGlzLmZvb3RlckhlaWdodCA9PT0gZm9vdGVySGVpZ2h0XG4gICAgICAmJiB0aGlzLmJ1ZmZlck11bHRpcGxpZXIgPT09IGJ1ZmZlck11bHRpcGxpZXJcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5yb3dIZWlnaHQgPSByb3dIZWlnaHQ7XG4gICAgdGhpcy5oZWFkZXJIZWlnaHQgPSBoZWFkZXJIZWlnaHQ7XG4gICAgdGhpcy5mb290ZXJIZWlnaHQgPSBmb290ZXJIZWlnaHQ7XG4gICAgdGhpcy5idWZmZXJNdWx0aXBsaWVyID0gYnVmZmVyTXVsdGlwbGllcjtcbiAgICB0aGlzLm9uRGF0YUxlbmd0aENoYW5nZWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29udGVudCgpIHtcbiAgICBpZiAoIXRoaXMudmlld3BvcnQgfHwgIXRoaXMucm93SGVpZ2h0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHNjcm9sbE9mZnNldCA9IHRoaXMudmlld3BvcnQubWVhc3VyZVNjcm9sbE9mZnNldCgpO1xuICAgIGNvbnN0IGFtb3VudCA9IE1hdGguY2VpbCh0aGlzLnZpZXdwb3J0LmdldFZpZXdwb3J0U2l6ZSgpIC8gdGhpcy5yb3dIZWlnaHQpO1xuICAgIGNvbnN0IG9mZnNldCA9IE1hdGgubWF4KHNjcm9sbE9mZnNldCAtIHRoaXMuaGVhZGVySGVpZ2h0LCAwKTtcbiAgICBjb25zdCBidWZmZXIgPSBNYXRoLmNlaWwoYW1vdW50ICogdGhpcy5idWZmZXJNdWx0aXBsaWVyKTtcblxuICAgIGNvbnN0IHNraXAgPSBNYXRoLnJvdW5kKG9mZnNldCAvIHRoaXMucm93SGVpZ2h0KTtcbiAgICBjb25zdCBpbmRleCA9IE1hdGgubWF4KDAsIHNraXApO1xuICAgIGNvbnN0IHN0YXJ0ID0gTWF0aC5tYXgoMCwgaW5kZXggLSBidWZmZXIpO1xuICAgIGNvbnN0IGVuZCA9IE1hdGgubWluKHRoaXMuZGF0YUxlbmd0aCwgaW5kZXggKyBhbW91bnQgKyBidWZmZXIpO1xuICAgIGNvbnN0IHJlbmRlcmVkT2Zmc2V0ID0gc3RhcnQgKiB0aGlzLnJvd0hlaWdodDtcbiAgICB0aGlzLnZpZXdwb3J0LnNldFJlbmRlcmVkQ29udGVudE9mZnNldChyZW5kZXJlZE9mZnNldCk7XG4gICAgdGhpcy52aWV3cG9ydC5zZXRSZW5kZXJlZFJhbmdlKHtzdGFydCwgZW5kfSk7XG4gICAgdGhpcy5pbmRleENoYW5nZS5uZXh0KGluZGV4KTtcbiAgICB0aGlzLnN0aWNreUNoYW5nZS5uZXh0KHJlbmRlcmVkT2Zmc2V0KTtcbiAgfVxufVxuIl19

@@ -39,2 +39,2 @@ import { combineLatest, merge, of, ReplaySubject, Subscription } from 'rxjs';

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGF0YS1zb3VyY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy10YWJsZS12aXJ0dWFsLXNjcm9sbC8iLCJzb3VyY2VzIjpbImxpYi90YWJsZS1kYXRhLXNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLGFBQWEsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBVyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkgsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSTdELE1BQU0sT0FBTyw0QkFBZ0MsU0FBUSxrQkFBcUI7SUFLeEUseUJBQXlCOztRQUN2QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsTUFBTSxLQUFLLEdBQW1CLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QyxNQUFNLFVBQVUsR0FBd0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzNELE1BQU0sb0JBQW9CLEdBQWtCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sT0FBTyxHQUE0QixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDekQsTUFBTSxXQUFXLEdBQXlCLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUU5RCxNQUFNLFVBQVUsR0FBbUMsS0FBSyxDQUFDLENBQUM7WUFDeEQsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBNEIsQ0FBQyxDQUFDO1lBQ3ZFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNYLE1BQU0sVUFBVSxHQUF3QyxVQUFVLENBQUMsQ0FBQztZQUNsRSxLQUFLLENBQ0gsVUFBVSxDQUFDLElBQUksRUFDZixvQkFBb0IsRUFDcEIsVUFBVSxDQUFDLFdBQVcsQ0FDUyxDQUFDLENBQUM7WUFDbkMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ1gsTUFBTSxVQUFVLEdBQW9CLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7YUFDdEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQzthQUMxRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEQsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDO2FBQzNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUvQyxNQUFBLElBQUksQ0FBQywwQkFBMEIsMENBQUUsV0FBVyxHQUFHO1FBQy9DLElBQUksQ0FBQywwQkFBMEIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JELElBQUksQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLENBQ2pDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUMvRCxDQUFDO1FBQ0YsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEdBQUcsQ0FDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQzVELENBQUM7SUFDSixDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxhQUFhLENBQU0sQ0FBQyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7U0FDMUI7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNYXRTb3J0LCBTb3J0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IsIFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5cbmV4cG9ydCBjbGFzcyBUYWJsZVZpcnR1YWxTY3JvbGxEYXRhU291cmNlPFQ+IGV4dGVuZHMgTWF0VGFibGVEYXRhU291cmNlPFQ+IHtcbiAgcHVibGljIGRhdGFUb1JlbmRlciQ6IFN1YmplY3Q8VFtdPjtcbiAgcHVibGljIGRhdGFPZlJhbmdlJDogU3ViamVjdDxUW10+O1xuICBwcml2YXRlIHN0cmVhbXNSZWFkeTogYm9vbGVhbjtcblxuICBfdXBkYXRlQ2hhbmdlU3Vic2NyaXB0aW9uKCkge1xuICAgIHRoaXMuaW5pdFN0cmVhbXMoKTtcbiAgICBjb25zdCBfc29ydDogTWF0U29ydCB8IG51bGwgPSB0aGlzWydfc29ydCddO1xuICAgIGNvbnN0IF9wYWdpbmF0b3I6IE1hdFBhZ2luYXRvciB8IG51bGwgPSB0aGlzWydfcGFnaW5hdG9yJ107XG4gICAgY29uc3QgX2ludGVybmFsUGFnZUNoYW5nZXM6IFN1YmplY3Q8dm9pZD4gPSB0aGlzWydfaW50ZXJuYWxQYWdlQ2hhbmdlcyddO1xuICAgIGNvbnN0IF9maWx0ZXI6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gdGhpc1snX2ZpbHRlciddO1xuICAgIGNvbnN0IF9yZW5kZXJEYXRhOiBCZWhhdmlvclN1YmplY3Q8VFtdPiA9IHRoaXNbJ19yZW5kZXJEYXRhJ107XG5cbiAgICBjb25zdCBzb3J0Q2hhbmdlOiBPYnNlcnZhYmxlPFNvcnQgfCBudWxsIHwgdm9pZD4gPSBfc29ydCA/XG4gICAgICBtZXJnZShfc29ydC5zb3J0Q2hhbmdlLCBfc29ydC5pbml0aWFsaXplZCkgYXMgT2JzZXJ2YWJsZTxTb3J0IHwgdm9pZD4gOlxuICAgICAgb2YobnVsbCk7XG4gICAgY29uc3QgcGFnZUNoYW5nZTogT2JzZXJ2YWJsZTxQYWdlRXZlbnQgfCBudWxsIHwgdm9pZD4gPSBfcGFnaW5hdG9yID9cbiAgICAgIG1lcmdlKFxuICAgICAgICBfcGFnaW5hdG9yLnBhZ2UsXG4gICAgICAgIF9pbnRlcm5hbFBhZ2VDaGFuZ2VzLFxuICAgICAgICBfcGFnaW5hdG9yLmluaXRpYWxpemVkXG4gICAgICApIGFzIE9ic2VydmFibGU8UGFnZUV2ZW50IHwgdm9pZD4gOlxuICAgICAgb2YobnVsbCk7XG4gICAgY29uc3QgZGF0YVN0cmVhbTogT2JzZXJ2YWJsZTxUW10+ID0gdGhpc1snX2RhdGEnXTtcbiAgICBjb25zdCBmaWx0ZXJlZERhdGEgPSBjb21iaW5lTGF0ZXN0KFtkYXRhU3RyZWFtLCBfZmlsdGVyXSlcbiAgICAgIC5waXBlKG1hcCgoW2RhdGFdKSA9PiB0aGlzLl9maWx0ZXJEYXRhKGRhdGEpKSk7XG4gICAgY29uc3Qgb3JkZXJlZERhdGEgPSBjb21iaW5lTGF0ZXN0KFtmaWx0ZXJlZERhdGEsIHNvcnRDaGFuZ2VdKVxuICAgICAgLnBpcGUobWFwKChbZGF0YV0pID0+IHRoaXMuX29yZGVyRGF0YShkYXRhKSkpO1xuICAgIGNvbnN0IHBhZ2luYXRlZERhdGEgPSBjb21iaW5lTGF0ZXN0KFtvcmRlcmVkRGF0YSwgcGFnZUNoYW5nZV0pXG4gICAgICAucGlwZShtYXAoKFtkYXRhXSkgPT4gdGhpcy5fcGFnZURhdGEoZGF0YSkpKTtcblxuICAgIHRoaXMuX3JlbmRlckNoYW5nZXNTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fcmVuZGVyQ2hhbmdlc1N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICB0aGlzLl9yZW5kZXJDaGFuZ2VzU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHBhZ2luYXRlZERhdGEuc3Vic2NyaWJlKGRhdGEgPT4gdGhpcy5kYXRhVG9SZW5kZXIkLm5leHQoZGF0YSkpXG4gICAgKTtcbiAgICB0aGlzLl9yZW5kZXJDaGFuZ2VzU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHRoaXMuZGF0YU9mUmFuZ2UkLnN1YnNjcmliZShkYXRhID0+IF9yZW5kZXJEYXRhLm5leHQoZGF0YSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFN0cmVhbXMoKSB7XG4gICAgaWYgKCF0aGlzLnN0cmVhbXNSZWFkeSkge1xuICAgICAgdGhpcy5kYXRhVG9SZW5kZXIkID0gbmV3IFJlcGxheVN1YmplY3Q8VFtdPigxKTtcbiAgICAgIHRoaXMuZGF0YU9mUmFuZ2UkID0gbmV3IFJlcGxheVN1YmplY3Q8VFtdPigxKTtcbiAgICAgIHRoaXMuc3RyZWFtc1JlYWR5ID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZGF0YS1zb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy10YWJsZS12aXJ0dWFsLXNjcm9sbC9zcmMvbGliL3RhYmxlLWRhdGEtc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsYUFBYSxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFXLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuSCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJN0QsTUFBTSxPQUFPLDRCQUFnQyxTQUFRLGtCQUFxQjtJQUt4RSx5QkFBeUI7O1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixNQUFNLEtBQUssR0FBbUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLE1BQU0sVUFBVSxHQUF3QixJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDM0QsTUFBTSxvQkFBb0IsR0FBa0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDekUsTUFBTSxPQUFPLEdBQTRCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6RCxNQUFNLFdBQVcsR0FBeUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTlELE1BQU0sVUFBVSxHQUFtQyxLQUFLLENBQUMsQ0FBQztZQUN4RCxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsV0FBVyxDQUE0QixDQUFDLENBQUM7WUFDdkUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ1gsTUFBTSxVQUFVLEdBQXdDLFVBQVUsQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FDSCxVQUFVLENBQUMsSUFBSSxFQUNmLG9CQUFvQixFQUNwQixVQUFVLENBQUMsV0FBVyxDQUNTLENBQUMsQ0FBQztZQUNuQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDWCxNQUFNLFVBQVUsR0FBb0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQzthQUN0RCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO2FBQzFELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7YUFDM0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRS9DLE1BQUEsSUFBSSxDQUFDLDBCQUEwQiwwQ0FBRSxXQUFXLEdBQUc7UUFDL0MsSUFBSSxDQUFDLDBCQUEwQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEdBQUcsQ0FDakMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQy9ELENBQUM7UUFDRixJQUFJLENBQUMsMEJBQTBCLENBQUMsR0FBRyxDQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDNUQsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxhQUFhLENBQU0sQ0FBQyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGFBQWEsQ0FBTSxDQUFDLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztTQUMxQjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWVyZ2UsIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IE1hdFNvcnQsIFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IE1hdFBhZ2luYXRvciwgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcblxuZXhwb3J0IGNsYXNzIFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2U8VD4gZXh0ZW5kcyBNYXRUYWJsZURhdGFTb3VyY2U8VD4ge1xuICBwdWJsaWMgZGF0YVRvUmVuZGVyJDogU3ViamVjdDxUW10+O1xuICBwdWJsaWMgZGF0YU9mUmFuZ2UkOiBTdWJqZWN0PFRbXT47XG4gIHByaXZhdGUgc3RyZWFtc1JlYWR5OiBib29sZWFuO1xuXG4gIF91cGRhdGVDaGFuZ2VTdWJzY3JpcHRpb24oKSB7XG4gICAgdGhpcy5pbml0U3RyZWFtcygpO1xuICAgIGNvbnN0IF9zb3J0OiBNYXRTb3J0IHwgbnVsbCA9IHRoaXNbJ19zb3J0J107XG4gICAgY29uc3QgX3BhZ2luYXRvcjogTWF0UGFnaW5hdG9yIHwgbnVsbCA9IHRoaXNbJ19wYWdpbmF0b3InXTtcbiAgICBjb25zdCBfaW50ZXJuYWxQYWdlQ2hhbmdlczogU3ViamVjdDx2b2lkPiA9IHRoaXNbJ19pbnRlcm5hbFBhZ2VDaGFuZ2VzJ107XG4gICAgY29uc3QgX2ZpbHRlcjogQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4gPSB0aGlzWydfZmlsdGVyJ107XG4gICAgY29uc3QgX3JlbmRlckRhdGE6IEJlaGF2aW9yU3ViamVjdDxUW10+ID0gdGhpc1snX3JlbmRlckRhdGEnXTtcblxuICAgIGNvbnN0IHNvcnRDaGFuZ2U6IE9ic2VydmFibGU8U29ydCB8IG51bGwgfCB2b2lkPiA9IF9zb3J0ID9cbiAgICAgIG1lcmdlKF9zb3J0LnNvcnRDaGFuZ2UsIF9zb3J0LmluaXRpYWxpemVkKSBhcyBPYnNlcnZhYmxlPFNvcnQgfCB2b2lkPiA6XG4gICAgICBvZihudWxsKTtcbiAgICBjb25zdCBwYWdlQ2hhbmdlOiBPYnNlcnZhYmxlPFBhZ2VFdmVudCB8IG51bGwgfCB2b2lkPiA9IF9wYWdpbmF0b3IgP1xuICAgICAgbWVyZ2UoXG4gICAgICAgIF9wYWdpbmF0b3IucGFnZSxcbiAgICAgICAgX2ludGVybmFsUGFnZUNoYW5nZXMsXG4gICAgICAgIF9wYWdpbmF0b3IuaW5pdGlhbGl6ZWRcbiAgICAgICkgYXMgT2JzZXJ2YWJsZTxQYWdlRXZlbnQgfCB2b2lkPiA6XG4gICAgICBvZihudWxsKTtcbiAgICBjb25zdCBkYXRhU3RyZWFtOiBPYnNlcnZhYmxlPFRbXT4gPSB0aGlzWydfZGF0YSddO1xuICAgIGNvbnN0IGZpbHRlcmVkRGF0YSA9IGNvbWJpbmVMYXRlc3QoW2RhdGFTdHJlYW0sIF9maWx0ZXJdKVxuICAgICAgLnBpcGUobWFwKChbZGF0YV0pID0+IHRoaXMuX2ZpbHRlckRhdGEoZGF0YSkpKTtcbiAgICBjb25zdCBvcmRlcmVkRGF0YSA9IGNvbWJpbmVMYXRlc3QoW2ZpbHRlcmVkRGF0YSwgc29ydENoYW5nZV0pXG4gICAgICAucGlwZShtYXAoKFtkYXRhXSkgPT4gdGhpcy5fb3JkZXJEYXRhKGRhdGEpKSk7XG4gICAgY29uc3QgcGFnaW5hdGVkRGF0YSA9IGNvbWJpbmVMYXRlc3QoW29yZGVyZWREYXRhLCBwYWdlQ2hhbmdlXSlcbiAgICAgIC5waXBlKG1hcCgoW2RhdGFdKSA9PiB0aGlzLl9wYWdlRGF0YShkYXRhKSkpO1xuXG4gICAgdGhpcy5fcmVuZGVyQ2hhbmdlc1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl9yZW5kZXJDaGFuZ2VzU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICAgIHRoaXMuX3JlbmRlckNoYW5nZXNTdWJzY3JpcHRpb24uYWRkKFxuICAgICAgcGFnaW5hdGVkRGF0YS5zdWJzY3JpYmUoZGF0YSA9PiB0aGlzLmRhdGFUb1JlbmRlciQubmV4dChkYXRhKSlcbiAgICApO1xuICAgIHRoaXMuX3JlbmRlckNoYW5nZXNTdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5kYXRhT2ZSYW5nZSQuc3Vic2NyaWJlKGRhdGEgPT4gX3JlbmRlckRhdGEubmV4dChkYXRhKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U3RyZWFtcygpIHtcbiAgICBpZiAoIXRoaXMuc3RyZWFtc1JlYWR5KSB7XG4gICAgICB0aGlzLmRhdGFUb1JlbmRlciQgPSBuZXcgUmVwbGF5U3ViamVjdDxUW10+KDEpO1xuICAgICAgdGhpcy5kYXRhT2ZSYW5nZSQgPSBuZXcgUmVwbGF5U3ViamVjdDxUW10+KDEpO1xuICAgICAgdGhpcy5zdHJlYW1zUmVhZHkgPSB0cnVlO1xuICAgIH1cbiAgfVxufVxuIl19

@@ -1,10 +0,8 @@

var TableItemSizeDirective_1;
import { __decorate } from "tslib";
import { AfterContentInit, ContentChild, Directive, forwardRef, Input, NgZone, OnChanges, OnDestroy } from '@angular/core';
import { ContentChild, Directive, forwardRef, Input, NgZone } from '@angular/core';
import { VIRTUAL_SCROLL_STRATEGY } from '@angular/cdk/scrolling';
import { distinctUntilChanged, filter, map, switchMap, takeUntil, takeWhile, tap } from 'rxjs/operators';
import { delayWhen, distinctUntilChanged, filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';
import { TableVirtualScrollDataSource } from './table-data-source';
import { MatTable } from '@angular/material/table';
import { FixedSizeTableVirtualScrollStrategy } from './fixed-size-table-virtual-scroll-strategy';
import { Subject } from 'rxjs';
import { of, Subject, timer } from 'rxjs';
export function _tableVirtualScrollDirectiveStrategyFactory(tableDir) {

@@ -23,6 +21,6 @@ return tableDir.scrollStrategy;

};
let TableItemSizeDirective = TableItemSizeDirective_1 = class TableItemSizeDirective {
export class TableItemSizeDirective {
constructor(zone) {
this.zone = zone;
this.alive = true;
this.destroyed$ = new Subject();
// tslint:disable-next-line:no-input-rename

@@ -39,8 +37,6 @@ this.rowHeight = defaults.rowHeight;

ngOnDestroy() {
this.alive = false;
this.destroyed$.next();
this.destroyed$.complete();
this.dataSourceChanges.complete();
}
isAlive() {
return () => this.alive;
}
isStickyEnabled() {

@@ -59,7 +55,7 @@ return !!this.scrollStrategy.viewport && this.table['_headerRowDefs']

this.scrollStrategy.stickyChange
.pipe(filter(() => this.isStickyEnabled()), tap(() => {
.pipe(filter(() => this.isStickyEnabled()), delayWhen(() => !this.stickyPositions ? timer(0) : of()), tap(() => {
if (!this.stickyPositions) {
this.initStickyPositions();
}
}), takeWhile(this.isAlive()))
}), takeUntil(this.destroyed$))
.subscribe((stickyOffset) => {

@@ -74,3 +70,3 @@ this.setSticky(stickyOffset);

.dataToRender$
.pipe(distinctUntilChanged(), takeUntil(this.dataSourceChanges), takeWhile(this.isAlive()), tap(data => this.scrollStrategy.dataLength = data.length), switchMap(data => this.scrollStrategy
.pipe(distinctUntilChanged(), takeUntil(this.dataSourceChanges), takeUntil(this.destroyed$), tap(data => this.scrollStrategy.dataLength = data.length), switchMap(data => this.scrollStrategy
.renderedRangeStream

@@ -127,38 +123,25 @@ .pipe(map(({ start, end }) => typeof start !== 'number' || typeof end !== 'number' ? data : data.slice(start, end)))))

}
};
}
TableItemSizeDirective.decorators = [
{ type: Directive, args: [{
selector: 'cdk-virtual-scroll-viewport[tvsItemSize]',
providers: [{
provide: VIRTUAL_SCROLL_STRATEGY,
useFactory: _tableVirtualScrollDirectiveStrategyFactory,
deps: [forwardRef(() => TableItemSizeDirective)]
}]
},] }
];
TableItemSizeDirective.ctorParameters = () => [
{ type: NgZone }
];
__decorate([
Input('tvsItemSize')
], TableItemSizeDirective.prototype, "rowHeight", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "headerEnabled", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "headerHeight", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "footerEnabled", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "footerHeight", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "bufferMultiplier", void 0);
__decorate([
ContentChild(MatTable, { static: false })
], TableItemSizeDirective.prototype, "table", void 0);
TableItemSizeDirective = TableItemSizeDirective_1 = __decorate([
Directive({
selector: 'cdk-virtual-scroll-viewport[tvsItemSize]',
providers: [{
provide: VIRTUAL_SCROLL_STRATEGY,
useFactory: _tableVirtualScrollDirectiveStrategyFactory,
deps: [forwardRef(() => TableItemSizeDirective_1)]
}]
})
], TableItemSizeDirective);
export { TableItemSizeDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsLyIsInNvdXJjZXMiOlsibGliL3RhYmxlLWl0ZW0tc2l6ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVqRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE1BQU0sVUFBVSwyQ0FBMkMsQ0FBQyxRQUFnQztJQUMxRixPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUM7QUFDakMsQ0FBQztBQUVELE1BQU0sb0JBQW9CLEdBQUcsbUNBQW1DLENBQUM7QUFDakUsTUFBTSxvQkFBb0IsR0FBRyxtQ0FBbUMsQ0FBQztBQUVqRSxNQUFNLFFBQVEsR0FBRztJQUNmLFNBQVMsRUFBRSxFQUFFO0lBQ2IsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLElBQUk7SUFDbkIsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLEtBQUs7SUFDcEIsZ0JBQWdCLEVBQUUsR0FBRztDQUN0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L0lZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBmb3J3YXJkUmVmLCBJbnB1dCwgTmdab25lLCBPbkNoYW5nZXMsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVklSVFVBTF9TQ1JPTExfU1RSQVRFR1kgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRha2VXaGlsZSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVGFibGVWaXJ0dWFsU2Nyb2xsRGF0YVNvdXJjZSB9IGZyb20gJy4vdGFibGUtZGF0YS1zb3VyY2UnO1xuaW1wb3J0IHsgTWF0VGFibGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBGaXhlZFNpemVUYWJsZVZpcnR1YWxTY3JvbGxTdHJhdGVneSB9IGZyb20gJy4vZml4ZWQtc2l6ZS10YWJsZS12aXJ0dWFsLXNjcm9sbC1zdHJhdGVneSc7XG5pbXBvcnQgeyBDZGtIZWFkZXJSb3dEZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gX3RhYmxlVmlydHVhbFNjcm9sbERpcmVjdGl2ZVN0cmF0ZWd5RmFjdG9yeSh0YWJsZURpcjogVGFibGVJdGVtU2l6ZURpcmVjdGl2ZSkge1xuICByZXR1cm4gdGFibGVEaXIuc2Nyb2xsU3RyYXRlZ3k7XG59XG5cbmNvbnN0IHN0aWNreUhlYWRlclNlbGVjdG9yID0gJy5tYXQtaGVhZGVyLXJvdyAubWF0LXRhYmxlLXN0aWNreSc7XG5jb25zdCBzdGlja3lGb290ZXJTZWxlY3RvciA9ICcubWF0LWZvb3Rlci1yb3cgLm1hdC10YWJsZS1zdGlja3knO1xuXG5jb25zdCBkZWZhdWx0cyA9IHtcbiAgcm93SGVpZ2h0OiA0OCxcbiAgaGVhZGVySGVpZ2h0OiA1NixcbiAgaGVhZGVyRW5hYmxlZDogdHJ1ZSxcbiAgZm9vdGVySGVpZ2h0OiA0OCxcbiAgZm9vdGVyRW5hYmxlZDogZmFsc2UsXG4gIGJ1ZmZlck11bHRpcGxpZXI6IDAuN1xufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0W3R2c0l0ZW1TaXplXScsXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBWSVJUVUFMX1NDUk9MTF9TVFJBVEVHWSxcbiAgICB1c2VGYWN0b3J5OiBfdGFibGVWaXJ0dWFsU2Nyb2xsRGlyZWN0aXZlU3RyYXRlZ3lGYWN0b3J5LFxuICAgIGRlcHM6IFtmb3J3YXJkUmVmKCgpID0+IFRhYmxlSXRlbVNpemVEaXJlY3RpdmUpXVxuICB9XVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUl0ZW1TaXplRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGFsaXZlID0gdHJ1ZTtcblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgndHZzSXRlbVNpemUnKVxuICByb3dIZWlnaHQgPSBkZWZhdWx0cy5yb3dIZWlnaHQ7XG5cbiAgQElucHV0KClcbiAgaGVhZGVyRW5hYmxlZCA9IGRlZmF1bHRzLmhlYWRlckVuYWJsZWQ7XG5cbiAgQElucHV0KClcbiAgaGVhZGVySGVpZ2h0ID0gZGVmYXVsdHMuaGVhZGVySGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlckVuYWJsZWQgPSBkZWZhdWx0cy5mb290ZXJFbmFibGVkO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlckhlaWdodCA9IGRlZmF1bHRzLmZvb3RlckhlaWdodDtcblxuICBASW5wdXQoKVxuICBidWZmZXJNdWx0aXBsaWVyID0gZGVmYXVsdHMuYnVmZmVyTXVsdGlwbGllcjtcblxuICBAQ29udGVudENoaWxkKE1hdFRhYmxlLCB7c3RhdGljOiBmYWxzZX0pXG4gIHRhYmxlOiBNYXRUYWJsZTxhbnk+O1xuXG4gIHNjcm9sbFN0cmF0ZWd5ID0gbmV3IEZpeGVkU2l6ZVRhYmxlVmlydHVhbFNjcm9sbFN0cmF0ZWd5KCk7XG5cbiAgZGF0YVNvdXJjZUNoYW5nZXMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgc3RpY2t5UG9zaXRpb25zOiBNYXA8SFRNTEVsZW1lbnQsIG51bWJlcj47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB6b25lOiBOZ1pvbmUpIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuYWxpdmUgPSBmYWxzZTtcbiAgICB0aGlzLmRhdGFTb3VyY2VDaGFuZ2VzLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGlzQWxpdmUoKSB7XG4gICAgcmV0dXJuICgpID0+IHRoaXMuYWxpdmU7XG4gIH1cblxuICBwcml2YXRlIGlzU3RpY2t5RW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnNjcm9sbFN0cmF0ZWd5LnZpZXdwb3J0ICYmICh0aGlzLnRhYmxlWydfaGVhZGVyUm93RGVmcyddIGFzIENka0hlYWRlclJvd0RlZltdKVxuICAgICAgLm1hcChkZWYgPT4gZGVmLnN0aWNreSlcbiAgICAgIC5yZWR1Y2UoKHByZXZTdGF0ZSwgc3RhdGUpID0+IHByZXZTdGF0ZSAmJiBzdGF0ZSwgdHJ1ZSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgY29uc3Qgc3dpdGNoRGF0YVNvdXJjZU9yaWdpbiA9IHRoaXMudGFibGVbJ19zd2l0Y2hEYXRhU291cmNlJ107XG4gICAgdGhpcy50YWJsZVsnX3N3aXRjaERhdGFTb3VyY2UnXSA9IChkYXRhU291cmNlOiBhbnkpID0+IHtcbiAgICAgIHN3aXRjaERhdGFTb3VyY2VPcmlnaW4uY2FsbCh0aGlzLnRhYmxlLCBkYXRhU291cmNlKTtcbiAgICAgIHRoaXMuY29ubmVjdERhdGFTb3VyY2UoZGF0YVNvdXJjZSk7XG4gICAgfTtcblxuICAgIHRoaXMuY29ubmVjdERhdGFTb3VyY2UodGhpcy50YWJsZS5kYXRhU291cmNlKTtcblxuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kuc3RpY2t5Q2hhbmdlXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMuaXNTdGlja3lFbmFibGVkKCkpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIGlmICghdGhpcy5zdGlja3lQb3NpdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdFN0aWNreVBvc2l0aW9ucygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIHRha2VXaGlsZSh0aGlzLmlzQWxpdmUoKSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHN0aWNreU9mZnNldCkgPT4ge1xuICAgICAgICB0aGlzLnNldFN0aWNreShzdGlja3lPZmZzZXQpO1xuICAgICAgfSk7XG4gIH1cblxuICBjb25uZWN0RGF0YVNvdXJjZShkYXRhU291cmNlOiBhbnkpIHtcbiAgICB0aGlzLmRhdGFTb3VyY2VDaGFuZ2VzLm5leHQoKTtcbiAgICBpZiAoZGF0YVNvdXJjZSBpbnN0YW5jZW9mIFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2UpIHtcbiAgICAgIGRhdGFTb3VyY2VcbiAgICAgICAgLmRhdGFUb1JlbmRlciRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5kYXRhU291cmNlQ2hhbmdlcyksXG4gICAgICAgICAgdGFrZVdoaWxlKHRoaXMuaXNBbGl2ZSgpKSxcbiAgICAgICAgICB0YXAoZGF0YSA9PiB0aGlzLnNjcm9sbFN0cmF0ZWd5LmRhdGFMZW5ndGggPSBkYXRhLmxlbmd0aCksXG4gICAgICAgICAgc3dpdGNoTWFwKGRhdGEgPT5cbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3lcbiAgICAgICAgICAgICAgLnJlbmRlcmVkUmFuZ2VTdHJlYW1cbiAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh7c3RhcnQsIGVuZH0pID0+IHR5cGVvZiBzdGFydCAhPT0gJ251bWJlcicgfHwgdHlwZW9mIGVuZCAhPT0gJ251bWJlcicgPyBkYXRhIDogZGF0YS5zbGljZShzdGFydCwgZW5kKSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgZGF0YVNvdXJjZS5kYXRhT2ZSYW5nZSQubmV4dChkYXRhKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignW3R2c0l0ZW1TaXplXSByZXF1aXJlcyBUYWJsZVZpcnR1YWxTY3JvbGxEYXRhU291cmNlIGJlIHNldCBhcyBbZGF0YVNvdXJjZV0gb2YgW21hdC10YWJsZV0nKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICByb3dIZWlnaHQ6ICt0aGlzLnJvd0hlaWdodCB8fCBkZWZhdWx0cy5yb3dIZWlnaHQsXG4gICAgICBoZWFkZXJIZWlnaHQ6IHRoaXMuaGVhZGVyRW5hYmxlZCA/ICt0aGlzLmhlYWRlckhlaWdodCB8fCBkZWZhdWx0cy5oZWFkZXJIZWlnaHQgOiAwLFxuICAgICAgZm9vdGVySGVpZ2h0OiB0aGlzLmZvb3RlckVuYWJsZWQgPyArdGhpcy5mb290ZXJIZWlnaHQgfHwgZGVmYXVsdHMuZm9vdGVySGVpZ2h0IDogMCxcbiAgICAgIGJ1ZmZlck11bHRpcGxpZXI6ICt0aGlzLmJ1ZmZlck11bHRpcGxpZXIgfHwgZGVmYXVsdHMuYnVmZmVyTXVsdGlwbGllclxuICAgIH07XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS5zZXRDb25maWcoY29uZmlnKTtcbiAgfVxuXG5cbiAgc2V0U3RpY2t5KG9mZnNldCkge1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kudmlld3BvcnQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc3RpY2t5SGVhZGVyU2VsZWN0b3IpXG4gICAgICAuZm9yRWFjaCgoZWw6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGVsLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgIGxldCBiYXNlT2Zmc2V0ID0gMDtcbiAgICAgICAgaWYgKHRoaXMuc3RpY2t5UG9zaXRpb25zLmhhcyhwYXJlbnQpKSB7XG4gICAgICAgICAgYmFzZU9mZnNldCA9IHRoaXMuc3RpY2t5UG9zaXRpb25zLmdldChwYXJlbnQpO1xuICAgICAgICB9XG4gICAgICAgIGVsLnN0eWxlLnRvcCA9IGAke2Jhc2VPZmZzZXQgLSBvZmZzZXR9cHhgO1xuICAgICAgfSk7XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzdGlja3lGb290ZXJTZWxlY3RvcilcbiAgICAgIC5mb3JFYWNoKChlbDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgY29uc3QgcGFyZW50ID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgICAgbGV0IGJhc2VPZmZzZXQgPSAwO1xuICAgICAgICBpZiAodGhpcy5zdGlja3lQb3NpdGlvbnMuaGFzKHBhcmVudCkpIHtcbiAgICAgICAgICBiYXNlT2Zmc2V0ID0gdGhpcy5zdGlja3lQb3NpdGlvbnMuZ2V0KHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuc3R5bGUuYm90dG9tID0gYCR7LWJhc2VPZmZzZXQgKyBvZmZzZXR9cHhgO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRTdGlja3lQb3NpdGlvbnMoKSB7XG4gICAgdGhpcy5zdGlja3lQb3NpdGlvbnMgPSBuZXcgTWFwPEhUTUxFbGVtZW50LCBudW1iZXI+KCk7XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzdGlja3lIZWFkZXJTZWxlY3RvcilcbiAgICAgIC5mb3JFYWNoKGVsID0+IHtcbiAgICAgICAgY29uc3QgcGFyZW50ID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgICAgaWYgKCF0aGlzLnN0aWNreVBvc2l0aW9ucy5oYXMocGFyZW50KSkge1xuICAgICAgICAgIHRoaXMuc3RpY2t5UG9zaXRpb25zLnNldChwYXJlbnQsIHBhcmVudC5vZmZzZXRUb3ApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxufVxuIl19
TableItemSizeDirective.propDecorators = {
rowHeight: [{ type: Input, args: ['tvsItemSize',] }],
headerEnabled: [{ type: Input }],
headerHeight: [{ type: Input }],
footerEnabled: [{ type: Input }],
footerHeight: [{ type: Input }],
bufferMultiplier: [{ type: Input }],
table: [{ type: ContentChild, args: [MatTable, { static: false },] }]
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsL3NyYy9saWIvdGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsWUFBWSxFQUNaLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFHUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFakcsT0FBTyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE1BQU0sVUFBVSwyQ0FBMkMsQ0FBQyxRQUFnQztJQUMxRixPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUM7QUFDakMsQ0FBQztBQUVELE1BQU0sb0JBQW9CLEdBQUcsbUNBQW1DLENBQUM7QUFDakUsTUFBTSxvQkFBb0IsR0FBRyxtQ0FBbUMsQ0FBQztBQUVqRSxNQUFNLFFBQVEsR0FBRztJQUNmLFNBQVMsRUFBRSxFQUFFO0lBQ2IsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLElBQUk7SUFDbkIsWUFBWSxFQUFFLEVBQUU7SUFDaEIsYUFBYSxFQUFFLEtBQUs7SUFDcEIsZ0JBQWdCLEVBQUUsR0FB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biAgRGlyZWN0aXZlLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZJUlRVQUxfU0NST0xMX1NUUkFURUdZIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBkZWxheVdoZW4sIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2UgfSBmcm9tICcuL3RhYmxlLWRhdGEtc291cmNlJztcbmltcG9ydCB7IE1hdFRhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgRml4ZWRTaXplVGFibGVWaXJ0dWFsU2Nyb2xsU3RyYXRlZ3kgfSBmcm9tICcuL2ZpeGVkLXNpemUtdGFibGUtdmlydHVhbC1zY3JvbGwtc3RyYXRlZ3knO1xuaW1wb3J0IHsgQ2RrSGVhZGVyUm93RGVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RhYmxlJztcbmltcG9ydCB7IG9mLCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gX3RhYmxlVmlydHVhbFNjcm9sbERpcmVjdGl2ZVN0cmF0ZWd5RmFjdG9yeSh0YWJsZURpcjogVGFibGVJdGVtU2l6ZURpcmVjdGl2ZSkge1xuICByZXR1cm4gdGFibGVEaXIuc2Nyb2xsU3RyYXRlZ3k7XG59XG5cbmNvbnN0IHN0aWNreUhlYWRlclNlbGVjdG9yID0gJy5tYXQtaGVhZGVyLXJvdyAubWF0LXRhYmxlLXN0aWNreSc7XG5jb25zdCBzdGlja3lGb290ZXJTZWxlY3RvciA9ICcubWF0LWZvb3Rlci1yb3cgLm1hdC10YWJsZS1zdGlja3knO1xuXG5jb25zdCBkZWZhdWx0cyA9IHtcbiAgcm93SGVpZ2h0OiA0OCxcbiAgaGVhZGVySGVpZ2h0OiA1NixcbiAgaGVhZGVyRW5hYmxlZDogdHJ1ZSxcbiAgZm9vdGVySGVpZ2h0OiA0OCxcbiAgZm9vdGVyRW5hYmxlZDogZmFsc2UsXG4gIGJ1ZmZlck11bHRpcGxpZXI6IDAuN1xufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0W3R2c0l0ZW1TaXplXScsXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBWSVJUVUFMX1NDUk9MTF9TVFJBVEVHWSxcbiAgICB1c2VGYWN0b3J5OiBfdGFibGVWaXJ0dWFsU2Nyb2xsRGlyZWN0aXZlU3RyYXRlZ3lGYWN0b3J5LFxuICAgIGRlcHM6IFtmb3J3YXJkUmVmKCgpID0+IFRhYmxlSXRlbVNpemVEaXJlY3RpdmUpXVxuICB9XVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUl0ZW1TaXplRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCd0dnNJdGVtU2l6ZScpXG4gIHJvd0hlaWdodDogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMucm93SGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGhlYWRlckVuYWJsZWQ6IGJvb2xlYW4gPSBkZWZhdWx0cy5oZWFkZXJFbmFibGVkO1xuXG4gIEBJbnB1dCgpXG4gIGhlYWRlckhlaWdodDogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMuaGVhZGVySGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlckVuYWJsZWQ6IGJvb2xlYW4gPSBkZWZhdWx0cy5mb290ZXJFbmFibGVkO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlckhlaWdodDogc3RyaW5nIHwgbnVtYmVyID0gZGVmYXVsdHMuZm9vdGVySGVpZ2h0O1xuXG4gIEBJbnB1dCgpXG4gIGJ1ZmZlck11bHRpcGxpZXI6IHN0cmluZyB8IG51bWJlciA9IGRlZmF1bHRzLmJ1ZmZlck11bHRpcGxpZXI7XG5cbiAgQENvbnRlbnRDaGlsZChNYXRUYWJsZSwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHRhYmxlOiBNYXRUYWJsZTxhbnk+O1xuXG4gIHNjcm9sbFN0cmF0ZWd5ID0gbmV3IEZpeGVkU2l6ZVRhYmxlVmlydHVhbFNjcm9sbFN0cmF0ZWd5KCk7XG5cbiAgZGF0YVNvdXJjZUNoYW5nZXMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgc3RpY2t5UG9zaXRpb25zOiBNYXA8SFRNTEVsZW1lbnQsIG51bWJlcj47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB6b25lOiBOZ1pvbmUpIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5kYXRhU291cmNlQ2hhbmdlcy5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1N0aWNreUVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydCAmJiAodGhpcy50YWJsZVsnX2hlYWRlclJvd0RlZnMnXSBhcyBDZGtIZWFkZXJSb3dEZWZbXSlcbiAgICAgIC5tYXAoZGVmID0+IGRlZi5zdGlja3kpXG4gICAgICAucmVkdWNlKChwcmV2U3RhdGUsIHN0YXRlKSA9PiBwcmV2U3RhdGUgJiYgc3RhdGUsIHRydWUpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIGNvbnN0IHN3aXRjaERhdGFTb3VyY2VPcmlnaW4gPSB0aGlzLnRhYmxlWydfc3dpdGNoRGF0YVNvdXJjZSddO1xuICAgIHRoaXMudGFibGVbJ19zd2l0Y2hEYXRhU291cmNlJ10gPSAoZGF0YVNvdXJjZTogYW55KSA9PiB7XG4gICAgICBzd2l0Y2hEYXRhU291cmNlT3JpZ2luLmNhbGwodGhpcy50YWJsZSwgZGF0YVNvdXJjZSk7XG4gICAgICB0aGlzLmNvbm5lY3REYXRhU291cmNlKGRhdGFTb3VyY2UpO1xuICAgIH07XG5cbiAgICB0aGlzLmNvbm5lY3REYXRhU291cmNlKHRoaXMudGFibGUuZGF0YVNvdXJjZSk7XG5cbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5LnN0aWNreUNoYW5nZVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLmlzU3RpY2t5RW5hYmxlZCgpKSxcbiAgICAgICAgZGVsYXlXaGVuKCgpID0+ICF0aGlzLnN0aWNreVBvc2l0aW9ucyA/IHRpbWVyKDApIDogb2YoKSksXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLnN0aWNreVBvc2l0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5pbml0U3RpY2t5UG9zaXRpb25zKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHN0aWNreU9mZnNldCkgPT4ge1xuICAgICAgICB0aGlzLnNldFN0aWNreShzdGlja3lPZmZzZXQpO1xuICAgICAgfSk7XG4gIH1cblxuICBjb25uZWN0RGF0YVNvdXJjZShkYXRhU291cmNlOiBhbnkpIHtcbiAgICB0aGlzLmRhdGFTb3VyY2VDaGFuZ2VzLm5leHQoKTtcbiAgICBpZiAoZGF0YVNvdXJjZSBpbnN0YW5jZW9mIFRhYmxlVmlydHVhbFNjcm9sbERhdGFTb3VyY2UpIHtcbiAgICAgIGRhdGFTb3VyY2VcbiAgICAgICAgLmRhdGFUb1JlbmRlciRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5kYXRhU291cmNlQ2hhbmdlcyksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksXG4gICAgICAgICAgdGFwKGRhdGEgPT4gdGhpcy5zY3JvbGxTdHJhdGVneS5kYXRhTGVuZ3RoID0gZGF0YS5sZW5ndGgpLFxuICAgICAgICAgIHN3aXRjaE1hcChkYXRhID0+XG4gICAgICAgICAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5XG4gICAgICAgICAgICAgIC5yZW5kZXJlZFJhbmdlU3RyZWFtXG4gICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoe1xuICAgICAgICAgICAgICAgICAgICAgICBzdGFydCxcbiAgICAgICAgICAgICAgICAgICAgICAgZW5kXG4gICAgICAgICAgICAgICAgICAgICB9KSA9PiB0eXBlb2Ygc3RhcnQgIT09ICdudW1iZXInIHx8IHR5cGVvZiBlbmQgIT09ICdudW1iZXInID8gZGF0YSA6IGRhdGEuc2xpY2Uoc3RhcnQsIGVuZCkpXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIGRhdGFTb3VyY2UuZGF0YU9mUmFuZ2UkLm5leHQoZGF0YSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1t0dnNJdGVtU2l6ZV0gcmVxdWlyZXMgVGFibGVWaXJ0dWFsU2Nyb2xsRGF0YVNvdXJjZSBiZSBzZXQgYXMgW2RhdGFTb3VyY2VdIG9mIFttYXQtdGFibGVdJyk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgcm93SGVpZ2h0OiArdGhpcy5yb3dIZWlnaHQgfHwgZGVmYXVsdHMucm93SGVpZ2h0LFxuICAgICAgaGVhZGVySGVpZ2h0OiB0aGlzLmhlYWRlckVuYWJsZWQgPyArdGhpcy5oZWFkZXJIZWlnaHQgfHwgZGVmYXVsdHMuaGVhZGVySGVpZ2h0IDogMCxcbiAgICAgIGZvb3RlckhlaWdodDogdGhpcy5mb290ZXJFbmFibGVkID8gK3RoaXMuZm9vdGVySGVpZ2h0IHx8IGRlZmF1bHRzLmZvb3RlckhlaWdodCA6IDAsXG4gICAgICBidWZmZXJNdWx0aXBsaWVyOiArdGhpcy5idWZmZXJNdWx0aXBsaWVyIHx8IGRlZmF1bHRzLmJ1ZmZlck11bHRpcGxpZXJcbiAgICB9O1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kuc2V0Q29uZmlnKGNvbmZpZyk7XG4gIH1cblxuXG4gIHNldFN0aWNreShvZmZzZXQ6IG51bWJlcikge1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kudmlld3BvcnQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoc3RpY2t5SGVhZGVyU2VsZWN0b3IpXG4gICAgICAuZm9yRWFjaCgoZWw6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHBhcmVudCA9IGVsLnBhcmVudEVsZW1lbnQ7XG4gICAgICAgIGxldCBiYXNlT2Zmc2V0ID0gMDtcbiAgICAgICAgaWYgKHRoaXMuc3RpY2t5UG9zaXRpb25zLmhhcyhwYXJlbnQpKSB7XG4gICAgICAgICAgYmFzZU9mZnNldCA9IHRoaXMuc3RpY2t5UG9zaXRpb25zLmdldChwYXJlbnQpO1xuICAgICAgICB9XG4gICAgICAgIGVsLnN0eWxlLnRvcCA9IGAke2Jhc2VPZmZzZXQgLSBvZmZzZXR9cHhgO1xuICAgICAgfSk7XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzdGlja3lGb290ZXJTZWxlY3RvcilcbiAgICAgIC5mb3JFYWNoKChlbDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgY29uc3QgcGFyZW50ID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgICAgbGV0IGJhc2VPZmZzZXQgPSAwO1xuICAgICAgICBpZiAodGhpcy5zdGlja3lQb3NpdGlvbnMuaGFzKHBhcmVudCkpIHtcbiAgICAgICAgICBiYXNlT2Zmc2V0ID0gdGhpcy5zdGlja3lQb3NpdGlvbnMuZ2V0KHBhcmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgZWwuc3R5bGUuYm90dG9tID0gYCR7LWJhc2VPZmZzZXQgKyBvZmZzZXR9cHhgO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRTdGlja3lQb3NpdGlvbnMoKSB7XG4gICAgdGhpcy5zdGlja3lQb3NpdGlvbnMgPSBuZXcgTWFwPEhUTUxFbGVtZW50LCBudW1iZXI+KCk7XG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneS52aWV3cG9ydC5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChzdGlja3lIZWFkZXJTZWxlY3RvcilcbiAgICAgIC5mb3JFYWNoKGVsID0+IHtcbiAgICAgICAgY29uc3QgcGFyZW50ID0gZWwucGFyZW50RWxlbWVudDtcbiAgICAgICAgaWYgKCF0aGlzLnN0aWNreVBvc2l0aW9ucy5oYXMocGFyZW50KSkge1xuICAgICAgICAgIHRoaXMuc3RpY2t5UG9zaXRpb25zLnNldChwYXJlbnQsIHBhcmVudC5vZmZzZXRUb3ApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxufVxuIl19

@@ -1,14 +0,12 @@

import { __decorate } from "tslib";
import { NgModule } from '@angular/core';
import { TableItemSizeDirective } from './table-item-size.directive';
let TableVirtualScrollModule = class TableVirtualScrollModule {
};
TableVirtualScrollModule = __decorate([
NgModule({
declarations: [TableItemSizeDirective],
imports: [],
exports: [TableItemSizeDirective]
})
], TableVirtualScrollModule);
export { TableVirtualScrollModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlydHVhbC1zY3JvbGwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmctdGFibGUtdmlydHVhbC1zY3JvbGwvIiwic291cmNlcyI6WyJsaWIvdGFibGUtdmlydHVhbC1zY3JvbGwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBUXJFLElBQWEsd0JBQXdCLEdBQXJDLE1BQWEsd0JBQXdCO0NBQ3BDLENBQUE7QUFEWSx3QkFBd0I7SUFMcEMsUUFBUSxDQUFDO1FBQ1IsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7UUFDdEMsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztLQUNsQyxDQUFDO0dBQ1csd0JBQXdCLENBQ3BDO1NBRFksd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhYmxlSXRlbVNpemVEaXJlY3RpdmUgfSBmcm9tICcuL3RhYmxlLWl0ZW0tc2l6ZS5kaXJlY3RpdmUnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1RhYmxlSXRlbVNpemVEaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbXSxcbiAgZXhwb3J0czogW1RhYmxlSXRlbVNpemVEaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlVmlydHVhbFNjcm9sbE1vZHVsZSB7XG59XG4iXX0=
export class TableVirtualScrollModule {
}
TableVirtualScrollModule.decorators = [
{ type: NgModule, args: [{
declarations: [TableItemSizeDirective],
imports: [],
exports: [TableItemSizeDirective]
},] }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdmlydHVhbC1zY3JvbGwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFibGUtdmlydHVhbC1zY3JvbGwvc3JjL2xpYi90YWJsZS12aXJ0dWFsLXNjcm9sbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQVFyRSxNQUFNLE9BQU8sd0JBQXdCOzs7WUFMcEMsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO2dCQUN0QyxPQUFPLEVBQUUsRUFBRTtnQkFDWCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQzthQUNsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWJsZUl0ZW1TaXplRGlyZWN0aXZlIH0gZnJvbSAnLi90YWJsZS1pdGVtLXNpemUuZGlyZWN0aXZlJztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtUYWJsZUl0ZW1TaXplRGlyZWN0aXZlXSxcbiAgaW1wb3J0czogW10sXG4gIGV4cG9ydHM6IFtUYWJsZUl0ZW1TaXplRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVZpcnR1YWxTY3JvbGxNb2R1bGUge1xufVxuIl19

@@ -5,2 +5,2 @@ /**

export * from './public-api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdGFibGUtdmlydHVhbC1zY3JvbGwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy10YWJsZS12aXJ0dWFsLXNjcm9sbC8iLCJzb3VyY2VzIjpbIm5nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdGFibGUtdmlydHVhbC1zY3JvbGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9uZy10YWJsZS12aXJ0dWFsLXNjcm9sbC9zcmMvbmctdGFibGUtdmlydHVhbC1zY3JvbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==

@@ -8,2 +8,2 @@ /*

export * from './lib/table-data-source';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5nLWZpeGVkLXNpemUtdGFibGUtdmlydHVhbC1zY3JvbGxcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS12aXJ0dWFsLXNjcm9sbC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUtaXRlbS1zaXplLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9maXhlZC1zaXplLXRhYmxlLXZpcnR1YWwtc2Nyb2xsLXN0cmF0ZWd5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlLWRhdGEtc291cmNlJztcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25nLXRhYmxlLXZpcnR1YWwtc2Nyb2xsL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbmctZml4ZWQtc2l6ZS10YWJsZS12aXJ0dWFsLXNjcm9sbFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlLXZpcnR1YWwtc2Nyb2xsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS1pdGVtLXNpemUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpeGVkLXNpemUtdGFibGUtdmlydHVhbC1zY3JvbGwtc3RyYXRlZ3knO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUtZGF0YS1zb3VyY2UnO1xuIl19

@@ -1,6 +0,5 @@

import { __decorate } from 'tslib';
import { Injectable, NgZone, Input, ContentChild, Directive, forwardRef, NgModule } from '@angular/core';
import { Injectable, Directive, forwardRef, NgZone, Input, ContentChild, NgModule } from '@angular/core';
import { VIRTUAL_SCROLL_STRATEGY } from '@angular/cdk/scrolling';
import { map, distinctUntilChanged, filter, tap, takeWhile, takeUntil, switchMap } from 'rxjs/operators';
import { merge, of, combineLatest, Subscription, ReplaySubject, Subject, BehaviorSubject } from 'rxjs';
import { map, distinctUntilChanged, filter, delayWhen, tap, takeUntil, switchMap } from 'rxjs/operators';
import { merge, of, combineLatest, Subscription, ReplaySubject, Subject, BehaviorSubject, timer } from 'rxjs';
import { MatTableDataSource, MatTable } from '@angular/material/table';

@@ -44,3 +43,3 @@

let FixedSizeTableVirtualScrollStrategy = class FixedSizeTableVirtualScrollStrategy {
class FixedSizeTableVirtualScrollStrategy {
constructor() {

@@ -89,3 +88,3 @@ this.indexChange = new Subject();

}
this.viewport.scrollToOffset((index - 1) * this.rowHeight + this.headerHeight);
this.viewport.scrollToOffset((index - 1) * this.rowHeight + this.headerHeight, behavior);
}

@@ -124,8 +123,7 @@ setConfig(configs) {

}
};
FixedSizeTableVirtualScrollStrategy = __decorate([
Injectable()
], FixedSizeTableVirtualScrollStrategy);
}
FixedSizeTableVirtualScrollStrategy.decorators = [
{ type: Injectable }
];
var TableItemSizeDirective_1;
function _tableVirtualScrollDirectiveStrategyFactory(tableDir) {

@@ -144,6 +142,6 @@ return tableDir.scrollStrategy;

};
let TableItemSizeDirective = TableItemSizeDirective_1 = class TableItemSizeDirective {
class TableItemSizeDirective {
constructor(zone) {
this.zone = zone;
this.alive = true;
this.destroyed$ = new Subject();
// tslint:disable-next-line:no-input-rename

@@ -160,8 +158,6 @@ this.rowHeight = defaults.rowHeight;

ngOnDestroy() {
this.alive = false;
this.destroyed$.next();
this.destroyed$.complete();
this.dataSourceChanges.complete();
}
isAlive() {
return () => this.alive;
}
isStickyEnabled() {

@@ -180,7 +176,7 @@ return !!this.scrollStrategy.viewport && this.table['_headerRowDefs']

this.scrollStrategy.stickyChange
.pipe(filter(() => this.isStickyEnabled()), tap(() => {
.pipe(filter(() => this.isStickyEnabled()), delayWhen(() => !this.stickyPositions ? timer(0) : of()), tap(() => {
if (!this.stickyPositions) {
this.initStickyPositions();
}
}), takeWhile(this.isAlive()))
}), takeUntil(this.destroyed$))
.subscribe((stickyOffset) => {

@@ -195,3 +191,3 @@ this.setSticky(stickyOffset);

.dataToRender$
.pipe(distinctUntilChanged(), takeUntil(this.dataSourceChanges), takeWhile(this.isAlive()), tap(data => this.scrollStrategy.dataLength = data.length), switchMap(data => this.scrollStrategy
.pipe(distinctUntilChanged(), takeUntil(this.dataSourceChanges), takeUntil(this.destroyed$), tap(data => this.scrollStrategy.dataLength = data.length), switchMap(data => this.scrollStrategy
.renderedRangeStream

@@ -248,48 +244,36 @@ .pipe(map(({ start, end }) => typeof start !== 'number' || typeof end !== 'number' ? data : data.slice(start, end)))))

}
};
}
TableItemSizeDirective.decorators = [
{ type: Directive, args: [{
selector: 'cdk-virtual-scroll-viewport[tvsItemSize]',
providers: [{
provide: VIRTUAL_SCROLL_STRATEGY,
useFactory: _tableVirtualScrollDirectiveStrategyFactory,
deps: [forwardRef(() => TableItemSizeDirective)]
}]
},] }
];
TableItemSizeDirective.ctorParameters = () => [
{ type: NgZone }
];
__decorate([
Input('tvsItemSize')
], TableItemSizeDirective.prototype, "rowHeight", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "headerEnabled", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "headerHeight", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "footerEnabled", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "footerHeight", void 0);
__decorate([
Input()
], TableItemSizeDirective.prototype, "bufferMultiplier", void 0);
__decorate([
ContentChild(MatTable, { static: false })
], TableItemSizeDirective.prototype, "table", void 0);
TableItemSizeDirective = TableItemSizeDirective_1 = __decorate([
Directive({
selector: 'cdk-virtual-scroll-viewport[tvsItemSize]',
providers: [{
provide: VIRTUAL_SCROLL_STRATEGY,
useFactory: _tableVirtualScrollDirectiveStrategyFactory,
deps: [forwardRef(() => TableItemSizeDirective_1)]
}]
})
], TableItemSizeDirective);
let TableVirtualScrollModule = class TableVirtualScrollModule {
TableItemSizeDirective.propDecorators = {
rowHeight: [{ type: Input, args: ['tvsItemSize',] }],
headerEnabled: [{ type: Input }],
headerHeight: [{ type: Input }],
footerEnabled: [{ type: Input }],
footerHeight: [{ type: Input }],
bufferMultiplier: [{ type: Input }],
table: [{ type: ContentChild, args: [MatTable, { static: false },] }]
};
TableVirtualScrollModule = __decorate([
NgModule({
declarations: [TableItemSizeDirective],
imports: [],
exports: [TableItemSizeDirective]
})
], TableVirtualScrollModule);
class TableVirtualScrollModule {
}
TableVirtualScrollModule.decorators = [
{ type: NgModule, args: [{
declarations: [TableItemSizeDirective],
imports: [],
exports: [TableItemSizeDirective]
},] }
];
/*

@@ -296,0 +280,0 @@ * Public API Surface of ng-fixed-size-table-virtual-scroll

@@ -8,9 +8,9 @@ import { AfterContentInit, NgZone, OnChanges, OnDestroy } from '@angular/core';

private zone;
private alive;
rowHeight: number;
private destroyed$;
rowHeight: string | number;
headerEnabled: boolean;
headerHeight: number;
headerHeight: string | number;
footerEnabled: boolean;
footerHeight: number;
bufferMultiplier: number;
footerHeight: string | number;
bufferMultiplier: string | number;
table: MatTable<any>;

@@ -22,3 +22,2 @@ scrollStrategy: FixedSizeTableVirtualScrollStrategy;

ngOnDestroy(): void;
private isAlive;
private isStickyEnabled;

@@ -28,4 +27,4 @@ ngAfterContentInit(): void;

ngOnChanges(): void;
setSticky(offset: any): void;
setSticky(offset: number): void;
private initStickyPositions;
}

@@ -1,1 +0,1 @@

{"__symbolic":"module","version":4,"metadata":{"TableVirtualScrollModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"TableItemSizeDirective"}],"imports":[],"exports":[{"__symbolic":"reference","name":"TableItemSizeDirective"}]}]}],"members":{}},"_tableVirtualScrollDirectiveStrategyFactory":{"__symbolic":"function","parameters":["tableDir"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"tableDir"},"member":"scrollStrategy"}},"TableItemSizeDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":25,"character":1},"arguments":[{"selector":"cdk-virtual-scroll-viewport[tvsItemSize]","providers":[{"provide":{"__symbolic":"reference","module":"@angular/cdk/scrolling","name":"VIRTUAL_SCROLL_STRATEGY","line":28,"character":13},"useFactory":{"__symbolic":"reference","name":"_tableVirtualScrollDirectiveStrategyFactory"},"deps":[{"__symbolic":"reference","name":"TableItemSizeDirective"}]}]}]}],"members":{"rowHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3},"arguments":["tvsItemSize"]}]}],"headerEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":3}}]}],"headerHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3}}]}],"footerEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":3}}]}],"footerHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":3}}]}],"bufferMultiplier":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3}}]}],"table":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":55,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/table","name":"MatTable","line":55,"character":16},{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":64,"character":28}]}],"ngOnDestroy":[{"__symbolic":"method"}],"isAlive":[{"__symbolic":"method"}],"isStickyEnabled":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"connectDataSource":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"setSticky":[{"__symbolic":"method"}],"initStickyPositions":[{"__symbolic":"method"}]}},"TSVStrategyConfigs":{"__symbolic":"interface"},"FixedSizeTableVirtualScrollStrategy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1}}],"members":{"attach":[{"__symbolic":"method"}],"detach":[{"__symbolic":"method"}],"onContentScrolled":[{"__symbolic":"method"}],"onDataLengthChanged":[{"__symbolic":"method"}],"onContentRendered":[{"__symbolic":"method"}],"onRenderedOffsetChanged":[{"__symbolic":"method"}],"scrollToIndex":[{"__symbolic":"method"}],"setConfig":[{"__symbolic":"method"}],"updateContent":[{"__symbolic":"method"}]}},"TableVirtualScrollDataSource":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableDataSource","line":6,"character":53},"members":{"_updateChangeSubscription":[{"__symbolic":"method"}],"initStreams":[{"__symbolic":"method"}]}}},"origins":{"TableVirtualScrollModule":"./lib/table-virtual-scroll.module","_tableVirtualScrollDirectiveStrategyFactory":"./lib/table-item-size.directive","TableItemSizeDirective":"./lib/table-item-size.directive","TSVStrategyConfigs":"./lib/fixed-size-table-virtual-scroll-strategy","FixedSizeTableVirtualScrollStrategy":"./lib/fixed-size-table-virtual-scroll-strategy","TableVirtualScrollDataSource":"./lib/table-data-source"},"importAs":"ng-table-virtual-scroll"}
{"__symbolic":"module","version":4,"metadata":{"TableVirtualScrollModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"TableItemSizeDirective"}],"imports":[],"exports":[{"__symbolic":"reference","name":"TableItemSizeDirective"}]}]}],"members":{}},"_tableVirtualScrollDirectiveStrategyFactory":{"__symbolic":"function","parameters":["tableDir"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"tableDir"},"member":"scrollStrategy"}},"TableItemSizeDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":34,"character":1},"arguments":[{"selector":"cdk-virtual-scroll-viewport[tvsItemSize]","providers":[{"provide":{"__symbolic":"reference","module":"@angular/cdk/scrolling","name":"VIRTUAL_SCROLL_STRATEGY","line":37,"character":13},"useFactory":{"__symbolic":"reference","name":"_tableVirtualScrollDirectiveStrategyFactory"},"deps":[{"__symbolic":"reference","name":"TableItemSizeDirective"}]}]}]}],"members":{"rowHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":3},"arguments":["tvsItemSize"]}]}],"headerEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":3}}]}],"headerHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3}}]}],"footerEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3}}]}],"footerHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"bufferMultiplier":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":61,"character":3}}]}],"table":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":64,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/material/table","name":"MatTable","line":64,"character":16},{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":73,"character":28}]}],"ngOnDestroy":[{"__symbolic":"method"}],"isStickyEnabled":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"connectDataSource":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"setSticky":[{"__symbolic":"method"}],"initStickyPositions":[{"__symbolic":"method"}]}},"TSVStrategyConfigs":{"__symbolic":"interface"},"FixedSizeTableVirtualScrollStrategy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":13,"character":1}}],"members":{"attach":[{"__symbolic":"method"}],"detach":[{"__symbolic":"method"}],"onContentScrolled":[{"__symbolic":"method"}],"onDataLengthChanged":[{"__symbolic":"method"}],"onContentRendered":[{"__symbolic":"method"}],"onRenderedOffsetChanged":[{"__symbolic":"method"}],"scrollToIndex":[{"__symbolic":"method"}],"setConfig":[{"__symbolic":"method"}],"updateContent":[{"__symbolic":"method"}]}},"TableVirtualScrollDataSource":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","module":"@angular/material/table","name":"MatTableDataSource","line":6,"character":53},"members":{"_updateChangeSubscription":[{"__symbolic":"method"}],"initStreams":[{"__symbolic":"method"}]}}},"origins":{"TableVirtualScrollModule":"./lib/table-virtual-scroll.module","_tableVirtualScrollDirectiveStrategyFactory":"./lib/table-item-size.directive","TableItemSizeDirective":"./lib/table-item-size.directive","TSVStrategyConfigs":"./lib/fixed-size-table-virtual-scroll-strategy","FixedSizeTableVirtualScrollStrategy":"./lib/fixed-size-table-virtual-scroll-strategy","TableVirtualScrollDataSource":"./lib/table-data-source"},"importAs":"ng-table-virtual-scroll"}
{
"name": "ng-table-virtual-scroll",
"version": "1.3.5",
"version": "1.3.6",
"description": "Virtual scroll for for Angular Material Table",

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

"license": "MIT",
"dependencies": {
"tslib": "^2.0.0"
},
"peerDependencies": {

@@ -33,14 +36,9 @@ "@angular/common": ">=6.0.0",

"main": "bundles/ng-table-virtual-scroll.umd.js",
"module": "fesm5/ng-table-virtual-scroll.js",
"module": "fesm2015/ng-table-virtual-scroll.js",
"es2015": "fesm2015/ng-table-virtual-scroll.js",
"esm5": "esm5/ng-table-virtual-scroll.js",
"esm2015": "esm2015/ng-table-virtual-scroll.js",
"fesm5": "fesm5/ng-table-virtual-scroll.js",
"fesm2015": "fesm2015/ng-table-virtual-scroll.js",
"typings": "ng-table-virtual-scroll.d.ts",
"metadata": "ng-table-virtual-scroll.metadata.json",
"sideEffects": false,
"dependencies": {
"tslib": "^1.10.0"
}
}
"sideEffects": false
}

@@ -45,3 +45,3 @@ # Virtual Scroll for Angular Material Table

```
**Note: you need to install and configure [virtual scrolling](https://material.angular.io/cdk/scrolling) and [mat-table](https://material.angular.io/components/table) before. TableVirtualScroll only make work them together properly**
**Note: you need to install and configure [virtual scrolling](https://material.angular.io/cdk/scrolling) and [mat-table](https://material.angular.io/components/table) before. TableVirtualScroll only make them work together properly**

@@ -48,0 +48,0 @@ ### Configure the table

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