@alauda/ui 7.3.3-beta.26 → 7.3.3-beta.27
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.
|
@@ -6,8 +6,8 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
let tableColumnResizableID = 0;
|
|
7
7
|
const resizableBem = buildBem('aui-table-column-resizable');
|
|
8
8
|
export class TableColumnResizableDirective {
|
|
9
|
-
minWidth = '
|
|
10
|
-
maxWidth = '
|
|
9
|
+
minWidth = '40px';
|
|
10
|
+
maxWidth = '80%';
|
|
11
11
|
renderer2 = inject(Renderer2);
|
|
12
12
|
tableColumnDefDirective = inject(TableColumnDefDirective);
|
|
13
13
|
tableComponent = inject(TableComponent);
|
|
@@ -33,6 +33,7 @@ export class TableColumnResizableDirective {
|
|
|
33
33
|
mouseDownEvent.preventDefault();
|
|
34
34
|
mouseDownEvent.stopPropagation();
|
|
35
35
|
this.renderer2.setStyle(resizeHandle, 'visibility', 'hidden');
|
|
36
|
+
const resizeRange = this.getResizeRange();
|
|
36
37
|
const initialMouseX = mouseDownEvent.clientX;
|
|
37
38
|
const columnWidth = this.getColumnWidth();
|
|
38
39
|
const columnOffset = this.getColumnOffset();
|
|
@@ -44,7 +45,7 @@ export class TableColumnResizableDirective {
|
|
|
44
45
|
this.renderer2.removeStyle(resizeHandle, 'visibility');
|
|
45
46
|
resizeMarkLine.destroy();
|
|
46
47
|
resizeOverlay.destroy();
|
|
47
|
-
this.renderWidthStyles(columnWidth + mouseUpEvent.clientX - initialMouseX);
|
|
48
|
+
this.renderWidthStyles(this.getWidthInRange(resizeRange, columnWidth + mouseUpEvent.clientX - initialMouseX));
|
|
48
49
|
})));
|
|
49
50
|
}))
|
|
50
51
|
.subscribe(exec => {
|
|
@@ -90,6 +91,25 @@ export class TableColumnResizableDirective {
|
|
|
90
91
|
return (this.selfElement.getBoundingClientRect().left -
|
|
91
92
|
this.containerElement.getBoundingClientRect().left);
|
|
92
93
|
}
|
|
94
|
+
getWidthInRange([minWidth, maxWidth], width) {
|
|
95
|
+
return Math.min(Math.max(width, minWidth), maxWidth);
|
|
96
|
+
}
|
|
97
|
+
getResizeRange() {
|
|
98
|
+
const minWidth = this.getActualWidth(this.minWidth);
|
|
99
|
+
const maxWidth = this.getActualWidth(this.maxWidth);
|
|
100
|
+
return [minWidth, maxWidth];
|
|
101
|
+
}
|
|
102
|
+
getActualWidth(width) {
|
|
103
|
+
if (typeof width === 'number') {
|
|
104
|
+
return width;
|
|
105
|
+
}
|
|
106
|
+
else if (width.endsWith('px')) {
|
|
107
|
+
return parseInt(width.slice(0, -2));
|
|
108
|
+
}
|
|
109
|
+
else if (width.endsWith('%')) {
|
|
110
|
+
return ((this.containerElement.clientWidth * parseInt(width.slice(0, -1))) / 100);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
93
113
|
renderWidthStyles(width) {
|
|
94
114
|
const className = tableBem.element(`column-${this.tableColumnDefDirective.cssClassFriendlyName}`);
|
|
95
115
|
if (!this.hostAttr) {
|
|
@@ -128,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
128
148
|
}], maxWidth: [{
|
|
129
149
|
type: Input
|
|
130
150
|
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLXJlc2l6YWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGFibGUvdGFibGUtY29sdW1uLXJlc2l6YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFNBQVMsRUFDVCxHQUFHLEVBQ0gsS0FBSyxFQUVMLFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVwQyxPQUFPLEVBQ0wsUUFBUSxFQUNSLHVCQUF1QixFQUN2QixjQUFjLEVBQ2QsMkJBQTJCLEdBQzVCLE1BQU0sU0FBUyxDQUFDOztBQUVqQixJQUFJLHNCQUFzQixHQUFHLENBQUMsQ0FBQztBQUUvQixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsNEJBQTRCLENBQUMsQ0FBQztBQU01RCxNQUFNLE9BQU8sNkJBQTZCO0lBRXhDLFFBQVEsR0FBRyxNQUFNLENBQUM7SUFHbEIsUUFBUSxHQUFHLE1BQU0sQ0FBQztJQUVELFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsdUJBQXVCLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUQsY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QywyQkFBMkIsR0FBRyxNQUFNLENBQ25ELDJCQUEyQixFQUMzQjtRQUNFLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FDRixDQUFDO0lBRWUsV0FBVyxHQUFnQixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzVELGdCQUFnQixHQUFnQixDQUMvQyxJQUFJLENBQUMs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QUFDLFNBQVMsR0FBRyxXQUFXLENBQUM7WUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQ3hCLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQzlCLElBQUksQ0FBQyxZQUFZLENBQ2xCLENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNqRCxDQUFDO3VHQXRLVSw2QkFBNkI7MkZBQTdCLDZCQUE2Qjs7MkZBQTdCLDZCQUE2QjtrQkFKekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBR0MsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIGZyb21FdmVudCxcbiAgbWFwLFxuICBtZXJnZSxcbiAgU3Vic2NyaXB0aW9uLFxuICBzd2l0Y2hNYXAsXG4gIHRha2UsXG4gIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGJ1aWxkQmVtIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5pbXBvcnQge1xuICB0YWJsZUJlbSxcbiAgVGFibGVDb2x1bW5EZWZEaXJlY3RpdmUsXG4gIFRhYmxlQ29tcG9uZW50LFxuICBUYWJsZVNjcm9sbFdyYXBwZXJEaXJlY3RpdmUsXG59IGZyb20gJy4vaW5kZXgnO1xuXG5sZXQgdGFibGVDb2x1bW5SZXNpemFibGVJRCA9IDA7XG5cbmNvbnN0IHJlc2l6YWJsZUJlbSA9IGJ1aWxkQmVtKCdhdWktdGFibGUtY29sdW1uLXJlc2l6YWJsZScpO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXVpVGFibGVDb2x1bW5SZXNpemFibGVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDb2x1bW5SZXNpemFibGVEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KClcbiAgbWluV2lkdGggPSAnNjBweCc7XG5cbiAgQElucHV0KClcbiAgbWF4V2lkdGggPSAnMTAwJSc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgcHJpdmF0ZSByZWFkb25seSB0YWJsZUNvbHVtbkRlZkRpcmVjdGl2ZSA9IGluamVjdChUYWJsZUNvbHVtbkRlZkRpcmVjdGl2ZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFibGVDb21wb25lbnQgPSBpbmplY3QoVGFibGVDb21wb25lbnQpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRhYmxlU2Nyb2xsV3JhcHBlckRpcmVjdGl2ZSA9IGluamVjdChcbiAgICBUYWJsZVNjcm9sbFdyYXBwZXJEaXJlY3RpdmUsXG4gICAge1xuICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgfSxcbiAgKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHNlbGZFbGVtZW50OiBIVE1MRWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRhaW5lckVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gKFxuICAgIHRoaXMudGFibGVTY3JvbGxXcmFwcGVyRGlyZWN0aXZlIHx8IHRoaXMudGFibGVDb21wb25lbnRcbiAgKS5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgcHJpdmF0ZSBzdHlsZUVsZW1lbnQ6IEhUTUxTdHlsZUVsZW1lbnQ7XG4gIHByaXZhdGUgaG9zdEF0dHI6IHN0cmluZztcbiAgcHJpdmF0ZSByZXNpemVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgcmVzaXplSGFuZGxlID0gdGhpcy5jcmVhdGVSZXNpemVIYW5kbGUoKTtcbiAgICB0aGlzLmJpbmRSZXNpemFibGUocmVzaXplSGFuZGxlKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucmVzaXplU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuc3R5bGVFbGVtZW50Py5yZW1vdmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgYmluZFJlc2l6YWJsZShyZXNpemVIYW5kbGU6IEhUTUxFbGVtZW50KSB7XG4gICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHJlc2l6ZUhhbmRsZSwgJ21vdXNlZG93bicpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKG1vdXNlRG93bkV2ZW50ID0+IHtcbiAgICAgICAgICBtb3VzZURvd25FdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIG1vdXNlRG93bkV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgICAgdGhpcy5yZW5kZXJlcjIuc2V0U3R5bGUocmVzaXplSGFuZGxlLCAndmlzaWJpbGl0eScsICdoaWRkZW4nKTtcbiAgICAgICAgICBjb25zdCBpbml0aWFsTW91c2VYID0gbW91c2VEb3duRXZlbnQuY2xpZW50WDtcbiAgICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IHRoaXMuZ2V0Q29sdW1uV2lkdGgoKTtcbiAgICAgICAgICBjb25zdCBjb2x1bW5PZmZzZXQgPSB0aGlzLmdldENvbHVtbk9mZnNldCgpO1xuICAgICAgICAgIGNvbnN0IHJlc2l6ZU1hcmtMaW5lID0gdGhpcy5jcmVhdGVSZXNpemVNYXJrTGluZShcbiAgICAgICAgICAgIGNvbHVtbldpZHRoICsgY29sdW1uT2Zmc2V0LFxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uc3QgcmVzaXplT3ZlcmxheSA9IHRoaXMuY3JlYXRlUmVzaXplT3ZlcmxheSgpO1xuXG4gICAgICAgICAgY29uc3QgbW91c2VVcCQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZG9jdW1lbnQsICdtb3VzZXVwJykucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb25zdCBtb3VzZU1vdmUkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnbW91c2Vtb3ZlJykucGlwZShcbiAgICAgICAgICAgIHRha2VVbnRpbChtb3VzZVVwJCksXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHJldHVybiBtZXJnZShcbiAgICAgICAgICAgIG1vdXNlTW92ZSQucGlwZShcbiAgICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgIG1vdXNlTW92ZUV2ZW50ID0+ICgpID0+XG4gICAgICAgICAgICAgICAgICByZXNpemVNYXJrTGluZS51cGRhdGVPZmZzZXQoXG4gICAgICAgICAgICAgICAgICAgIG1vdXNlTW92ZUV2ZW50LmNsaWVudFggLSBpbml0aWFsTW91c2VYLFxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBtb3VzZVVwJC5waXBlKFxuICAgICAgICAgICAgICBtYXAobW91c2VVcEV2ZW50ID0+ICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyMi5yZW1vdmVTdHlsZShyZXNpemVIYW5kbGUsICd2aXNpYmlsaXR5Jyk7XG4gICAgICAgICAgICAgICAgcmVzaXplTWFya0xpbmUuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgIHJlc2l6ZU92ZXJsYXkuZGVzdHJveSgpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJXaWR0aFN0eWxlcyhcbiAgICAgICAgICAgICAgICAgIGNvbHVtbldpZHRoICsgbW91c2VVcEV2ZW50LmNsaWVudFggLSBpbml0aWFsTW91c2VYLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoZXhlYyA9PiB7XG4gICAgICAgIGV4ZWMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSZXNpemVIYW5kbGUoKSB7XG4gICAgY29uc3QgcmVzaXplSGFuZGxlOiBIVE1MRGl2RWxlbWVudCA9IHRoaXMucmVuZGVyZXIyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKHJlc2l6ZUhhbmRsZSwgcmVzaXphYmxlQmVtLmVsZW1lbnQoJ2hhbmRsZScpKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZCh0aGlzLnNlbGZFbGVtZW50LCByZXNpemVIYW5kbGUpO1xuXG4gICAgcmV0dXJuIHJlc2l6ZUhhbmRsZTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUmVzaXplTWFya0xpbmUoaW5pdGlhbE9mZnNldDogbnVtYmVyKSB7XG4gICAgY29uc3QgbWFya0xpbmU6IEhUTUxFbGVtZW50ID0gdGhpcy5yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3MobWFya0xpbmUsIHJlc2l6YWJsZUJlbS5lbGVtZW50KCdtYXJrLWxpbmUnKSk7XG4gICAgdGhpcy5yZW5kZXJlcjIuc2V0U3R5bGUobWFya0xpbmUsICdsZWZ0JywgaW5pdGlhbE9mZnNldCArICdweCcpO1xuICAgIHRoaXMucmVuZGVyZXIyLmFwcGVuZENoaWxkKHRoaXMuY29udGFpbmVyRWxlbWVudCwgbWFya0xpbmUpO1xuICAgIHJldHVybiB7XG4gICAgICBlbGVtZW50OiBtYXJrTGluZSxcbiAgICAgIHVwZGF0ZU9mZnNldDogKG9mZnNldDogbnVtYmVyKSA9PiB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIyLnNldFN0eWxlKFxuICAgICAgICAgIG1hcmtMaW5lLFxuICAgICAgICAgICdsZWZ0JyxcbiAgICAgICAgICBpbml0aWFsT2Zmc2V0ICsgb2Zmc2V0ICsgJ3B4JyxcbiAgICAgICAgKTtcbiAgICAgIH0sXG4gICAgICBkZXN0cm95OiAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIyLnJlbW92ZUNoaWxkKHRoaXMuY29udGFpbmVyRWxlbWVudCwgbWFya0xpbmUpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSZXNpemVPdmVybGF5KCkge1xuICAgIGNvbnN0IHJlc2l6ZU92ZXJsYXkgPSB0aGlzLnJlbmRlcmVyMi5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hZGRDbGFzcyhyZXNpemVPdmVybGF5LCByZXNpemFibGVCZW0uZWxlbWVudCgnb3ZlcmxheScpKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lckVsZW1lbnQsIHJlc2l6ZU92ZXJsYXkpO1xuICAgIHJldHVybiB7XG4gICAgICBlbGVtZW50OiByZXNpemVPdmVybGF5LFxuICAgICAgZGVzdHJveTogKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyMi5yZW1vdmVDaGlsZCh0aGlzLmNvbnRhaW5lckVsZW1lbnQsIHJlc2l6ZU92ZXJsYXkpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb2x1bW5XaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxmRWxlbWVudC5jbGllbnRXaWR0aDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29sdW1uT2Zmc2V0KCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnNlbGZFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQgLVxuICAgICAgdGhpcy5jb250YWluZXJFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnRcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJXaWR0aFN0eWxlcyh3aWR0aDogbnVtYmVyKSB7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gdGFibGVCZW0uZWxlbWVudChcbiAgICAgIGBjb2x1bW4tJHt0aGlzLnRhYmxlQ29sdW1uRGVmRGlyZWN0aXZlLmNzc0NsYXNzRnJpZW5kbHlOYW1lfWAsXG4gICAgKTtcbiAgICBpZiAoIXRoaXMuaG9zdEF0dHIpIHtcbiAgICAgIHRoaXMuaG9zdEF0dHIgPSBgdGFibGUtcmVzaXphYmxlLSR7dGFibGVDb2x1bW5SZXNpemFibGVJRCsrfWA7XG4gICAgICB0aGlzLmNvbnRhaW5lckVsZW1lbnQuc2V0QXR0cmlidXRlKHRoaXMuaG9zdEF0dHIsICcnKTtcbiAgICB9XG4gICAgY29uc3Qgc3R5bGVTdHJpbmcgPSBgXG4gICAgIFske3RoaXMuaG9zdEF0dHJ9XSAuJHtjbGFzc05hbWV9IHtcbiAgICAgIGZsZXg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAke3dpZHRofXB4ICFpbXBvcnRhbnQ7XG4gICAgICBtaW4td2lkdGg6ICR7d2lkdGh9cHggIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogJHt3aWR0aH1weCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBgO1xuICAgIGlmICh0aGlzLnN0eWxlRWxlbWVudCkge1xuICAgICAgdGhpcy5zdHlsZUVsZW1lbnQuaW5uZXJIVE1MID0gc3R5bGVTdHJpbmc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3R5bGVFbGVtZW50ID0gdGhpcy5yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICAgIHRoaXMuc3R5bGVFbGVtZW50LmlubmVySFRNTCA9IHN0eWxlU3RyaW5nO1xuICAgICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQoXG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2hlYWQnKSxcbiAgICAgICAgdGhpcy5zdHlsZUVsZW1lbnQsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudGFibGVDb21wb25lbnQudXBkYXRlU3RpY2t5Q29sdW1uU3R5bGVzKCk7XG4gIH1cbn1cbiJdfQ==
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29sdW1uLXJlc2l6YWJsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGFibGUvdGFibGUtY29sdW1uLXJlc2l6YWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLFNBQVMsRUFDVCxHQUFHLEVBQ0gsS0FBSyxFQUVMLFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVwQyxPQUFPLEVBQ0wsUUFBUSxFQUNSLHVCQUF1QixFQUN2QixjQUFjLEVBQ2QsMkJBQTJCLEdBQzVCLE1BQU0sU0FBUyxDQUFDOztBQUVqQixJQUFJLHNCQUFzQixHQUFHLENBQUMsQ0FBQztBQUUvQixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsNEJBQTRCLENBQUMsQ0FBQztBQU01RCxNQUFNLE9BQU8sNkJBQTZCO0lBRXhDLFFBQVEsR0FBRyxNQUFNLENBQUM7SUFHbEIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUVBLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUIsdUJBQXVCLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDMUQsY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QywyQkFBMkIsR0FBRyxNQUFNLENBQ25ELDJCQUEyQixFQUMzQjtRQUNFLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FDRixDQUFDO0lBRWUsV0FBVyxHQUFnQixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzVELGdCQUFnQixHQUFnQixDQUMvQyxJQUFJLENBQUMs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UUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FDbEIsQ0FBQztTQUNIO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ2pELENBQUM7dUdBbk1VLDZCQUE2QjsyRkFBN0IsNkJBQTZCOzsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs4QkFHQyxRQUFRO3NCQURQLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgZnJvbUV2ZW50LFxuICBtYXAsXG4gIG1lcmdlLFxuICBTdWJzY3JpcHRpb24sXG4gIHN3aXRjaE1hcCxcbiAgdGFrZSxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgYnVpbGRCZW0gfSBmcm9tICcuLi91dGlscyc7XG5cbmltcG9ydCB7XG4gIHRhYmxlQmVtLFxuICBUYWJsZUNvbHVtbkRlZkRpcmVjdGl2ZSxcbiAgVGFibGVDb21wb25lbnQsXG4gIFRhYmxlU2Nyb2xsV3JhcHBlckRpcmVjdGl2ZSxcbn0gZnJvbSAnLi9pbmRleCc7XG5cbmxldCB0YWJsZUNvbHVtblJlc2l6YWJsZUlEID0gMDtcblxuY29uc3QgcmVzaXphYmxlQmVtID0gYnVpbGRCZW0oJ2F1aS10YWJsZS1jb2x1bW4tcmVzaXphYmxlJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thdWlUYWJsZUNvbHVtblJlc2l6YWJsZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbHVtblJlc2l6YWJsZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKVxuICBtaW5XaWR0aCA9ICc0MHB4JztcblxuICBASW5wdXQoKVxuICBtYXhXaWR0aCA9ICc4MCUnO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFibGVDb2x1bW5EZWZEaXJlY3RpdmUgPSBpbmplY3QoVGFibGVDb2x1bW5EZWZEaXJlY3RpdmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRhYmxlQ29tcG9uZW50ID0gaW5qZWN0KFRhYmxlQ29tcG9uZW50KTtcbiAgcHJpdmF0ZSByZWFkb25seSB0YWJsZVNjcm9sbFdyYXBwZXJEaXJlY3RpdmUgPSBpbmplY3QoXG4gICAgVGFibGVTY3JvbGxXcmFwcGVyRGlyZWN0aXZlLFxuICAgIHtcbiAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgIH0sXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzZWxmRWxlbWVudDogSFRNTEVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZikubmF0aXZlRWxlbWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSBjb250YWluZXJFbGVtZW50OiBIVE1MRWxlbWVudCA9IChcbiAgICB0aGlzLnRhYmxlU2Nyb2xsV3JhcHBlckRpcmVjdGl2ZSB8fCB0aGlzLnRhYmxlQ29tcG9uZW50XG4gICkuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gIHByaXZhdGUgc3R5bGVFbGVtZW50OiBIVE1MU3R5bGVFbGVtZW50O1xuICBwcml2YXRlIGhvc3RBdHRyOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVzaXplU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IHJlc2l6ZUhhbmRsZSA9IHRoaXMuY3JlYXRlUmVzaXplSGFuZGxlKCk7XG4gICAgdGhpcy5iaW5kUmVzaXphYmxlKHJlc2l6ZUhhbmRsZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJlc2l6ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnN0eWxlRWxlbWVudD8ucmVtb3ZlKCk7XG4gIH1cblxuICBwcml2YXRlIGJpbmRSZXNpemFibGUocmVzaXplSGFuZGxlOiBIVE1MRWxlbWVudCkge1xuICAgIGZyb21FdmVudDxNb3VzZUV2ZW50PihyZXNpemVIYW5kbGUsICdtb3VzZWRvd24nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcChtb3VzZURvd25FdmVudCA9PiB7XG4gICAgICAgICAgbW91c2VEb3duRXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICBtb3VzZURvd25FdmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgIHRoaXMucmVuZGVyZXIyLnNldFN0eWxlKHJlc2l6ZUhhbmRsZSwgJ3Zpc2liaWxpdHknLCAnaGlkZGVuJyk7XG4gICAgICAgICAgY29uc3QgcmVzaXplUmFuZ2UgPSB0aGlzLmdldFJlc2l6ZVJhbmdlKCk7XG4gICAgICAgICAgY29uc3QgaW5pdGlhbE1vdXNlWCA9IG1vdXNlRG93bkV2ZW50LmNsaWVudFg7XG4gICAgICAgICAgY29uc3QgY29sdW1uV2lkdGggPSB0aGlzLmdldENvbHVtbldpZHRoKCk7XG4gICAgICAgICAgY29uc3QgY29sdW1uT2Zmc2V0ID0gdGhpcy5nZXRDb2x1bW5PZmZzZXQoKTtcbiAgICAgICAgICBjb25zdCByZXNpemVNYXJrTGluZSA9IHRoaXMuY3JlYXRlUmVzaXplTWFya0xpbmUoXG4gICAgICAgICAgICBjb2x1bW5XaWR0aCArIGNvbHVtbk9mZnNldCxcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IHJlc2l6ZU92ZXJsYXkgPSB0aGlzLmNyZWF0ZVJlc2l6ZU92ZXJsYXkoKTtcblxuICAgICAgICAgIGNvbnN0IG1vdXNlVXAkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnbW91c2V1cCcpLnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uc3QgbW91c2VNb3ZlJCA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pihkb2N1bWVudCwgJ21vdXNlbW92ZScpLnBpcGUoXG4gICAgICAgICAgICB0YWtlVW50aWwobW91c2VVcCQpLFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICByZXR1cm4gbWVyZ2UoXG4gICAgICAgICAgICBtb3VzZU1vdmUkLnBpcGUoXG4gICAgICAgICAgICAgIG1hcChcbiAgICAgICAgICAgICAgICBtb3VzZU1vdmVFdmVudCA9PiAoKSA9PlxuICAgICAgICAgICAgICAgICAgcmVzaXplTWFya0xpbmUudXBkYXRlT2Zmc2V0KFxuICAgICAgICAgICAgICAgICAgICBtb3VzZU1vdmVFdmVudC5jbGllbnRYIC0gaW5pdGlhbE1vdXNlWCxcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbW91c2VVcCQucGlwZShcbiAgICAgICAgICAgICAgbWFwKG1vdXNlVXBFdmVudCA9PiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlcjIucmVtb3ZlU3R5bGUocmVzaXplSGFuZGxlLCAndmlzaWJpbGl0eScpO1xuICAgICAgICAgICAgICAgIHJlc2l6ZU1hcmtMaW5lLmRlc3Ryb3koKTtcbiAgICAgICAgICAgICAgICByZXNpemVPdmVybGF5LmRlc3Ryb3koKTtcblxuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyV2lkdGhTdHlsZXMoXG4gICAgICAgICAgICAgICAgICB0aGlzLmdldFdpZHRoSW5SYW5nZShcbiAgICAgICAgICAgICAgICAgICAgcmVzaXplUmFuZ2UsXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbldpZHRoICsgbW91c2VVcEV2ZW50LmNsaWVudFggLSBpbml0aWFsTW91c2VYLFxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgKTtcbiAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGV4ZWMgPT4ge1xuICAgICAgICBleGVjKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUmVzaXplSGFuZGxlKCkge1xuICAgIGNvbnN0IHJlc2l6ZUhhbmRsZTogSFRNTERpdkVsZW1lbnQgPSB0aGlzLnJlbmRlcmVyMi5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hZGRDbGFzcyhyZXNpemVIYW5kbGUsIHJlc2l6YWJsZUJlbS5lbGVtZW50KCdoYW5kbGUnKSk7XG4gICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQodGhpcy5zZWxmRWxlbWVudCwgcmVzaXplSGFuZGxlKTtcblxuICAgIHJldHVybiByZXNpemVIYW5kbGU7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVJlc2l6ZU1hcmtMaW5lKGluaXRpYWxPZmZzZXQ6IG51bWJlcikge1xuICAgIGNvbnN0IG1hcmtMaW5lOiBIVE1MRWxlbWVudCA9IHRoaXMucmVuZGVyZXIyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRoaXMucmVuZGVyZXIyLmFkZENsYXNzKG1hcmtMaW5lLCByZXNpemFibGVCZW0uZWxlbWVudCgnbWFyay1saW5lJykpO1xuICAgIHRoaXMucmVuZGVyZXIyLnNldFN0eWxlKG1hcmtMaW5lLCAnbGVmdCcsIGluaXRpYWxPZmZzZXQgKyAncHgnKTtcbiAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZCh0aGlzLmNvbnRhaW5lckVsZW1lbnQsIG1hcmtMaW5lKTtcbiAgICByZXR1cm4ge1xuICAgICAgZWxlbWVudDogbWFya0xpbmUsXG4gICAgICB1cGRhdGVPZmZzZXQ6IChvZmZzZXQ6IG51bWJlcikgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyMi5zZXRTdHlsZShcbiAgICAgICAgICBtYXJrTGluZSxcbiAgICAgICAgICAnbGVmdCcsXG4gICAgICAgICAgaW5pdGlhbE9mZnNldCArIG9mZnNldCArICdweCcsXG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgZGVzdHJveTogKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyMi5yZW1vdmVDaGlsZCh0aGlzLmNvbnRhaW5lckVsZW1lbnQsIG1hcmtMaW5lKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUmVzaXplT3ZlcmxheSgpIHtcbiAgICBjb25zdCByZXNpemVPdmVybGF5ID0gdGhpcy5yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3MocmVzaXplT3ZlcmxheSwgcmVzaXphYmxlQmVtLmVsZW1lbnQoJ292ZXJsYXknKSk7XG4gICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQodGhpcy5jb250YWluZXJFbGVtZW50LCByZXNpemVPdmVybGF5KTtcbiAgICByZXR1cm4ge1xuICAgICAgZWxlbWVudDogcmVzaXplT3ZlcmxheSxcbiAgICAgIGRlc3Ryb3k6ICgpID0+IHtcbiAgICAgICAgdGhpcy5yZW5kZXJlcjIucmVtb3ZlQ2hpbGQodGhpcy5jb250YWluZXJFbGVtZW50LCByZXNpemVPdmVybGF5KTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29sdW1uV2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZkVsZW1lbnQuY2xpZW50V2lkdGg7XG4gIH1cblxuICBwcml2YXRlIGdldENvbHVtbk9mZnNldCgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5zZWxmRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0IC1cbiAgICAgIHRoaXMuY29udGFpbmVyRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0V2lkdGhJblJhbmdlKFxuICAgIFttaW5XaWR0aCwgbWF4V2lkdGhdOiBbbnVtYmVyLCBudW1iZXJdLFxuICAgIHdpZHRoOiBudW1iZXIsXG4gICk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWluKE1hdGgubWF4KHdpZHRoLCBtaW5XaWR0aCksIG1heFdpZHRoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVzaXplUmFuZ2UoKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgY29uc3QgbWluV2lkdGggPSB0aGlzLmdldEFjdHVhbFdpZHRoKHRoaXMubWluV2lkdGgpO1xuICAgIGNvbnN0IG1heFdpZHRoID0gdGhpcy5nZXRBY3R1YWxXaWR0aCh0aGlzLm1heFdpZHRoKTtcbiAgICByZXR1cm4gW21pbldpZHRoLCBtYXhXaWR0aF07XG4gIH1cblxuICBwcml2YXRlIGdldEFjdHVhbFdpZHRoKHdpZHRoOiBudW1iZXIgfCBzdHJpbmcpOiBudW1iZXIge1xuICAgIGlmICh0eXBlb2Ygd2lkdGggPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gd2lkdGg7XG4gICAgfSBlbHNlIGlmICh3aWR0aC5lbmRzV2l0aCgncHgnKSkge1xuICAgICAgcmV0dXJuIHBhcnNlSW50KHdpZHRoLnNsaWNlKDAsIC0yKSk7XG4gICAgfSBlbHNlIGlmICh3aWR0aC5lbmRzV2l0aCgnJScpKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAodGhpcy5jb250YWluZXJFbGVtZW50LmNsaWVudFdpZHRoICogcGFyc2VJbnQod2lkdGguc2xpY2UoMCwgLTEpKSkgLyAxMDBcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJXaWR0aFN0eWxlcyh3aWR0aDogbnVtYmVyKSB7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gdGFibGVCZW0uZWxlbWVudChcbiAgICAgIGBjb2x1bW4tJHt0aGlzLnRhYmxlQ29sdW1uRGVmRGlyZWN0aXZlLmNzc0NsYXNzRnJpZW5kbHlOYW1lfWAsXG4gICAgKTtcbiAgICBpZiAoIXRoaXMuaG9zdEF0dHIpIHtcbiAgICAgIHRoaXMuaG9zdEF0dHIgPSBgdGFibGUtcmVzaXphYmxlLSR7dGFibGVDb2x1bW5SZXNpemFibGVJRCsrfWA7XG4gICAgICB0aGlzLmNvbnRhaW5lckVsZW1lbnQuc2V0QXR0cmlidXRlKHRoaXMuaG9zdEF0dHIsICcnKTtcbiAgICB9XG4gICAgY29uc3Qgc3R5bGVTdHJpbmcgPSBgXG4gICAgIFske3RoaXMuaG9zdEF0dHJ9XSAuJHtjbGFzc05hbWV9IHtcbiAgICAgIGZsZXg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAke3dpZHRofXB4ICFpbXBvcnRhbnQ7XG4gICAgICBtaW4td2lkdGg6ICR7d2lkdGh9cHggIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogJHt3aWR0aH1weCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBgO1xuICAgIGlmICh0aGlzLnN0eWxlRWxlbWVudCkge1xuICAgICAgdGhpcy5zdHlsZUVsZW1lbnQuaW5uZXJIVE1MID0gc3R5bGVTdHJpbmc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3R5bGVFbGVtZW50ID0gdGhpcy5yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICAgIHRoaXMuc3R5bGVFbGVtZW50LmlubmVySFRNTCA9IHN0eWxlU3RyaW5nO1xuICAgICAgdGhpcy5yZW5kZXJlcjIuYXBwZW5kQ2hpbGQoXG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2hlYWQnKSxcbiAgICAgICAgdGhpcy5zdHlsZUVsZW1lbnQsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudGFibGVDb21wb25lbnQudXBkYXRlU3RpY2t5Q29sdW1uU3R5bGVzKCk7XG4gIH1cbn1cbiJdfQ==
|
package/fesm2022/alauda-ui.mjs
CHANGED
|
@@ -10383,8 +10383,8 @@ const TABLE_MODULE = [
|
|
|
10383
10383
|
let tableColumnResizableID = 0;
|
|
10384
10384
|
const resizableBem = buildBem('aui-table-column-resizable');
|
|
10385
10385
|
class TableColumnResizableDirective {
|
|
10386
|
-
minWidth = '
|
|
10387
|
-
maxWidth = '
|
|
10386
|
+
minWidth = '40px';
|
|
10387
|
+
maxWidth = '80%';
|
|
10388
10388
|
renderer2 = inject(Renderer2);
|
|
10389
10389
|
tableColumnDefDirective = inject(TableColumnDefDirective);
|
|
10390
10390
|
tableComponent = inject(TableComponent);
|
|
@@ -10410,6 +10410,7 @@ class TableColumnResizableDirective {
|
|
|
10410
10410
|
mouseDownEvent.preventDefault();
|
|
10411
10411
|
mouseDownEvent.stopPropagation();
|
|
10412
10412
|
this.renderer2.setStyle(resizeHandle, 'visibility', 'hidden');
|
|
10413
|
+
const resizeRange = this.getResizeRange();
|
|
10413
10414
|
const initialMouseX = mouseDownEvent.clientX;
|
|
10414
10415
|
const columnWidth = this.getColumnWidth();
|
|
10415
10416
|
const columnOffset = this.getColumnOffset();
|
|
@@ -10421,7 +10422,7 @@ class TableColumnResizableDirective {
|
|
|
10421
10422
|
this.renderer2.removeStyle(resizeHandle, 'visibility');
|
|
10422
10423
|
resizeMarkLine.destroy();
|
|
10423
10424
|
resizeOverlay.destroy();
|
|
10424
|
-
this.renderWidthStyles(columnWidth + mouseUpEvent.clientX - initialMouseX);
|
|
10425
|
+
this.renderWidthStyles(this.getWidthInRange(resizeRange, columnWidth + mouseUpEvent.clientX - initialMouseX));
|
|
10425
10426
|
})));
|
|
10426
10427
|
}))
|
|
10427
10428
|
.subscribe(exec => {
|
|
@@ -10467,6 +10468,25 @@ class TableColumnResizableDirective {
|
|
|
10467
10468
|
return (this.selfElement.getBoundingClientRect().left -
|
|
10468
10469
|
this.containerElement.getBoundingClientRect().left);
|
|
10469
10470
|
}
|
|
10471
|
+
getWidthInRange([minWidth, maxWidth], width) {
|
|
10472
|
+
return Math.min(Math.max(width, minWidth), maxWidth);
|
|
10473
|
+
}
|
|
10474
|
+
getResizeRange() {
|
|
10475
|
+
const minWidth = this.getActualWidth(this.minWidth);
|
|
10476
|
+
const maxWidth = this.getActualWidth(this.maxWidth);
|
|
10477
|
+
return [minWidth, maxWidth];
|
|
10478
|
+
}
|
|
10479
|
+
getActualWidth(width) {
|
|
10480
|
+
if (typeof width === 'number') {
|
|
10481
|
+
return width;
|
|
10482
|
+
}
|
|
10483
|
+
else if (width.endsWith('px')) {
|
|
10484
|
+
return parseInt(width.slice(0, -2));
|
|
10485
|
+
}
|
|
10486
|
+
else if (width.endsWith('%')) {
|
|
10487
|
+
return ((this.containerElement.clientWidth * parseInt(width.slice(0, -1))) / 100);
|
|
10488
|
+
}
|
|
10489
|
+
}
|
|
10470
10490
|
renderWidthStyles(width) {
|
|
10471
10491
|
const className = tableBem.element(`column-${this.tableColumnDefDirective.cssClassFriendlyName}`);
|
|
10472
10492
|
if (!this.hostAttr) {
|