@coolon/angular-ui-powerups 13.5.3 → 13.6.1
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/esm2020/lib/angular-ui-powerups.module.mjs +8 -4
- package/esm2020/lib/components/components.module.mjs +6 -3
- package/esm2020/lib/components/exports.mjs +2 -1
- package/esm2020/lib/components/tables/abstract-table-model.mjs +10 -5
- package/esm2020/lib/components/tables/abstract-table.component.mjs +14 -60
- package/esm2020/lib/components/tables/paginator/paginator.component.mjs +2 -2
- package/esm2020/lib/components/tables/renderer/table-body/table-body.component.mjs +112 -0
- package/esm2020/lib/components/tables/table/table-model.mjs +21 -2
- package/esm2020/lib/components/tables/table/table.component.mjs +29 -16
- package/esm2020/lib/components/tables/tree-table/tree-table-component.mjs +9 -12
- package/fesm2015/coolon-angular-ui-powerups.mjs +424 -326
- package/fesm2015/coolon-angular-ui-powerups.mjs.map +1 -1
- package/fesm2020/coolon-angular-ui-powerups.mjs +464 -366
- package/fesm2020/coolon-angular-ui-powerups.mjs.map +1 -1
- package/lib/angular-ui-powerups.module.d.ts +4 -3
- package/lib/components/components.module.d.ts +23 -22
- package/lib/components/exports.d.ts +1 -0
- package/lib/components/tables/abstract-table-model.d.ts +5 -3
- package/lib/components/tables/abstract-table.component.d.ts +7 -13
- package/lib/components/tables/renderer/table-body/table-body.component.d.ts +35 -0
- package/lib/components/tables/table/table-model.d.ts +7 -2
- package/lib/components/tables/table/table.component.d.ts +7 -5
- package/lib/components/tables/tree-table/tree-table-component.d.ts +2 -2
- package/package.json +2 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Component,
|
|
2
|
+
import { Component, HostBinding, Injector, Input } from "@angular/core";
|
|
3
3
|
import { Dsl, MutableValueModel, StoreInValueModel, TrackExternal, ValueModel } from '@coolon/pectin';
|
|
4
4
|
import { lang } from '@coolon/typescript-utilities';
|
|
5
|
-
import {
|
|
5
|
+
import { DisposableComponent } from "../disposable-component";
|
|
6
6
|
import { CustomTemplateColumnModel } from "./column/custom-template-column-model";
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
/**
|
|
@@ -64,9 +64,9 @@ import * as i0 from "@angular/core";
|
|
|
64
64
|
* }
|
|
65
65
|
* }
|
|
66
66
|
*/
|
|
67
|
-
export class AbstractTableComponent extends
|
|
68
|
-
constructor(
|
|
69
|
-
super(
|
|
67
|
+
export class AbstractTableComponent extends DisposableComponent {
|
|
68
|
+
constructor(injector) {
|
|
69
|
+
super();
|
|
70
70
|
this.injector = injector;
|
|
71
71
|
/**
|
|
72
72
|
* Set to true to enable scrolling. Once enabled the table will have 0 implicit height. You will either
|
|
@@ -79,33 +79,14 @@ export class AbstractTableComponent extends ResizeAwareComponent {
|
|
|
79
79
|
this.rowHeight = new MutableValueModel(48);
|
|
80
80
|
this.baseCssClass = 'aup-table-component';
|
|
81
81
|
const { chain, when } = Dsl.disposeWith(this);
|
|
82
|
-
const actualHeaderHeight = chain(this.showHeaderModel).map(show => {
|
|
83
|
-
return show ? this.headerHeight.value : 0;
|
|
84
|
-
}, { dependsOn: this.headerHeight });
|
|
85
|
-
this.visibleRowCount = chain(this.boundsModel).map(bounds => {
|
|
86
|
-
// TODO: this doesn't take into account any css styling adjustments etc. Will investigate if it's an issue.
|
|
87
|
-
const rawRowCount = (bounds.height - actualHeaderHeight.value) / this.rowHeight.value;
|
|
88
|
-
return rawRowCount < 1 ? 0 : Math.floor(rawRowCount);
|
|
89
|
-
}, {
|
|
90
|
-
dependsOn: [actualHeaderHeight, this.rowHeight],
|
|
91
|
-
postponeWhile: chain(this.boundsModel).pluckNumeric('height').isLessThan(1)
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
get hideHeader() {
|
|
95
|
-
return !this.showHeader;
|
|
96
|
-
}
|
|
97
|
-
getModel() {
|
|
98
|
-
return lang.abstractMethod(this.constructor);
|
|
99
82
|
}
|
|
100
83
|
ngOnInit() {
|
|
101
84
|
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
102
85
|
this.getModel().initialise(this.injector);
|
|
103
|
-
this.
|
|
104
|
-
this.columnIds = chain(this.columns).pluck('columnId');
|
|
105
|
-
this.columnsById = chain(this.columns).indexBy('columnId');
|
|
86
|
+
this.columnsById = chain(this.getModel().columns).indexBy('columnId');
|
|
106
87
|
}
|
|
107
|
-
|
|
108
|
-
return
|
|
88
|
+
getModel() {
|
|
89
|
+
return lang.abstractMethod(this.constructor);
|
|
109
90
|
}
|
|
110
91
|
registerColumnTemplate(columnId, templateRef, viewContainer, fillCell, padChild) {
|
|
111
92
|
const column = this.columnsById.get(columnId);
|
|
@@ -113,36 +94,15 @@ export class AbstractTableComponent extends ResizeAwareComponent {
|
|
|
113
94
|
column.setTemplate(templateRef, viewContainer, fillCell, padChild);
|
|
114
95
|
}
|
|
115
96
|
}
|
|
116
|
-
notifyCellClicked(columnModel, row) {
|
|
117
|
-
this.getModel()._notifyCellClicked(columnModel, row);
|
|
118
|
-
}
|
|
119
|
-
// @Trace()
|
|
120
|
-
isFirstVisibleColumn(columnId) {
|
|
121
|
-
return this.getModel().firstVisibleColumn$.query().value?.columnId === columnId;
|
|
122
|
-
}
|
|
123
|
-
// @Trace()
|
|
124
|
-
isLastVisibleColumn(columnId) {
|
|
125
|
-
return this.getModel().lastVisibleColumn$.query().value?.columnId === columnId;
|
|
126
|
-
}
|
|
127
|
-
getColumnClasses(columnId) {
|
|
128
|
-
const classes = [`aup-col-${this.columnsById.get(columnId).dasherisedColumnId}`];
|
|
129
|
-
if (this.isFirstVisibleColumn(columnId)) {
|
|
130
|
-
classes.push('first-visible-column');
|
|
131
|
-
}
|
|
132
|
-
if (this.isLastVisibleColumn(columnId)) {
|
|
133
|
-
classes.push('last-visible-column');
|
|
134
|
-
}
|
|
135
|
-
return classes;
|
|
136
|
-
}
|
|
137
97
|
}
|
|
138
|
-
AbstractTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AbstractTableComponent, deps: [{ token: i0.
|
|
139
|
-
AbstractTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AbstractTableComponent, selector: "aup-abstract-table", inputs: {
|
|
98
|
+
AbstractTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AbstractTableComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
99
|
+
AbstractTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: AbstractTableComponent, selector: "aup-abstract-table", inputs: { showHeader$: "showHeader$", showHeader: "showHeader", enableScrolling: "enableScrolling" }, host: { properties: { "class": "this.baseCssClass" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
140
100
|
__decorate([
|
|
141
101
|
TrackExternal({ defaultValue: true }),
|
|
142
102
|
__metadata("design:type", ValueModel)
|
|
143
|
-
], AbstractTableComponent.prototype, "
|
|
103
|
+
], AbstractTableComponent.prototype, "showHeader$", void 0);
|
|
144
104
|
__decorate([
|
|
145
|
-
StoreInValueModel(
|
|
105
|
+
StoreInValueModel("showHeader$"),
|
|
146
106
|
__metadata("design:type", Boolean)
|
|
147
107
|
], AbstractTableComponent.prototype, "showHeader", void 0);
|
|
148
108
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: AbstractTableComponent, decorators: [{
|
|
@@ -151,20 +111,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
|
|
|
151
111
|
selector: 'aup-abstract-table',
|
|
152
112
|
template: ''
|
|
153
113
|
}]
|
|
154
|
-
}], ctorParameters: function () { return [{ type: i0.
|
|
114
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { showHeader$: [{
|
|
155
115
|
type: Input
|
|
156
116
|
}], showHeader: [{
|
|
157
117
|
type: Input
|
|
158
118
|
}], enableScrolling: [{
|
|
159
119
|
type: Input
|
|
160
|
-
}, {
|
|
161
|
-
type: HostBinding,
|
|
162
|
-
args: ['class.enable-scrolling']
|
|
163
120
|
}], baseCssClass: [{
|
|
164
121
|
type: HostBinding,
|
|
165
122
|
args: ['class']
|
|
166
|
-
}], hideHeader: [{
|
|
167
|
-
type: HostBinding,
|
|
168
|
-
args: ['class.hide-header']
|
|
169
123
|
}] } });
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvYWJzdHJhY3QtdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixXQUFXLEVBQUUsUUFBUSxFQUNyQixLQUFLLEVBQ0wsTUFBTSxFQUlQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxHQUFHLEVBR0gsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR2pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOztBQUVsRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBERztBQUtILE1BQU0sT0FBTyxzQkFBNEIsU0FBUSxvQkFBb0I7SUFpQ25FLFlBQVksVUFBc0IsRUFBRSxNQUFjLEVBQW1CLFFBQWtCO1FBQ3JGLEtBQUssQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFEeUMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQXZCdkY7Ozs7V0FJRztRQUdILG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBU3hCLGtFQUFrRTtRQUNqRCxpQkFBWSxHQUFHLElBQUksaUJBQWlCLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDakQsY0FBUyxHQUFHLElBQUksaUJBQWlCLENBQVMsRUFBRSxDQUFDLENBQUM7UUFHL0QsaUJBQVksR0FBRyxxQkFB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RUFBRSxFQUFFO2lCQUNiOzZJQUtDLGVBQWU7c0JBRmQsS0FBSztnQkFNTixVQUFVO3NCQUZULEtBQUs7Z0JBV04sZUFBZTtzQkFGZCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLHdCQUF3QjtnQkFlckMsWUFBWTtzQkFEWCxXQUFXO3VCQUFDLE9BQU87Z0JBdUJoQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZywgSW5qZWN0b3IsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gIERzbCwgTGlzdE1vZGVsLFxuICBMaXN0TW9kZWxDaGFpbixcbiAgTWFwTW9kZWxDaGFpbixcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFN0b3JlSW5WYWx1ZU1vZGVsLFxuICBUcmFja0V4dGVybmFsLFxuICBWYWx1ZU1vZGVsXG59IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IGxhbmcgfSBmcm9tICdAY29vbG9uL3R5cGVzY3JpcHQtdXRpbGl0aWVzJztcbmltcG9ydCB7IFJlc2l6ZUF3YXJlQ29tcG9uZW50IH0gZnJvbSAnLi4vcmVzaXplLWF3YXJlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBYnN0cmFjdFRhYmxlTW9kZWwgfSBmcm9tICcuL2Fic3RyYWN0LXRhYmxlLW1vZGVsJztcbmltcG9ydCB7IENvbHVtbk1vZGVsIH0gZnJvbSAnLi9jb2x1bW4vY29sdW1uLW1vZGVsJztcbmltcG9ydCB7IEN1c3RvbVRlbXBsYXRlQ29sdW1uTW9kZWwgfSBmcm9tIFwiLi9jb2x1bW4vY3VzdG9tLXRlbXBsYXRlLWNvbHVtbi1tb2RlbFwiO1xuXG4vKipcbiAqIENyZWF0ZSB5b3VyIG1vZGVsOlxuICogQGV4YW1wbGVcbiAqIHRoaXMuaGVyb1RhYmxlTW9kZWwgPSBuZXcgVGFibGVNb2RlbChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5wbHVjayhcImZpcnN0TmFtZVwiKTtcbiAqICAgdGFibGUucGx1Y2soXCJsYXN0TmFtZVwiKTtcbiAqICAgdGFibGUuYWRkQ3VzdG9tQ29sdW1uKFwiZnVsbE5hbWVcIiwgaGVybyA9PiBgJHtoZXJvLmZpcnN0TmFtZX0gJHtoZXJvLmxhc3ROYW1lfWApO1xuICogfSk7XG4gKlxuICogQ3JlYXRlIHlvdXIgdGFibGVcbiAqIEBleGFtcGxlXG4gKiA8YXVwLXRhYmxlIFt0YWJsZU1vZGVsXT1cImhlcm9UYWJsZU1vZGVsXCI+PC9hdXAtdGFibGU+XG4gKlxuICogQ29sdW1uIHRlbXBsYXRlc1xuICogQGV4YW1wbGVcbiAqIHRoaXMuaGVyb1RhYmxlTW9kZWwgPSBuZXcgVGFibGVNb2RlbChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5wbHVjayhcImZpcnN0TmFtZVwiKTtcbiAqICAgdGFibGUucGx1Y2soXCJsYXN0TmFtZVwiKTtcbiAqICAgdGFibGUuYWRkVGVtcGxhdGVDb2x1bW4oXCJzcGVjaWFsQ29sdW1uXCIpO1xuICogfSk7XG4gKiA8YXVwLXRhYmxlIFt0YWJsZU1vZGVsXT1cImhlcm9UYWJsZU1vZGVsXCI+XG4gKiAgIDxkaXYgKmF1cENvbHVtblRlbXBsYXRlPVwibGV0IGhlcm87IGNvbHVtbklkOiAnc3BlY2lhbENvbHVtbic7IGZpbGxDZWxsOiB0cnVlOyBwYWRDaGlsZDpmYWxzZVwiPlxuICogICAgIHt7aGVyby5uYW1lfX1cbiAqICAgPC9kaXY+XG4gKiA8L2F1cC10YWJsZT5cbiAqXG4gKiBTdHlsaW5nXG4gKiBAZXhhbXBsZVxuICogIC8vIGdsb2JhbCBzZXR0aW5nc1xuICogOnJvb3Qge1xuICogICAtLWF1cC10YWJsZS1jb2x1bW4tZ2FwOiAxMHB4OyAvLyBkZWZhdWx0cyB0byAyNHB4XG4gKiAgIC0tYXVwLXRhYmxlLXJvdy1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMDUpXG4gKiAgIC0tYXVwLXRhYmxlLXJvdy1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yOiByZWJlY2NhcHVycGxlOyAvLyBkZWZhdWx0cyB0byB0cmFuc3BhcmVudFxuICogICAtLWF1cC10YWJsZS1maXJzdC1jb2x1bW4tcGFkZGluZy1sZWZ0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICogICAtLWF1cC10YWJsZS1sYXN0LWNvbHVtbi1wYWRkaW5nLXJpZ2h0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICogfVxuICpcbiAqIC8vIHBlciB0YWJsZSBzZXR0aW5ncy5cbiAqIGF1cC10YWJsZSB7XG4gKiAgIC0tY29sdW1uLWdhcDogMTBweDsgLy8gZGVmYXVsdHMgdG8gMjRweFxuICogICAtLXJvdy1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMDUpXG4gKiAgIC0tcm93LXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3I6IHJlYmVjY2FwdXJwbGU7IC8vIGRlZmF1bHRzIHRvIHRyYW5zcGFyZW50XG4gKiAgIC0tZmlyc3QtY29sdW1uLXBhZGRpbmctbGVmdDogMThweCAvLyBkZWZhdWx0cyB0byAtLWNvbHVtbi1nYXBcbiAqICAgLS1sYXN0LWNvbHVtbi1wYWRkaW5nLXJpZ2h0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICpcbiAqICAgYXVwLXRhYmxlLWhlYWRlci1jZWxsLXJlbmRlcmVyLFxuICogICBhdXAtdGFibGUtY2VsbC1yZW5kZXJlciB7XG4gKiAgICAgJi5hdXAtY29sLW15LWRhc2hlcmlzZWQtY29sdW1uLWlkIHtcbiAqICAgICAgIC8vIGRvIHN0dWZmXG4gKiAgICAgfVxuICogICAgICYuZmlyc3QtdmlzaWJsZS1jb2x1bW4ge1xuICogICAgICAgLy8gZG8gc3R1ZmZcbiAqICAgICB9XG4gKiAgICAgJi5sYXN0LXZpc2libGUtY29sdW1uIHtcbiAqICAgICAgIC8vIGRvIHN0dWZmXG4gKiAgICAgfVxuICogICB9XG4gKiB9XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1hYnN0cmFjdC10YWJsZScsXG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBjbGFzcyBBYnN0cmFjdFRhYmxlQ29tcG9uZW50PFJvdz4gZXh0ZW5kcyBSZXNpemVBd2FyZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgQFRyYWNrRXh0ZXJuYWwoeyBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgc2hvd0hlYWRlck1vZGVsOiBWYWx1ZU1vZGVsPGJvb2xlYW4+O1xuXG4gIEBJbnB1dCgpXG4gIEBTdG9yZUluVmFsdWVNb2RlbCgnc2hvd0hlYWRlck1vZGVsJylcbiAgc2hvd0hlYWRlcjogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0IHRvIHRydWUgdG8gZW5hYmxlIHNjcm9sbGluZy4gIE9uY2UgZW5hYmxlZCB0aGUgdGFibGUgd2lsbCBoYXZlIDAgaW1wbGljaXQgaGVpZ2h0LiAgWW91IHdpbGwgZWl0aGVyXG4gICAqIG5lZWQgdG8gc2V0IGl0IGV4cGxpY2l0bHkgZS5nLiBoZWlnaHQ6IDQwMHB4OyBvciBieSB1c2luZyBmbGV4IG9yIGdyaWQgbGF5b3V0IHRvIG1ha2UgaXQgZmlsbCBpdCdzXG4gICAqIGNvbnRhaW5tZW50IGFyZWEuXG4gICAqL1xuICBASW5wdXQoKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmVuYWJsZS1zY3JvbGxpbmcnKVxuICBlbmFibGVTY3JvbGxpbmcgPSBmYWxzZTtcblxuICBjb2x1bW5zOiBMaXN0TW9kZWxDaGFpbjxDb2x1bW5Nb2RlbDxSb3c+PjtcbiAgY29sdW1uSWRzOiBMaXN0TW9kZWxDaGFpbjxzdHJpbmc+O1xuICBwcml2YXRlIGNvbHVtbnNCeUlkOiBNYXBNb2RlbENoYWluPHN0cmluZywgQ29sdW1uTW9kZWw8Um93Pj47XG5cbiAgcmVhZG9ubHkgdmlzaWJsZVJvd0NvdW50OiBWYWx1ZU1vZGVsPG51bWJlcj47XG5cblxuICAvLyBUT0RPOiBzdXBwb3J0IHVzZXIgZGVmaW5lZCBoZWFkZXIgYW5kIHJvdyBoZWlnaHRzIHZpYSBjc3MgdmFycy5cbiAgcHJpdmF0ZSByZWFkb25seSBoZWFkZXJIZWlnaHQgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8bnVtYmVyPig1Nik7XG4gIHByaXZhdGUgcmVhZG9ubHkgcm93SGVpZ2h0ID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPG51bWJlcj4oNDgpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBiYXNlQ3NzQ2xhc3MgPSAnYXVwLXRhYmxlLWNvbXBvbmVudCc7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZiwgbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZiwgbmdab25lKTtcbiAgICBjb25zdCB7IGNoYWluLCB3aGVuIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG5cbiAgICBjb25zdCBhY3R1YWxIZWFkZXJIZWlnaHQgPSBjaGFpbih0aGlzLnNob3dIZWFkZXJNb2RlbCkubWFwKHNob3cgPT4ge1xuICAgICAgcmV0dXJuIHNob3cgPyB0aGlzLmhlYWRlckhlaWdodC52YWx1ZSA6IDA7XG4gICAgfSwgeyBkZXBlbmRzT246IHRoaXMuaGVhZGVySGVpZ2h0IH0pO1xuXG4gICAgdGhpcy52aXNpYmxlUm93Q291bnQgPSBjaGFpbih0aGlzLmJvdW5kc01vZGVsKS5tYXAoYm91bmRzID0+IHtcbiAgICAgIC8vIFRPRE86IHRoaXMgZG9lc24ndCB0YWtlIGludG8gYWNjb3VudCBhbnkgY3NzIHN0eWxpbmcgYWRqdXN0bWVudHMgZXRjLiAgV2lsbCBpbnZlc3RpZ2F0ZSBpZiBpdCdzIGFuIGlzc3VlLlxuICAgICAgY29uc3QgcmF3Um93Q291bnQgPSAoYm91bmRzLmhlaWdodCAtIGFjdHVhbEhlYWRlckhlaWdodC52YWx1ZSkgLyB0aGlzLnJvd0hlaWdodC52YWx1ZTtcbiAgICAgIHJldHVybiByYXdSb3dDb3VudCA8IDEgPyAwIDogTWF0aC5mbG9vcihyYXdSb3dDb3VudCk7XG4gICAgfSwge1xuICAgICAgZGVwZW5kc09uOiBbYWN0dWFsSGVhZGVySGVpZ2h0LCB0aGlzLnJvd0hlaWdodF0sXG4gICAgICBwb3N0cG9uZVdoaWxlOiBjaGFpbih0aGlzLmJvdW5kc01vZGVsKS5wbHVja051bWVyaWMoJ2hlaWdodCcpLmlzTGVzc1RoYW4oMSlcbiAgICB9KTtcblxuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5oaWRlLWhlYWRlcicpXG4gIGdldCBoaWRlSGVhZGVyKCkge1xuICAgIHJldHVybiAhdGhpcy5zaG93SGVhZGVyO1xuICB9XG5cbiAgZ2V0TW9kZWwoKTogQWJzdHJhY3RUYWJsZU1vZGVsPFJvdz4ge1xuICAgIHJldHVybiBsYW5nLmFic3RyYWN0TWV0aG9kKHRoaXMuY29uc3RydWN0b3IpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSwgc3dpdGNoT24gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICB0aGlzLmdldE1vZGVsKCkuaW5pdGlhbGlzZSh0aGlzLmluamVjdG9yKTtcbiAgICB0aGlzLmNvbHVtbnMgPSBjaGFpbih0aGlzLmdldE1vZGVsKCkuY29sdW1ucyk7XG4gICAgdGhpcy5jb2x1bW5JZHMgPSBjaGFpbih0aGlzLmNvbHVtbnMpLnBsdWNrKCdjb2x1bW5JZCcpO1xuICAgIHRoaXMuY29sdW1uc0J5SWQgPSBjaGFpbih0aGlzLmNvbHVtbnMpLmluZGV4QnkoJ2NvbHVtbklkJyk7XG4gIH1cblxuICBpc0VkaXRpbmcocm93OiBSb3cpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmdldE1vZGVsKCkuZ2V0RWRpdFNlc3Npb25Gb3Iocm93KTtcbiAgfVxuXG4gIHJlZ2lzdGVyQ29sdW1uVGVtcGxhdGUoY29sdW1uSWQ6IHN0cmluZywgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsIGZpbGxDZWxsOiBib29sZWFuLCBwYWRDaGlsZDogYm9vbGVhbikge1xuICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuY29sdW1uc0J5SWQuZ2V0KGNvbHVtbklkKTtcbiAgICBpZiAoY29sdW1uIGluc3RhbmNlb2YgQ3VzdG9tVGVtcGxhdGVDb2x1bW5Nb2RlbCkge1xuICAgICAgY29sdW1uLnNldFRlbXBsYXRlKHRlbXBsYXRlUmVmLCB2aWV3Q29udGFpbmVyLCBmaWxsQ2VsbCwgcGFkQ2hpbGQpO1xuICAgIH1cbiAgfVxuXG4gIG5vdGlmeUNlbGxDbGlja2VkKGNvbHVtbk1vZGVsOiBDb2x1bW5Nb2RlbDxSb3c+LCByb3c6IFJvdykge1xuICAgIHRoaXMuZ2V0TW9kZWwoKS5fbm90aWZ5Q2VsbENsaWNrZWQoY29sdW1uTW9kZWwsIHJvdyk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBpc0ZpcnN0VmlzaWJsZUNvbHVtbihjb2x1bW5JZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TW9kZWwoKS5maXJzdFZpc2libGVDb2x1bW4kLnF1ZXJ5KCkudmFsdWU/LmNvbHVtbklkID09PSBjb2x1bW5JZDtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGlzTGFzdFZpc2libGVDb2x1bW4oY29sdW1uSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldE1vZGVsKCkubGFzdFZpc2libGVDb2x1bW4kLnF1ZXJ5KCkudmFsdWU/LmNvbHVtbklkID09PSBjb2x1bW5JZDtcbiAgfVxuXG4gIGdldENvbHVtbkNsYXNzZXMoY29sdW1uSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGNsYXNzZXMgPSBbYGF1cC1jb2wtJHt0aGlzLmNvbHVtbnNCeUlkLmdldChjb2x1bW5JZCkuZGFzaGVyaXNlZENvbHVtbklkfWBdO1xuICAgIGlmICh0aGlzLmlzRmlyc3RWaXNpYmxlQ29sdW1uKGNvbHVtbklkKSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdmaXJzdC12aXNpYmxlLWNvbHVtbicpO1xuICAgIH1cbiAgICBpZiAodGhpcy5pc0xhc3RWaXNpYmxlQ29sdW1uKGNvbHVtbklkKSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdsYXN0LXZpc2libGUtY29sdW1uJyk7XG4gICAgfVxuICAgIHJldHVybiBjbGFzc2VzO1xuICB9XG59XG4iXX0=
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvYWJzdHJhY3QtdGFibGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFdBQVcsRUFBRSxRQUFRLEVBQ3JCLEtBQUssRUFLTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsR0FBRyxFQUdILGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsYUFBYSxFQUNiLFVBQVUsRUFDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUk5RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFFbEY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwREc7QUFLSCxNQUFNLE9BQU8sc0JBQTRCLFNBQVEsbUJBQW1CO0lBaUNsRSxZQUE2QixRQUFrQjtRQUM3QyxLQUFLLEVBQUUsQ0FBQztRQURtQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBdkIvQzs7OztXQUlHO1FBRUgsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFVeEIsa0VBQWtFO1FBQ2pELGlCQUFZLEdBQUcsSUFBSSxpQkFBaUIsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNqRCxjQUFTLEdBQUcsSUFBSSxpQkFBaUIsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUcvRCxpQkFBWSxHQUFHLHFCQUFxQixDQUFDO1FBSW5DLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pGLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVTLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsc0JBQXNCLENBQUMsUUFBZ0IsRUFBRSxXQUE2QixFQUFFLGFBQStCLEVBQUUsUUFBaUIsRUFBRSxRQUFpQjtRQUMzSSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QyxJQUFJLE1BQU0sWUFBWSx5QkFBeUIsRUFBRTtZQUMvQyxNQUFNLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ3BFO0lBQ0gsQ0FBQzs7bUhBckRVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLCtPQUZ2QixFQUFFO0FBTVo7SUFEQyxhQUFhLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUM7OEJBQ3pCLFVBQVU7MkRBQVU7QUFJakM7SUFEQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUM7OzBEQUNiOzJGQVJULHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsRUFBRTtpQkFDYjsrRkFLQyxXQUFXO3NCQUZWLEtBQUs7Z0JBTU4sVUFBVTtzQkFGVCxLQUFLO2dCQVVOLGVBQWU7c0JBRGQsS0FBSztnQkFnQk4sWUFBWTtzQkFEWCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLCBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25Jbml0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgRHNsLCBMaXN0TW9kZWwsXG4gIExpc3RNb2RlbENoYWluLFxuICBNYXBNb2RlbENoYWluLFxuICBNdXRhYmxlVmFsdWVNb2RlbCxcbiAgU3RvcmVJblZhbHVlTW9kZWwsXG4gIFRyYWNrRXh0ZXJuYWwsXG4gIFZhbHVlTW9kZWxcbn0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgbGFuZyB9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gXCIuLi9kaXNwb3NhYmxlLWNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUmVzaXplQXdhcmVDb21wb25lbnQgfSBmcm9tICcuLi9yZXNpemUtYXdhcmUuY29tcG9uZW50JztcbmltcG9ydCB7IEFic3RyYWN0VGFibGVNb2RlbCB9IGZyb20gJy4vYWJzdHJhY3QtdGFibGUtbW9kZWwnO1xuaW1wb3J0IHsgQ29sdW1uTW9kZWwgfSBmcm9tICcuL2NvbHVtbi9jb2x1bW4tbW9kZWwnO1xuaW1wb3J0IHsgQ3VzdG9tVGVtcGxhdGVDb2x1bW5Nb2RlbCB9IGZyb20gXCIuL2NvbHVtbi9jdXN0b20tdGVtcGxhdGUtY29sdW1uLW1vZGVsXCI7XG5cbi8qKlxuICogQ3JlYXRlIHlvdXIgbW9kZWw6XG4gKiBAZXhhbXBsZVxuICogdGhpcy5oZXJvVGFibGVNb2RlbCA9IG5ldyBUYWJsZU1vZGVsKGhlcm9MaXN0LCB0YWJsZSA9PiB7XG4gKiAgIHRhYmxlLnBsdWNrKFwiZmlyc3ROYW1lXCIpO1xuICogICB0YWJsZS5wbHVjayhcImxhc3ROYW1lXCIpO1xuICogICB0YWJsZS5hZGRDdXN0b21Db2x1bW4oXCJmdWxsTmFtZVwiLCBoZXJvID0+IGAke2hlcm8uZmlyc3ROYW1lfSAke2hlcm8ubGFzdE5hbWV9YCk7XG4gKiB9KTtcbiAqXG4gKiBDcmVhdGUgeW91ciB0YWJsZVxuICogQGV4YW1wbGVcbiAqIDxhdXAtdGFibGUgW3RhYmxlTW9kZWxdPVwiaGVyb1RhYmxlTW9kZWxcIj48L2F1cC10YWJsZT5cbiAqXG4gKiBDb2x1bW4gdGVtcGxhdGVzXG4gKiBAZXhhbXBsZVxuICogdGhpcy5oZXJvVGFibGVNb2RlbCA9IG5ldyBUYWJsZU1vZGVsKGhlcm9MaXN0LCB0YWJsZSA9PiB7XG4gKiAgIHRhYmxlLnBsdWNrKFwiZmlyc3ROYW1lXCIpO1xuICogICB0YWJsZS5wbHVjayhcImxhc3ROYW1lXCIpO1xuICogICB0YWJsZS5hZGRUZW1wbGF0ZUNvbHVtbihcInNwZWNpYWxDb2x1bW5cIik7XG4gKiB9KTtcbiAqIDxhdXAtdGFibGUgW3RhYmxlTW9kZWxdPVwiaGVyb1RhYmxlTW9kZWxcIj5cbiAqICAgPGRpdiAqYXVwQ29sdW1uVGVtcGxhdGU9XCJsZXQgaGVybzsgY29sdW1uSWQ6ICdzcGVjaWFsQ29sdW1uJzsgZmlsbENlbGw6IHRydWU7IHBhZENoaWxkOmZhbHNlXCI+XG4gKiAgICAge3toZXJvLm5hbWV9fVxuICogICA8L2Rpdj5cbiAqIDwvYXVwLXRhYmxlPlxuICpcbiAqIFN0eWxpbmdcbiAqIEBleGFtcGxlXG4gKiAgLy8gZ2xvYmFsIHNldHRpbmdzXG4gKiA6cm9vdCB7XG4gKiAgIC0tYXVwLXRhYmxlLWNvbHVtbi1nYXA6IDEwcHg7IC8vIGRlZmF1bHRzIHRvIDI0cHhcbiAqICAgLS1hdXAtdGFibGUtcm93LWhvdmVyLWJhY2tncm91bmQtY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4wNSlcbiAqICAgLS1hdXAtdGFibGUtcm93LXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3I6IHJlYmVjY2FwdXJwbGU7IC8vIGRlZmF1bHRzIHRvIHRyYW5zcGFyZW50XG4gKiAgIC0tYXVwLXRhYmxlLWZpcnN0LWNvbHVtbi1wYWRkaW5nLWxlZnQ6IDE4cHggLy8gZGVmYXVsdHMgdG8gLS1jb2x1bW4tZ2FwXG4gKiAgIC0tYXVwLXRhYmxlLWxhc3QtY29sdW1uLXBhZGRpbmctcmlnaHQ6IDE4cHggLy8gZGVmYXVsdHMgdG8gLS1jb2x1bW4tZ2FwXG4gKiB9XG4gKlxuICogLy8gcGVyIHRhYmxlIHNldHRpbmdzLlxuICogYXVwLXRhYmxlIHtcbiAqICAgLS1jb2x1bW4tZ2FwOiAxMHB4OyAvLyBkZWZhdWx0cyB0byAyNHB4XG4gKiAgIC0tcm93LWhvdmVyLWJhY2tncm91bmQtY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4wNSlcbiAqICAgLS1yb3ctc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvcjogcmViZWNjYXB1cnBsZTsgLy8gZGVmYXVsdHMgdG8gdHJhbnNwYXJlbnRcbiAqICAgLS1maXJzdC1jb2x1bW4tcGFkZGluZy1sZWZ0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICogICAtLWxhc3QtY29sdW1uLXBhZGRpbmctcmlnaHQ6IDE4cHggLy8gZGVmYXVsdHMgdG8gLS1jb2x1bW4tZ2FwXG4gKlxuICogICBhdXAtdGFibGUtaGVhZGVyLWNlbGwtcmVuZGVyZXIsXG4gKiAgIGF1cC10YWJsZS1jZWxsLXJlbmRlcmVyIHtcbiAqICAgICAmLmF1cC1jb2wtbXktZGFzaGVyaXNlZC1jb2x1bW4taWQge1xuICogICAgICAgLy8gZG8gc3R1ZmZcbiAqICAgICB9XG4gKiAgICAgJi5maXJzdC12aXNpYmxlLWNvbHVtbiB7XG4gKiAgICAgICAvLyBkbyBzdHVmZlxuICogICAgIH1cbiAqICAgICAmLmxhc3QtdmlzaWJsZS1jb2x1bW4ge1xuICogICAgICAgLy8gZG8gc3R1ZmZcbiAqICAgICB9XG4gKiAgIH1cbiAqIH1cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLWFic3RyYWN0LXRhYmxlJyxcbiAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGNsYXNzIEFic3RyYWN0VGFibGVDb21wb25lbnQ8Um93PiBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIEBUcmFja0V4dGVybmFsKHsgZGVmYXVsdFZhbHVlOiB0cnVlIH0pXG4gIHNob3dIZWFkZXIkOiBWYWx1ZU1vZGVsPGJvb2xlYW4+O1xuXG4gIEBJbnB1dCgpXG4gIEBTdG9yZUluVmFsdWVNb2RlbChcInNob3dIZWFkZXIkXCIpXG4gIHNob3dIZWFkZXI6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNldCB0byB0cnVlIHRvIGVuYWJsZSBzY3JvbGxpbmcuICBPbmNlIGVuYWJsZWQgdGhlIHRhYmxlIHdpbGwgaGF2ZSAwIGltcGxpY2l0IGhlaWdodC4gIFlvdSB3aWxsIGVpdGhlclxuICAgKiBuZWVkIHRvIHNldCBpdCBleHBsaWNpdGx5IGUuZy4gaGVpZ2h0OiA0MDBweDsgb3IgYnkgdXNpbmcgZmxleCBvciBncmlkIGxheW91dCB0byBtYWtlIGl0IGZpbGwgaXQnc1xuICAgKiBjb250YWlubWVudCBhcmVhLlxuICAgKi9cbiAgQElucHV0KClcbiAgZW5hYmxlU2Nyb2xsaW5nID0gZmFsc2U7XG5cblxuICBjb2x1bW5zOiBMaXN0TW9kZWxDaGFpbjxDb2x1bW5Nb2RlbDxSb3c+PjtcbiAgY29sdW1uSWRzOiBMaXN0TW9kZWxDaGFpbjxzdHJpbmc+O1xuICBwcml2YXRlIGNvbHVtbnNCeUlkOiBNYXBNb2RlbENoYWluPHN0cmluZywgQ29sdW1uTW9kZWw8Um93Pj47XG5cbiAgcmVhZG9ubHkgdmlzaWJsZVJvd0NvdW50OiBWYWx1ZU1vZGVsPG51bWJlcj47XG5cblxuICAvLyBUT0RPOiBzdXBwb3J0IHVzZXIgZGVmaW5lZCBoZWFkZXIgYW5kIHJvdyBoZWlnaHRzIHZpYSBjc3MgdmFycy5cbiAgcHJpdmF0ZSByZWFkb25seSBoZWFkZXJIZWlnaHQgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8bnVtYmVyPig1Nik7XG4gIHByaXZhdGUgcmVhZG9ubHkgcm93SGVpZ2h0ID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPG51bWJlcj4oNDgpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBiYXNlQ3NzQ2xhc3MgPSAnYXVwLXRhYmxlLWNvbXBvbmVudCc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcigpO1xuICAgIGNvbnN0IHsgY2hhaW4sIHdoZW4gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHsgY2hhaW4sIHZhbHVlT2YsIGJlZm9yZSwgd2hlbiwgYWZ0ZXIsIG9ic2VydmUsIHN3aXRjaE9uIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgdGhpcy5nZXRNb2RlbCgpLmluaXRpYWxpc2UodGhpcy5pbmplY3Rvcik7XG4gICAgdGhpcy5jb2x1bW5zQnlJZCA9IGNoYWluKHRoaXMuZ2V0TW9kZWwoKS5jb2x1bW5zKS5pbmRleEJ5KCdjb2x1bW5JZCcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IEFic3RyYWN0VGFibGVNb2RlbDxSb3c+IHtcbiAgICByZXR1cm4gbGFuZy5hYnN0cmFjdE1ldGhvZCh0aGlzLmNvbnN0cnVjdG9yKTtcbiAgfVxuXG4gIHJlZ2lzdGVyQ29sdW1uVGVtcGxhdGUoY29sdW1uSWQ6IHN0cmluZywgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsIGZpbGxDZWxsOiBib29sZWFuLCBwYWRDaGlsZDogYm9vbGVhbikge1xuICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuY29sdW1uc0J5SWQuZ2V0KGNvbHVtbklkKTtcbiAgICBpZiAoY29sdW1uIGluc3RhbmNlb2YgQ3VzdG9tVGVtcGxhdGVDb2x1bW5Nb2RlbCkge1xuICAgICAgY29sdW1uLnNldFRlbXBsYXRlKHRlbXBsYXRlUmVmLCB2aWV3Q29udGFpbmVyLCBmaWxsQ2VsbCwgcGFkQ2hpbGQpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -26,14 +26,14 @@ export class PaginatorComponent extends DisposableComponent {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
PaginatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: PaginatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
PaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: PaginatorComponent, selector: "aup-paginator", inputs: { pageController: "pageController" }, usesInheritance: true, ngImport: i0, template: "<p>Page {{pageNumber}} of {{totalPages}}</p>\n<button mat-icon-button [pectinCommand]=\"previousCommand\"><aup-icon icon=\"mat:keyboard_arrow_left\"></aup-icon></button>\n<button mat-icon-button [pectinCommand]=\"nextCommand\"><aup-icon icon=\"mat:keyboard_arrow_right\"></aup-icon></button>\n\n", styles: [":host{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;font-size:12px;padding:0 8px;color:#0009}:host p{color:inherit;margin
|
|
29
|
+
PaginatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: PaginatorComponent, selector: "aup-paginator", inputs: { pageController: "pageController" }, usesInheritance: true, ngImport: i0, template: "<p>Page {{pageNumber}} of {{totalPages}}</p>\n<button mat-icon-button [pectinCommand]=\"previousCommand\"><aup-icon icon=\"mat:keyboard_arrow_left\"></aup-icon></button>\n<button mat-icon-button [pectinCommand]=\"nextCommand\"><aup-icon icon=\"mat:keyboard_arrow_right\"></aup-icon></button>\n\n", styles: [":host{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;font-size:12px;padding:0 8px;color:#0009}:host p{color:inherit;margin:0 8px 0 0}:host button.md-button.md-icon-button{padding:0;margin:0;width:30px;height:30px}\n"], components: [{ type: i1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2.IconComponent, selector: "aup-icon", inputs: ["icon"] }], directives: [{ type: i3.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }] });
|
|
30
30
|
__decorate([
|
|
31
31
|
TrackExternal(),
|
|
32
32
|
__metadata("design:type", PageController)
|
|
33
33
|
], PaginatorComponent.prototype, "pageController", void 0);
|
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: PaginatorComponent, decorators: [{
|
|
35
35
|
type: Component,
|
|
36
|
-
args: [{ selector: 'aup-paginator', template: "<p>Page {{pageNumber}} of {{totalPages}}</p>\n<button mat-icon-button [pectinCommand]=\"previousCommand\"><aup-icon icon=\"mat:keyboard_arrow_left\"></aup-icon></button>\n<button mat-icon-button [pectinCommand]=\"nextCommand\"><aup-icon icon=\"mat:keyboard_arrow_right\"></aup-icon></button>\n\n", styles: [":host{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;font-size:12px;padding:0 8px;color:#0009}:host p{color:inherit;margin
|
|
36
|
+
args: [{ selector: 'aup-paginator', template: "<p>Page {{pageNumber}} of {{totalPages}}</p>\n<button mat-icon-button [pectinCommand]=\"previousCommand\"><aup-icon icon=\"mat:keyboard_arrow_left\"></aup-icon></button>\n<button mat-icon-button [pectinCommand]=\"nextCommand\"><aup-icon icon=\"mat:keyboard_arrow_right\"></aup-icon></button>\n\n", styles: [":host{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;font-size:12px;padding:0 8px;color:#0009}:host p{color:inherit;margin:0 8px 0 0}:host button.md-button.md-icon-button{padding:0;margin:0;width:30px;height:30px}\n"] }]
|
|
37
37
|
}], ctorParameters: function () { return []; }, propDecorators: { pageController: [{
|
|
38
38
|
type: Input
|
|
39
39
|
}] } });
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
|
2
|
+
import { Component, ElementRef, EventEmitter, HostBinding, Input, NgZone, Output } from "@angular/core";
|
|
3
|
+
import { Dsl, MutableValueModel, StoreInValueModel, TrackExternal, ValueModel } from "@coolon/pectin";
|
|
4
|
+
import { ResizeAwareComponent } from "../../../resize-aware.component";
|
|
5
|
+
import { AbstractTableModel } from "../../abstract-table-model";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/material/table";
|
|
8
|
+
import * as i2 from "../table-header-cell/table-header-cell.component";
|
|
9
|
+
import * as i3 from "../table-cell/table-cell.component";
|
|
10
|
+
import * as i4 from "@angular/common";
|
|
11
|
+
export class TableBodyComponent extends ResizeAwareComponent {
|
|
12
|
+
constructor(elementRef, ngZone) {
|
|
13
|
+
super(elementRef, ngZone);
|
|
14
|
+
this.visibleRowCount = new EventEmitter();
|
|
15
|
+
/**
|
|
16
|
+
* Set to true to enable scrolling. Once enabled the table will have 0 implicit height. You will either
|
|
17
|
+
* need to set it explicitly e.g. height: 400px; or by using flex or grid layout to make it fill it's
|
|
18
|
+
* containment area.
|
|
19
|
+
*/
|
|
20
|
+
this.enableScrolling = false;
|
|
21
|
+
// TODO: support user defined header and row heights via css vars.
|
|
22
|
+
this.headerHeight = new MutableValueModel(56);
|
|
23
|
+
this.rowHeight = new MutableValueModel(48);
|
|
24
|
+
this.baseCssClass = "aup-table-component";
|
|
25
|
+
const { chain, when } = Dsl.disposeWith(this);
|
|
26
|
+
const actualHeaderHeight = chain(this.showHeader$).map(show => {
|
|
27
|
+
return show ? this.headerHeight.value : 0;
|
|
28
|
+
}, { dependsOn: this.headerHeight });
|
|
29
|
+
this._visibleRowCount = chain(this.boundsModel).map(bounds => {
|
|
30
|
+
// TODO: this doesn't take into account any css styling adjustments etc. Will investigate if it's an issue.
|
|
31
|
+
const rawRowCount = (bounds.height - actualHeaderHeight.value) / this.rowHeight.value;
|
|
32
|
+
return rawRowCount < 1 ? 0 : Math.floor(rawRowCount);
|
|
33
|
+
}, {
|
|
34
|
+
dependsOn: [actualHeaderHeight, this.rowHeight],
|
|
35
|
+
postponeWhile: chain(this.boundsModel).pluckNumeric("height").isLessThan(1)
|
|
36
|
+
});
|
|
37
|
+
when(this._visibleRowCount).changes(visibleRows => {
|
|
38
|
+
this.visibleRowCount.emit(visibleRows);
|
|
39
|
+
}, { initialValue: "triggerChangeUnlessNil" });
|
|
40
|
+
}
|
|
41
|
+
get hideHeader() {
|
|
42
|
+
return !this.showHeader;
|
|
43
|
+
}
|
|
44
|
+
ngOnInit() {
|
|
45
|
+
const { chain } = Dsl.disposeWith(this);
|
|
46
|
+
this.columns = chain(this.tableModel.columns);
|
|
47
|
+
this.columnIds = chain(this.columns).pluck("columnId");
|
|
48
|
+
this.columnsById = chain(this.columns).indexBy('columnId');
|
|
49
|
+
}
|
|
50
|
+
isEditing(row) {
|
|
51
|
+
return !!this.tableModel.getEditSessionFor(row);
|
|
52
|
+
}
|
|
53
|
+
notifyCellClicked(columnModel, row) {
|
|
54
|
+
this.tableModel._notifyCellClicked(columnModel, row);
|
|
55
|
+
}
|
|
56
|
+
// @Trace()
|
|
57
|
+
isFirstVisibleColumn(columnId) {
|
|
58
|
+
return this.tableModel.firstVisibleColumn$.query().value?.columnId === columnId;
|
|
59
|
+
}
|
|
60
|
+
// @Trace()
|
|
61
|
+
isLastVisibleColumn(columnId) {
|
|
62
|
+
return this.tableModel.lastVisibleColumn$.query().value?.columnId === columnId;
|
|
63
|
+
}
|
|
64
|
+
getColumnClasses(columnId) {
|
|
65
|
+
const classes = [`aup-col-${this.columnsById.get(columnId).dasherisedColumnId}`];
|
|
66
|
+
if (this.isFirstVisibleColumn(columnId)) {
|
|
67
|
+
classes.push("first-visible-column");
|
|
68
|
+
}
|
|
69
|
+
if (this.isLastVisibleColumn(columnId)) {
|
|
70
|
+
classes.push("last-visible-column");
|
|
71
|
+
}
|
|
72
|
+
return classes;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
TableBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: TableBodyComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
76
|
+
TableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: TableBodyComponent, selector: "aup-table-body", inputs: { tableModel: "tableModel", showHeader$: "showHeader$", showHeader: "showHeader", enableScrolling: "enableScrolling" }, outputs: { visibleRowCount: "visibleRowCount" }, host: { properties: { "class.enable-scrolling": "this.enableScrolling", "class": "this.baseCssClass", "class.hide-header": "this.hideHeader" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"scroll-container\">\n <table mat-table [dataSource]=\"tableModel.visibleRows$.value\" [trackBy]=\"tableModel.trackBy\">\n\n <ng-container *ngFor=\"let column of columns.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"tableModel.isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"tableModel\"\n [editSession]=\"tableModel.getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds.value\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds.value; let i = index\"\n [ngClass]=\"tableModel.getRowClasses(row)\" [class.enable-hover]=\"tableModel.isHoverEnabled()\"\n [attr.aup-row-id]=\"tableModel.trackBy(i, row)\"\n ></tr>\n\n </table>\n</div>\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n"], components: [{ type: i1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i2.TableHeaderCellComponent, selector: "aup-table-header-cell", inputs: ["column"] }, { type: i3.TableCellComponent, selector: "aup-table-cell", inputs: ["row", "column", "editSession", "tableModel"] }, { type: i1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i1.MatCellDef, selector: "[matCellDef]" }, { type: i1.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
77
|
+
__decorate([
|
|
78
|
+
TrackExternal(),
|
|
79
|
+
__metadata("design:type", AbstractTableModel)
|
|
80
|
+
], TableBodyComponent.prototype, "tableModel", void 0);
|
|
81
|
+
__decorate([
|
|
82
|
+
TrackExternal({ defaultValue: true }),
|
|
83
|
+
__metadata("design:type", ValueModel)
|
|
84
|
+
], TableBodyComponent.prototype, "showHeader$", void 0);
|
|
85
|
+
__decorate([
|
|
86
|
+
StoreInValueModel("showHeader$"),
|
|
87
|
+
__metadata("design:type", Boolean)
|
|
88
|
+
], TableBodyComponent.prototype, "showHeader", void 0);
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: TableBodyComponent, decorators: [{
|
|
90
|
+
type: Component,
|
|
91
|
+
args: [{ selector: "aup-table-body", template: "<div class=\"scroll-container\">\n <table mat-table [dataSource]=\"tableModel.visibleRows$.value\" [trackBy]=\"tableModel.trackBy\">\n\n <ng-container *ngFor=\"let column of columns.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"tableModel.isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"tableModel\"\n [editSession]=\"tableModel.getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds.value\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds.value; let i = index\"\n [ngClass]=\"tableModel.getRowClasses(row)\" [class.enable-hover]=\"tableModel.isHoverEnabled()\"\n [attr.aup-row-id]=\"tableModel.trackBy(i, row)\"\n ></tr>\n\n </table>\n</div>\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n"] }]
|
|
92
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { tableModel: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], showHeader$: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], showHeader: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], visibleRowCount: [{
|
|
99
|
+
type: Output
|
|
100
|
+
}], enableScrolling: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}, {
|
|
103
|
+
type: HostBinding,
|
|
104
|
+
args: ["class.enable-scrolling"]
|
|
105
|
+
}], baseCssClass: [{
|
|
106
|
+
type: HostBinding,
|
|
107
|
+
args: ["class"]
|
|
108
|
+
}], hideHeader: [{
|
|
109
|
+
type: HostBinding,
|
|
110
|
+
args: ["class.hide-header"]
|
|
111
|
+
}] } });
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYm9keS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlcy9yZW5kZXJlci90YWJsZS1ib2R5L3RhYmxlLWJvZHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvcmVuZGVyZXIvdGFibGUtYm9keS90YWJsZS1ib2R5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFDTCxHQUFHLEVBR0gsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQVFoRSxNQUFNLE9BQU8sa0JBQXdCLFNBQVEsb0JBQW9CO0lBd0MvRCxZQUFZLFVBQXNCLEVBQUUsTUFBYztRQUNoRCxLQUFLLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBMUJuQixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUE7UUFFckQ7Ozs7V0FJRztRQUdILG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBU3hCLGtFQUFrRTtRQUNqRCxpQkFBWSxHQUFHLElBQUksaUJBQWlCLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDakQsY0FBUyxHQUFHLElBQUksaUJB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RWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE5nWm9uZSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgRHNsLFxuICBMaXN0TW9kZWxDaGFpbixcbiAgTWFwTW9kZWxDaGFpbixcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFN0b3JlSW5WYWx1ZU1vZGVsLFxuICBUcmFja0V4dGVybmFsLFxuICBWYWx1ZU1vZGVsXG59IGZyb20gXCJAY29vbG9uL3BlY3RpblwiO1xuaW1wb3J0IHsgUmVzaXplQXdhcmVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vLi4vcmVzaXplLWF3YXJlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQWJzdHJhY3RUYWJsZU1vZGVsIH0gZnJvbSBcIi4uLy4uL2Fic3RyYWN0LXRhYmxlLW1vZGVsXCI7XG5pbXBvcnQgeyBDb2x1bW5Nb2RlbCB9IGZyb20gXCIuLi8uLi9jb2x1bW4vY29sdW1uLW1vZGVsXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhdXAtdGFibGUtYm9keVwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3RhYmxlLWJvZHkuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3RhYmxlLWJvZHkuY29tcG9uZW50LnNjc3NcIl0sXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQm9keUNvbXBvbmVudDxSb3c+IGV4dGVuZHMgUmVzaXplQXdhcmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpXG4gIEBUcmFja0V4dGVybmFsKClcbiAgdGFibGVNb2RlbDogQWJzdHJhY3RUYWJsZU1vZGVsPFJvdz47XG5cbiAgQElucHV0KClcbiAgQFRyYWNrRXh0ZXJuYWwoeyBkZWZhdWx0VmFsdWU6IHRydWUgfSlcbiAgc2hvd0hlYWRlciQ6IFZhbHVlTW9kZWw8Ym9vbGVhbj47XG5cbiAgQElucHV0KClcbiAgQFN0b3JlSW5WYWx1ZU1vZGVsKFwic2hvd0hlYWRlciRcIilcbiAgc2hvd0hlYWRlcjogYm9vbGVhbjtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgdmlzaWJsZVJvd0NvdW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KClcblxuICAvKipcbiAgICogU2V0IHRvIHRydWUgdG8gZW5hYmxlIHNjcm9sbGluZy4gIE9uY2UgZW5hYmxlZCB0aGUgdGFibGUgd2lsbCBoYXZlIDAgaW1wbGljaXQgaGVpZ2h0LiAgWW91IHdpbGwgZWl0aGVyXG4gICAqIG5lZWQgdG8gc2V0IGl0IGV4cGxpY2l0bHkgZS5nLiBoZWlnaHQ6IDQwMHB4OyBvciBieSB1c2luZyBmbGV4IG9yIGdyaWQgbGF5b3V0IHRvIG1ha2UgaXQgZmlsbCBpdCdzXG4gICAqIGNvbnRhaW5tZW50IGFyZWEuXG4gICAqL1xuICBASW5wdXQoKVxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5lbmFibGUtc2Nyb2xsaW5nXCIpXG4gIGVuYWJsZVNjcm9sbGluZyA9IGZhbHNlO1xuXG4gIGNvbHVtbnM6IExpc3RNb2RlbENoYWluPENvbHVtbk1vZGVsPFJvdz4+O1xuICBjb2x1bW5JZHM6IExpc3RNb2RlbENoYWluPHN0cmluZz47XG4gIHByaXZhdGUgY29sdW1uc0J5SWQ6IE1hcE1vZGVsQ2hhaW48c3RyaW5nLCBDb2x1bW5Nb2RlbDxSb3c+PjtcblxuICByZWFkb25seSBfdmlzaWJsZVJvd0NvdW50OiBWYWx1ZU1vZGVsPG51bWJlcj47XG5cblxuICAvLyBUT0RPOiBzdXBwb3J0IHVzZXIgZGVmaW5lZCBoZWFkZXIgYW5kIHJvdyBoZWlnaHRzIHZpYSBjc3MgdmFycy5cbiAgcHJpdmF0ZSByZWFkb25seSBoZWFkZXJIZWlnaHQgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8bnVtYmVyPig1Nik7XG4gIHByaXZhdGUgcmVhZG9ubHkgcm93SGVpZ2h0ID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPG51bWJlcj4oNDgpO1xuXG4gIEBIb3N0QmluZGluZyhcImNsYXNzXCIpXG4gIGJhc2VDc3NDbGFzcyA9IFwiYXVwLXRhYmxlLWNvbXBvbmVudFwiO1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIG5nWm9uZTogTmdab25lKSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZiwgbmdab25lKTtcbiAgICBjb25zdCB7IGNoYWluLCB3aGVuIH0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG5cbiAgICBjb25zdCBhY3R1YWxIZWFkZXJIZWlnaHQgPSBjaGFpbih0aGlzLnNob3dIZWFkZXIkKS5tYXAoc2hvdyA9PiB7XG4gICAgICByZXR1cm4gc2hvdyA/IHRoaXMuaGVhZGVySGVpZ2h0LnZhbHVlIDogMDtcbiAgICB9LCB7IGRlcGVuZHNPbjogdGhpcy5oZWFkZXJIZWlnaHQgfSk7XG5cbiAgICB0aGlzLl92aXNpYmxlUm93Q291bnQgPSBjaGFpbih0aGlzLmJvdW5kc01vZGVsKS5tYXAoYm91bmRzID0+IHtcbiAgICAgIC8vIFRPRE86IHRoaXMgZG9lc24ndCB0YWtlIGludG8gYWNjb3VudCBhbnkgY3NzIHN0eWxpbmcgYWRqdXN0bWVudHMgZXRjLiAgV2lsbCBpbnZlc3RpZ2F0ZSBpZiBpdCdzIGFuIGlzc3VlLlxuICAgICAgY29uc3QgcmF3Um93Q291bnQgPSAoYm91bmRzLmhlaWdodCAtIGFjdHVhbEhlYWRlckhlaWdodC52YWx1ZSkgLyB0aGlzLnJvd0hlaWdodC52YWx1ZTtcbiAgICAgIHJldHVybiByYXdSb3dDb3VudCA8IDEgPyAwIDogTWF0aC5mbG9vcihyYXdSb3dDb3VudCk7XG4gICAgfSwge1xuICAgICAgZGVwZW5kc09uOiBbYWN0dWFsSGVhZGVySGVpZ2h0LCB0aGlzLnJvd0hlaWdodF0sXG4gICAgICBwb3N0cG9uZVdoaWxlOiBjaGFpbih0aGlzLmJvdW5kc01vZGVsKS5wbHVja051bWVyaWMoXCJoZWlnaHRcIikuaXNMZXNzVGhhbigxKVxuICAgIH0pO1xuXG4gICAgd2hlbih0aGlzLl92aXNpYmxlUm93Q291bnQpLmNoYW5nZXModmlzaWJsZVJvd3MgPT4ge1xuICAgICAgdGhpcy52aXNpYmxlUm93Q291bnQuZW1pdCh2aXNpYmxlUm93cyk7XG4gICAgfSwge2luaXRpYWxWYWx1ZTogXCJ0cmlnZ2VyQ2hhbmdlVW5sZXNzTmlsXCJ9KTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmhpZGUtaGVhZGVyXCIpXG4gIGdldCBoaWRlSGVhZGVyKCkge1xuICAgIHJldHVybiAhdGhpcy5zaG93SGVhZGVyO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgeyBjaGFpbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuICAgIHRoaXMuY29sdW1ucyA9IGNoYWluKHRoaXMudGFibGVNb2RlbC5jb2x1bW5zKTtcbiAgICB0aGlzLmNvbHVtbklkcyA9IGNoYWluKHRoaXMuY29sdW1ucykucGx1Y2soXCJjb2x1bW5JZFwiKTtcbiAgICB0aGlzLmNvbHVtbnNCeUlkID0gY2hhaW4odGhpcy5jb2x1bW5zKS5pbmRleEJ5KCdjb2x1bW5JZCcpO1xuICB9XG5cbiAgaXNFZGl0aW5nKHJvdzogUm93KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy50YWJsZU1vZGVsLmdldEVkaXRTZXNzaW9uRm9yKHJvdyk7XG4gIH1cblxuICBub3RpZnlDZWxsQ2xpY2tlZChjb2x1bW5Nb2RlbDogQ29sdW1uTW9kZWw8Um93Piwgcm93OiBSb3cpIHtcbiAgICB0aGlzLnRhYmxlTW9kZWwuX25vdGlmeUNlbGxDbGlja2VkKGNvbHVtbk1vZGVsLCByb3cpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgaXNGaXJzdFZpc2libGVDb2x1bW4oY29sdW1uSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRhYmxlTW9kZWwuZmlyc3RWaXNpYmxlQ29sdW1uJC5xdWVyeSgpLnZhbHVlPy5jb2x1bW5JZCA9PT0gY29sdW1uSWQ7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBpc0xhc3RWaXNpYmxlQ29sdW1uKGNvbHVtbklkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50YWJsZU1vZGVsLmxhc3RWaXNpYmxlQ29sdW1uJC5xdWVyeSgpLnZhbHVlPy5jb2x1bW5JZCA9PT0gY29sdW1uSWQ7XG4gIH1cblxuICBnZXRDb2x1bW5DbGFzc2VzKGNvbHVtbklkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjbGFzc2VzID0gW2BhdXAtY29sLSR7dGhpcy5jb2x1bW5zQnlJZC5nZXQoY29sdW1uSWQpLmRhc2hlcmlzZWRDb2x1bW5JZH1gXTtcbiAgICBpZiAodGhpcy5pc0ZpcnN0VmlzaWJsZUNvbHVtbihjb2x1bW5JZCkpIHtcbiAgICAgIGNsYXNzZXMucHVzaChcImZpcnN0LXZpc2libGUtY29sdW1uXCIpO1xuICAgIH1cbiAgICBpZiAodGhpcy5pc0xhc3RWaXNpYmxlQ29sdW1uKGNvbHVtbklkKSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKFwibGFzdC12aXNpYmxlLWNvbHVtblwiKTtcbiAgICB9XG4gICAgcmV0dXJuIGNsYXNzZXM7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzY3JvbGwtY29udGFpbmVyXCI+XG4gIDx0YWJsZSBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwidGFibGVNb2RlbC52aXNpYmxlUm93cyQudmFsdWVcIiBbdHJhY2tCeV09XCJ0YWJsZU1vZGVsLnRyYWNrQnlcIj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zLnZhbHVlOyBpbmRleCBhcyBpbmRleDsgZmlyc3QgYXMgZmlyc3Q7IGxhc3QgYXMgbGFzdFwiXG4gICAgICAgICAgICAgICAgICBtYXRDb2x1bW5EZWY9XCJ7e2NvbHVtbi5jb2x1bW5JZH19XCI+XG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFtjbGFzcy5mbGV4XT1cImNvbHVtbi5pc0ZsZXgoKVwiIFtjbGFzcy5oaWRlXT1cIiFjb2x1bW4uaXNWaXNpYmxlKClcIj5cbiAgICAgICAgPGF1cC10YWJsZS1oZWFkZXItY2VsbCBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuY29sdW1uLWluZGV4XT1cImluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5jb2x1bW4taWRdPVwiY29sdW1uLmNvbHVtbklkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiZ2V0Q29sdW1uQ2xhc3Nlcyhjb2x1bW4uY29sdW1uSWQpXCJcbiAgICAgICAgPjwvYXVwLXRhYmxlLWhlYWRlci1jZWxsPlxuICAgICAgPC90aD5cbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIiAoY2xpY2spPVwibm90aWZ5Q2VsbENsaWNrZWQoY29sdW1uLCByb3cpXCJcbiAgICAgICAgICBbY2xhc3MuZW5hYmxlLWN1cnNvcl09XCJ0YWJsZU1vZGVsLmlzQ3Vyc29yRW5hYmxlZChjb2x1bW4pXCJcbiAgICAgICAgICBbY2xhc3MuZmxleF09XCJjb2x1bW4uaXNGbGV4KClcIlxuICAgICAgICAgIFtjbGFzcy5oaWRlXT1cIiFjb2x1bW4uaXNWaXNpYmxlKClcIlxuICAgICAgPlxuICAgICAgICA8YXVwLXRhYmxlLWNlbGwgW2NvbHVtbl09XCJjb2x1bW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3Jvd109XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3RhYmxlTW9kZWxdPVwidGFibGVNb2RlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZWRpdFNlc3Npb25dPVwidGFibGVNb2RlbC5nZXRFZGl0U2Vzc2lvbkZvcihyb3cpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmNvbHVtbi1pbmRleF09XCJpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5jb2x1bW4taWRdPVwiY29sdW1uLmNvbHVtbklkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJnZXRDb2x1bW5DbGFzc2VzKGNvbHVtbi5jb2x1bW5JZClcIlxuICAgICAgICA+PC9hdXAtdGFibGUtY2VsbD5cbiAgICAgIDwvdGQ+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImNvbHVtbklkcy52YWx1ZVwiPjwvdHI+XG4gICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGNvbHVtbklkcy52YWx1ZTsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInRhYmxlTW9kZWwuZ2V0Um93Q2xhc3Nlcyhyb3cpXCIgW2NsYXNzLmVuYWJsZS1ob3Zlcl09XCJ0YWJsZU1vZGVsLmlzSG92ZXJFbmFibGVkKClcIlxuICAgICAgICBbYXR0ci5hdXAtcm93LWlkXT1cInRhYmxlTW9kZWwudHJhY2tCeShpLCByb3cpXCJcbiAgICA+PC90cj5cblxuICA8L3RhYmxlPlxuPC9kaXY+XG5cbiJdfQ==
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { MutableValueModel, PagedListModel } from "@coolon/pectin";
|
|
2
|
+
import { isNil } from "lodash-es";
|
|
1
3
|
import { AbstractTableModel } from "../abstract-table-model";
|
|
2
4
|
/**
|
|
3
5
|
* Example:
|
|
@@ -81,13 +83,30 @@ import { AbstractTableModel } from "../abstract-table-model";
|
|
|
81
83
|
export class TableModel extends AbstractTableModel {
|
|
82
84
|
constructor(sourceOfTruth, builder) {
|
|
83
85
|
super();
|
|
86
|
+
this._pageSize = new MutableValueModel();
|
|
84
87
|
if (builder) {
|
|
85
88
|
builder(this);
|
|
86
89
|
}
|
|
87
|
-
|
|
90
|
+
if (sourceOfTruth) {
|
|
91
|
+
this.setDataSource(sourceOfTruth);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
get pageController() {
|
|
95
|
+
return this._pageController;
|
|
96
|
+
}
|
|
97
|
+
enablePaging() {
|
|
98
|
+
if (isNil(this.pageController)) {
|
|
99
|
+
const pagedListModel = this.registerDisposable(PagedListModel.wrap(this._visibleRows$.getDelegate()));
|
|
100
|
+
this._visibleRows$.setDelegate(pagedListModel);
|
|
101
|
+
this._pageController = pagedListModel.pageController;
|
|
102
|
+
this._pageController.setPageSize(this._pageSize);
|
|
103
|
+
}
|
|
88
104
|
}
|
|
89
105
|
addSelectionColumn(selectionModel, showSelectionColumn) {
|
|
90
106
|
return this._addSelectionColumn(selectionModel, showSelectionColumn);
|
|
91
107
|
}
|
|
108
|
+
updatePageSize(count) {
|
|
109
|
+
this._pageSize.value = count;
|
|
110
|
+
}
|
|
92
111
|
}
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9jb21wb25lbnRzL3RhYmxlcy90YWJsZS90YWJsZS1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBRWpCLGNBQWMsRUFHZixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHN0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThFRztBQUNILE1BQU0sT0FBTyxVQUFnQixTQUFRLGtCQUF1QjtJQU0xRCxZQUFZLGFBQThCLEVBQUUsT0FBMEM7UUFDcEYsS0FBSyxFQUFFLENBQUM7UUFIRixjQUFTLEdBQUcsSUFBSSxpQkFBaUIsRUFBVSxDQUFDO1FBSWxELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2Y7UUFDRCxJQUFJLGFBQWEsRUFBRTtZQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDOUIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUMsY0FBYyxDQUFDO1lBQ3JELElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNsRDtJQUNILENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxjQUFvQyxFQUFFLG1CQUFtRDtRQUMxRyxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQWE7UUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQy9CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIExpc3RNb2RlbCxcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFBhZ2VDb250cm9sbGVyLFxuICBQYWdlZExpc3RNb2RlbCxcbiAgU2VsZWN0aW9uTW9kZWwsIFRyYW5zYWN0aW9uT2JzZXJ2ZXIsXG4gIFZhbHVlTW9kZWxcbn0gZnJvbSBcIkBjb29sb24vcGVjdGluXCI7XG5pbXBvcnQgeyBpc05pbCB9IGZyb20gXCJsb2Rhc2gtZXNcIjtcbmltcG9ydCB7IEFic3RyYWN0VGFibGVNb2RlbCB9IGZyb20gXCIuLi9hYnN0cmFjdC10YWJsZS1tb2RlbFwiO1xuaW1wb3J0IHsgU2VsZWN0aW9uQ29sdW1uTW9kZWwgfSBmcm9tIFwiLi4vY29sdW1uL3NlbGVjdGlvbi1jb2x1bW4tbW9kZWxcIjtcblxuLyoqXG4gKiBFeGFtcGxlOlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IG1vZGVsID0gbmV3IFRhYmxlTW9kZWwoaGVyb0xpc3QsIHRhYmxlID0+IHtcbiAqICAgdGFibGUucGx1Y2soXCJmaXJzdE5hbWVcIik7XG4gKiAgIHRhYmxlLnBsdWNrKFwibGFzdE5hbWVcIik7XG4gKiAgIHRhYmxlLmFkZEN1c3RvbUNvbHVtbihcImZ1bGxOYW1lXCIsIGhlcm8gPT4gYCR7aGVyby5maXJzdE5hbWV9ICR7aGVyby5sYXN0TmFtZX1gKTtcbiAqIH0pO1xuICpcbiAqIEVkaXRhYmxlIHRhYmxlc1xuICogQGV4YW1wbGVcbiAqIGNvbnN0IHNhdmVDb21tYW5kID0gVW5hcnlDb21tYW5kLmNyZWF0ZSgoZm9ybTogRm9ybTxIZXJvPikgPT4ge1xuICogICBpZiAoZm9ybS52YWxpZGF0ZSgpKSB7XG4gKiAgICAgLy8gbm9ybWFsIGZvcm0gc2F2ZSBzdHVmZlxuICogICAgIHJldHVybiB0cnVlOyAvLyBmaW5pc2ggZWRpdGluZ1xuICogICB9XG4gKiAgIHJldHVybiBmYWxzZTsgLy8gY29udGludWUgZWRpdGlpbmdcbiAqIH1cbiAqIGNvbnN0IGNvbG9yc05hbWVzOiBMaXN0TW9kZWw8c3RyaW5nPiA9IC4uLjtcbiAqIGNvbnN0IG1vZGVsID0gVGFibGVNb2RlbC5mcm9tTGlzdChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5wbHVjayhcImZpcnN0TmFtZVwiKS5jZWxsRWRpdG9yKFN0cmluZ0lucHV0Q29tcG9uZW50KTsgPC0tIGludGVyZmFjZSBDZWxsRWRpdG9yIHsgdmFsdWVNb2RlbDogIERpcnR5VHJhY2tpbmdGb3JtLlZhbHVlTW9kZWw8c3RyaW5nPiB8IFZhbHVlTW9kZWw8c3RyaW5nPjsgfVxuICogICB0YWJsZS5wbHVjayhcImxhc3ROYW1lXCIpLmNlbGxFZGl0b3IoU3RyaW5nSW5wdXRDb21wb25lbnQsIHtcbiAqICAgICB2YWxpZGF0b3JzOiBbVmFsaWRhdG9yLnByZXNlbnQoXCJXZSBuZWVkIGEgbGFzdCBuYW1lXCIpXVxuICogICB9KTtcbiAqICAgdGFibGUucGx1Y2soXCJhZ2VcIikuY2VsbEVkaXRvcihOdW1iZXJJbnB1dENvbXBvbmVudCk7XG4gKiAgIHRhYmxlLnBsdWNrKFwiZmF2b3JpdGVDb2xvclwiKS5jZWxsRWRpdG9yKFNlbGVjdElucHV0Q29tcG9uZW50LCB7XG4gKiAgICAgaW5pdGlhbGlzZUNvbXBvbmVudChjb21wb25lbnQ6IFNlbGVjdElucHV0Q29tcG9uZW50KSB7XG4gKiAgICAgICBzZWxlY3RJbnB1dC5vcHRpb25zTW9kZWwgPSBjb2xvcnNOYW1lczsgLy8gPC0gaW5pdGlhbGlzZSBvdXIgY29tcG9uZW50XG4gKiAgICAgfVxuICogICB9KTtcbiAqICAgdGFibGUuYWRkRWRpdENvbnRyb2xzKHNhdmVDb21tYW5kKTsgLy8gPC0gcmVxdWlyZWQgdG8gZW5hYmxlIGVkaXRpbmdcbiAqIH0pO1xuICpcbiAqIFNlbGVjdGlvbiBtb2RlbHNcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBtb2RlbCA9IG5ldyBUYWJsZU1vZGVsKGhlcm9MaXN0LCB0YWJsZSA9PiB7XG4gKiAgIHRhYmxlLmFkZFNlbGVjdGlvbkNvbHVtbihzZWxlY3Rpb25Nb2RlbCk7IC8vIDwtIGNhbiBiZSBzaW5nbGUgb3IgbXVsdGlwbGUgc2VsZWN0aW9uIG1vZGVsXG4gKiAgIHRhYmxlLnBsdWNrKFwiZmlyc3ROYW1lXCIpO1xuICogICB0YWJsZS5wbHVjayhcImxhc3ROYW1lXCIpO1xuICogfSk7XG4gKlxuICogQ3VzdG9tIGNlbGwgcmVuZGVyZXJzIGFuZCBlZGl0b3JzXG4gKiBAZXhhbXBsZVxuICogY29uc3QgbW9kZWwgPSBuZXcgVGFibGVNb2RlbChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5wbHVjayhcImZhdm9yaXRlQ29sb3JcIilcbiAqICAgICAgLmNlbGxIZWFkZXJSZW5kZXJlcihDZWxsSGVhZGVyUmVuZGVyZXJDb21wb25lbnQsIChjb21wb25lbnQsIGNvbHVtbikgPT4ge1xuICogICAgICAgIC8vIGNvbmZpZ3VyZSB5b3VyIGNvbXBvbmVudCB3aXRoIHdoYXQgZXZlciB5b3UgbmVlZC5cbiAqICAgICAgfSk7XG4gKiAgICAgIC5jZWxsUmVuZGVyZXIoQ2VsbFJlbmRlcmVyQ29tcG9uZW50KSAvLyA8LS0gaW50ZXJmYWNlIENlbGxFZGl0b3IgeyB2YWx1ZTogc3RyaW5nOyB9XG4gKiAgICAgIC5jZWxsRWRpdG9yKENlbGxFZGl0b3JDb21wb25lbnQuKTsgLy8gPC0tIGludGVyZmFjZSBDZWxsRWRpdG9yIHsgdmFsdWVNb2RlbDogIERpcnR5VHJhY2tpbmdGb3JtLlZhbHVlTW9kZWw8c3RyaW5nPiB8IFZhbHVlTW9kZWw8c3RyaW5nPjsgfVxuICogICB0YWJsZS5hZGRDdXN0b21Db2x1bW4oXCJmdWxsTmFtZVwiLCBoZXJvID0+IGAke2hlcm8uZmlyc3ROYW1lfSAke2hlcm8ubGFzdE5hbWV9YCk7XG4gKiB9KTtcbiAqXG4gKiBUZW1wbGF0ZSBjb2x1bW5zXG4gKiBAZXhhbXBsZVxuICogY29uc3QgbW9kZWwgPSBuZXcgVGFibGVNb2RlbChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5hZGRTZWxlY3Rpb25Db2x1bW4oc2VsZWN0aW9uTW9kZWwpOyAvLyA8LSBjYW4gYmUgc2luZ2xlIG9yIG11bHRpcGxlIHNlbGVjdGlvbiBtb2RlbFxuICogICB0YWJsZS5hZGRUZW1wbGF0ZUNvbHVtbihcIm15VGVtcGxhdGVcIik7XG4gKiB9KTtcbiAqXG4gKiA8ZGl2ICphdXBDb2x1bW5UZW1wbGF0ZT1cImxldCBoZXJvOyBjb2x1bW5JZDogJ215VGVtcGxhdGUnXCI+e3toZXJvLmFnZX19PC9kaXY+XG4gKlxuICogSTE4blxuICogQGV4YW1wbGVcbiAqIFt0YWJsZS55bWxdXG4gKiB0YWJsZTpcbiAqICAgY29sdW1ucyhDb2x1bW5UZXh0UHJvcGVydGllc1tdKTpcbiAqICAgICAgZmlyc3ROYW1lOlxuICogICAgICAgICBoZWFkZXJUZXh0OiBcIkZpcnN0IE5hbWVcIlxuICogICAgICBmdWxsTmFtZTpcbiAqICAgICAgICAgaGVhZGVyVGV4dDogXCJGdWxsIE5hbWVcIlxuICpcbiAqIGNvbnN0IG1vZGVsID0gbmV3IFRhYmxlTW9kZWwoaGVyb0xpc3QsIHRhYmxlID0+IHtcbiAqICAgdGFibGUucGx1Y2soXCJmYXZvcml0ZUNvbG9yXCIpLmNlbGxSZW5kZXJlciguLi4pLmNlbGxFZGl0b3IoLi4uKTtcbiAqICAgdGFibGUuYWRkQ3VzdG9tQ29sdW1uKFwiZnVsbE5hbWVcIiwgaGVybyA9PiBgJHtoZXJvLmZpcnN0TmFtZX0gJHtoZXJvLmxhc3ROYW1lfWApO1xuICpcbiAqICAgdGFibGUuY29sdW1uVGV4dFByb3BlcnRpZXMoSTE4bi50YWJsZS5jb2x1bW5zKTsgLy8gPC0gY29uZmlndXJlcyBhbGwgY29sdW1uc1xuICogfSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBUYWJsZU1vZGVsPFJvdz4gZXh0ZW5kcyBBYnN0cmFjdFRhYmxlTW9kZWw8Um93PiB7XG5cbiAgcHJpdmF0ZSBfcGFnZUNvbnRyb2xsZXI6IFBhZ2VDb250cm9sbGVyO1xuXG4gIHByaXZhdGUgX3BhZ2VTaXplID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPG51bWJlcj4oKTtcblxuICBjb25zdHJ1Y3Rvcihzb3VyY2VPZlRydXRoPzogTGlzdE1vZGVsPFJvdz4sIGJ1aWxkZXI/OiAodGFibGU6IFRhYmxlTW9kZWw8Um93PikgPT4gdm9pZCkge1xuICAgIHN1cGVyKCk7XG4gICAgaWYgKGJ1aWxkZXIpIHtcbiAgICAgIGJ1aWxkZXIodGhpcyk7XG4gICAgfVxuICAgIGlmIChzb3VyY2VPZlRydXRoKSB7XG4gICAgICB0aGlzLnNldERhdGFTb3VyY2Uoc291cmNlT2ZUcnV0aCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHBhZ2VDb250cm9sbGVyKCk6IFBhZ2VDb250cm9sbGVyIHtcbiAgICByZXR1cm4gdGhpcy5fcGFnZUNvbnRyb2xsZXI7XG4gIH1cblxuICBlbmFibGVQYWdpbmcoKSB7XG4gICAgaWYgKGlzTmlsKHRoaXMucGFnZUNvbnRyb2xsZXIpKSB7XG4gICAgICBjb25zdCBwYWdlZExpc3RNb2RlbCA9IHRoaXMucmVnaXN0ZXJEaXNwb3NhYmxlKFBhZ2VkTGlzdE1vZGVsLndyYXAodGhpcy5fdmlzaWJsZVJvd3MkLmdldERlbGVnYXRlKCkpKTtcbiAgICAgIHRoaXMuX3Zpc2libGVSb3dzJC5zZXREZWxlZ2F0ZShwYWdlZExpc3RNb2RlbCk7XG4gICAgICB0aGlzLl9wYWdlQ29udHJvbGxlciA9IHBhZ2VkTGlzdE1vZGVsLnBhZ2VDb250cm9sbGVyO1xuICAgICAgdGhpcy5fcGFnZUNvbnRyb2xsZXIuc2V0UGFnZVNpemUodGhpcy5fcGFnZVNpemUpO1xuICAgIH1cbiAgfVxuXG4gIGFkZFNlbGVjdGlvbkNvbHVtbihzZWxlY3Rpb25Nb2RlbD86IFNlbGVjdGlvbk1vZGVsPFJvdz4sIHNob3dTZWxlY3Rpb25Db2x1bW4/OiBWYWx1ZU1vZGVsPGJvb2xlYW4+IHwgYm9vbGVhbik6IFNlbGVjdGlvbkNvbHVtbk1vZGVsPFJvdz4ge1xuICAgIHJldHVybiB0aGlzLl9hZGRTZWxlY3Rpb25Db2x1bW4oc2VsZWN0aW9uTW9kZWwsIHNob3dTZWxlY3Rpb25Db2x1bW4pO1xuICB9XG5cbiAgdXBkYXRlUGFnZVNpemUoY291bnQ6IG51bWJlcikge1xuICAgIHRoaXMuX3BhZ2VTaXplLnZhbHVlID0gY291bnQ7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
|
-
import { Component,
|
|
3
|
-
import { TrackExternal } from
|
|
4
|
-
import { AbstractTableModel } from '../abstract-table-model';
|
|
2
|
+
import { Component, Input } from "@angular/core";
|
|
3
|
+
import { Trace, TrackExternal } from "@coolon/pectin";
|
|
5
4
|
import { AbstractTableComponent } from '../abstract-table.component';
|
|
5
|
+
import { TableModel } from "./table-model";
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "
|
|
8
|
-
import * as i2 from "../
|
|
9
|
-
import * as i3 from "
|
|
10
|
-
import * as i4 from "@angular/common";
|
|
7
|
+
import * as i1 from "../renderer/table-body/table-body.component";
|
|
8
|
+
import * as i2 from "../paginator/paginator.component";
|
|
9
|
+
import * as i3 from "@angular/common";
|
|
11
10
|
/**
|
|
12
11
|
* Create your model:
|
|
13
12
|
* @example
|
|
@@ -69,27 +68,41 @@ import * as i4 from "@angular/common";
|
|
|
69
68
|
* }
|
|
70
69
|
*/
|
|
71
70
|
export class TableComponent extends AbstractTableComponent {
|
|
72
|
-
constructor(
|
|
73
|
-
super(
|
|
71
|
+
constructor() {
|
|
72
|
+
super(...arguments);
|
|
73
|
+
this._footerContentAdded = false;
|
|
74
74
|
}
|
|
75
75
|
getModel() {
|
|
76
76
|
return this.tableModel;
|
|
77
77
|
}
|
|
78
|
+
footerContentChanged($event) {
|
|
79
|
+
console.log($event);
|
|
80
|
+
this._footerContentAdded = true;
|
|
81
|
+
}
|
|
82
|
+
updatePageSize(count) {
|
|
83
|
+
this.tableModel.updatePageSize(count);
|
|
84
|
+
}
|
|
78
85
|
}
|
|
79
|
-
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: TableComponent, deps:
|
|
86
|
+
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: TableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
80
87
|
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: TableComponent, selector: "aup-table", inputs: { tableModel: "tableModel" }, providers: [
|
|
81
88
|
{ provide: AbstractTableComponent, useExisting: TableComponent }
|
|
82
|
-
], usesInheritance: true, ngImport: i0, template: "<
|
|
89
|
+
], usesInheritance: true, ngImport: i0, template: "<aup-table-body [tableModel]=\"tableModel\"\n [showHeader$]=\"showHeader$\"\n [enableScrolling]=\"enableScrolling\"\n (visibleRowCount)=\"updatePageSize($event)\"\n></aup-table-body>\n<section class=\"table-footer\">\n <div class=\"footer-content\"><ng-content select=\"[footer]\"></ng-content></div>\n <aup-paginator *ngIf=\"tableModel.pageController\" [pageController]=\"tableModel.pageController\"></aup-paginator>\n</section>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}aup-table-body{flex:1}.table-footer{display:flex;flex-direction:row;align-items:center}.table-footer .footer-content{flex:1}\n"], components: [{ type: i1.TableBodyComponent, selector: "aup-table-body", inputs: ["tableModel", "showHeader$", "showHeader", "enableScrolling"], outputs: ["visibleRowCount"] }, { type: i2.PaginatorComponent, selector: "aup-paginator", inputs: ["pageController"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
83
90
|
__decorate([
|
|
84
91
|
TrackExternal(),
|
|
85
|
-
__metadata("design:type",
|
|
92
|
+
__metadata("design:type", TableModel)
|
|
86
93
|
], TableComponent.prototype, "tableModel", void 0);
|
|
94
|
+
__decorate([
|
|
95
|
+
Trace(),
|
|
96
|
+
__metadata("design:type", Function),
|
|
97
|
+
__metadata("design:paramtypes", [Number]),
|
|
98
|
+
__metadata("design:returntype", void 0)
|
|
99
|
+
], TableComponent.prototype, "updatePageSize", null);
|
|
87
100
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: TableComponent, decorators: [{
|
|
88
101
|
type: Component,
|
|
89
102
|
args: [{ selector: 'aup-table', providers: [
|
|
90
103
|
{ provide: AbstractTableComponent, useExisting: TableComponent }
|
|
91
|
-
], template: "<
|
|
92
|
-
}],
|
|
104
|
+
], template: "<aup-table-body [tableModel]=\"tableModel\"\n [showHeader$]=\"showHeader$\"\n [enableScrolling]=\"enableScrolling\"\n (visibleRowCount)=\"updatePageSize($event)\"\n></aup-table-body>\n<section class=\"table-footer\">\n <div class=\"footer-content\"><ng-content select=\"[footer]\"></ng-content></div>\n <aup-paginator *ngIf=\"tableModel.pageController\" [pageController]=\"tableModel.pageController\"></aup-paginator>\n</section>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}aup-table-body{flex:1}.table-footer{display:flex;flex-direction:row;align-items:center}.table-footer .footer-content{flex:1}\n"] }]
|
|
105
|
+
}], propDecorators: { tableModel: [{
|
|
93
106
|
type: Input
|
|
94
|
-
}] } });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
}], updatePageSize: [] } });
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvdGFibGUvdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvdGFibGUvdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFDLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEVBQXFCLEtBQUssRUFBRSxhQUFhLEVBQWMsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQUUzQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyREc7QUFTSCxNQUFNLE9BQU8sY0FBb0IsU0FBUSxzQkFBMkI7SUFScEU7O1FBY1Usd0JBQW1CLEdBQUcsS0FBSyxDQUFDO0tBZXJDO0lBYlcsUUFBUTtRQUNoQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELG9CQUFvQixDQUFDLE1BQVc7UUFDOUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFHRCxjQUFjLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDOzsyR0FwQlUsY0FBYzsrRkFBZCxjQUFjLDBFQUpkO1FBQ1QsRUFBQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBQztLQUMvRCxpREN6RUgsZ2VBU0E7QURzRUU7SUFEQyxhQUFhLEVBQUU7OEJBQ0osVUFBVTtrREFBTTtBQWM1QjtJQURDLEtBQUssRUFBRTs7OztvREFHUDsyRkFwQlUsY0FBYztrQkFSMUIsU0FBUzsrQkFDRSxXQUFXLGFBR1Y7d0JBQ1QsRUFBQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxnQkFBZ0IsRUFBQztxQkFDL0Q7OEJBTUQsVUFBVTtzQkFGVCxLQUFLO2dCQWdCTixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZywgSW5qZWN0b3IsIElucHV0LCBOZ1pvbmUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3RvcmVJblZhbHVlTW9kZWwsIFRyYWNlLCBUcmFja0V4dGVybmFsLCBWYWx1ZU1vZGVsIH0gZnJvbSBcIkBjb29sb24vcGVjdGluXCI7XG5pbXBvcnQgeyBEaXNwb3NhYmxlQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2Rpc3Bvc2FibGUtY29tcG9uZW50XCI7XG5pbXBvcnQgeyBBYnN0cmFjdFRhYmxlTW9kZWwgfSBmcm9tICcuLi9hYnN0cmFjdC10YWJsZS1tb2RlbCc7XG5pbXBvcnQgeyBBYnN0cmFjdFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vYWJzdHJhY3QtdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlTW9kZWwgfSBmcm9tIFwiLi90YWJsZS1tb2RlbFwiO1xuXG4vKipcbiAqIENyZWF0ZSB5b3VyIG1vZGVsOlxuICogQGV4YW1wbGVcbiAqIHRoaXMuaGVyb1RhYmxlTW9kZWwgPSBuZXcgVGFibGVNb2RlbChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5wbHVjayhcImZpcnN0TmFtZVwiKTtcbiAqICAgdGFibGUucGx1Y2soXCJsYXN0TmFtZVwiKTtcbiAqICAgdGFibGUuYWRkQ3VzdG9tQ29sdW1uKFwiZnVsbE5hbWVcIiwgaGVybyA9PiBgJHtoZXJvLmZpcnN0TmFtZX0gJHtoZXJvLmxhc3ROYW1lfWApO1xuICogfSk7XG4gKlxuICogQ3JlYXRlIHlvdXIgdGFibGVcbiAqIEBleGFtcGxlXG4gKiA8YXVwLXRhYmxlIFt0YWJsZU1vZGVsXT1cImhlcm9UYWJsZU1vZGVsXCI+PC9hdXAtdGFibGU+XG4gKlxuICogQ29sdW1uIHRlbXBsYXRlc1xuICogQGV4YW1wbGVcbiAqIHRoaXMuaGVyb1RhYmxlTW9kZWwgPSBuZXcgVGFibGVNb2RlbChoZXJvTGlzdCwgdGFibGUgPT4ge1xuICogICB0YWJsZS5wbHVjayhcImZpcnN0TmFtZVwiKTtcbiAqICAgdGFibGUucGx1Y2soXCJsYXN0TmFtZVwiKTtcbiAqICAgdGFibGUuYWRkVGVtcGxhdGVDb2x1bW4oXCJzcGVjaWFsQ29sdW1uXCIpO1xuICogfSk7XG4gKiA8YXVwLXRhYmxlIFt0YWJsZU1vZGVsXT1cImhlcm9UYWJsZU1vZGVsXCI+XG4gKiAgIDxkaXYgKmF1cENvbHVtblRlbXBsYXRlPVwibGV0IGhlcm87IGNvbHVtbklkOiAnc3BlY2lhbENvbHVtbic7IGZpbGxDZWxsOiB0cnVlOyBwYWRDaGlsZDpmYWxzZVwiPlxuICogICAgIHt7aGVyby5uYW1lfX1cbiAqICAgPC9kaXY+XG4gKiA8L2F1cC10YWJsZT5cbiAqXG4gKiBTdHlsaW5nXG4gKiBAZXhhbXBsZVxuICogIC8vIGdsb2JhbCBzZXR0aW5nc1xuICogOnJvb3Qge1xuICogICAtLWF1cC10YWJsZS1jb2x1bW4tZ2FwOiAxMHB4OyAvLyBkZWZhdWx0cyB0byAyNHB4XG4gKiAgIC0tYXVwLXRhYmxlLXJvdy1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMDUpXG4gKiAgIC0tYXVwLXRhYmxlLXJvdy1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yOiByZWJlY2NhcHVycGxlOyAvLyBkZWZhdWx0cyB0byB0cmFuc3BhcmVudFxuICogICAtLWF1cC10YWJsZS1maXJzdC1jb2x1bW4tcGFkZGluZy1sZWZ0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICogICAtLWF1cC10YWJsZS1sYXN0LWNvbHVtbi1wYWRkaW5nLXJpZ2h0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICogfVxuICpcbiAqIC8vIHBlciB0YWJsZSBzZXR0aW5ncy5cbiAqIGF1cC10YWJsZSB7XG4gKiAgIC0tY29sdW1uLWdhcDogMTBweDsgLy8gZGVmYXVsdHMgdG8gMjRweFxuICogICAtLXJvdy1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMDUpXG4gKiAgIC0tcm93LXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3I6IHJlYmVjY2FwdXJwbGU7IC8vIGRlZmF1bHRzIHRvIHRyYW5zcGFyZW50XG4gKiAgIC0tZmlyc3QtY29sdW1uLXBhZGRpbmctbGVmdDogMThweCAvLyBkZWZhdWx0cyB0byAtLWNvbHVtbi1nYXBcbiAqICAgLS1sYXN0LWNvbHVtbi1wYWRkaW5nLXJpZ2h0OiAxOHB4IC8vIGRlZmF1bHRzIHRvIC0tY29sdW1uLWdhcFxuICogICA6Om5nLWRlZXAge1xuICogICAgICBhdXAtdGFibGUtaGVhZGVyLWNlbGwtcmVuZGVyZXIsXG4gKiAgICAgIGF1cC10YWJsZS1jZWxsLXJlbmRlcmVyIHtcbiAqICAgICAgICAmLmF1cC1jb2wtbXktZGFzaGVyaXNlZC1jb2x1bW4taWQge1xuICogICAgICAgICAgLy8gZG8gc3R1ZmZcbiAqICAgICAgICB9XG4gKiAgICAgICAgJi5maXJzdC12aXNpYmxlLWNvbHVtbiB7XG4gKiAgICAgICAgICAvLyBkbyBzdHVmZlxuICogICAgICAgIH1cbiAqICAgICAgICAmLmxhc3QtdmlzaWJsZS1jb2x1bW4ge1xuICogICAgICAgICAgLy8gZG8gc3R1ZmZcbiAqICAgICAgICB9XG4gKiAgICAgIH1cbiAqICAgfVxuICogfVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7cHJvdmlkZTogQWJzdHJhY3RUYWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IFRhYmxlQ29tcG9uZW50fVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50PFJvdz4gZXh0ZW5kcyBBYnN0cmFjdFRhYmxlQ29tcG9uZW50PFJvdz4ge1xuXG4gIEBJbnB1dCgpXG4gIEBUcmFja0V4dGVybmFsKClcbiAgdGFibGVNb2RlbDogVGFibGVNb2RlbDxSb3c+O1xuXG4gIHByaXZhdGUgX2Zvb3RlckNvbnRlbnRBZGRlZCA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBBYnN0cmFjdFRhYmxlTW9kZWw8Um93PiB7XG4gICAgcmV0dXJuIHRoaXMudGFibGVNb2RlbDtcbiAgfVxuXG4gIGZvb3RlckNvbnRlbnRDaGFuZ2VkKCRldmVudDogYW55KSB7XG4gICAgY29uc29sZS5sb2coJGV2ZW50KTtcbiAgICB0aGlzLl9mb290ZXJDb250ZW50QWRkZWQgPSB0cnVlO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgdXBkYXRlUGFnZVNpemUoY291bnQ6IG51bWJlcikge1xuICAgIHRoaXMudGFibGVNb2RlbC51cGRhdGVQYWdlU2l6ZShjb3VudCk7XG4gIH1cbn1cbiIsIjxhdXAtdGFibGUtYm9keSBbdGFibGVNb2RlbF09XCJ0YWJsZU1vZGVsXCJcbiAgICAgICAgICAgICAgICBbc2hvd0hlYWRlciRdPVwic2hvd0hlYWRlciRcIlxuICAgICAgICAgICAgICAgIFtlbmFibGVTY3JvbGxpbmddPVwiZW5hYmxlU2Nyb2xsaW5nXCJcbiAgICAgICAgICAgICAgICAodmlzaWJsZVJvd0NvdW50KT1cInVwZGF0ZVBhZ2VTaXplKCRldmVudClcIlxuPjwvYXVwLXRhYmxlLWJvZHk+XG48c2VjdGlvbiBjbGFzcz1cInRhYmxlLWZvb3RlclwiPlxuICA8ZGl2IGNsYXNzPVwiZm9vdGVyLWNvbnRlbnRcIj48bmctY29udGVudCBzZWxlY3Q9XCJbZm9vdGVyXVwiPjwvbmctY29udGVudD48L2Rpdj5cbiAgPGF1cC1wYWdpbmF0b3IgKm5nSWY9XCJ0YWJsZU1vZGVsLnBhZ2VDb250cm9sbGVyXCIgW3BhZ2VDb250cm9sbGVyXT1cInRhYmxlTW9kZWwucGFnZUNvbnRyb2xsZXJcIj48L2F1cC1wYWdpbmF0b3I+XG48L3NlY3Rpb24+XG4iXX0=
|