angular-toolbox 1.4.4 → 1.4.5
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/README.md +1 -1
- package/esm2022/lib/component/layout/border-layout/border-layout.component.mjs +12 -1
- package/esm2022/lib/component/layout/border-layout/util/border-layout-renderer.mjs +15 -6
- package/esm2022/lib/model/service/version/angular-toolbox-version.service.mjs +3 -3
- package/fesm2022/angular-toolbox.mjs +27 -7
- package/fesm2022/angular-toolbox.mjs.map +1 -1
- package/lib/component/layout/border-layout/border-layout.component.d.ts +10 -0
- package/lib/component/layout/border-layout/util/border-layout-renderer.d.ts +10 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
A library that provides useful tools for Angular apps development.
|
|
4
4
|
|
|
5
|
-
[]()
|
|
6
6
|
|
|
7
7
|
## License
|
|
8
8
|
|
|
@@ -110,6 +110,17 @@ export class BorderLayout extends IdentifiableComponent {
|
|
|
110
110
|
setConstraints(constraints) {
|
|
111
111
|
this.renderer.setConstraints(constraints);
|
|
112
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* Returns the `BorderLayoutContainer` component associated with the specified region.
|
|
115
|
+
*
|
|
116
|
+
* @param region The region for which to retreive the container.
|
|
117
|
+
*
|
|
118
|
+
* @returns The `BorderLayoutContainer` component associated with the specified region,
|
|
119
|
+
* or `undefined` whether no container has been found.
|
|
120
|
+
*/
|
|
121
|
+
getBorderLayoutContainer(region) {
|
|
122
|
+
return this.renderer.getBorderLayoutContainer(region);
|
|
123
|
+
}
|
|
113
124
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayout, deps: [{ token: i1.SubscriptionService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
114
125
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: BorderLayout, isStandalone: true, selector: "atx-border-layout", outputs: { dragStart: "dragStart", dragStop: "dragStop", dragging: "dragging" }, host: { listeners: { "window:resize": "onResize()" } }, queries: [{ propertyName: "__containers__", predicate: BorderLayoutContainer }], viewQueries: [{ propertyName: "layoutContainer", first: true, predicate: ["atxLayoutContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<div #atxLayoutContainer class=\"atx-border-layout\">\n <ng-content></ng-content>\n</div>", styles: [".atx-border-layout{position:relative;height:100%;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.atx-border-layout{box-sizing:border-box}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }); }
|
|
115
126
|
}
|
|
@@ -135,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
135
146
|
type: ContentChildren,
|
|
136
147
|
args: [BorderLayoutContainer]
|
|
137
148
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9yZGVyLWxheW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9jb21wb25lbnQvbGF5b3V0L2JvcmRlci1sYXlvdXQvYm9yZGVyLWxheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9jb21wb25lbnQvbGF5b3V0L2JvcmRlci1sYXlvdXQvYm9yZGVyLWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQWlCLFNBQVMsRUFBRSxlQUFlLEVBQXlCLFNBQVMsRUFBRSxZQUFZLEVBQWEsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkssT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDckcsT0FBTyxFQUFzQyxtQkFBbUIsRUFBdUQsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5SSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFFM0M7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxZQUFhLFNBQVEscUJBQXFCO0lBb0JyRDs7T0FFRztJQUVLLFFBQVE7UUFDZCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBYUQ7O09BRUc7SUFDSCxJQUNZLGNBQWMsQ0FBQyxVQUE0QztRQUNyRSxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQUEsQ0FBQztJQUVGOztPQUVHO0lBQ0gsWUFBb0IsWUFBaUMsRUFDdkIsUUFBa0I7UUFDOUMsS0FBSyxFQUFFLENBQUM7UUFGVSxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFoRHJEOztXQUVHO1FBRWEsY0FBUyxHQUFrQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTlFOztXQUVHO1FBRWEsYUFBUSxHQUFrQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTdFOztXQUVHO1FBRWEsYUFBUSxHQUFrQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBbUMzRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2pFLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFzQixFQUFDLEVBQUU7WUFDM0QsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDMUIsT0FBTztZQUNULENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssbUJBQW1CLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzQixPQUFPO1lBQ1QsQ0FBQztZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVztRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNJLGVBQWU7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUs7UUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksWUFBWSxDQUFDLE1BQXVDLEVBQUUsSUFBWTtRQUN2RSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFzQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksY0FBYyxDQUFDLFdBQThCO1FBQ2xELElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7OEdBeEhVLFlBQVkscURBbURILFFBQVE7a0dBbkRqQixZQUFZLHFQQTBDTixxQkFBcUIsMktDcEV4Qyx5VkFVTTs7MkZEZ0JPLFlBQVk7a0JBTnhCLFNBQVM7K0JBQ0UsbUJBQW1CLGNBR2pCLElBQUk7OzBCQXFESCxNQUFNOzJCQUFDLFFBQVE7eUNBN0NaLFNBQVM7c0JBRHhCLE1BQU07Z0JBT1MsUUFBUTtzQkFEdkIsTUFBTTtnQkFPUyxRQUFRO3NCQUR2QixNQUFNO2dCQU9DLFFBQVE7c0JBRGYsWUFBWTt1QkFBQyxlQUFlO2dCQVNyQixlQUFlO3NCQUR0QixTQUFTO3VCQUFDLG9CQUFvQjtnQkFZbkIsY0FBYztzQkFEekIsZUFBZTt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICpcclxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW5cclxuICogdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2VcclxuICovXHJcblxyXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgT25EZXN0cm95LCBFbGVtZW50UmVmLCBWaWV3Q2hpbGQsIEhvc3RMaXN0ZW5lciwgUXVlcnlMaXN0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJvcmRlckxheW91dENvbnRhaW5lciB9IGZyb20gJy4uL2JvcmRlci1sYXlvdXQtY29udGFpbmVyL2JvcmRlci1sYXlvdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExheW91dENvbnN0cmFpbnRzLCBMYXlvdXREcmFnRXZlbnQsIExheW91dERyYWdFdmVudFR5cGUsIExheW91dFJlZ2lvbiwgTGF5b3V0UmVnaW9uVHlwZSwgU3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL21vZGVsJztcclxuaW1wb3J0IHsgQm9yZGVyTGF5b3V0UmVuZGVyZXIgfSBmcm9tICcuL3V0aWwvYm9yZGVyLWxheW91dC1yZW5kZXJlcic7XHJcbmltcG9ydCB7IElkZW50aWZpYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG4vKipcclxuICogQSBib3JkZXIgbGF5b3V0IGxheXMgb3V0IGEgY29udGFpbmVyLCBhcnJhbmdpbmcgYW5kIHJlc2l6aW5nIGl0cyBjb21wb25lbnRzIHRvIGZpdCBpbiBmaXZlIHJlZ2lvbnM6IG5vcnRoLCBzb3V0aCwgZWFzdCwgd2VzdCwgYW5kIGNlbnRlci5cclxuICogRWFjaCByZWdpb24gaXMgZGVmaW5lZCBieSBhIGBCb3JkZXJMYXlvdXRDb250YWluZXJgIGluc3RhbmNlLCBhbmQgaXMgaWRlbnRpZmllZCBieSBhIGNvcnJlc3BvbmRpbmcgY29uc3RhbnQ6IGBOT1JUSGAsIGBTT1VUSGAsIGBFQVNUYCwgYFdFU1RgLCBhbmQgYENFTlRFUmAuXHJcbiAqIFRoaXMgY29tcG9uZW50IGlzIHBhcnQgb2YgdGhlIExBRi1sZXNzIEFQSS5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXR4LWJvcmRlci1sYXlvdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ib3JkZXItbGF5b3V0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ib3JkZXItbGF5b3V0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQm9yZGVyTGF5b3V0IGV4dGVuZHMgSWRlbnRpZmlhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgZXZlbnRzIGVhY2ggdGltZSB0aGUgdXNlciBzdGFydHMgZHJhZ2dpbmcgYSByZWdpb24gaGFuZGxlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBkcmFnU3RhcnQ6IEV2ZW50RW1pdHRlcjxMYXlvdXREcmFnRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBldmVudHMgZWFjaCB0aW1lIHRoZSB1c2VyIHN0b3BzIGRyYWdnaW5nIGEgcmVnaW9uIGhhbmRsZS5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgZHJhZ1N0b3A6IEV2ZW50RW1pdHRlcjxMYXlvdXREcmFnRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBldmVudHMgZWFjaCB0aW1lIHRoZSB1c2VyIGlzIGRyYWdnaW5nIGEgcmVnaW9uIGhhbmRsZS5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgZHJhZ2dpbmc6IEV2ZW50RW1pdHRlcjxMYXlvdXREcmFnRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIFxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpyZXNpemVcIilcclxuICBwcml2YXRlIG9uUmVzaXplKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYWludCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBAVmlld0NoaWxkKFwiYXR4TGF5b3V0Q29udGFpbmVyXCIpXHJcbiAgcHJpdmF0ZSBsYXlvdXRDb250YWluZXIhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBwcml2YXRlIHJlbmRlcmVyOiBCb3JkZXJMYXlvdXRSZW5kZXJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBAQ29udGVudENoaWxkcmVuKEJvcmRlckxheW91dENvbnRhaW5lcilcclxuICBwcml2YXRlIHNldCBfX2NvbnRhaW5lcnNfXyhjb250YWluZXJzOiBRdWVyeUxpc3Q8Qm9yZGVyTGF5b3V0Q29udGFpbmVyPikge1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDb250YWluZXJzKGNvbnRhaW5lcnMpO1xyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdWJzY3JpYmVTdmM6IFN1YnNjcmlwdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IERvY3VtZW50KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5yZW5kZXJlciA9IG5ldyBCb3JkZXJMYXlvdXRSZW5kZXJlcihzdWJzY3JpYmVTdmMsIGRvY3VtZW50KTtcclxuICAgIHN1YnNjcmliZVN2Yy5yZWdpc3Rlcih0aGlzLFxyXG4gICAgICB0aGlzLnJlbmRlcmVyLnVzZXJBY3Rpb24uc3Vic2NyaWJlKChldmVudDogTGF5b3V0RHJhZ0V2ZW50KT0+IHtcclxuICAgICAgICBldmVudC5sYXlvdXQgPSB0aGlzO1xyXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSBMYXlvdXREcmFnRXZlbnRUeXBlLkRSQUdHSU5HKSB7XHJcbiAgICAgICAgICB0aGlzLmRyYWdnaW5nLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gTGF5b3V0RHJhZ0V2ZW50VHlwZS5EUkFHX1NUQVJUKSB7XHJcbiAgICAgICAgICB0aGlzLmRyYWdTdGFydC5lbWl0KGV2ZW50KTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5kcmFnU3RvcC5lbWl0KGV2ZW50KTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqIEZvciB0ZXN0IHB1cnBvc2Ugb25seS5cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0UmVuZGVyZXIoKTogQm9yZGVyTGF5b3V0UmVuZGVyZXIge1xyXG4gICAgcmV0dXJuIHRoaXMucmVuZGVyZXI7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaWJlU3ZjLmNsZWFyQWxsKHRoaXMpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5kZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldExheW91dENvbnRhaW5lcih0aGlzLmxheW91dENvbnRhaW5lci5uYXRpdmVFbGVtZW50KTtcclxuICAgIHRoaXMucGFpbnQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZvcmNlcyB0aGUgY29udGFpbmVyIHRvIGJlIHJlZHJhd24uXHJcbiAgICovXHJcbiAgcHVibGljIHBhaW50KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlci5wYWludCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzaXplcyB0aGUgc3BlY2lmaWVkIHJlZ2lvbi5cclxuICAgKiBcclxuICAgKiBAcGFyYW0gcmVnaW9uIFRoZSByZWdpb24gdG8gcmVzaXplLlxyXG4gICAqIEBwYXJhbSBzaXplIFRoZSBuZXcgc2l6ZSBvZiB0aGUgcmVnaW9uIHRvIHJlc2l6ZS5cclxuICAgKiBcclxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgd2hldGhlciB0aGUgc3BlY2lmaWVkIHJlZ2lvbiBoYXMgYmVlbiByZXNpemVkOyBgZmFsc2VgIG90aGVyd2lzZS5cclxuICAgKi9cclxuICBwdWJsaWMgcmVzaXplUmVnaW9uKHJlZ2lvbjogTGF5b3V0UmVnaW9uIHwgTGF5b3V0UmVnaW9uVHlwZSwgc2l6ZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnJlc2l6ZVJlZ2lvbihyZWdpb24gYXMgTGF5b3V0UmVnaW9uLCBzaXplKTtcclxuICB9XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlcyB0aGUgY29uc3RyYWludHMgb2YgdGhlIHJlZ2lvbiBzcGVjaWZpZWQgYnkgdGhlIGBMYXlvdXRDb25zdHJhaW50cy5yZWdpb25gIHByb3BlcnR5LlxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSBjb25zdHJhaW50cyBUaGUgbmV3IGNvbnN0cmFpbnRzIG9mIHRoZSBhc3NvY2lhdGVkIHJlZ2lvbi5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0Q29uc3RyYWludHMoY29uc3RyYWludHM6IExheW91dENvbnN0cmFpbnRzKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldENvbnN0cmFpbnRzKGNvbnN0cmFpbnRzKTtcclxuICB9XHJcbn1cclxuIiwiPCEtLVxuICogTElDRU5TRVxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2Vcbi0tPlxuXG48ZGl2ICNhdHhMYXlvdXRDb250YWluZXIgY2xhc3M9XCJhdHgtYm9yZGVyLWxheW91dFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PiJdfQ==
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9yZGVyLWxheW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9jb21wb25lbnQvbGF5b3V0L2JvcmRlci1sYXlvdXQvYm9yZGVyLWxheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9jb21wb25lbnQvbGF5b3V0L2JvcmRlci1sYXlvdXQvYm9yZGVyLWxheW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQWlCLFNBQVMsRUFBRSxlQUFlLEVBQXlCLFNBQVMsRUFBRSxZQUFZLEVBQWEsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkssT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDckcsT0FBTyxFQUFzQyxtQkFBbUIsRUFBdUQsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5SSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFFM0M7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxZQUFhLFNBQVEscUJBQXFCO0lBb0JyRDs7T0FFRztJQUVLLFFBQVE7UUFDZCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBYUQ7O09BRUc7SUFDSCxJQUNZLGNBQWMsQ0FBQyxVQUE0QztRQUNyRSxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQUEsQ0FBQztJQUVGOztPQUVH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QyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICpcclxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW5cclxuICogdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2VcclxuICovXHJcblxyXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgT25EZXN0cm95LCBFbGVtZW50UmVmLCBWaWV3Q2hpbGQsIEhvc3RMaXN0ZW5lciwgUXVlcnlMaXN0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJvcmRlckxheW91dENvbnRhaW5lciB9IGZyb20gJy4uL2JvcmRlci1sYXlvdXQtY29udGFpbmVyL2JvcmRlci1sYXlvdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExheW91dENvbnN0cmFpbnRzLCBMYXlvdXREcmFnRXZlbnQsIExheW91dERyYWdFdmVudFR5cGUsIExheW91dFJlZ2lvbiwgTGF5b3V0UmVnaW9uVHlwZSwgU3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL21vZGVsJztcclxuaW1wb3J0IHsgQm9yZGVyTGF5b3V0UmVuZGVyZXIgfSBmcm9tICcuL3V0aWwvYm9yZGVyLWxheW91dC1yZW5kZXJlcic7XHJcbmltcG9ydCB7IElkZW50aWZpYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG4vKipcclxuICogQSBib3JkZXIgbGF5b3V0IGxheXMgb3V0IGEgY29udGFpbmVyLCBhcnJhbmdpbmcgYW5kIHJlc2l6aW5nIGl0cyBjb21wb25lbnRzIHRvIGZpdCBpbiBmaXZlIHJlZ2lvbnM6IG5vcnRoLCBzb3V0aCwgZWFzdCwgd2VzdCwgYW5kIGNlbnRlci5cclxuICogRWFjaCByZWdpb24gaXMgZGVmaW5lZCBieSBhIGBCb3JkZXJMYXlvdXRDb250YWluZXJgIGluc3RhbmNlLCBhbmQgaXMgaWRlbnRpZmllZCBieSBhIGNvcnJlc3BvbmRpbmcgY29uc3RhbnQ6IGBOT1JUSGAsIGBTT1VUSGAsIGBFQVNUYCwgYFdFU1RgLCBhbmQgYENFTlRFUmAuXHJcbiAqIFRoaXMgY29tcG9uZW50IGlzIHBhcnQgb2YgdGhlIExBRi1sZXNzIEFQSS5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXR4LWJvcmRlci1sYXlvdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ib3JkZXItbGF5b3V0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ib3JkZXItbGF5b3V0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQm9yZGVyTGF5b3V0IGV4dGVuZHMgSWRlbnRpZmlhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgZXZlbnRzIGVhY2ggdGltZSB0aGUgdXNlciBzdGFydHMgZHJhZ2dpbmcgYSByZWdpb24gaGFuZGxlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBkcmFnU3RhcnQ6IEV2ZW50RW1pdHRlcjxMYXlvdXREcmFnRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBldmVudHMgZWFjaCB0aW1lIHRoZSB1c2VyIHN0b3BzIGRyYWdnaW5nIGEgcmVnaW9uIGhhbmRsZS5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgZHJhZ1N0b3A6IEV2ZW50RW1pdHRlcjxMYXlvdXREcmFnRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBldmVudHMgZWFjaCB0aW1lIHRoZSB1c2VyIGlzIGRyYWdnaW5nIGEgcmVnaW9uIGhhbmRsZS5cclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgZHJhZ2dpbmc6IEV2ZW50RW1pdHRlcjxMYXlvdXREcmFnRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIFxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcihcIndpbmRvdzpyZXNpemVcIilcclxuICBwcml2YXRlIG9uUmVzaXplKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYWludCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBAVmlld0NoaWxkKFwiYXR4TGF5b3V0Q29udGFpbmVyXCIpXHJcbiAgcHJpdmF0ZSBsYXlvdXRDb250YWluZXIhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBwcml2YXRlIHJlbmRlcmVyOiBCb3JkZXJMYXlvdXRSZW5kZXJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBAQ29udGVudENoaWxkcmVuKEJvcmRlckxheW91dENvbnRhaW5lcilcclxuICBwcml2YXRlIHNldCBfX2NvbnRhaW5lcnNfXyhjb250YWluZXJzOiBRdWVyeUxpc3Q8Qm9yZGVyTGF5b3V0Q29udGFpbmVyPikge1xyXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDb250YWluZXJzKGNvbnRhaW5lcnMpO1xyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdWJzY3JpYmVTdmM6IFN1YnNjcmlwdGlvblNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IERvY3VtZW50KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5yZW5kZXJlciA9IG5ldyBCb3JkZXJMYXlvdXRSZW5kZXJlcihzdWJzY3JpYmVTdmMsIGRvY3VtZW50KTtcclxuICAgIHN1YnNjcmliZVN2Yy5yZWdpc3Rlcih0aGlzLFxyXG4gICAgICB0aGlzLnJlbmRlcmVyLnVzZXJBY3Rpb24uc3Vic2NyaWJlKChldmVudDogTGF5b3V0RHJhZ0V2ZW50KT0+IHtcclxuICAgICAgICBldmVudC5sYXlvdXQgPSB0aGlzO1xyXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSBMYXlvdXREcmFnRXZlbnRUeXBlLkRSQUdHSU5HKSB7XHJcbiAgICAgICAgICB0aGlzLmRyYWdnaW5nLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gTGF5b3V0RHJhZ0V2ZW50VHlwZS5EUkFHX1NUQVJUKSB7XHJcbiAgICAgICAgICB0aGlzLmRyYWdTdGFydC5lbWl0KGV2ZW50KTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5kcmFnU3RvcC5lbWl0KGV2ZW50KTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqIEZvciB0ZXN0IHB1cnBvc2Ugb25seS5cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0UmVuZGVyZXIoKTogQm9yZGVyTGF5b3V0UmVuZGVyZXIge1xyXG4gICAgcmV0dXJuIHRoaXMucmVuZGVyZXI7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaWJlU3ZjLmNsZWFyQWxsKHRoaXMpO1xyXG4gICAgdGhpcy5yZW5kZXJlci5kZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldExheW91dENvbnRhaW5lcih0aGlzLmxheW91dENvbnRhaW5lci5uYXRpdmVFbGVtZW50KTtcclxuICAgIHRoaXMucGFpbnQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZvcmNlcyB0aGUgY29udGFpbmVyIHRvIGJlIHJlZHJhd24uXHJcbiAgICovXHJcbiAgcHVibGljIHBhaW50KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZW5kZXJlci5wYWludCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzaXplcyB0aGUgc3BlY2lmaWVkIHJlZ2lvbi5cclxuICAgKiBcclxuICAgKiBAcGFyYW0gcmVnaW9uIFRoZSByZWdpb24gdG8gcmVzaXplLlxyXG4gICAqIEBwYXJhbSBzaXplIFRoZSBuZXcgc2l6ZSBvZiB0aGUgcmVnaW9uIHRvIHJlc2l6ZS5cclxuICAgKiBcclxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgd2hldGhlciB0aGUgc3BlY2lmaWVkIHJlZ2lvbiBoYXMgYmVlbiByZXNpemVkOyBgZmFsc2VgIG90aGVyd2lzZS5cclxuICAgKi9cclxuICBwdWJsaWMgcmVzaXplUmVnaW9uKHJlZ2lvbjogTGF5b3V0UmVnaW9uIHwgTGF5b3V0UmVnaW9uVHlwZSwgc2l6ZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnJlc2l6ZVJlZ2lvbihyZWdpb24gYXMgTGF5b3V0UmVnaW9uLCBzaXplKTtcclxuICB9XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlcyB0aGUgY29uc3RyYWludHMgb2YgdGhlIHJlZ2lvbiBzcGVjaWZpZWQgYnkgdGhlIGBMYXlvdXRDb25zdHJhaW50cy5yZWdpb25gIHByb3BlcnR5LlxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSBjb25zdHJhaW50cyBUaGUgbmV3IGNvbnN0cmFpbnRzIG9mIHRoZSBhc3NvY2lhdGVkIHJlZ2lvbi5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0Q29uc3RyYWludHMoY29uc3RyYWludHM6IExheW91dENvbnN0cmFpbnRzKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldENvbnN0cmFpbnRzKGNvbnN0cmFpbnRzKTtcclxuICB9XHJcbiAgXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyB0aGUgYEJvcmRlckxheW91dENvbnRhaW5lcmAgY29tcG9uZW50IGFzc29jaWF0ZWQgd2l0aCB0aGUgc3BlY2lmaWVkIHJlZ2lvbi5cclxuICAgKiBcclxuICAgKiBAcGFyYW0gcmVnaW9uIFRoZSByZWdpb24gZm9yIHdoaWNoIHRvIHJldHJlaXZlIHRoZSBjb250YWluZXIuXHJcbiAgICogXHJcbiAgICogQHJldHVybnMgVGhlIGBCb3JkZXJMYXlvdXRDb250YWluZXJgIGNvbXBvbmVudCBhc3NvY2lhdGVkIHdpdGggdGhlIHNwZWNpZmllZCByZWdpb24sXHJcbiAgICogICAgICAgICAgb3IgYHVuZGVmaW5lZGAgd2hldGhlciBubyBjb250YWluZXIgaGFzIGJlZW4gZm91bmQuXHJcbiAgICovXHJcbiAgcHVibGljIGdldEJvcmRlckxheW91dENvbnRhaW5lcihyZWdpb246IExheW91dFJlZ2lvblR5cGUpOiBCb3JkZXJMYXlvdXRDb250YWluZXIgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMucmVuZGVyZXIuZ2V0Qm9yZGVyTGF5b3V0Q29udGFpbmVyKHJlZ2lvbik7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8IS0tXG4gKiBMSUNFTlNFXG4gKiBDb3B5cmlnaHQgUGFzY2FsIEVDSEVNQU5OLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcGFzY2FsZWNoZW1hbm4uY29tL2FuZ3VsYXItdG9vbGJveC9yZXNvdXJjZXMvbGljZW5zZVxuLS0+XG5cbjxkaXYgI2F0eExheW91dENvbnRhaW5lciBjbGFzcz1cImF0eC1ib3JkZXItbGF5b3V0XCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+Il19
|
|
@@ -71,8 +71,6 @@ export class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
71
71
|
regionValidator += r;
|
|
72
72
|
this.subscribeSvc.register(this, container.resizeStart.subscribe(container => this.resizeEnter(container)));
|
|
73
73
|
this.boundsManager.initBounds(container);
|
|
74
|
-
if (r === LayoutRegion.NORTH || r === LayoutRegion.SOUTH)
|
|
75
|
-
return;
|
|
76
74
|
this.containerList.push(container);
|
|
77
75
|
});
|
|
78
76
|
}
|
|
@@ -132,6 +130,17 @@ export class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
132
130
|
this.checkLytContainer();
|
|
133
131
|
this.render(this.lytContainerElm.offsetWidth);
|
|
134
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Returns the `BorderLayoutContainer` component associated with the specified region.
|
|
135
|
+
*
|
|
136
|
+
* @param region The region for which to retreive the container.
|
|
137
|
+
*
|
|
138
|
+
* @returns The `BorderLayoutContainer` component associated with the specified region,
|
|
139
|
+
* or `undefined` whether no container has been found.
|
|
140
|
+
*/
|
|
141
|
+
getBorderLayoutContainer(region) {
|
|
142
|
+
return this.containerList.find((c) => c.constraints.region === region);
|
|
143
|
+
}
|
|
135
144
|
/**
|
|
136
145
|
* Resizes the specified region of the associated container.
|
|
137
146
|
*
|
|
@@ -143,9 +152,7 @@ export class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
143
152
|
resizeRegion(region, size) {
|
|
144
153
|
if (region === LayoutRegion.CENTER)
|
|
145
154
|
return false;
|
|
146
|
-
const container = this.
|
|
147
|
-
return c.constraints.region === region;
|
|
148
|
-
});
|
|
155
|
+
const container = this.getBorderLayoutContainer(region);
|
|
149
156
|
if (!container)
|
|
150
157
|
return false;
|
|
151
158
|
container.setSize(size);
|
|
@@ -219,6 +226,8 @@ export class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
219
226
|
const cont = cList[cursor];
|
|
220
227
|
const r = cont.constraints.region;
|
|
221
228
|
cursor--;
|
|
229
|
+
if (r === LayoutRegion.NORTH || r === LayoutRegion.SOUTH)
|
|
230
|
+
continue;
|
|
222
231
|
if (r === LayoutRegion.WEST) {
|
|
223
232
|
cont.setTopPos(top);
|
|
224
233
|
cont.setRightPos(width - left);
|
|
@@ -255,4 +264,4 @@ export class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
255
264
|
this.storedMoveHandler = this.storedStopHandler = null;
|
|
256
265
|
}
|
|
257
266
|
}
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9yZGVyLWxheW91dC1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2NvbXBvbmVudC9sYXlvdXQvYm9yZGVyLWxheW91dC91dGlsL2JvcmRlci1sYXlvdXQtcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFFLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFrQyxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUF5QyxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pMLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRzNFOztHQUVHO0FBQ0gsTUFBTSxTQUFTLEdBQVEsV0FBVyxDQUFDO0FBRW5DOztHQUVHO0FBQ0gsTUFBTSxPQUFPLEdBQVEsU0FBUyxDQUFDO0FBRS9COztHQUVHO0FBQ0gsTUFBTSxjQUFjLEdBQVcsb0VBQW9FLENBQUM7QUFFcEc7O0dBRUc7QUFDSCxNQUFNLGNBQWMsR0FBVywwQ0FBMEMsQ0FBQztBQUUxRTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEscUJBQXFCO0lBZ0M3RDs7T0FFRztJQUNILFlBQW9CLFlBQWlDLEVBQ2pDLFFBQWtCO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRlUsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFsQ3RDOztXQUVHO1FBQ2EsZUFBVSxHQUFrQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBTy9FOztXQUVHO1FBQ0ssa0JBQWEsR0FBNEIs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Q0FBQztnQkFDaEMsU0FBUztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDO2dCQUNoQyxTQUFTO1lBQ1gsQ0FBQztRQUNILENBQUM7UUFBQSxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ssaUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZTtZQUFFLE1BQU0sSUFBSSxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVEOztPQUVHO0lBQ0ssb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ3pELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUgZm91bmQgaW5cbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvcmRlckxheW91dENvbnRhaW5lciB9IGZyb20gJy4uLy4uL2JvcmRlci1sYXlvdXQtY29udGFpbmVyL2JvcmRlci1sYXlvdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlsJztcbmltcG9ydCB7IERlc3Ryb3lhYmxlLCBMYXlvdXRDb25zdHJhaW50cywgTGF5b3V0RHJhZ0V2ZW50LCBMYXlvdXREcmFnRXZlbnRUeXBlLCBMYXlvdXRSZWdpb24sIExheW91dFJlZ2lvblR5cGUsIFN1YnNjcmlwdGlvblNlcnZpY2UsIExheW91dFJlZ2lvbkVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWwnO1xuaW1wb3J0IHsgSWRlbnRpZmlhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBCb3JkZXJMYXlvdXRCb3VuZHNNYW5hZ2VyIH0gZnJvbSAnLi9ib3JkZXItbGF5b3V0LWJvdW5kcy1tYW5hZ2VyJztcbmltcG9ydCB7IFJlc2l6ZU1ldGhvZCB9IGZyb20gJy4vcmVzaXplLW1ldGhvZCc7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuY29uc3QgTU9VU0VNT1ZFOiBhbnkgPSBcIm1vdXNlbW92ZVwiO1xuXG4vKipcbiAqIEBwcml2YXRlXG4gKi9cbmNvbnN0IE1PVVNFVVA6IGFueSA9IFwibW91c2V1cFwiO1xuXG4vKipcbiAqIEBwcml2YXRlXG4gKi9cbmNvbnN0IFJFR0lPTl9FUlJfTVNHOiBzdHJpbmcgPSBcIkEgY29udGFpbmVyIHdpdGggdGhlIHNhbWUgaWRlbnRpZmllciBoYXMgYWxyZWFkeSBiZWVuIHJlZ2lzdGVyZWQ6IFwiO1xuXG4vKipcbiAqIEBwcml2YXRlXG4gKi9cbmNvbnN0IExBWU9VVF9FUlJfTVNHOiBzdHJpbmcgPSBcIk5vIGxheW91dCBjb250YWluZXIgaGFzIGJlZW4gcmVnaXN0ZXJlZC5cIjtcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICogQSBjb250cm9sbGVyIG9iamVjdCByZXNwb25zaWJsZSBmb3IgaGFuZGxpbmcgdXNlciBhY3Rpb25zIG9uIGEgYEJvcmRlckxheW91dGAgY29udGFpbmVyLlxuICovXG5leHBvcnQgY2xhc3MgQm9yZGVyTGF5b3V0UmVuZGVyZXIgZXh0ZW5kcyBJZGVudGlmaWFibGVDb21wb25lbnQgaW1wbGVtZW50cyBEZXN0cm95YWJsZSB7XG5cbiAgLyoqXG4gICAqIEVtaXRzIGV2ZW50cyBlYWNoIHRpbWUgdGhlIHVzZXIgc3RhcnRzLCBvciBzdG9wcyBkcmFnZ2luZyBoYW5kbGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdXNlckFjdGlvbjogRXZlbnRFbWl0dGVyPExheW91dERyYWdFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGx5dENvbnRhaW5lckVsbSE6IEhUTUxEaXZFbGVtZW50O1xuICBcbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGNvbnRhaW5lckxpc3Q6IEJvcmRlckxheW91dENvbnRhaW5lcltdID0gW107XG4gIFxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgYm91bmRzTWFuYWdlcjogQm9yZGVyTGF5b3V0Qm91bmRzTWFuYWdlcjsgXG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHN0b3JlZFN0b3BIYW5kbGVyOiBhbnkgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBzdG9yZWRNb3ZlSGFuZGxlcjogYW55ID0gbnVsbDtcblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3Vic2NyaWJlU3ZjOiBTdWJzY3JpcHRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5ib3VuZHNNYW5hZ2VyID0gbmV3IEJvcmRlckxheW91dEJvdW5kc01hbmFnZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgdGhlIGxpc3QgYEJvcmRlckxheW91dENvbnRhaW5lcmAgb2JqZWN0cyBhc3NvY2lhdGVkIHdpdGggdGhlIG1haW4gY29udGFpbmVyIHRvIHRoaXMgY29udHJvbGxlci5cbiAgICogXG4gICAqIEBwYXJhbSBjb250YWluZXJzIHRoZSBsaXN0IGBCb3JkZXJMYXlvdXRDb250YWluZXJgIG9iamVjdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYWluIGNvbnRhaW5lci5cbiAgICovXG4gIHB1YmxpYyBhZGRDb250YWluZXJzKGNvbnRhaW5lcnM6IFF1ZXJ5TGlzdDxCb3JkZXJMYXlvdXRDb250YWluZXI+KTogdm9pZCB7XG4gICAgbGV0IHJlZ2lvblZhbGlkYXRvcjogc3RyaW5nID0gRU1QVFlfU1RSSU5HO1xuICAgIGNvbnRhaW5lcnMuZm9yRWFjaChjb250YWluZXIgPT4ge1xuICAgICAgY29uc3QgY29uc3RyYWludHM6IExheW91dENvbnN0cmFpbnRzID0gY29udGFpbmVyLmNvbnN0cmFpbnRzO1xuICAgICAgY29uc3Qgcjogc3RyaW5nID0gY29uc3RyYWludHMucmVnaW9uIGFzIHN0cmluZztcbiAgICAgIGlmIChyZWdpb25WYWxpZGF0b3IuaW5kZXhPZihyKSAhPT0gLTEpIHRocm93IG5ldyBMYXlvdXRSZWdpb25FcnJvcihSRUdJT05fRVJSX01TRyArIHIpO1xuICAgICAgcmVnaW9uVmFsaWRhdG9yICs9IHI7XG4gICAgICB0aGlzLnN1YnNjcmliZVN2Yy5yZWdpc3Rlcih0aGlzLFxuICAgICAgICBjb250YWluZXIucmVzaXplU3RhcnQuc3Vic2NyaWJlKGNvbnRhaW5lcj0+IHRoaXMucmVzaXplRW50ZXIoY29udGFpbmVyKSlcbiAgICAgICk7XG4gICAgICB0aGlzLmJvdW5kc01hbmFnZXIuaW5pdEJvdW5kcyhjb250YWluZXIpO1xuICAgICAgaWYgKHIgPT09IExheW91dFJlZ2lvbi5OT1JUSCB8fCByID09PSBMYXlvdXRSZWdpb24uU09VVEgpIHJldHVybjtcbiAgICAgIHRoaXMuY29udGFpbmVyTGlzdC5wdXNoKGNvbnRhaW5lcik7XG4gICAgfSk7XG4gIH07XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHJlZmVyZW5jZSB0byB0aGUgSFRNTCBjb250YWluZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYWluIGNvbnRhaW5lci5cbiAgICogXG4gICAqIEBwYXJhbSBseXRDb250YWluZXIgVGhlIHJlZmVyZW5jZSB0byB0aGUgSFRNTCBjb250YWluZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYWluIGNvbnRhaW5lci5cbiAgICovXG4gIHB1YmxpYyBzZXRMYXlvdXRDb250YWluZXIobHl0Q29udGFpbmVyOiBIVE1MRGl2RWxlbWVudCk6IHZvaWQge1xuICAgIHRoaXMubHl0Q29udGFpbmVyRWxtID0gbHl0Q29udGFpbmVyO1xuICB9O1xuXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKiBGb3IgdGVzdCBwdXJwb3NlIG9ubHkuXG4gICAqIFJldHVybnMgdGhlIHJlZmVyZW5jZSB0byB0aGUgaW50ZXJuYWwgYEJvcmRlckxheW91dEJvdW5kc01hbmFnZXJgIGluc3RhbmNlLlxuICAgKi9cbiAgcHVibGljIGdldEJvdW5kc01hbmFnZXIoKTogQm9yZGVyTGF5b3V0Qm91bmRzTWFuYWdlciB7XG4gICAgcmV0dXJuIHRoaXMuYm91bmRzTWFuYWdlcjsgXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDaGFuZ2VzIHRoZSBjb25zdHJhaW50cyBvZiB0aGUgcmVnaW9uIHNwZWNpZmllZCBieSB0aGUgYExheW91dENvbnN0cmFpbnRzLnJlZ2lvbmAgcHJvcGVydHkuXG4gICAqIFxuICAgKiBAcGFyYW0gY29uc3RyYWludHMgVGhlIG5ldyBjb25zdHJhaW50cyBvZiB0aGUgYXNzb2NpYXRlZCByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc2V0Q29uc3RyYWludHMoY29uc3RyYWludHM6IExheW91dENvbnN0cmFpbnRzKTogdm9pZCB7XG4gICAgY29uc3QgcmVnaW9uOiBMYXlvdXRSZWdpb25UeXBlID0gY29uc3RyYWludHMucmVnaW9uIGFzIExheW91dFJlZ2lvblR5cGU7XG4gICAgY29uc3QgY29udGFpbmVyOiBCb3JkZXJMYXlvdXRDb250YWluZXIgfCB1bmRlZmluZWQgPSB0aGlzLmNvbnRhaW5lckxpc3QuZmluZCgoY29udGFpbmVyOiBCb3JkZXJMYXlvdXRDb250YWluZXIpID0+IGNvbnRhaW5lci5jb25zdHJhaW50cy5yZWdpb24gPT09IHJlZ2lvbik7XG4gICAgaWYgKCFjb250YWluZXIpIHRocm93IG5ldyBMYXlvdXRSZWdpb25FcnJvcihgSW52YWxpZCByZWdpb246IG5vIGNvbnRhaW5lciB3aXRoIHRoZSByZWdpb24gJyR7cmVnaW9ufScgaGFzIGJlZW4gZm91bmQuYCk7XG4gICAgaWYgKGNvbnN0cmFpbnRzLnNpemUgPT09IHVuZGVmaW5lZCkgY29uc3RyYWludHMuc2l6ZSA9IGNvbnRhaW5lci5nZXRTaXplKCk7XG4gICAgY29udGFpbmVyLmNvbnN0cmFpbnRzID0gY29uc3RyYWludHM7XG4gICAgdGhpcy5wYWludCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ha2VzIHRoaXMgb2JqZWN0IGVsbGlnaWJsZSBmb3IgZ2FyYmFnZSBjb2xsZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RvcmVkU3RvcEhhbmRsZXIpIHtcbiAgICAgIHRoaXMuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihNT1VTRU1PVkUsIHRoaXMuc3RvcmVkTW92ZUhhbmRsZXIpO1xuICAgICAgdGhpcy5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKE1PVVNFVVAsIHRoaXMuc3RvcmVkU3RvcEhhbmRsZXIpO1xuICAgICAgdGhpcy5kZWxldGVTdG9yZWRIYW5kbGVycygpO1xuICAgIH1cbiAgICB0aGlzLnN1YnNjcmliZVN2Yy5jbGVhckFsbCh0aGlzKTtcbiAgICB0aGlzLmx5dENvbnRhaW5lckVsbSA9IG51bGwgYXMgYW55O1xuICAgIHRoaXMuYm91bmRzTWFuYWdlci5kZXN0cm95KCk7XG4gICAgdGhpcy5ib3VuZHNNYW5hZ2VyID0gbnVsbCBhcyBhbnk7XG4gICAgdGhpcy5jb250YWluZXJMaXN0Lmxlbmd0aCA9IDA7XG4gICAgdGhpcy5jb250YWluZXJMaXN0ID0gbnVsbCBhcyBhbnk7XG4gIH1cblxuICAvKipcbiAgICogRm9yY2VzIHRoZSBsYXlvdXQgb2YgYWxsIGBCb3JkZXJMYXlvdXRDb250YWluZXJgIG9iamVjdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBtYWluIGNvbnRhaW5lci5cbiAgICovXG4gIHB1YmxpYyBwYWludCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrTHl0Q29udGFpbmVyKCk7XG4gICAgdGhpcy5yZW5kZXIodGhpcy5seXRDb250YWluZXJFbG0ub2Zmc2V0V2lkdGgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2l6ZXMgdGhlIHNwZWNpZmllZCByZWdpb24gb2YgdGhlIGFzc29jaWF0ZWQgY29udGFpbmVyLlxuICAgKiBcbiAgICogQHBhcmFtIHJlZ2lvbiBUaGUgcmVnaW9uIHRvIHJlc2l6ZS5cbiAgICogQHBhcmFtIHNpemUgVGhlIG5ldyBzaXplIG9mIHRoZSByZWdpb24gdG8gcmVzaXplLlxuICAgKiBcbiAgICogQHJldHVybnMgYHRydWVgIHdoZXRoZXIgdGhlIHNwZWNpZmllZCByZWdpb24gaGFzIGJlZW4gcmVzaXplZDsgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgcmVzaXplUmVnaW9uKHJlZ2lvbjogTGF5b3V0UmVnaW9uLCBzaXplOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBpZiAocmVnaW9uID09PSBMYXlvdXRSZWdpb24uQ0VOVEVSKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgY29udGFpbmVyOiBCb3JkZXJMYXlvdXRDb250YWluZXIgfCB1bmRlZmluZWQgPSB0aGlzLmNvbnRhaW5lckxpc3QuZmluZCgoYzogQm9yZGVyTGF5b3V0Q29udGFpbmVyKT0+IHtcbiAgICAgIHJldHVybiBjLmNvbnN0cmFpbnRzLnJlZ2lvbiA9PT0gcmVnaW9uO1xuICAgIH0pO1xuICAgIGlmICghY29udGFpbmVyKSByZXR1cm4gZmFsc2U7XG4gICAgY29udGFpbmVyLnNldFNpemUoc2l6ZSk7XG4gICAgdGhpcy5ib3VuZHNNYW5hZ2VyLmluaXRCb3VuZHMoY29udGFpbmVyKTtcbiAgICB0aGlzLnBhaW50KCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgcmVzaXplRW50ZXIoY29udGFpbmVyOiBCb3JkZXJMYXlvdXRDb250YWluZXIpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrTHl0Q29udGFpbmVyKCk7XG4gICAgY29uc3QgbHl0TmF0aXZlRWxtOiBIVE1MRGl2RWxlbWVudCA9IHRoaXMubHl0Q29udGFpbmVyRWxtO1xuICAgIGNvbnN0IHdpZHRoOiBudW1iZXIgPSBseXROYXRpdmVFbG0ub2Zmc2V0V2lkdGg7XG4gICAgY29uc3QgaGVpZ2h0OiBudW1iZXIgPSBseXROYXRpdmVFbG0ub2Zmc2V0SGVpZ2h0O1xuICAgIGNvbnN0IGJvdW5kczogRE9NUmVjdCA9IGx5dE5hdGl2ZUVsbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBjb25zdHJhaW50czogTGF5b3V0Q29uc3RyYWludHMgPSBjb250YWluZXIuY29uc3RyYWludHM7XG4gICAgY29uc3QgcmVnaW9uOiBMYXlvdXRSZWdpb24gPSBjb25zdHJhaW50cy5yZWdpb24gYXMgTGF5b3V0UmVnaW9uO1xuICAgIGNvbnN0IG1pblNpemU6IG51bWJlciB8IHVuZGVmaW5lZCA9IGNvbnN0cmFpbnRzLm1pblNpemU7XG4gICAgY29uc3QgbWF4U2l6ZTogbnVtYmVyIHwgdW5kZWZpbmVkID0gY29uc3RyYWludHMubWF4U2l6ZTtcbiAgICBjb25zdCBkb2M6IERvY3VtZW50ID0gdGhpcy5kb2N1bWVudDtcbiAgICBsZXQgc2l6ZTogbnVtYmVyID0gMDtcbiAgICB0aGlzLmJvdW5kc01hbmFnZXIuc2V0T3JpZ2luKGJvdW5kcy54LCBib3VuZHMueSk7XG4gICAgbGV0IHJlc2l6ZU1ldGhvZDogUmVzaXplTWV0aG9kID0gdGhpcy5ib3VuZHNNYW5hZ2VyLmdldFJlc2l6ZU1ldGhvZChyZWdpb24pO1xuICAgIGNvbnRhaW5lci5zZWxlY3RlZCA9IHRydWU7XG4gICAgY29uc3Qgb25Nb3ZlSGFuZGxlciA9IChldmVudDogTW91c2VFdmVudCk9PiB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBzaXplID0gcmVzaXplTWV0aG9kKGV2ZW50LCB3aWR0aCwgaGVpZ2h0LCBtaW5TaXplLCBtYXhTaXplKTtcbiAgICAgIGNvbnRhaW5lci5zZXRTaXplKHNpemUpO1xuICAgICAgdGhpcy5yZW5kZXIod2lkdGgpO1xuICAgICAgdGhpcy5maXJlRXZlbnQoY29udGFpbmVyLCBMYXlvdXREcmFnRXZlbnRUeXBlLkRSQUdHSU5HKTtcbiAgICB9O1xuICAgIGNvbnN0IG9uU3RvcEhhbmRsZXIgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpPT4ge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZG9jLnJlbW92ZUV2ZW50TGlzdGVuZXIoTU9VU0VNT1ZFLCBvbk1vdmVIYW5kbGVyKTtcbiAgICAgIGRvYy5yZW1vdmVFdmVudExpc3RlbmVyKE1PVVNFVVAsIG9uU3RvcEhhbmRsZXIpO1xuICAgICAgdGhpcy5kZWxldGVTdG9yZWRIYW5kbGVycygpO1xuICAgICAgY29udGFpbmVyLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICBzaXplID0gcmVzaXplTWV0aG9kKGV2ZW50LCB3aWR0aCwgaGVpZ2h0LCBtaW5TaXplLCBtYXhTaXplKTtcbiAgICAgIGNvbnRhaW5lci5zZXRTaXplKHNpemUpO1xuICAgICAgdGhpcy5yZW5kZXIod2lkdGgpO1xuICAgICAgdGhpcy5maXJlRXZlbnQoY29udGFpbmVyLCBMYXlvdXREcmFnRXZlbnRUeXBlLkRSQUdfU1RPUCk7XG4gICAgfTtcbiAgICB0aGlzLnN0b3JlZE1vdmVIYW5kbGVyID0gb25Nb3ZlSGFuZGxlcjtcbiAgICB0aGlzLnN0b3JlZFN0b3BIYW5kbGVyID0gb25TdG9wSGFuZGxlcjtcbiAgICB0aGlzLmZpcmVFdmVudChjb250YWluZXIsIExheW91dERyYWdFdmVudFR5cGUuRFJBR19TVEFSVCk7XG4gICAgZG9jLmFkZEV2ZW50TGlzdGVuZXIoTU9VU0VNT1ZFLCBvbk1vdmVIYW5kbGVyKTtcbiAgICBkb2MuYWRkRXZlbnRMaXN0ZW5lcihNT1VTRVVQLCBvblN0b3BIYW5kbGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBmaXJlRXZlbnQodGFyZ2V0OiBCb3JkZXJMYXlvdXRDb250YWluZXIsIHR5cGU6IExheW91dERyYWdFdmVudFR5cGUpOiB2b2lkIHtcbiAgICBjb25zdCBldnQ6IExheW91dERyYWdFdmVudCA9IG5ldyBMYXlvdXREcmFnRXZlbnQodGFyZ2V0LCB0eXBlKTtcbiAgICB0aGlzLnVzZXJBY3Rpb24uZW1pdChldnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHJlbmRlcih3aWR0aDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgYm91bmRzOiBET01SZWN0ID0gdGhpcy5ib3VuZHNNYW5hZ2VyLmdldEJvdW5kcygpO1xuICAgIGNvbnN0IHRvcDogbnVtYmVyID0gYm91bmRzLnRvcDtcbiAgICBjb25zdCBib3R0b206IG51bWJlciA9IGJvdW5kcy5ib3R0b207XG4gICAgY29uc3QgbGVmdDogbnVtYmVyID0gYm91bmRzLmxlZnQ7XG4gICAgY29uc3QgcmlnaHQ6IG51bWJlciA9IGJvdW5kcy5yaWdodDtcbiAgICBjb25zdCBjTGlzdDogQm9yZGVyTGF5b3V0Q29udGFpbmVyW10gPSB0aGlzLmNvbnRhaW5lckxpc3Q7XG4gICAgbGV0IGN1cnNvcjogbnVtYmVyID0gY0xpc3QubGVuZ3RoIC0gMTtcbiAgICB3aGlsZShjdXJzb3IgPj0gMCkge1xuICAgICAgY29uc3QgY29udDogQm9yZGVyTGF5b3V0Q29udGFpbmVyID0gY0xpc3RbY3Vyc29yXTtcbiAgICAgIGNvbnN0IHI6IExheW91dFJlZ2lvbiA9IGNvbnQuY29uc3RyYWludHMucmVnaW9uIGFzIExheW91dFJlZ2lvbjtcbiAgICAgIGN1cnNvci0tO1xuICAgICAgaWYgKHIgPT09IExheW91dFJlZ2lvbi5XRVNUKSB7XG4gICAgICAgIGNvbnQuc2V0VG9wUG9zKHRvcCk7XG4gICAgICAgIGNvbnQuc2V0UmlnaHRQb3Mod2lkdGggLSBsZWZ0KTtcbiAgICAgICAgY29udC5zZXRCb3R0b21Qb3MoYm90dG9tIC0gdG9wKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBpZiAociA9PT0gTGF5b3V0UmVnaW9uLkNFTlRFUikge1xuICAgICAgICBjb250LnNldFRvcFBvcyh0b3ApO1xuICAgICAgICBjb250LnNldExlZnRQb3MobGVmdCk7XG4gICAgICAgIGNvbnQuc2V0UmlnaHRQb3MocmlnaHQgLSBsZWZ0KTtcbiAgICAgICAgY29udC5zZXRCb3R0b21Qb3MoYm90dG9tIC0gdG9wKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBpZiAociA9PT0gTGF5b3V0UmVnaW9uLkVBU1QpIHtcbiAgICAgICAgY29udC5zZXRUb3BQb3ModG9wKTtcbiAgICAgICAgY29udC5zZXRMZWZ0UG9zKHdpZHRoIC0gKHJpZ2h0IC0gbGVmdCkpO1xuICAgICAgICBjb250LnNldEJvdHRvbVBvcyhib3R0b20gLSB0b3ApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGNoZWNrTHl0Q29udGFpbmVyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5seXRDb250YWluZXJFbG0pIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihMQVlPVVRfRVJSX01TRyk7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBkZWxldGVTdG9yZWRIYW5kbGVycygpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlZE1vdmVIYW5kbGVyID0gdGhpcy5zdG9yZWRTdG9wSGFuZGxlciA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
|
|
267
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9yZGVyLWxheW91dC1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2NvbXBvbmVudC9sYXlvdXQvYm9yZGVyLWxheW91dC91dGlsL2JvcmRlci1sYXlvdXQtcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFFLFlBQVksRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFrQyxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUF5QyxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pMLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRzNFOztHQUVHO0FBQ0gsTUFBTSxTQUFTLEdBQVEsV0FBVyxDQUFDO0FBRW5DOztHQUVHO0FBQ0gsTUFBTSxPQUFPLEdBQVEsU0FBUyxDQUFDO0FBRS9COztHQUVHO0FBQ0gsTUFBTSxjQUFjLEdBQVcsb0VBQW9FLENBQUM7QUFFcEc7O0dBRUc7QUFDSCxNQUFNLGNBQWMsR0FBVywwQ0FBMEMsQ0FBQztBQUUxRTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEscUJBQXFCO0lBZ0M3RDs7T0FFRztJQUNILFlBQW9CLFlBQWlDLEVBQ2pDLFFBQWtCO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBRlUsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFsQ3RDOztXQUVHO1FBQ2EsZUFBVSxHQUFrQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBTy9FOztXQUVHO1FBQ0ssa0JBQWEsR0FBNEIs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Q0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDO2dCQUNoQyxTQUFTO1lBQ1gsQ0FBQztZQUNELElBQUksQ0FBQyxLQUFLLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUM7Z0JBQ2hDLFNBQVM7WUFDWCxDQUFDO1FBQ0gsQ0FBQztRQUFBLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlO1lBQUUsTUFBTSxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7O09BRUc7SUFDSyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7SUFDekQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IFBhc2NhbCBFQ0hFTUFOTi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZSBmb3VuZCBpblxuICogdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Bhc2NhbGVjaGVtYW5uLmNvbS9hbmd1bGFyLXRvb2xib3gvcmVzb3VyY2VzL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm9yZGVyTGF5b3V0Q29udGFpbmVyIH0gZnJvbSAnLi4vLi4vYm9yZGVyLWxheW91dC1jb250YWluZXIvYm9yZGVyLWxheW91dC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEVNUFRZX1NUUklORyB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwnO1xuaW1wb3J0IHsgRGVzdHJveWFibGUsIExheW91dENvbnN0cmFpbnRzLCBMYXlvdXREcmFnRXZlbnQsIExheW91dERyYWdFdmVudFR5cGUsIExheW91dFJlZ2lvbiwgTGF5b3V0UmVnaW9uVHlwZSwgU3Vic2NyaXB0aW9uU2VydmljZSwgTGF5b3V0UmVnaW9uRXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbCc7XG5pbXBvcnQgeyBJZGVudGlmaWFibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlJztcbmltcG9ydCB7IEJvcmRlckxheW91dEJvdW5kc01hbmFnZXIgfSBmcm9tICcuL2JvcmRlci1sYXlvdXQtYm91bmRzLW1hbmFnZXInO1xuaW1wb3J0IHsgUmVzaXplTWV0aG9kIH0gZnJvbSAnLi9yZXNpemUtbWV0aG9kJztcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5jb25zdCBNT1VTRU1PVkU6IGFueSA9IFwibW91c2Vtb3ZlXCI7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuY29uc3QgTU9VU0VVUDogYW55ID0gXCJtb3VzZXVwXCI7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuY29uc3QgUkVHSU9OX0VSUl9NU0c6IHN0cmluZyA9IFwiQSBjb250YWluZXIgd2l0aCB0aGUgc2FtZSBpZGVudGlmaWVyIGhhcyBhbHJlYWR5IGJlZW4gcmVnaXN0ZXJlZDogXCI7XG5cbi8qKlxuICogQHByaXZhdGVcbiAqL1xuY29uc3QgTEFZT1VUX0VSUl9NU0c6IHN0cmluZyA9IFwiTm8gbGF5b3V0IGNvbnRhaW5lciBoYXMgYmVlbiByZWdpc3RlcmVkLlwiO1xuXG4vKipcbiAqIEBwcml2YXRlXG4gKiBBIGNvbnRyb2xsZXIgb2JqZWN0IHJlc3BvbnNpYmxlIGZvciBoYW5kbGluZyB1c2VyIGFjdGlvbnMgb24gYSBgQm9yZGVyTGF5b3V0YCBjb250YWluZXIuXG4gKi9cbmV4cG9ydCBjbGFzcyBCb3JkZXJMYXlvdXRSZW5kZXJlciBleHRlbmRzIElkZW50aWZpYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIERlc3Ryb3lhYmxlIHtcblxuICAvKipcbiAgICogRW1pdHMgZXZlbnRzIGVhY2ggdGltZSB0aGUgdXNlciBzdGFydHMsIG9yIHN0b3BzIGRyYWdnaW5nIGhhbmRsZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB1c2VyQWN0aW9uOiBFdmVudEVtaXR0ZXI8TGF5b3V0RHJhZ0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgbHl0Q29udGFpbmVyRWxtITogSFRNTERpdkVsZW1lbnQ7XG4gIFxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgY29udGFpbmVyTGlzdDogQm9yZGVyTGF5b3V0Q29udGFpbmVyW10gPSBbXTtcbiAgXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBib3VuZHNNYW5hZ2VyOiBCb3JkZXJMYXlvdXRCb3VuZHNNYW5hZ2VyOyBcblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgc3RvcmVkU3RvcEhhbmRsZXI6IGFueSA9IG51bGw7XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHN0b3JlZE1vdmVIYW5kbGVyOiBhbnkgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdWJzY3JpYmVTdmM6IFN1YnNjcmlwdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmJvdW5kc01hbmFnZXIgPSBuZXcgQm9yZGVyTGF5b3V0Qm91bmRzTWFuYWdlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgbGlzdCBgQm9yZGVyTGF5b3V0Q29udGFpbmVyYCBvYmplY3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWFpbiBjb250YWluZXIgdG8gdGhpcyBjb250cm9sbGVyLlxuICAgKiBcbiAgICogQHBhcmFtIGNvbnRhaW5lcnMgdGhlIGxpc3QgYEJvcmRlckxheW91dENvbnRhaW5lcmAgb2JqZWN0cyBhc3NvY2lhdGVkIHdpdGggdGhlIG1haW4gY29udGFpbmVyLlxuICAgKi9cbiAgcHVibGljIGFkZENvbnRhaW5lcnMoY29udGFpbmVyczogUXVlcnlMaXN0PEJvcmRlckxheW91dENvbnRhaW5lcj4pOiB2b2lkIHtcbiAgICBsZXQgcmVnaW9uVmFsaWRhdG9yOiBzdHJpbmcgPSBFTVBUWV9TVFJJTkc7XG4gICAgY29udGFpbmVycy5mb3JFYWNoKGNvbnRhaW5lciA9PiB7XG4gICAgICBjb25zdCBjb25zdHJhaW50czogTGF5b3V0Q29uc3RyYWludHMgPSBjb250YWluZXIuY29uc3RyYWludHM7XG4gICAgICBjb25zdCByOiBzdHJpbmcgPSBjb25zdHJhaW50cy5yZWdpb24gYXMgc3RyaW5nO1xuICAgICAgaWYgKHJlZ2lvblZhbGlkYXRvci5pbmRleE9mKHIpICE9PSAtMSkgdGhyb3cgbmV3IExheW91dFJlZ2lvbkVycm9yKFJFR0lPTl9FUlJfTVNHICsgcik7XG4gICAgICByZWdpb25WYWxpZGF0b3IgKz0gcjtcbiAgICAgIHRoaXMuc3Vic2NyaWJlU3ZjLnJlZ2lzdGVyKHRoaXMsXG4gICAgICAgIGNvbnRhaW5lci5yZXNpemVTdGFydC5zdWJzY3JpYmUoY29udGFpbmVyPT4gdGhpcy5yZXNpemVFbnRlcihjb250YWluZXIpKVxuICAgICAgKTtcbiAgICAgIHRoaXMuYm91bmRzTWFuYWdlci5pbml0Qm91bmRzKGNvbnRhaW5lcik7XG4gICAgICB0aGlzLmNvbnRhaW5lckxpc3QucHVzaChjb250YWluZXIpO1xuICAgIH0pO1xuICB9O1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSByZWZlcmVuY2UgdG8gdGhlIEhUTUwgY29udGFpbmVyIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWFpbiBjb250YWluZXIuXG4gICAqIFxuICAgKiBAcGFyYW0gbHl0Q29udGFpbmVyIFRoZSByZWZlcmVuY2UgdG8gdGhlIEhUTUwgY29udGFpbmVyIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWFpbiBjb250YWluZXIuXG4gICAqL1xuICBwdWJsaWMgc2V0TGF5b3V0Q29udGFpbmVyKGx5dENvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLmx5dENvbnRhaW5lckVsbSA9IGx5dENvbnRhaW5lcjtcbiAgfTtcblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICogRm9yIHRlc3QgcHVycG9zZSBvbmx5LlxuICAgKiBSZXR1cm5zIHRoZSByZWZlcmVuY2UgdG8gdGhlIGludGVybmFsIGBCb3JkZXJMYXlvdXRCb3VuZHNNYW5hZ2VyYCBpbnN0YW5jZS5cbiAgICovXG4gIHB1YmxpYyBnZXRCb3VuZHNNYW5hZ2VyKCk6IEJvcmRlckxheW91dEJvdW5kc01hbmFnZXIge1xuICAgIHJldHVybiB0aGlzLmJvdW5kc01hbmFnZXI7IFxuICB9XG4gIFxuICAvKipcbiAgICogQ2hhbmdlcyB0aGUgY29uc3RyYWludHMgb2YgdGhlIHJlZ2lvbiBzcGVjaWZpZWQgYnkgdGhlIGBMYXlvdXRDb25zdHJhaW50cy5yZWdpb25gIHByb3BlcnR5LlxuICAgKiBcbiAgICogQHBhcmFtIGNvbnN0cmFpbnRzIFRoZSBuZXcgY29uc3RyYWludHMgb2YgdGhlIGFzc29jaWF0ZWQgcmVnaW9uLlxuICAgKi9cbiAgcHVibGljIHNldENvbnN0cmFpbnRzKGNvbnN0cmFpbnRzOiBMYXlvdXRDb25zdHJhaW50cyk6IHZvaWQge1xuICAgIGNvbnN0IHJlZ2lvbjogTGF5b3V0UmVnaW9uVHlwZSA9IGNvbnN0cmFpbnRzLnJlZ2lvbiBhcyBMYXlvdXRSZWdpb25UeXBlO1xuICAgIGNvbnN0IGNvbnRhaW5lcjogQm9yZGVyTGF5b3V0Q29udGFpbmVyIHwgdW5kZWZpbmVkID0gdGhpcy5jb250YWluZXJMaXN0LmZpbmQoKGNvbnRhaW5lcjogQm9yZGVyTGF5b3V0Q29udGFpbmVyKSA9PiBjb250YWluZXIuY29uc3RyYWludHMucmVnaW9uID09PSByZWdpb24pO1xuICAgIGlmICghY29udGFpbmVyKSB0aHJvdyBuZXcgTGF5b3V0UmVnaW9uRXJyb3IoYEludmFsaWQgcmVnaW9uOiBubyBjb250YWluZXIgd2l0aCB0aGUgcmVnaW9uICcke3JlZ2lvbn0nIGhhcyBiZWVuIGZvdW5kLmApO1xuICAgIGlmIChjb25zdHJhaW50cy5zaXplID09PSB1bmRlZmluZWQpIGNvbnN0cmFpbnRzLnNpemUgPSBjb250YWluZXIuZ2V0U2l6ZSgpO1xuICAgIGNvbnRhaW5lci5jb25zdHJhaW50cyA9IGNvbnN0cmFpbnRzO1xuICAgIHRoaXMucGFpbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYWtlcyB0aGlzIG9iamVjdCBlbGxpZ2libGUgZm9yIGdhcmJhZ2UgY29sbGVjdGlvbi5cbiAgICovXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0b3JlZFN0b3BIYW5kbGVyKSB7XG4gICAgICB0aGlzLmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoTU9VU0VNT1ZFLCB0aGlzLnN0b3JlZE1vdmVIYW5kbGVyKTtcbiAgICAgIHRoaXMuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihNT1VTRVVQLCB0aGlzLnN0b3JlZFN0b3BIYW5kbGVyKTtcbiAgICAgIHRoaXMuZGVsZXRlU3RvcmVkSGFuZGxlcnMoKTtcbiAgICB9XG4gICAgdGhpcy5zdWJzY3JpYmVTdmMuY2xlYXJBbGwodGhpcyk7XG4gICAgdGhpcy5seXRDb250YWluZXJFbG0gPSBudWxsIGFzIGFueTtcbiAgICB0aGlzLmJvdW5kc01hbmFnZXIuZGVzdHJveSgpO1xuICAgIHRoaXMuYm91bmRzTWFuYWdlciA9IG51bGwgYXMgYW55O1xuICAgIHRoaXMuY29udGFpbmVyTGlzdC5sZW5ndGggPSAwO1xuICAgIHRoaXMuY29udGFpbmVyTGlzdCA9IG51bGwgYXMgYW55O1xuICB9XG5cbiAgLyoqXG4gICAqIEZvcmNlcyB0aGUgbGF5b3V0IG9mIGFsbCBgQm9yZGVyTGF5b3V0Q29udGFpbmVyYCBvYmplY3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWFpbiBjb250YWluZXIuXG4gICAqL1xuICBwdWJsaWMgcGFpbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja0x5dENvbnRhaW5lcigpO1xuICAgIHRoaXMucmVuZGVyKHRoaXMubHl0Q29udGFpbmVyRWxtLm9mZnNldFdpZHRoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBgQm9yZGVyTGF5b3V0Q29udGFpbmVyYCBjb21wb25lbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBzcGVjaWZpZWQgcmVnaW9uLlxuICAgKiBcbiAgICogQHBhcmFtIHJlZ2lvbiBUaGUgcmVnaW9uIGZvciB3aGljaCB0byByZXRyZWl2ZSB0aGUgY29udGFpbmVyLlxuICAgKiBcbiAgICogQHJldHVybnMgVGhlIGBCb3JkZXJMYXlvdXRDb250YWluZXJgIGNvbXBvbmVudCBhc3NvY2lhdGVkIHdpdGggdGhlIHNwZWNpZmllZCByZWdpb24sXG4gICAqICAgICAgICAgIG9yIGB1bmRlZmluZWRgIHdoZXRoZXIgbm8gY29udGFpbmVyIGhhcyBiZWVuIGZvdW5kLlxuICAgKi9cbiAgcHVibGljIGdldEJvcmRlckxheW91dENvbnRhaW5lcihyZWdpb246IExheW91dFJlZ2lvblR5cGUpOiBCb3JkZXJMYXlvdXRDb250YWluZXIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmNvbnRhaW5lckxpc3QuZmluZCgoYzogQm9yZGVyTGF5b3V0Q29udGFpbmVyKT0+IGMuY29uc3RyYWludHMucmVnaW9uID09PSByZWdpb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2l6ZXMgdGhlIHNwZWNpZmllZCByZWdpb24gb2YgdGhlIGFzc29jaWF0ZWQgY29udGFpbmVyLlxuICAgKiBcbiAgICogQHBhcmFtIHJlZ2lvbiBUaGUgcmVnaW9uIHRvIHJlc2l6ZS5cbiAgICogQHBhcmFtIHNpemUgVGhlIG5ldyBzaXplIG9mIHRoZSByZWdpb24gdG8gcmVzaXplLlxuICAgKiBcbiAgICogQHJldHVybnMgYHRydWVgIHdoZXRoZXIgdGhlIHNwZWNpZmllZCByZWdpb24gaGFzIGJlZW4gcmVzaXplZDsgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgcmVzaXplUmVnaW9uKHJlZ2lvbjogTGF5b3V0UmVnaW9uLCBzaXplOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICBpZiAocmVnaW9uID09PSBMYXlvdXRSZWdpb24uQ0VOVEVSKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgY29udGFpbmVyOiBCb3JkZXJMYXlvdXRDb250YWluZXIgfCB1bmRlZmluZWQgPSB0aGlzLmdldEJvcmRlckxheW91dENvbnRhaW5lcihyZWdpb24pO1xuICAgIGlmICghY29udGFpbmVyKSByZXR1cm4gZmFsc2U7XG4gICAgY29udGFpbmVyLnNldFNpemUoc2l6ZSk7XG4gICAgdGhpcy5ib3VuZHNNYW5hZ2VyLmluaXRCb3VuZHMoY29udGFpbmVyKTtcbiAgICB0aGlzLnBhaW50KCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogQHByaXZhdGVcbiAgICovXG4gIHByaXZhdGUgcmVzaXplRW50ZXIoY29udGFpbmVyOiBCb3JkZXJMYXlvdXRDb250YWluZXIpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrTHl0Q29udGFpbmVyKCk7XG4gICAgY29uc3QgbHl0TmF0aXZlRWxtOiBIVE1MRGl2RWxlbWVudCA9IHRoaXMubHl0Q29udGFpbmVyRWxtO1xuICAgIGNvbnN0IHdpZHRoOiBudW1iZXIgPSBseXROYXRpdmVFbG0ub2Zmc2V0V2lkdGg7XG4gICAgY29uc3QgaGVpZ2h0OiBudW1iZXIgPSBseXROYXRpdmVFbG0ub2Zmc2V0SGVpZ2h0O1xuICAgIGNvbnN0IGJvdW5kczogRE9NUmVjdCA9IGx5dE5hdGl2ZUVsbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBjb25zdHJhaW50czogTGF5b3V0Q29uc3RyYWludHMgPSBjb250YWluZXIuY29uc3RyYWludHM7XG4gICAgY29uc3QgcmVnaW9uOiBMYXlvdXRSZWdpb24gPSBjb25zdHJhaW50cy5yZWdpb24gYXMgTGF5b3V0UmVnaW9uO1xuICAgIGNvbnN0IG1pblNpemU6IG51bWJlciB8IHVuZGVmaW5lZCA9IGNvbnN0cmFpbnRzLm1pblNpemU7XG4gICAgY29uc3QgbWF4U2l6ZTogbnVtYmVyIHwgdW5kZWZpbmVkID0gY29uc3RyYWludHMubWF4U2l6ZTtcbiAgICBjb25zdCBkb2M6IERvY3VtZW50ID0gdGhpcy5kb2N1bWVudDtcbiAgICBsZXQgc2l6ZTogbnVtYmVyID0gMDtcbiAgICB0aGlzLmJvdW5kc01hbmFnZXIuc2V0T3JpZ2luKGJvdW5kcy54LCBib3VuZHMueSk7XG4gICAgbGV0IHJlc2l6ZU1ldGhvZDogUmVzaXplTWV0aG9kID0gdGhpcy5ib3VuZHNNYW5hZ2VyLmdldFJlc2l6ZU1ldGhvZChyZWdpb24pO1xuICAgIGNvbnRhaW5lci5zZWxlY3RlZCA9IHRydWU7XG4gICAgY29uc3Qgb25Nb3ZlSGFuZGxlciA9IChldmVudDogTW91c2VFdmVudCk9PiB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBzaXplID0gcmVzaXplTWV0aG9kKGV2ZW50LCB3aWR0aCwgaGVpZ2h0LCBtaW5TaXplLCBtYXhTaXplKTtcbiAgICAgIGNvbnRhaW5lci5zZXRTaXplKHNpemUpO1xuICAgICAgdGhpcy5yZW5kZXIod2lkdGgpO1xuICAgICAgdGhpcy5maXJlRXZlbnQoY29udGFpbmVyLCBMYXlvdXREcmFnRXZlbnRUeXBlLkRSQUdHSU5HKTtcbiAgICB9O1xuICAgIGNvbnN0IG9uU3RvcEhhbmRsZXIgPSAoZXZlbnQ6IE1vdXNlRXZlbnQpPT4ge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZG9jLnJlbW92ZUV2ZW50TGlzdGVuZXIoTU9VU0VNT1ZFLCBvbk1vdmVIYW5kbGVyKTtcbiAgICAgIGRvYy5yZW1vdmVFdmVudExpc3RlbmVyKE1PVVNFVVAsIG9uU3RvcEhhbmRsZXIpO1xuICAgICAgdGhpcy5kZWxldGVTdG9yZWRIYW5kbGVycygpO1xuICAgICAgY29udGFpbmVyLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICBzaXplID0gcmVzaXplTWV0aG9kKGV2ZW50LCB3aWR0aCwgaGVpZ2h0LCBtaW5TaXplLCBtYXhTaXplKTtcbiAgICAgIGNvbnRhaW5lci5zZXRTaXplKHNpemUpO1xuICAgICAgdGhpcy5yZW5kZXIod2lkdGgpO1xuICAgICAgdGhpcy5maXJlRXZlbnQoY29udGFpbmVyLCBMYXlvdXREcmFnRXZlbnRUeXBlLkRSQUdfU1RPUCk7XG4gICAgfTtcbiAgICB0aGlzLnN0b3JlZE1vdmVIYW5kbGVyID0gb25Nb3ZlSGFuZGxlcjtcbiAgICB0aGlzLnN0b3JlZFN0b3BIYW5kbGVyID0gb25TdG9wSGFuZGxlcjtcbiAgICB0aGlzLmZpcmVFdmVudChjb250YWluZXIsIExheW91dERyYWdFdmVudFR5cGUuRFJBR19TVEFSVCk7XG4gICAgZG9jLmFkZEV2ZW50TGlzdGVuZXIoTU9VU0VNT1ZFLCBvbk1vdmVIYW5kbGVyKTtcbiAgICBkb2MuYWRkRXZlbnRMaXN0ZW5lcihNT1VTRVVQLCBvblN0b3BIYW5kbGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBmaXJlRXZlbnQodGFyZ2V0OiBCb3JkZXJMYXlvdXRDb250YWluZXIsIHR5cGU6IExheW91dERyYWdFdmVudFR5cGUpOiB2b2lkIHtcbiAgICBjb25zdCBldnQ6IExheW91dERyYWdFdmVudCA9IG5ldyBMYXlvdXREcmFnRXZlbnQodGFyZ2V0LCB0eXBlKTtcbiAgICB0aGlzLnVzZXJBY3Rpb24uZW1pdChldnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIHJlbmRlcih3aWR0aDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgYm91bmRzOiBET01SZWN0ID0gdGhpcy5ib3VuZHNNYW5hZ2VyLmdldEJvdW5kcygpO1xuICAgIGNvbnN0IHRvcDogbnVtYmVyID0gYm91bmRzLnRvcDtcbiAgICBjb25zdCBib3R0b206IG51bWJlciA9IGJvdW5kcy5ib3R0b207XG4gICAgY29uc3QgbGVmdDogbnVtYmVyID0gYm91bmRzLmxlZnQ7XG4gICAgY29uc3QgcmlnaHQ6IG51bWJlciA9IGJvdW5kcy5yaWdodDtcbiAgICBjb25zdCBjTGlzdDogQm9yZGVyTGF5b3V0Q29udGFpbmVyW10gPSB0aGlzLmNvbnRhaW5lckxpc3Q7XG4gICAgbGV0IGN1cnNvcjogbnVtYmVyID0gY0xpc3QubGVuZ3RoIC0gMTtcbiAgICB3aGlsZShjdXJzb3IgPj0gMCkge1xuICAgICAgY29uc3QgY29udDogQm9yZGVyTGF5b3V0Q29udGFpbmVyID0gY0xpc3RbY3Vyc29yXTtcbiAgICAgIGNvbnN0IHI6IExheW91dFJlZ2lvbiA9IGNvbnQuY29uc3RyYWludHMucmVnaW9uIGFzIExheW91dFJlZ2lvbjtcbiAgICAgIGN1cnNvci0tO1xuICAgICAgaWYgKHIgPT09IExheW91dFJlZ2lvbi5OT1JUSCB8fCByID09PSBMYXlvdXRSZWdpb24uU09VVEgpIGNvbnRpbnVlO1xuICAgICAgaWYgKHIgPT09IExheW91dFJlZ2lvbi5XRVNUKSB7XG4gICAgICAgIGNvbnQuc2V0VG9wUG9zKHRvcCk7XG4gICAgICAgIGNvbnQuc2V0UmlnaHRQb3Mod2lkdGggLSBsZWZ0KTtcbiAgICAgICAgY29udC5zZXRCb3R0b21Qb3MoYm90dG9tIC0gdG9wKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBpZiAociA9PT0gTGF5b3V0UmVnaW9uLkNFTlRFUikge1xuICAgICAgICBjb250LnNldFRvcFBvcyh0b3ApO1xuICAgICAgICBjb250LnNldExlZnRQb3MobGVmdCk7XG4gICAgICAgIGNvbnQuc2V0UmlnaHRQb3MocmlnaHQgLSBsZWZ0KTtcbiAgICAgICAgY29udC5zZXRCb3R0b21Qb3MoYm90dG9tIC0gdG9wKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBpZiAociA9PT0gTGF5b3V0UmVnaW9uLkVBU1QpIHtcbiAgICAgICAgY29udC5zZXRUb3BQb3ModG9wKTtcbiAgICAgICAgY29udC5zZXRMZWZ0UG9zKHdpZHRoIC0gKHJpZ2h0IC0gbGVmdCkpO1xuICAgICAgICBjb250LnNldEJvdHRvbVBvcyhib3R0b20gLSB0b3ApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBwcml2YXRlXG4gICAqL1xuICBwcml2YXRlIGNoZWNrTHl0Q29udGFpbmVyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5seXRDb250YWluZXJFbG0pIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihMQVlPVVRfRVJSX01TRyk7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSBkZWxldGVTdG9yZWRIYW5kbGVycygpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlZE1vdmVIYW5kbGVyID0gdGhpcy5zdG9yZWRTdG9wSGFuZGxlciA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -15,8 +15,8 @@ import * as i0 from "@angular/core";
|
|
|
15
15
|
const ATX_VERSION_CONFIG = {
|
|
16
16
|
major: 1,
|
|
17
17
|
minor: 4,
|
|
18
|
-
patch:
|
|
19
|
-
buildTimestamp:
|
|
18
|
+
patch: 5,
|
|
19
|
+
buildTimestamp: 1728994098977
|
|
20
20
|
};
|
|
21
21
|
/**
|
|
22
22
|
* The public service that exposes the current version of the Angular Toolbox library.
|
|
@@ -34,4 +34,4 @@ export class AngularToolboxVersionService extends AbstractVersionManager {
|
|
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: AngularToolboxVersionService, decorators: [{
|
|
35
35
|
type: Injectable
|
|
36
36
|
}], ctorParameters: () => [] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10b29sYm94LXZlcnNpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL21vZGVsL3NlcnZpY2UvdmVyc2lvbi9hbmd1bGFyLXRvb2xib3gtdmVyc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUd2RDs7O0dBR0c7QUFDSCxNQUFNLGtCQUFrQixHQUFrQjtJQUN4QyxLQUFLLEVBQUUsQ0FBQztJQUNSLEtBQUssRUFBRSxDQUFDO0lBQ1IsS0FBSyxFQUFFLENBQUM7SUFDUixjQUFjLEVBQUUsYUFBYTtDQUM5QixDQUFDO0FBRUY7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsc0JBQXNCO0lBRXRFOztPQUVHO0lBQ0g7UUFDRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQVBVLDRCQUE0QjtrSEFBNUIsNEJBQTRCOzsyRkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdFZlcnNpb25NYW5hZ2VyIH0gZnJvbSAnLi4vLi4vLi4vY29yZSc7XHJcbmltcG9ydCB7IFZlcnNpb25Db25maWcgfSBmcm9tICcuLi8uLi9idXNpbmVzcyc7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICogVGhlIGN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgQW5ndWxhciBUb29sYm94IGxpYnJhcnkuXHJcbiAqL1xyXG5jb25zdCBBVFhfVkVSU0lPTl9DT05GSUc6IFZlcnNpb25Db25maWcgPSB7XHJcbiAgbWFqb3I6IDEsXHJcbiAgbWlub3I6IDQsXHJcbiAgcGF0Y2g6IDUsXHJcbiAgYnVpbGRUaW1lc3RhbXA6IDE3Mjg5OTQwOTg5NzdcclxufTtcclxuXHJcbi8qKlxyXG4gKiBUaGUgcHVibGljIHNlcnZpY2UgdGhhdCBleHBvc2VzIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgdGhlIEFuZ3VsYXIgVG9vbGJveCBsaWJyYXJ5LlxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQW5ndWxhclRvb2xib3hWZXJzaW9uU2VydmljZSBleHRlbmRzIEFic3RyYWN0VmVyc2lvbk1hbmFnZXIge1xyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoQVRYX1ZFUlNJT05fQ09ORklHKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -586,8 +586,8 @@ class AbstractVersionManager {
|
|
|
586
586
|
const ATX_VERSION_CONFIG = {
|
|
587
587
|
major: 1,
|
|
588
588
|
minor: 4,
|
|
589
|
-
patch:
|
|
590
|
-
buildTimestamp:
|
|
589
|
+
patch: 5,
|
|
590
|
+
buildTimestamp: 1728994098977
|
|
591
591
|
};
|
|
592
592
|
/**
|
|
593
593
|
* The public service that exposes the current version of the Angular Toolbox library.
|
|
@@ -9124,8 +9124,6 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9124
9124
|
regionValidator += r;
|
|
9125
9125
|
this.subscribeSvc.register(this, container.resizeStart.subscribe(container => this.resizeEnter(container)));
|
|
9126
9126
|
this.boundsManager.initBounds(container);
|
|
9127
|
-
if (r === LayoutRegion.NORTH || r === LayoutRegion.SOUTH)
|
|
9128
|
-
return;
|
|
9129
9127
|
this.containerList.push(container);
|
|
9130
9128
|
});
|
|
9131
9129
|
}
|
|
@@ -9185,6 +9183,17 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9185
9183
|
this.checkLytContainer();
|
|
9186
9184
|
this.render(this.lytContainerElm.offsetWidth);
|
|
9187
9185
|
}
|
|
9186
|
+
/**
|
|
9187
|
+
* Returns the `BorderLayoutContainer` component associated with the specified region.
|
|
9188
|
+
*
|
|
9189
|
+
* @param region The region for which to retreive the container.
|
|
9190
|
+
*
|
|
9191
|
+
* @returns The `BorderLayoutContainer` component associated with the specified region,
|
|
9192
|
+
* or `undefined` whether no container has been found.
|
|
9193
|
+
*/
|
|
9194
|
+
getBorderLayoutContainer(region) {
|
|
9195
|
+
return this.containerList.find((c) => c.constraints.region === region);
|
|
9196
|
+
}
|
|
9188
9197
|
/**
|
|
9189
9198
|
* Resizes the specified region of the associated container.
|
|
9190
9199
|
*
|
|
@@ -9196,9 +9205,7 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9196
9205
|
resizeRegion(region, size) {
|
|
9197
9206
|
if (region === LayoutRegion.CENTER)
|
|
9198
9207
|
return false;
|
|
9199
|
-
const container = this.
|
|
9200
|
-
return c.constraints.region === region;
|
|
9201
|
-
});
|
|
9208
|
+
const container = this.getBorderLayoutContainer(region);
|
|
9202
9209
|
if (!container)
|
|
9203
9210
|
return false;
|
|
9204
9211
|
container.setSize(size);
|
|
@@ -9272,6 +9279,8 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9272
9279
|
const cont = cList[cursor];
|
|
9273
9280
|
const r = cont.constraints.region;
|
|
9274
9281
|
cursor--;
|
|
9282
|
+
if (r === LayoutRegion.NORTH || r === LayoutRegion.SOUTH)
|
|
9283
|
+
continue;
|
|
9275
9284
|
if (r === LayoutRegion.WEST) {
|
|
9276
9285
|
cont.setTopPos(top);
|
|
9277
9286
|
cont.setRightPos(width - left);
|
|
@@ -9413,6 +9422,17 @@ class BorderLayout extends IdentifiableComponent {
|
|
|
9413
9422
|
setConstraints(constraints) {
|
|
9414
9423
|
this.renderer.setConstraints(constraints);
|
|
9415
9424
|
}
|
|
9425
|
+
/**
|
|
9426
|
+
* Returns the `BorderLayoutContainer` component associated with the specified region.
|
|
9427
|
+
*
|
|
9428
|
+
* @param region The region for which to retreive the container.
|
|
9429
|
+
*
|
|
9430
|
+
* @returns The `BorderLayoutContainer` component associated with the specified region,
|
|
9431
|
+
* or `undefined` whether no container has been found.
|
|
9432
|
+
*/
|
|
9433
|
+
getBorderLayoutContainer(region) {
|
|
9434
|
+
return this.renderer.getBorderLayoutContainer(region);
|
|
9435
|
+
}
|
|
9416
9436
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BorderLayout, deps: [{ token: SubscriptionService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9417
9437
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: BorderLayout, isStandalone: true, selector: "atx-border-layout", outputs: { dragStart: "dragStart", dragStop: "dragStop", dragging: "dragging" }, host: { listeners: { "window:resize": "onResize()" } }, queries: [{ propertyName: "__containers__", predicate: BorderLayoutContainer }], viewQueries: [{ propertyName: "layoutContainer", first: true, predicate: ["atxLayoutContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!--\n * LICENSE\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n-->\n\n<div #atxLayoutContainer class=\"atx-border-layout\">\n <ng-content></ng-content>\n</div>", styles: [".atx-border-layout{position:relative;height:100%;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.atx-border-layout{box-sizing:border-box}\n/**\n * @license\n * Copyright Pascal ECHEMANN. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be found in\n * the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license\n */\n"] }); }
|
|
9418
9438
|
}
|