angular-base-lib 17.2.0 → 17.2.2
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/esm2022/lib/auth/guards/logged-in.guard.mjs +1 -1
- package/esm2022/lib/auth/guards/logged-out.guard.mjs +1 -1
- package/esm2022/lib/base/base-control-value-accessor.mjs +42 -0
- package/esm2022/lib/base/index.mjs +2 -0
- package/esm2022/lib/dao/converted-http-base-dao.mjs +1 -1
- package/esm2022/lib/dao/converted-promise-http-base-dao.mjs +1 -1
- package/esm2022/lib/dao/internal/internal-http-base-dao.mjs +1 -1
- package/esm2022/lib/forms/form-util.mjs +1 -1
- package/esm2022/lib/index.mjs +2 -1
- package/esm2022/lib/model-component/base-model-detail.component.mjs +1 -1
- package/esm2022/lib/model-component/base-model-list.component.mjs +1 -1
- package/esm2022/lib/model-component/base-model.component.mjs +1 -1
- package/esm2022/lib/navigation/back-button.directive.mjs +3 -3
- package/esm2022/lib/navigation/navigation.service.mjs +4 -4
- package/esm2022/lib/util/prepare-optional-string.mjs +1 -1
- package/esm2022/lib/util/remove-nil-values-recursively.mjs +1 -1
- package/fesm2022/angular-base-lib.mjs +48 -8
- package/fesm2022/angular-base-lib.mjs.map +1 -1
- package/lib/base/base-control-value-accessor.d.ts +18 -0
- package/lib/base/index.d.ts +1 -0
- package/lib/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -11,4 +11,4 @@ export const loggedInGuardFn = () => {
|
|
|
11
11
|
return router.createUrlTree(['/auth/login']);
|
|
12
12
|
}));
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VkLWluLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWJhc2Uvc3JjL2xpYi9hdXRoL2d1YXJkcy9sb2dnZWQtaW4uZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQWlCLE1BQU0sRUFBVyxNQUFNLGlCQUFpQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFrQixHQUFrQyxFQUFFO0lBQ2hGLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixPQUFPLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUNqRCxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNaLElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkFjdGl2YXRlRm4sIFJvdXRlciwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYXNlQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9iYXNlLWF1dGguc2VydmljZSc7XG5leHBvcnQgY29uc3QgbG9nZ2VkSW5HdWFyZEZuOiBDYW5BY3RpdmF0ZUZuID0gKCk6IE9ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+ID0+IHtcbiAgY29uc3Qgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHJldHVybiBpbmplY3QoQmFzZUF1dGhTZXJ2aWNlKS5yZWFkeUF1dGhTdGF0ZSQucGlwZShcbiAgICBtYXAoKHN0YXRlKSA9PiB7XG4gICAgICBpZiAoc3RhdGUubG9naW5TdGF0ZSA9PT0gJ2xvZ2dlZC1pbicpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy9hdXRoL2xvZ2luJ10pO1xuICAgIH0pLFxuICApO1xufTtcbiJdfQ==
|
|
@@ -11,4 +11,4 @@ export const loggedOutGuardFn = () => {
|
|
|
11
11
|
return router.createUrlTree(['/']);
|
|
12
12
|
}));
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VkLW91dC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1iYXNlL3NyYy9saWIvYXV0aC9ndWFyZHMvbG9nZ2VkLW91dC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBaUIsTUFBTSxFQUFXLE1BQU0saUJBQWlCLENBQUM7QUFFakUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV2RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBa0IsR0FBa0MsRUFBRTtJQUNqRixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUIsT0FBTyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUNsRCxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNaLElBQUksS0FBSyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGVGbiwgUm91dGVyLCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJhc2VBdXRoU2VydmljZSB9IGZyb20gJy4uL2Jhc2UtYXV0aC5zZXJ2aWNlJztcblxuZXhwb3J0IGNvbnN0IGxvZ2dlZE91dEd1YXJkRm46IENhbkFjdGl2YXRlRm4gPSAoKTogT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT4gPT4ge1xuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcmV0dXJuIGluamVjdChCYXNlQXV0aFNlcnZpY2UpLnJlYWR5TG9naW5TdGF0ZSQucGlwZShcbiAgICBtYXAoKHN0YXRlKSA9PiB7XG4gICAgICBpZiAoc3RhdGUgIT09ICdsb2dnZWQtaW4nKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcm91dGVyLmNyZWF0ZVVybFRyZWUoWycvJ10pO1xuICAgIH0pLFxuICApO1xufTtcbiJdfQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Directive, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class BaseControlValueAccessor {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.valueChanged = new EventEmitter();
|
|
6
|
+
this.onChange = null;
|
|
7
|
+
this.onTouched = null;
|
|
8
|
+
}
|
|
9
|
+
get value() {
|
|
10
|
+
return this._value;
|
|
11
|
+
}
|
|
12
|
+
set value(value) {
|
|
13
|
+
this.markAsTouched();
|
|
14
|
+
this._value = value;
|
|
15
|
+
this.onChange?.(this._value);
|
|
16
|
+
this.valueChanged.emit(this._value);
|
|
17
|
+
}
|
|
18
|
+
writeValue(value) {
|
|
19
|
+
this.value = value;
|
|
20
|
+
}
|
|
21
|
+
registerOnChange(onChange) {
|
|
22
|
+
this.onChange = onChange;
|
|
23
|
+
}
|
|
24
|
+
registerOnTouched(onTouched) {
|
|
25
|
+
this.onTouched = onTouched;
|
|
26
|
+
}
|
|
27
|
+
markAsTouched() {
|
|
28
|
+
if (this.onTouched) {
|
|
29
|
+
this.onTouched();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BaseControlValueAccessor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
33
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BaseControlValueAccessor, inputs: { value: "value" }, outputs: { valueChanged: "valueChanged" }, ngImport: i0 }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BaseControlValueAccessor, decorators: [{
|
|
36
|
+
type: Directive
|
|
37
|
+
}], propDecorators: { valueChanged: [{
|
|
38
|
+
type: Output
|
|
39
|
+
}], value: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb250cm9sLXZhbHVlLWFjY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWJhc2Uvc3JjL2xpYi9iYXNlL2Jhc2UtY29udHJvbC12YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUl2RSxNQUFNLE9BQWdCLHdCQUF3QjtJQUQ5QztRQUVZLGlCQUFZLEdBQW9CLElBQUksWUFBWSxFQUFLLENBQUM7UUFFaEUsYUFBUSxHQUFrQyxJQUFJLENBQUM7UUFDL0MsY0FBUyxHQUF3QixJQUFJLENBQUM7S0FnQ3ZDO0lBNUJDLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBYSxLQUFLLENBQUMsS0FBUTtRQUN6QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFRO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxRQUFnQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsU0FBdUI7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7OEdBbkNtQix3QkFBd0I7a0dBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEN0MsU0FBUzs4QkFFRSxZQUFZO3NCQUFyQixNQUFNO2dCQVdNLEtBQUs7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWx1ZUNoYW5nZUNhbGxiYWNrIH0gZnJvbSAnYW5ndWxhci1iYXNlJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbnRyb2xWYWx1ZUFjY2Vzc29yPFQgPSBzdHJpbmc+IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8VD4gPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgb25DaGFuZ2U6IFZhbHVlQ2hhbmdlQ2FsbGJhY2s8VD4gfCBudWxsID0gbnVsbDtcbiAgb25Ub3VjaGVkOiBWb2lkRnVuY3Rpb24gfCBudWxsID0gbnVsbDtcblxuICBwcm90ZWN0ZWQgX3ZhbHVlITogVDtcblxuICBnZXQgdmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgQElucHV0KCkgc2V0IHZhbHVlKHZhbHVlOiBUKSB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLm9uQ2hhbmdlPy4odGhpcy5fdmFsdWUpO1xuICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQodGhpcy5fdmFsdWUpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2Uob25DaGFuZ2U6IFZhbHVlQ2hhbmdlQ2FsbGJhY2s8VD4pOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gb25DaGFuZ2U7XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChvblRvdWNoZWQ6IFZvaWRGdW5jdGlvbik6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gb25Ub3VjaGVkO1xuICB9XG5cbiAgbWFya0FzVG91Y2hlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { BaseControlValueAccessor } from './base-control-value-accessor';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYmFzZS9zcmMvbGliL2Jhc2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBCYXNlQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL2Jhc2UtY29udHJvbC12YWx1ZS1hY2Nlc3Nvcic7XG4iXX0=
|
|
@@ -34,4 +34,4 @@ export class ConvertedHttpBaseDao extends InternalHttpBaseDao {
|
|
|
34
34
|
return source$.pipe(map((element) => this.converter.fromJson(element)));
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVkLWh0dHAtYmFzZS1kYW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYmFzZS9zcmMvbGliL2Rhby9jb252ZXJ0ZWQtaHR0cC1iYXNlLWRhby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBR3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBR3hFLE1BQU0sT0FBZ0Isb0JBQTZCLFNBQVEsbUJBQXVCO0lBRWhGLFlBQXNCLFFBQWdCLEVBQUUsU0FBNEIsRUFBRSxVQUE4QixFQUFFO1FBQ3BHLEtBQUssQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksQ0FBQyxnQkFBb0MsRUFBRTtRQUN6QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBUyxFQUFFLGdCQUFvQyxFQUFFO1FBQ3RELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBUyxFQUFFLEtBQWtCLEVBQUUsZ0JBQW9DLEVBQUU7UUFDMUUsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBUyxFQUFFLGdCQUFvQyxFQUFFO1FBQ3RELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxJQUFJLENBQUMsRUFBUyxFQUFFLGdCQUFvQyxFQUFFO1FBQ3BELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFTyxpQ0FBaUMsQ0FBQyxPQUF5QjtRQUNqRSxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDbEIsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBRUQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU8seUJBQXlCLENBQUMsT0FBdUI7UUFDdkQsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSHR0cEJhc2VEYW9PcHRpb25zIH0gZnJvbSAnLi9odHRwLWJhc2UtZGFvLW9wdGlvbnMnO1xuaW1wb3J0IHsgRGFvSWQgfSBmcm9tICcuL2Rhby1pZCc7XG5pbXBvcnQgeyBJbnRlcm5hbEh0dHBCYXNlRGFvIH0gZnJvbSAnLi9pbnRlcm5hbC9pbnRlcm5hbC1odHRwLWJhc2UtZGFvJztcbmltcG9ydCB7IENvbnZlcnRlciB9IGZyb20gJy4vY29udmVydGVyJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbnZlcnRlZEh0dHBCYXNlRGFvPFRJLCBUTT4gZXh0ZW5kcyBJbnRlcm5hbEh0dHBCYXNlRGFvPFRJPiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBjb252ZXJ0ZXI6IENvbnZlcnRlcjxUSSwgVE0+O1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Iocm91dGVVcmw6IHN0cmluZywgY29udmVydGVyOiBDb252ZXJ0ZXI8VEksIFRNPiwgb3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihyb3V0ZVVybCwgb3B0aW9ucyk7XG4gICAgdGhpcy5jb252ZXJ0ZXIgPSBjb252ZXJ0ZXI7XG4gIH1cblxuICBsaXN0KGN1c3RvbU9wdGlvbnM6IEh0dHBCYXNlRGFvT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxUTVtdPiB7XG4gICAgcmV0dXJuIHRoaXMubGlzdEludGVybmFsKGN1c3RvbU9wdGlvbnMpLnBpcGUodGhpcy5tYXBTZXJ2ZXJJbnRlcmZhY2VMaXN0VG9Nb2RlbExpc3QpO1xuICB9XG5cbiAgY3JlYXRlKGVudHJ5OiBUTSwgY3VzdG9tT3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPFRNPiB7XG4gICAgY29uc3QgY3JlYXRlRGF0YSA9IHRoaXMuY29udmVydGVyLnRvSnNvbihlbnRyeSk7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlSW50ZXJuYWwoY3JlYXRlRGF0YSwgY3VzdG9tT3B0aW9ucykucGlwZSh0aGlzLm1hcFNlcnZlckludGVyZmFjZVRvTW9kZWwpO1xuICB9XG5cbiAgdXBkYXRlKGlkOiBEYW9JZCwgZW50cnk6IFBhcnRpYWw8VE0+LCBjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8VE0+IHtcbiAgICBjb25zdCB1cGRhdGVEYXRhID0gdGhpcy5jb252ZXJ0ZXIudG9Kc29uKGVudHJ5KTtcbiAgICByZXR1cm4gdGhpcy51cGRhdGVJbnRlcm5hbChpZCwgdXBkYXRlRGF0YSwgY3VzdG9tT3B0aW9ucykucGlwZSh0aGlzLm1hcFNlcnZlckludGVyZmFjZVRvTW9kZWwpO1xuICB9XG5cbiAgZGVsZXRlKGlkOiBEYW9JZCwgY3VzdG9tT3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPFRNPiB7XG4gICAgcmV0dXJuIHRoaXMuZGVsZXRlSW50ZXJuYWwoaWQsIGN1c3RvbU9wdGlvbnMpLnBpcGUodGhpcy5tYXBTZXJ2ZXJJbnRlcmZhY2VUb01vZGVsKTtcbiAgfVxuXG4gIHJlYWQoaWQ6IERhb0lkLCBjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8VE0+IHtcbiAgICByZXR1cm4gdGhpcy5yZWFkSW50ZXJuYWwoaWQsIGN1c3RvbU9wdGlvbnMpLnBpcGUodGhpcy5tYXBTZXJ2ZXJJbnRlcmZhY2VUb01vZGVsKTtcbiAgfVxuXG4gIHByaXZhdGUgbWFwU2VydmVySW50ZXJmYWNlTGlzdFRvTW9kZWxMaXN0KHNvdXJjZSQ6IE9ic2VydmFibGU8VElbXT4pOiBPYnNlcnZhYmxlPFRNW10+IHtcbiAgICByZXR1cm4gc291cmNlJC5waXBlKFxuICAgICAgbWFwKChsaXN0KSA9PiB7XG4gICAgICAgIGlmICghbGlzdD8ubGVuZ3RoKSB7XG4gICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGxpc3QubWFwKChlbGVtKSA9PiB0aGlzLmNvbnZlcnRlci5mcm9tSnNvbihlbGVtKSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBTZXJ2ZXJJbnRlcmZhY2VUb01vZGVsKHNvdXJjZSQ6IE9ic2VydmFibGU8VEk+KTogT2JzZXJ2YWJsZTxUTT4ge1xuICAgIHJldHVybiBzb3VyY2UkLnBpcGUobWFwKChlbGVtZW50KSA9PiB0aGlzLmNvbnZlcnRlci5mcm9tSnNvbihlbGVtZW50KSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -34,4 +34,4 @@ export class ConvertedPromiseHttpBaseDao extends InternalHttpBaseDao {
|
|
|
34
34
|
return source$.pipe(map((element) => this.converter.fromJson(element)));
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVkLXByb21pc2UtaHR0cC1iYXNlLWRhby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1iYXNlL3NyYy9saWIvZGFvL2NvbnZlcnRlZC1wcm9taXNlLWh0dHAtYmFzZS1kYW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFHdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHeEUsTUFBTSxPQUFnQiwyQkFBb0MsU0FBUSxtQkFBdUI7SUFFdkYsWUFBc0IsUUFBZ0IsRUFBRSxTQUE0QixFQUFFLFVBQThCLEVBQUU7UUFDcEcsS0FBSyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxDQUFDLGdCQUFvQyxFQUFFO1FBQ3pDLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xILENBQUM7SUFFRCxNQUFNLENBQUMsS0FBUyxFQUFFLGdCQUFvQyxFQUFFO1FBQ3RELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELE9BQU8sY0FBYyxDQUNuQixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUMvRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUFTLEVBQUUsS0FBa0IsRUFBRSxnQkFBb0MsRUFBRTtRQUMxRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxPQUFPLGNBQWMsQ0FDbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ25HLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQVMsRUFBRSxnQkFBb0MsRUFBRTtRQUN0RCxPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUVELElBQUksQ0FBQyxFQUFTLEVBQUUsZ0JBQW9DLEVBQUU7UUFDcEQsT0FBTyxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlHLENBQUM7SUFFTyxpQ0FBaUMsQ0FBQyxPQUF5QjtRQUNqRSxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1gsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDbEIsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBRUQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU8seUJBQXlCLENBQUMsT0FBdUI7UUFDdkQsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh0dHBCYXNlRGFvT3B0aW9ucyB9IGZyb20gJy4vaHR0cC1iYXNlLWRhby1vcHRpb25zJztcbmltcG9ydCB7IERhb0lkIH0gZnJvbSAnLi9kYW8taWQnO1xuaW1wb3J0IHsgSW50ZXJuYWxIdHRwQmFzZURhbyB9IGZyb20gJy4vaW50ZXJuYWwvaW50ZXJuYWwtaHR0cC1iYXNlLWRhbyc7XG5pbXBvcnQgeyBDb252ZXJ0ZXIgfSBmcm9tICcuL2NvbnZlcnRlcic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb252ZXJ0ZWRQcm9taXNlSHR0cEJhc2VEYW88VEksIFRNPiBleHRlbmRzIEludGVybmFsSHR0cEJhc2VEYW88VEk+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbnZlcnRlcjogQ29udmVydGVyPFRJLCBUTT47XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihyb3V0ZVVybDogc3RyaW5nLCBjb252ZXJ0ZXI6IENvbnZlcnRlcjxUSSwgVE0+LCBvcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHJvdXRlVXJsLCBvcHRpb25zKTtcbiAgICB0aGlzLmNvbnZlcnRlciA9IGNvbnZlcnRlcjtcbiAgfVxuXG4gIGxpc3QoY3VzdG9tT3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zID0ge30pOiBQcm9taXNlPFRNW10+IHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5saXN0SW50ZXJuYWwoY3VzdG9tT3B0aW9ucykucGlwZSh0aGlzLm1hcFNlcnZlckludGVyZmFjZUxpc3RUb01vZGVsTGlzdC5iaW5kKHRoaXMpKSk7XG4gIH1cblxuICBjcmVhdGUoZW50cnk6IFRNLCBjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSk6IFByb21pc2U8VE0+IHtcbiAgICBjb25zdCBjcmVhdGVEYXRhID0gdGhpcy5jb252ZXJ0ZXIudG9Kc29uKGVudHJ5KTtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLmNyZWF0ZUludGVybmFsKGNyZWF0ZURhdGEsIGN1c3RvbU9wdGlvbnMpLnBpcGUodGhpcy5tYXBTZXJ2ZXJJbnRlcmZhY2VUb01vZGVsLmJpbmQodGhpcykpLFxuICAgICk7XG4gIH1cblxuICB1cGRhdGUoaWQ6IERhb0lkLCBlbnRyeTogUGFydGlhbDxUTT4sIGN1c3RvbU9wdGlvbnM6IEh0dHBCYXNlRGFvT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxUTT4ge1xuICAgIGNvbnN0IHVwZGF0ZURhdGEgPSB0aGlzLmNvbnZlcnRlci50b0pzb24oZW50cnkpO1xuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMudXBkYXRlSW50ZXJuYWwoaWQsIHVwZGF0ZURhdGEsIGN1c3RvbU9wdGlvbnMpLnBpcGUodGhpcy5tYXBTZXJ2ZXJJbnRlcmZhY2VUb01vZGVsLmJpbmQodGhpcykpLFxuICAgICk7XG4gIH1cblxuICBkZWxldGUoaWQ6IERhb0lkLCBjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSk6IFByb21pc2U8VE0+IHtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20odGhpcy5kZWxldGVJbnRlcm5hbChpZCwgY3VzdG9tT3B0aW9ucykucGlwZSh0aGlzLm1hcFNlcnZlckludGVyZmFjZVRvTW9kZWwuYmluZCh0aGlzKSkpO1xuICB9XG5cbiAgcmVhZChpZDogRGFvSWQsIGN1c3RvbU9wdGlvbnM6IEh0dHBCYXNlRGFvT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxUTT4ge1xuICAgIHJldHVybiBmaXJzdFZhbHVlRnJvbSh0aGlzLnJlYWRJbnRlcm5hbChpZCwgY3VzdG9tT3B0aW9ucykucGlwZSh0aGlzLm1hcFNlcnZlckludGVyZmFjZVRvTW9kZWwuYmluZCh0aGlzKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBTZXJ2ZXJJbnRlcmZhY2VMaXN0VG9Nb2RlbExpc3Qoc291cmNlJDogT2JzZXJ2YWJsZTxUSVtdPik6IE9ic2VydmFibGU8VE1bXT4ge1xuICAgIHJldHVybiBzb3VyY2UkLnBpcGUoXG4gICAgICBtYXAoKGxpc3QpID0+IHtcbiAgICAgICAgaWYgKCFsaXN0Py5sZW5ndGgpIHtcbiAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbGlzdC5tYXAoKGVsZW0pID0+IHRoaXMuY29udmVydGVyLmZyb21Kc29uKGVsZW0pKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIG1hcFNlcnZlckludGVyZmFjZVRvTW9kZWwoc291cmNlJDogT2JzZXJ2YWJsZTxUST4pOiBPYnNlcnZhYmxlPFRNPiB7XG4gICAgcmV0dXJuIHNvdXJjZSQucGlwZShtYXAoKGVsZW1lbnQpID0+IHRoaXMuY29udmVydGVyLmZyb21Kc29uKGVsZW1lbnQpKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -41,4 +41,4 @@ export class InternalHttpBaseDao {
|
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtaHR0cC1iYXNlLWRhby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1iYXNlL3NyYy9saWIvZGFvL2ludGVybmFsL2ludGVybmFsLWh0dHAtYmFzZS1kYW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGVBQWUsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQztBQUcvRSxNQUFNLE9BQWdCLG1CQUFtQjtJQUt2QyxZQUFzQixRQUFnQixFQUFFLFVBQThCLEVBQUU7UUFKckQsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUszQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ2IsR0FBRyxlQUFlO1lBQ2xCLEdBQUcsT0FBTztTQUNYLENBQUM7SUFDSixDQUFDO0lBRVMsWUFBWSxDQUFDLGdCQUFvQyxFQUFFO1FBQzNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRVMsY0FBYyxDQUFDLElBQVksRUFBRSxnQkFBb0MsRUFBRTtRQUMzRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDcEQsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVTLGNBQWMsQ0FBQyxFQUFTLEVBQUUsSUFBWSxFQUFFLGdCQUFvQyxFQUFFO1FBQ3RGLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFUyxjQUFjLENBQUMsRUFBUyxFQUFFLGdCQUFvQyxFQUFFO1FBQ3hFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBSyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVTLFlBQVksQ0FBQyxFQUFTLEVBQUUsZ0JBQW9DLEVBQUU7UUFDdEUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVPLGtCQUFrQixDQUFDLGFBQWlDO1FBQzFELE9BQU87WUFDTCxHQUFHLElBQUksQ0FBQyxPQUFPO1lBQ2YsR0FBRyxhQUFhO1NBQ2pCLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBERUZBVUxUX09QVElPTlMsIEh0dHBCYXNlRGFvT3B0aW9ucyB9IGZyb20gJy4uL2h0dHAtYmFzZS1kYW8tb3B0aW9ucyc7XG5pbXBvcnQgeyBEYW9JZCB9IGZyb20gJy4uL2Rhby1pZCc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBJbnRlcm5hbEh0dHBCYXNlRGFvPFRJPiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBodHRwID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVVcmw6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Iocm91dGVVcmw6IHN0cmluZywgb3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zID0ge30pIHtcbiAgICB0aGlzLnJvdXRlVXJsID0gcm91dGVVcmw7XG4gICAgdGhpcy5vcHRpb25zID0ge1xuICAgICAgLi4uREVGQVVMVF9PUFRJT05TLFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgbGlzdEludGVybmFsKGN1c3RvbU9wdGlvbnM6IEh0dHBCYXNlRGFvT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxUSVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8VElbXT4odGhpcy5yb3V0ZVVybCwgdGhpcy5tZXJnZUN1c3RvbU9wdGlvbnMoY3VzdG9tT3B0aW9ucykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUludGVybmFsKGRhdGE6IG9iamVjdCwgY3VzdG9tT3B0aW9uczogSHR0cEJhc2VEYW9PcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPFRJPiB7XG4gICAgaWYgKCFkYXRhKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VudHJ5IG11c3QgZXhpc3QgdG8gYmUgY3JlYXRlZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUST4odGhpcy5yb3V0ZVVybCwgZGF0YSwgdGhpcy5tZXJnZUN1c3RvbU9wdGlvbnMoY3VzdG9tT3B0aW9ucykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUludGVybmFsKGlkOiBEYW9JZCwgZGF0YTogb2JqZWN0LCBjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8VEk+IHtcbiAgICBpZiAoIWlkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VudHJ5IG11c3QgZXhpc3QgdG8gYmUgdXBkYXRlZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0PFRJPih0aGlzLnJvdXRlVXJsICsgJy8nICsgaWQsIGRhdGEsIHRoaXMubWVyZ2VDdXN0b21PcHRpb25zKGN1c3RvbU9wdGlvbnMpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBkZWxldGVJbnRlcm5hbChpZDogRGFvSWQsIGN1c3RvbU9wdGlvbnM6IEh0dHBCYXNlRGFvT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxUST4ge1xuICAgIGlmICghaWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRW50cnkgbXVzdCBleGlzdCB0byBiZSBkZWxldGVkJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPFRJPih0aGlzLnJvdXRlVXJsICsgJy8nICsgaWQsIHRoaXMubWVyZ2VDdXN0b21PcHRpb25zKGN1c3RvbU9wdGlvbnMpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkSW50ZXJuYWwoaWQ6IERhb0lkLCBjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8VEk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxUST4odGhpcy5yb3V0ZVVybCArICcvJyArIGlkLCB0aGlzLm1lcmdlQ3VzdG9tT3B0aW9ucyhjdXN0b21PcHRpb25zKSk7XG4gIH1cblxuICBwcml2YXRlIG1lcmdlQ3VzdG9tT3B0aW9ucyhjdXN0b21PcHRpb25zOiBIdHRwQmFzZURhb09wdGlvbnMpOiBIdHRwQmFzZURhb09wdGlvbnMge1xuICAgIHJldHVybiB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICAuLi5jdXN0b21PcHRpb25zXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -50,4 +50,4 @@ export class FormUtil {
|
|
|
50
50
|
return [object, changed];
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWJhc2Uvc3JjL2xpYi9mb3Jtcy9mb3JtLXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBbUIsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFcEYsTUFBTSxPQUFPLFFBQVE7SUFDbkIsTUFBTSxDQUFDLHdCQUF3QixDQUFDLFNBQW9CLEVBQUUsU0FBUyxHQUFHLElBQUk7UUFDcEUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBd0IsRUFBRSxFQUFFO1lBQ3JFLElBQUksU0FBUyxJQUFJLE9BQU8sWUFBWSxTQUFTLEVBQUUsQ0FBQztnQkFDOUMsUUFBUSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbEMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxXQUFnQixFQUFFLE9BQVksRUFBRSxPQUFZO1FBQ3BFLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFLENBQUM7WUFDN0IsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDLEdBQUcsUUFBUSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN4RixJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDL0IsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLDJCQUEyQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxPQUFZLEVBQUUsT0FBWTtRQUN4RCxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxNQUFNLEdBQVEsRUFBRSxDQUFDO1FBRXJCLElBQUksT0FBTyxPQUFPLEtBQUssT0FBTyxPQUFPLEVBQUUsQ0FBQztZQUN0QyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ2YsTUFBTSxHQUFHLE9BQU8sQ0FBQztRQUNuQixDQUFDO2FBQU0sSUFBSSxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1RSxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7b0JBQ3pDLFNBQVM7Z0JBQ1gsQ0FBQztnQkFFRCxvQkFBb0I7Z0JBQ3BCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLEdBQUcsUUFBUSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDdEcsSUFBSSxZQUFZLEVBQUUsQ0FBQztvQkFDakIsT0FBTyxHQUFHLElBQUksQ0FBQztvQkFDZixNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDO2dCQUM3QixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7YUFBTSxJQUFJLE9BQU8sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMvQixPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ2YsTUFBTSxHQUFHLE9BQU8sQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHJlbW92ZU51bGxWYWx1ZXNSZWN1cnNpdmVseSB9IGZyb20gJy4uL3V0aWwvcmVtb3ZlLW5pbC12YWx1ZXMtcmVjdXJzaXZlbHknO1xuXG5leHBvcnQgY2xhc3MgRm9ybVV0aWwge1xuICBzdGF0aWMgbWFya0FsbENvbnRyb2xzQXNUb3VjaGVkKGZvcm1Hcm91cDogRm9ybUdyb3VwLCByZWN1cnNpdmUgPSB0cnVlKTogdm9pZCB7XG4gICAgT2JqZWN0LnZhbHVlcyhmb3JtR3JvdXAuY29udHJvbHMpLmZvckVhY2goKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xuICAgICAgaWYgKHJlY3Vyc2l2ZSAmJiBjb250cm9sIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgIEZvcm1VdGlsLm1hcmtBbGxDb250cm9sc0FzVG91Y2hlZChjb250cm9sKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRyb2wucGF0Y2hWYWx1ZShjb250cm9sLnZhbHVlKTtcbiAgICAgICAgY29udHJvbC5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgZ2V0VXBkYXRlZEZvcm1EYXRhKG9iamVjdFRvQWRkOiBhbnksIG9sZERhdGE6IGFueSwgbmV3RGF0YTogYW55KTogYW55IHtcbiAgICBmb3IgKGNvbnN0IG5ld0tleSBpbiBuZXdEYXRhKSB7XG4gICAgICBjb25zdCBbLCBjaGFuZ2VkXSA9IEZvcm1VdGlsLmdldERpZmZlcmVuY2VSZWN1cnNpdmVseShvbGREYXRhW25ld0tleV0sIG5ld0RhdGFbbmV3S2V5XSk7XG4gICAgICBpZiAoY2hhbmdlZCAmJiBuZXdEYXRhW25ld0tleV0pIHtcbiAgICAgICAgb2JqZWN0VG9BZGRbbmV3S2V5XSA9IHJlbW92ZU51bGxWYWx1ZXNSZWN1cnNpdmVseShuZXdEYXRhW25ld0tleV0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gb2JqZWN0VG9BZGQ7XG4gIH1cblxuICBzdGF0aWMgZ2V0RGlmZmVyZW5jZVJlY3Vyc2l2ZWx5KG9sZERhdGE6IGFueSwgbmV3RGF0YTogYW55KTogW2FueSwgYm9vbGVhbl0ge1xuICAgIGxldCBjaGFuZ2VkID0gZmFsc2U7XG4gICAgbGV0IG9iamVjdDogYW55ID0ge307XG5cbiAgICBpZiAodHlwZW9mIG5ld0RhdGEgIT09IHR5cGVvZiBvbGREYXRhKSB7XG4gICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgIG9iamVjdCA9IG5ld0RhdGE7XG4gICAgfSBlbHNlIGlmIChuZXdEYXRhICYmIHR5cGVvZiBuZXdEYXRhID09PSAnb2JqZWN0Jykge1xuICAgICAgY29uc3QgYWxsS2V5cyA9IG5ldyBTZXQoWy4uLk9iamVjdC5rZXlzKG5ld0RhdGEpLCAuLi5PYmplY3Qua2V5cyhvbGREYXRhKV0pO1xuICAgICAgZm9yIChjb25zdCBuZXdLZXkgb2YgYWxsS2V5cykge1xuICAgICAgICBpZiAoIW5ld0RhdGFbbmV3S2V5XSAmJiAhb2xkRGF0YVtuZXdLZXldKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDaGVjayByZWN1cnNpdmVseVxuICAgICAgICBjb25zdCBbaW5uZXJEaWZmLCBpbm5lckNoYW5nZWRdID0gRm9ybVV0aWwuZ2V0RGlmZmVyZW5jZVJlY3Vyc2l2ZWx5KG9sZERhdGFbbmV3S2V5XSwgbmV3RGF0YVtuZXdLZXldKTtcbiAgICAgICAgaWYgKGlubmVyQ2hhbmdlZCkge1xuICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgIG9iamVjdFtuZXdLZXldID0gaW5uZXJEaWZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChuZXdEYXRhICE9PSBvbGREYXRhKSB7XG4gICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgIG9iamVjdCA9IG5ld0RhdGE7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtvYmplY3QsIGNoYW5nZWRdO1xuICB9XG59XG4iXX0=
|
package/esm2022/lib/index.mjs
CHANGED
|
@@ -5,4 +5,5 @@ export * from './types';
|
|
|
5
5
|
export * from './util';
|
|
6
6
|
export * from './auth';
|
|
7
7
|
export * from './dao';
|
|
8
|
-
|
|
8
|
+
export * from './base';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYmFzZS9zcmMvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsLWNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL25hdmlnYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9mb3Jtcyc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgnO1xuZXhwb3J0ICogZnJvbSAnLi9kYW8nO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlJztcbiJdfQ==
|
|
@@ -43,4 +43,4 @@ export class BaseModelDetailComponent {
|
|
|
43
43
|
this.navigationService.back(this.baseRoute);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1tb2RlbC1kZXRhaWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWJhc2Uvc3JjL2xpYi9tb2RlbC1jb21wb25lbnQvYmFzZS1tb2RlbC1kZXRhaWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBSXJFLE1BQU0sT0FBZ0Isd0JBQXdCO0lBTTVDLFlBQWdDLFNBQWlCO1FBQWpCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFMakQsVUFBSyxHQUFjLElBQUksQ0FBQztRQUVMLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEIsc0JBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFYixDQUFDO0lBRXJELGlCQUFpQixDQUFDLFdBQTRCO1FBQzVDLFFBQVEsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLEtBQUssTUFBTTtnQkFDVCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2hCLE1BQU07WUFFUixLQUFLLE1BQU07Z0JBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNqQixNQUFNO1lBRVIsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbkIsTUFBTTtRQUNWLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV6QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4QyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3BELENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FHRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9kZWxBY3Rpb24gfSBmcm9tICcuL2FjdGlvbic7XG5pbXBvcnQgeyBJZGVudGlmaWFibGUgfSBmcm9tICdhbmd1bGFyLWJhc2UtZGFvJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VNb2RlbERldGFpbENvbXBvbmVudDxUTSBleHRlbmRzIElkZW50aWZpYWJsZT4ge1xuICBtb2RlbDogVE0gfCBudWxsID0gbnVsbDtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByb3RlY3RlZCByZWFkb25seSBuYXZpZ2F0aW9uU2VydmljZSA9IGluamVjdChOYXZpZ2F0aW9uU2VydmljZSk7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBiYXNlUm91dGU6IHN0cmluZykge31cblxuICBoYW5kbGVNb2RlbEFjdGlvbihtb2RlbEFjdGlvbjogTW9kZWxBY3Rpb248VE0+KTogdm9pZCB7XG4gICAgc3dpdGNoIChtb2RlbEFjdGlvbi5hY3Rpb24pIHtcbiAgICAgIGNhc2UgJ3Nob3cnOlxuICAgICAgICB0aGlzLnNob3dMaXN0KCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdlZGl0JzpcbiAgICAgICAgdGhpcy5lZGl0TW9kZWwoKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICAgIHRoaXMuZGVsZXRlTW9kZWwoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgc2hvd0xpc3QoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuYmFzZVJvdXRlXSk7XG4gIH1cblxuICBhc3luYyBlZGl0TW9kZWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLm1vZGVsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgYXdhaXQgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuYmFzZVJvdXRlfS9lZGl0YCwgdGhpcy5tb2RlbC5pZF0pO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlTW9kZWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsO1xuXG4gICAgaWYgKCFtb2RlbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChhd2FpdCB0aGlzLmhhbmRsZURlbGV0ZU1vZGVsKG1vZGVsKSkge1xuICAgICAgYXdhaXQgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuYmFzZVJvdXRlfWBdKTtcbiAgICB9XG4gIH1cblxuICBnb0JhY2soKTogdm9pZCB7XG4gICAgdGhpcy5uYXZpZ2F0aW9uU2VydmljZS5iYWNrKHRoaXMuYmFzZVJvdXRlKTtcbiAgfVxuXG4gIGFic3RyYWN0IGhhbmRsZURlbGV0ZU1vZGVsKG1vZGVsOiBUTSk6IFByb21pc2U8Ym9vbGVhbj47XG59XG4iXX0=
|
|
@@ -35,4 +35,4 @@ export class BaseModelListComponent extends BaseModelComponent {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1tb2RlbC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1iYXNlL3NyYy9saWIvbW9kZWwtY29tcG9uZW50L2Jhc2UtbW9kZWwtbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJN0QsTUFBTSxPQUFnQixzQkFBZ0QsU0FBUSxrQkFBc0I7SUFHbEcsWUFBc0IsU0FBaUI7UUFDckMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBSFYsZUFBVSxHQUFHLElBQUksa0JBQWtCLENBQUssRUFBRSxDQUFDLENBQUM7UUFLbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDdkIsQ0FBQztJQUVRLGlCQUFpQixDQUFDLFdBQTRCO1FBQ3JELFFBQVEsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLEtBQUssTUFBTTtnQkFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3RDLE1BQU07WUFFUixLQUFLLE1BQU07Z0JBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxNQUFNO1lBRVIsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQyxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsRUFBUztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQVM7UUFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBUztRQUN6QixNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9ELElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUNqQyxDQUFDO0lBQ0gsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZU1vZGVsQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLW1vZGVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNb2RlbEFjdGlvbiB9IGZyb20gJy4vYWN0aW9uJztcbmltcG9ydCB7IERhb0lkLCBJZGVudGlmaWFibGUgfSBmcm9tICdhbmd1bGFyLWJhc2UtZGFvJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VNb2RlbExpc3RDb21wb25lbnQ8VE0gZXh0ZW5kcyBJZGVudGlmaWFibGU+IGV4dGVuZHMgQmFzZU1vZGVsQ29tcG9uZW50PFRNPiB7XG4gIHJlYWRvbmx5IGRhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPFRNPihbXSk7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGJhc2VSb3V0ZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoYmFzZVJvdXRlKTtcblxuICAgIHRoaXMuYmFja1JvdXRlID0gJy8nO1xuICB9XG5cbiAgb3ZlcnJpZGUgaGFuZGxlTW9kZWxBY3Rpb24obW9kZWxBY3Rpb246IE1vZGVsQWN0aW9uPFRNPik6IHZvaWQge1xuICAgIHN3aXRjaCAobW9kZWxBY3Rpb24uYWN0aW9uKSB7XG4gICAgICBjYXNlICdzaG93JzpcbiAgICAgICAgdGhpcy5zaG93RGV0YWlsKG1vZGVsQWN0aW9uLm1vZGVsLmlkKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ2VkaXQnOlxuICAgICAgICB0aGlzLmVkaXRNb2RlbChtb2RlbEFjdGlvbi5tb2RlbC5pZCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdkZWxldGUnOlxuICAgICAgICB0aGlzLmRlbGV0ZU1vZGVsKG1vZGVsQWN0aW9uLm1vZGVsKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgc2hvd0RldGFpbChpZDogRGFvSWQpOiB2b2lkIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5iYXNlUm91dGUsIGlkXSk7XG4gIH1cblxuICBlZGl0TW9kZWwoaWQ6IERhb0lkKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuYmFzZVJvdXRlfS9lZGl0YCwgaWRdKTtcbiAgfVxuXG4gIGNyZWF0ZU1vZGVsKCk6IHZvaWQge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgJHt0aGlzLmJhc2VSb3V0ZX0vYWRkYF0pO1xuICB9XG5cbiAgYXN5bmMgZGVsZXRlTW9kZWwobW9kZWw6IFRNKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgW2RlbGV0ZWQsIG5ld0xpc3RdID0gYXdhaXQgdGhpcy5oYW5kbGVNb2RlbERlbGV0ZShtb2RlbCk7XG4gICAgaWYgKGRlbGV0ZWQgJiYgbmV3TGlzdCkge1xuICAgICAgdGhpcy5kYXRhU291cmNlLmRhdGEgPSBuZXdMaXN0O1xuICAgIH1cbiAgfVxuXG4gIGFic3RyYWN0IGhhbmRsZU1vZGVsRGVsZXRlKG1vZGVsOiBUTSk6IFByb21pc2U8W2Jvb2xlYW4sIFRNW11dPjtcbn1cbiJdfQ==
|
|
@@ -19,4 +19,4 @@ export class BaseModelComponent extends BaseComponent {
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1tb2RlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYmFzZS9zcmMvbGliL21vZGVsLWNvbXBvbmVudC9iYXNlLW1vZGVsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdkMsTUFBTSxPQUFnQixrQkFBdUIsU0FBUSxhQUFhO0lBR2hFLFlBQWdDLFNBQWlCO1FBQy9DLEtBQUssRUFBRSxDQUFDO1FBRHNCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFGOUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUl6QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDbEMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxXQUE0QjtRQUM1QyxRQUFRLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMzQixLQUFLLGNBQWM7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsTUFBTTtRQUNWLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RlbEFjdGlvbiB9IGZyb20gJy4vYWN0aW9uJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VNb2RlbENvbXBvbmVudDxUTT4gZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgYmFzZVJvdXRlOiBzdHJpbmcpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYmFja1JvdXRlID0gdGhpcy5iYXNlUm91dGU7XG4gIH1cblxuICBzaG93TGlzdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5iYXNlUm91dGVdKTtcbiAgfVxuXG4gIGhhbmRsZU1vZGVsQWN0aW9uKG1vZGVsQWN0aW9uOiBNb2RlbEFjdGlvbjxUTT4pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1vZGVsQWN0aW9uLmFjdGlvbikge1xuICAgICAgY2FzZSAnYmFja190by1saXN0JzpcbiAgICAgICAgdGhpcy5zaG93TGlzdCgpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -8,10 +8,10 @@ export class BackButtonDirective {
|
|
|
8
8
|
onClick() {
|
|
9
9
|
this.navigation.back();
|
|
10
10
|
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
12
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BackButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
12
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BackButtonDirective, isStandalone: true, selector: "[ngLibBackButton]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
|
|
13
13
|
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BackButtonDirective, decorators: [{
|
|
15
15
|
type: Directive,
|
|
16
16
|
args: [{
|
|
17
17
|
selector: '[ngLibBackButton]',
|
|
@@ -25,11 +25,11 @@ export class NavigationService {
|
|
|
25
25
|
this.router.navigate([fallbackRoute]);
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
29
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
29
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NavigationService, providedIn: 'root' }); }
|
|
30
30
|
}
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NavigationService, decorators: [{
|
|
32
32
|
type: Injectable,
|
|
33
33
|
args: [{ providedIn: 'root' }]
|
|
34
34
|
}], ctorParameters: () => [] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWJhc2Uvc3JjL2xpYi9uYXZpZ2F0aW9uL25hdmlnYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLGlCQUFpQjtJQUs1QjtRQUpRLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFDZCxXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFHM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDckMsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFFLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRztRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUN4QyxDQUFDO0lBQ0gsQ0FBQzs4R0F4QlUsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FESixNQUFNOzsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgaGlzdG9yeTogc3RyaW5nW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvbiA9IGluamVjdChMb2NhdGlvbik7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgdGhpcy5oaXN0b3J5LnB1c2goZXZlbnQudXJsQWZ0ZXJSZWRpcmVjdHMpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5oaXN0b3J5ID0gW107XG4gIH1cblxuICBiYWNrKGZhbGxiYWNrUm91dGUgPSAnLycpOiB2b2lkIHtcbiAgICB0aGlzLmhpc3RvcnkucG9wKCk7XG4gICAgaWYgKHRoaXMuaGlzdG9yeS5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmxvY2F0aW9uLmJhY2soKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2ZhbGxiYWNrUm91dGVdKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -5,4 +5,4 @@ export const prepareOptionalString = (value) => {
|
|
|
5
5
|
}
|
|
6
6
|
return value;
|
|
7
7
|
};
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcGFyZS1vcHRpb25hbC1zdHJpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYmFzZS9zcmMvbGliL3V0aWwvcHJlcGFyZS1vcHRpb25hbC1zdHJpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxLQUFnQyxFQUFzQixFQUFFO0lBQzVGLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDbkMsd0NBQXdDO1FBQ3hDLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBwcmVwYXJlT3B0aW9uYWxTdHJpbmcgPSAodmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmaW5lZFxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4gdmFsdWU7XG59O1xuIl19
|
|
@@ -30,4 +30,4 @@ export const removeNullValuesRecursively = (object) => {
|
|
|
30
30
|
return object;
|
|
31
31
|
}
|
|
32
32
|
};
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLW5pbC12YWx1ZXMtcmVjdXJzaXZlbHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYmFzZS9zcmMvbGliL3V0aWwvcmVtb3ZlLW5pbC12YWx1ZXMtcmVjdXJzaXZlbHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFakMsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxNQUFXLEVBQU8sRUFBRTtJQUM5RCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMxQixNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFFckIsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUN6QixTQUFTLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7U0FBTSxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sU0FBUyxHQUFRLEVBQUUsQ0FBQztRQUUxQixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZCLFNBQVM7WUFDWCxDQUFDO1lBRUQsSUFBSSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDcEMsTUFBTSxXQUFXLEdBQUcsMkJBQTJCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzdELElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQztvQkFDckMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFdBQVcsQ0FBQztnQkFDL0IsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgaXNOaWwgfSBmcm9tICcuL2lzLW5pbCc7XG5cbmV4cG9ydCBjb25zdCByZW1vdmVOdWxsVmFsdWVzUmVjdXJzaXZlbHkgPSAob2JqZWN0OiBhbnkpOiBhbnkgPT4ge1xuICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7XG4gICAgY29uc3QgbmV3T2JqZWN0ID0gW107XG5cbiAgICBmb3IgKGNvbnN0IG9iaiBvZiBvYmplY3QpIHtcbiAgICAgIG5ld09iamVjdC5wdXNoKHJlbW92ZU51bGxWYWx1ZXNSZWN1cnNpdmVseShvYmopKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3T2JqZWN0O1xuICB9IGVsc2UgaWYgKHR5cGVvZiBvYmplY3QgPT09ICdvYmplY3QnKSB7XG4gICAgY29uc3QgbmV3T2JqZWN0OiBhbnkgPSB7fTtcblxuICAgIGZvciAoY29uc3Qga2V5IGluIG9iamVjdCkge1xuICAgICAgaWYgKGlzTmlsKG9iamVjdFtrZXldKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBvYmplY3Rba2V5XSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgY29uc3Qgb2JqZWN0VG9TZXQgPSByZW1vdmVOdWxsVmFsdWVzUmVjdXJzaXZlbHkob2JqZWN0W2tleV0pO1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMob2JqZWN0VG9TZXQpPy5sZW5ndGgpIHtcbiAgICAgICAgICBuZXdPYmplY3Rba2V5XSA9IG9iamVjdFRvU2V0O1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdPYmplY3Rba2V5XSA9IG9iamVjdFtrZXldO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBuZXdPYmplY3Q7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIG9iamVjdDtcbiAgfVxufTtcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, Injectable, Directive, HostListener } from '@angular/core';
|
|
2
|
+
import { inject, Injectable, Directive, HostListener, EventEmitter, Output, Input } from '@angular/core';
|
|
3
3
|
import { Router, NavigationEnd } from '@angular/router';
|
|
4
4
|
import { Location } from '@angular/common';
|
|
5
5
|
import { MatTableDataSource } from '@angular/material/table';
|
|
@@ -31,10 +31,10 @@ class NavigationService {
|
|
|
31
31
|
this.router.navigate([fallbackRoute]);
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
35
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
35
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NavigationService, providedIn: 'root' }); }
|
|
36
36
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: NavigationService, decorators: [{
|
|
38
38
|
type: Injectable,
|
|
39
39
|
args: [{ providedIn: 'root' }]
|
|
40
40
|
}], ctorParameters: () => [] });
|
|
@@ -164,10 +164,10 @@ class BackButtonDirective {
|
|
|
164
164
|
onClick() {
|
|
165
165
|
this.navigation.back();
|
|
166
166
|
}
|
|
167
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
168
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
167
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BackButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
168
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BackButtonDirective, isStandalone: true, selector: "[ngLibBackButton]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
|
|
169
169
|
}
|
|
170
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BackButtonDirective, decorators: [{
|
|
171
171
|
type: Directive,
|
|
172
172
|
args: [{
|
|
173
173
|
selector: '[ngLibBackButton]',
|
|
@@ -516,9 +516,49 @@ class ConvertedPromiseHttpBaseDao extends InternalHttpBaseDao {
|
|
|
516
516
|
class Converter {
|
|
517
517
|
}
|
|
518
518
|
|
|
519
|
+
class BaseControlValueAccessor {
|
|
520
|
+
constructor() {
|
|
521
|
+
this.valueChanged = new EventEmitter();
|
|
522
|
+
this.onChange = null;
|
|
523
|
+
this.onTouched = null;
|
|
524
|
+
}
|
|
525
|
+
get value() {
|
|
526
|
+
return this._value;
|
|
527
|
+
}
|
|
528
|
+
set value(value) {
|
|
529
|
+
this.markAsTouched();
|
|
530
|
+
this._value = value;
|
|
531
|
+
this.onChange?.(this._value);
|
|
532
|
+
this.valueChanged.emit(this._value);
|
|
533
|
+
}
|
|
534
|
+
writeValue(value) {
|
|
535
|
+
this.value = value;
|
|
536
|
+
}
|
|
537
|
+
registerOnChange(onChange) {
|
|
538
|
+
this.onChange = onChange;
|
|
539
|
+
}
|
|
540
|
+
registerOnTouched(onTouched) {
|
|
541
|
+
this.onTouched = onTouched;
|
|
542
|
+
}
|
|
543
|
+
markAsTouched() {
|
|
544
|
+
if (this.onTouched) {
|
|
545
|
+
this.onTouched();
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BaseControlValueAccessor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
549
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BaseControlValueAccessor, inputs: { value: "value" }, outputs: { valueChanged: "valueChanged" }, ngImport: i0 }); }
|
|
550
|
+
}
|
|
551
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BaseControlValueAccessor, decorators: [{
|
|
552
|
+
type: Directive
|
|
553
|
+
}], propDecorators: { valueChanged: [{
|
|
554
|
+
type: Output
|
|
555
|
+
}], value: [{
|
|
556
|
+
type: Input
|
|
557
|
+
}] } });
|
|
558
|
+
|
|
519
559
|
/**
|
|
520
560
|
* Generated bundle index. Do not edit.
|
|
521
561
|
*/
|
|
522
562
|
|
|
523
|
-
export { BackButtonDirective, BaseAuthService, BaseComponent, BaseModelComponent, BaseModelDetailComponent, BaseModelEditComponent, BaseModelListComponent, ConvertedHttpBaseDao, ConvertedPromiseHttpBaseDao, Converter, DEFAULT_OPTIONS, FormUtil, HttpBaseDao, LoggedInAuthState, NavigationService, NotLoggedInAuthState, PendingAuthState, PromiseHttpBaseDao, isNil, loggedInGuardFn, loggedOutGuardFn, prepareOptionalString, removeNullValuesRecursively };
|
|
563
|
+
export { BackButtonDirective, BaseAuthService, BaseComponent, BaseControlValueAccessor, BaseModelComponent, BaseModelDetailComponent, BaseModelEditComponent, BaseModelListComponent, ConvertedHttpBaseDao, ConvertedPromiseHttpBaseDao, Converter, DEFAULT_OPTIONS, FormUtil, HttpBaseDao, LoggedInAuthState, NavigationService, NotLoggedInAuthState, PendingAuthState, PromiseHttpBaseDao, isNil, loggedInGuardFn, loggedOutGuardFn, prepareOptionalString, removeNullValuesRecursively };
|
|
524
564
|
//# sourceMappingURL=angular-base-lib.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular-base-lib.mjs","sources":["../../../../libs/angular-base/src/lib/navigation/navigation.service.ts","../../../../libs/angular-base/src/lib/model-component/base-model-detail.component.ts","../../../../libs/angular-base/src/lib/model-component/base.component.ts","../../../../libs/angular-base/src/lib/model-component/base-model.component.ts","../../../../libs/angular-base/src/lib/model-component/base-model-edit.component.ts","../../../../libs/angular-base/src/lib/model-component/base-model-list.component.ts","../../../../libs/angular-base/src/lib/navigation/back-button.directive.ts","../../../../libs/angular-base/src/lib/util/is-nil.ts","../../../../libs/angular-base/src/lib/util/remove-nil-values-recursively.ts","../../../../libs/angular-base/src/lib/forms/form-util.ts","../../../../libs/angular-base/src/lib/util/prepare-optional-string.ts","../../../../libs/angular-base/src/lib/auth/models/pending-auth-state.ts","../../../../libs/angular-base/src/lib/auth/models/logged-in-auth-state.ts","../../../../libs/angular-base/src/lib/auth/models/not-logged-in-auth-state.ts","../../../../libs/angular-base/src/lib/auth/base-auth.service.ts","../../../../libs/angular-base/src/lib/auth/guards/logged-in.guard.ts","../../../../libs/angular-base/src/lib/auth/guards/logged-out.guard.ts","../../../../libs/angular-base/src/lib/dao/http-base-dao-options.ts","../../../../libs/angular-base/src/lib/dao/internal/internal-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/promise-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/converted-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/converted-promise-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/converter.ts","../../../../libs/angular-base/src/angular-base-lib.ts"],"sourcesContent":["import { NavigationEnd, Router } from '@angular/router';\nimport { inject, Injectable } from '@angular/core';\nimport { Location } from '@angular/common';\n\n@Injectable({ providedIn: 'root' })\nexport class NavigationService {\n private history: string[] = [];\n private readonly router = inject(Router);\n private readonly location = inject(Location);\n\n constructor() {\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n this.history.push(event.urlAfterRedirects);\n }\n });\n }\n\n reset(): void {\n this.history = [];\n }\n\n back(fallbackRoute = '/'): void {\n this.history.pop();\n if (this.history.length > 0) {\n this.location.back();\n } else {\n this.router.navigate([fallbackRoute]);\n }\n }\n}\n","import { inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { NavigationService } from '../navigation/navigation.service';\nimport { ModelAction } from './action';\nimport { Identifiable } from 'angular-base-dao';\n\nexport abstract class BaseModelDetailComponent<TM extends Identifiable> {\n model: TM | null = null;\n\n protected readonly router = inject(Router);\n protected readonly navigationService = inject(NavigationService);\n\n protected constructor(protected baseRoute: string) {}\n\n handleModelAction(modelAction: ModelAction<TM>): void {\n switch (modelAction.action) {\n case 'show':\n this.showList();\n break;\n\n case 'edit':\n this.editModel();\n break;\n\n case 'delete':\n this.deleteModel();\n break;\n }\n }\n\n showList(): void {\n this.router.navigate([this.baseRoute]);\n }\n\n async editModel(): Promise<void> {\n if (!this.model) {\n return;\n }\n\n await this.router.navigate([`${this.baseRoute}/edit`, this.model.id]);\n }\n\n async deleteModel(): Promise<void> {\n const model = this.model;\n\n if (!model) {\n return;\n }\n\n if (await this.handleDeleteModel(model)) {\n await this.router.navigate([`${this.baseRoute}`]);\n }\n }\n\n goBack(): void {\n this.navigationService.back(this.baseRoute);\n }\n\n abstract handleDeleteModel(model: TM): Promise<boolean>;\n}\n","/**\n * Component used for all pages that can directly navigate back to the home page if no other route was found\n */\nimport { inject } from '@angular/core';\nimport { NavigationService } from '../navigation/navigation.service';\n\nexport abstract class BaseComponent {\n backRoute = '/';\n\n protected readonly navigationService = inject(NavigationService);\n\n goBack(): void {\n this.navigationService.back(this.backRoute);\n }\n}\n","import { Router } from '@angular/router';\nimport { BaseComponent } from './base.component';\nimport { inject } from '@angular/core';\nimport { ModelAction } from './action';\n\nexport abstract class BaseModelComponent<TM> extends BaseComponent {\n protected readonly router = inject(Router);\n\n protected constructor(protected baseRoute: string) {\n super();\n this.backRoute = this.baseRoute;\n }\n\n showList(): void {\n this.router.navigate([this.baseRoute]);\n }\n\n handleModelAction(modelAction: ModelAction<TM>): void {\n switch (modelAction.action) {\n case 'back_to-list':\n this.showList();\n break;\n }\n }\n}\n","import { BaseModelComponent } from './base-model.component';\nimport { Identifiable } from 'angular-base-dao';\n\nexport abstract class BaseModelEditComponent<TM extends Identifiable> extends BaseModelComponent<TM> {\n model: TM | null = null;\n}\n","import { BaseModelComponent } from './base-model.component';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ModelAction } from './action';\nimport { DaoId, Identifiable } from 'angular-base-dao';\n\nexport abstract class BaseModelListComponent<TM extends Identifiable> extends BaseModelComponent<TM> {\n readonly dataSource = new MatTableDataSource<TM>([]);\n\n protected constructor(baseRoute: string) {\n super(baseRoute);\n\n this.backRoute = '/';\n }\n\n override handleModelAction(modelAction: ModelAction<TM>): void {\n switch (modelAction.action) {\n case 'show':\n this.showDetail(modelAction.model.id);\n break;\n\n case 'edit':\n this.editModel(modelAction.model.id);\n break;\n\n case 'delete':\n this.deleteModel(modelAction.model);\n break;\n }\n }\n\n showDetail(id: DaoId): void {\n this.router.navigate([this.baseRoute, id]);\n }\n\n editModel(id: DaoId): void {\n this.router.navigate([`${this.baseRoute}/edit`, id]);\n }\n\n createModel(): void {\n this.router.navigate([`${this.baseRoute}/add`]);\n }\n\n async deleteModel(model: TM): Promise<void> {\n const [deleted, newList] = await this.handleModelDelete(model);\n if (deleted && newList) {\n this.dataSource.data = newList;\n }\n }\n\n abstract handleModelDelete(model: TM): Promise<[boolean, TM[]]>;\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { NavigationService } from './navigation.service';\n\n@Directive({\n selector: '[ngLibBackButton]',\n standalone: true\n})\nexport class BackButtonDirective {\n private readonly navigation = inject(NavigationService);\n\n @HostListener('click')\n onClick(): void {\n this.navigation.back();\n }\n}\n","export const isNil = (obj: unknown): boolean => obj === null || obj === undefined;\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { isNil } from './is-nil';\n\nexport const removeNullValuesRecursively = (object: any): any => {\n if (Array.isArray(object)) {\n const newObject = [];\n\n for (const obj of object) {\n newObject.push(removeNullValuesRecursively(obj));\n }\n\n return newObject;\n } else if (typeof object === 'object') {\n const newObject: any = {};\n\n for (const key in object) {\n if (isNil(object[key])) {\n continue;\n }\n\n if (typeof object[key] === 'object') {\n const objectToSet = removeNullValuesRecursively(object[key]);\n if (Object.keys(objectToSet)?.length) {\n newObject[key] = objectToSet;\n }\n } else {\n newObject[key] = object[key];\n }\n }\n\n return newObject;\n } else {\n return object;\n }\n};\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { AbstractControl, FormGroup } from '@angular/forms';\nimport { removeNullValuesRecursively } from '../util/remove-nil-values-recursively';\n\nexport class FormUtil {\n static markAllControlsAsTouched(formGroup: FormGroup, recursive = true): void {\n Object.values(formGroup.controls).forEach((control: AbstractControl) => {\n if (recursive && control instanceof FormGroup) {\n FormUtil.markAllControlsAsTouched(control);\n } else {\n control.patchValue(control.value);\n control.markAllAsTouched();\n }\n });\n }\n\n static getUpdatedFormData(objectToAdd: any, oldData: any, newData: any): any {\n for (const newKey in newData) {\n const [, changed] = FormUtil.getDifferenceRecursively(oldData[newKey], newData[newKey]);\n if (changed && newData[newKey]) {\n objectToAdd[newKey] = removeNullValuesRecursively(newData[newKey]);\n }\n }\n return objectToAdd;\n }\n\n static getDifferenceRecursively(oldData: any, newData: any): [any, boolean] {\n let changed = false;\n let object: any = {};\n\n if (typeof newData !== typeof oldData) {\n changed = true;\n object = newData;\n } else if (newData && typeof newData === 'object') {\n const allKeys = new Set([...Object.keys(newData), ...Object.keys(oldData)]);\n for (const newKey of allKeys) {\n if (!newData[newKey] && !oldData[newKey]) {\n continue;\n }\n\n // Check recursively\n const [innerDiff, innerChanged] = FormUtil.getDifferenceRecursively(oldData[newKey], newData[newKey]);\n if (innerChanged) {\n changed = true;\n object[newKey] = innerDiff;\n }\n }\n } else if (newData !== oldData) {\n changed = true;\n object = newData;\n }\n\n return [object, changed];\n }\n}\n","export const prepareOptionalString = (value: string | null | undefined): string | undefined => {\n if (value === null || value === '') {\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n return value;\n};\n","import { BaseAuthState } from './base-auth-state';\nimport { LoginState } from './login-state.type';\n\nexport class PendingAuthState implements BaseAuthState<unknown> {\n readonly loginState: LoginState = 'pending';\n readonly user = null;\n}\n","import { BaseAuthState } from './base-auth-state';\nimport { LoginState } from './login-state.type';\n\nexport class LoggedInAuthState<T> implements BaseAuthState<T> {\n readonly loginState: LoginState = 'logged-in';\n readonly user: T;\n\n constructor(user: T) {\n this.user = user;\n }\n}\n","import { BaseAuthState } from './base-auth-state';\nimport { LoginState } from './login-state.type';\n\nexport class NotLoggedInAuthState implements BaseAuthState<unknown> {\n readonly loginState: LoginState = 'logged-out';\n readonly user = null;\n}\n","import { BehaviorSubject, filter, Observable } from 'rxjs';\nimport { BaseAuthState, LoggedInAuthState, LoginState, NotLoggedInAuthState, PendingAuthState } from './models';\nimport { map } from 'rxjs/operators';\n\nexport abstract class BaseAuthService<T> {\n private readonly authStateSubject = new BehaviorSubject<BaseAuthState<T>>(new PendingAuthState());\n private readonly _authState$: Observable<BaseAuthState<T>>;\n private readonly _loginState$: Observable<LoginState>;\n private readonly _readyLoginState$: Observable<LoginState>;\n private readonly _readyAuthState$: Observable<BaseAuthState<T>>;\n private readonly _user$: Observable<T | null>;\n private readonly _readyUser$: Observable<T | null>;\n private readonly _isLoggedIn$: Observable<boolean>;\n private readonly defaultLoginRoute = '/auth/login';\n\n get authState$(): Observable<BaseAuthState<T>> {\n return this._authState$;\n }\n\n get loginState$(): Observable<LoginState> {\n return this._loginState$;\n }\n\n get readyLoginState$(): Observable<LoginState> {\n return this._readyLoginState$;\n }\n\n get readyAuthState$(): Observable<BaseAuthState<T>> {\n return this._readyAuthState$;\n }\n\n get user$(): Observable<T | null> {\n return this._user$;\n }\n\n get readyUser$(): Observable<T | null> {\n return this._readyUser$;\n }\n\n get isLoggedIn$(): Observable<boolean> {\n return this._isLoggedIn$;\n }\n\n get loginRoute(): string {\n return this.defaultLoginRoute;\n }\n\n protected constructor() {\n this._authState$ = this.authStateSubject.asObservable();\n this._user$ = this._authState$.pipe(map((elem) => elem.user));\n this._loginState$ = this._authState$.pipe(map((elem) => elem.loginState));\n this._isLoggedIn$ = this._loginState$.pipe(map((state) => state === 'logged-in'));\n\n this._readyAuthState$ = this._authState$.pipe(filter((elem) => elem.loginState !== 'pending'));\n this._readyLoginState$ = this._readyAuthState$.pipe(map((elem) => elem.loginState));\n this._readyUser$ = this._readyAuthState$.pipe(map((elem) => elem.user));\n }\n\n protected userLoggedIn(user: T): void {\n this.authStateSubject.next(new LoggedInAuthState<T>(user));\n }\n\n protected userLoggedOut(): void {\n this.authStateSubject.next(new NotLoggedInAuthState());\n }\n}\n","import { inject } from '@angular/core';\nimport { CanActivateFn, Router, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { BaseAuthService } from '../base-auth.service';\nexport const loggedInGuardFn: CanActivateFn = (): Observable<boolean | UrlTree> => {\n const router = inject(Router);\n return inject(BaseAuthService).readyAuthState$.pipe(\n map((state) => {\n if (state.loginState === 'logged-in') {\n return true;\n }\n\n return router.createUrlTree(['/auth/login']);\n }),\n );\n};\n","import { inject } from '@angular/core';\nimport { CanActivateFn, Router, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { BaseAuthService } from '../base-auth.service';\n\nexport const loggedOutGuardFn: CanActivateFn = (): Observable<boolean | UrlTree> => {\n const router = inject(Router);\n return inject(BaseAuthService).readyLoginState$.pipe(\n map((state) => {\n if (state !== 'logged-in') {\n return true;\n }\n\n return router.createUrlTree(['/']);\n }),\n );\n};\n","import { HttpHeaders } from '@angular/common/http';\n\nexport interface HttpBaseDaoOptions {\n withCredentials?: boolean;\n headers?: HttpHeaders;\n}\n\nexport const DEFAULT_OPTIONS: HttpBaseDaoOptions = {\n withCredentials: true,\n};\n","import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { inject } from '@angular/core';\nimport { DEFAULT_OPTIONS, HttpBaseDaoOptions } from '../http-base-dao-options';\nimport { DaoId } from '../dao-id';\n\nexport abstract class InternalHttpBaseDao<TI> {\n protected readonly http = inject(HttpClient);\n protected readonly options: HttpBaseDaoOptions;\n protected readonly routeUrl: string;\n\n protected constructor(routeUrl: string, options: HttpBaseDaoOptions = {}) {\n this.routeUrl = routeUrl;\n this.options = {\n ...DEFAULT_OPTIONS,\n ...options\n };\n }\n\n protected listInternal(customOptions: HttpBaseDaoOptions = {}): Observable<TI[]> {\n return this.http.get<TI[]>(this.routeUrl, this.mergeCustomOptions(customOptions));\n }\n\n protected createInternal(data: object, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n if (!data) {\n throw new Error('Entry must exist to be created');\n }\n\n return this.http.post<TI>(this.routeUrl, data, this.mergeCustomOptions(customOptions));\n }\n\n protected updateInternal(id: DaoId, data: object, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n if (!id) {\n throw new Error('Entry must exist to be updated');\n }\n\n return this.http.put<TI>(this.routeUrl + '/' + id, data, this.mergeCustomOptions(customOptions));\n }\n\n protected deleteInternal(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n if (!id) {\n throw new Error('Entry must exist to be deleted');\n }\n return this.http.delete<TI>(this.routeUrl + '/' + id, this.mergeCustomOptions(customOptions));\n }\n\n protected readInternal(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.http.get<TI>(this.routeUrl + '/' + id, this.mergeCustomOptions(customOptions));\n }\n\n private mergeCustomOptions(customOptions: HttpBaseDaoOptions): HttpBaseDaoOptions {\n return {\n ...this.options,\n ...customOptions\n };\n }\n}\n","import { Observable } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\n\nexport abstract class HttpBaseDao<TI> extends InternalHttpBaseDao<TI> {\n protected constructor(routeUrl: string, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Observable<TI[]> {\n return this.listInternal(customOptions);\n }\n\n create(entry: Partial<TI>, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.createInternal(entry, customOptions);\n }\n\n update(id: DaoId, entry: Partial<TI>, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.updateInternal(id, entry, customOptions);\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.deleteInternal(id, customOptions);\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.readInternal(id, customOptions);\n }\n}\n","import { firstValueFrom } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\n\nexport abstract class PromiseHttpBaseDao<TI> extends InternalHttpBaseDao<TI> {\n protected constructor(routeUrl: string, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Promise<TI[]> {\n return firstValueFrom(this.listInternal(customOptions));\n }\n\n create(data: object, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.createInternal(data, customOptions));\n }\n\n update(id: DaoId, data: object, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.updateInternal(id, data, customOptions));\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.deleteInternal(id, customOptions));\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.readInternal(id, customOptions));\n }\n}\n","import { map, Observable } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\nimport { Converter } from './converter';\n\nexport abstract class ConvertedHttpBaseDao<TI, TM> extends InternalHttpBaseDao<TI> {\n protected readonly converter: Converter<TI, TM>;\n protected constructor(routeUrl: string, converter: Converter<TI, TM>, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n this.converter = converter;\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Observable<TM[]> {\n return this.listInternal(customOptions).pipe(this.mapServerInterfaceListToModelList);\n }\n\n create(entry: TM, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n const createData = this.converter.toJson(entry);\n return this.createInternal(createData, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n update(id: DaoId, entry: Partial<TM>, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n const updateData = this.converter.toJson(entry);\n return this.updateInternal(id, updateData, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n return this.deleteInternal(id, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n return this.readInternal(id, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n private mapServerInterfaceListToModelList(source$: Observable<TI[]>): Observable<TM[]> {\n return source$.pipe(\n map((list) => {\n if (!list?.length) {\n return [];\n }\n\n return list.map((elem) => this.converter.fromJson(elem));\n }),\n );\n }\n\n private mapServerInterfaceToModel(source$: Observable<TI>): Observable<TM> {\n return source$.pipe(map((element) => this.converter.fromJson(element)));\n }\n}\n","import { firstValueFrom, map, Observable } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\nimport { Converter } from './converter';\n\nexport abstract class ConvertedPromiseHttpBaseDao<TI, TM> extends InternalHttpBaseDao<TI> {\n protected readonly converter: Converter<TI, TM>;\n protected constructor(routeUrl: string, converter: Converter<TI, TM>, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n this.converter = converter;\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Promise<TM[]> {\n return firstValueFrom(this.listInternal(customOptions).pipe(this.mapServerInterfaceListToModelList.bind(this)));\n }\n\n create(entry: TM, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n const createData = this.converter.toJson(entry);\n return firstValueFrom(\n this.createInternal(createData, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)),\n );\n }\n\n update(id: DaoId, entry: Partial<TM>, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n const updateData = this.converter.toJson(entry);\n return firstValueFrom(\n this.updateInternal(id, updateData, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)),\n );\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n return firstValueFrom(this.deleteInternal(id, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)));\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n return firstValueFrom(this.readInternal(id, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)));\n }\n\n private mapServerInterfaceListToModelList(source$: Observable<TI[]>): Observable<TM[]> {\n return source$.pipe(\n map((list) => {\n if (!list?.length) {\n return [];\n }\n\n return list.map((elem) => this.converter.fromJson(elem));\n }),\n );\n }\n\n private mapServerInterfaceToModel(source$: Observable<TI>): Observable<TM> {\n return source$.pipe(map((element) => this.converter.fromJson(element)));\n }\n}\n","export abstract class Converter<TI, TM> {\n abstract fromJson(response: TI): TM;\n abstract toJson(model: Partial<TM>): Partial<TI>;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map"],"mappings":";;;;;;;;;;MAKa,iBAAiB,CAAA;AAK5B,IAAA,WAAA,GAAA;QAJQ,IAAO,CAAA,OAAA,GAAa,EAAE,CAAC;AACd,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAG3C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;YACrC,IAAI,KAAK,YAAY,aAAa,EAAE;gBAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAC5C,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAED,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;KACnB;IAED,IAAI,CAAC,aAAa,GAAG,GAAG,EAAA;AACtB,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;AACnB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AAC3B,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;AACtB,SAAA;AAAM,aAAA;YACL,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AACvC,SAAA;KACF;8GAxBU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cADJ,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;MCEZ,wBAAwB,CAAA;AAM5C,IAAA,WAAA,CAAgC,SAAiB,EAAA;QAAjB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAQ;QALjD,IAAK,CAAA,KAAA,GAAc,IAAI,CAAC;AAEL,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;KAEZ;AAErD,IAAA,iBAAiB,CAAC,WAA4B,EAAA;QAC5C,QAAQ,WAAW,CAAC,MAAM;AACxB,YAAA,KAAK,MAAM;gBACT,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,MAAM;AAER,YAAA,KAAK,MAAM;gBACT,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,MAAM;AAER,YAAA,KAAK,QAAQ;gBACX,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,MAAM;AACT,SAAA;KACF;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;KACxC;AAED,IAAA,MAAM,SAAS,GAAA;AACb,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO;AACR,SAAA;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAO,KAAA,CAAA,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;KACvE;AAED,IAAA,MAAM,WAAW,GAAA;AACf,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO;AACR,SAAA;AAED,QAAA,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;AACvC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAG,EAAA,IAAI,CAAC,SAAS,CAAE,CAAA,CAAC,CAAC,CAAC;AACnD,SAAA;KACF;IAED,MAAM,GAAA;QACJ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC7C;AAGF;;AC3DD;;AAEG;MAImB,aAAa,CAAA;AAAnC,IAAA,WAAA,GAAA;QACE,IAAS,CAAA,SAAA,GAAG,GAAG,CAAC;AAEG,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;KAKlE;IAHC,MAAM,GAAA;QACJ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC7C;AACF;;ACTK,MAAgB,kBAAuB,SAAQ,aAAa,CAAA;AAGhE,IAAA,WAAA,CAAgC,SAAiB,EAAA;AAC/C,QAAA,KAAK,EAAE,CAAC;QADsB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAQ;AAF9B,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAIzC,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;KACjC;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;KACxC;AAED,IAAA,iBAAiB,CAAC,WAA4B,EAAA;QAC5C,QAAQ,WAAW,CAAC,MAAM;AACxB,YAAA,KAAK,cAAc;gBACjB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,MAAM;AACT,SAAA;KACF;AACF;;ACrBK,MAAgB,sBAAgD,SAAQ,kBAAsB,CAAA;AAApG,IAAA,WAAA,GAAA;;QACE,IAAK,CAAA,KAAA,GAAc,IAAI,CAAC;KACzB;AAAA;;ACAK,MAAgB,sBAAgD,SAAQ,kBAAsB,CAAA;AAGlG,IAAA,WAAA,CAAsB,SAAiB,EAAA;QACrC,KAAK,CAAC,SAAS,CAAC,CAAC;AAHV,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,kBAAkB,CAAK,EAAE,CAAC,CAAC;AAKnD,QAAA,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;KACtB;AAEQ,IAAA,iBAAiB,CAAC,WAA4B,EAAA;QACrD,QAAQ,WAAW,CAAC,MAAM;AACxB,YAAA,KAAK,MAAM;gBACT,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACtC,MAAM;AAER,YAAA,KAAK,MAAM;gBACT,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACrC,MAAM;AAER,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACpC,MAAM;AACT,SAAA;KACF;AAED,IAAA,UAAU,CAAC,EAAS,EAAA;AAClB,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;KAC5C;AAED,IAAA,SAAS,CAAC,EAAS,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAO,KAAA,CAAA,EAAE,EAAE,CAAC,CAAC,CAAC;KACtD;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAG,EAAA,IAAI,CAAC,SAAS,CAAM,IAAA,CAAA,CAAC,CAAC,CAAC;KACjD;IAED,MAAM,WAAW,CAAC,KAAS,EAAA;AACzB,QAAA,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,OAAO,IAAI,OAAO,EAAE;AACtB,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC;AAChC,SAAA;KACF;AAGF;;MC3CY,mBAAmB,CAAA;AAJhC,IAAA,WAAA,GAAA;AAKmB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAMzD,KAAA;IAHC,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;KACxB;8GANU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAKC,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,CAAA;;;ACVV,MAAA,KAAK,GAAG,CAAC,GAAY,KAAc,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK;;ACAxE;AAGa,MAAA,2BAA2B,GAAG,CAAC,MAAW,KAAS;AAC9D,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACzB,MAAM,SAAS,GAAG,EAAE,CAAC;AAErB,QAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;YACxB,SAAS,CAAC,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;AAClB,KAAA;AAAM,SAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACrC,MAAM,SAAS,GAAQ,EAAE,CAAC;AAE1B,QAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACxB,YAAA,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBACtB,SAAS;AACV,aAAA;AAED,YAAA,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;gBACnC,MAAM,WAAW,GAAG,2BAA2B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7D,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE;AACpC,oBAAA,SAAS,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;AAC9B,iBAAA;AACF,aAAA;AAAM,iBAAA;gBACL,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AAC9B,aAAA;AACF,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;AAClB,KAAA;AAAM,SAAA;AACL,QAAA,OAAO,MAAM,CAAC;AACf,KAAA;AACH;;AClCA;MAIa,QAAQ,CAAA;AACnB,IAAA,OAAO,wBAAwB,CAAC,SAAoB,EAAE,SAAS,GAAG,IAAI,EAAA;AACpE,QAAA,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,OAAwB,KAAI;AACrE,YAAA,IAAI,SAAS,IAAI,OAAO,YAAY,SAAS,EAAE;AAC7C,gBAAA,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAC5C,aAAA;AAAM,iBAAA;AACL,gBAAA,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC;AAC5B,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,OAAO,kBAAkB,CAAC,WAAgB,EAAE,OAAY,EAAE,OAAY,EAAA;AACpE,QAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;AAC5B,YAAA,MAAM,GAAG,OAAO,CAAC,GAAG,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AACxF,YAAA,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC9B,WAAW,CAAC,MAAM,CAAC,GAAG,2BAA2B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AACpE,aAAA;AACF,SAAA;AACD,QAAA,OAAO,WAAW,CAAC;KACpB;AAED,IAAA,OAAO,wBAAwB,CAAC,OAAY,EAAE,OAAY,EAAA;QACxD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,MAAM,GAAQ,EAAE,CAAC;AAErB,QAAA,IAAI,OAAO,OAAO,KAAK,OAAO,OAAO,EAAE;YACrC,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,GAAG,OAAO,CAAC;AAClB,SAAA;AAAM,aAAA,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACjD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC5E,YAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;oBACxC,SAAS;AACV,iBAAA;;gBAGD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AACtG,gBAAA,IAAI,YAAY,EAAE;oBAChB,OAAO,GAAG,IAAI,CAAC;AACf,oBAAA,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;AAC5B,iBAAA;AACF,aAAA;AACF,SAAA;aAAM,IAAI,OAAO,KAAK,OAAO,EAAE;YAC9B,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,GAAG,OAAO,CAAC;AAClB,SAAA;AAED,QAAA,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC1B;AACF;;ACtDY,MAAA,qBAAqB,GAAG,CAAC,KAAgC,KAAwB;AAC5F,IAAA,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;;AAElC,QAAA,OAAO,SAAS,CAAC;AAClB,KAAA;AAED,IAAA,OAAO,KAAK,CAAC;AACf;;MCJa,gBAAgB,CAAA;AAA7B,IAAA,WAAA,GAAA;QACW,IAAU,CAAA,UAAA,GAAe,SAAS,CAAC;QACnC,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;KACtB;AAAA;;MCHY,iBAAiB,CAAA;AAI5B,IAAA,WAAA,CAAY,IAAO,EAAA;QAHV,IAAU,CAAA,UAAA,GAAe,WAAW,CAAC;AAI5C,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;KAClB;AACF;;MCPY,oBAAoB,CAAA;AAAjC,IAAA,WAAA,GAAA;QACW,IAAU,CAAA,UAAA,GAAe,YAAY,CAAC;QACtC,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;KACtB;AAAA;;MCFqB,eAAe,CAAA;AAWnC,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAC9B;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,iBAAiB,CAAC;KAC/B;AAED,IAAA,WAAA,GAAA;QA1CiB,IAAgB,CAAA,gBAAA,GAAG,IAAI,eAAe,CAAmB,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAQjF,IAAiB,CAAA,iBAAA,GAAG,aAAa,CAAC;QAmCjD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACxD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC;QAElF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KACzE;AAES,IAAA,YAAY,CAAC,IAAO,EAAA;QAC5B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAI,IAAI,CAAC,CAAC,CAAC;KAC5D;IAES,aAAa,GAAA;QACrB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC;KACxD;AACF;;AC5DM,MAAM,eAAe,GAAkB,MAAoC;AAChF,IAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAC9B,IAAA,OAAO,MAAM,CAAC,eAAe,CAAC,CAAC,eAAe,CAAC,IAAI,CACjD,GAAG,CAAC,CAAC,KAAK,KAAI;AACZ,QAAA,IAAI,KAAK,CAAC,UAAU,KAAK,WAAW,EAAE;AACpC,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,OAAO,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;KAC9C,CAAC,CACH,CAAC;AACJ;;ACVO,MAAM,gBAAgB,GAAkB,MAAoC;AACjF,IAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAC9B,IAAA,OAAO,MAAM,CAAC,eAAe,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAClD,GAAG,CAAC,CAAC,KAAK,KAAI;QACZ,IAAI,KAAK,KAAK,WAAW,EAAE;AACzB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;QAED,OAAO,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KACpC,CAAC,CACH,CAAC;AACJ;;ACVa,MAAA,eAAe,GAAuB;AACjD,IAAA,eAAe,EAAE,IAAI;;;MCFD,mBAAmB,CAAA;IAKvC,WAAsB,CAAA,QAAgB,EAAE,OAAA,GAA8B,EAAE,EAAA;AAJrD,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAK3C,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG;AACb,YAAA,GAAG,eAAe;AAClB,YAAA,GAAG,OAAO;SACX,CAAC;KACH;IAES,YAAY,CAAC,gBAAoC,EAAE,EAAA;AAC3D,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;KACnF;AAES,IAAA,cAAc,CAAC,IAAY,EAAE,aAAA,GAAoC,EAAE,EAAA;QAC3E,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACnD,SAAA;AAED,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAK,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;KACxF;AAES,IAAA,cAAc,CAAC,EAAS,EAAE,IAAY,EAAE,gBAAoC,EAAE,EAAA;QACtF,IAAI,CAAC,EAAE,EAAE;AACP,YAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACnD,SAAA;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAK,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;KAClG;AAES,IAAA,cAAc,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACxE,IAAI,CAAC,EAAE,EAAE;AACP,YAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACnD,SAAA;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAK,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;KAC/F;AAES,IAAA,YAAY,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACtE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAK,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;KAC5F;AAEO,IAAA,kBAAkB,CAAC,aAAiC,EAAA;QAC1D,OAAO;YACL,GAAG,IAAI,CAAC,OAAO;AACf,YAAA,GAAG,aAAa;SACjB,CAAC;KACH;AACF;;ACnDK,MAAgB,WAAgB,SAAQ,mBAAuB,CAAA;IACnE,WAAsB,CAAA,QAAgB,EAAE,OAAA,GAA8B,EAAE,EAAA;AACtE,QAAA,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;KAC1B;IAED,IAAI,CAAC,gBAAoC,EAAE,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;KACzC;AAED,IAAA,MAAM,CAAC,KAAkB,EAAE,aAAA,GAAoC,EAAE,EAAA;QAC/D,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;KAClD;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,KAAkB,EAAE,gBAAoC,EAAE,EAAA;QAC1E,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;KACtD;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACtD,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;KAC/C;AAED,IAAA,IAAI,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACpD,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;KAC7C;AACF;;ACxBK,MAAgB,kBAAuB,SAAQ,mBAAuB,CAAA;IAC1E,WAAsB,CAAA,QAAgB,EAAE,OAAA,GAA8B,EAAE,EAAA;AACtE,QAAA,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;KAC1B;IAED,IAAI,CAAC,gBAAoC,EAAE,EAAA;QACzC,OAAO,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;KACzD;AAED,IAAA,MAAM,CAAC,IAAY,EAAE,aAAA,GAAoC,EAAE,EAAA;QACzD,OAAO,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;KACjE;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,IAAY,EAAE,gBAAoC,EAAE,EAAA;AACpE,QAAA,OAAO,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;KACrE;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACtD,OAAO,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC;KAC/D;AAED,IAAA,IAAI,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACpD,OAAO,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC;KAC7D;AACF;;ACvBK,MAAgB,oBAA6B,SAAQ,mBAAuB,CAAA;AAEhF,IAAA,WAAA,CAAsB,QAAgB,EAAE,SAA4B,EAAE,UAA8B,EAAE,EAAA;AACpG,QAAA,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC5B;IAED,IAAI,CAAC,gBAAoC,EAAE,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;KACtF;AAED,IAAA,MAAM,CAAC,KAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChD,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KAC5F;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,KAAkB,EAAE,gBAAoC,EAAE,EAAA;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChD,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KAChG;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;AACtD,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KACpF;AAED,IAAA,IAAI,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;AACpD,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KAClF;AAEO,IAAA,iCAAiC,CAAC,OAAyB,EAAA;QACjE,OAAO,OAAO,CAAC,IAAI,CACjBA,KAAG,CAAC,CAAC,IAAI,KAAI;AACX,YAAA,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE;AACjB,gBAAA,OAAO,EAAE,CAAC;AACX,aAAA;AAED,YAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;SAC1D,CAAC,CACH,CAAC;KACH;AAEO,IAAA,yBAAyB,CAAC,OAAuB,EAAA;QACvD,OAAO,OAAO,CAAC,IAAI,CAACA,KAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KACzE;AACF;;AC5CK,MAAgB,2BAAoC,SAAQ,mBAAuB,CAAA;AAEvF,IAAA,WAAA,CAAsB,QAAgB,EAAE,SAA4B,EAAE,UAA8B,EAAE,EAAA;AACpG,QAAA,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC5B;IAED,IAAI,CAAC,gBAAoC,EAAE,EAAA;QACzC,OAAO,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjH;AAED,IAAA,MAAM,CAAC,KAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,cAAc,CACnB,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC/F,CAAC;KACH;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,KAAkB,EAAE,gBAAoC,EAAE,EAAA;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,cAAc,CACnB,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACnG,CAAC;KACH;AAED,IAAA,MAAM,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACtD,OAAO,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC/G;AAED,IAAA,IAAI,CAAC,EAAS,EAAE,aAAA,GAAoC,EAAE,EAAA;QACpD,OAAO,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC7G;AAEO,IAAA,iCAAiC,CAAC,OAAyB,EAAA;QACjE,OAAO,OAAO,CAAC,IAAI,CACjBA,KAAG,CAAC,CAAC,IAAI,KAAI;AACX,YAAA,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE;AACjB,gBAAA,OAAO,EAAE,CAAC;AACX,aAAA;AAED,YAAA,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;SAC1D,CAAC,CACH,CAAC;KACH;AAEO,IAAA,yBAAyB,CAAC,OAAuB,EAAA;QACvD,OAAO,OAAO,CAAC,IAAI,CAACA,KAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KACzE;AACF;;MCtDqB,SAAS,CAAA;AAG9B;;ACHD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"angular-base-lib.mjs","sources":["../../../../libs/angular-base/src/lib/navigation/navigation.service.ts","../../../../libs/angular-base/src/lib/model-component/base-model-detail.component.ts","../../../../libs/angular-base/src/lib/model-component/base.component.ts","../../../../libs/angular-base/src/lib/model-component/base-model.component.ts","../../../../libs/angular-base/src/lib/model-component/base-model-edit.component.ts","../../../../libs/angular-base/src/lib/model-component/base-model-list.component.ts","../../../../libs/angular-base/src/lib/navigation/back-button.directive.ts","../../../../libs/angular-base/src/lib/util/is-nil.ts","../../../../libs/angular-base/src/lib/util/remove-nil-values-recursively.ts","../../../../libs/angular-base/src/lib/forms/form-util.ts","../../../../libs/angular-base/src/lib/util/prepare-optional-string.ts","../../../../libs/angular-base/src/lib/auth/models/pending-auth-state.ts","../../../../libs/angular-base/src/lib/auth/models/logged-in-auth-state.ts","../../../../libs/angular-base/src/lib/auth/models/not-logged-in-auth-state.ts","../../../../libs/angular-base/src/lib/auth/base-auth.service.ts","../../../../libs/angular-base/src/lib/auth/guards/logged-in.guard.ts","../../../../libs/angular-base/src/lib/auth/guards/logged-out.guard.ts","../../../../libs/angular-base/src/lib/dao/http-base-dao-options.ts","../../../../libs/angular-base/src/lib/dao/internal/internal-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/promise-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/converted-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/converted-promise-http-base-dao.ts","../../../../libs/angular-base/src/lib/dao/converter.ts","../../../../libs/angular-base/src/lib/base/base-control-value-accessor.ts","../../../../libs/angular-base/src/angular-base-lib.ts"],"sourcesContent":["import { NavigationEnd, Router } from '@angular/router';\nimport { inject, Injectable } from '@angular/core';\nimport { Location } from '@angular/common';\n\n@Injectable({ providedIn: 'root' })\nexport class NavigationService {\n private history: string[] = [];\n private readonly router = inject(Router);\n private readonly location = inject(Location);\n\n constructor() {\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationEnd) {\n this.history.push(event.urlAfterRedirects);\n }\n });\n }\n\n reset(): void {\n this.history = [];\n }\n\n back(fallbackRoute = '/'): void {\n this.history.pop();\n if (this.history.length > 0) {\n this.location.back();\n } else {\n this.router.navigate([fallbackRoute]);\n }\n }\n}\n","import { inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { NavigationService } from '../navigation/navigation.service';\nimport { ModelAction } from './action';\nimport { Identifiable } from 'angular-base-dao';\n\nexport abstract class BaseModelDetailComponent<TM extends Identifiable> {\n model: TM | null = null;\n\n protected readonly router = inject(Router);\n protected readonly navigationService = inject(NavigationService);\n\n protected constructor(protected baseRoute: string) {}\n\n handleModelAction(modelAction: ModelAction<TM>): void {\n switch (modelAction.action) {\n case 'show':\n this.showList();\n break;\n\n case 'edit':\n this.editModel();\n break;\n\n case 'delete':\n this.deleteModel();\n break;\n }\n }\n\n showList(): void {\n this.router.navigate([this.baseRoute]);\n }\n\n async editModel(): Promise<void> {\n if (!this.model) {\n return;\n }\n\n await this.router.navigate([`${this.baseRoute}/edit`, this.model.id]);\n }\n\n async deleteModel(): Promise<void> {\n const model = this.model;\n\n if (!model) {\n return;\n }\n\n if (await this.handleDeleteModel(model)) {\n await this.router.navigate([`${this.baseRoute}`]);\n }\n }\n\n goBack(): void {\n this.navigationService.back(this.baseRoute);\n }\n\n abstract handleDeleteModel(model: TM): Promise<boolean>;\n}\n","/**\n * Component used for all pages that can directly navigate back to the home page if no other route was found\n */\nimport { inject } from '@angular/core';\nimport { NavigationService } from '../navigation/navigation.service';\n\nexport abstract class BaseComponent {\n backRoute = '/';\n\n protected readonly navigationService = inject(NavigationService);\n\n goBack(): void {\n this.navigationService.back(this.backRoute);\n }\n}\n","import { Router } from '@angular/router';\nimport { BaseComponent } from './base.component';\nimport { inject } from '@angular/core';\nimport { ModelAction } from './action';\n\nexport abstract class BaseModelComponent<TM> extends BaseComponent {\n protected readonly router = inject(Router);\n\n protected constructor(protected baseRoute: string) {\n super();\n this.backRoute = this.baseRoute;\n }\n\n showList(): void {\n this.router.navigate([this.baseRoute]);\n }\n\n handleModelAction(modelAction: ModelAction<TM>): void {\n switch (modelAction.action) {\n case 'back_to-list':\n this.showList();\n break;\n }\n }\n}\n","import { BaseModelComponent } from './base-model.component';\nimport { Identifiable } from 'angular-base-dao';\n\nexport abstract class BaseModelEditComponent<TM extends Identifiable> extends BaseModelComponent<TM> {\n model: TM | null = null;\n}\n","import { BaseModelComponent } from './base-model.component';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ModelAction } from './action';\nimport { DaoId, Identifiable } from 'angular-base-dao';\n\nexport abstract class BaseModelListComponent<TM extends Identifiable> extends BaseModelComponent<TM> {\n readonly dataSource = new MatTableDataSource<TM>([]);\n\n protected constructor(baseRoute: string) {\n super(baseRoute);\n\n this.backRoute = '/';\n }\n\n override handleModelAction(modelAction: ModelAction<TM>): void {\n switch (modelAction.action) {\n case 'show':\n this.showDetail(modelAction.model.id);\n break;\n\n case 'edit':\n this.editModel(modelAction.model.id);\n break;\n\n case 'delete':\n this.deleteModel(modelAction.model);\n break;\n }\n }\n\n showDetail(id: DaoId): void {\n this.router.navigate([this.baseRoute, id]);\n }\n\n editModel(id: DaoId): void {\n this.router.navigate([`${this.baseRoute}/edit`, id]);\n }\n\n createModel(): void {\n this.router.navigate([`${this.baseRoute}/add`]);\n }\n\n async deleteModel(model: TM): Promise<void> {\n const [deleted, newList] = await this.handleModelDelete(model);\n if (deleted && newList) {\n this.dataSource.data = newList;\n }\n }\n\n abstract handleModelDelete(model: TM): Promise<[boolean, TM[]]>;\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { NavigationService } from './navigation.service';\n\n@Directive({\n selector: '[ngLibBackButton]',\n standalone: true\n})\nexport class BackButtonDirective {\n private readonly navigation = inject(NavigationService);\n\n @HostListener('click')\n onClick(): void {\n this.navigation.back();\n }\n}\n","export const isNil = (obj: unknown): boolean => obj === null || obj === undefined;\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { isNil } from './is-nil';\n\nexport const removeNullValuesRecursively = (object: any): any => {\n if (Array.isArray(object)) {\n const newObject = [];\n\n for (const obj of object) {\n newObject.push(removeNullValuesRecursively(obj));\n }\n\n return newObject;\n } else if (typeof object === 'object') {\n const newObject: any = {};\n\n for (const key in object) {\n if (isNil(object[key])) {\n continue;\n }\n\n if (typeof object[key] === 'object') {\n const objectToSet = removeNullValuesRecursively(object[key]);\n if (Object.keys(objectToSet)?.length) {\n newObject[key] = objectToSet;\n }\n } else {\n newObject[key] = object[key];\n }\n }\n\n return newObject;\n } else {\n return object;\n }\n};\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { AbstractControl, FormGroup } from '@angular/forms';\nimport { removeNullValuesRecursively } from '../util/remove-nil-values-recursively';\n\nexport class FormUtil {\n static markAllControlsAsTouched(formGroup: FormGroup, recursive = true): void {\n Object.values(formGroup.controls).forEach((control: AbstractControl) => {\n if (recursive && control instanceof FormGroup) {\n FormUtil.markAllControlsAsTouched(control);\n } else {\n control.patchValue(control.value);\n control.markAllAsTouched();\n }\n });\n }\n\n static getUpdatedFormData(objectToAdd: any, oldData: any, newData: any): any {\n for (const newKey in newData) {\n const [, changed] = FormUtil.getDifferenceRecursively(oldData[newKey], newData[newKey]);\n if (changed && newData[newKey]) {\n objectToAdd[newKey] = removeNullValuesRecursively(newData[newKey]);\n }\n }\n return objectToAdd;\n }\n\n static getDifferenceRecursively(oldData: any, newData: any): [any, boolean] {\n let changed = false;\n let object: any = {};\n\n if (typeof newData !== typeof oldData) {\n changed = true;\n object = newData;\n } else if (newData && typeof newData === 'object') {\n const allKeys = new Set([...Object.keys(newData), ...Object.keys(oldData)]);\n for (const newKey of allKeys) {\n if (!newData[newKey] && !oldData[newKey]) {\n continue;\n }\n\n // Check recursively\n const [innerDiff, innerChanged] = FormUtil.getDifferenceRecursively(oldData[newKey], newData[newKey]);\n if (innerChanged) {\n changed = true;\n object[newKey] = innerDiff;\n }\n }\n } else if (newData !== oldData) {\n changed = true;\n object = newData;\n }\n\n return [object, changed];\n }\n}\n","export const prepareOptionalString = (value: string | null | undefined): string | undefined => {\n if (value === null || value === '') {\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n return value;\n};\n","import { BaseAuthState } from './base-auth-state';\nimport { LoginState } from './login-state.type';\n\nexport class PendingAuthState implements BaseAuthState<unknown> {\n readonly loginState: LoginState = 'pending';\n readonly user = null;\n}\n","import { BaseAuthState } from './base-auth-state';\nimport { LoginState } from './login-state.type';\n\nexport class LoggedInAuthState<T> implements BaseAuthState<T> {\n readonly loginState: LoginState = 'logged-in';\n readonly user: T;\n\n constructor(user: T) {\n this.user = user;\n }\n}\n","import { BaseAuthState } from './base-auth-state';\nimport { LoginState } from './login-state.type';\n\nexport class NotLoggedInAuthState implements BaseAuthState<unknown> {\n readonly loginState: LoginState = 'logged-out';\n readonly user = null;\n}\n","import { BehaviorSubject, filter, Observable } from 'rxjs';\nimport { BaseAuthState, LoggedInAuthState, LoginState, NotLoggedInAuthState, PendingAuthState } from './models';\nimport { map } from 'rxjs/operators';\n\nexport abstract class BaseAuthService<T> {\n private readonly authStateSubject = new BehaviorSubject<BaseAuthState<T>>(new PendingAuthState());\n private readonly _authState$: Observable<BaseAuthState<T>>;\n private readonly _loginState$: Observable<LoginState>;\n private readonly _readyLoginState$: Observable<LoginState>;\n private readonly _readyAuthState$: Observable<BaseAuthState<T>>;\n private readonly _user$: Observable<T | null>;\n private readonly _readyUser$: Observable<T | null>;\n private readonly _isLoggedIn$: Observable<boolean>;\n private readonly defaultLoginRoute = '/auth/login';\n\n get authState$(): Observable<BaseAuthState<T>> {\n return this._authState$;\n }\n\n get loginState$(): Observable<LoginState> {\n return this._loginState$;\n }\n\n get readyLoginState$(): Observable<LoginState> {\n return this._readyLoginState$;\n }\n\n get readyAuthState$(): Observable<BaseAuthState<T>> {\n return this._readyAuthState$;\n }\n\n get user$(): Observable<T | null> {\n return this._user$;\n }\n\n get readyUser$(): Observable<T | null> {\n return this._readyUser$;\n }\n\n get isLoggedIn$(): Observable<boolean> {\n return this._isLoggedIn$;\n }\n\n get loginRoute(): string {\n return this.defaultLoginRoute;\n }\n\n protected constructor() {\n this._authState$ = this.authStateSubject.asObservable();\n this._user$ = this._authState$.pipe(map((elem) => elem.user));\n this._loginState$ = this._authState$.pipe(map((elem) => elem.loginState));\n this._isLoggedIn$ = this._loginState$.pipe(map((state) => state === 'logged-in'));\n\n this._readyAuthState$ = this._authState$.pipe(filter((elem) => elem.loginState !== 'pending'));\n this._readyLoginState$ = this._readyAuthState$.pipe(map((elem) => elem.loginState));\n this._readyUser$ = this._readyAuthState$.pipe(map((elem) => elem.user));\n }\n\n protected userLoggedIn(user: T): void {\n this.authStateSubject.next(new LoggedInAuthState<T>(user));\n }\n\n protected userLoggedOut(): void {\n this.authStateSubject.next(new NotLoggedInAuthState());\n }\n}\n","import { inject } from '@angular/core';\nimport { CanActivateFn, Router, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { BaseAuthService } from '../base-auth.service';\nexport const loggedInGuardFn: CanActivateFn = (): Observable<boolean | UrlTree> => {\n const router = inject(Router);\n return inject(BaseAuthService).readyAuthState$.pipe(\n map((state) => {\n if (state.loginState === 'logged-in') {\n return true;\n }\n\n return router.createUrlTree(['/auth/login']);\n }),\n );\n};\n","import { inject } from '@angular/core';\nimport { CanActivateFn, Router, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { BaseAuthService } from '../base-auth.service';\n\nexport const loggedOutGuardFn: CanActivateFn = (): Observable<boolean | UrlTree> => {\n const router = inject(Router);\n return inject(BaseAuthService).readyLoginState$.pipe(\n map((state) => {\n if (state !== 'logged-in') {\n return true;\n }\n\n return router.createUrlTree(['/']);\n }),\n );\n};\n","import { HttpHeaders } from '@angular/common/http';\n\nexport interface HttpBaseDaoOptions {\n withCredentials?: boolean;\n headers?: HttpHeaders;\n}\n\nexport const DEFAULT_OPTIONS: HttpBaseDaoOptions = {\n withCredentials: true,\n};\n","import { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { inject } from '@angular/core';\nimport { DEFAULT_OPTIONS, HttpBaseDaoOptions } from '../http-base-dao-options';\nimport { DaoId } from '../dao-id';\n\nexport abstract class InternalHttpBaseDao<TI> {\n protected readonly http = inject(HttpClient);\n protected readonly options: HttpBaseDaoOptions;\n protected readonly routeUrl: string;\n\n protected constructor(routeUrl: string, options: HttpBaseDaoOptions = {}) {\n this.routeUrl = routeUrl;\n this.options = {\n ...DEFAULT_OPTIONS,\n ...options\n };\n }\n\n protected listInternal(customOptions: HttpBaseDaoOptions = {}): Observable<TI[]> {\n return this.http.get<TI[]>(this.routeUrl, this.mergeCustomOptions(customOptions));\n }\n\n protected createInternal(data: object, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n if (!data) {\n throw new Error('Entry must exist to be created');\n }\n\n return this.http.post<TI>(this.routeUrl, data, this.mergeCustomOptions(customOptions));\n }\n\n protected updateInternal(id: DaoId, data: object, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n if (!id) {\n throw new Error('Entry must exist to be updated');\n }\n\n return this.http.put<TI>(this.routeUrl + '/' + id, data, this.mergeCustomOptions(customOptions));\n }\n\n protected deleteInternal(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n if (!id) {\n throw new Error('Entry must exist to be deleted');\n }\n return this.http.delete<TI>(this.routeUrl + '/' + id, this.mergeCustomOptions(customOptions));\n }\n\n protected readInternal(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.http.get<TI>(this.routeUrl + '/' + id, this.mergeCustomOptions(customOptions));\n }\n\n private mergeCustomOptions(customOptions: HttpBaseDaoOptions): HttpBaseDaoOptions {\n return {\n ...this.options,\n ...customOptions\n };\n }\n}\n","import { Observable } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\n\nexport abstract class HttpBaseDao<TI> extends InternalHttpBaseDao<TI> {\n protected constructor(routeUrl: string, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Observable<TI[]> {\n return this.listInternal(customOptions);\n }\n\n create(entry: Partial<TI>, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.createInternal(entry, customOptions);\n }\n\n update(id: DaoId, entry: Partial<TI>, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.updateInternal(id, entry, customOptions);\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.deleteInternal(id, customOptions);\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TI> {\n return this.readInternal(id, customOptions);\n }\n}\n","import { firstValueFrom } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\n\nexport abstract class PromiseHttpBaseDao<TI> extends InternalHttpBaseDao<TI> {\n protected constructor(routeUrl: string, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Promise<TI[]> {\n return firstValueFrom(this.listInternal(customOptions));\n }\n\n create(data: object, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.createInternal(data, customOptions));\n }\n\n update(id: DaoId, data: object, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.updateInternal(id, data, customOptions));\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.deleteInternal(id, customOptions));\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TI> {\n return firstValueFrom(this.readInternal(id, customOptions));\n }\n}\n","import { map, Observable } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\nimport { Converter } from './converter';\n\nexport abstract class ConvertedHttpBaseDao<TI, TM> extends InternalHttpBaseDao<TI> {\n protected readonly converter: Converter<TI, TM>;\n protected constructor(routeUrl: string, converter: Converter<TI, TM>, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n this.converter = converter;\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Observable<TM[]> {\n return this.listInternal(customOptions).pipe(this.mapServerInterfaceListToModelList);\n }\n\n create(entry: TM, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n const createData = this.converter.toJson(entry);\n return this.createInternal(createData, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n update(id: DaoId, entry: Partial<TM>, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n const updateData = this.converter.toJson(entry);\n return this.updateInternal(id, updateData, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n return this.deleteInternal(id, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Observable<TM> {\n return this.readInternal(id, customOptions).pipe(this.mapServerInterfaceToModel);\n }\n\n private mapServerInterfaceListToModelList(source$: Observable<TI[]>): Observable<TM[]> {\n return source$.pipe(\n map((list) => {\n if (!list?.length) {\n return [];\n }\n\n return list.map((elem) => this.converter.fromJson(elem));\n }),\n );\n }\n\n private mapServerInterfaceToModel(source$: Observable<TI>): Observable<TM> {\n return source$.pipe(map((element) => this.converter.fromJson(element)));\n }\n}\n","import { firstValueFrom, map, Observable } from 'rxjs';\nimport { HttpBaseDaoOptions } from './http-base-dao-options';\nimport { DaoId } from './dao-id';\nimport { InternalHttpBaseDao } from './internal/internal-http-base-dao';\nimport { Converter } from './converter';\n\nexport abstract class ConvertedPromiseHttpBaseDao<TI, TM> extends InternalHttpBaseDao<TI> {\n protected readonly converter: Converter<TI, TM>;\n protected constructor(routeUrl: string, converter: Converter<TI, TM>, options: HttpBaseDaoOptions = {}) {\n super(routeUrl, options);\n this.converter = converter;\n }\n\n list(customOptions: HttpBaseDaoOptions = {}): Promise<TM[]> {\n return firstValueFrom(this.listInternal(customOptions).pipe(this.mapServerInterfaceListToModelList.bind(this)));\n }\n\n create(entry: TM, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n const createData = this.converter.toJson(entry);\n return firstValueFrom(\n this.createInternal(createData, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)),\n );\n }\n\n update(id: DaoId, entry: Partial<TM>, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n const updateData = this.converter.toJson(entry);\n return firstValueFrom(\n this.updateInternal(id, updateData, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)),\n );\n }\n\n delete(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n return firstValueFrom(this.deleteInternal(id, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)));\n }\n\n read(id: DaoId, customOptions: HttpBaseDaoOptions = {}): Promise<TM> {\n return firstValueFrom(this.readInternal(id, customOptions).pipe(this.mapServerInterfaceToModel.bind(this)));\n }\n\n private mapServerInterfaceListToModelList(source$: Observable<TI[]>): Observable<TM[]> {\n return source$.pipe(\n map((list) => {\n if (!list?.length) {\n return [];\n }\n\n return list.map((elem) => this.converter.fromJson(elem));\n }),\n );\n }\n\n private mapServerInterfaceToModel(source$: Observable<TI>): Observable<TM> {\n return source$.pipe(map((element) => this.converter.fromJson(element)));\n }\n}\n","export abstract class Converter<TI, TM> {\n abstract fromJson(response: TI): TM;\n abstract toJson(model: Partial<TM>): Partial<TI>;\n}\n","import { ControlValueAccessor } from '@angular/forms';\nimport { Directive, EventEmitter, Input, Output } from '@angular/core';\nimport { ValueChangeCallback } from 'angular-base';\n\n@Directive()\nexport abstract class BaseControlValueAccessor<T = string> implements ControlValueAccessor {\n @Output() valueChanged: EventEmitter<T> = new EventEmitter<T>();\n\n onChange: ValueChangeCallback<T> | null = null;\n onTouched: VoidFunction | null = null;\n\n protected _value!: T;\n\n get value(): T {\n return this._value;\n }\n\n @Input() set value(value: T) {\n this.markAsTouched();\n this._value = value;\n this.onChange?.(this._value);\n this.valueChanged.emit(this._value);\n }\n\n writeValue(value: T): void {\n this.value = value;\n }\n\n registerOnChange(onChange: ValueChangeCallback<T>): void {\n this.onChange = onChange;\n }\n\n registerOnTouched(onTouched: VoidFunction): void {\n this.onTouched = onTouched;\n }\n\n markAsTouched(): void {\n if (this.onTouched) {\n this.onTouched();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map"],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ControlValueAccessor } from '@angular/forms';
|
|
2
|
+
import { EventEmitter } from '@angular/core';
|
|
3
|
+
import { ValueChangeCallback } from 'angular-base';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare abstract class BaseControlValueAccessor<T = string> implements ControlValueAccessor {
|
|
6
|
+
valueChanged: EventEmitter<T>;
|
|
7
|
+
onChange: ValueChangeCallback<T> | null;
|
|
8
|
+
onTouched: VoidFunction | null;
|
|
9
|
+
protected _value: T;
|
|
10
|
+
get value(): T;
|
|
11
|
+
set value(value: T);
|
|
12
|
+
writeValue(value: T): void;
|
|
13
|
+
registerOnChange(onChange: ValueChangeCallback<T>): void;
|
|
14
|
+
registerOnTouched(onTouched: VoidFunction): void;
|
|
15
|
+
markAsTouched(): void;
|
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BaseControlValueAccessor<any>, never>;
|
|
17
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseControlValueAccessor<any>, never, never, { "value": { "alias": "value"; "required": false; }; }, { "valueChanged": "valueChanged"; }, never, never, false, never>;
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { BaseControlValueAccessor } from './base-control-value-accessor';
|
package/lib/index.d.ts
CHANGED