@stemy/ngx-utils 17.1.5 → 19.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/stemy-ngx-utils-tools.mjs.map +1 -1
- package/fesm2022/stemy-ngx-utils.mjs +265 -223
- package/fesm2022/stemy-ngx-utils.mjs.map +1 -1
- package/ngx-utils/common-types.d.ts +1 -0
- package/ngx-utils/ngx-utils.imports.d.ts +2 -2
- package/ngx-utils/ngx-utils.module.d.ts +1 -1
- package/package.json +13 -19
- package/esm2022/ngx-utils/common-types.mjs +0 -122
- package/esm2022/ngx-utils/components/dynamic-table/dynamic-table.component.mjs +0 -210
- package/esm2022/ngx-utils/components/pagination-menu/pagination-menu.component.mjs +0 -101
- package/esm2022/ngx-utils/components/unordered-list/unordered-list.component.mjs +0 -65
- package/esm2022/ngx-utils/directives/async-method.base.mjs +0 -90
- package/esm2022/ngx-utils/directives/async-method.directive.mjs +0 -21
- package/esm2022/ngx-utils/directives/background.directive.mjs +0 -51
- package/esm2022/ngx-utils/directives/dynamic-table-template.directive.mjs +0 -20
- package/esm2022/ngx-utils/directives/global-template.directive.mjs +0 -28
- package/esm2022/ngx-utils/directives/icon.directive.mjs +0 -67
- package/esm2022/ngx-utils/directives/ngx-template-outlet.directive.mjs +0 -90
- package/esm2022/ngx-utils/directives/pagination-item.directive.mjs +0 -34
- package/esm2022/ngx-utils/directives/pagination.directive.mjs +0 -84
- package/esm2022/ngx-utils/directives/resource-if.directive.mjs +0 -50
- package/esm2022/ngx-utils/directives/sticky-class.directive.mjs +0 -34
- package/esm2022/ngx-utils/directives/sticky.directive.mjs +0 -55
- package/esm2022/ngx-utils/directives/unordered-list-item.directive.mjs +0 -79
- package/esm2022/ngx-utils/directives/unordered-list-template.directive.mjs +0 -20
- package/esm2022/ngx-utils/ngx-utils.imports.mjs +0 -178
- package/esm2022/ngx-utils/ngx-utils.module.mjs +0 -204
- package/esm2022/ngx-utils/pipes/chunk.pipe.mjs +0 -25
- package/esm2022/ngx-utils/pipes/entries.pipe.mjs +0 -28
- package/esm2022/ngx-utils/pipes/extra-item-properties.pipe.mjs +0 -31
- package/esm2022/ngx-utils/pipes/filter.pipe.mjs +0 -37
- package/esm2022/ngx-utils/pipes/find.pipe.mjs +0 -29
- package/esm2022/ngx-utils/pipes/format-number.pipe.mjs +0 -21
- package/esm2022/ngx-utils/pipes/get-offset.pipe.mjs +0 -17
- package/esm2022/ngx-utils/pipes/get-type.pipe.mjs +0 -16
- package/esm2022/ngx-utils/pipes/get-value.pipe.mjs +0 -17
- package/esm2022/ngx-utils/pipes/global-template.pipe.mjs +0 -39
- package/esm2022/ngx-utils/pipes/group-by.pipe.mjs +0 -27
- package/esm2022/ngx-utils/pipes/is-type.pipe.mjs +0 -16
- package/esm2022/ngx-utils/pipes/join.pipe.mjs +0 -19
- package/esm2022/ngx-utils/pipes/keys.pipe.mjs +0 -22
- package/esm2022/ngx-utils/pipes/map.pipe.mjs +0 -29
- package/esm2022/ngx-utils/pipes/max.pipe.mjs +0 -26
- package/esm2022/ngx-utils/pipes/min.pipe.mjs +0 -26
- package/esm2022/ngx-utils/pipes/pop.pipe.mjs +0 -16
- package/esm2022/ngx-utils/pipes/reduce.pipe.mjs +0 -30
- package/esm2022/ngx-utils/pipes/remap.pipe.mjs +0 -32
- package/esm2022/ngx-utils/pipes/replace.pipe.mjs +0 -17
- package/esm2022/ngx-utils/pipes/reverse.pipe.mjs +0 -24
- package/esm2022/ngx-utils/pipes/round.pipe.mjs +0 -21
- package/esm2022/ngx-utils/pipes/safe-html.pipe.mjs +0 -34
- package/esm2022/ngx-utils/pipes/shift.pipe.mjs +0 -16
- package/esm2022/ngx-utils/pipes/split.pipe.mjs +0 -16
- package/esm2022/ngx-utils/pipes/translate.pipe.mjs +0 -86
- package/esm2022/ngx-utils/pipes/values.pipe.mjs +0 -22
- package/esm2022/ngx-utils/plugins/resize-event.plugin.mjs +0 -78
- package/esm2022/ngx-utils/plugins/scroll-event.plugin.mjs +0 -39
- package/esm2022/ngx-utils/services/acl.service.mjs +0 -84
- package/esm2022/ngx-utils/services/api.service.mjs +0 -42
- package/esm2022/ngx-utils/services/auth.service.mjs +0 -14
- package/esm2022/ngx-utils/services/base-http.client.mjs +0 -47
- package/esm2022/ngx-utils/services/base-http.service.mjs +0 -305
- package/esm2022/ngx-utils/services/config.service.mjs +0 -130
- package/esm2022/ngx-utils/services/error-handler.service.mjs +0 -49
- package/esm2022/ngx-utils/services/events.service.mjs +0 -26
- package/esm2022/ngx-utils/services/formatter.service.mjs +0 -49
- package/esm2022/ngx-utils/services/global-template.service.mjs +0 -37
- package/esm2022/ngx-utils/services/icon.service.mjs +0 -26
- package/esm2022/ngx-utils/services/language.service.mjs +0 -124
- package/esm2022/ngx-utils/services/local-http.service.mjs +0 -47
- package/esm2022/ngx-utils/services/open-api.service.mjs +0 -40
- package/esm2022/ngx-utils/services/promise.service.mjs +0 -55
- package/esm2022/ngx-utils/services/state.service.mjs +0 -185
- package/esm2022/ngx-utils/services/static-language.service.mjs +0 -166
- package/esm2022/ngx-utils/services/storage.service.mjs +0 -49
- package/esm2022/ngx-utils/services/toaster.service.mjs +0 -32
- package/esm2022/ngx-utils/services/translated-url.serializer.mjs +0 -73
- package/esm2022/ngx-utils/services/universal.service.mjs +0 -81
- package/esm2022/ngx-utils/services/wasm.service.mjs +0 -46
- package/esm2022/ngx-utils/utils/ajax-request-handler.mjs +0 -40
- package/esm2022/ngx-utils/utils/array.utils.mjs +0 -107
- package/esm2022/ngx-utils/utils/auth.guard.mjs +0 -181
- package/esm2022/ngx-utils/utils/cached-factory.mjs +0 -30
- package/esm2022/ngx-utils/utils/canvas.utils.mjs +0 -388
- package/esm2022/ngx-utils/utils/date.utils.mjs +0 -29
- package/esm2022/ngx-utils/utils/file-system.mjs +0 -25
- package/esm2022/ngx-utils/utils/file.utils.mjs +0 -90
- package/esm2022/ngx-utils/utils/generic-value.mjs +0 -20
- package/esm2022/ngx-utils/utils/geometry.mjs +0 -132
- package/esm2022/ngx-utils/utils/initializer.mjs +0 -20
- package/esm2022/ngx-utils/utils/jsonfn.mjs +0 -45
- package/esm2022/ngx-utils/utils/loader.utils.mjs +0 -55
- package/esm2022/ngx-utils/utils/math.utils.mjs +0 -44
- package/esm2022/ngx-utils/utils/object.utils.mjs +0 -320
- package/esm2022/ngx-utils/utils/observable.utils.mjs +0 -59
- package/esm2022/ngx-utils/utils/promise.utils.mjs +0 -23
- package/esm2022/ngx-utils/utils/reflect.utils.mjs +0 -33
- package/esm2022/ngx-utils/utils/set.utils.mjs +0 -20
- package/esm2022/ngx-utils/utils/string.utils.mjs +0 -41
- package/esm2022/ngx-utils/utils/timer.utils.mjs +0 -52
- package/esm2022/ngx-utils/utils/unique.utils.mjs +0 -24
- package/esm2022/ngx-utils/utils/vector.mjs +0 -77
- package/esm2022/ngx-utils/utils/wasi.mjs +0 -159
- package/esm2022/ngx-utils/utils/wasm-worker-proxy.mjs +0 -99
- package/esm2022/ngx-utils/utils/with-options-provider.mjs +0 -24
- package/esm2022/public_api.mjs +0 -96
- package/esm2022/stemy-ngx-utils.mjs +0 -5
- package/esm2022/tools/config.mjs +0 -71
- package/esm2022/tools/public_api.mjs +0 -2
- package/esm2022/tools/stemy-ngx-utils-tools.mjs +0 -5
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, Input } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../../utils/object.utils";
|
|
3
|
-
import { StateService } from "../../services/state.service";
|
|
4
|
-
import { PaginationDirective } from "../../directives/pagination.directive";
|
|
5
|
-
import { ICON_SERVICE } from "../../common-types";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../services/state.service";
|
|
8
|
-
import * as i2 from "../../directives/pagination.directive";
|
|
9
|
-
import * as i3 from "@angular/common";
|
|
10
|
-
import * as i4 from "../../pipes/safe-html.pipe";
|
|
11
|
-
export class PaginationMenuComponent {
|
|
12
|
-
get hasPrev() {
|
|
13
|
-
return this.pagination.page > 1;
|
|
14
|
-
}
|
|
15
|
-
get hasNext() {
|
|
16
|
-
return this.pagination.page < this.pagination.maxPage;
|
|
17
|
-
}
|
|
18
|
-
constructor(state, pagination, icons) {
|
|
19
|
-
this.state = state;
|
|
20
|
-
this.pagination = pagination;
|
|
21
|
-
this.icons = icons;
|
|
22
|
-
this.maxSize = 5;
|
|
23
|
-
this.directionLinks = true;
|
|
24
|
-
this.boundaryLinks = true;
|
|
25
|
-
this.firstLabel = `<<`;
|
|
26
|
-
this.prevLabel = `<`;
|
|
27
|
-
this.nextLabel = `>`;
|
|
28
|
-
this.lastLabel = `>>`;
|
|
29
|
-
}
|
|
30
|
-
ngOnInit() {
|
|
31
|
-
this.onRefresh = this.pagination.onRefresh.subscribe(() => this.setPages());
|
|
32
|
-
this.setIcon("firstLabel", "first-page");
|
|
33
|
-
this.setIcon("prevLabel", "prev-page");
|
|
34
|
-
this.setIcon("nextLabel", "next-page");
|
|
35
|
-
this.setIcon("lastLabel", "last-page");
|
|
36
|
-
}
|
|
37
|
-
ngOnDestroy() {
|
|
38
|
-
if (!this.onRefresh)
|
|
39
|
-
return;
|
|
40
|
-
this.onRefresh.unsubscribe();
|
|
41
|
-
}
|
|
42
|
-
ngOnChanges(changes) {
|
|
43
|
-
this.maxSize = isNaN(this.maxSize) || this.maxSize <= 0 ? 5 : this.maxSize;
|
|
44
|
-
this.directionLinks = ObjectUtils.isBoolean(this.directionLinks) ? this.directionLinks : true;
|
|
45
|
-
this.boundaryLinks = ObjectUtils.isBoolean(this.boundaryLinks) ? this.boundaryLinks : true;
|
|
46
|
-
this.setPages();
|
|
47
|
-
}
|
|
48
|
-
paginate(page) {
|
|
49
|
-
if (this.pagination.page == page || this.pagination.maxPage < page || page < 1)
|
|
50
|
-
return;
|
|
51
|
-
if (!this.urlParam) {
|
|
52
|
-
this.pagination.paginate(page);
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
const params = Object.assign({}, this.state.params);
|
|
56
|
-
params[this.urlParam] = page.toString();
|
|
57
|
-
const path = StateService.toPath(this.state.route, params);
|
|
58
|
-
this.state.navigateByUrl(path);
|
|
59
|
-
}
|
|
60
|
-
setIcon(labelName, icon) {
|
|
61
|
-
this.icons.getIcon(icon, icon, false).then(i => {
|
|
62
|
-
if (i == icon)
|
|
63
|
-
return;
|
|
64
|
-
this[labelName] = i;
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
setPages() {
|
|
68
|
-
if (!this.pagination)
|
|
69
|
-
return;
|
|
70
|
-
const totalPages = this.pagination.maxPage;
|
|
71
|
-
let startPage = Math.max(this.pagination.page - Math.floor(this.maxSize / 2), 1);
|
|
72
|
-
let endPage = startPage + this.maxSize - 1;
|
|
73
|
-
if (endPage > totalPages) {
|
|
74
|
-
endPage = totalPages;
|
|
75
|
-
startPage = Math.max(endPage - this.maxSize + 1, 1);
|
|
76
|
-
}
|
|
77
|
-
const pages = [];
|
|
78
|
-
for (let num = startPage; num <= endPage; num++) {
|
|
79
|
-
pages.push(num);
|
|
80
|
-
}
|
|
81
|
-
this.pages = pages;
|
|
82
|
-
}
|
|
83
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaginationMenuComponent, deps: [{ token: i1.StateService }, { token: i2.PaginationDirective }, { token: ICON_SERVICE }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
84
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PaginationMenuComponent, selector: "pagination-menu", inputs: { maxSize: "maxSize", urlParam: "urlParam", directionLinks: "directionLinks", boundaryLinks: "boundaryLinks" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"pagination-menu\" *ngIf=\"pagination.total > pagination.itemsPerPage\">\r\n <ul class=\"pagination\">\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasPrev}\" *ngIf=\"boundaryLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(1)\" [innerHTML]=\"firstLabel | safe\"></a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasPrev}\" *ngIf=\"directionLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(pagination.page - 1)\" [innerHTML]=\"prevLabel | safe\"></a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{active: pagination.page == page}\" *ngFor=\"let page of pages\">\r\n <a class=\"page-link\" [ngClass]=\"{active: pagination.page == page}\" (click)=\"paginate(page)\">{{ page }}</a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasNext}\" *ngIf=\"directionLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(pagination.page + 1)\" [innerHTML]=\"nextLabel | safe\"></a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasNext}\" *ngIf=\"boundaryLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(pagination.maxPage)\" [innerHTML]=\"lastLabel | safe\"></a>\r\n </li>\r\n </ul>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.SafeHtmlPipe, name: "safe" }] }); }
|
|
85
|
-
}
|
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaginationMenuComponent, decorators: [{
|
|
87
|
-
type: Component,
|
|
88
|
-
args: [{ selector: "pagination-menu", template: "<div class=\"pagination-menu\" *ngIf=\"pagination.total > pagination.itemsPerPage\">\r\n <ul class=\"pagination\">\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasPrev}\" *ngIf=\"boundaryLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(1)\" [innerHTML]=\"firstLabel | safe\"></a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasPrev}\" *ngIf=\"directionLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(pagination.page - 1)\" [innerHTML]=\"prevLabel | safe\"></a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{active: pagination.page == page}\" *ngFor=\"let page of pages\">\r\n <a class=\"page-link\" [ngClass]=\"{active: pagination.page == page}\" (click)=\"paginate(page)\">{{ page }}</a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasNext}\" *ngIf=\"directionLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(pagination.page + 1)\" [innerHTML]=\"nextLabel | safe\"></a>\r\n </li>\r\n <li class=\"page-item\" [ngClass]=\"{disabled: !hasNext}\" *ngIf=\"boundaryLinks\">\r\n <a class=\"page-link\" (click)=\"paginate(pagination.maxPage)\" [innerHTML]=\"lastLabel | safe\"></a>\r\n </li>\r\n </ul>\r\n</div>\r\n" }]
|
|
89
|
-
}], ctorParameters: () => [{ type: i1.StateService }, { type: i2.PaginationDirective }, { type: undefined, decorators: [{
|
|
90
|
-
type: Inject,
|
|
91
|
-
args: [ICON_SERVICE]
|
|
92
|
-
}] }], propDecorators: { maxSize: [{
|
|
93
|
-
type: Input
|
|
94
|
-
}], urlParam: [{
|
|
95
|
-
type: Input
|
|
96
|
-
}], directionLinks: [{
|
|
97
|
-
type: Input
|
|
98
|
-
}], boundaryLinks: [{
|
|
99
|
-
type: Input
|
|
100
|
-
}] } });
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvY29tcG9uZW50cy9wYWdpbmF0aW9uLW1lbnUvcGFnaW5hdGlvbi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvY29tcG9uZW50cy9wYWdpbmF0aW9uLW1lbnUvcGFnaW5hdGlvbi1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBOEMsTUFBTSxlQUFlLENBQUM7QUFFcEcsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUMxRSxPQUFPLEVBQUMsWUFBWSxFQUFlLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQU05RCxNQUFNLE9BQU8sdUJBQXVCO0lBYWhDLElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFBO0lBQ3pELENBQUM7SUFJRCxZQUFtQixLQUFtQixFQUFTLFVBQStCLEVBQStCLEtBQW1CO1FBQTdHLFVBQUssR0FBTCxLQUFLLENBQWM7UUFBUyxlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUErQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBQzVILElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxD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O2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIi4uLy4uL3V0aWxzL29iamVjdC51dGlsc1wiO1xyXG5pbXBvcnQge1N0YXRlU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0YXRlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtQYWdpbmF0aW9uRGlyZWN0aXZlfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9wYWdpbmF0aW9uLmRpcmVjdGl2ZVwiO1xyXG5pbXBvcnQge0lDT05fU0VSVklDRSwgSUljb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInBhZ2luYXRpb24tbWVudVwiLFxyXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9wYWdpbmF0aW9uLW1lbnUuY29tcG9uZW50Lmh0bWxcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbk1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcclxuXHJcbiAgICBASW5wdXQoKSBtYXhTaXplOiBudW1iZXI7XHJcbiAgICBASW5wdXQoKSB1cmxQYXJhbTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZGlyZWN0aW9uTGlua3M6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBib3VuZGFyeUxpbmtzOiBib29sZWFuO1xyXG5cclxuICAgIHBhZ2VzOiBudW1iZXJbXTtcclxuICAgIGZpcnN0TGFiZWw6IHN0cmluZztcclxuICAgIHByZXZMYWJlbDogc3RyaW5nO1xyXG4gICAgbmV4dExhYmVsOiBzdHJpbmc7XHJcbiAgICBsYXN0TGFiZWw6IHN0cmluZztcclxuXHJcbiAgICBnZXQgaGFzUHJldigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5wYWdpbmF0aW9uLnBhZ2UgPiAxO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBoYXNOZXh0KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnBhZ2luYXRpb24ucGFnZSA8IHRoaXMucGFnaW5hdGlvbi5tYXhQYWdlXHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvblJlZnJlc2g6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgc3RhdGU6IFN0YXRlU2VydmljZSwgcHVibGljIHBhZ2luYXRpb246IFBhZ2luYXRpb25EaXJlY3RpdmUsIEBJbmplY3QoSUNPTl9TRVJWSUNFKSBwdWJsaWMgaWNvbnM6IElJY29uU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMubWF4U2l6ZSA9IDU7XHJcbiAgICAgICAgdGhpcy5kaXJlY3Rpb25MaW5rcyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5ib3VuZGFyeUxpbmtzID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmZpcnN0TGFiZWwgPSBgPDxgO1xyXG4gICAgICAgIHRoaXMucHJldkxhYmVsID0gYDxgO1xyXG4gICAgICAgIHRoaXMubmV4dExhYmVsID0gYD5gO1xyXG4gICAgICAgIHRoaXMubGFzdExhYmVsID0gYD4+YDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uUmVmcmVzaCA9IHRoaXMucGFnaW5hdGlvbi5vblJlZnJlc2guc3Vic2NyaWJlKCgpID0+IHRoaXMuc2V0UGFnZXMoKSk7XHJcbiAgICAgICAgdGhpcy5zZXRJY29uKFwiZmlyc3RMYWJlbFwiLCBcImZpcnN0LXBhZ2VcIik7XHJcbiAgICAgICAgdGhpcy5zZXRJY29uKFwicHJldkxhYmVsXCIsIFwicHJldi1wYWdlXCIpO1xyXG4gICAgICAgIHRoaXMuc2V0SWNvbihcIm5leHRMYWJlbFwiLCBcIm5leHQtcGFnZVwiKTtcclxuICAgICAgICB0aGlzLnNldEljb24oXCJsYXN0TGFiZWxcIiwgXCJsYXN0LXBhZ2VcIik7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLm9uUmVmcmVzaCkgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMub25SZWZyZXNoLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMubWF4U2l6ZSA9IGlzTmFOKHRoaXMubWF4U2l6ZSkgfHwgdGhpcy5tYXhTaXplIDw9IDAgPyA1IDogdGhpcy5tYXhTaXplO1xyXG4gICAgICAgIHRoaXMuZGlyZWN0aW9uTGlua3MgPSBPYmplY3RVdGlscy5pc0Jvb2xlYW4odGhpcy5kaXJlY3Rpb25MaW5rcykgPyB0aGlzLmRpcmVjdGlvbkxpbmtzIDogdHJ1ZTtcclxuICAgICAgICB0aGlzLmJvdW5kYXJ5TGlua3MgPSBPYmplY3RVdGlscy5pc0Jvb2xlYW4odGhpcy5ib3VuZGFyeUxpbmtzKSA/IHRoaXMuYm91bmRhcnlMaW5rcyA6IHRydWU7XHJcbiAgICAgICAgdGhpcy5zZXRQYWdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHBhZ2luYXRlKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb24ucGFnZSA9PSBwYWdlIHx8IHRoaXMucGFnaW5hdGlvbi5tYXhQYWdlIDwgcGFnZSB8fCBwYWdlIDwgMSkgcmV0dXJuO1xyXG4gICAgICAgIGlmICghdGhpcy51cmxQYXJhbSkge1xyXG4gICAgICAgICAgICB0aGlzLnBhZ2luYXRpb24ucGFnaW5hdGUocGFnZSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgcGFyYW1zID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5zdGF0ZS5wYXJhbXMpO1xyXG4gICAgICAgIHBhcmFtc1t0aGlzLnVybFBhcmFtXSA9IHBhZ2UudG9TdHJpbmcoKTtcclxuICAgICAgICBjb25zdCBwYXRoID0gU3RhdGVTZXJ2aWNlLnRvUGF0aCh0aGlzLnN0YXRlLnJvdXRlLCBwYXJhbXMpO1xyXG4gICAgICAgIHRoaXMuc3RhdGUubmF2aWdhdGVCeVVybChwYXRoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgc2V0SWNvbihsYWJlbE5hbWU6IHN0cmluZywgaWNvbjogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pY29ucy5nZXRJY29uKGljb24sIGljb24sIGZhbHNlKS50aGVuKGkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoaSA9PSBpY29uKSByZXR1cm47XHJcbiAgICAgICAgICAgIHRoaXNbbGFiZWxOYW1lXSA9IGk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIHNldFBhZ2VzKCk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnBhZ2luYXRpb24pIHJldHVybjtcclxuICAgICAgICBjb25zdCB0b3RhbFBhZ2VzID0gdGhpcy5wYWdpbmF0aW9uLm1heFBhZ2U7XHJcbiAgICAgICAgbGV0IHN0YXJ0UGFnZSA9IE1hdGgubWF4KHRoaXMucGFnaW5hdGlvbi5wYWdlIC0gTWF0aC5mbG9vcih0aGlzLm1heFNpemUgLyAyKSwgMSk7XHJcbiAgICAgICAgbGV0IGVuZFBhZ2UgPSBzdGFydFBhZ2UgKyB0aGlzLm1heFNpemUgLSAxO1xyXG4gICAgICAgIGlmIChlbmRQYWdlID4gdG90YWxQYWdlcykge1xyXG4gICAgICAgICAgICBlbmRQYWdlID0gdG90YWxQYWdlcztcclxuICAgICAgICAgICAgc3RhcnRQYWdlID0gTWF0aC5tYXgoZW5kUGFnZSAtIHRoaXMubWF4U2l6ZSArIDEsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBwYWdlczogbnVtYmVyW10gPSBbXTtcclxuICAgICAgICBmb3IgKGxldCBudW0gPSBzdGFydFBhZ2U7IG51bSA8PSBlbmRQYWdlOyBudW0rKykge1xyXG4gICAgICAgICAgICBwYWdlcy5wdXNoKG51bSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucGFnZXMgPSBwYWdlcztcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicGFnaW5hdGlvbi1tZW51XCIgKm5nSWY9XCJwYWdpbmF0aW9uLnRvdGFsID4gcGFnaW5hdGlvbi5pdGVtc1BlclBhZ2VcIj5cclxuICAgIDx1bCBjbGFzcz1cInBhZ2luYXRpb25cIj5cclxuICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6ICFoYXNQcmV2fVwiICpuZ0lmPVwiYm91bmRhcnlMaW5rc1wiPlxyXG4gICAgICAgICAgICA8YSBjbGFzcz1cInBhZ2UtbGlua1wiIChjbGljayk9XCJwYWdpbmF0ZSgxKVwiIFtpbm5lckhUTUxdPVwiZmlyc3RMYWJlbCB8IHNhZmVcIj48L2E+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6ICFoYXNQcmV2fVwiICpuZ0lmPVwiZGlyZWN0aW9uTGlua3NcIj5cclxuICAgICAgICAgICAgPGEgY2xhc3M9XCJwYWdlLWxpbmtcIiAoY2xpY2spPVwicGFnaW5hdGUocGFnaW5hdGlvbi5wYWdlIC0gMSlcIiBbaW5uZXJIVE1MXT1cInByZXZMYWJlbCB8IHNhZmVcIj48L2E+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiBbbmdDbGFzc109XCJ7YWN0aXZlOiBwYWdpbmF0aW9uLnBhZ2UgPT0gcGFnZX1cIiAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlc1wiPlxyXG4gICAgICAgICAgICA8YSBjbGFzcz1cInBhZ2UtbGlua1wiIFtuZ0NsYXNzXT1cInthY3RpdmU6IHBhZ2luYXRpb24ucGFnZSA9PSBwYWdlfVwiIChjbGljayk9XCJwYWdpbmF0ZShwYWdlKVwiPnt7IHBhZ2UgfX08L2E+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6ICFoYXNOZXh0fVwiICpuZ0lmPVwiZGlyZWN0aW9uTGlua3NcIj5cclxuICAgICAgICAgICAgPGEgY2xhc3M9XCJwYWdlLWxpbmtcIiAoY2xpY2spPVwicGFnaW5hdGUocGFnaW5hdGlvbi5wYWdlICsgMSlcIiBbaW5uZXJIVE1MXT1cIm5leHRMYWJlbCB8IHNhZmVcIj48L2E+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgICA8bGkgY2xhc3M9XCJwYWdlLWl0ZW1cIiBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6ICFoYXNOZXh0fVwiICpuZ0lmPVwiYm91bmRhcnlMaW5rc1wiPlxyXG4gICAgICAgICAgICA8YSBjbGFzcz1cInBhZ2UtbGlua1wiIChjbGljayk9XCJwYWdpbmF0ZShwYWdpbmF0aW9uLm1heFBhZ2UpXCIgW2lubmVySFRNTF09XCJsYXN0TGFiZWwgfCBzYWZlXCI+PC9hPlxyXG4gICAgICAgIDwvbGk+XHJcbiAgICA8L3VsPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component, ContentChildren, Input, QueryList, TemplateRef, ViewChild } from "@angular/core";
|
|
2
|
-
import { ObjectUtils } from "../../utils/object.utils";
|
|
3
|
-
import { UnorderedListTemplateDirective } from "../../directives/unordered-list-template.directive";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "../../directives/unordered-list-item.directive";
|
|
7
|
-
import * as i3 from "../../pipes/entries.pipe";
|
|
8
|
-
import * as i4 from "../../pipes/translate.pipe";
|
|
9
|
-
export class UnorderedListComponent {
|
|
10
|
-
constructor(cdr) {
|
|
11
|
-
this.cdr = cdr;
|
|
12
|
-
this.keyPrefix = "";
|
|
13
|
-
this.listStyle = "table";
|
|
14
|
-
this.path = "";
|
|
15
|
-
this.level = 0;
|
|
16
|
-
}
|
|
17
|
-
ngOnChanges(changes) {
|
|
18
|
-
this.isArray = ObjectUtils.isArray(this.data);
|
|
19
|
-
this.isObject = ObjectUtils.isObject(this.data);
|
|
20
|
-
}
|
|
21
|
-
ngAfterContentInit() {
|
|
22
|
-
const templates = this.templateDirectives.toArray();
|
|
23
|
-
this.templates = this.templates ? this.templates.concat(templates) : templates;
|
|
24
|
-
this.cdr.detectChanges();
|
|
25
|
-
}
|
|
26
|
-
ngAfterViewInit() {
|
|
27
|
-
this.defaultTemplates = {
|
|
28
|
-
key: this.defaultKeyTemplate,
|
|
29
|
-
value: this.defaultValueTemplate,
|
|
30
|
-
item: this.defaultItemTemplate
|
|
31
|
-
};
|
|
32
|
-
this.cdr.detectChanges();
|
|
33
|
-
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UnorderedListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: UnorderedListComponent, selector: "unordered-list", inputs: { data: "data", keyPrefix: "keyPrefix", listStyle: "listStyle", path: "path", level: "level", templates: "templates" }, queries: [{ propertyName: "templateDirectives", predicate: UnorderedListTemplateDirective }], viewQueries: [{ propertyName: "defaultKeyTemplate", first: true, predicate: ["defaultKeyTemplate"], descendants: true }, { propertyName: "defaultValueTemplate", first: true, predicate: ["defaultValueTemplate"], descendants: true }, { propertyName: "defaultItemTemplate", first: true, predicate: ["defaultItemTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template let-keyPrefix=\"keyPrefix\" let-key=\"item.key\" let-isArray=\"isArray\" #defaultKeyTemplate>\r\n {{ (keyPrefix ? keyPrefix + key : key) | translate }}:\r\n</ng-template>\r\n<ng-template let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-val=\"item.value\" let-path=\"path\"\r\n let-templates=\"templates\" let-isObject=\"valueIsObject\" let-isArray=\"valueIsArray\" #defaultValueTemplate>\r\n <ng-template #value>\r\n <span [innerHTML]=\"val\"></span>\r\n </ng-template>\r\n <unordered-list [data]=\"val\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level + 1\"\r\n [templates]=\"templates\"\r\n *ngIf=\"(isObject || isArray); else value\"></unordered-list>\r\n</ng-template>\r\n<ng-template let-item=\"item\" let-data=\"data\" let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-path=\"path\" let-level=\"level\" let-templates=\"templates\" #defaultItemTemplate>\r\n <ng-template #itemKey>\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"key\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </ng-template>\r\n <ng-template #itemValue>\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"value\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </ng-template>\r\n <ng-container *ngIf=\"!isArray\">\r\n <th *ngIf=\"listStyle == 'table'; else itemKey\">\r\n <ng-container [ngTemplateOutlet]=\"itemKey\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <td *ngIf=\"listStyle == 'table'; else itemValue\">\r\n <ng-container [ngTemplateOutlet]=\"itemValue\"></ng-container>\r\n </td>\r\n</ng-template>\r\n<ng-template #value>\r\n <span [innerHTML]=\"data\"></span>\r\n</ng-template>\r\n<ng-container *ngIf=\"(isObject || isArray); else value\" [ngSwitch]=\"listStyle\">\r\n <ul [ngClass]=\"'level-' + level\" *ngSwitchCase=\"'list'\">\r\n <li *ngFor=\"let item of data | entries\" [ngClass]=\"item.classList\">\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"item\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path ? path + '.' + item.key : item.key\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </li>\r\n </ul>\r\n <table [ngClass]=\"'level-' + level\" *ngSwitchDefault>\r\n <tr *ngFor=\"let item of data | entries\" [ngClass]=\"item.classList\">\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"item\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path ? path + '.' + item.key : item.key\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </tr>\r\n </table>\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.UnorderedListItemDirective, selector: "[unorderedListItem]", inputs: ["unorderedListItem", "type", "data", "keyPrefix", "listStyle", "path", "level", "templates", "defaultTemplates"] }, { kind: "component", type: UnorderedListComponent, selector: "unordered-list", inputs: ["data", "keyPrefix", "listStyle", "path", "level", "templates"] }, { kind: "pipe", type: i3.EntriesPipe, name: "entries" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
|
|
36
|
-
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UnorderedListComponent, decorators: [{
|
|
38
|
-
type: Component,
|
|
39
|
-
args: [{ selector: "unordered-list", template: "<ng-template let-keyPrefix=\"keyPrefix\" let-key=\"item.key\" let-isArray=\"isArray\" #defaultKeyTemplate>\r\n {{ (keyPrefix ? keyPrefix + key : key) | translate }}:\r\n</ng-template>\r\n<ng-template let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-val=\"item.value\" let-path=\"path\"\r\n let-templates=\"templates\" let-isObject=\"valueIsObject\" let-isArray=\"valueIsArray\" #defaultValueTemplate>\r\n <ng-template #value>\r\n <span [innerHTML]=\"val\"></span>\r\n </ng-template>\r\n <unordered-list [data]=\"val\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level + 1\"\r\n [templates]=\"templates\"\r\n *ngIf=\"(isObject || isArray); else value\"></unordered-list>\r\n</ng-template>\r\n<ng-template let-item=\"item\" let-data=\"data\" let-keyPrefix=\"keyPrefix\" let-listStyle=\"listStyle\" let-path=\"path\" let-level=\"level\" let-templates=\"templates\" #defaultItemTemplate>\r\n <ng-template #itemKey>\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"key\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </ng-template>\r\n <ng-template #itemValue>\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"value\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </ng-template>\r\n <ng-container *ngIf=\"!isArray\">\r\n <th *ngIf=\"listStyle == 'table'; else itemKey\">\r\n <ng-container [ngTemplateOutlet]=\"itemKey\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <td *ngIf=\"listStyle == 'table'; else itemValue\">\r\n <ng-container [ngTemplateOutlet]=\"itemValue\"></ng-container>\r\n </td>\r\n</ng-template>\r\n<ng-template #value>\r\n <span [innerHTML]=\"data\"></span>\r\n</ng-template>\r\n<ng-container *ngIf=\"(isObject || isArray); else value\" [ngSwitch]=\"listStyle\">\r\n <ul [ngClass]=\"'level-' + level\" *ngSwitchCase=\"'list'\">\r\n <li *ngFor=\"let item of data | entries\" [ngClass]=\"item.classList\">\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"item\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path ? path + '.' + item.key : item.key\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </li>\r\n </ul>\r\n <table [ngClass]=\"'level-' + level\" *ngSwitchDefault>\r\n <tr *ngFor=\"let item of data | entries\" [ngClass]=\"item.classList\">\r\n <ng-container [unorderedListItem]=\"item\"\r\n type=\"item\"\r\n [data]=\"data\"\r\n [keyPrefix]=\"keyPrefix\"\r\n [listStyle]=\"listStyle\"\r\n [path]=\"path ? path + '.' + item.key : item.key\"\r\n [level]=\"level\"\r\n [templates]=\"templates\"\r\n [defaultTemplates]=\"defaultTemplates\"></ng-container>\r\n </tr>\r\n </table>\r\n</ng-container>\r\n" }]
|
|
40
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], keyPrefix: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], listStyle: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], path: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], level: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}], templates: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}], templateDirectives: [{
|
|
53
|
-
type: ContentChildren,
|
|
54
|
-
args: [UnorderedListTemplateDirective]
|
|
55
|
-
}], defaultKeyTemplate: [{
|
|
56
|
-
type: ViewChild,
|
|
57
|
-
args: ["defaultKeyTemplate"]
|
|
58
|
-
}], defaultValueTemplate: [{
|
|
59
|
-
type: ViewChild,
|
|
60
|
-
args: ["defaultValueTemplate"]
|
|
61
|
-
}], defaultItemTemplate: [{
|
|
62
|
-
type: ViewChild,
|
|
63
|
-
args: ["defaultItemTemplate"]
|
|
64
|
-
}] } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5vcmRlcmVkLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL25neC11dGlscy9jb21wb25lbnRzL3Vub3JkZXJlZC1saXN0L3Vub3JkZXJlZC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvY29tcG9uZW50cy91bm9yZGVyZWQtbGlzdC91bm9yZGVyZWQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsS0FBSyxFQUVMLFNBQVMsRUFDTSxXQUFXLEVBQUUsU0FBUyxFQUN4QyxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sb0RBQW9ELENBQUM7Ozs7OztBQU1sRyxNQUFNLE9BQU8sc0JBQXNCO0lBdUIvQixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxrQkFBa0I7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQy9FLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsZ0JBQWdCLEdBQUc7WUFDcEIsR0FBRyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7WUFDNUIsS0FBSyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7WUFDaEMsSUFBSSxFQUFFLElBQUksQ0FBQyxtQkFBbUI7U0FDakMsQ0FBQztRQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0IsQ0FBQzsrR0FoRFEsc0JBQXNCO21HQUF0QixzQkFBc0IseU5BYWQsOEJBQThCLHdZQ2hDbkQsbS9IQStFQSxzL0JENURhLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDSSxnQkFBZ0I7c0ZBS2pCLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQU9FLGtCQUFrQjtzQkFEekIsZUFBZTt1QkFBQyw4QkFBOEI7Z0JBSXZDLGtCQUFrQjtzQkFEekIsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBR3ZCLG9CQUFvQjtzQkFEM0IsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBR3pCLG1CQUFtQjtzQkFEMUIsU0FBUzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIENvbXBvbmVudCxcclxuICAgIENvbnRlbnRDaGlsZHJlbixcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7VW5vcmRlcmVkTGlzdFN0eWxlLCBVbm9yZGVyZWRMaXN0VGVtcGxhdGVzLCBVbm9yZGVyZWRMaXN0VGVtcGxhdGV9IGZyb20gXCIuLi8uLi9jb21tb24tdHlwZXNcIjtcclxuaW1wb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIi4uLy4uL3V0aWxzL29iamVjdC51dGlsc1wiO1xyXG5pbXBvcnQge1Vub3JkZXJlZExpc3RUZW1wbGF0ZURpcmVjdGl2ZX0gZnJvbSBcIi4uLy4uL2RpcmVjdGl2ZXMvdW5vcmRlcmVkLWxpc3QtdGVtcGxhdGUuZGlyZWN0aXZlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcInVub3JkZXJlZC1saXN0XCIsXHJcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3Vub3JkZXJlZC1saXN0LmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFVub3JkZXJlZExpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQge1xyXG5cclxuICAgIEBJbnB1dCgpIGRhdGE6IGFueTtcclxuICAgIEBJbnB1dCgpIGtleVByZWZpeDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgbGlzdFN0eWxlOiBVbm9yZGVyZWRMaXN0U3R5bGU7XHJcbiAgICBASW5wdXQoKSBwYXRoOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBsZXZlbDogbnVtYmVyO1xyXG4gICAgQElucHV0KCkgdGVtcGxhdGVzOiBVbm9yZGVyZWRMaXN0VGVtcGxhdGVbXTtcclxuXHJcbiAgICBpc0FycmF5OiBib29sZWFuO1xyXG4gICAgaXNPYmplY3Q6IGJvb2xlYW47XHJcbiAgICBkZWZhdWx0VGVtcGxhdGVzOiBVbm9yZGVyZWRMaXN0VGVtcGxhdGVzO1xyXG5cclxuICAgIEBDb250ZW50Q2hpbGRyZW4oVW5vcmRlcmVkTGlzdFRlbXBsYXRlRGlyZWN0aXZlKVxyXG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZURpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxVbm9yZGVyZWRMaXN0VGVtcGxhdGVEaXJlY3RpdmU+O1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoXCJkZWZhdWx0S2V5VGVtcGxhdGVcIilcclxuICAgIHByaXZhdGUgZGVmYXVsdEtleVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZChcImRlZmF1bHRWYWx1ZVRlbXBsYXRlXCIpXHJcbiAgICBwcml2YXRlIGRlZmF1bHRWYWx1ZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZChcImRlZmF1bHRJdGVtVGVtcGxhdGVcIilcclxuICAgIHByaXZhdGUgZGVmYXVsdEl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgICAgICB0aGlzLmtleVByZWZpeCA9IFwiXCI7XHJcbiAgICAgICAgdGhpcy5saXN0U3R5bGUgPSBcInRhYmxlXCI7XHJcbiAgICAgICAgdGhpcy5wYXRoID0gXCJcIjtcclxuICAgICAgICB0aGlzLmxldmVsID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc0FycmF5ID0gT2JqZWN0VXRpbHMuaXNBcnJheSh0aGlzLmRhdGEpO1xyXG4gICAgICAgIHRoaXMuaXNPYmplY3QgPSBPYmplY3RVdGlscy5pc09iamVjdCh0aGlzLmRhdGEpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB0ZW1wbGF0ZXMgPSB0aGlzLnRlbXBsYXRlRGlyZWN0aXZlcy50b0FycmF5KCk7XHJcbiAgICAgICAgdGhpcy50ZW1wbGF0ZXMgPSB0aGlzLnRlbXBsYXRlcyA/IHRoaXMudGVtcGxhdGVzLmNvbmNhdCh0ZW1wbGF0ZXMpIDogdGVtcGxhdGVzO1xyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5kZWZhdWx0VGVtcGxhdGVzID0ge1xyXG4gICAgICAgICAgICBrZXk6IHRoaXMuZGVmYXVsdEtleVRlbXBsYXRlLFxyXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy5kZWZhdWx0VmFsdWVUZW1wbGF0ZSxcclxuICAgICAgICAgICAgaXRlbTogdGhpcy5kZWZhdWx0SXRlbVRlbXBsYXRlXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlIGxldC1rZXlQcmVmaXg9XCJrZXlQcmVmaXhcIiBsZXQta2V5PVwiaXRlbS5rZXlcIiBsZXQtaXNBcnJheT1cImlzQXJyYXlcIiAjZGVmYXVsdEtleVRlbXBsYXRlPlxyXG4gICAge3sgKGtleVByZWZpeCA/IGtleVByZWZpeCArIGtleSA6IGtleSkgfCB0cmFuc2xhdGUgfX06XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSBsZXQta2V5UHJlZml4PVwia2V5UHJlZml4XCIgbGV0LWxpc3RTdHlsZT1cImxpc3RTdHlsZVwiIGxldC12YWw9XCJpdGVtLnZhbHVlXCIgbGV0LXBhdGg9XCJwYXRoXCJcclxuICAgICAgICAgICAgIGxldC10ZW1wbGF0ZXM9XCJ0ZW1wbGF0ZXNcIiBsZXQtaXNPYmplY3Q9XCJ2YWx1ZUlzT2JqZWN0XCIgbGV0LWlzQXJyYXk9XCJ2YWx1ZUlzQXJyYXlcIiAjZGVmYXVsdFZhbHVlVGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI3ZhbHVlPlxyXG4gICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwidmFsXCI+PC9zcGFuPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDx1bm9yZGVyZWQtbGlzdCBbZGF0YV09XCJ2YWxcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtrZXlQcmVmaXhdPVwia2V5UHJlZml4XCJcclxuICAgICAgICAgICAgICAgICAgICBbbGlzdFN0eWxlXT1cImxpc3RTdHlsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BhdGhdPVwicGF0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xldmVsXT1cImxldmVsICsgMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ0ZW1wbGF0ZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKGlzT2JqZWN0IHx8IGlzQXJyYXkpOyBlbHNlIHZhbHVlXCI+PC91bm9yZGVyZWQtbGlzdD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuPG5nLXRlbXBsYXRlIGxldC1pdGVtPVwiaXRlbVwiIGxldC1kYXRhPVwiZGF0YVwiIGxldC1rZXlQcmVmaXg9XCJrZXlQcmVmaXhcIiBsZXQtbGlzdFN0eWxlPVwibGlzdFN0eWxlXCIgbGV0LXBhdGg9XCJwYXRoXCIgbGV0LWxldmVsPVwibGV2ZWxcIiBsZXQtdGVtcGxhdGVzPVwidGVtcGxhdGVzXCIgI2RlZmF1bHRJdGVtVGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI2l0ZW1LZXk+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbdW5vcmRlcmVkTGlzdEl0ZW1dPVwiaXRlbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwia2V5XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2tleVByZWZpeF09XCJrZXlQcmVmaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2xpc3RTdHlsZV09XCJsaXN0U3R5bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3BhdGhdPVwicGF0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGV2ZWxdPVwibGV2ZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ0ZW1wbGF0ZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2RlZmF1bHRUZW1wbGF0ZXNdPVwiZGVmYXVsdFRlbXBsYXRlc1wiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy10ZW1wbGF0ZSAjaXRlbVZhbHVlPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgW3Vub3JkZXJlZExpc3RJdGVtXT1cIml0ZW1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2tleVByZWZpeF09XCJrZXlQcmVmaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2xpc3RTdHlsZV09XCJsaXN0U3R5bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3BhdGhdPVwicGF0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGV2ZWxdPVwibGV2ZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ0ZW1wbGF0ZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2RlZmF1bHRUZW1wbGF0ZXNdPVwiZGVmYXVsdFRlbXBsYXRlc1wiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNBcnJheVwiPlxyXG4gICAgICAgIDx0aCAqbmdJZj1cImxpc3RTdHlsZSA9PSAndGFibGUnOyBlbHNlIGl0ZW1LZXlcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtS2V5XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC90aD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPHRkICpuZ0lmPVwibGlzdFN0eWxlID09ICd0YWJsZSc7IGVsc2UgaXRlbVZhbHVlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtVmFsdWVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvdGQ+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjdmFsdWU+XHJcbiAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImRhdGFcIj48L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCIoaXNPYmplY3QgfHwgaXNBcnJheSk7IGVsc2UgdmFsdWVcIiBbbmdTd2l0Y2hdPVwibGlzdFN0eWxlXCI+XHJcbiAgICA8dWwgW25nQ2xhc3NdPVwiJ2xldmVsLScgKyBsZXZlbFwiICpuZ1N3aXRjaENhc2U9XCInbGlzdCdcIj5cclxuICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YSB8IGVudHJpZXNcIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzTGlzdFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFt1bm9yZGVyZWRMaXN0SXRlbV09XCJpdGVtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiaXRlbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2tleVByZWZpeF09XCJrZXlQcmVmaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsaXN0U3R5bGVdPVwibGlzdFN0eWxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcGF0aF09XCJwYXRoID8gcGF0aCArICcuJyArIGl0ZW0ua2V5IDogaXRlbS5rZXlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsZXZlbF09XCJsZXZlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ0ZW1wbGF0ZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0VGVtcGxhdGVzXT1cImRlZmF1bHRUZW1wbGF0ZXNcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2xpPlxyXG4gICAgPC91bD5cclxuICAgIDx0YWJsZSBbbmdDbGFzc109XCInbGV2ZWwtJyArIGxldmVsXCIgKm5nU3dpdGNoRGVmYXVsdD5cclxuICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YSB8IGVudHJpZXNcIiBbbmdDbGFzc109XCJpdGVtLmNsYXNzTGlzdFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFt1bm9yZGVyZWRMaXN0SXRlbV09XCJpdGVtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiaXRlbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2tleVByZWZpeF09XCJrZXlQcmVmaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsaXN0U3R5bGVdPVwibGlzdFN0eWxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcGF0aF09XCJwYXRoID8gcGF0aCArICcuJyArIGl0ZW0ua2V5IDogaXRlbS5rZXlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsZXZlbF09XCJsZXZlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ0ZW1wbGF0ZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0VGVtcGxhdGVzXT1cImRlZmF1bHRUZW1wbGF0ZXNcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L3RyPlxyXG4gICAgPC90YWJsZT5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Directive, EventEmitter, HostBinding, HostListener, Inject, Input, Output } from "@angular/core";
|
|
2
|
-
import { TOASTER_SERVICE } from "../common-types";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class AsyncMethodBase {
|
|
5
|
-
get isDisabled() {
|
|
6
|
-
return this.disabled;
|
|
7
|
-
}
|
|
8
|
-
get isLoading() {
|
|
9
|
-
return this.loading;
|
|
10
|
-
}
|
|
11
|
-
constructor(toaster, cdr) {
|
|
12
|
-
this.toaster = toaster;
|
|
13
|
-
this.cdr = cdr;
|
|
14
|
-
this.onSuccess = new EventEmitter();
|
|
15
|
-
this.onError = new EventEmitter();
|
|
16
|
-
}
|
|
17
|
-
getMethod() {
|
|
18
|
-
return async () => null;
|
|
19
|
-
}
|
|
20
|
-
ngOnChanges() {
|
|
21
|
-
this.cdr.detectChanges();
|
|
22
|
-
}
|
|
23
|
-
click(ev) {
|
|
24
|
-
if (ev) {
|
|
25
|
-
ev.preventDefault();
|
|
26
|
-
ev.stopPropagation();
|
|
27
|
-
}
|
|
28
|
-
if (this.disabled)
|
|
29
|
-
return;
|
|
30
|
-
this.callMethod();
|
|
31
|
-
}
|
|
32
|
-
callMethod() {
|
|
33
|
-
if (this.loading)
|
|
34
|
-
return true;
|
|
35
|
-
this.loading = true;
|
|
36
|
-
const method = this.getMethod();
|
|
37
|
-
const result = !method ? null : method(this.context);
|
|
38
|
-
if (!(result instanceof Promise)) {
|
|
39
|
-
this.loading = false;
|
|
40
|
-
return false;
|
|
41
|
-
}
|
|
42
|
-
result.then(result => {
|
|
43
|
-
this.loading = false;
|
|
44
|
-
if (result) {
|
|
45
|
-
this.onSuccess.emit(result);
|
|
46
|
-
this.toaster.success(result.message, result.context);
|
|
47
|
-
}
|
|
48
|
-
}, reason => {
|
|
49
|
-
if (!reason || !reason.message)
|
|
50
|
-
throw new Error("Reason must implement IAsyncMessage interface");
|
|
51
|
-
this.loading = false;
|
|
52
|
-
this.onError.emit(reason);
|
|
53
|
-
this.toaster.error(reason.message, reason.context);
|
|
54
|
-
}).finally(() => {
|
|
55
|
-
if (!this.cdr["destroyed"]) {
|
|
56
|
-
this.cdr.detectChanges();
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
return true;
|
|
60
|
-
}
|
|
61
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AsyncMethodBase, deps: [{ token: TOASTER_SERVICE }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
62
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: AsyncMethodBase, selector: "[__asmb__]", inputs: { disabled: "disabled", context: "context" }, outputs: { onSuccess: "onSuccess", onError: "onError" }, host: { listeners: { "click": "click($event)" }, properties: { "class.disabled": "this.isDisabled", "class.loading": "this.isLoading" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
63
|
-
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AsyncMethodBase, decorators: [{
|
|
65
|
-
type: Directive,
|
|
66
|
-
args: [{
|
|
67
|
-
selector: "[__asmb__]"
|
|
68
|
-
}]
|
|
69
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
70
|
-
type: Inject,
|
|
71
|
-
args: [TOASTER_SERVICE]
|
|
72
|
-
}] }, { type: i0.ChangeDetectorRef }], propDecorators: { disabled: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}], context: [{
|
|
75
|
-
type: Input
|
|
76
|
-
}], onSuccess: [{
|
|
77
|
-
type: Output
|
|
78
|
-
}], onError: [{
|
|
79
|
-
type: Output
|
|
80
|
-
}], isDisabled: [{
|
|
81
|
-
type: HostBinding,
|
|
82
|
-
args: ["class.disabled"]
|
|
83
|
-
}], isLoading: [{
|
|
84
|
-
type: HostBinding,
|
|
85
|
-
args: ["class.loading"]
|
|
86
|
-
}], click: [{
|
|
87
|
-
type: HostListener,
|
|
88
|
-
args: ["click", ["$event"]]
|
|
89
|
-
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtbWV0aG9kLmJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvYXN5bmMtbWV0aG9kLmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUE4QyxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7QUFLN0YsTUFBTSxPQUFPLGVBQWU7SUFVeEIsSUFDSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQStDLE9BQXdCLEVBQVksR0FBc0I7UUFBMUQsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFBWSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNyRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7SUFDckQsQ0FBQztJQUVTLFNBQVM7UUFDZixPQUFPLEtBQUssSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBR0QsS0FBSyxDQUFDLEVBQVM7UUFDWCxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ0wsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3BCLEVBQUUsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNoQyxNQUFNLE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxDQUFDLE1BQU0sWUFBWSxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pELENBQUM7UUFDTCxDQUFDLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDUixJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU87Z0JBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM3QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOytHQXRFUSxlQUFlLGtCQW9CSixlQUFlO21HQXBCMUIsZUFBZTs7NEZBQWYsZUFBZTtrQkFIM0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsWUFBWTtpQkFDekI7OzBCQXFCZ0IsTUFBTTsyQkFBQyxlQUFlO3lFQWxCMUIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUtILFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBTXpCLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxlQUFlO2dCQW1CNUIsS0FBSztzQkFESixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIERpcmVjdGl2ZSxcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5qZWN0LFxyXG4gICAgSW5wdXQsIE9uQ2hhbmdlcyxcclxuICAgIE91dHB1dFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2QsIElBc3luY01lc3NhZ2UsIElUb2FzdGVyU2VydmljZSwgVE9BU1RFUl9TRVJWSUNFfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiBcIltfX2FzbWJfX11cIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXN5bmNNZXRob2RCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuXHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgpIGNvbnRleHQ6IGFueTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25TdWNjZXNzOiBFdmVudEVtaXR0ZXI8SUFzeW5jTWVzc2FnZT47XHJcbiAgICBAT3V0cHV0KCkgb25FcnJvcjogRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+O1xyXG5cclxuICAgIHByb3RlY3RlZCBsb2FkaW5nOiBib29sZWFuO1xyXG5cclxuICAgIEBIb3N0QmluZGluZyhcImNsYXNzLmRpc2FibGVkXCIpXHJcbiAgICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoXCJjbGFzcy5sb2FkaW5nXCIpXHJcbiAgICBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoQEluamVjdChUT0FTVEVSX1NFUlZJQ0UpIHByb3RlY3RlZCB0b2FzdGVyOiBJVG9hc3RlclNlcnZpY2UsIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICAgICAgdGhpcy5vblN1Y2Nlc3MgPSBuZXcgRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+KCk7XHJcbiAgICAgICAgdGhpcy5vbkVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPigpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBnZXRNZXRob2QoKTogQXN5bmNNZXRob2Qge1xyXG4gICAgICAgIHJldHVybiBhc3luYyAoKSA9PiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIiwgW1wiJGV2ZW50XCJdKVxyXG4gICAgY2xpY2soZXY6IEV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGV2KSB7XHJcbiAgICAgICAgICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICAgIGV2LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMuY2FsbE1ldGhvZCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNhbGxNZXRob2QoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZykgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBtZXRob2QgPSB0aGlzLmdldE1ldGhvZCgpO1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9ICFtZXRob2QgPyBudWxsIDogbWV0aG9kKHRoaXMuY29udGV4dCk7XHJcbiAgICAgICAgaWYgKCEocmVzdWx0IGluc3RhbmNlb2YgUHJvbWlzZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzdWx0LnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25TdWNjZXNzLmVtaXQocmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHJlc3VsdC5tZXNzYWdlLCByZXN1bHQuY29udGV4dCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCByZWFzb24gPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXJlYXNvbiB8fCAhcmVhc29uLm1lc3NhZ2UpXHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZWFzb24gbXVzdCBpbXBsZW1lbnQgSUFzeW5jTWVzc2FnZSBpbnRlcmZhY2VcIik7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IuZW1pdChyZWFzb24pO1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0ZXIuZXJyb3IocmVhc29uLm1lc3NhZ2UsIHJlYXNvbi5jb250ZXh0KTtcclxuICAgICAgICB9KS5maW5hbGx5KCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmNkcltcImRlc3Ryb3llZFwiXSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Directive, Input } from "@angular/core";
|
|
2
|
-
import { AsyncMethodBase } from "./async-method.base";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class AsyncMethodDirective extends AsyncMethodBase {
|
|
5
|
-
getMethod() {
|
|
6
|
-
return this.method;
|
|
7
|
-
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AsyncMethodDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
9
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: AsyncMethodDirective, selector: "[async-method]", inputs: { method: ["async-method", "method"] }, exportAs: ["async-method"], usesInheritance: true, ngImport: i0 }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AsyncMethodDirective, decorators: [{
|
|
12
|
-
type: Directive,
|
|
13
|
-
args: [{
|
|
14
|
-
selector: "[async-method]",
|
|
15
|
-
exportAs: "async-method"
|
|
16
|
-
}]
|
|
17
|
-
}], propDecorators: { method: [{
|
|
18
|
-
type: Input,
|
|
19
|
-
args: ["async-method"]
|
|
20
|
-
}] } });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtbWV0aG9kLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9hc3luYy1tZXRob2QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGVBQWU7SUFJM0MsU0FBUztRQUNmLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDOytHQU5RLG9CQUFvQjttR0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO2lCQUMzQjs4QkFHMEIsTUFBTTtzQkFBNUIsS0FBSzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIElucHV0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0FzeW5jTWV0aG9kfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcbmltcG9ydCB7QXN5bmNNZXRob2RCYXNlfSBmcm9tIFwiLi9hc3luYy1tZXRob2QuYmFzZVwiO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogXCJbYXN5bmMtbWV0aG9kXVwiLFxyXG4gICAgZXhwb3J0QXM6IFwiYXN5bmMtbWV0aG9kXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEFzeW5jTWV0aG9kRGlyZWN0aXZlIGV4dGVuZHMgQXN5bmNNZXRob2RCYXNlIHtcclxuXHJcbiAgICBASW5wdXQoXCJhc3luYy1tZXRob2RcIikgbWV0aG9kOiBBc3luY01ldGhvZDtcclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0TWV0aG9kKCk6IEFzeW5jTWV0aG9kIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tZXRob2Q7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, Input, Renderer2 } from "@angular/core";
|
|
2
|
-
import { HttpClient } from "@angular/common/http";
|
|
3
|
-
import { FileUtils } from "../utils/file.utils";
|
|
4
|
-
import { UniversalService } from "../services/universal.service";
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/common/http";
|
|
7
|
-
import * as i2 from "../services/universal.service";
|
|
8
|
-
const defaultClass = "default-image";
|
|
9
|
-
const loadingClass = "loading-image";
|
|
10
|
-
export class BackgroundDirective {
|
|
11
|
-
constructor(http, element, renderer, universal) {
|
|
12
|
-
this.http = http;
|
|
13
|
-
this.element = element;
|
|
14
|
-
this.renderer = renderer;
|
|
15
|
-
this.universal = universal;
|
|
16
|
-
}
|
|
17
|
-
ngOnChanges(changes) {
|
|
18
|
-
if (this.universal.isServer) {
|
|
19
|
-
this.setBackground(this.background);
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
this.renderer.removeClass(this.element.nativeElement, defaultClass);
|
|
23
|
-
this.renderer.addClass(this.element.nativeElement, loadingClass);
|
|
24
|
-
FileUtils.readDataFromUrl(this.http, this.background).then(url => {
|
|
25
|
-
this.setBackground(url);
|
|
26
|
-
}, () => {
|
|
27
|
-
this.renderer.removeClass(this.element.nativeElement, loadingClass);
|
|
28
|
-
this.renderer.addClass(this.element.nativeElement, defaultClass);
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
setBackground(url) {
|
|
32
|
-
this.renderer.removeClass(this.element.nativeElement, loadingClass);
|
|
33
|
-
this.renderer.setStyle(this.element.nativeElement, "background-image", `url('${url}')`);
|
|
34
|
-
if (!this.backgroundSize)
|
|
35
|
-
return;
|
|
36
|
-
this.renderer.setStyle(this.element.nativeElement, "background-size", this.backgroundSize);
|
|
37
|
-
}
|
|
38
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BackgroundDirective, deps: [{ token: i1.HttpClient }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.UniversalService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
39
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: BackgroundDirective, selector: "[background]", inputs: { background: "background", backgroundSize: "backgroundSize" }, usesOnChanges: true, ngImport: i0 }); }
|
|
40
|
-
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BackgroundDirective, decorators: [{
|
|
42
|
-
type: Directive,
|
|
43
|
-
args: [{
|
|
44
|
-
selector: "[background]"
|
|
45
|
-
}]
|
|
46
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.UniversalService }], propDecorators: { background: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], backgroundSize: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2dyb3VuZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvYmFja2dyb3VuZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFhLFNBQVMsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7OztBQUUvRCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUM7QUFDckMsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDO0FBS3JDLE1BQU0sT0FBTyxtQkFBbUI7SUFLNUIsWUFBb0IsSUFBZ0IsRUFBVSxPQUFtQixFQUFVLFFBQW1CLEVBQVUsU0FBMkI7UUFBL0csU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFFbkksQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDcEMsT0FBTztRQUNYLENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNqRSxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM3RCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLENBQUMsRUFBRSxHQUFHLEVBQUU7WUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxhQUFhLENBQUMsR0FBVztRQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDeEYsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjO1lBQUUsT0FBTztRQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDL0YsQ0FBQzsrR0E3QlEsbUJBQW1CO21HQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGNBQWM7aUJBQzNCOytKQUdZLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBSZW5kZXJlcjIsIFNpbXBsZUNoYW5nZXN9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7RmlsZVV0aWxzfSBmcm9tIFwiLi4vdXRpbHMvZmlsZS51dGlsc1wiO1xyXG5pbXBvcnQge1VuaXZlcnNhbFNlcnZpY2V9IGZyb20gXCIuLi9zZXJ2aWNlcy91bml2ZXJzYWwuc2VydmljZVwiO1xyXG5cclxuY29uc3QgZGVmYXVsdENsYXNzID0gXCJkZWZhdWx0LWltYWdlXCI7XHJcbmNvbnN0IGxvYWRpbmdDbGFzcyA9IFwibG9hZGluZy1pbWFnZVwiO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogXCJbYmFja2dyb3VuZF1cIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFja2dyb3VuZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcblxyXG4gICAgQElucHV0KCkgYmFja2dyb3VuZDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgYmFja2dyb3VuZFNpemU6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIHVuaXZlcnNhbDogVW5pdmVyc2FsU2VydmljZSkge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMudW5pdmVyc2FsLmlzU2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0QmFja2dyb3VuZCh0aGlzLmJhY2tncm91bmQpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIGRlZmF1bHRDbGFzcyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgbG9hZGluZ0NsYXNzKTtcclxuICAgICAgICBGaWxlVXRpbHMucmVhZERhdGFGcm9tVXJsKHRoaXMuaHR0cCwgdGhpcy5iYWNrZ3JvdW5kKS50aGVuKHVybCA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0QmFja2dyb3VuZCh1cmwpO1xyXG4gICAgICAgIH0sICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgbG9hZGluZ0NsYXNzKTtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgZGVmYXVsdENsYXNzKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHNldEJhY2tncm91bmQodXJsOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCBsb2FkaW5nQ2xhc3MpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIFwiYmFja2dyb3VuZC1pbWFnZVwiLCBgdXJsKCcke3VybH0nKWApO1xyXG4gICAgICAgIGlmICghdGhpcy5iYWNrZ3JvdW5kU2l6ZSkgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIFwiYmFja2dyb3VuZC1zaXplXCIsIHRoaXMuYmFja2dyb3VuZFNpemUpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Directive, Input, TemplateRef } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class DynamicTableTemplateDirective {
|
|
4
|
-
constructor(ref) {
|
|
5
|
-
this.ref = ref;
|
|
6
|
-
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DynamicTableTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: DynamicTableTemplateDirective, selector: "ng-template[column]", inputs: { column: "column", pure: "pure" }, ngImport: i0 }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DynamicTableTemplateDirective, decorators: [{
|
|
11
|
-
type: Directive,
|
|
12
|
-
args: [{
|
|
13
|
-
selector: "ng-template[column]"
|
|
14
|
-
}]
|
|
15
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }], propDecorators: { column: [{
|
|
16
|
-
type: Input
|
|
17
|
-
}], pure: [{
|
|
18
|
-
type: Input
|
|
19
|
-
}] } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy10YWJsZS10ZW1wbGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvZHluYW1pYy10YWJsZS10ZW1wbGF0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQU81RCxNQUFNLE9BQU8sNkJBQTZCO0lBS3RDLFlBQW1CLEdBQXFCO1FBQXJCLFFBQUcsR0FBSCxHQUFHLENBQWtCO0lBQ3hDLENBQUM7K0dBTlEsNkJBQTZCO21HQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtpQkFDbEM7Z0ZBSVksTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWZ9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SVRhYmxlVGVtcGxhdGV9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwibmctdGVtcGxhdGVbY29sdW1uXVwiXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRHluYW1pY1RhYmxlVGVtcGxhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBJVGFibGVUZW1wbGF0ZSB7XHJcblxyXG4gICAgQElucHV0KCkgY29sdW1uOiBzdHJpbmcgfCBzdHJpbmdbXTtcclxuICAgIEBJbnB1dCgpIHB1cmU6IGJvb2xlYW47XHJcblxyXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlZjogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Directive, Input, TemplateRef } from "@angular/core";
|
|
2
|
-
import { GlobalTemplateService } from "../services/global-template.service";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../services/global-template.service";
|
|
5
|
-
export class GlobalTemplateDirective {
|
|
6
|
-
constructor(globalTemplates, template) {
|
|
7
|
-
this.globalTemplates = globalTemplates;
|
|
8
|
-
this.template = template;
|
|
9
|
-
}
|
|
10
|
-
ngOnInit() {
|
|
11
|
-
this.globalTemplates.add(this.id, this.template);
|
|
12
|
-
}
|
|
13
|
-
ngOnDestroy() {
|
|
14
|
-
this.globalTemplates.remove(this.id);
|
|
15
|
-
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GlobalTemplateDirective, deps: [{ token: i1.GlobalTemplateService }, { token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: GlobalTemplateDirective, selector: "[globalTemplate]", inputs: { id: ["globalTemplate", "id"] }, ngImport: i0 }); }
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GlobalTemplateDirective, decorators: [{
|
|
20
|
-
type: Directive,
|
|
21
|
-
args: [{
|
|
22
|
-
selector: "[globalTemplate]"
|
|
23
|
-
}]
|
|
24
|
-
}], ctorParameters: () => [{ type: i1.GlobalTemplateService }, { type: i0.TemplateRef }], propDecorators: { id: [{
|
|
25
|
-
type: Input,
|
|
26
|
-
args: ["globalTemplate"]
|
|
27
|
-
}] } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLXRlbXBsYXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtdXRpbHMvZGlyZWN0aXZlcy9nbG9iYWwtdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFxQixXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0scUNBQXFDLENBQUM7OztBQUsxRSxNQUFNLE9BQU8sdUJBQXVCO0lBSWhDLFlBQXFCLGVBQXNDLEVBQ3RDLFFBQTBCO1FBRDFCLG9CQUFlLEdBQWYsZUFBZSxDQUF1QjtRQUN0QyxhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUUvQyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7K0dBZlEsdUJBQXVCO21HQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0I7b0hBRzRCLEVBQUU7c0JBQTFCLEtBQUs7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVGVtcGxhdGVSZWZ9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7R2xvYmFsVGVtcGxhdGVTZXJ2aWNlfSBmcm9tIFwiLi4vc2VydmljZXMvZ2xvYmFsLXRlbXBsYXRlLnNlcnZpY2VcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwiW2dsb2JhbFRlbXBsYXRlXVwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBHbG9iYWxUZW1wbGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBASW5wdXQoXCJnbG9iYWxUZW1wbGF0ZVwiKSBpZDogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGdsb2JhbFRlbXBsYXRlczogR2xvYmFsVGVtcGxhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgcmVhZG9ubHkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5nbG9iYWxUZW1wbGF0ZXMuYWRkKHRoaXMuaWQsIHRoaXMudGVtcGxhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZ2xvYmFsVGVtcGxhdGVzLnJlbW92ZSh0aGlzLmlkKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, EventEmitter, HostBinding, HostListener, Inject, Input, Output, Renderer2 } from "@angular/core";
|
|
2
|
-
import { ICON_SERVICE } from "../common-types";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class IconDirective {
|
|
5
|
-
get isActive() {
|
|
6
|
-
return this.active;
|
|
7
|
-
}
|
|
8
|
-
constructor(element, renderer, icons) {
|
|
9
|
-
this.element = element;
|
|
10
|
-
this.renderer = renderer;
|
|
11
|
-
this.icons = icons;
|
|
12
|
-
this.renderer.addClass(this.element.nativeElement, "svg-icon");
|
|
13
|
-
this.activeChange = new EventEmitter();
|
|
14
|
-
}
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.iconsLoaded = this.icons.iconsLoaded.subscribe(() => this.changeIcon());
|
|
17
|
-
}
|
|
18
|
-
ngOnDestroy() {
|
|
19
|
-
if (this.iconsLoaded)
|
|
20
|
-
this.iconsLoaded.unsubscribe();
|
|
21
|
-
}
|
|
22
|
-
ngOnChanges(changes) {
|
|
23
|
-
if (changes.icon) {
|
|
24
|
-
this.renderer.removeClass(this.element.nativeElement, `svg-icon-${changes.icon.previousValue}`);
|
|
25
|
-
this.renderer.addClass(this.element.nativeElement, `svg-icon-${changes.icon.currentValue}`);
|
|
26
|
-
}
|
|
27
|
-
this.changeIcon();
|
|
28
|
-
}
|
|
29
|
-
click() {
|
|
30
|
-
this.active = !this.active;
|
|
31
|
-
this.activeChange.emit(this.active);
|
|
32
|
-
this.changeIcon();
|
|
33
|
-
}
|
|
34
|
-
changeIcon() {
|
|
35
|
-
this.icons.getIcon(this.icon, this.activeIcon || `${this.icon}-active`, this.active).then(icon => {
|
|
36
|
-
if (this.icons.isDisabled)
|
|
37
|
-
return;
|
|
38
|
-
this.element.nativeElement.innerHTML = icon;
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ICON_SERVICE }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
42
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: IconDirective, selector: "[icon]", inputs: { icon: "icon", activeIcon: "activeIcon", active: "active" }, outputs: { activeChange: "activeChange" }, host: { listeners: { "click": "click()" }, properties: { "class.active": "this.isActive" } }, usesOnChanges: true, ngImport: i0 }); }
|
|
43
|
-
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconDirective, decorators: [{
|
|
45
|
-
type: Directive,
|
|
46
|
-
args: [{
|
|
47
|
-
selector: "[icon]"
|
|
48
|
-
}]
|
|
49
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
|
|
50
|
-
type: Inject,
|
|
51
|
-
args: [ICON_SERVICE]
|
|
52
|
-
}] }], propDecorators: { icon: [{
|
|
53
|
-
type: Input
|
|
54
|
-
}], activeIcon: [{
|
|
55
|
-
type: Input
|
|
56
|
-
}], active: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], activeChange: [{
|
|
59
|
-
type: Output
|
|
60
|
-
}], isActive: [{
|
|
61
|
-
type: HostBinding,
|
|
62
|
-
args: ["class.active"]
|
|
63
|
-
}], click: [{
|
|
64
|
-
type: HostListener,
|
|
65
|
-
args: ["click"]
|
|
66
|
-
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LXV0aWxzL2RpcmVjdGl2ZXMvaWNvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFJTCxNQUFNLEVBQ04sU0FBUyxFQUVaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxZQUFZLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFLM0QsTUFBTSxPQUFPLGFBQWE7SUFPdEIsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFJRCxZQUFvQixPQUFtQixFQUFVLFFBQW1CLEVBQWdDLEtBQW1CO1FBQW5HLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQWdDLFVBQUssR0FBTCxLQUFLLENBQWM7UUFDbkgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBQ3BELENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxXQUFXO1lBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLFlBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLFlBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ2hHLENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUdELEtBQUs7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTyxVQUFVO1FBQ2QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDN0YsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVU7Z0JBQUUsT0FBTztZQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0FoRFEsYUFBYSxxRUFjd0QsWUFBWTttR0FkakYsYUFBYTs7NEZBQWIsYUFBYTtrQkFIekIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsUUFBUTtpQkFDckI7OzBCQWUwRSxNQUFNOzJCQUFDLFlBQVk7eUNBWmpGLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUdILFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxjQUFjO2dCQThCM0IsS0FBSztzQkFESixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRGlyZWN0aXZlLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5qZWN0LFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPbkluaXQsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBSZW5kZXJlcjIsXHJcbiAgICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7SUNPTl9TRVJWSUNFLCBJSWNvblNlcnZpY2V9IGZyb20gXCIuLi9jb21tb24tdHlwZXNcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwiW2ljb25dXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEljb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBhY3RpdmVJY29uOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBhY3RpdmU6IGJvb2xlYW47XHJcbiAgICBAT3V0cHV0KCkgYWN0aXZlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuYWN0aXZlXCIpXHJcbiAgICBnZXQgaXNBY3RpdmUoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBpY29uc0xvYWRlZDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBASW5qZWN0KElDT05fU0VSVklDRSkgcHJpdmF0ZSBpY29uczogSUljb25TZXJ2aWNlKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgXCJzdmctaWNvblwiKTtcclxuICAgICAgICB0aGlzLmFjdGl2ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmljb25zTG9hZGVkID0gdGhpcy5pY29ucy5pY29uc0xvYWRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGFuZ2VJY29uKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmljb25zTG9hZGVkKVxyXG4gICAgICAgICAgICB0aGlzLmljb25zTG9hZGVkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIGlmIChjaGFuZ2VzLmljb24pIHtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgYHN2Zy1pY29uLSR7Y2hhbmdlcy5pY29uLnByZXZpb3VzVmFsdWV9YCk7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIGBzdmctaWNvbi0ke2NoYW5nZXMuaWNvbi5jdXJyZW50VmFsdWV9YCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2hhbmdlSWNvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiKVxyXG4gICAgY2xpY2soKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmUgPSAhdGhpcy5hY3RpdmU7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZSk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VJY29uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGFuZ2VJY29uKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaWNvbnMuZ2V0SWNvbih0aGlzLmljb24sIHRoaXMuYWN0aXZlSWNvbiB8fCBgJHt0aGlzLmljb259LWFjdGl2ZWAsIHRoaXMuYWN0aXZlKS50aGVuKGljb24gPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pY29ucy5pc0Rpc2FibGVkKSByZXR1cm47XHJcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IGljb247XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|