angular-toolbox 1.4.4 → 1.4.6
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/component/layout/border-layout-container/border-layout-container.component.mjs +1 -1
- package/esm2022/lib/framework/dialog/dialog-backdrop-type.enum.mjs +23 -0
- package/esm2022/lib/framework/dialog/dialog-backdrop.type.mjs +9 -0
- package/esm2022/lib/framework/dialog/dialog-default-config.mjs +15 -0
- package/esm2022/lib/framework/dialog/dialog-outlet-event-type.mjs +9 -0
- package/esm2022/lib/framework/dialog/dialog-outlet.event.mjs +33 -0
- package/esm2022/lib/framework/dialog/dialog-service.error.mjs +27 -0
- package/esm2022/lib/framework/dialog/dialog-service.mjs +67 -0
- package/esm2022/lib/framework/dialog/dialog.config.mjs +9 -0
- package/esm2022/lib/framework/dialog/dialog.outlet.mjs +94 -0
- package/esm2022/lib/framework/dialog/index.mjs +16 -0
- package/esm2022/lib/framework/index.mjs +2 -1
- package/esm2022/lib/model/service/version/angular-toolbox-version.service.mjs +3 -3
- package/fesm2022/angular-toolbox.mjs +321 -21
- 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/lib/framework/dialog/dialog-backdrop-type.enum.d.ts +20 -0
- package/lib/framework/dialog/dialog-backdrop.type.d.ts +11 -0
- package/lib/framework/dialog/dialog-default-config.d.ts +12 -0
- package/lib/framework/dialog/dialog-outlet-event-type.d.ts +11 -0
- package/lib/framework/dialog/dialog-outlet.event.d.ts +40 -0
- package/lib/framework/dialog/dialog-service.d.ts +47 -0
- package/lib/framework/dialog/dialog-service.error.d.ts +19 -0
- package/lib/framework/dialog/dialog.config.d.ts +18 -0
- package/lib/framework/dialog/dialog.outlet.d.ts +59 -0
- package/lib/framework/dialog/index.d.ts +15 -0
- package/lib/framework/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';
|
|
9
|
+
import { DialogOutletEvent } from './dialog-outlet.event';
|
|
10
|
+
import { DEFAULT_CONFIG } from './dialog-default-config';
|
|
11
|
+
import { DialogBackdropType } from './dialog-backdrop-type.enum';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "./dialog-service";
|
|
14
|
+
/**
|
|
15
|
+
* Acts as a placeholder that the ATX framework dynamically fills based on the component specified
|
|
16
|
+
* by the dialog service `show()` method.
|
|
17
|
+
*/
|
|
18
|
+
export class DialogOutlet {
|
|
19
|
+
/**
|
|
20
|
+
* @private
|
|
21
|
+
*/
|
|
22
|
+
constructor(dialogSvc) {
|
|
23
|
+
this.dialogSvc = dialogSvc;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* @private
|
|
27
|
+
*/
|
|
28
|
+
ngOnInit() {
|
|
29
|
+
this.dialogSvc.__init__(this.renderer);
|
|
30
|
+
this.dialogSvc.dialogStateChange.subscribe((event) => this.stateChange(event));
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @private
|
|
34
|
+
*/
|
|
35
|
+
mouseupHandler(event) {
|
|
36
|
+
if (this._config.backdrop !== DialogBackdropType.MODAL)
|
|
37
|
+
return;
|
|
38
|
+
const rect = this._dialog.nativeElement.getBoundingClientRect();
|
|
39
|
+
const xPos = event.clientX;
|
|
40
|
+
const yPos = event.clientY;
|
|
41
|
+
const top = rect.top;
|
|
42
|
+
const left = rect.left;
|
|
43
|
+
const isDialog = (top <= yPos && yPos <= top + rect.height && left <= xPos && xPos <= left + rect.width);
|
|
44
|
+
if (!isDialog)
|
|
45
|
+
this.hide();
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* @private
|
|
49
|
+
*/
|
|
50
|
+
onClose(event) {
|
|
51
|
+
this.renderer.clear();
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @private
|
|
55
|
+
*/
|
|
56
|
+
stateChange(event) {
|
|
57
|
+
const state = event.state;
|
|
58
|
+
if (state === DialogOutletEvent.SHOW)
|
|
59
|
+
return this.show(event);
|
|
60
|
+
if (state === DialogOutletEvent.HIDE)
|
|
61
|
+
this.hide();
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* @private
|
|
65
|
+
*/
|
|
66
|
+
show(event) {
|
|
67
|
+
this._config = event.config || DEFAULT_CONFIG;
|
|
68
|
+
this._dialog.nativeElement.showModal();
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* @private
|
|
72
|
+
*/
|
|
73
|
+
hide() {
|
|
74
|
+
this._dialog.nativeElement.close();
|
|
75
|
+
}
|
|
76
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogOutlet, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
77
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: DialogOutlet, isStandalone: true, selector: "atx-dialog-outlet", viewQueries: [{ propertyName: "_dialog", first: true, predicate: ["dialog"], descendants: true }, { propertyName: "renderer", first: true, predicate: ["renderer"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: '<dialog #dialog (mouseup)="mouseupHandler($event)" (close)="onClose($event)"><ng-container #renderer></ng-container></dialog>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
78
|
+
}
|
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogOutlet, decorators: [{
|
|
80
|
+
type: Component,
|
|
81
|
+
args: [{
|
|
82
|
+
selector: 'atx-dialog-outlet',
|
|
83
|
+
standalone: true,
|
|
84
|
+
template: '<dialog #dialog (mouseup)="mouseupHandler($event)" (close)="onClose($event)"><ng-container #renderer></ng-container></dialog>',
|
|
85
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
86
|
+
}]
|
|
87
|
+
}], ctorParameters: () => [{ type: i1.DialogService }], propDecorators: { _dialog: [{
|
|
88
|
+
type: ViewChild,
|
|
89
|
+
args: ["dialog"]
|
|
90
|
+
}], renderer: [{
|
|
91
|
+
type: ViewChild,
|
|
92
|
+
args: ["renderer", { static: true, read: ViewContainerRef }]
|
|
93
|
+
}] } });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm91dGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL2ZyYW1ld29yay9kaWFsb2cvZGlhbG9nLm91dGxldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFzQixTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEgsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7QUFHakU7OztHQUdHO0FBT0gsTUFBTSxPQUFPLFlBQVk7SUFtQnZCOztPQUVHO0lBQ0gsWUFBb0IsU0FBd0I7UUFBeEIsY0FBUyxHQUFULFNBQVMsQ0FBZTtJQUFHLENBQUM7SUFFaEQ7O09BRUc7SUFDSSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBd0IsRUFBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFRDs7T0FFRztJQUNPLGNBQWMsQ0FBQyxLQUFpQjtRQUN4QyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxLQUFLLGtCQUFrQixDQUFDLEtBQUs7WUFBRSxPQUFPO1FBQy9ELE1BQU0sSUFBSSxHQUFZLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDekUsTUFBTSxJQUFJLEdBQVcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNuQyxNQUFNLElBQUksR0FBVyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ25DLE1BQU0sR0FBRyxHQUFXLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUMvQixNQUFNLFFBQVEsR0FBWSxDQUFDLEdBQUcsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEgsSUFBSSxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVEOztPQUVHO0lBQ08sT0FBTyxDQUFDLEtBQVk7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQ7O09BRUc7SUFDSyxXQUFXLENBQUMsS0FBd0I7UUFDMUMsTUFBTSxLQUFLLEdBQTBCLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDakQsSUFBSSxLQUFLLEtBQUssaUJBQWlCLENBQUMsSUFBSTtZQUFFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5RCxJQUFJLEtBQUssS0FBSyxpQkFBaUIsQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNLLElBQUksQ0FBQyxLQUF3QjtRQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLElBQUksY0FBYyxDQUFDO1FBQzlDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNLLElBQUk7UUFDVixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDOzhHQTNFVSxZQUFZO2tHQUFaLFlBQVksa1BBV3NCLGdCQUFnQiwyQ0FkbkQsK0hBQStIOzsyRkFHOUgsWUFBWTtrQkFOeEIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLCtIQUErSDtvQkFDekksZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO2tGQU9TLE9BQU87c0JBRGQsU0FBUzt1QkFBQyxRQUFRO2dCQU9YLFFBQVE7c0JBRGYsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgUGFzY2FsIEVDSEVNQU5OLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKlxyXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxyXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcGFzY2FsZWNoZW1hbm4uY29tL2FuZ3VsYXItdG9vbGJveC9yZXNvdXJjZXMvbGljZW5zZVxyXG4gKi9cclxuXHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERpYWxvZ091dGxldEV2ZW50IH0gZnJvbSAnLi9kaWFsb2ctb3V0bGV0LmV2ZW50JztcclxuaW1wb3J0IHsgRGlhbG9nT3V0bGV0RXZlbnRUeXBlIH0gZnJvbSAnLi9kaWFsb2ctb3V0bGV0LWV2ZW50LXR5cGUnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb25maWcgfSBmcm9tICcuL2RpYWxvZy5jb25maWcnO1xyXG5pbXBvcnQgeyBERUZBVUxUX0NPTkZJRyB9IGZyb20gJy4vZGlhbG9nLWRlZmF1bHQtY29uZmlnJztcclxuaW1wb3J0IHsgRGlhbG9nQmFja2Ryb3BUeXBlIH0gZnJvbSAnLi9kaWFsb2ctYmFja2Ryb3AtdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJy4vZGlhbG9nLXNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIEFjdHMgYXMgYSBwbGFjZWhvbGRlciB0aGF0IHRoZSBBVFggZnJhbWV3b3JrIGR5bmFtaWNhbGx5IGZpbGxzIGJhc2VkIG9uIHRoZSBjb21wb25lbnQgc3BlY2lmaWVkXHJcbiAqIGJ5IHRoZSBkaWFsb2cgc2VydmljZSBgc2hvdygpYCBtZXRob2QuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F0eC1kaWFsb2ctb3V0bGV0JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHRlbXBsYXRlOiAnPGRpYWxvZyAjZGlhbG9nIChtb3VzZXVwKT1cIm1vdXNldXBIYW5kbGVyKCRldmVudClcIiAoY2xvc2UpPVwib25DbG9zZSgkZXZlbnQpXCI+PG5nLWNvbnRhaW5lciAjcmVuZGVyZXI+PC9uZy1jb250YWluZXI+PC9kaWFsb2c+JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nT3V0bGV0IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBAVmlld0NoaWxkKFwiZGlhbG9nXCIpXHJcbiAgcHJpdmF0ZSBfZGlhbG9nITogRWxlbWVudFJlZjxIVE1MRGlhbG9nRWxlbWVudD47XHJcblxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgQFZpZXdDaGlsZChcInJlbmRlcmVyXCIsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pXHJcbiAgcHJpdmF0ZSByZW5kZXJlciE6IFZpZXdDb250YWluZXJSZWY7XHJcblxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY29uZmlnITogRGlhbG9nQ29uZmlnO1xyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGlhbG9nU3ZjOiBEaWFsb2dTZXJ2aWNlKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nU3ZjLl9faW5pdF9fKHRoaXMucmVuZGVyZXIpO1xyXG4gICAgdGhpcy5kaWFsb2dTdmMuZGlhbG9nU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKChldmVudDogRGlhbG9nT3V0bGV0RXZlbnQpPT4gdGhpcy5zdGF0ZUNoYW5nZShldmVudCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgbW91c2V1cEhhbmRsZXIoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9jb25maWcuYmFja2Ryb3AgIT09IERpYWxvZ0JhY2tkcm9wVHlwZS5NT0RBTCkgcmV0dXJuO1xyXG4gICAgY29uc3QgcmVjdDogRE9NUmVjdCA9IHRoaXMuX2RpYWxvZy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgY29uc3QgeFBvczogbnVtYmVyID0gZXZlbnQuY2xpZW50WDtcclxuICAgIGNvbnN0IHlQb3M6IG51bWJlciA9IGV2ZW50LmNsaWVudFk7XHJcbiAgICBjb25zdCB0b3A6IG51bWJlciA9IHJlY3QudG9wO1xyXG4gICAgY29uc3QgbGVmdDogbnVtYmVyID0gcmVjdC5sZWZ0O1xyXG4gICAgY29uc3QgaXNEaWFsb2c6IGJvb2xlYW4gPSAodG9wIDw9IHlQb3MgJiYgeVBvcyA8PSB0b3AgKyByZWN0LmhlaWdodCAmJiBsZWZ0IDw9IHhQb3MgJiYgeFBvcyA8PSBsZWZ0ICsgcmVjdC53aWR0aCk7XHJcbiAgICBpZiAoIWlzRGlhbG9nKSB0aGlzLmhpZGUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIG9uQ2xvc2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbmRlcmVyLmNsZWFyKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgc3RhdGVDaGFuZ2UoZXZlbnQ6IERpYWxvZ091dGxldEV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCBzdGF0ZTogRGlhbG9nT3V0bGV0RXZlbnRUeXBlID0gZXZlbnQuc3RhdGU7XHJcbiAgICBpZiAoc3RhdGUgPT09IERpYWxvZ091dGxldEV2ZW50LlNIT1cpIHJldHVybiB0aGlzLnNob3coZXZlbnQpO1xyXG4gICAgaWYgKHN0YXRlID09PSBEaWFsb2dPdXRsZXRFdmVudC5ISURFKSB0aGlzLmhpZGUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzaG93KGV2ZW50OiBEaWFsb2dPdXRsZXRFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5fY29uZmlnID0gZXZlbnQuY29uZmlnIHx8IERFRkFVTFRfQ09ORklHO1xyXG4gICAgdGhpcy5fZGlhbG9nLm5hdGl2ZUVsZW1lbnQuc2hvd01vZGFsKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgaGlkZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2RpYWxvZy5uYXRpdmVFbGVtZW50LmNsb3NlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
7
|
+
*/
|
|
8
|
+
export * from "./dialog-backdrop-type.enum";
|
|
9
|
+
export * from "./dialog-backdrop.type";
|
|
10
|
+
export * from "./dialog-outlet-event-type";
|
|
11
|
+
export * from "./dialog-outlet.event";
|
|
12
|
+
export * from "./dialog.config";
|
|
13
|
+
export * from "./dialog.outlet";
|
|
14
|
+
export * from "./dialog-service";
|
|
15
|
+
export * from "./dialog-service.error";
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvZGlhbG9nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgUGFzY2FsIEVDSEVNQU5OLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKlxyXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxyXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vcGFzY2FsZWNoZW1hbm4uY29tL2FuZ3VsYXItdG9vbGJveC9yZXNvdXJjZXMvbGljZW5zZVxyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gXCIuL2RpYWxvZy1iYWNrZHJvcC10eXBlLmVudW1cIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vZGlhbG9nLWJhY2tkcm9wLnR5cGVcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vZGlhbG9nLW91dGxldC1ldmVudC10eXBlXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2RpYWxvZy1vdXRsZXQuZXZlbnRcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vZGlhbG9nLmNvbmZpZ1wiO1xyXG5leHBvcnQgKiBmcm9tIFwiLi9kaWFsb2cub3V0bGV0XCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2RpYWxvZy1zZXJ2aWNlXCI7XHJcbmV4cG9ydCAqIGZyb20gXCIuL2RpYWxvZy1zZXJ2aWNlLmVycm9yXCI7Il19
|
|
@@ -2,4 +2,5 @@ export * from './mock/http';
|
|
|
2
2
|
export * from './mock/http-monitoring-console';
|
|
3
3
|
export * from './mock/documentation';
|
|
4
4
|
export * from './logging';
|
|
5
|
-
|
|
5
|
+
export * from './dialog';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRvb2xib3gvc3JjL2xpYi9mcmFtZXdvcmsvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmV4cG9ydCAqIGZyb20gJy4vbW9jay9odHRwJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2NrL2h0dHAtbW9uaXRvcmluZy1jb25zb2xlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2NrL2RvY3VtZW50YXRpb24nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xvZ2dpbmcnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZyc7Il19
|
|
@@ -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: 6,
|
|
19
|
+
buildTimestamp: 1733307295401
|
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10b29sYm94LXZlcnNpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdG9vbGJveC9zcmMvbGliL21vZGVsL3NlcnZpY2UvdmVyc2lvbi9hbmd1bGFyLXRvb2xib3gtdmVyc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUd2RDs7O0dBR0c7QUFDSCxNQUFNLGtCQUFrQixHQUFrQjtJQUN4QyxLQUFLLEVBQUUsQ0FBQztJQUNSLEtBQUssRUFBRSxDQUFDO0lBQ1IsS0FBSyxFQUFFLENBQUM7SUFDUixjQUFjLEVBQUUsYUFBYTtDQUM5QixDQUFDO0FBRUY7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsc0JBQXNCO0lBRXRFOztPQUVHO0lBQ0g7UUFDRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQVBVLDRCQUE0QjtrSEFBNUIsNEJBQTRCOzsyRkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBQYXNjYWwgRUNIRU1BTk4uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluXHJcbiAqIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9wYXNjYWxlY2hlbWFubi5jb20vYW5ndWxhci10b29sYm94L3Jlc291cmNlcy9saWNlbnNlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdFZlcnNpb25NYW5hZ2VyIH0gZnJvbSAnLi4vLi4vLi4vY29yZSc7XHJcbmltcG9ydCB7IFZlcnNpb25Db25maWcgfSBmcm9tICcuLi8uLi9idXNpbmVzcyc7XHJcblxyXG4vKipcclxuICogQHByaXZhdGVcclxuICogVGhlIGN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgQW5ndWxhciBUb29sYm94IGxpYnJhcnkuXHJcbiAqL1xyXG5jb25zdCBBVFhfVkVSU0lPTl9DT05GSUc6IFZlcnNpb25Db25maWcgPSB7XHJcbiAgbWFqb3I6IDEsXHJcbiAgbWlub3I6IDQsXHJcbiAgcGF0Y2g6IDYsXHJcbiAgYnVpbGRUaW1lc3RhbXA6IDE3MzMzMDcyOTU0MDFcclxufTtcclxuXHJcbi8qKlxyXG4gKiBUaGUgcHVibGljIHNlcnZpY2UgdGhhdCBleHBvc2VzIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgdGhlIEFuZ3VsYXIgVG9vbGJveCBsaWJyYXJ5LlxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQW5ndWxhclRvb2xib3hWZXJzaW9uU2VydmljZSBleHRlbmRzIEFic3RyYWN0VmVyc2lvbk1hbmFnZXIge1xyXG5cclxuICAvKipcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoQVRYX1ZFUlNJT05fQ09ORklHKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, NgModule, EventEmitter, Component, Inject, isDevMode, Optional, ChangeDetectionStrategy, Input, Pipe, Output, inject,
|
|
2
|
+
import { Injectable, NgModule, EventEmitter, Component, Inject, isDevMode, Optional, ChangeDetectionStrategy, Input, Pipe, Output, inject, ViewContainerRef, ViewChild, ViewEncapsulation, HostBinding, HostListener, ContentChildren, Directive } from '@angular/core';
|
|
3
3
|
import { Observable, from, of } from 'rxjs';
|
|
4
4
|
import * as i1$1 from '@angular/common';
|
|
5
5
|
import { DOCUMENT, formatDate, CommonModule, DatePipe, NgStyle, XhrFactory } from '@angular/common';
|
|
@@ -18,7 +18,7 @@ import { HttpContextToken, HttpHeaders, HttpContext, HttpParams, HttpRequest, Ht
|
|
|
18
18
|
/**
|
|
19
19
|
* @private
|
|
20
20
|
*/
|
|
21
|
-
const NAME$
|
|
21
|
+
const NAME$5 = "SubscriptionError";
|
|
22
22
|
/**
|
|
23
23
|
* Represents errors thrown by `SubscriptionService` instances.
|
|
24
24
|
*/
|
|
@@ -30,7 +30,7 @@ class SubscriptionError extends Error {
|
|
|
30
30
|
*/
|
|
31
31
|
constructor(message) {
|
|
32
32
|
super(message);
|
|
33
|
-
this.name = NAME$
|
|
33
|
+
this.name = NAME$5;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -44,7 +44,7 @@ class SubscriptionError extends Error {
|
|
|
44
44
|
/**
|
|
45
45
|
* @private
|
|
46
46
|
*/
|
|
47
|
-
const NAME$
|
|
47
|
+
const NAME$4 = "IntegrityError";
|
|
48
48
|
/**
|
|
49
49
|
* Represents a data integrity violation error.
|
|
50
50
|
*/
|
|
@@ -56,7 +56,7 @@ class IntegrityError extends Error {
|
|
|
56
56
|
*/
|
|
57
57
|
constructor(message) {
|
|
58
58
|
super(message);
|
|
59
|
-
this.name = NAME$
|
|
59
|
+
this.name = NAME$4;
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
|
|
@@ -70,7 +70,7 @@ class IntegrityError extends Error {
|
|
|
70
70
|
/**
|
|
71
71
|
* @private
|
|
72
72
|
*/
|
|
73
|
-
const NAME$
|
|
73
|
+
const NAME$3 = "AppBridgeError";
|
|
74
74
|
/**
|
|
75
75
|
* Represents exceptions thrown by the `AppBridge` class.
|
|
76
76
|
*/
|
|
@@ -80,7 +80,7 @@ class AppBridgeError extends ReferenceError {
|
|
|
80
80
|
*/
|
|
81
81
|
constructor(message) {
|
|
82
82
|
super(message);
|
|
83
|
-
this.name = NAME$
|
|
83
|
+
this.name = NAME$3;
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
|
|
@@ -94,7 +94,7 @@ class AppBridgeError extends ReferenceError {
|
|
|
94
94
|
/**
|
|
95
95
|
* @private
|
|
96
96
|
*/
|
|
97
|
-
const NAME$
|
|
97
|
+
const NAME$2 = "HttpMockServiceError";
|
|
98
98
|
/**
|
|
99
99
|
* Represents errors thrown by `HttpMockService` instances.
|
|
100
100
|
*/
|
|
@@ -106,7 +106,7 @@ class HttpMockServiceError extends Error {
|
|
|
106
106
|
*/
|
|
107
107
|
constructor(message) {
|
|
108
108
|
super(message);
|
|
109
|
-
this.name = NAME$
|
|
109
|
+
this.name = NAME$2;
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
|
|
@@ -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: 6,
|
|
590
|
+
buildTimestamp: 1733307295401
|
|
591
591
|
};
|
|
592
592
|
/**
|
|
593
593
|
* The public service that exposes the current version of the Angular Toolbox library.
|
|
@@ -2540,7 +2540,7 @@ const QUESTION_MARK = "?";
|
|
|
2540
2540
|
* @private
|
|
2541
2541
|
* The reference to the `NAME` `TokenType`.
|
|
2542
2542
|
*/
|
|
2543
|
-
const NAME = "NAME";
|
|
2543
|
+
const NAME$1 = "NAME";
|
|
2544
2544
|
/**
|
|
2545
2545
|
* @private
|
|
2546
2546
|
* The reference to the `PATTERN` `TokenType`.
|
|
@@ -2977,7 +2977,7 @@ const lexer = (str) => {
|
|
|
2977
2977
|
if (!name) {
|
|
2978
2978
|
throw new TypeError(`Missing parameter name at ${i}`);
|
|
2979
2979
|
}
|
|
2980
|
-
tokens.push({ type: NAME, index: i, value: name });
|
|
2980
|
+
tokens.push({ type: NAME$1, index: i, value: name });
|
|
2981
2981
|
continue;
|
|
2982
2982
|
}
|
|
2983
2983
|
if (value === LEFT_PARENTHESIS) {
|
|
@@ -3055,7 +3055,7 @@ const stringToTokenData = (str, options = {}) => {
|
|
|
3055
3055
|
const path = it.text();
|
|
3056
3056
|
if (path)
|
|
3057
3057
|
tokens.push(encodePath(path));
|
|
3058
|
-
const name = it.tryConsume(NAME);
|
|
3058
|
+
const name = it.tryConsume(NAME$1);
|
|
3059
3059
|
const pattern = it.tryConsume(PATTERN);
|
|
3060
3060
|
if (name || pattern) {
|
|
3061
3061
|
tokens.push({
|
|
@@ -3081,7 +3081,7 @@ const stringToTokenData = (str, options = {}) => {
|
|
|
3081
3081
|
const open = it.tryConsume(LEFT_CURLY_BRACE);
|
|
3082
3082
|
if (open) {
|
|
3083
3083
|
const prefix = it.text();
|
|
3084
|
-
const name = it.tryConsume(NAME);
|
|
3084
|
+
const name = it.tryConsume(NAME$1);
|
|
3085
3085
|
const pattern = it.tryConsume(PATTERN);
|
|
3086
3086
|
const suffix = it.text();
|
|
3087
3087
|
const separator = it.tryConsume(SEMI_COLON) ? it.text() : prefix + suffix;
|
|
@@ -8090,6 +8090,286 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
8090
8090
|
type: Input
|
|
8091
8091
|
}] } });
|
|
8092
8092
|
|
|
8093
|
+
/**
|
|
8094
|
+
* @license
|
|
8095
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8096
|
+
*
|
|
8097
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8098
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8099
|
+
*/
|
|
8100
|
+
/**
|
|
8101
|
+
* Defines the possible values used to assign properties of type of `DialogBackdrop`.
|
|
8102
|
+
*/
|
|
8103
|
+
var DialogBackdropType;
|
|
8104
|
+
(function (DialogBackdropType) {
|
|
8105
|
+
/**
|
|
8106
|
+
* Indicates that the dialog element is of type of "static".
|
|
8107
|
+
*/
|
|
8108
|
+
DialogBackdropType["STATIC"] = "static";
|
|
8109
|
+
/**
|
|
8110
|
+
* Indicates that the dialog element is of type of "modal".
|
|
8111
|
+
*/
|
|
8112
|
+
DialogBackdropType["MODAL"] = "modal";
|
|
8113
|
+
})(DialogBackdropType || (DialogBackdropType = {}));
|
|
8114
|
+
;
|
|
8115
|
+
|
|
8116
|
+
/**
|
|
8117
|
+
* @license
|
|
8118
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8119
|
+
*
|
|
8120
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8121
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8122
|
+
*/
|
|
8123
|
+
|
|
8124
|
+
/**
|
|
8125
|
+
* @license
|
|
8126
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8127
|
+
*
|
|
8128
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8129
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8130
|
+
*/
|
|
8131
|
+
|
|
8132
|
+
/**
|
|
8133
|
+
* @license
|
|
8134
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8135
|
+
*
|
|
8136
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8137
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8138
|
+
*/
|
|
8139
|
+
/**
|
|
8140
|
+
* Event that indicates the state changes of components managed by the `DialogService` service singleton.
|
|
8141
|
+
*/
|
|
8142
|
+
class DialogOutletEvent {
|
|
8143
|
+
/**
|
|
8144
|
+
* The type of event dispatched each time the dialog element is displayed.
|
|
8145
|
+
*/
|
|
8146
|
+
static { this.SHOW = "show"; }
|
|
8147
|
+
/**
|
|
8148
|
+
* The type of event dispatched each time the dialog element is removed.
|
|
8149
|
+
*/
|
|
8150
|
+
static { this.HIDE = "hide"; }
|
|
8151
|
+
/**
|
|
8152
|
+
* @private
|
|
8153
|
+
*
|
|
8154
|
+
* Creates a new `DialogOutletEvent` instance.
|
|
8155
|
+
*
|
|
8156
|
+
* @param state The state of the dialog element.
|
|
8157
|
+
* @param config The dialog element config associated with this event.
|
|
8158
|
+
*/
|
|
8159
|
+
constructor(state, config = null) {
|
|
8160
|
+
this.state = state;
|
|
8161
|
+
this.config = config;
|
|
8162
|
+
}
|
|
8163
|
+
}
|
|
8164
|
+
|
|
8165
|
+
/**
|
|
8166
|
+
* @license
|
|
8167
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8168
|
+
*
|
|
8169
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8170
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8171
|
+
*/
|
|
8172
|
+
|
|
8173
|
+
/**
|
|
8174
|
+
* @license
|
|
8175
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8176
|
+
*
|
|
8177
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8178
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8179
|
+
*/
|
|
8180
|
+
/**
|
|
8181
|
+
* @private
|
|
8182
|
+
*/
|
|
8183
|
+
const DEFAULT_CONFIG = {
|
|
8184
|
+
backdrop: DialogBackdropType.MODAL
|
|
8185
|
+
};
|
|
8186
|
+
|
|
8187
|
+
/**
|
|
8188
|
+
* @license
|
|
8189
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8190
|
+
*
|
|
8191
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8192
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8193
|
+
*/
|
|
8194
|
+
/**
|
|
8195
|
+
* @private
|
|
8196
|
+
*/
|
|
8197
|
+
const NAME = "DialogServiceError";
|
|
8198
|
+
/**
|
|
8199
|
+
* The `DialogServiceError` class represents errors thrown by the ATX framework
|
|
8200
|
+
* when a dialog error occurs.
|
|
8201
|
+
*/
|
|
8202
|
+
class DialogServiceError extends Error {
|
|
8203
|
+
/**
|
|
8204
|
+
* Creates a new `DialogServiceError` instance.
|
|
8205
|
+
*
|
|
8206
|
+
* @param message The `message` data property is a human-readable description of this `DialogServiceError` instance.
|
|
8207
|
+
*/
|
|
8208
|
+
constructor(message) {
|
|
8209
|
+
super(message);
|
|
8210
|
+
this.name = NAME;
|
|
8211
|
+
}
|
|
8212
|
+
}
|
|
8213
|
+
|
|
8214
|
+
/**
|
|
8215
|
+
* @license
|
|
8216
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8217
|
+
*
|
|
8218
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8219
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8220
|
+
*/
|
|
8221
|
+
/**
|
|
8222
|
+
* The `DialogService` class manages injection of customs component into the
|
|
8223
|
+
* HTML dialog element created by the ATX framework.
|
|
8224
|
+
*/
|
|
8225
|
+
class DialogService {
|
|
8226
|
+
constructor() {
|
|
8227
|
+
/**
|
|
8228
|
+
* Dispatches an event that indicates the state of the dialog element when a custom
|
|
8229
|
+
* component is added to, or remove from it.
|
|
8230
|
+
*/
|
|
8231
|
+
this.dialogStateChange = new EventEmitter();
|
|
8232
|
+
}
|
|
8233
|
+
/**
|
|
8234
|
+
* Creates an instance of the `compRef` class, adds this instance to the HTML dialog element
|
|
8235
|
+
* and displays the dialog element in front of all other components in the application.
|
|
8236
|
+
*
|
|
8237
|
+
* @param compRef The class that represents the component to display as a popup element.
|
|
8238
|
+
* @param config The dialog element config associated with the new component instance to display.
|
|
8239
|
+
*
|
|
8240
|
+
* @returns The new `ComponentRef` which contains the component instance and the host view.
|
|
8241
|
+
*/
|
|
8242
|
+
show(compRef, config = null) {
|
|
8243
|
+
if (!this.viewContainerRef)
|
|
8244
|
+
throw new DialogServiceError("DialogOutlet missing: you must add the <atx-dialog-outlet/> tag to your application before using dialog services.");
|
|
8245
|
+
const component = this.viewContainerRef.createComponent(compRef);
|
|
8246
|
+
const event = new DialogOutletEvent(DialogOutletEvent.SHOW, config);
|
|
8247
|
+
this.dialogStateChange.emit(event);
|
|
8248
|
+
return component;
|
|
8249
|
+
}
|
|
8250
|
+
/**
|
|
8251
|
+
* Indicates to the ATX framework to remove component instances previously created with
|
|
8252
|
+
* the `show()` method.
|
|
8253
|
+
*/
|
|
8254
|
+
hide() {
|
|
8255
|
+
const event = new DialogOutletEvent(DialogOutletEvent.HIDE);
|
|
8256
|
+
this.dialogStateChange.emit(event);
|
|
8257
|
+
}
|
|
8258
|
+
/**
|
|
8259
|
+
* @private
|
|
8260
|
+
*/
|
|
8261
|
+
__init__(viewContainerRef) {
|
|
8262
|
+
if (this.viewContainerRef !== undefined)
|
|
8263
|
+
return false;
|
|
8264
|
+
this.viewContainerRef = viewContainerRef;
|
|
8265
|
+
return true;
|
|
8266
|
+
}
|
|
8267
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8268
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogService, providedIn: "root" }); }
|
|
8269
|
+
}
|
|
8270
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogService, decorators: [{
|
|
8271
|
+
type: Injectable,
|
|
8272
|
+
args: [{
|
|
8273
|
+
providedIn: "root"
|
|
8274
|
+
}]
|
|
8275
|
+
}] });
|
|
8276
|
+
|
|
8277
|
+
/**
|
|
8278
|
+
* @license
|
|
8279
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8280
|
+
*
|
|
8281
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8282
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8283
|
+
*/
|
|
8284
|
+
/**
|
|
8285
|
+
* Acts as a placeholder that the ATX framework dynamically fills based on the component specified
|
|
8286
|
+
* by the dialog service `show()` method.
|
|
8287
|
+
*/
|
|
8288
|
+
class DialogOutlet {
|
|
8289
|
+
/**
|
|
8290
|
+
* @private
|
|
8291
|
+
*/
|
|
8292
|
+
constructor(dialogSvc) {
|
|
8293
|
+
this.dialogSvc = dialogSvc;
|
|
8294
|
+
}
|
|
8295
|
+
/**
|
|
8296
|
+
* @private
|
|
8297
|
+
*/
|
|
8298
|
+
ngOnInit() {
|
|
8299
|
+
this.dialogSvc.__init__(this.renderer);
|
|
8300
|
+
this.dialogSvc.dialogStateChange.subscribe((event) => this.stateChange(event));
|
|
8301
|
+
}
|
|
8302
|
+
/**
|
|
8303
|
+
* @private
|
|
8304
|
+
*/
|
|
8305
|
+
mouseupHandler(event) {
|
|
8306
|
+
if (this._config.backdrop !== DialogBackdropType.MODAL)
|
|
8307
|
+
return;
|
|
8308
|
+
const rect = this._dialog.nativeElement.getBoundingClientRect();
|
|
8309
|
+
const xPos = event.clientX;
|
|
8310
|
+
const yPos = event.clientY;
|
|
8311
|
+
const top = rect.top;
|
|
8312
|
+
const left = rect.left;
|
|
8313
|
+
const isDialog = (top <= yPos && yPos <= top + rect.height && left <= xPos && xPos <= left + rect.width);
|
|
8314
|
+
if (!isDialog)
|
|
8315
|
+
this.hide();
|
|
8316
|
+
}
|
|
8317
|
+
/**
|
|
8318
|
+
* @private
|
|
8319
|
+
*/
|
|
8320
|
+
onClose(event) {
|
|
8321
|
+
this.renderer.clear();
|
|
8322
|
+
}
|
|
8323
|
+
/**
|
|
8324
|
+
* @private
|
|
8325
|
+
*/
|
|
8326
|
+
stateChange(event) {
|
|
8327
|
+
const state = event.state;
|
|
8328
|
+
if (state === DialogOutletEvent.SHOW)
|
|
8329
|
+
return this.show(event);
|
|
8330
|
+
if (state === DialogOutletEvent.HIDE)
|
|
8331
|
+
this.hide();
|
|
8332
|
+
}
|
|
8333
|
+
/**
|
|
8334
|
+
* @private
|
|
8335
|
+
*/
|
|
8336
|
+
show(event) {
|
|
8337
|
+
this._config = event.config || DEFAULT_CONFIG;
|
|
8338
|
+
this._dialog.nativeElement.showModal();
|
|
8339
|
+
}
|
|
8340
|
+
/**
|
|
8341
|
+
* @private
|
|
8342
|
+
*/
|
|
8343
|
+
hide() {
|
|
8344
|
+
this._dialog.nativeElement.close();
|
|
8345
|
+
}
|
|
8346
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogOutlet, deps: [{ token: DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8347
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: DialogOutlet, isStandalone: true, selector: "atx-dialog-outlet", viewQueries: [{ propertyName: "_dialog", first: true, predicate: ["dialog"], descendants: true }, { propertyName: "renderer", first: true, predicate: ["renderer"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: '<dialog #dialog (mouseup)="mouseupHandler($event)" (close)="onClose($event)"><ng-container #renderer></ng-container></dialog>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8348
|
+
}
|
|
8349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: DialogOutlet, decorators: [{
|
|
8350
|
+
type: Component,
|
|
8351
|
+
args: [{
|
|
8352
|
+
selector: 'atx-dialog-outlet',
|
|
8353
|
+
standalone: true,
|
|
8354
|
+
template: '<dialog #dialog (mouseup)="mouseupHandler($event)" (close)="onClose($event)"><ng-container #renderer></ng-container></dialog>',
|
|
8355
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8356
|
+
}]
|
|
8357
|
+
}], ctorParameters: () => [{ type: DialogService }], propDecorators: { _dialog: [{
|
|
8358
|
+
type: ViewChild,
|
|
8359
|
+
args: ["dialog"]
|
|
8360
|
+
}], renderer: [{
|
|
8361
|
+
type: ViewChild,
|
|
8362
|
+
args: ["renderer", { static: true, read: ViewContainerRef }]
|
|
8363
|
+
}] } });
|
|
8364
|
+
|
|
8365
|
+
/**
|
|
8366
|
+
* @license
|
|
8367
|
+
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
8368
|
+
*
|
|
8369
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
8370
|
+
* found in the LICENSE file at https://pascalechemann.com/angular-toolbox/resources/license
|
|
8371
|
+
*/
|
|
8372
|
+
|
|
8093
8373
|
/**
|
|
8094
8374
|
* @license
|
|
8095
8375
|
* Copyright Pascal ECHEMANN. All Rights Reserved.
|
|
@@ -9124,8 +9404,6 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9124
9404
|
regionValidator += r;
|
|
9125
9405
|
this.subscribeSvc.register(this, container.resizeStart.subscribe(container => this.resizeEnter(container)));
|
|
9126
9406
|
this.boundsManager.initBounds(container);
|
|
9127
|
-
if (r === LayoutRegion.NORTH || r === LayoutRegion.SOUTH)
|
|
9128
|
-
return;
|
|
9129
9407
|
this.containerList.push(container);
|
|
9130
9408
|
});
|
|
9131
9409
|
}
|
|
@@ -9185,6 +9463,17 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9185
9463
|
this.checkLytContainer();
|
|
9186
9464
|
this.render(this.lytContainerElm.offsetWidth);
|
|
9187
9465
|
}
|
|
9466
|
+
/**
|
|
9467
|
+
* Returns the `BorderLayoutContainer` component associated with the specified region.
|
|
9468
|
+
*
|
|
9469
|
+
* @param region The region for which to retreive the container.
|
|
9470
|
+
*
|
|
9471
|
+
* @returns The `BorderLayoutContainer` component associated with the specified region,
|
|
9472
|
+
* or `undefined` whether no container has been found.
|
|
9473
|
+
*/
|
|
9474
|
+
getBorderLayoutContainer(region) {
|
|
9475
|
+
return this.containerList.find((c) => c.constraints.region === region);
|
|
9476
|
+
}
|
|
9188
9477
|
/**
|
|
9189
9478
|
* Resizes the specified region of the associated container.
|
|
9190
9479
|
*
|
|
@@ -9196,9 +9485,7 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9196
9485
|
resizeRegion(region, size) {
|
|
9197
9486
|
if (region === LayoutRegion.CENTER)
|
|
9198
9487
|
return false;
|
|
9199
|
-
const container = this.
|
|
9200
|
-
return c.constraints.region === region;
|
|
9201
|
-
});
|
|
9488
|
+
const container = this.getBorderLayoutContainer(region);
|
|
9202
9489
|
if (!container)
|
|
9203
9490
|
return false;
|
|
9204
9491
|
container.setSize(size);
|
|
@@ -9272,6 +9559,8 @@ class BorderLayoutRenderer extends IdentifiableComponent {
|
|
|
9272
9559
|
const cont = cList[cursor];
|
|
9273
9560
|
const r = cont.constraints.region;
|
|
9274
9561
|
cursor--;
|
|
9562
|
+
if (r === LayoutRegion.NORTH || r === LayoutRegion.SOUTH)
|
|
9563
|
+
continue;
|
|
9275
9564
|
if (r === LayoutRegion.WEST) {
|
|
9276
9565
|
cont.setTopPos(top);
|
|
9277
9566
|
cont.setRightPos(width - left);
|
|
@@ -9413,6 +9702,17 @@ class BorderLayout extends IdentifiableComponent {
|
|
|
9413
9702
|
setConstraints(constraints) {
|
|
9414
9703
|
this.renderer.setConstraints(constraints);
|
|
9415
9704
|
}
|
|
9705
|
+
/**
|
|
9706
|
+
* Returns the `BorderLayoutContainer` component associated with the specified region.
|
|
9707
|
+
*
|
|
9708
|
+
* @param region The region for which to retreive the container.
|
|
9709
|
+
*
|
|
9710
|
+
* @returns The `BorderLayoutContainer` component associated with the specified region,
|
|
9711
|
+
* or `undefined` whether no container has been found.
|
|
9712
|
+
*/
|
|
9713
|
+
getBorderLayoutContainer(region) {
|
|
9714
|
+
return this.renderer.getBorderLayoutContainer(region);
|
|
9715
|
+
}
|
|
9416
9716
|
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
9717
|
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
9718
|
}
|
|
@@ -9741,5 +10041,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
9741
10041
|
* Generated bundle index. Do not edit.
|
|
9742
10042
|
*/
|
|
9743
10043
|
|
|
9744
|
-
export { APP_PRIDGE_REF, ATX_LOGGER_CONFIG, AbstractLogger, AbstractSubscriptionManager, AbstractVersionManager, AbstractWindowService, AnchorLinklDirective, AngularToolboxLogoComponent, AngularToolboxModule, AngularToolboxVersionService, AppBridgeError, AppBridgeService, ArrayList, ArrayListEvent, ArrayListEventType, AtxHttpMockConsoleService, AtxMockDocumentation, AtxMonitoringConsoleComponent, BIGINT, BOOLEAN, BUTTON_ROLE, BorderLayout, BorderLayoutContainer, ButtonRoleDirective, CSS_PROP, ConsoleLogConnector, ContentRendererDirective, DARK_MODE_CONFIG, DEFAULT_LOG_CONNECTOR, DarkModeService, DefaultLogConnector, DropdownComponent, DropdownEvent, DropdownEventType, EMPTY_STRING, FEATURES, FUNCTION, FetchClient, FetchClientBuilder, FetchClientResponseType, HTTP_MOCKING_FRAMEWORK_CONFIG, HTTP_MOCK_MAX_DELAY, HTTP_MOCK_SERVICE, HtmlLogConnector, HttpHeadersMockBuilder, HttpMock, HttpMockLoggingService, HttpMockProductionPolicy, HttpMockService, HttpMockServiceError, HttpResponseMockBuilder, HttpStatusText, HttpStatusTextFinder, IdentifiableComponent, IntegrityError, LINK_ROLE, LOG_CONFIG_STRING, LOG_ERROR_STRING, LOG_INFO_STRING, LOG_WARNING_STRING, LayoutDragEvent, LayoutDragEventType, LayoutRegion, LayoutRegionError, LogBuilder, LogImpl, LogLevel, LogUtil, LoggerService, NUMBER, NavigateToUrlDirective, OBJECT, STORAGE_KEY, STRING, SYMBOL, SafeHtmlPipe, ScrollService, SubscriptionError, SubscriptionService, UNDEFINED, Uuid, VERSION_CONFIG, VersionService, VersionUtil, WindowFeatureState, WindowService, WindowTarget, httpHeadersMock, httpMockFactory, httpResponseMock };
|
|
10044
|
+
export { APP_PRIDGE_REF, ATX_LOGGER_CONFIG, AbstractLogger, AbstractSubscriptionManager, AbstractVersionManager, AbstractWindowService, AnchorLinklDirective, AngularToolboxLogoComponent, AngularToolboxModule, AngularToolboxVersionService, AppBridgeError, AppBridgeService, ArrayList, ArrayListEvent, ArrayListEventType, AtxHttpMockConsoleService, AtxMockDocumentation, AtxMonitoringConsoleComponent, BIGINT, BOOLEAN, BUTTON_ROLE, BorderLayout, BorderLayoutContainer, ButtonRoleDirective, CSS_PROP, ConsoleLogConnector, ContentRendererDirective, DARK_MODE_CONFIG, DEFAULT_LOG_CONNECTOR, DarkModeService, DefaultLogConnector, DialogBackdropType, DialogOutlet, DialogOutletEvent, DialogService, DialogServiceError, DropdownComponent, DropdownEvent, DropdownEventType, EMPTY_STRING, FEATURES, FUNCTION, FetchClient, FetchClientBuilder, FetchClientResponseType, HTTP_MOCKING_FRAMEWORK_CONFIG, HTTP_MOCK_MAX_DELAY, HTTP_MOCK_SERVICE, HtmlLogConnector, HttpHeadersMockBuilder, HttpMock, HttpMockLoggingService, HttpMockProductionPolicy, HttpMockService, HttpMockServiceError, HttpResponseMockBuilder, HttpStatusText, HttpStatusTextFinder, IdentifiableComponent, IntegrityError, LINK_ROLE, LOG_CONFIG_STRING, LOG_ERROR_STRING, LOG_INFO_STRING, LOG_WARNING_STRING, LayoutDragEvent, LayoutDragEventType, LayoutRegion, LayoutRegionError, LogBuilder, LogImpl, LogLevel, LogUtil, LoggerService, NUMBER, NavigateToUrlDirective, OBJECT, STORAGE_KEY, STRING, SYMBOL, SafeHtmlPipe, ScrollService, SubscriptionError, SubscriptionService, UNDEFINED, Uuid, VERSION_CONFIG, VersionService, VersionUtil, WindowFeatureState, WindowService, WindowTarget, httpHeadersMock, httpMockFactory, httpResponseMock };
|
|
9745
10045
|
//# sourceMappingURL=angular-toolbox.mjs.map
|