@firestitch/list 9.9.12 → 9.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/components/body/row/cell/cell.component.d.ts +1 -1
- package/app/components/footer/footer-row/footer-cell/footer-cell.component.d.ts +3 -0
- package/app/components/footer/footer-row/footer-row.component.d.ts +2 -0
- package/app/components/footer/footer.component.d.ts +2 -0
- package/bundles/firestitch-list.umd.js +20 -3
- package/bundles/firestitch-list.umd.js.map +1 -1
- package/bundles/firestitch-list.umd.min.js +2 -2
- package/bundles/firestitch-list.umd.min.js.map +1 -1
- package/esm2015/app/components/body/row/cell/cell.component.js +1 -1
- package/esm2015/app/components/footer/footer-row/footer-cell/footer-cell.component.js +11 -2
- package/esm2015/app/components/footer/footer-row/footer-row.component.js +6 -2
- package/esm2015/app/components/footer/footer.component.js +6 -2
- package/esm2015/app/components/list/list.component.js +2 -2
- package/esm5/app/components/body/row/cell/cell.component.js +1 -1
- package/esm5/app/components/footer/footer-row/footer-cell/footer-cell.component.js +11 -2
- package/esm5/app/components/footer/footer-row/footer-row.component.js +6 -2
- package/esm5/app/components/footer/footer.component.js +6 -2
- package/esm5/app/components/list/list.component.js +2 -2
- package/fesm2015/firestitch-list.js +20 -3
- package/fesm2015/firestitch-list.js.map +1 -1
- package/fesm5/firestitch-list.js +20 -3
- package/fesm5/firestitch-list.js.map +1 -1
- package/firestitch-list.metadata.json +1 -1
- package/package.json +1 -1
|
@@ -359,7 +359,7 @@ var FsListComponent = /** @class */ (function () {
|
|
|
359
359
|
FsListComponent = __decorate([
|
|
360
360
|
Component({
|
|
361
361
|
selector: 'fs-list',
|
|
362
|
-
template: "<div class=\"fs-list-container\"\
|
|
362
|
+
template: "<div class=\"fs-list-container\"\n [ngClass]=\"{ 'has-filter-input': list.filterInput,\n 'has-filters': list.filterConfig?.items.length,\n 'has-heading': list.heading,\n 'has-status': list.status,\n 'has-chips': list.chips,\n 'has-actions': list.actions.hasActions,\n 'first-load': firstLoad,\n 'loading': list.loading$ | async }\">\n <ng-template [ngTemplateOutlet]=\"listContainerContent\"></ng-template>\n</div>\n\n<ng-template #listContainerContent>\n <ng-container *ngIf=\"list.dataController.visibleRows$ | async as listData\">\n <!-- Header -->\n <div class=\"fs-list-header-container\">\n\n <div class=\"fs-list-header\"\n [ngClass]=\"{ 'no-wrap': reorderController.manualReorderActivated$ || !list.filterConfig?.items.length }\">\n <div class=\"heading-container\">\n <h2 class=\"heading\" *ngIf=\"list.heading\">{{list.heading}}</h2>\n <span class=\"subheading\" *ngIf=\"list.subheading\">{{list.subheading}}</span>\n </div>\n <fs-filter\n class=\"fs-list-filter\"\n *ngIf=\"list.filterConfig\"\n [filter]=\"list.filterConfig\"\n [showSortBy]=\"!list.status\"\n [showFilterInput]=\"list.filterInput\"\n (ready)=\"filterReady()\">\n\n <ng-template fsFilterStatusBar>\n <ng-container *ngIf=\"\n list.paging &&\n !(reorderController.manualReorderActivated$ | async) &&\n (!reorderController.enabled || reorderController.status) &&\n ((list.scrollable && list.scrollable.status) || !list.scrollable)\">\n <!-- Status -->\n <fs-list-status\n class=\"fs-list-status\"\n [ngClass]=\"{ 'hidden-mobile': !list.status }\"\n [rows]=\"listData\"\n [sorting]=\"list.sorting\"\n [paging]=\"list.paging\"\n [firstLoad]=\"firstLoad\"\n [scrollable]=\"list.scrollable\">\n </fs-list-status>\n </ng-container>\n </ng-template>\n </fs-filter>\n </div>\n </div>\n\n <!-- Table implementation -->\n <div class=\"fs-list-table-container\">\n <table class=\"fs-list-table\" role=\"grid\" *ngIf=\"!firstLoad && listData.length > 0 && !list.emptyStateEnabled\">\n <thead fs-list-head\n class=\"fs-list-head\"\n role=\"rowgroup\"\n *ngIf=\"list.columns.hasHeader\"\n [ngClass]=\"list.columns.theadClass\"\n [columns]=\"list.columns.visibleColumns\"\n [sorting]=\"list.sorting\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n >\n </thead>\n\n <tbody fs-list-body\n fsListDraggableList\n class=\"fs-list-body\"\n role=\"rowgroup\"\n [class.disabled]=\"!!(reorderController.reorderDisabled$ | async)\"\n [rows]=\"listData\"\n [rowActionsRaw]=\"list.rowActionsRaw\"\n [groupActionsRaw]=\"list.groupActionsRaw\"\n [hasRowActions]=\"list.hasRowActions\"\n [rowEvents]=\"list.rowEvents\"\n [rowClass]=\"list.rowClass\"\n [columns]=\"list.columns.visibleColumns\"\n [restoreMode]=\"list.restoreMode\"\n [selection]=\"list.selection\"\n [rowRemoved]=\"rowRemoved\"\n >\n </tbody>\n\n <tfoot fs-list-footer\n class=\"fs-list-footer\"\n *ngIf=\"list.columns.hasFooter\"\n [columns]=\"list.columns.visibleColumns\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [rows]=\"list.dataController.visibleRows\">\n </tfoot>\n </table>\n <fs-list-loader\n *ngIf=\"firstLoad\"\n [columns]=\"list.columns.columns\"\n [loaderLines]=\"loaderLines\">\n </fs-list-loader>\n </div>\n\n <fs-list-pagination\n *ngIf=\"paginatorVisible\"\n class=\"fs-list-pagination\"\n [rows]=\"listData\"\n [pagination]=\"list.paging\">\n </fs-list-pagination>\n\n\n <ng-container *ngIf=\"!firstLoad\">\n <div\n *ngIf=\"listData.length === 0\"\n class=\"fs-list-no-results-container\">\n <div\n *ngIf=\"list.noResults?.message && !list.emptyStateEnabled\"\n class=\"fs-list-no-results\">\n {{ list.noResults?.message }}\n </div>\n <ng-container *ngIf=\"list.emptyStateEnabled\">\n <ng-template [ngTemplateOutlet]=\"list.emptyStateTemplate\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n",
|
|
363
363
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
364
364
|
providers: [
|
|
365
365
|
GroupExpandNotifierService,
|
|
@@ -388,4 +388,4 @@ var FsListComponent = /** @class */ (function () {
|
|
|
388
388
|
return FsListComponent;
|
|
389
389
|
}());
|
|
390
390
|
export { FsListComponent };
|
|
391
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9saXN0LyIsInNvdXJjZXMiOlsiYXBwL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUFFLGlCQUFpQixFQUMxQyxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsV0FBVyxFQUNYLFFBQVEsRUFDUixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVqRCxPQUFP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LGVBQWU7WUFDeEIsU0FBUztZQUNWLGlCQUFpQjtZQUNGLDBCQUEwQjtZQUN2QyxNQUFNO1lBQ1AsY0FBYztZQUNSLHFCQUFxQjtZQUN4QixRQUFRO1lBQ0ssWUFBWTtZQUNaLFNBQVM7T0F4RWhDLGVBQWUsQ0F3VzNCO0lBQUQsc0JBQUM7Q0FBQSxBQXhXRCxJQXdXQztTQXhXWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG4gIEhvc3RCaW5kaW5nLFxuICBPcHRpb25hbCxcbiAgQ29udGVudENoaWxkLFxuICBUZW1wbGF0ZVJlZixcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHNraXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRnNTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvc2Nyb2xsJztcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQgeyBTZWxlY3Rpb25EaWFsb2cgfSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuaW1wb3J0IHsgZ2V0Tm9ybWFsaXplZFBhdGggfSBmcm9tICdAZmlyZXN0aXRjaC9jb21tb24nO1xuaW1wb3J0IHsgRHJhd2VyUmVmIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZHJhd2VyJztcblxuaW1wb3J0IHsgY2xvbmVEZWVwLCBtZXJnZVdpdGggfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBMaXN0IH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9saXN0LWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgUmVvcmRlckNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3Jlb3JkZXItY29udHJvbGxlcic7XG5cbmltcG9ydCB7IEZzTGlzdENvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sdW1uL2NvbHVtbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RW1wdHlTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZTX0xJU1RfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuLi8uLi9mcy1saXN0LnByb3ZpZGVycyc7XG5cbmltcG9ydCB7XG4gIEZzTGlzdEFic3RyYWN0Um93LFxuICBGc0xpc3RBY3Rpb24sXG4gIEZzTGlzdENvbmZpZywgRnNMaXN0UGVyc2l0YW5jZSwgRnNMaXN0U2VsZWN0aW9uQ29uZmlnLFxuICBGc0xpc3RUcmFja0J5Rm4sXG4gIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jdXN0b21pemUtY29scy9jdXN0b21pemUtY29scy5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ncm91cC1leHBhbmQtbm90aWZpZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQZXJzaXN0YW5jZUNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3BlcnNpc3RhbmNlLWNvbnRyb2xsZXInO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJ2xpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi9saXN0LmNvbXBvbmVudC5zY3NzJyxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIEdyb3VwRXhwYW5kTm90aWZpZXJTZXJ2aWNlLFxuICAgIFBlcnNpc3RhbmNlQ29udHJvbGxlcixcbiAgICBSZW9yZGVyQ29udHJvbGxlcixcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGc0xpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mcy1saXN0JykgY2xhc3NGc0xpc3QgPSB0cnVlO1xuXG4gIEBJbnB1dCgnY29uZmlnJylcbiAgc2V0IGNvbmZpZyhjb25maWc6IEZzTGlzdENvbmZpZykge1xuICAgIHRoaXMuX2luaXRXaXRoQ29uZmlnKGNvbmZpZylcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsb2FkZXJMaW5lcyA9IDM7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJzUmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIGxpc3Q6IExpc3Q7XG4gIHByaXZhdGUgbGlzdENvbHVtbkRpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxGc0xpc3RDb2x1bW5EaXJlY3RpdmU+O1xuXG4gIC8vIEV2ZW50IHdpbGwgZmlyZWQgaWYgYWN0aW9uIHJlbW92ZTogdHJ1ZSB3aWxsIGNsaWNrZWRcbiAgcHVibGljIHJvd1JlbW92ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHB1YmxpYyBmaXJzdExvYWQgPSB0cnVlO1xuXG4gIC8vIHB1YmxpYyByZWFkb25seSBSZW9yZGVyU3RyYXRlZ3kgPSBSZW9yZGVyU3RyYXRlZ3k7XG5cbiAgcHJpdmF0ZSBfZmlsdGVyUmVmOiBGaWx0ZXJDb21wb25lbnQ7XG4gIHByaXZhdGUgX2ZpbHRlclBhcmFtc1JlYWR5ID0gZmFsc2U7XG4gIHByaXZhdGUgX2luRGlhbG9nID0gISF0aGlzLl9kaWFsb2dSZWYgfHwgISF0aGlzLl9kcmF3ZXJSZWY7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgQFZpZXdDaGlsZChGaWx0ZXJDb21wb25lbnQpXG4gIHByaXZhdGUgc2V0IGZpbHRlclJlZmVyZW5jZShjb21wb25lbnQpIHtcbiAgICB0aGlzLl9maWx0ZXJSZWYgPSBjb21wb25lbnQ7XG4gICAgdGhpcy5saXN0LmFjdGlvbnMuc2V0RmlsdGVyUmVmKGNvbXBvbmVudCk7XG5cbiAgICB0aGlzLl9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgY29sdW1ucyB0byBjb25maWdcbiAgICogQ3JlYXRlIENvbHVtbiBNb2RlbCBpbnN0YW5jZXNcbiAgICpcbiAgICovXG4gIEBDb250ZW50Q2hpbGRyZW4oRnNMaXN0Q29sdW1uRGlyZWN0aXZlKVxuICBwcml2YXRlIHNldCBjb2x1bW5UZW1wbGF0ZXMobGlzdENvbHVtbkRpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxGc0xpc3RDb2x1bW5EaXJlY3RpdmU+KSB7XG4gICAgdGhpcy5saXN0Q29sdW1uRGlyZWN0aXZlcyA9IGxpc3RDb2x1bW5EaXJlY3RpdmVzO1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC50cmFuZm9ybVRlbXBsYXRlc1RvQ29sdW1ucyhsaXN0Q29sdW1uRGlyZWN0aXZlcyk7XG4gICAgfVxuICB9XG5cbiAgQENvbnRlbnRDaGlsZChGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIHByaXZhdGUgc2V0IF9lbXB0eVN0YXRlVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICBpZiAodGhpcy5saXN0KSB7XG4gICAgICB0aGlzLmxpc3QuZW1wdHlTdGF0ZVRlbXBsYXRlID0gdGVtcGxhdGU7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlb3JkZXJDb250cm9sbGVyOiBSZW9yZGVyQ29udHJvbGxlcixcbiAgICBwcml2YXRlIF9lbDogRWxlbWVudFJlZixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZTX0xJU1RfREVGQVVMVF9DT05GSUcpIHByaXZhdGUgX2RlZmF1bHRPcHRpb25zLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgZnNTY3JvbGw6IEZzU2Nyb2xsU2VydmljZSxcbiAgICBwcml2YXRlIHNlbGVjdGlvbkRpYWxvZzogU2VsZWN0aW9uRGlhbG9nLFxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZ3JvdXBFeHBhbmROb3RpZmllcjogR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBfcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgX3BlcnNpc3RhbmNlOiBQZXJzaXN0YW5jZUNvbnRyb2xsZXIsXG4gICAgcHJpdmF0ZSBfbG9jYXRpb246IExvY2F0aW9uLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfZHJhd2VyUmVmOiBEcmF3ZXJSZWY8YW55PixcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gcmVmZXJlbmNlIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldCBmaWx0ZXJSZWYoKTogRmlsdGVyQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyUmVmO1xuICB9XG5cbiAgZ2V0IGdyb3VwRW5hYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLmdyb3VwRW5hYmxlZDtcbiAgfVxuXG4gIGdldCBwYWdpbmF0b3JWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QucGFnaW5nLmVuYWJsZWRcbiAgICAgICYmICF0aGlzLmZpcnN0TG9hZFxuICAgICAgJiYgIXRoaXMubGlzdC5zY3JvbGxhYmxlXG4gICAgICAmJiAhdGhpcy5saXN0LmVtcHR5U3RhdGVFbmFibGVkXG4gICAgICAmJiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudmlzaWJsZVJvd3NDb3VudCA+IDBcbiAgICAgICYmIHRoaXMubGlzdC5wYWdpbmcucGFnZXMgPiAxO1xuICB9XG5cbiAgc2V0IGdyb3VwRW5hYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMubGlzdC5ncm91cEVuYWJsZWQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX3N1YnNjcmliZVRvUmVtb3ZlUm93KCk7XG4gICAgdGhpcy5fc3Vic2NyaWJlVG9Hcm91cEV4cGFuZFN0YXR1c0NoYW5nZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG5leHRQYWdlKCkge1xuICAgIHRoaXMubGlzdC5wYWdpbmcuZ29OZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcHJldlBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb1ByZXYoKTtcbiAgfVxuXG4gIHB1YmxpYyBmaXJzdFBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb0ZpcnN0KCk7XG4gIH1cblxuICBwdWJsaWMgbGFzdFBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb0xhc3QoKTtcbiAgfVxuXG4gIHB1YmxpYyByZWxvYWQoKSB7XG4gICAgdGhpcy5saXN0LnJlbG9hZCgpO1xuICB9XG5cbiAgcHVibGljIGdldERhdGEodHJhY2tCeT86IEZzTGlzdFRyYWNrQnlGbikge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZ2V0RGF0YSh0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNEYXRhKHRyYWNrQnk6IEZzTGlzdFRyYWNrQnlGbikge1xuICAgIHJldHVybiB0aGlzLmxpc3QuaGFzRGF0YSh0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVEYXRhKFxuICAgIHJvd3M6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuXG4gICk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudXBkYXRlRGF0YShyb3dzLCB0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyByZXBsYWNlUm93KFxuICAgIHJvdzogRnNMaXN0QWJzdHJhY3RSb3csXG4gICAgdHJhY2tCeT86IEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxuICApOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnJlcGxhY2VEYXRhKHJvdywgdHJhY2tCeSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlU2VsZWN0aW9uQ29uZmlnKGNvbmZpZzogRnNMaXN0U2VsZWN0aW9uQ29uZmlnKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi51cGRhdGVDb25maWcoY29uZmlnKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldFNlbGVjdGlvbkFjdGlvbnMoKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi5yZXNldEFjdGlvbnMoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVEYXRhKGRhdGE6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSB8IEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIucmVtb3ZlRGF0YShkYXRhKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRIZWFkaW5nKGhlYWRpbmc6IHN0cmluZykge1xuICAgIHRoaXMubGlzdC5oZWFkaW5nID0gaGVhZGluZztcbiAgfVxuXG4gIHB1YmxpYyBzZXRTdWJoZWFkaW5nKHN1YmhlYWRpbmc6IHN0cmluZykge1xuICAgIHRoaXMubGlzdC5zdWJoZWFkaW5nID0gc3ViaGVhZGluZztcbiAgfVxuXG4gIHB1YmxpYyByZW9yZGVyU3RhcnQoKSB7XG4gICAgdGhpcy5yZW9yZGVyQ29udHJvbGxlci5lbmFibGVSZW9yZGVyKCk7XG4gIH1cblxuICBwdWJsaWMgcmVvcmRlckZpbmlzaCgpIHtcbiAgICB0aGlzLnJlb3JkZXJDb250cm9sbGVyLmRpc2FibGVSZW9yZGVyKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0QWN0aW9ucyhhY3Rpb25zOiBGc0xpc3RBY3Rpb25bXSkge1xuICAgIGlmIChhY3Rpb25zKSB7XG4gICAgICB0aGlzLmxpc3QuYWN0aW9ucy5jbGVhckFjdGlvbnMoKTtcbiAgICAgIHRoaXMubGlzdC5hY3Rpb25zLnNldEFjdGlvbnMoYWN0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGZpbHRlclJlYWR5KCkge1xuICAgIHRoaXMubGlzdC5maWx0ZXJzUmVhZHkkLm5leHQoKTtcbiAgICB0aGlzLl9maWx0ZXJQYXJhbXNSZWFkeSA9IHRydWU7XG4gICAgdGhpcy5fZW1pdEZpbHRlcnNSZWFkeUV2ZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHZpc2liaWxpdHkgZm9yIHNwZWNpZmljIGNvbHVtblxuICAgKi9cbiAgcHVibGljIGNvbHVtblZpc2liaWxpdHkobmFtZTogc3RyaW5nLCBzaG93OiBib29sZWFuKSB7XG4gICAgdGhpcy5jb2x1bW5zVmlzaWJpbGl0eShbIHtuYW1lLCBzaG93IH0gXSlcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdmlzaWJpbGl0eSBmb3IgbGlzdCBvZiBzcGVjaWZpYyBjb2x1bW5zXG4gICAqL1xuICBwdWJsaWMgY29sdW1uc1Zpc2liaWxpdHkoY29sdW1uczogeyBuYW1lOiBzdHJpbmcsIHNob3c6IGJvb2xlYW4gfVtdKSB7XG4gICAgdGhpcy5saXN0LmNvbHVtbnMudXBkYXRlVmlzaWJpbGl0eUZvckNvbHMoY29sdW1ucyk7XG4gIH1cblxuICBwcml2YXRlIF9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTogdm9pZCB7XG4gICAgaWYgKCEhdGhpcy5maWx0ZXJSZWYgJiYgdGhpcy5fZmlsdGVyUGFyYW1zUmVhZHkpIHtcbiAgICAgIHRoaXMuZmlsdGVyc1JlYWR5LmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSBjb25maWcgZm9yIGxpc3RcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHJpdmF0ZSBfaW5pdFdpdGhDb25maWcoY29uZmlnOiBGc0xpc3RDb25maWcpIHtcbiAgICBpZiAodGhpcy5saXN0KSB7XG4gICAgICB0aGlzLmxpc3QuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIGNvbnN0IGRlZmF1bHRPcHRzID0gdGhpcy5fZGVmYXVsdE9wdGlvbnNcbiAgICAgID8gY2xvbmVEZWVwKHRoaXMuX2RlZmF1bHRPcHRpb25zKVxuICAgICAgOiB7fTtcbiAgICBjb25zdCBsaXN0Q29uZmlnID0gbWVyZ2VXaXRoKGRlZmF1bHRPcHRzLCBjb25maWcsIHRoaXMuX2NvbmZpZ01lcmdlQ3VzdG9taXplcik7XG5cbiAgICBpZiAobGlzdENvbmZpZy5wZXJzaXN0ICE9PSBmYWxzZSkge1xuICAgICAgdGhpcy5fcmVzdG9yZVBlcnNpc3RhbmNlKGxpc3RDb25maWcucGVyc2lzdCk7XG4gICAgfVxuXG4gICAgdGhpcy5fdXBkYXRlQ3VzdG9taXplQWN0aW9uKGxpc3RDb25maWcuYWN0aW9ucyk7XG5cbiAgICB0aGlzLmxpc3QgPSBuZXcgTGlzdChcbiAgICAgIHRoaXMuX2VsLFxuICAgICAgbGlzdENvbmZpZyxcbiAgICAgIHRoaXMuZnNTY3JvbGwsXG4gICAgICB0aGlzLnNlbGVjdGlvbkRpYWxvZyxcbiAgICAgIHRoaXMuX3JvdXRlcixcbiAgICAgIHRoaXMuX3JvdXRlLFxuICAgICAgdGhpcy5fcGVyc2lzdGFuY2UsXG4gICAgICB0aGlzLl9pbkRpYWxvZyxcbiAgICApO1xuXG4gICAgdGhpcy5fd2FpdEZpcnN0TG9hZCgpO1xuXG4gICAgdGhpcy5yZW9yZGVyQ29udHJvbGxlci5pbml0V2l0aENvbmZpZyhcbiAgICAgIGNvbmZpZy5yZW9yZGVyLFxuICAgICAgdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLFxuICAgICAgdGhpcy5saXN0LmFjdGlvbnMsXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmxpc3RDb2x1bW5EaXJlY3RpdmVzKSB7XG4gICAgICB0aGlzLmxpc3QudHJhbmZvcm1UZW1wbGF0ZXNUb0NvbHVtbnModGhpcy5saXN0Q29sdW1uRGlyZWN0aXZlcyk7XG4gICAgfVxuICAgIHRoaXMuX2xpc3RlblNvcnRpbmdDaGFuZ2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGFjdGlvbiB3aXRoIGN1c3RvbWl6ZSBmbGFnIGFuZCByZS1kZWNsYXJlIGNsaWNrIGZ1bmN0aW9uIGZvciBDdXN0b21pemVDb2xzRGlhbG9nXG4gICAqIEBwYXJhbSBhY3Rpb25zXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVDdXN0b21pemVBY3Rpb24oYWN0aW9uczogRnNMaXN0QWN0aW9uW10pIHtcbiAgICBjb25zdCBjdXN0b21pemVBY3Rpb24gPSBhY3Rpb25zPy5maW5kKChhY3Rpb24pID0+IGFjdGlvbi5jdXN0b21pemUpO1xuXG4gICAgaWYgKGN1c3RvbWl6ZUFjdGlvbikge1xuICAgICAgY29uc3QgYWN0aW9uQ2xpY2tGbiA9IGN1c3RvbWl6ZUFjdGlvbi5jbGljaztcblxuICAgICAgY3VzdG9taXplQWN0aW9uLmNsaWNrID0gKCkgPT4ge1xuICAgICAgICBpZiAoYWN0aW9uQ2xpY2tGbikge1xuICAgICAgICAgIGFjdGlvbkNsaWNrRm4obnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmxpc3QuY29sdW1ucy5jb2x1bW5zRm9yRGlhbG9nLFxuICAgICAgICAgICAgY2hhbmdlRm46IHRoaXMubGlzdC5jb2x1bW5zLmNoYW5nZUZuLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRpYWxvZ1JlZlxuICAgICAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5saXN0Lm9uRGVzdHJveSQpLFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICB0aGlzLmxpc3QuY29sdW1ucy51cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhkYXRhKTtcblxuICAgICAgICAgICAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgc29ydGluZyBpbiBmaWx0ZXJcbiAgICovXG4gIHByaXZhdGUgX2xpc3RlblNvcnRpbmdDaGFuZ2UoKSB7XG4gICAgdGhpcy5saXN0LnNvcnRpbmdcbiAgICAgIC5zb3J0aW5nQ2hhbmdlZCRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5saXN0Lm9uRGVzdHJveSQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChzb3J0KSA9PiB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclJlZi51cGRhdGVTb3J0KHNvcnQpO1xuICAgICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgX3N1YnNjcmliZVRvUmVtb3ZlUm93KCkge1xuICAgIHRoaXMucm93UmVtb3ZlZFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKVxuICAgICAgLnN1YnNjcmliZSgocm93KSA9PiB7XG4gICAgICAgIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci5yZW1vdmVEYXRhKHJvdyk7XG4gICAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaWJlVG9Hcm91cEV4cGFuZFN0YXR1c0NoYW5nZSgpIHtcbiAgICBpZiAodGhpcy5saXN0LmRhdGFDb250cm9sbGVyLmhhc0dyb3Vwcykge1xuICAgICAgdGhpcy5fZ3JvdXBFeHBhbmROb3RpZmllci5leHBhbmRTdGF0dXNDaGFuZ2UkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHJvdykgPT4ge1xuICAgICAgICAgIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci50b2dnbGVSb3dHcm91cChyb3cpO1xuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3dhaXRGaXJzdExvYWQoKSB7XG4gICAgdGhpcy5saXN0LmxvYWRpbmckXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUgPT09IGZhbHNlKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubGlzdC5vbkRlc3Ryb3kkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZmlyc3RMb2FkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ01lcmdlQ3VzdG9taXplcihvYmpWYWx1ZTogYW55LCBzcmNWYWx1ZTogYW55KSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkob2JqVmFsdWUpKSB7XG4gICAgICByZXR1cm4gb2JqVmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzdG9yZVBlcnNpc3RhbmNlKHBlcnNpc3RDb25maWc6IEZzTGlzdFBlcnNpdGFuY2UpIHtcbiAgICBjb25zdCBuYW1lc3BhY2UgPSBnZXROb3JtYWxpemVkUGF0aCh0aGlzLl9sb2NhdGlvbik7XG4gICAgdGhpcy5fcGVyc2lzdGFuY2Uuc2V0Q29uZmlnKHBlcnNpc3RDb25maWcsIG5hbWVzcGFjZSwgdGhpcy5faW5EaWFsb2cpO1xuICB9XG59XG4iXX0=
|
|
391
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZmlyZXN0aXRjaC9saXN0LyIsInNvdXJjZXMiOlsiYXBwL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUFFLGlCQUFpQixFQUMxQyxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsV0FBVyxFQUNYLFFBQVEsRUFDUixZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVqRCxPQUFP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LGVBQWU7WUFDeEIsU0FBUztZQUNWLGlCQUFpQjtZQUNGLDBCQUEwQjtZQUN2QyxNQUFNO1lBQ1AsY0FBYztZQUNSLHFCQUFxQjtZQUN4QixRQUFRO1lBQ0ssWUFBWTtZQUNaLFNBQVM7T0F4RWhDLGVBQWUsQ0F3VzNCO0lBQUQsc0JBQUM7Q0FBQSxBQXhXRCxJQXdXQztTQXhXWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGQsXG4gIEhvc3RCaW5kaW5nLFxuICBPcHRpb25hbCxcbiAgQ29udGVudENoaWxkLFxuICBUZW1wbGF0ZVJlZixcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHNraXAsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRnNTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnQGZpcmVzdGl0Y2gvc2Nyb2xsJztcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQgeyBTZWxlY3Rpb25EaWFsb2cgfSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuaW1wb3J0IHsgZ2V0Tm9ybWFsaXplZFBhdGggfSBmcm9tICdAZmlyZXN0aXRjaC9jb21tb24nO1xuaW1wb3J0IHsgRHJhd2VyUmVmIH0gZnJvbSAnQGZpcmVzdGl0Y2gvZHJhd2VyJztcblxuaW1wb3J0IHsgY2xvbmVEZWVwLCBtZXJnZVdpdGggfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBMaXN0IH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9saXN0LWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgUmVvcmRlckNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3Jlb3JkZXItY29udHJvbGxlcic7XG5cbmltcG9ydCB7IEZzTGlzdENvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sdW1uL2NvbHVtbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RW1wdHlTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZTX0xJU1RfREVGQVVMVF9DT05GSUcgfSBmcm9tICcuLi8uLi9mcy1saXN0LnByb3ZpZGVycyc7XG5cbmltcG9ydCB7XG4gIEZzTGlzdEFic3RyYWN0Um93LFxuICBGc0xpc3RBY3Rpb24sXG4gIEZzTGlzdENvbmZpZywgRnNMaXN0UGVyc2l0YW5jZSwgRnNMaXN0U2VsZWN0aW9uQ29uZmlnLFxuICBGc0xpc3RUcmFja0J5Rm4sXG4gIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jdXN0b21pemUtY29scy9jdXN0b21pemUtY29scy5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ncm91cC1leHBhbmQtbm90aWZpZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQZXJzaXN0YW5jZUNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3BlcnNpc3RhbmNlLWNvbnRyb2xsZXInO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJ2xpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi9saXN0LmNvbXBvbmVudC5zY3NzJyxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIEdyb3VwRXhwYW5kTm90aWZpZXJTZXJ2aWNlLFxuICAgIFBlcnNpc3RhbmNlQ29udHJvbGxlcixcbiAgICBSZW9yZGVyQ29udHJvbGxlcixcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGc0xpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mcy1saXN0JykgY2xhc3NGc0xpc3QgPSB0cnVlO1xuXG4gIEBJbnB1dCgnY29uZmlnJylcbiAgc2V0IGNvbmZpZyhjb25maWc6IEZzTGlzdENvbmZpZykge1xuICAgIHRoaXMuX2luaXRXaXRoQ29uZmlnKGNvbmZpZylcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsb2FkZXJMaW5lcyA9IDM7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJzUmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIGxpc3Q6IExpc3Q7XG4gIHByaXZhdGUgbGlzdENvbHVtbkRpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxGc0xpc3RDb2x1bW5EaXJlY3RpdmU+O1xuXG4gIC8vIEV2ZW50IHdpbGwgZmlyZWQgaWYgYWN0aW9uIHJlbW92ZTogdHJ1ZSB3aWxsIGNsaWNrZWRcbiAgcHVibGljIHJvd1JlbW92ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHB1YmxpYyBmaXJzdExvYWQgPSB0cnVlO1xuXG4gIC8vIHB1YmxpYyByZWFkb25seSBSZW9yZGVyU3RyYXRlZ3kgPSBSZW9yZGVyU3RyYXRlZ3k7XG5cbiAgcHJpdmF0ZSBfZmlsdGVyUmVmOiBGaWx0ZXJDb21wb25lbnQ7XG4gIHByaXZhdGUgX2ZpbHRlclBhcmFtc1JlYWR5ID0gZmFsc2U7XG4gIHByaXZhdGUgX2luRGlhbG9nID0gISF0aGlzLl9kaWFsb2dSZWYgfHwgISF0aGlzLl9kcmF3ZXJSZWY7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgQFZpZXdDaGlsZChGaWx0ZXJDb21wb25lbnQpXG4gIHByaXZhdGUgc2V0IGZpbHRlclJlZmVyZW5jZShjb21wb25lbnQpIHtcbiAgICB0aGlzLl9maWx0ZXJSZWYgPSBjb21wb25lbnQ7XG4gICAgdGhpcy5saXN0LmFjdGlvbnMuc2V0RmlsdGVyUmVmKGNvbXBvbmVudCk7XG5cbiAgICB0aGlzLl9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgY29sdW1ucyB0byBjb25maWdcbiAgICogQ3JlYXRlIENvbHVtbiBNb2RlbCBpbnN0YW5jZXNcbiAgICpcbiAgICovXG4gIEBDb250ZW50Q2hpbGRyZW4oRnNMaXN0Q29sdW1uRGlyZWN0aXZlKVxuICBwcml2YXRlIHNldCBjb2x1bW5UZW1wbGF0ZXMobGlzdENvbHVtbkRpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxGc0xpc3RDb2x1bW5EaXJlY3RpdmU+KSB7XG4gICAgdGhpcy5saXN0Q29sdW1uRGlyZWN0aXZlcyA9IGxpc3RDb2x1bW5EaXJlY3RpdmVzO1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC50cmFuZm9ybVRlbXBsYXRlc1RvQ29sdW1ucyhsaXN0Q29sdW1uRGlyZWN0aXZlcyk7XG4gICAgfVxuICB9XG5cbiAgQENvbnRlbnRDaGlsZChGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIHByaXZhdGUgc2V0IF9lbXB0eVN0YXRlVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICBpZiAodGhpcy5saXN0KSB7XG4gICAgICB0aGlzLmxpc3QuZW1wdHlTdGF0ZVRlbXBsYXRlID0gdGVtcGxhdGU7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlb3JkZXJDb250cm9sbGVyOiBSZW9yZGVyQ29udHJvbGxlcixcbiAgICBwcml2YXRlIF9lbDogRWxlbWVudFJlZixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZTX0xJU1RfREVGQVVMVF9DT05GSUcpIHByaXZhdGUgX2RlZmF1bHRPcHRpb25zLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgZnNTY3JvbGw6IEZzU2Nyb2xsU2VydmljZSxcbiAgICBwcml2YXRlIHNlbGVjdGlvbkRpYWxvZzogU2VsZWN0aW9uRGlhbG9nLFxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZ3JvdXBFeHBhbmROb3RpZmllcjogR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBfcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgX3BlcnNpc3RhbmNlOiBQZXJzaXN0YW5jZUNvbnRyb2xsZXIsXG4gICAgcHJpdmF0ZSBfbG9jYXRpb246IExvY2F0aW9uLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPGFueT4sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfZHJhd2VyUmVmOiBEcmF3ZXJSZWY8YW55PixcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gcmVmZXJlbmNlIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldCBmaWx0ZXJSZWYoKTogRmlsdGVyQ29tcG9uZW50IHtcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyUmVmO1xuICB9XG5cbiAgZ2V0IGdyb3VwRW5hYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLmdyb3VwRW5hYmxlZDtcbiAgfVxuXG4gIGdldCBwYWdpbmF0b3JWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QucGFnaW5nLmVuYWJsZWRcbiAgICAgICYmICF0aGlzLmZpcnN0TG9hZFxuICAgICAgJiYgIXRoaXMubGlzdC5zY3JvbGxhYmxlXG4gICAgICAmJiAhdGhpcy5saXN0LmVtcHR5U3RhdGVFbmFibGVkXG4gICAgICAmJiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudmlzaWJsZVJvd3NDb3VudCA+IDBcbiAgICAgICYmIHRoaXMubGlzdC5wYWdpbmcucGFnZXMgPiAxO1xuICB9XG5cbiAgc2V0IGdyb3VwRW5hYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMubGlzdC5ncm91cEVuYWJsZWQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX3N1YnNjcmliZVRvUmVtb3ZlUm93KCk7XG4gICAgdGhpcy5fc3Vic2NyaWJlVG9Hcm91cEV4cGFuZFN0YXR1c0NoYW5nZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG5leHRQYWdlKCkge1xuICAgIHRoaXMubGlzdC5wYWdpbmcuZ29OZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcHJldlBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb1ByZXYoKTtcbiAgfVxuXG4gIHB1YmxpYyBmaXJzdFBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb0ZpcnN0KCk7XG4gIH1cblxuICBwdWJsaWMgbGFzdFBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb0xhc3QoKTtcbiAgfVxuXG4gIHB1YmxpYyByZWxvYWQoKSB7XG4gICAgdGhpcy5saXN0LnJlbG9hZCgpO1xuICB9XG5cbiAgcHVibGljIGdldERhdGEodHJhY2tCeT86IEZzTGlzdFRyYWNrQnlGbikge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZ2V0RGF0YSh0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNEYXRhKHRyYWNrQnk6IEZzTGlzdFRyYWNrQnlGbikge1xuICAgIHJldHVybiB0aGlzLmxpc3QuaGFzRGF0YSh0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVEYXRhKFxuICAgIHJvd3M6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuXG4gICk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudXBkYXRlRGF0YShyb3dzLCB0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyByZXBsYWNlUm93KFxuICAgIHJvdzogRnNMaXN0QWJzdHJhY3RSb3csXG4gICAgdHJhY2tCeT86IEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGblxuICApOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnJlcGxhY2VEYXRhKHJvdywgdHJhY2tCeSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlU2VsZWN0aW9uQ29uZmlnKGNvbmZpZzogRnNMaXN0U2VsZWN0aW9uQ29uZmlnKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi51cGRhdGVDb25maWcoY29uZmlnKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldFNlbGVjdGlvbkFjdGlvbnMoKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi5yZXNldEFjdGlvbnMoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVEYXRhKGRhdGE6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSB8IEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIucmVtb3ZlRGF0YShkYXRhKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRIZWFkaW5nKGhlYWRpbmc6IHN0cmluZykge1xuICAgIHRoaXMubGlzdC5oZWFkaW5nID0gaGVhZGluZztcbiAgfVxuXG4gIHB1YmxpYyBzZXRTdWJoZWFkaW5nKHN1YmhlYWRpbmc6IHN0cmluZykge1xuICAgIHRoaXMubGlzdC5zdWJoZWFkaW5nID0gc3ViaGVhZGluZztcbiAgfVxuXG4gIHB1YmxpYyByZW9yZGVyU3RhcnQoKSB7XG4gICAgdGhpcy5yZW9yZGVyQ29udHJvbGxlci5lbmFibGVSZW9yZGVyKCk7XG4gIH1cblxuICBwdWJsaWMgcmVvcmRlckZpbmlzaCgpIHtcbiAgICB0aGlzLnJlb3JkZXJDb250cm9sbGVyLmRpc2FibGVSZW9yZGVyKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0QWN0aW9ucyhhY3Rpb25zOiBGc0xpc3RBY3Rpb25bXSkge1xuICAgIGlmIChhY3Rpb25zKSB7XG4gICAgICB0aGlzLmxpc3QuYWN0aW9ucy5jbGVhckFjdGlvbnMoKTtcbiAgICAgIHRoaXMubGlzdC5hY3Rpb25zLnNldEFjdGlvbnMoYWN0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGZpbHRlclJlYWR5KCkge1xuICAgIHRoaXMubGlzdC5maWx0ZXJzUmVhZHkkLm5leHQoKTtcbiAgICB0aGlzLl9maWx0ZXJQYXJhbXNSZWFkeSA9IHRydWU7XG4gICAgdGhpcy5fZW1pdEZpbHRlcnNSZWFkeUV2ZW50KCk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHZpc2liaWxpdHkgZm9yIHNwZWNpZmljIGNvbHVtblxuICAgKi9cbiAgcHVibGljIGNvbHVtblZpc2liaWxpdHkobmFtZTogc3RyaW5nLCBzaG93OiBib29sZWFuKSB7XG4gICAgdGhpcy5jb2x1bW5zVmlzaWJpbGl0eShbIHtuYW1lLCBzaG93IH0gXSlcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdmlzaWJpbGl0eSBmb3IgbGlzdCBvZiBzcGVjaWZpYyBjb2x1bW5zXG4gICAqL1xuICBwdWJsaWMgY29sdW1uc1Zpc2liaWxpdHkoY29sdW1uczogeyBuYW1lOiBzdHJpbmcsIHNob3c6IGJvb2xlYW4gfVtdKSB7XG4gICAgdGhpcy5saXN0LmNvbHVtbnMudXBkYXRlVmlzaWJpbGl0eUZvckNvbHMoY29sdW1ucyk7XG4gIH1cblxuICBwcml2YXRlIF9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTogdm9pZCB7XG4gICAgaWYgKCEhdGhpcy5maWx0ZXJSZWYgJiYgdGhpcy5fZmlsdGVyUGFyYW1zUmVhZHkpIHtcbiAgICAgIHRoaXMuZmlsdGVyc1JlYWR5LmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSBjb25maWcgZm9yIGxpc3RcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHJpdmF0ZSBfaW5pdFdpdGhDb25maWcoY29uZmlnOiBGc0xpc3RDb25maWcpIHtcbiAgICBpZiAodGhpcy5saXN0KSB7XG4gICAgICB0aGlzLmxpc3QuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIGNvbnN0IGRlZmF1bHRPcHRzID0gdGhpcy5fZGVmYXVsdE9wdGlvbnNcbiAgICAgID8gY2xvbmVEZWVwKHRoaXMuX2RlZmF1bHRPcHRpb25zKVxuICAgICAgOiB7fTtcbiAgICBjb25zdCBsaXN0Q29uZmlnID0gbWVyZ2VXaXRoKGRlZmF1bHRPcHRzLCBjb25maWcsIHRoaXMuX2NvbmZpZ01lcmdlQ3VzdG9taXplcik7XG5cbiAgICBpZiAobGlzdENvbmZpZy5wZXJzaXN0ICE9PSBmYWxzZSkge1xuICAgICAgdGhpcy5fcmVzdG9yZVBlcnNpc3RhbmNlKGxpc3RDb25maWcucGVyc2lzdCk7XG4gICAgfVxuXG4gICAgdGhpcy5fdXBkYXRlQ3VzdG9taXplQWN0aW9uKGxpc3RDb25maWcuYWN0aW9ucyk7XG5cbiAgICB0aGlzLmxpc3QgPSBuZXcgTGlzdChcbiAgICAgIHRoaXMuX2VsLFxuICAgICAgbGlzdENvbmZpZyxcbiAgICAgIHRoaXMuZnNTY3JvbGwsXG4gICAgICB0aGlzLnNlbGVjdGlvbkRpYWxvZyxcbiAgICAgIHRoaXMuX3JvdXRlcixcbiAgICAgIHRoaXMuX3JvdXRlLFxuICAgICAgdGhpcy5fcGVyc2lzdGFuY2UsXG4gICAgICB0aGlzLl9pbkRpYWxvZyxcbiAgICApO1xuXG4gICAgdGhpcy5fd2FpdEZpcnN0TG9hZCgpO1xuXG4gICAgdGhpcy5yZW9yZGVyQ29udHJvbGxlci5pbml0V2l0aENvbmZpZyhcbiAgICAgIGNvbmZpZy5yZW9yZGVyLFxuICAgICAgdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLFxuICAgICAgdGhpcy5saXN0LmFjdGlvbnMsXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmxpc3RDb2x1bW5EaXJlY3RpdmVzKSB7XG4gICAgICB0aGlzLmxpc3QudHJhbmZvcm1UZW1wbGF0ZXNUb0NvbHVtbnModGhpcy5saXN0Q29sdW1uRGlyZWN0aXZlcyk7XG4gICAgfVxuICAgIHRoaXMuX2xpc3RlblNvcnRpbmdDaGFuZ2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGFjdGlvbiB3aXRoIGN1c3RvbWl6ZSBmbGFnIGFuZCByZS1kZWNsYXJlIGNsaWNrIGZ1bmN0aW9uIGZvciBDdXN0b21pemVDb2xzRGlhbG9nXG4gICAqIEBwYXJhbSBhY3Rpb25zXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVDdXN0b21pemVBY3Rpb24oYWN0aW9uczogRnNMaXN0QWN0aW9uW10pIHtcbiAgICBjb25zdCBjdXN0b21pemVBY3Rpb24gPSBhY3Rpb25zPy5maW5kKChhY3Rpb24pID0+IGFjdGlvbi5jdXN0b21pemUpO1xuXG4gICAgaWYgKGN1c3RvbWl6ZUFjdGlvbikge1xuICAgICAgY29uc3QgYWN0aW9uQ2xpY2tGbiA9IGN1c3RvbWl6ZUFjdGlvbi5jbGljaztcblxuICAgICAgY3VzdG9taXplQWN0aW9uLmNsaWNrID0gKCkgPT4ge1xuICAgICAgICBpZiAoYWN0aW9uQ2xpY2tGbikge1xuICAgICAgICAgIGFjdGlvbkNsaWNrRm4obnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBjb2x1bW5zOiB0aGlzLmxpc3QuY29sdW1ucy5jb2x1bW5zRm9yRGlhbG9nLFxuICAgICAgICAgICAgY2hhbmdlRm46IHRoaXMubGlzdC5jb2x1bW5zLmNoYW5nZUZuLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRpYWxvZ1JlZlxuICAgICAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5saXN0Lm9uRGVzdHJveSQpLFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICB0aGlzLmxpc3QuY29sdW1ucy51cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhkYXRhKTtcblxuICAgICAgICAgICAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgc29ydGluZyBpbiBmaWx0ZXJcbiAgICovXG4gIHByaXZhdGUgX2xpc3RlblNvcnRpbmdDaGFuZ2UoKSB7XG4gICAgdGhpcy5saXN0LnNvcnRpbmdcbiAgICAgIC5zb3J0aW5nQ2hhbmdlZCRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5saXN0Lm9uRGVzdHJveSQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChzb3J0KSA9PiB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclJlZi51cGRhdGVTb3J0KHNvcnQpO1xuICAgICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgX3N1YnNjcmliZVRvUmVtb3ZlUm93KCkge1xuICAgIHRoaXMucm93UmVtb3ZlZFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKVxuICAgICAgLnN1YnNjcmliZSgocm93KSA9PiB7XG4gICAgICAgIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci5yZW1vdmVEYXRhKHJvdyk7XG4gICAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaWJlVG9Hcm91cEV4cGFuZFN0YXR1c0NoYW5nZSgpIHtcbiAgICBpZiAodGhpcy5saXN0LmRhdGFDb250cm9sbGVyLmhhc0dyb3Vwcykge1xuICAgICAgdGhpcy5fZ3JvdXBFeHBhbmROb3RpZmllci5leHBhbmRTdGF0dXNDaGFuZ2UkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHJvdykgPT4ge1xuICAgICAgICAgIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci50b2dnbGVSb3dHcm91cChyb3cpO1xuICAgICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3dhaXRGaXJzdExvYWQoKSB7XG4gICAgdGhpcy5saXN0LmxvYWRpbmckXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUgPT09IGZhbHNlKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubGlzdC5vbkRlc3Ryb3kkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZmlyc3RMb2FkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ01lcmdlQ3VzdG9taXplcihvYmpWYWx1ZTogYW55LCBzcmNWYWx1ZTogYW55KSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkob2JqVmFsdWUpKSB7XG4gICAgICByZXR1cm4gb2JqVmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzdG9yZVBlcnNpc3RhbmNlKHBlcnNpc3RDb25maWc6IEZzTGlzdFBlcnNpdGFuY2UpIHtcbiAgICBjb25zdCBuYW1lc3BhY2UgPSBnZXROb3JtYWxpemVkUGF0aCh0aGlzLl9sb2NhdGlvbik7XG4gICAgdGhpcy5fcGVyc2lzdGFuY2Uuc2V0Q29uZmlnKHBlcnNpc3RDb25maWcsIG5hbWVzcGFjZSwgdGhpcy5faW5EaWFsb2cpO1xuICB9XG59XG4iXX0=
|
|
@@ -3840,7 +3840,7 @@ __decorate([
|
|
|
3840
3840
|
FsListComponent = __decorate([
|
|
3841
3841
|
Component({
|
|
3842
3842
|
selector: 'fs-list',
|
|
3843
|
-
template: "<div class=\"fs-list-container\"\
|
|
3843
|
+
template: "<div class=\"fs-list-container\"\n [ngClass]=\"{ 'has-filter-input': list.filterInput,\n 'has-filters': list.filterConfig?.items.length,\n 'has-heading': list.heading,\n 'has-status': list.status,\n 'has-chips': list.chips,\n 'has-actions': list.actions.hasActions,\n 'first-load': firstLoad,\n 'loading': list.loading$ | async }\">\n <ng-template [ngTemplateOutlet]=\"listContainerContent\"></ng-template>\n</div>\n\n<ng-template #listContainerContent>\n <ng-container *ngIf=\"list.dataController.visibleRows$ | async as listData\">\n <!-- Header -->\n <div class=\"fs-list-header-container\">\n\n <div class=\"fs-list-header\"\n [ngClass]=\"{ 'no-wrap': reorderController.manualReorderActivated$ || !list.filterConfig?.items.length }\">\n <div class=\"heading-container\">\n <h2 class=\"heading\" *ngIf=\"list.heading\">{{list.heading}}</h2>\n <span class=\"subheading\" *ngIf=\"list.subheading\">{{list.subheading}}</span>\n </div>\n <fs-filter\n class=\"fs-list-filter\"\n *ngIf=\"list.filterConfig\"\n [filter]=\"list.filterConfig\"\n [showSortBy]=\"!list.status\"\n [showFilterInput]=\"list.filterInput\"\n (ready)=\"filterReady()\">\n\n <ng-template fsFilterStatusBar>\n <ng-container *ngIf=\"\n list.paging &&\n !(reorderController.manualReorderActivated$ | async) &&\n (!reorderController.enabled || reorderController.status) &&\n ((list.scrollable && list.scrollable.status) || !list.scrollable)\">\n <!-- Status -->\n <fs-list-status\n class=\"fs-list-status\"\n [ngClass]=\"{ 'hidden-mobile': !list.status }\"\n [rows]=\"listData\"\n [sorting]=\"list.sorting\"\n [paging]=\"list.paging\"\n [firstLoad]=\"firstLoad\"\n [scrollable]=\"list.scrollable\">\n </fs-list-status>\n </ng-container>\n </ng-template>\n </fs-filter>\n </div>\n </div>\n\n <!-- Table implementation -->\n <div class=\"fs-list-table-container\">\n <table class=\"fs-list-table\" role=\"grid\" *ngIf=\"!firstLoad && listData.length > 0 && !list.emptyStateEnabled\">\n <thead fs-list-head\n class=\"fs-list-head\"\n role=\"rowgroup\"\n *ngIf=\"list.columns.hasHeader\"\n [ngClass]=\"list.columns.theadClass\"\n [columns]=\"list.columns.visibleColumns\"\n [sorting]=\"list.sorting\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n >\n </thead>\n\n <tbody fs-list-body\n fsListDraggableList\n class=\"fs-list-body\"\n role=\"rowgroup\"\n [class.disabled]=\"!!(reorderController.reorderDisabled$ | async)\"\n [rows]=\"listData\"\n [rowActionsRaw]=\"list.rowActionsRaw\"\n [groupActionsRaw]=\"list.groupActionsRaw\"\n [hasRowActions]=\"list.hasRowActions\"\n [rowEvents]=\"list.rowEvents\"\n [rowClass]=\"list.rowClass\"\n [columns]=\"list.columns.visibleColumns\"\n [restoreMode]=\"list.restoreMode\"\n [selection]=\"list.selection\"\n [rowRemoved]=\"rowRemoved\"\n >\n </tbody>\n\n <tfoot fs-list-footer\n class=\"fs-list-footer\"\n *ngIf=\"list.columns.hasFooter\"\n [columns]=\"list.columns.visibleColumns\"\n [selection]=\"list.selection\"\n [hasRowActions]=\"list.hasRowActions\"\n [rows]=\"list.dataController.visibleRows\">\n </tfoot>\n </table>\n <fs-list-loader\n *ngIf=\"firstLoad\"\n [columns]=\"list.columns.columns\"\n [loaderLines]=\"loaderLines\">\n </fs-list-loader>\n </div>\n\n <fs-list-pagination\n *ngIf=\"paginatorVisible\"\n class=\"fs-list-pagination\"\n [rows]=\"listData\"\n [pagination]=\"list.paging\">\n </fs-list-pagination>\n\n\n <ng-container *ngIf=\"!firstLoad\">\n <div\n *ngIf=\"listData.length === 0\"\n class=\"fs-list-no-results-container\">\n <div\n *ngIf=\"list.noResults?.message && !list.emptyStateEnabled\"\n class=\"fs-list-no-results\">\n {{ list.noResults?.message }}\n </div>\n <ng-container *ngIf=\"list.emptyStateEnabled\">\n <ng-template [ngTemplateOutlet]=\"list.emptyStateTemplate\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n</ng-template>\n\n",
|
|
3844
3844
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3845
3845
|
providers: [
|
|
3846
3846
|
GroupExpandNotifierService,
|
|
@@ -4703,10 +4703,14 @@ __decorate([
|
|
|
4703
4703
|
Input(),
|
|
4704
4704
|
__metadata("design:type", SelectionController)
|
|
4705
4705
|
], FsFooterComponent.prototype, "selection", void 0);
|
|
4706
|
+
__decorate([
|
|
4707
|
+
Input(),
|
|
4708
|
+
__metadata("design:type", Array)
|
|
4709
|
+
], FsFooterComponent.prototype, "rows", void 0);
|
|
4706
4710
|
FsFooterComponent = __decorate([
|
|
4707
4711
|
Component({
|
|
4708
4712
|
selector: '[fs-list-footer]',
|
|
4709
|
-
template: "<tr fs-list-footer-row\n [columns]=\"columns\"\n [hasRowActions]=\"hasRowActions\"\n [selection]=\"selection\"\n></tr>\n",
|
|
4713
|
+
template: "<tr fs-list-footer-row\n [columns]=\"columns\"\n [hasRowActions]=\"hasRowActions\"\n [selection]=\"selection\"\n [rows]=\"rows\"\n></tr>\n",
|
|
4710
4714
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
4711
4715
|
}),
|
|
4712
4716
|
__metadata("design:paramtypes", [])
|
|
@@ -4729,10 +4733,14 @@ __decorate([
|
|
|
4729
4733
|
Input(),
|
|
4730
4734
|
__metadata("design:type", Boolean)
|
|
4731
4735
|
], FsFooterRowComponent.prototype, "hasRowActions", void 0);
|
|
4736
|
+
__decorate([
|
|
4737
|
+
Input(),
|
|
4738
|
+
__metadata("design:type", Array)
|
|
4739
|
+
], FsFooterRowComponent.prototype, "rows", void 0);
|
|
4732
4740
|
FsFooterRowComponent = __decorate([
|
|
4733
4741
|
Component({
|
|
4734
4742
|
selector: '[fs-list-footer-row]',
|
|
4735
|
-
template: "<td *ngIf=\"reorderController.leftReorderActivated$ | async\" class=\"fs-list-col drag-col\"></td>\n\n<td *ngIf=\"selection\" class=\"fs-list-col fs-list-col-selection\"></td>\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn\">\n <td fs-list-footer-cell\n *ngIf=\"!column.footerColspanned\"\n [column]=\"column\"\n [
|
|
4743
|
+
template: "<td *ngIf=\"reorderController.leftReorderActivated$ | async\" class=\"fs-list-col drag-col\"></td>\n\n<td *ngIf=\"selection\" class=\"fs-list-col fs-list-col-selection\"></td>\n<ng-container *ngFor=\"let column of columns; trackBy: trackByFn\">\n <td fs-list-footer-cell\n *ngIf=\"!column.footerColspanned\"\n [column]=\"column\"\n [rows]=\"rows\"\n [ngClass]=\"column.footerConfigs.classesArray\"\n [attr.colspan]=\"column.footerConfigs.colspan\"\n [attr.width]=\"column.width\">\n </td>\n</ng-container>\n\n<!-- Drag -->\n<td *ngIf=\"reorderController.rightReorderActivated$ | async\" class=\"fs-list-col row-actions\"></td>\n\n<!-- Row Actions -->\n<td *ngIf=\"hasRowActions && !(reorderController.enabled && reorderController.strategy === ReorderStrategy.Manual)\" class=\"fs-list-col drag-col\"></td>\n",
|
|
4736
4744
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
4737
4745
|
}),
|
|
4738
4746
|
__metadata("design:paramtypes", [ElementRef,
|
|
@@ -4746,7 +4754,16 @@ let FsFooterCellComponent = class FsFooterCellComponent extends FsCellComponent
|
|
|
4746
4754
|
constructor() {
|
|
4747
4755
|
super();
|
|
4748
4756
|
}
|
|
4757
|
+
_initCellContext() {
|
|
4758
|
+
this.cellContext.column = this.column;
|
|
4759
|
+
this.cellContext.$implicit = this.rows
|
|
4760
|
+
.map((row) => row.data);
|
|
4761
|
+
}
|
|
4749
4762
|
};
|
|
4763
|
+
__decorate([
|
|
4764
|
+
Input(),
|
|
4765
|
+
__metadata("design:type", Array)
|
|
4766
|
+
], FsFooterCellComponent.prototype, "rows", void 0);
|
|
4750
4767
|
FsFooterCellComponent = __decorate([
|
|
4751
4768
|
Component({
|
|
4752
4769
|
selector: '[fs-list-footer-cell]',
|