@ajf/material 18.3.2 → 18.4.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/esm2022/form-builder/form-builder-module.mjs +9 -2
- package/esm2022/form-builder/form-builder-service.mjs +61 -20
- package/esm2022/form-builder/form-builder.mjs +73 -9
- package/esm2022/form-builder/node-entry.mjs +3 -3
- package/esm2022/form-builder/node-properties.mjs +2 -2
- package/esm2022/form-builder/node-type-entry.mjs +3 -3
- package/esm2022/form-builder/node-type-groups.pipe.mjs +65 -0
- package/esm2022/form-builder/public_api.mjs +2 -1
- package/esm2022/form-builder/string-identifier-dialog.mjs +44 -60
- package/esm2022/forms/range-field.mjs +13 -5
- package/fesm2022/ajf-material-form-builder.mjs +258 -98
- package/fesm2022/ajf-material-form-builder.mjs.map +1 -1
- package/fesm2022/ajf-material-forms.mjs +9 -2
- package/fesm2022/ajf-material-forms.mjs.map +1 -1
- package/form-builder/form-builder-module.d.ts +27 -25
- package/form-builder/form-builder-service.d.ts +25 -0
- package/form-builder/form-builder.d.ts +41 -2
- package/form-builder/node-type-groups.pipe.d.ts +45 -0
- package/form-builder/public_api.d.ts +1 -0
- package/form-builder/string-identifier-dialog.d.ts +10 -16
- package/forms/range-field.d.ts +5 -0
- package/package.json +2 -2
|
@@ -38,12 +38,12 @@ export class AjfFbNodeTypeEntry {
|
|
|
38
38
|
this._cdr = _cdr;
|
|
39
39
|
}
|
|
40
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfFbNodeTypeEntry, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AjfFbNodeTypeEntry, selector: "ajf-fb-node-type-entry", inputs: { nodeType: "nodeType" }, ngImport: i0, template: "<ng-container *ngIf=\"nodeType\">\n <ajf-node-icon [node]=\"node\"></ajf-node-icon
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AjfFbNodeTypeEntry, selector: "ajf-fb-node-type-entry", inputs: { nodeType: "nodeType" }, ngImport: i0, template: "<ng-container *ngIf=\"nodeType\">\n <ajf-node-icon [node]=\"node\"></ajf-node-icon><span class=\"ajf-node-type-label\">{{nodeType.label}}</span>\n</ng-container>\n", styles: ["ajf-fb-node-type-entry{display:flex;align-items:center;gap:11px;padding:7px 8px;margin-bottom:2px;border-radius:8px;font-size:13.5px;cursor:pointer}ajf-fb-node-type-entry ajf-node-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:7px;background:color-mix(in srgb,currentColor 12%,transparent)}ajf-fb-node-type-entry .ajf-node-type-label{min-width:0;line-height:1.25}ajf-fb-node-type-entry mat-icon{vertical-align:middle;font-size:18px;width:18px;height:18px}\n"], dependencies: [{ kind: "component", type: i1.AjfNodeIcon, selector: "ajf-node-icon" }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
42
42
|
}
|
|
43
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfFbNodeTypeEntry, decorators: [{
|
|
44
44
|
type: Component,
|
|
45
|
-
args: [{ selector: 'ajf-fb-node-type-entry', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"nodeType\">\n <ajf-node-icon [node]=\"node\"></ajf-node-icon
|
|
45
|
+
args: [{ selector: 'ajf-fb-node-type-entry', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"nodeType\">\n <ajf-node-icon [node]=\"node\"></ajf-node-icon><span class=\"ajf-node-type-label\">{{nodeType.label}}</span>\n</ng-container>\n", styles: ["ajf-fb-node-type-entry{display:flex;align-items:center;gap:11px;padding:7px 8px;margin-bottom:2px;border-radius:8px;font-size:13.5px;cursor:pointer}ajf-fb-node-type-entry ajf-node-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:7px;background:color-mix(in srgb,currentColor 12%,transparent)}ajf-fb-node-type-entry .ajf-node-type-label{min-width:0;line-height:1.25}ajf-fb-node-type-entry mat-icon{vertical-align:middle;font-size:18px;width:18px;height:18px}\n"] }]
|
|
46
46
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { nodeType: [{
|
|
47
47
|
type: Input
|
|
48
48
|
}] } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlLWVudHJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwvZm9ybS1idWlsZGVyL3NyYy9ub2RlLXR5cGUtZW50cnkudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC9mb3JtLWJ1aWxkZXIvc3JjL25vZGUtdHlwZS1lbnRyeS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUVILE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULEtBQUssRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7Ozs7QUFXdkIsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQ0ksUUFBUSxDQUFDLFFBQWlEO1FBQzVELElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQsWUFBb0IsSUFBdUI7UUFBdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7SUFBRyxDQUFDOytHQWRwQyxrQkFBa0I7bUdBQWxCLGtCQUFrQixnR0N2Qy9CLHNLQUdBOzs0RkRvQ2Esa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLHdCQUF3QixpQkFHbkIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTtzRkFRM0MsUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtBamZGb3JtQnVpbGRlck5vZGVUeXBlRW50cnl9IGZyb20gJy4vZm9ybS1idWlsZGVyLXNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhamYtZmItbm9kZS10eXBlLWVudHJ5JyxcbiAgdGVtcGxhdGVVcmw6ICdub2RlLXR5cGUtZW50cnkuaHRtbCcsXG4gIHN0eWxlVXJsczogWydub2RlLXR5cGUtZW50cnkuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQWpmRmJOb2RlVHlwZUVudHJ5IHtcbiAgcHJpdmF0ZSBfbm9kZVR5cGU6IEFqZkZvcm1CdWlsZGVyTm9kZVR5cGVFbnRyeSB8IHVuZGVmaW5lZDtcbiAgZ2V0IG5vZGVUeXBlKCk6IEFqZkZvcm1CdWlsZGVyTm9kZVR5cGVFbnRyeSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX25vZGVUeXBlO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBub2RlVHlwZShub2RlVHlwZTogQWpmRm9ybUJ1aWxkZXJOb2RlVHlwZUVudHJ5IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fbm9kZVR5cGUgPSBub2RlVHlwZTtcbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgZ2V0IG5vZGUoKTogYW55IHtcbiAgICByZXR1cm4ge25vZGVUeXBlOiB0aGlzLm5vZGVUeXBlPy5ub2RlVHlwZS5ub2RlLCBmaWVsZFR5cGU6IHRoaXMubm9kZVR5cGU/Lm5vZGVUeXBlLmZpZWxkfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZVR5cGVcIj5cbiAgPGFqZi1ub2RlLWljb24gW25vZGVdPVwibm9kZVwiPjwvYWpmLW5vZGUtaWNvbj48c3BhbiBjbGFzcz1cImFqZi1ub2RlLXR5cGUtbGFiZWxcIj57e25vZGVUeXBlLmxhYmVsfX08L3NwYW4+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright (C) Gnucoop soc. coop.
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Advanced JSON forms (ajf).
|
|
6
|
+
*
|
|
7
|
+
* Advanced JSON forms (ajf) is free software: you can redistribute it and/or
|
|
8
|
+
* modify it under the terms of the GNU Affero General Public License as
|
|
9
|
+
* published by the Free Software Foundation, either version 3 of the License,
|
|
10
|
+
* or (at your option) any later version.
|
|
11
|
+
*
|
|
12
|
+
* Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
|
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
15
|
+
* General Public License for more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
18
|
+
* along with Advanced JSON forms (ajf).
|
|
19
|
+
* If not, see http://www.gnu.org/licenses/.
|
|
20
|
+
*
|
|
21
|
+
*/
|
|
22
|
+
import { Pipe } from '@angular/core';
|
|
23
|
+
import * as i0 from "@angular/core";
|
|
24
|
+
/**
|
|
25
|
+
* Groups the node types of the palette by category, keeping the categories in
|
|
26
|
+
* the order of their first entry. Applied after the search filter, so that the
|
|
27
|
+
* categories left without entries produce no header.
|
|
28
|
+
*/
|
|
29
|
+
export class NodeTypeGroupsPipe {
|
|
30
|
+
transform(nodeTypes) {
|
|
31
|
+
if (!nodeTypes) {
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
const groups = [];
|
|
35
|
+
const groupsByCategory = new Map();
|
|
36
|
+
// Entries with no category are collected in a trailing group with no
|
|
37
|
+
// header, so that the node types added by the host app are never hidden.
|
|
38
|
+
const uncategorized = [];
|
|
39
|
+
nodeTypes.forEach(nodeType => {
|
|
40
|
+
const category = nodeType.category;
|
|
41
|
+
if (!category) {
|
|
42
|
+
uncategorized.push(nodeType);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
let group = groupsByCategory.get(category);
|
|
46
|
+
if (group == null) {
|
|
47
|
+
group = { category, nodeTypes: [] };
|
|
48
|
+
groupsByCategory.set(category, group);
|
|
49
|
+
groups.push(group);
|
|
50
|
+
}
|
|
51
|
+
group.nodeTypes.push(nodeType);
|
|
52
|
+
});
|
|
53
|
+
if (uncategorized.length > 0) {
|
|
54
|
+
groups.push({ category: '', nodeTypes: uncategorized });
|
|
55
|
+
}
|
|
56
|
+
return groups;
|
|
57
|
+
}
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NodeTypeGroupsPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
59
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: NodeTypeGroupsPipe, name: "nodeTypeGroups" }); }
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NodeTypeGroupsPipe, decorators: [{
|
|
62
|
+
type: Pipe,
|
|
63
|
+
args: [{ name: 'nodeTypeGroups' }]
|
|
64
|
+
}] });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS10eXBlLWdyb3Vwcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwvZm9ybS1idWlsZGVyL3NyYy9ub2RlLXR5cGUtZ3JvdXBzLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBRUgsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7O0FBZ0JsRDs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixTQUFTLENBQUMsU0FBd0M7UUFDaEQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2YsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQWtDLEVBQUUsQ0FBQztRQUNqRCxNQUFNLGdCQUFnQixHQUFHLElBQUksR0FBRyxFQUF1QyxDQUFDO1FBQ3hFLHFFQUFxRTtRQUNyRSx5RUFBeUU7UUFDekUsTUFBTSxhQUFhLEdBQWtDLEVBQUUsQ0FBQztRQUV4RCxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNkLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzdCLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNDLElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNsQixLQUFLLEdBQUcsRUFBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBQyxDQUFDO2dCQUNsQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN0QyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JCLENBQUM7WUFDRCxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFDLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzsrR0E5QlUsa0JBQWtCOzZHQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBRDlCLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7UGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7QWpmRm9ybUJ1aWxkZXJOb2RlVHlwZUVudHJ5fSBmcm9tICcuL2Zvcm0tYnVpbGRlci1zZXJ2aWNlJztcblxuLyoqXG4gKiBBIGdyb3VwIG9mIG5vZGUgdHlwZXMgb2YgdGhlIHBhbGV0dGUsIHJlbmRlcmVkIHVuZGVyIGEgY29tbW9uIGhlYWRlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBamZGb3JtQnVpbGRlck5vZGVUeXBlR3JvdXAge1xuICAvKipcbiAgICogVGhlIHRyYW5zbGF0aW9uIGtleSBvZiB0aGUgZ3JvdXAgaGVhZGVyLiBFbXB0eSBmb3IgdGhlIGdyb3VwIG9mIHRoZSBlbnRyaWVzXG4gICAqIHRoYXQgaGF2ZSBubyBjYXRlZ29yeSwgd2hpY2ggaXMgcmVuZGVyZWQgd2l0aG91dCBhIGhlYWRlci5cbiAgICovXG4gIGNhdGVnb3J5OiBzdHJpbmc7XG4gIG5vZGVUeXBlczogQWpmRm9ybUJ1aWxkZXJOb2RlVHlwZUVudHJ5W107XG59XG5cbi8qKlxuICogR3JvdXBzIHRoZSBub2RlIHR5cGVzIG9mIHRoZSBwYWxldHRlIGJ5IGNhdGVnb3J5LCBrZWVwaW5nIHRoZSBjYXRlZ29yaWVzIGluXG4gKiB0aGUgb3JkZXIgb2YgdGhlaXIgZmlyc3QgZW50cnkuIEFwcGxpZWQgYWZ0ZXIgdGhlIHNlYXJjaCBmaWx0ZXIsIHNvIHRoYXQgdGhlXG4gKiBjYXRlZ29yaWVzIGxlZnQgd2l0aG91dCBlbnRyaWVzIHByb2R1Y2Ugbm8gaGVhZGVyLlxuICovXG5AUGlwZSh7bmFtZTogJ25vZGVUeXBlR3JvdXBzJ30pXG5leHBvcnQgY2xhc3MgTm9kZVR5cGVHcm91cHNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShub2RlVHlwZXM6IEFqZkZvcm1CdWlsZGVyTm9kZVR5cGVFbnRyeVtdKTogQWpmRm9ybUJ1aWxkZXJOb2RlVHlwZUdyb3VwW10ge1xuICAgIGlmICghbm9kZVR5cGVzKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGNvbnN0IGdyb3VwczogQWpmRm9ybUJ1aWxkZXJOb2RlVHlwZUdyb3VwW10gPSBbXTtcbiAgICBjb25zdCBncm91cHNCeUNhdGVnb3J5ID0gbmV3IE1hcDxzdHJpbmcsIEFqZkZvcm1CdWlsZGVyTm9kZVR5cGVHcm91cD4oKTtcbiAgICAvLyBFbnRyaWVzIHdpdGggbm8gY2F0ZWdvcnkgYXJlIGNvbGxlY3RlZCBpbiBhIHRyYWlsaW5nIGdyb3VwIHdpdGggbm9cbiAgICAvLyBoZWFkZXIsIHNvIHRoYXQgdGhlIG5vZGUgdHlwZXMgYWRkZWQgYnkgdGhlIGhvc3QgYXBwIGFyZSBuZXZlciBoaWRkZW4uXG4gICAgY29uc3QgdW5jYXRlZ29yaXplZDogQWpmRm9ybUJ1aWxkZXJOb2RlVHlwZUVudHJ5W10gPSBbXTtcblxuICAgIG5vZGVUeXBlcy5mb3JFYWNoKG5vZGVUeXBlID0+IHtcbiAgICAgIGNvbnN0IGNhdGVnb3J5ID0gbm9kZVR5cGUuY2F0ZWdvcnk7XG4gICAgICBpZiAoIWNhdGVnb3J5KSB7XG4gICAgICAgIHVuY2F0ZWdvcml6ZWQucHVzaChub2RlVHlwZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGxldCBncm91cCA9IGdyb3Vwc0J5Q2F0ZWdvcnkuZ2V0KGNhdGVnb3J5KTtcbiAgICAgIGlmIChncm91cCA9PSBudWxsKSB7XG4gICAgICAgIGdyb3VwID0ge2NhdGVnb3J5LCBub2RlVHlwZXM6IFtdfTtcbiAgICAgICAgZ3JvdXBzQnlDYXRlZ29yeS5zZXQoY2F0ZWdvcnksIGdyb3VwKTtcbiAgICAgICAgZ3JvdXBzLnB1c2goZ3JvdXApO1xuICAgICAgfVxuICAgICAgZ3JvdXAubm9kZVR5cGVzLnB1c2gobm9kZVR5cGUpO1xuICAgIH0pO1xuXG4gICAgaWYgKHVuY2F0ZWdvcml6ZWQubGVuZ3RoID4gMCkge1xuICAgICAgZ3JvdXBzLnB1c2goe2NhdGVnb3J5OiAnJywgbm9kZVR5cGVzOiB1bmNhdGVnb3JpemVkfSk7XG4gICAgfVxuICAgIHJldHVybiBncm91cHM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -23,4 +23,5 @@ export * from './form-builder-module';
|
|
|
23
23
|
export * from './form-builder-service';
|
|
24
24
|
export * from './form-builder-utils';
|
|
25
25
|
export * from './form-builder';
|
|
26
|
-
|
|
26
|
+
export * from './node-type-groups.pipe';
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsL2Zvcm0tYnVpbGRlci9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1idWlsZGVyLW1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tYnVpbGRlci1zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1idWlsZGVyLXV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1idWlsZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbm9kZS10eXBlLWdyb3Vwcy5waXBlJztcbiJdfQ==
|
|
@@ -1,78 +1,62 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { MatTableDataSource } from '@angular/material/table';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { FormControl } from '@angular/forms';
|
|
4
3
|
import { Subscription } from 'rxjs';
|
|
5
|
-
import { map, shareReplay } from 'rxjs/operators';
|
|
4
|
+
import { debounceTime, distinctUntilChanged, map, shareReplay, startWith } from 'rxjs/operators';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
import * as i1 from "./form-builder-service";
|
|
8
7
|
import * as i2 from "@angular/common";
|
|
9
8
|
import * as i3 from "@angular/forms";
|
|
10
|
-
import * as i4 from "@angular/material/
|
|
11
|
-
import * as i5 from "@angular/material/
|
|
12
|
-
import * as i6 from "@angular/material/
|
|
13
|
-
import * as i7 from "@angular/material/
|
|
14
|
-
import * as i8 from "@angular/material/
|
|
15
|
-
import * as i9 from "
|
|
16
|
-
import * as i10 from "@
|
|
17
|
-
import * as i11 from "@angular/material/input";
|
|
18
|
-
import * as i12 from "@angular/material/select";
|
|
19
|
-
import * as i13 from "@angular/material/table";
|
|
20
|
-
import * as i14 from "@ngneat/transloco";
|
|
9
|
+
import * as i4 from "@angular/material/core";
|
|
10
|
+
import * as i5 from "@angular/material/button";
|
|
11
|
+
import * as i6 from "@angular/material/dialog";
|
|
12
|
+
import * as i7 from "@angular/material/form-field";
|
|
13
|
+
import * as i8 from "@angular/material/select";
|
|
14
|
+
import * as i9 from "ngx-mat-select-search";
|
|
15
|
+
import * as i10 from "@ngneat/transloco";
|
|
21
16
|
export class AjfFbStringIdentifierDialogComponent {
|
|
22
|
-
constructor(_service
|
|
17
|
+
constructor(_service) {
|
|
23
18
|
this._service = _service;
|
|
24
|
-
this.
|
|
25
|
-
this.
|
|
26
|
-
this.
|
|
27
|
-
this.
|
|
19
|
+
this.searchFilterCtrl = new FormControl('', { nonNullable: true });
|
|
20
|
+
this.selectedFieldNames = [];
|
|
21
|
+
this._fields = [];
|
|
22
|
+
this._fieldsSub = Subscription.EMPTY;
|
|
28
23
|
this._stringIdentifierSub = Subscription.EMPTY;
|
|
24
|
+
this.fields$ = _service.flatFields.pipe(map(fields => fields
|
|
25
|
+
.filter(f => f.name.length > 0)
|
|
26
|
+
.sort((f1, f2) => (f1.label || f1.name).localeCompare(f2.label || f2.name))), shareReplay(1));
|
|
27
|
+
this._fieldsSub = this.fields$.subscribe(fields => {
|
|
28
|
+
this._fields = fields;
|
|
29
|
+
});
|
|
29
30
|
this._stringIdentifierSub = _service.stringIdentifier.subscribe(identifier => {
|
|
30
|
-
this.
|
|
31
|
+
this.selectedFieldNames = identifier
|
|
32
|
+
.map(entry => entry.value[0])
|
|
33
|
+
.filter((name) => name != null);
|
|
31
34
|
});
|
|
32
|
-
this.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
deleteRow(rowIdx) {
|
|
41
|
-
this.dataSource.data = [
|
|
42
|
-
...this.dataSource.data.slice(0, rowIdx),
|
|
43
|
-
...this.dataSource.data.slice(rowIdx + 1),
|
|
44
|
-
];
|
|
45
|
-
}
|
|
46
|
-
addValue(row, evt, valueInput) {
|
|
47
|
-
if (evt.value.length === 0) {
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
row.value = [...row.value, evt.value];
|
|
51
|
-
valueInput.value = '';
|
|
52
|
-
this._cdr.markForCheck();
|
|
53
|
-
}
|
|
54
|
-
removeValue(row, value) {
|
|
55
|
-
const idx = row.value.indexOf(value);
|
|
56
|
-
if (idx > -1) {
|
|
57
|
-
row.value = [...row.value.slice(0, idx), ...row.value.slice(idx + 1)];
|
|
58
|
-
this._cdr.markForCheck();
|
|
59
|
-
}
|
|
35
|
+
this.filteredFields$ = this.searchFilterCtrl.valueChanges.pipe(debounceTime(150), distinctUntilChanged(), startWith(''), map(search => {
|
|
36
|
+
const fields = this._fields;
|
|
37
|
+
if (!search) {
|
|
38
|
+
return fields;
|
|
39
|
+
}
|
|
40
|
+
const lowerSearch = search.toLowerCase();
|
|
41
|
+
return fields.filter(f => (f.label || f.name).toLowerCase().includes(lowerSearch));
|
|
42
|
+
}));
|
|
60
43
|
}
|
|
61
44
|
ngOnDestroy() {
|
|
45
|
+
this._fieldsSub.unsubscribe();
|
|
62
46
|
this._stringIdentifierSub.unsubscribe();
|
|
63
47
|
}
|
|
64
48
|
saveStringIdentifier() {
|
|
65
|
-
this.
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
this.
|
|
70
|
-
}
|
|
71
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfFbStringIdentifierDialogComponent, deps: [{ token: i1.AjfFormBuilderService }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AjfFbStringIdentifierDialogComponent, selector: "ajf-fb-string-identifier-dialog", ngImport: i0, template: "<h3 matDialogTitle>{{'
|
|
49
|
+
const identifier = this.selectedFieldNames
|
|
50
|
+
.map(name => this._fields.find(f => f.name === name))
|
|
51
|
+
.filter((f) => f != null)
|
|
52
|
+
.map(f => ({ label: f.label || f.name, value: [f.name] }));
|
|
53
|
+
this._service.saveStringIdentifier(identifier);
|
|
54
|
+
}
|
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfFbStringIdentifierDialogComponent, deps: [{ token: i1.AjfFormBuilderService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
56
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AjfFbStringIdentifierDialogComponent, selector: "ajf-fb-string-identifier-dialog", ngImport: i0, template: "<h3 matDialogTitle>{{'Default columns'|transloco}}</h3>\n<mat-dialog-content>\n <p>{{'Select the fields that will be shown as columns in the form list page'|transloco}}</p>\n <mat-form-field class=\"ajf-string-identifier-select\">\n <mat-select multiple [(ngModel)]=\"selectedFieldNames\">\n <mat-option>\n <ngx-mat-select-search\n [formControl]=\"searchFilterCtrl\"\n [placeholderLabel]=\"'Search'|transloco\"\n [noEntriesFoundLabel]=\"'Nothing found'|transloco\"\n [enableClearOnEscapePressed]=\"true\">\n </ngx-mat-select-search>\n </mat-option>\n <mat-option *ngFor=\"let field of filteredFields$ | async\" [value]=\"field.name\">\n {{field.label || field.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n</mat-dialog-content>\n<mat-dialog-actions>\n <button mat-raised-button color=\"warn\" matDialogClose>\n {{'Close'|transloco}}\n </button>\n <button mat-raised-button color=\"primary\" matDialogClose (click)=\"saveStringIdentifier()\">\n {{'Save'|transloco}}\n </button>\n</mat-dialog-actions>\n", styles: ["ajf-fb-string-identifier-dialog h3,ajf-fb-string-identifier-dialog p{text-align:center}ajf-fb-string-identifier-dialog .ajf-string-identifier-select{display:block;min-width:200px;width:70%;margin:20px auto}ajf-fb-string-identifier-dialog mat-dialog-actions.mat-mdc-dialog-actions{display:flex;justify-content:space-evenly;align-items:center}ajf-fb-string-identifier-dialog mat-dialog-actions.mat-mdc-dialog-actions .mat-mdc-button-base{min-width:100px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i6.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i6.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i6.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i9.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti", "recreateValuesArray"], outputs: ["toggleAll"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslocoPipe, name: "transloco" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
73
57
|
}
|
|
74
58
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfFbStringIdentifierDialogComponent, decorators: [{
|
|
75
59
|
type: Component,
|
|
76
|
-
args: [{ selector: 'ajf-fb-string-identifier-dialog', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<h3 matDialogTitle>{{'
|
|
77
|
-
}], ctorParameters: () => [{ type: i1.AjfFormBuilderService }
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWlkZW50aWZpZXItZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwvZm9ybS1idWlsZGVyL3NyYy9zdHJpbmctaWRlbnRpZmllci1kaWFsb2cudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC9mb3JtLWJ1aWxkZXIvc3JjL3N0cmluZy1pZGVudGlmaWVyLWRpYWxvZy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVCQSxPQUFPLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQWEsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxHQUFHLEVBQUUsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXaEQsTUFBTSxPQUFPLG9DQUFvQztJQVMvQyxZQUFvQixRQUErQixFQUFVLElBQXVCO1FBQWhFLGFBQVEsR0FBUixRQUFRLENBQXVCO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFSM0UsZUFBVSxHQUNqQixJQUFJLGtCQUFrQixFQUEyQixDQUFDO1FBQzNDLHFCQUFnQixHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFeEQsdUJBQWtCLEdBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFL0MseUJBQW9CLEdBQWlCLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFHOUQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFD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WUFBWSxFQUFFLENBQUM7SUFDM0IsQ0FBQzsrR0FuRVUsb0NBQW9DO21HQUFwQyxvQ0FBb0MsdUVDOUNqRCxvc0dBb0ZBOzs0RkR0Q2Esb0NBQW9DO2tCQVBoRCxTQUFTOytCQUNFLGlDQUFpQyxtQkFHMUIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuaW1wb3J0IHtBamZGb3JtU3RyaW5nSWRlbnRpZmllcn0gZnJvbSAnQGFqZi9jb3JlL2Zvcm1zJztcbmltcG9ydCB7Q09NTUEsIEVOVEVSfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtNYXRDaGlwSW5wdXRFdmVudH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHtNYXRUYWJsZURhdGFTb3VyY2V9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzaGFyZVJlcGxheX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge0FqZkZvcm1CdWlsZGVyU2VydmljZX0gZnJvbSAnLi9mb3JtLWJ1aWxkZXItc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FqZi1mYi1zdHJpbmctaWRlbnRpZmllci1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJ3N0cmluZy1pZGVudGlmaWVyLWRpYWxvZy5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3RyaW5nLWlkZW50aWZpZXItZGlhbG9nLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFqZkZiU3RyaW5nSWRlbnRpZmllckRpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGRhdGFTb3VyY2U6IE1hdFRhYmxlRGF0YVNvdXJjZTxBamZGb3JtU3RyaW5nSWRlbnRpZmllcj4gPVxuICAgIG5ldyBNYXRUYWJsZURhdGFTb3VyY2U8QWpmRm9ybVN0cmluZ0lkZW50aWZpZXI+KCk7XG4gIHJlYWRvbmx5IGRpc3BsYXllZENvbHVtbnMgPSBbJ2xhYmVsJywgJ3ZhbHVlJywgJ3Nob3cnLCAnZGVsZXRlJ107XG4gIHJlYWRvbmx5IGZpZWxkcyQ6IE9ic2VydmFibGU8c3RyaW5nW10+O1xuICByZWFkb25seSBzZXBhcmF0b3JLZXlzQ29kZXM6IG51bWJlcltdID0gW0VOVEVSLCBDT01NQV07XG5cbiAgcHJpdmF0ZSBfc3RyaW5nSWRlbnRpZmllclN1YjogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3NlcnZpY2U6IEFqZkZvcm1CdWlsZGVyU2VydmljZSwgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHRoaXMuX3N0cmluZ0lkZW50aWZpZXJTdWIgPSBfc2VydmljZS5zdHJpbmdJZGVudGlmaWVyLnN1YnNjcmliZShpZGVudGlmaWVyID0+IHtcbiAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gWy4uLmlkZW50aWZpZXJdO1xuICAgIH0pO1xuICAgIHRoaXMuZmllbGRzJCA9IF9zZXJ2aWNlLmZsYXRGaWVsZHMucGlwZShcbiAgICAgIG1hcChmaWVsZHMgPT5cbiAgICAgICAgZmllbGRzXG4gICAgICAgICAgLnNvcnQoKGYxLCBmMikgPT4gZjEubmFtZS5sb2NhbGVDb21wYXJlKGYyLm5hbWUpKVxuICAgICAgICAgIC5tYXAoZiA9PiBmLm5hbWUpXG4gICAgICAgICAgLmZpbHRlcihmID0+IGYubGVuZ3RoID4gMCksXG4gICAgICApLFxuICAgICAgc2hhcmVSZXBsYXkoMSksXG4gICAgKTtcbiAgfVxuXG4gIGFkZFJvdygpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IFsuLi50aGlzLmRhdGFTb3VyY2UuZGF0YSwge2xhYmVsOiAnJywgdmFsdWU6IFtdLCBzaG93OiB1bmRlZmluZWR9XTtcbiAgfVxuXG4gIGRlbGV0ZVJvdyhyb3dJZHg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gW1xuICAgICAgLi4udGhpcy5kYXRhU291cmNlLmRhdGEuc2xpY2UoMCwgcm93SWR4KSxcbiAgICAgIC4uLnRoaXMuZGF0YVNvdXJjZS5kYXRhLnNsaWNlKHJvd0lkeCArIDEpLFxuICAgIF07XG4gIH1cblxuICBhZGRWYWx1ZShcbiAgICByb3c6IEFqZkZvcm1TdHJpbmdJZGVudGlmaWVyLFxuICAgIGV2dDogTWF0Q2hpcElucHV0RXZlbnQsXG4gICAgdmFsdWVJbnB1dDogSFRNTElucHV0RWxlbWVudCxcbiAgKTogdm9pZCB7XG4gICAgaWYgKGV2dC52YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcm93LnZhbHVlID0gWy4uLnJvdy52YWx1ZSwgZXZ0LnZhbHVlXTtcbiAgICB2YWx1ZUlucHV0LnZhbHVlID0gJyc7XG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcmVtb3ZlVmFsdWUocm93OiBBamZGb3JtU3RyaW5nSWRlbnRpZmllciwgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGlkeCA9IHJvdy52YWx1ZS5pbmRleE9mKHZhbHVlKTtcbiAgICBpZiAoaWR4ID4gLTEpIHtcbiAgICAgIHJvdy52YWx1ZSA9IFsuLi5yb3cudmFsdWUuc2xpY2UoMCwgaWR4KSwgLi4ucm93LnZhbHVlLnNsaWNlKGlkeCArIDEpXTtcbiAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdHJpbmdJZGVudGlmaWVyU3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBzYXZlU3RyaW5nSWRlbnRpZmllcigpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXJ2aWNlLnNhdmVTdHJpbmdJZGVudGlmaWVyKHRoaXMuZGF0YVNvdXJjZS5kYXRhKTtcbiAgfVxuXG4gIHNlbGVjdGVkKHJvdzogQWpmRm9ybVN0cmluZ0lkZW50aWZpZXIsIGV2dDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCk6IHZvaWQge1xuICAgIHJvdy52YWx1ZSA9IFsuLi5yb3cudmFsdWUsIGV2dC5vcHRpb24udmFsdWVdO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIiwiPGgzIG1hdERpYWxvZ1RpdGxlPnt7J0VkaXQgaWRlbnRpZmllcid8dHJhbnNsb2NvfX08L2gzPlxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgPGJ1dHRvbiAoY2xpY2spPVwiYWRkUm93KClcIiBtYXQtYnV0dG9uPlxuICAgIDxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPlxuICAgIDxzcGFuPnt7J0FkZCB2YWx1ZSd8dHJhbnNsb2NvfX08L3NwYW4+XG4gIDwvYnV0dG9uPlxuICA8bWF0LXRhYmxlIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIj5cbiAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImxhYmVsXCI+XG4gICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPnt7J0xhYmVsJ3x0cmFuc2xvY299fTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHJvdzsgbGV0IGlkeCA9IGluZGV4XCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0xhYmVsJ3x0cmFuc2xvY29cIlxuICAgICAgICAgICAgYXV0b2ZvY3VzXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInJvdy5sYWJlbFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvbWF0LWNlbGw+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJ2YWx1ZVwiPlxuICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj57eydWYWx1ZSd8dHJhbnNsb2NvfX08L21hdC1oZWFkZXItY2VsbD5cbiAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3c7IGxldCBpZHggPSBpbmRleFwiPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPG1hdC1jaGlwLWdyaWQgI2NoaXBMaXN0PlxuICAgICAgICAgICAgPG1hdC1jaGlwLXJvd1xuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2Ygcm93LnZhbHVlXCJcbiAgICAgICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlVmFsdWUocm93LCBmaWVsZClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBmaWVsZCB9fVxuICAgICAgICAgICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZT5jYW5jZWw8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9tYXQtY2hpcC1yb3c+XG4gICAgICAgICAgPC9tYXQtY2hpcC1ncmlkPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI3ZhbHVlSW5wdXRcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cInJvdy52YWx1ZVwiXG4gICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cInZhbHVlQWNcIlxuICAgICAgICAgICAgW21hdENoaXBJbnB1dEZvcl09XCJjaGlwTGlzdFwiXG4gICAgICAgICAgICBbbWF0Q2hpcElucHV0U2VwYXJhdG9yS2V5Q29kZXNdPVwic2VwYXJhdG9yS2V5c0NvZGVzXCJcbiAgICAgICAgICAgIFttYXRDaGlwSW5wdXRBZGRPbkJsdXJdPVwidHJ1ZVwiXG4gICAgICAgICAgICAobWF0Q2hpcElucHV0VG9rZW5FbmQpPVwiYWRkVmFsdWUocm93LCAkZXZlbnQsIHZhbHVlSW5wdXQpXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInVmFsdWUnfHRyYW5zbG9jb1wiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8bWF0LWF1dG9jb21wbGV0ZVxuICAgICAgICAgICAgI3ZhbHVlQWM9XCJtYXRBdXRvY29tcGxldGVcIlxuICAgICAgICAgICAgKG9wdGlvblNlbGVjdGVkKT1cInNlbGVjdGVkKHJvdywgJGV2ZW50KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGZpZWxkIG9mIGZpZWxkcyQgfCBhc3luY1wiIFt2YWx1ZV09XCJmaWVsZFwiXG4gICAgICAgICAgICAgID57e2ZpZWxkfX08L21hdC1vcHRpb25cbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8L21hdC1jZWxsPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwic2hvd1wiPlxuICAgICAgPG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj57eydTaG93J3x0cmFuc2xvY299fTwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHJvdzsgbGV0IGlkeCA9IGluZGV4XCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8bWF0LXNlbGVjdCBtYXROYXRpdmVDb250cm9sIFsobmdNb2RlbCldPVwicm93LnNob3dcIj5cbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiYWxsXCI+e3snQWxsJ3x0cmFuc2xvY299fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiZmlyc3RcIj57eydGaXJzdCd8dHJhbnNsb2NvfX08L21hdC1vcHRpb24+XG4gICAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cImxhc3RcIj57eydMYXN0J3x0cmFuc2xvY299fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8L21hdC1jZWxsPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZGVsZXRlXCI+XG4gICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmXG4gICAgICAgID57eydEZWxldGUnfHRyYW5zbG9jb319PC9tYXQtaGVhZGVyLWNlbGxcbiAgICAgID5cbiAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3c7IGxldCBpZHggPSBpbmRleFwiPlxuICAgICAgICA8bWF0LWljb24gKGNsaWNrKT1cImRlbGV0ZVJvdyhpZHgpXCI+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgIDwvbWF0LWNlbGw+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXllZENvbHVtbnNcIj48L21hdC1oZWFkZXItcm93PlxuICAgIDxtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zO1wiPjwvbWF0LXJvdz5cbiAgPC9tYXQtdGFibGU+XG48L21hdC1kaWFsb2ctY29udGVudD5cbjxtYXQtZGlhbG9nLWFjdGlvbnM+XG4gIDxidXR0b24gbWF0LWJ1dHRvbiBtYXREaWFsb2dDbG9zZSAoY2xpY2spPVwic2F2ZVN0cmluZ0lkZW50aWZpZXIoKVwiPlxuICAgIHt7J1NhdmUnfHRyYW5zbG9jb319XG4gIDwvYnV0dG9uPlxuPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG4iXX0=
|
|
60
|
+
args: [{ selector: 'ajf-fb-string-identifier-dialog', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<h3 matDialogTitle>{{'Default columns'|transloco}}</h3>\n<mat-dialog-content>\n <p>{{'Select the fields that will be shown as columns in the form list page'|transloco}}</p>\n <mat-form-field class=\"ajf-string-identifier-select\">\n <mat-select multiple [(ngModel)]=\"selectedFieldNames\">\n <mat-option>\n <ngx-mat-select-search\n [formControl]=\"searchFilterCtrl\"\n [placeholderLabel]=\"'Search'|transloco\"\n [noEntriesFoundLabel]=\"'Nothing found'|transloco\"\n [enableClearOnEscapePressed]=\"true\">\n </ngx-mat-select-search>\n </mat-option>\n <mat-option *ngFor=\"let field of filteredFields$ | async\" [value]=\"field.name\">\n {{field.label || field.name}}\n </mat-option>\n </mat-select>\n </mat-form-field>\n</mat-dialog-content>\n<mat-dialog-actions>\n <button mat-raised-button color=\"warn\" matDialogClose>\n {{'Close'|transloco}}\n </button>\n <button mat-raised-button color=\"primary\" matDialogClose (click)=\"saveStringIdentifier()\">\n {{'Save'|transloco}}\n </button>\n</mat-dialog-actions>\n", styles: ["ajf-fb-string-identifier-dialog h3,ajf-fb-string-identifier-dialog p{text-align:center}ajf-fb-string-identifier-dialog .ajf-string-identifier-select{display:block;min-width:200px;width:70%;margin:20px auto}ajf-fb-string-identifier-dialog mat-dialog-actions.mat-mdc-dialog-actions{display:flex;justify-content:space-evenly;align-items:center}ajf-fb-string-identifier-dialog mat-dialog-actions.mat-mdc-dialog-actions .mat-mdc-button-base{min-width:100px}\n"] }]
|
|
61
|
+
}], ctorParameters: () => [{ type: i1.AjfFormBuilderService }] });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWlkZW50aWZpZXItZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwvZm9ybS1idWlsZGVyL3NyYy9zdHJpbmctaWRlbnRpZmllci1kaWFsb2cudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC9mb3JtLWJ1aWxkZXIvc3JjL3N0cmluZy1pZGVudGlmaWVyLWRpYWxvZy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVCQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFhLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQWEsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7O0FBVy9GLE1BQU0sT0FBTyxvQ0FBb0M7SUFVL0MsWUFBb0IsUUFBK0I7UUFBL0IsYUFBUSxHQUFSLFFBQVEsQ0FBdUI7UUFQMUMscUJBQWdCLEdBQUcsSUFBSSxXQUFXLENBQVMsRUFBRSxFQUFFLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDN0UsdUJBQWtCLEdBQWEsRUFBRSxDQUFDO1FBRTFCLFlBQU8sR0FBZSxFQUFFLENBQUM7UUFDekIsZUFBVSxHQUFpQixZQUFZLENBQUMsS0FBSyxDQUFDO1FBQzlDLHlCQUFvQixHQUFpQixZQUFZLENBQUMsS0FBSyxDQUFDO1FBRzlELElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3JDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUNYLE1BQU07YUFDSCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUs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aUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5pbXBvcnQge0FqZkZpZWxkLCBBamZGb3JtU3RyaW5nSWRlbnRpZmllcn0gZnJvbSAnQGFqZi9jb3JlL2Zvcm1zJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1Db250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge0FqZkZvcm1CdWlsZGVyU2VydmljZX0gZnJvbSAnLi9mb3JtLWJ1aWxkZXItc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FqZi1mYi1zdHJpbmctaWRlbnRpZmllci1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJ3N0cmluZy1pZGVudGlmaWVyLWRpYWxvZy5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3RyaW5nLWlkZW50aWZpZXItZGlhbG9nLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFqZkZiU3RyaW5nSWRlbnRpZmllckRpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGZpZWxkcyQ6IE9ic2VydmFibGU8QWpmRmllbGRbXT47XG4gIHJlYWRvbmx5IGZpbHRlcmVkRmllbGRzJDogT2JzZXJ2YWJsZTxBamZGaWVsZFtdPjtcbiAgcmVhZG9ubHkgc2VhcmNoRmlsdGVyQ3RybCA9IG5ldyBGb3JtQ29udHJvbDxzdHJpbmc+KCcnLCB7bm9uTnVsbGFibGU6IHRydWV9KTtcbiAgc2VsZWN0ZWRGaWVsZE5hbWVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIHByaXZhdGUgX2ZpZWxkczogQWpmRmllbGRbXSA9IFtdO1xuICBwcml2YXRlIF9maWVsZHNTdWI6IFN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgcHJpdmF0ZSBfc3RyaW5nSWRlbnRpZmllclN1YjogU3Vic2NyaXB0aW9uID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3NlcnZpY2U6IEFqZkZvcm1CdWlsZGVyU2VydmljZSkge1xuICAgIHRoaXMuZmllbGRzJCA9IF9zZXJ2aWNlLmZsYXRGaWVsZHMucGlwZShcbiAgICAgIG1hcChmaWVsZHMgPT5cbiAgICAgICAgZmllbGRzXG4gICAgICAgICAgLmZpbHRlcihmID0+IGYubmFtZS5sZW5ndGggPiAwKVxuICAgICAgICAgIC5zb3J0KChmMSwgZjIpID0+IChmMS5sYWJlbCB8fCBmMS5uYW1lKS5sb2NhbGVDb21wYXJlKGYyLmxhYmVsIHx8IGYyLm5hbWUpKSxcbiAgICAgICksXG4gICAgICBzaGFyZVJlcGxheSgxKSxcbiAgICApO1xuICAgIHRoaXMuX2ZpZWxkc1N1YiA9IHRoaXMuZmllbGRzJC5zdWJzY3JpYmUoZmllbGRzID0+IHtcbiAgICAgIHRoaXMuX2ZpZWxkcyA9IGZpZWxkcztcbiAgICB9KTtcbiAgICB0aGlzLl9zdHJpbmdJZGVudGlmaWVyU3ViID0gX3NlcnZpY2Uuc3RyaW5nSWRlbnRpZmllci5zdWJzY3JpYmUoaWRlbnRpZmllciA9PiB7XG4gICAgICB0aGlzLnNlbGVjdGVkRmllbGROYW1lcyA9IGlkZW50aWZpZXJcbiAgICAgICAgLm1hcChlbnRyeSA9PiBlbnRyeS52YWx1ZVswXSlcbiAgICAgICAgLmZpbHRlcigobmFtZSk6IG5hbWUgaXMgc3RyaW5nID0+IG5hbWUgIT0gbnVsbCk7XG4gICAgfSk7XG4gICAgdGhpcy5maWx0ZXJlZEZpZWxkcyQgPSB0aGlzLnNlYXJjaEZpbHRlckN0cmwudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICBkZWJvdW5jZVRpbWUoMTUwKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgbWFwKHNlYXJjaCA9PiB7XG4gICAgICAgIGNvbnN0IGZpZWxkcyA9IHRoaXMuX2ZpZWxkcztcbiAgICAgICAgaWYgKCFzZWFyY2gpIHtcbiAgICAgICAgICByZXR1cm4gZmllbGRzO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGxvd2VyU2VhcmNoID0gc2VhcmNoLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHJldHVybiBmaWVsZHMuZmlsdGVyKGYgPT4gKGYubGFiZWwgfHwgZi5uYW1lKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGxvd2VyU2VhcmNoKSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZmllbGRzU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5fc3RyaW5nSWRlbnRpZmllclN1Yi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgc2F2ZVN0cmluZ0lkZW50aWZpZXIoKTogdm9pZCB7XG4gICAgY29uc3QgaWRlbnRpZmllcjogQWpmRm9ybVN0cmluZ0lkZW50aWZpZXJbXSA9IHRoaXMuc2VsZWN0ZWRGaWVsZE5hbWVzXG4gICAgICAubWFwKG5hbWUgPT4gdGhpcy5fZmllbGRzLmZpbmQoZiA9PiBmLm5hbWUgPT09IG5hbWUpKVxuICAgICAgLmZpbHRlcigoZik6IGYgaXMgQWpmRmllbGQgPT4gZiAhPSBudWxsKVxuICAgICAgLm1hcChmID0+ICh7bGFiZWw6IGYubGFiZWwgfHwgZi5uYW1lLCB2YWx1ZTogW2YubmFtZV19KSk7XG4gICAgdGhpcy5fc2VydmljZS5zYXZlU3RyaW5nSWRlbnRpZmllcihpZGVudGlmaWVyKTtcbiAgfVxufVxuIiwiPGgzIG1hdERpYWxvZ1RpdGxlPnt7J0RlZmF1bHQgY29sdW1ucyd8dHJhbnNsb2NvfX08L2gzPlxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgPHA+e3snU2VsZWN0IHRoZSBmaWVsZHMgdGhhdCB3aWxsIGJlIHNob3duIGFzIGNvbHVtbnMgaW4gdGhlIGZvcm0gbGlzdCBwYWdlJ3x0cmFuc2xvY299fTwvcD5cbiAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiYWpmLXN0cmluZy1pZGVudGlmaWVyLXNlbGVjdFwiPlxuICAgIDxtYXQtc2VsZWN0IG11bHRpcGxlIFsobmdNb2RlbCldPVwic2VsZWN0ZWRGaWVsZE5hbWVzXCI+XG4gICAgICA8bWF0LW9wdGlvbj5cbiAgICAgICAgPG5neC1tYXQtc2VsZWN0LXNlYXJjaFxuICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJzZWFyY2hGaWx0ZXJDdHJsXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJMYWJlbF09XCInU2VhcmNoJ3x0cmFuc2xvY29cIlxuICAgICAgICAgIFtub0VudHJpZXNGb3VuZExhYmVsXT1cIidOb3RoaW5nIGZvdW5kJ3x0cmFuc2xvY29cIlxuICAgICAgICAgIFtlbmFibGVDbGVhck9uRXNjYXBlUHJlc3NlZF09XCJ0cnVlXCI+XG4gICAgICAgIDwvbmd4LW1hdC1zZWxlY3Qtc2VhcmNoPlxuICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGZpZWxkIG9mIGZpbHRlcmVkRmllbGRzJCB8IGFzeW5jXCIgW3ZhbHVlXT1cImZpZWxkLm5hbWVcIj5cbiAgICAgICAge3tmaWVsZC5sYWJlbCB8fCBmaWVsZC5uYW1lfX1cbiAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICA8L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L21hdC1kaWFsb2ctY29udGVudD5cbjxtYXQtZGlhbG9nLWFjdGlvbnM+XG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJ3YXJuXCIgbWF0RGlhbG9nQ2xvc2U+XG4gICAge3snQ2xvc2UnfHRyYW5zbG9jb319XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIG1hdERpYWxvZ0Nsb3NlIChjbGljayk9XCJzYXZlU3RyaW5nSWRlbnRpZmllcigpXCI+XG4gICAge3snU2F2ZSd8dHJhbnNsb2NvfX1cbiAgPC9idXR0b24+XG48L21hdC1kaWFsb2ctYWN0aW9ucz5cbiJdfQ==
|
|
@@ -28,11 +28,19 @@ import * as i2 from "@angular/common";
|
|
|
28
28
|
import * as i3 from "@angular/material/icon";
|
|
29
29
|
import * as i4 from "@angular/forms";
|
|
30
30
|
import * as i5 from "@angular/material/slider";
|
|
31
|
-
import * as i6 from "
|
|
31
|
+
import * as i6 from "@ngneat/transloco";
|
|
32
|
+
import * as i7 from "./warning-alert-service";
|
|
32
33
|
export class AjfRangeFieldComponent extends AjfRange {
|
|
33
34
|
constructor(cdr, service, was) {
|
|
34
35
|
super(cdr, service, was);
|
|
35
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* True when no value has been selected yet, so that the slider is not
|
|
39
|
+
* rendered as if the minimum value had been picked.
|
|
40
|
+
*/
|
|
41
|
+
isEmpty(value) {
|
|
42
|
+
return value === null || value === undefined;
|
|
43
|
+
}
|
|
36
44
|
enumerateStars() {
|
|
37
45
|
const nums = [];
|
|
38
46
|
for (let i = 1; i <= (this.end || 5); i++) {
|
|
@@ -41,13 +49,13 @@ export class AjfRangeFieldComponent extends AjfRange {
|
|
|
41
49
|
return nums;
|
|
42
50
|
}
|
|
43
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfRangeFieldComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.AjfFormRendererService }, { token: AJF_WARNING_ALERT_SERVICE }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AjfRangeFieldComponent, selector: "ajf-range", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"control|async as ctrl\">\n <div
|
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AjfRangeFieldComponent, selector: "ajf-range", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"control|async as ctrl\">\n <div\n *ngIf=\"appearance !== 'rating'; else ratingTemplate\"\n [class.ajf-range-no-value]=\"isEmpty(ctrl.value)\"\n >\n <mat-slider\n discrete\n showTickMarks\n [step]=\"step\"\n [min]=\"start\"\n [max]=\"end\"\n [attr.aria-label]=\"name\"\n [attr.name]=\"name\"\n ><input matSliderThumb [value]=\"value\" [formControl]=\"ctrl\" /></mat-slider>\n <div class=\"ajf-range-label\">\n <label>{{isEmpty(ctrl.value) ? ('No value selected'|transloco) : ctrl.value}}</label>\n </div>\n </div>\n \n <ng-template #ratingTemplate>\n <div class=\"ajf-rating-container\">\n <button type=\"button\"\n *ngFor=\"let i of enumerateStars()\"\n class=\"ajf-rating-star\"\n [class.selected]=\"i <= ctrl.value\"\n (click)=\"ctrl.setValue(i)\"\n [attr.aria-label]=\"'Rate ' + i + ' out of ' + end\"\n [attr.name]=\"name\">\n <mat-icon>star</mat-icon>\n </button>\n <div class=\"ajf-range-label\">\n <label>{{ctrl.value}}</label>\n </div>\n </div>\n </ng-template>\n</ng-container>\n", styles: ["ajf-range{display:inline-block;padding-top:20px}ajf-range .ajf-range-label{display:inline-block;padding:0 10px}ajf-range .ajf-range-no-value{--mdc-slider-handle-color: #9e9e9e;--mdc-slider-focus-handle-color: #9e9e9e;--mdc-slider-hover-handle-color: #9e9e9e;--mdc-slider-active-track-color: #9e9e9e;--mdc-slider-inactive-track-color: #9e9e9e;--mdc-slider-with-tick-marks-active-container-color: #fff;--mdc-slider-with-tick-marks-inactive-container-color: #9e9e9e;--mdc-slider-label-container-color: #9e9e9e;--mat-slider-ripple-color: #9e9e9e;--mat-slider-hover-state-layer-color: rgba(158, 158, 158, .05);--mat-slider-focus-state-layer-color: rgba(158, 158, 158, .2)}ajf-range .ajf-range-no-value .ajf-range-label{color:#9e9e9e}ajf-range .ajf-rating-container{display:flex;align-items:center;gap:8px;padding:8px 0}ajf-range .ajf-rating-container .ajf-rating-star{background:none;border:none;cursor:pointer;padding:0;color:#ccc;transition:color .2s}ajf-range .ajf-rating-container .ajf-rating-star.selected{color:gold}ajf-range .ajf-rating-container .ajf-rating-star mat-icon{font-size:32px;height:32px;width:32px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5.MatSlider, selector: "mat-slider", inputs: ["disabled", "discrete", "showTickMarks", "min", "color", "disableRipple", "max", "step", "displayWith"], exportAs: ["matSlider"] }, { kind: "directive", type: i5.MatSliderThumb, selector: "input[matSliderThumb]", inputs: ["value"], outputs: ["valueChange", "dragStart", "dragEnd"], exportAs: ["matSliderThumb"] }, { kind: "pipe", type: i6.TranslocoPipe, name: "transloco" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
45
53
|
}
|
|
46
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AjfRangeFieldComponent, decorators: [{
|
|
47
55
|
type: Component,
|
|
48
|
-
args: [{ selector: 'ajf-range', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"control|async as ctrl\">\n <div
|
|
49
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.AjfFormRendererService }, { type:
|
|
56
|
+
args: [{ selector: 'ajf-range', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"control|async as ctrl\">\n <div\n *ngIf=\"appearance !== 'rating'; else ratingTemplate\"\n [class.ajf-range-no-value]=\"isEmpty(ctrl.value)\"\n >\n <mat-slider\n discrete\n showTickMarks\n [step]=\"step\"\n [min]=\"start\"\n [max]=\"end\"\n [attr.aria-label]=\"name\"\n [attr.name]=\"name\"\n ><input matSliderThumb [value]=\"value\" [formControl]=\"ctrl\" /></mat-slider>\n <div class=\"ajf-range-label\">\n <label>{{isEmpty(ctrl.value) ? ('No value selected'|transloco) : ctrl.value}}</label>\n </div>\n </div>\n \n <ng-template #ratingTemplate>\n <div class=\"ajf-rating-container\">\n <button type=\"button\"\n *ngFor=\"let i of enumerateStars()\"\n class=\"ajf-rating-star\"\n [class.selected]=\"i <= ctrl.value\"\n (click)=\"ctrl.setValue(i)\"\n [attr.aria-label]=\"'Rate ' + i + ' out of ' + end\"\n [attr.name]=\"name\">\n <mat-icon>star</mat-icon>\n </button>\n <div class=\"ajf-range-label\">\n <label>{{ctrl.value}}</label>\n </div>\n </div>\n </ng-template>\n</ng-container>\n", styles: ["ajf-range{display:inline-block;padding-top:20px}ajf-range .ajf-range-label{display:inline-block;padding:0 10px}ajf-range .ajf-range-no-value{--mdc-slider-handle-color: #9e9e9e;--mdc-slider-focus-handle-color: #9e9e9e;--mdc-slider-hover-handle-color: #9e9e9e;--mdc-slider-active-track-color: #9e9e9e;--mdc-slider-inactive-track-color: #9e9e9e;--mdc-slider-with-tick-marks-active-container-color: #fff;--mdc-slider-with-tick-marks-inactive-container-color: #9e9e9e;--mdc-slider-label-container-color: #9e9e9e;--mat-slider-ripple-color: #9e9e9e;--mat-slider-hover-state-layer-color: rgba(158, 158, 158, .05);--mat-slider-focus-state-layer-color: rgba(158, 158, 158, .2)}ajf-range .ajf-range-no-value .ajf-range-label{color:#9e9e9e}ajf-range .ajf-rating-container{display:flex;align-items:center;gap:8px;padding:8px 0}ajf-range .ajf-rating-container .ajf-rating-star{background:none;border:none;cursor:pointer;padding:0;color:#ccc;transition:color .2s}ajf-range .ajf-rating-container .ajf-rating-star.selected{color:gold}ajf-range .ajf-rating-container .ajf-rating-star mat-icon{font-size:32px;height:32px;width:32px}\n"] }]
|
|
57
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.AjfFormRendererService }, { type: i7.AjfWarningAlertService, decorators: [{
|
|
50
58
|
type: Inject,
|
|
51
59
|
args: [AJF_WARNING_ALERT_SERVICE]
|
|
52
60
|
}] }] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC9mb3Jtcy9zcmMvcmFuZ2UtZmllbGQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC9mb3Jtcy9zcmMvcmFuZ2UtZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQUMseUJBQXlCLEVBQXlCLE1BQU0saUJBQWlCLENBQUM7QUFDbEYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQVd2QixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsUUFBUTtJQUNsRCxZQUNFLEdBQXNCLEVBQ3RCLE9BQStCLEVBQ0ksR0FBMkI7UUFFOUQsS0FBSyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILE9BQU8sQ0FBQyxLQUFjO1FBQ3BCLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQy9DLENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxJQUFJLEdBQWEsRUFBRSxDQUFDO1FBQzFCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2YsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzsrR0F2QlUsc0JBQXNCLHlGQUl2Qix5QkFBeUI7bUdBSnhCLHNCQUFzQix3RUN6Q25DLDBuQ0FvQ0E7OzRGREthLHNCQUFzQjtrQkFQbEMsU0FBUzsrQkFDRSxXQUFXLG1CQUdKLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OzBCQU1sQyxNQUFNOzJCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuaW1wb3J0IHtBSkZfV0FSTklOR19BTEVSVF9TRVJWSUNFLCBBamZGb3JtUmVuZGVyZXJTZXJ2aWNlfSBmcm9tICdAYWpmL2NvcmUvZm9ybXMnO1xuaW1wb3J0IHtBamZSYW5nZX0gZnJvbSAnQGFqZi9jb3JlL3JhbmdlJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtBamZXYXJuaW5nQWxlcnRTZXJ2aWNlfSBmcm9tICcuL3dhcm5pbmctYWxlcnQtc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FqZi1yYW5nZScsXG4gIHRlbXBsYXRlVXJsOiAncmFuZ2UtZmllbGQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydyYW5nZS1maWVsZC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBBamZSYW5nZUZpZWxkQ29tcG9uZW50IGV4dGVuZHMgQWpmUmFuZ2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHNlcnZpY2U6IEFqZkZvcm1SZW5kZXJlclNlcnZpY2UsXG4gICAgQEluamVjdChBSkZfV0FSTklOR19BTEVSVF9TRVJWSUNFKSB3YXM6IEFqZldhcm5pbmdBbGVydFNlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKGNkciwgc2VydmljZSwgd2FzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcnVlIHdoZW4gbm8gdmFsdWUgaGFzIGJlZW4gc2VsZWN0ZWQgeWV0LCBzbyB0aGF0IHRoZSBzbGlkZXIgaXMgbm90XG4gICAqIHJlbmRlcmVkIGFzIGlmIHRoZSBtaW5pbXVtIHZhbHVlIGhhZCBiZWVuIHBpY2tlZC5cbiAgICovXG4gIGlzRW1wdHkodmFsdWU6IHVua25vd24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGVudW1lcmF0ZVN0YXJzKCk6IG51bWJlcltdIHtcbiAgICBjb25zdCBudW1zOiBudW1iZXJbXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDw9ICh0aGlzLmVuZCB8fCA1KTsgaSsrKSB7XG4gICAgICBudW1zLnB1c2goaSk7XG4gICAgfVxuICAgIHJldHVybiBudW1zO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29udHJvbHxhc3luYyBhcyBjdHJsXCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cImFwcGVhcmFuY2UgIT09ICdyYXRpbmcnOyBlbHNlIHJhdGluZ1RlbXBsYXRlXCJcbiAgICBbY2xhc3MuYWpmLXJhbmdlLW5vLXZhbHVlXT1cImlzRW1wdHkoY3RybC52YWx1ZSlcIlxuICA+XG4gICAgPG1hdC1zbGlkZXJcbiAgICAgIGRpc2NyZXRlXG4gICAgICBzaG93VGlja01hcmtzXG4gICAgICBbc3RlcF09XCJzdGVwXCJcbiAgICAgIFttaW5dPVwic3RhcnRcIlxuICAgICAgW21heF09XCJlbmRcIlxuICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJuYW1lXCJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgPjxpbnB1dCBtYXRTbGlkZXJUaHVtYiBbdmFsdWVdPVwidmFsdWVcIiBbZm9ybUNvbnRyb2xdPVwiY3RybFwiIC8+PC9tYXQtc2xpZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJhamYtcmFuZ2UtbGFiZWxcIj5cbiAgICAgIDxsYWJlbD57e2lzRW1wdHkoY3RybC52YWx1ZSkgPyAoJ05vIHZhbHVlIHNlbGVjdGVkJ3x0cmFuc2xvY28pIDogY3RybC52YWx1ZX19PC9sYWJlbD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIFxuICA8bmctdGVtcGxhdGUgI3JhdGluZ1RlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJhamYtcmF0aW5nLWNvbnRhaW5lclwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICpuZ0Zvcj1cImxldCBpIG9mIGVudW1lcmF0ZVN0YXJzKClcIlxuICAgICAgY2xhc3M9XCJhamYtcmF0aW5nLXN0YXJcIlxuICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImkgPD0gY3RybC52YWx1ZVwiXG4gICAgICAoY2xpY2spPVwiY3RybC5zZXRWYWx1ZShpKVwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidSYXRlICcgKyBpICsgJyBvdXQgb2YgJyArIGVuZFwiXG4gICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIj5cbiAgICAgICAgPG1hdC1pY29uPnN0YXI8L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWpmLXJhbmdlLWxhYmVsXCI+XG4gICAgICAgIDxsYWJlbD57e2N0cmwudmFsdWV9fTwvbGFiZWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
|